Exception thrown from tx cleanup in finally block supresses cause
-----------------------------------------------------------------
Key: OPENEJB-1342
URL: https://issues.apache.org/jira/browse/OPENEJB-1342
Project: OpenEJB
Issue Type: Bug
Components: container system
Affects Versions: 3.2
Reporter: David Jencks
If you have code like this in a bean-managed tx ejb:
ut.begin();
throw new RuntimeException("unexpected error");
ut.commit();
then code like this, present in all the containers, will suppress the runtime
exception in favor of an uninformative message that you failed to end the
transaction:
(from SingletonInstanceManager)
{code}
try{
//Call the chain
interceptorStack.invoke();
} catch(Throwable e) {
//RollBack Transaction
EjbTransactionUtil.handleSystemException(transactionPolicy, e,
callContext);
}
finally{
EjbTransactionUtil.afterInvoke(transactionPolicy, callContext);
// this throws the uninformative exception
}
{code}
Just about every use of EjbTransactionUtil.afterInvoke suffers from this
problem.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.