メソッドAからメソッドBを呼び出しているのですが、
メソッドBを@Asyncを使って非同期で宣言しました。
←トランザクション開始
メソッドA()開始
メソッドB()の呼び出し(非同期)
メソッドA()終了
←トランザクション終了
メソッドAはメソッドBの終了を待たずに、終了します。
そのため、メソッドA/メソッドBはトランザクションを共有しているので、メソッドAが終わったらばコミットされてしまいました。
なので、メソッドAとメソッドBで別のトランザクションを扱うようにしたいのですが、
どのようにすればよいでしょうか?
※ Sericeクラスでrollback()というメソッドを実装したかったので、
AOPを使ってトランザクション管理を実装しました。
なので、@Transactionalは使っていません。
あなたの回答
tips
プレビュー