WebLogic J2EE コネクタ アーキテクチャ
|
J2EE コネクタ アーキテクチャに準拠したリソース アダプタの作成
以下の節では、「J2EE プラットフォーム仕様、バージョン 1.3、最終リリース」(http://java.sun.com/j2ee) に準拠したリソース アダプタの開発に必要な条件について説明します。以下の節は、この仕様で規定されているシステム規約の要件に対応しています。
注意: リソース アダプタを構築する手順については、http://edocs.beasys.co.jp/e-docs/wli/docs70/devadapt/index.htm の BEA WebLogic Application Integration のマニュアルを参照してください。
接続の管理
リソース アダプタに関する接続管理規約の要件は以下のとおりです。
- リソース アダプタは、以下のインタフェース実装を提供する必要があります。
- javax.resource.spi.ManagedConnectionFactory
- javax.resource.spi.ManagedConnection
- javax.resource.spi.ManagedConnectionMetaData
- リソース アダプタで提供する ManagedConnection 実装は、以下のインタフェースとクラスを使用して、接続管理 (および後述のトランザクション管理) 用のサポートをアプリケーション サーバに提供する必要があります。
- javax.resource.spi.ConnectionEvent
- javax.resource.spi.ConnectionEventListener
非管理対象の環境をサポートするには、リソース アダプタが上記 2 つのインタフェースを使用しなくても内部オブジェクトの対話を実行できます。
- リソース アダプタは、以下のメソッドを実装することで、基本的なエラー ロギングおよび追跡機能をサポートする必要があります。
- ManagedConnectionFactory.set/getLogWriter
- ManagedConnnection.set/getLogWriter
- リソース アダプタは、javax.resource.spi.ConnectionManager インタフェースのデフォルト実装を提供する必要があります。この実装クラスは、リソース アダプタを非管理対象の 2 層アプリケーションで使用する場合に機能します。アプリケーション サーバの管理対象の環境では、リソース アダプタはデフォルト ConnectionManager 実装クラスを使用してはなりません。
ConnectionManager のデフォルト実装を使用すると、リソース アダプタは固有のサービスを提供できます。これらのサービスには、接続プール、エラーのロギングおよび追跡、セキュリティ管理などがあります。デフォルトの ConnectionManager は、基底の EIS との物理接続の作成を ManagedConnectionFactory に委託します。
- 管理対象の環境では、リソース アダプタが独自の内部接続プールをサポートしてはなりません。この場合、アプリケーション サーバが接続プールを処理します。ただし、リソース アダプタは、単一の物理パイプ上でアプリケーション サーバおよびコンポーネントに対して透過的に接続を多重化 (物理接続ごとに 1 つまたは複数の ConnectionManager インスタンスを作成) することができます。
非管理対象の 2 層アプリケーションの場合、リソース アダプタはリソース アダプタ内部用の接続プールをサポートできます。
セキュリティ管理
リソース アダプタに関するセキュリティ管理規約の要件は以下のとおりです。
- リソース アダプタは、メソッド ManagedConnectionFactory.createManagedConnection を実装することでセキュリティ規約をサポートする必要があります。
- リソース アダプタは、ManagedConnection.getConnection メソッド実装の一部として再認証をサポートする必要がありません。
- リソース アダプタは、デプロイメント記述子の一部としてセキュリティ規約のサポートを指定する必要があります。関連するデプロイメント記述子の要素は、authentication-mechanism、authentication-mechanism-type、reauthentication-support、および credential-interface です。「J2EE コネクタ仕様、バージョン 1.0、最終リリース」(http://java.sun.com/j2ee/download.html#connectorspec) の 10.6 節「Resource Adapter XML DTD」を参照してください。
トランザクション管理
この節では、リソース アダプタに関するトランザクション管理規約の要件について説明します。リソース アダプタは、トランザクション サポートのレベルに基づいて以下のように分けられます。
- レベル NoTransaction −リソース アダプタはリソース マネージャのローカル トランザクションも JTA トランザクションもサポートしません。リソース アダプタは、XAResource インタフェースも LocalTransaction インタフェースも実装しません。
- レベル LocalTransaction −リソース アダプタは、LocalTransaction インタフェースの実装によってリソース マネージャのローカル トランザクションをサポートします。ローカル トランザクション管理規約は、「J2EE コネクタ仕様、バージョン 1.0、最終リリース」(http://java.sun.com/j2ee/download.html#connectorspec) の 6.7 節で指定されています。
- レベル XATransaction −リソース アダプタは、LocalTransaction および XAResource インタフェースの実装によってリソース マネージャのローカル トランザクションと JTA トランザクションの両方をサポートします。XAResource ベースの規約の要件は、「J2EE コネクタ仕様、バージョン 1.0、最終リリース」(http://java.sun.com/j2ee/download.html#connectorspec) の 6.6 節で指定されています。
注意: その他のサポート レベル (基底のリソース マネージャがサポートするトランザクション最適化を含む) は、コネクタ アーキテクチャの適用範囲外です。
上記のレベルは、外部トランザクションの調整を可能にするためにリソース アダプタが必要とするトランザクション サポートの主なステップを反映しています。リソース アダプタのトランザクション機能と基底の EIS の要件に従って、リソース アダプタでは上記のトランザクション サポート レベルのいずれもサポート対象として選択できます。