//this might be possible if the cache has stopped and TM still holds a reference to the XAResource
if (transaction != null) {
txTable.failureCompletingTransaction(transaction);
}
XAException xe = new XAException(XAException.XAER_RMERR);
xe.initCause(e);
throw xe;
}
}
private void handleCommitFailure(Throwable e, boolean onePhaseCommit, LocalTxInvocationContext ctx) throws XAException {