Откат аннотированного метода @Transactional
Добрый день. Следующий код:
class A{
private B b;
@Transactional
public SomeResult doSomething(){
SomeResult res = null;
try {
// do something
} catch (Exception e) {
res = b.saveResult();
}
return res ;
}
}
@Transactional(propagation = Propagation.REQUIRES_NEW)
class B{
public SomeResult saveResult(){
// save in db
}
}
Как я понимаю, если есть исключение в методеdoSomething
транзакция не отменена. А как сделать чтобы оно катилось? и вернул SomeResult