Spring 3.0アノテーションベースのトランザクションでサービスレイヤを処理しようとしています。私は春のトランザクションサポートを次のように設定しています:Spring:トランザクションがロールバックされない
私はトランザクションにDataSourceTransactionManager
を使用しています。
<bean id="summaryDailyTXManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="summaryDailyDataSource"/>
</bean>
そして、次のように私は、アノテーションベースのサポートを設定します。この後
<tx:annotation-driven transaction-manager="summaryDailyTXManager" proxy-target-class="true" />
私は私の取引可能な機能については、以下のアノテーションを使用します。
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = { Exception.class })
public void doSomething() {
// my code
}
私の理解では、もしそこにこれですdoSomething
関数からの例外であれば、トランザクションはロールバックされます。しかし、それはロールバックされていません。私が何か間違っていたり、何かを逃してしまったら、私を案内してください。
ありがとうございました。
よろしく Gillani
私たちに 'doSomething'を見せてください。 – soulcheck
このメソッドを含むオブジェクトへの参照を取得し、このメソッドを呼び出すコードを表示してください。 –
データソースの自動コミットが無効になっていますか? – phlogratos