11.2. JTA サポート


JTA 対応のトランザクションを使用し参加するよう、 JBoss Cache を設定することができます。 また、 トランザクションサポートの無効化は、 JDBC 呼び出しにおける自動コミットの使用に相当します。 この場合、 変更される度に変更がレプリケートされる可能性があります (レプリケーションが有効になっている場合)。
JBoss Cache は着信呼び出し毎に以下を実行します。
  1. スレッドに関連する現在の javax.transaction.Transaction を読み出します。
  2. トランザクションのコミットやロールバック時に通知されるよう、 登録されていない場合は javax.transaction.Synchronization をトランザクションマネージャに登録します。
登録するには、 環境の javax.transaction.TransactionManager への参照をキャッシュに提供する必要があります。 これには、 通常 TransactionManagerLookup インターフェース実装のクラス名でキャッシュを設定します。 キャッシュが起動すると、 このクラスのインスタンスを作成し、 TransactionManager への参照を返す getTransactionManager() メソッドを呼び出します。
JBoss Cache には JBossTransactionManagerLookupGenericTransactionManagerLookup が同梱されます。 JBossTransactionManagerLookup は実行されている JBoss AS インスタンスにバインドでき、 TransactionManager を取得できます。 GenericTransactionManagerLookup は一般的な Java EE アプリケーションサーバーのほとんどにバインドでき、 同様の機能を提供できます。 また、 単体テストのためダミーの実装である DummyTransactionManagerLookup も提供されます。 ただし、 ダミーは、 同時トランザクションやリカバリに対して厳しい制限があるため、 本稼働用に使用することは推奨されません。
TransactionManagerLookupを設定する代わりに、 プログラムを用いて TransactionManager への参照を Configuration オブジェクトの RuntimeConfig 要素へ挿入することもできます。
   TransactionManager tm = getTransactionManager(); // magic method
   cache.getConfiguration().getRuntimeConfig().setTransactionManager(tm);
TransactionManager への参照を既に持っている IOC コンテナによって Configuration が構築されている場合、 TransactionManager を挿入する方法が推奨されます。
トランザクションのコミットを実行すると、 単相または 2 相コミットプロトコルが開始されます。 詳細は 「レプリケートされたキャッシュトランザクション」 を参照してください。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る