例えば、WebSphere® Application Server などの Java EE 対応アプリケーション・サーバーは、アプリケーション・コンポーネント (例えば、Java サーブレットまたは Enterprise JavaBeans コンポーネント) およびリソース・マネージャー (例えば、IMS™ または DB2®) とリソース・アダプター (例えば、IMS TM リソース・アダプター) を介して通信し、トランザクションを調整します。 トランザクション・マネージャーがトランザクションを調整する場合、そのトランザクションは、グローバル・トランザクションとみなされます。トランザクション・マネージャーが複数のリソース・マネージャーを使用してトランザクションを調整する場合、外部コーディネーターは 2 フェーズ・コミット・プロトコルを使用します。
預金を普通預金口座から当座預金口座に振り替えるとします。普通預金口座の情報が当座預金口座の情報とは異なるリソース・マネージャーにある場合 (例えば、 普通預金口座の情報は IMS にあり、当座預金口座の情報は DB2 にある場合など)、アプリケーション・サーバー (WebSphere Application Server) 内のトランザクション・マネージャーにより、アプリケーションは、2 フェーズ・コミット処理を行うことによって、IMS と DB2 の間の変更を透過的に調整することができます。 具体的には、トランザクション・マネージャーは IMS TM リソース・アダプター と連動して、IMS 内の変更を調整します。
IMS TM リソース・アダプター は、Java EE プラットフォーム内の Java トランザクション・マネージャー、z/OS® のリソース・リカバリー・サービス (RRS)、および IMS Connect と連動して、IMS や他の保護リソースに対して、整合性を保つ形で変更を行えるように設計されています。
IMS を使用した 2 フェーズ・コミット処理に参加するために、IMS TM リソース・アダプター は IMS OTMA 同期レベル同期点プロトコルを使用します。リモート・アプリケーションから変更の要求が行われた場合、 IMS は、 z/OS 上の RRS を使用して、 グローバル・トランザクションおよび 2 フェーズ・コミット処理に参加します。
RRS は、リソースの更新および復旧を調整するための外部コーディネーターまたは同期点マネージャーとして機能します。 IMS TM リソース・アダプター および IMS Connect は、アプリケーション・サーバーで実行されている Java トランザクション・マネージャーおよび z/OS 上の RRS と対話して、Java EE プラットフォーム上で実行されているグローバル・トランザクションが、ホスト上で実行されている IMS との整合更新を行えるようにします。