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

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2007年 10月 19日 (金) 21:05:12 JST


お世話になります。
水口です。

>> ○設定例(1)
>> (途中省略)
>ちょっとバージョンが違いますが,Glassfish の
>ドキュメントでは,上記の方法で TransactionManager を
>取得できることになっています.
>
>https://glassfish.dev.java.net/javaee5/docs/DG/beanr.html
>
>Sun ONE Application Server 7 でもドキュメントに
>同等の記載があるんじゃないかと思うので,そちらを
>確認していただけないでしょうか.

以下のドキュメントやサイトを見る限りでは、JNDIでTransactionManagerをルックアップできないように思われます。
http://docs.sun.com/source/817-2177/djjndi.html#21685
http://opensource.atlassian.com/projects/hibernate/browse/HB-689

>もし 7 でも上記のように JNDI から取得可能と
>記載されていれば,問題は InitialContext かも
>しれません.
>
><component name="initialContext" class="javax.naming.InitialContext">
>  <arg>
>    #@java.util.Hashtable@{
>      "java.naming.factory.initial" : "com.sun.jndi.cosnaming.CNCtxFactory"
>    }
>  </arg>
></component>
>
>のようにしてみてください.

上記の方法を一応試してみましたが、結果は変わりませんでした。


>> ○設定例(2)
>> (途中省略)
>これちょっと惜しいですね.
>TransactionManagerImpl が TransactionManager を
>実装していないとは思えないので,おそらく
>geronimo-jta_1.1_spec-1.1.jar が WEB-INF/lib に
>置いてあると思われます.

geronimo-jta_1.0.1B_spec-1.0.jarが置いてありました。
今回利用しているS2Container-2.3.22のダウンロードしたzipファイルに含まれるものです。

>geronimo-jta_1.1_spec-1.1.jar は WEB-INF/lib から
>削除して,代わりに geronimo-jta_1.1_spec-1.1-tsr.jar を
>WEB-INF/lib に置いてください.
>geronimo-jta_1.1_spec-1.1-tsr.jar は現在の
>Seasar2 の配布ファイルには含まれていませんので,
>添付したものをお使いください.

上記の方法を試してみたところ、Webアプリケーションは正常に起動し、一通り動作するすることが確認できました。

>> ○設定例(4)
>> <component name="transactionManager" class="javax.transaction.TransactionManager">
>>   @[E-MAIL ADDRESS DELETED]().getTransactionManager()
>> </component>

また、設定例(4)でも同様に、成功しました。

ただ、設定例(2)と設定例(4)の両方でログの出力レベルがDEBUGであるにも関わらず、ログにトランザクション系のメッセージ、「トランザクションを開始しました」などのメッセージが表示されなくなりました。
そのためトランザクションが有効に機能しているかどうか確認しづくらなったのですが、APサーバのJTAとコネクションプールを利用する場合はこうなるのでしょうか?
 



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