[Seasar-user:20315] Re: WAS6TransactionManagerAdapterの問題
鵜澤 陽介
[E-MAIL ADDRESS DELETED]
2010年 11月 5日 (金) 17:22:25 JST
小林様
早速の対応ありがとうございます。鵜澤(uzawa)です。
実際に動作の確認にはいたっていませんが、ソースの方で
確認させていただきました。
(※動作に関しては週明けに確認します。)
> しかし RemoteException には cause を受け取る
> コンストラクタがあるのに、
> TransactionRolledbackException にはないという。。。
> そんな罠があるならコンストラクタを用意して
> ほしかったよ>JTA
同感です。
フィールドのスコープをpublicにして、しかも読み込むときは
getCause()を使えって。。。
Throwableのcauseを使わずにチェーンをRemoteExceptionまでで
切るっていうのもなんだか。。。変なの。
以上です。
(2010/11/05 17:00), Koichi Kobayashi wrote:
> 小林 (koichik) です.
>
> Date: Fri, 05 Nov 2010 15:31:55 +0900
> From: 鵜澤 陽介<[E-MAIL ADDRESS DELETED]>
> Subject: [Seasar-user:20311] WAS6TransactionManagerAdapterの問題
>
>> throw new TransactionRolledbackException(e.getMessage())
>> .initCause(e);
>>
>> しかしながら、TransactionRolledbackExceptionは親のコンストラクタで
>> 自身の持つcause:Throwableを初期化しているため、initCause(e)を
>> 呼び出すと、IllegalStateExceptionが発生してしまいます。
>
> なるほど、TransactionRolledbackException は
> RemoteException で、RemoteException は
>
> ------------------------------------------------------------
> RemoteException のインスタンス上で Throwable.initCause(Throwable)
> メソッドを呼び出した場合、常に IllegalStateException がスローされます。
> ------------------------------------------------------------
>
> なのですね。勉強になりました。
> しかし RemoteException には cause を受け取る
> コンストラクタがあるのに、
> TransactionRolledbackException にはないという。。。
> そんな罠があるならコンストラクタを用意して
> ほしかったよ>JTA
>
> ともあれ (JW)、修正して SNAPSHOT をデプロイ
> したのでご確認ください。
>
> http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-framework/2.4.44-SNAPSHOT/s2-framework-2.4.44-20101105.073249-1.jar
> http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-framework/2.4.44-SNAPSHOT/s2-framework-2.4.44-20101105.073249-1.jar
> http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-tiger/2.4.44-SNAPSHOT/s2-tiger-2.4.44-20101105.073839-1.jar
> http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2jdbc-gen/2.4.44-SNAPSHOT/s2jdbc-gen-2.4.44-20101105.074851-1.jar
>
>
Seasar-user メーリングリストの案内