[Seasar-user:11213] Re: Sun ONE Application Server 7でのS2Txの利用方法について

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2007年 10月 23日 (火) 16:00:13 JST


小林 (koichik) です.

Date:    Tue, 23 Oct 2007 11:11:18 +0900
From:    [E-MAIL ADDRESS DELETED]
To:       [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:11209] Re: Sun ONE Application Server 7でのS2Txの利用方法について

> 現状、データソース クラス名には oracle.jdbc.xa.client.OracleXADataSource を指定しており、グローバル トランザクションのサポートも有効にしています。

そうでしたか.
AP サーバ側の設定の問題なのか,S2 側の
設定の問題なのか,切り分けをお願いします.

Seasar2 を使わず,Servlet などで UserTransaction および
TransactionManager と DataSource を取得して
DB の更新後にロールバックをしてみてください.

可能性として,

1.UserTransaction でロールバックした場合も,
   TransactionManager でロールバックした場合も
   DB はロールバックされる

2.UserTransaction でロールバックした場合は
   DB はロールバックされるが,
   TransactionManager でロールバックした場合は
   DB はロールバックされない.

3.UserTransaction でロールバックした場合も,
   TransactionManager でロールバックした場合も
   DB はロールバックされない.

といった結果が考えられると思います.
もし 1 であれば S2 側の設定の問題,
2 であれば TransactionManager の取得方法の問題,
3 であれば DataSource の設定の問題ということに
なりそうです.


--
<signature>
   <name>Koichi Kobayashi</name>
   <e-mail>[E-MAIL ADDRESS DELETED]</e-mail>
</signature>




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