各トランザクションで、セッション Bean は、 ローカル・インターフェースを使用してコンテナー管理パーシスタンス (CMP) エンタープライズ Bean を起動する必要があります。 CMP エンタープライズ Bean のリモート・インターフェースはサポートされていないので、予期しない振る舞いの原因となります。したがって、確実にセッション Bean がローカル・インターフェースを使用して CMP エンタープライズ Bean を起動するようにしてください。Proxy DataSource が サポートされている CMP EJB にアクセスする同一のトランザクションにいくつかのセッション Bean が関係している場合、 これらのセッション Bean に対するすべての呼び出しはローカル・インターフェースを使用します。 Proxy DataSource がサポートされた CMP EJB、またはこれらの CMP EJB にアクセスするセッション Bean へのアクセスには、リモート・インターフェースを使用することはできません。
セッション Bean は、 すべてのトランザクション (メソッド) の最初の部分で、 API WSProxyDataSourceHelper.setCurrentDataSourceJNDIName メソッドを使用して、現行のトランザクションが使用するデータ・ソースを指定する必要があります。セッション Bean がデータ・ソース JNDI 名を指定していない場合は、プロキシー・データ・ソースの jndiNames カスタム・プロパティーの最初のデータ・ソース JNDI 名が使用され、警告がログに記録されます。
パフォーマンス・モニター計測機能 (PMI) が、プロキシー・データ・ソースで使用されるステートメント・キャッシュに対して使用できない、という問題があります。
プロキシー・データ・ソースは、準備済みのステートメントをキャッシュするために特殊なステートメント・キャッシュを使用します。このリリースには、ステートメント・キャッシュ用のパフォーマンス・モニター計測機能がありません。
テスト接続が Proxy DataSource に対して動作しない、という問題があります。
管理コンソールの 「テスト接続」ボタンは、Proxy DataSource に対しては動作しません。プロキシー・データ・ソースを正しく構成していても、 「テスト接続」ボタンをクリックすると例外が表示されます。MBean から testConnection 関数を使用しても動作しません。
データ・ソースが構成されていることを確認する場合は、 プロキシー・データ・ソースの基礎となるデータ・ソースの「テスト接続」ボタンをクリックします。 例えば、プロキシー・データ・ソースのカスタム・プロパティーが jdbc/dsName1;jdbc/dsName2 の場合は、 JNDI 名 jdbc/dsName1 および jdbc/dsName2 を使用してデータ・ソースとの接続をテストできます。
プロキシー・データ・ソースに正しいステートメント・キャッシュ・サイズを設定します。
プロキシー・データ・ソースの作成時に、データ・ソース・パネルでステートメント・キャッシュ・サイズを 0 に設定します。プロキシー・データ・ソースのステートメント・キャッシュ・サイズを構成するには、 カスタム・プロパティー statementCacheSizes を使用します。 この値が整数の場合、基礎となるすべてのデータ・ソースのステートメント・キャッシュ・サイズがその値に設定されます。または、 セミコロン区切り文字による「値1;値2;...;値2」という形式で、基礎となる個々のデータ・ソースに ステートメント・キャッシュ・サイズを設定することもできます。例えば 10;20;30 では、基礎となるデータ・ソース 1 のステートメント・キャッシュ・サイズが 10、基礎となるデータ・ソース 2 のステートメント・キャッシュ・サイズが 20、基礎となるデータ・ソース 3 のステートメント・キャッシュ・サイズが 30 となります。
プロキシー・データ・ソースの作成時に、データ・ストア・ヘルパー・クラスを オーバーライドします。
現在、サポートされているすべてのデータベースに使用できるのは、XA 非対応と XA 対応の 2 つのプロキシー・データ・ソース JDBC プロバイダーだけです。 データ・ソースの作成時に、正しいデータ・ストア・ヘルパー・クラスを指定します。 間違ったデータ・ストア・ヘルパー・クラスを指定した場合は、例外が発生する可能性があります。 例えば、基礎となるデータ・ソースで DB2 Universal JDBC プロバイダーを使用している場合、データ・ストア・ヘルパー・クラスは com.ibm.websphere.proxyds.helper.DB2UniversalDSProxyDataStoreHelper としてオーバーライドされる必要があります。
接続ファクトリーが プロキシー・データ・ソースにマップされているエンタープライズ Bean を使用する場合、グローバル・トランザクションでエンタープライズ Bean にアクセスする必要があります。
Related reference
問題解決