re.initCause(e.getCause());
throw re;
} else {
SystemException se = new SystemException(
"Unable to commit transaction: XA_ERR=" + e.errorCode);
se.initCause(e.getCause());
throw se;
}
} catch (InterruptedException e) {
throw new SystemException("Thread.join() interrupted");
}