WebLogic J2EE コネクタ アーキテクチャ
![]() |
![]() |
![]() |
![]() |
以下の節では、J2EE コネクタ アーキテクチャの WebLogic 実装がサポートしているさまざまなトランザクション レベルと、リソース アダプタの RAR アーカイブにトランザクション レベルを指定する方法について説明します。
ビジネス アプリケーションでは、EIS へのトランザクション アクセスが重要な要件です。J2EE コネクタ アーキテクチャは、トランザクションの概念、つまりデータの一貫性および整合性を維持するために、データに関して一緒にコミットするか、または一切コミットしてはならない各種の処理をサポートしています。
BEA WebLogic J2EE コネクタ アーキテクチャ実装では、WebLogic Server のトランザクション マネージャ実装を利用し、(「J2EE コネクタ仕様、バージョン 1.0、最終リリース」で説明されている) 以下のトランザクション レベルに対応したリソース アダプタをサポートしています。
通常、ローカル トランザクションは、そのリソース アダプタに固有の API または CCI インタフェース (そのアダプタがサポートしている場合) を使用して開始されます。ローカル トランザクション サポートを使用するようコンフィグレーションされたリソース アダプタ接続を作成し、XA トランザクションのコンテキスト内で使用する場合、WebLogic Server は、この接続用のローカル トランザクションを自動的に開始します。XA トランザクションが終了し、コミットの準備が整うと、XA トランザクションの一部の XA リソースに対して prepare がまず呼び出されます。次に、ローカル トランザクションがコミットされます。
ローカル トランザクションでコミットが失敗した場合、XA トランザクションとすべての XA リソースはロールバックされます。コミットが成功した場合、XA トランザクションのすべての XA リソースはコミットされます。アプリケーション コンポーネントがその接続を閉じると、WebLogic Server は、トランザクションが終了した時点で接続をクリーンアップします。
注意 : ra.xml の文書型定義の詳細については、以下の Sun Microsystems のドキュメントを参照してください。http://java.sun.com/dtd/connector_1_0.dtd
サポートされているトランザクション レベルの詳細については、「J2EE コネクタ仕様、バージョン 1.0、最終リリース」(http://java.sun.com/j2ee/download.html#connectorspec) の「Transaction Management」の章を参照してください。
リソース アダプタは、サポート対象のトランザクションの種類を Sun Microsystems から提供される ra.xml デプロイメント記述子ファイルで指定します。.rar でのトランザクション レベルの種類を指定する方法については、「コンフィグレーション」の「トランザクション レベル タイプのコンフィグレーション」を参照してください。
注意 : ra.xml の文書型定義の詳細については、以下の Sun Microsystems のドキュメントを参照してください。http://java.sun.com/dtd/connector_1_0.dtd
多くの場合、トランザクション (ローカル トランザクションと呼ばれます) は 1 つの EIS システムに制限され、EIS リソース マネージャ自体がそうしたトランザクションを管理します。一方、XA トランザクション (またはグローバル トランザクション) は複数のリソース マネージャに及ぶことがあります。このトランザクションでは、通常はアプリケーション サーバに付属する外部トランザクション マネージャがトランザクションを調整する必要があります。トランザクション マネージャは 2 フェーズ コミット プロトコル (2PC) を使用して、複数のリソース マネージャ (EIS) にまたがるトランザクションを管理します。XA トランザクションに 1 つのリソース マネージャだけが関わる場合は、リソース マネージャは 1 フェーズ コミットを使用して最適化します。
J2EE コネクタ アーキテクチャでは、アプリケーション サーバとリソース アダプタ (と基底のリソース マネージャ) との間のトランザクション管理規約を定義します。トランザクション管理規約は、接続管理規約を拡張し、ローカル トランザクションと XA トランザクションの両方のサポートを提供します。トランザクション管理規約は、トランザクションの種類に応じて 2 つの部分から構成されます。
これらの規約により、WebLogic Server などのアプリケーション サーバはトランザクション管理用のインフラストラクチャと実行時環境を提供できます。アプリケーション コンポーネントはこのトランザクション インフラストラクチャを利用して、コンポーネントレベルのトランザクション モデルをサポートします。
EIS 実装は多様なので、トランザクションを柔軟にサポートする必要があります。J2EE コネクタ アーキテクチャでは、トランザクションを管理するために EIS に要求される条件はありません。EIS 内のトランザクションの実装に応じて、リソース アダプタは以下のようにサポートを提供します。
WebLogic Server は、トランザクションの 3 つのレベルすべてをサポートしているので、異なるトランザクション レベルの EIS もサポートします。
![]() ![]() |
![]() |
![]() |