これが私たちのコードの一部です
@Transactional
public void createAccount(){
// db call on dao to insert data at TBL_ACCOUNT
// web service call on insertUserInfo() method of UsersWebservice
}
UsersWebService のコードでは:
public void insertUserInfo() {
//check if user account record is already inserted in TBL_ACCOUNT
// if yes - insert data in TBL_USER_INFO, else throw exception
}
TBL_ACCOUNT のデータ挿入はまだコミットされていないため、UserswebService の insertUserInfo メソッドは常に例外をスローしますが、技術的には、TBL_ACCOUNT にデータが既に挿入されており、まだコミットされていないため、これは発生しないはずです。
このシナリオに対処する方法はありますか?
ちなみに、Spring トランザクション バージョン 4.2.4.RELEASE を使用しています。