1

JMS セッションをトランザクションに参加させたい場合は、セッション パラメータを true にして JMS セッションを作成します。

しかし、トランザクションに参加しているセッションがローカル トランザクションまたはグローバル トランザクションであるという JMS についてどこで言及したのでしょうか。

つまり、JMS をローカル トランザクションまたはグローバル トランザクションに参加させる制御はできますか?それともアプリケーション コンテナが決定しますか?

4

1 に答える 1

1

使用する接続ファクトリーによって異なります。

JMS の仕様では、2 つの異なるタイプの接続ファクトリが指定されており、それぞれのタイプに 3 つのインターフェイスが含まれています。

XAConnectionFactory、XAQueueConnectionFactory、および XATopicConnectionFactory

XA 接続ファクトリおよび

ConnectionFactory、QueueConnectionFactory および TopicConnectionFactory

非 XA 接続ファクトリー用。XA* *を使用すると、JMS セッションはグローバル トランザクションに参加します。もちろん、この部分はコードから抽象化されています。これは、通常、プロバイダー固有のインターフェイスを介して接続ファクトリを構成し、JNDI を介してそれらを検索するためです。

これは、WebLogic での JMS のグローバル トランザクションに関するリンクです。

于 2012-09-06T14:14:33.297 に答える