Когда (транзакционный) метод EJB вызывает другой (транзакционный) метод другого EJB, а исключение генерируется во втором, но в первом случае оно кажется, что транзакция автоматически откатывается, когда вторая один возвращается, даже если первый поймал его, это правда? как я могу его избежать?
Сценарий следующий:
@Stateless
class ClassA {
@EJB
ClassB objectB;
methodA() {
try {
objectB.methodB();
}
catch(Exception e) {
//Here the transaction started in this method is
//automatically rolled back. Is this avoidable?
}
}
}
@Stateless
class ClassB {
methodB() throws Exception { throw new Exception() }
}