トランザクションサービスは、業務データを管理するシステムにおいて、データの検索/更新の結果を保証するためのサービスを提供します。
以下にトランザクションサービスの構成を記載します。
トランザクションサービスの構成要素について以下に説明します。
JTAは、Java EEコンポーネントとトランザクションマネージャ間のインタフェースです。Java EEコンポーネントは、JTAを使用してトランザクションの開始と完了をトランザクションマネージャに要求できます。
データベースやJMSなどのリソースを管理する各リソースマネージャは、各リソースのトランザクションを管理する固有のAPI(例えば、java.sql.Connectionクラスのcommitメソッドなど)を提供しますが、JTAを利用することでJava EEが提供する各リソースを共通のインタフェースでトランザクション制御できます。また、グローバルトランザクションで複数のリソースを1つのトランザクションとして統合して管理できます。
トランザクションマネージャは、Java EEコンポーネントからトランザクションの開始と完了の要求を受けて、リソースマネージャに対して必要な操作を行います。
XAインタフェースは、トランザクションマネージャとリソースマネージャ間のインタフェースを定義します。
グローバルトランザクションをサポートする各リソースマネージャ(リレーショナルデータベースやJMS)は、XAインタフェースを提供しています。XAインタフェースを提供するリソースをXAリソース、XAインタフェースを提供しないリソースを非XAリソースと呼びます。
XAインタフェースをサポートしていないリソースマネージャもあります。XAインタフェースのサポート状況については、使用するリソースマネージャ(JDBCドライバなど)のマニュアルを参照してください。
リソースマネージャは、共有するリソースを管理します。本製品でトランザクション管理可能なリソースマネージャは、以下の3つです。
データベース/JDBCドライバ
JMSプロバイダ
Java EE Connector Architectureコンポーネント