[Seasar-user:21874] トランザクション制御について

植木 貴紀 [E-MAIL ADDRESS DELETED]
2014年 4月 21日 (月) 21:41:16 JST


初めて投稿させていただきます。
うえっきと申します。お世話になります。


トランザクションの制御を手動で行っているメソッド内で
(@TransactionAttribute(TransactionAttributeType.NEVER))、
NullPointerException発生後、ロールバック(userTransaction.rollback)を行っ
たトランザクションに対して、
再度トランザクション制御のあるアクセスしようとすると(※1)下記エラーが
発生します。

org.seasar.framework.exception.SIllegalStateException:
[ESSR0308]既にロールバックとしてマークされています

(※1)コネクションプールのMaxSizeを1に設定し、同じコネクションを使用す
るようにしております。


エラーは毎回発生するのではなく、発生したりしなかったりと、原因がいまいち
わかりません。

userTransaction.rollback();でロールバックしており、トランザクションがク
ローズしていないということはないと思っています。

推測される原因、原因の調査方法等、ご教授いただけたら幸いです。
よろしくお願いいたします。


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