2011-07-17 14 views
3

CMTとBMTはどのように管理されていますか?CMTとBMTはEJBでどのように管理されますか?

コンテナ管理トランザクションは、TomcatのようなWebサーバーではなく、アプリケーションサーバーによってサポートされているJTAによって実現されます。

CMTは、内部的にejb-jar.xmlを読み取り、 の動作を適用する各アプリケーションサーバーに固有のトランザクションマネージャの実装によって処理されます。

BMTは、Java APIのuser-transactionクラスを使用して境界設定されています。

上記の理解は正しいですか?

答えて

3

はい、正しいです。

CMTの場合、EJBコンテナはEJBContext.setRollbackOnlyとisRollbackOnlyの実装も担当しています。これは現在のトランザクションを例外時にロールバックします。

BMTの場合、EJBコンテナは、SLSBおよびシングルトンのメソッド終了前にUserTransactionがコミットされていない場合に例外をスローする役割も果たします。 SFSBの場合、メソッド終了時にユーザートランザクションを中断し、次のメソッド呼び出しでそれらを再開する役割を担います。

関連する問題