私はこのような方法を持っています:
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void doSomeWork(){
Entity = entity = dao.loadEntity();
// do some related work
...
try {
dao.saveEntity(entity);
}
catch(StaleObjectStateException sose){
dao.flush(entity);
doSomeWork();
}
}
REQUIRES_NEWトランザクションの伝播と示されている再帰を使用することで、StaleObjectStateExceptionが最終的にクリアされることを期待していましたが、そうではありません。
この例外から回復するにはどうすればよいですか?