Debug.logError(te, "Problems with the transaction", module);
throw new GenericServiceException("Problems with the transaction.", te.getNested());
} finally {
// release the semaphore lock
if (lock != null) {
lock.release();
}
// resume the parent transaction
if (parentTransaction != null) {
try {