[Seasar-user:20293] Re: リモート通信時のトランザクション境界について

鵜澤 陽介 [E-MAIL ADDRESS DELETED]
2010年 10月 29日 (金) 11:39:05 JST


uzawaです。

 小林様、ご回答ありがとうございました。
 やはりコンテナをまたいでトランザクションを維持することは
 できませんよね。

> JavaEE 対応の AP サーバ上で EJB を使えば
> 可能となります.

 そうなんです。実はAPP1(COMP1)は現状EJBでトランザクション維持が
 できているのですが、紆余曲折あってEJBは撤廃しようと思っており、
 試しにCOMP1->COMP2にApache Commons-httpclientで通信したところ
 本問題にあたってしまったのです。

 EJBの撤廃から見直しを掛けてみます。
 ありがとうございました。

以上です。

(2010/10/29 2:02), Koichi Kobayashi wrote:
> 小林 (koichik) です.
> 
> Date:    Thu, 28 Oct 2010 19:37:36 +0900
> From:    鵜澤 陽介<[E-MAIL ADDRESS DELETED]>
> To:      [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:20291] リモート通信時のトランザクション境界について
> 
>>  1
>>  COMP2のメソッドがCOMP1から呼び出された場合、トランザクションは
>>  新規に開始されるのでしょうか?
> 
> はい.
> 
>>  2
>>  1がYESであるならばCOMP2のメソッドを終了し、COMP1に処理が戻った後、
>>  例外が発生したときにCOMP2のトランザクションをロールバックする方法
>>  はありますでしょうか?
> 
> S2XML-RPC や S2AXIS ではできません.
> 二つのコンポーネントを同一のトランザクションと
> するには,トランザクションコンテキストを伝播
> する必要がありますが,S2XML-RPC や S2AXIS では
> (というか Seasar2 関連プロダクトでは) 対応して
> いません.
> また,トランザクションの伝播には JTA ではなく
> JTS のサポートが必要となりますが,S2JTA では
> 対応していません.
> 
> JavaEE 対応の AP サーバ上で EJB を使えば
> 可能となります.
> 
> 


Seasar-user メーリングリストの案内