Fuse (OSGi) 内に mybatis-spring integration 1.0.1 をデプロイした mybatis 3.0.4 があります。SQLServer 2008 内に基本的なデータベースを作成しました。Spring では、TransactionAwareDataSourceProxy
データ ソースとDataSourceTransactionManager
トランザクション マネージャーを構成しました。
これで、いくつかの行をデータベースに挿入する Fuse 内にデプロイする独自のバンドルを作成しました。構成済みのデータ ソースとトランザクション マネージャーを使用するようにバンドルに指示しました。ロジックを実行するメソッドは次のようになります。
@Transactional(propagation=Propagation.REQUIRED)
public void go(RecsCashContext context) throws ActionException {
このメソッドが例外をスローすると、予期される動作がトリガーされるのを確認することで、Spring を追跡できます。これにより、SpringsJtaTransactionManager
とdoRollBack(..)
.
したがって、データベースを見ると、以前の挿入がロールバックされていないため、データベースが不安定な状態にあることを除いて、すべてが有望に見えます。
私はこれについて途方に暮れており、オンラインで情報を見つけるのに苦労しています。何かご意見は?