EJBサービスが提供するトランザクション制御を使用すると、トランザクション管理種別やトランザクション属性を定義することにより、トランザクションの制御方法や実行時の制御内容などを詳細に定義できます。
また、javax.ejb.SessionSynchronizationインタフェースを使用して、インスタンスが参加したトランザクションの開始と終了を受信できる機能があります。
この機能を“Session Beanのsynchronization機能”といい、STATEFULのSession Beanで、特定のトランザクション属性をビジネスメソッドに指定している場合に限り使用できます。
トランザクション機能などを使用し、複数のトランザクション処理を行っている場合、データベース連携サービス(Object Transaction Service)と連携した“分散トランザクション機能”を使用することにより、以下のことが実現します。
複数のトランザクション処理を1つのトランザクションとして扱う
複数のリソースマネージャ(DBMS、JMSなど)へのアクセス処理のトランザクション制御を行う
複数のJava VM間で動作するEJBアプリケーションを1つのトランザクションで使用する