if (ctx instanceof UnspecifiedTransactionContext == false) {
throw new NotSupportedException("Previous Transaction has not been committed");
}
UnspecifiedTransactionContext oldContext = (UnspecifiedTransactionContext) ctx;
BeanTransactionContext newContext = new BeanTransactionContext(txnManager, oldContext);
oldContext.suspend();
try {
newContext.begin();
} catch (SystemException e) {
oldContext.resume();
throw e;