private void rollbackTransaction(Exception t1, boolean transactionOwner) { try { logger.warn("Could not commit session", t1); txm.rollback(transactionOwner); } catch (Exception t2) { logger.error("Could not rollback", t2); throw new RuntimeException("Could not commit session or rollback", t2); } }
private void rollbackTransaction(Exception t1, boolean transactionOwner) { try { logger.warn("Could not commit session", t1); txm.rollback(transactionOwner); } catch (Exception t2) { logger.error("Could not rollback", t2); throw new RuntimeException("Could not commit session or rollback", t2); } }
protected void closeTansactionIfNeeded(TransactionManager jtaTm, boolean commit) { if (jtaTm != null) { if (commit) { jtaTm.commit(true); } else { jtaTm.rollback(true); } } }
protected <R> R call(Function<EntityManager, R> function) { boolean transactionOwner = false; try { transactionOwner = txm.begin(); EntityManager em = emf.createEntityManager(); R result = function.apply(em); txm.commit( transactionOwner ); em.close(); return result; } catch (Exception e) { txm.rollback(transactionOwner); throw new RuntimeException( "Exception when persisting error information", e); } }
report.setEndDate(new Date()); } catch (Throwable e) { txm.rollback(transactionOwner); logger.error("Unexpected error during migration", e);
tm.rollback(owner);
tm.rollback(owner);
tm.rollback(owner);
private void rollbackTransaction(Exception t1, boolean transactionOwner) { try { logger.warn("Could not commit session", t1); txm.rollback(transactionOwner); } catch (Exception t2) { logger.error("Could not rollback", t2); throw new RuntimeException("Could not commit session or rollback", t2); } }
private void rollbackTransaction(Exception t1, boolean transactionOwner) { try { logger.warn("Could not commit session", t1); txm.rollback(transactionOwner); } catch (Exception t2) { logger.error("Could not rollback", t2); throw new RuntimeException("Could not commit session or rollback", t2); } }
private void rollbackTransaction(Exception cause, boolean transactionOwner, boolean logstack) { try { if (logstack) { logger.warn( "Could not commit session", cause ); } else { logger.warn( "Could not commit session due to {}", cause.getMessage() ); } txm.rollback( transactionOwner ); } catch ( Exception rollbackError ) { String errorMessage = "Could not rollback due to '" + rollbackError.getMessage() + "' rollback caused by " + cause.getMessage(); // log rollback exception logger.error( "Could not rollback", rollbackError ); // propagate original exception that caused the rollback throw new RuntimeException( errorMessage, cause ); } }
protected <R> R call(Function<EntityManager, R> function) { boolean transactionOwner = false; try { transactionOwner = txm.begin(); EntityManager em = emf.createEntityManager(); R result = function.apply(em); txm.commit( transactionOwner ); em.close(); return result; } catch (Exception e) { txm.rollback(transactionOwner); throw new RuntimeException( "Exception when persisting error information", e); } }
report.setEndDate(new Date()); } catch (Throwable e) { txm.rollback(transactionOwner); logger.error("Unexpected error during migration", e);
@Test public void basicTransactionRollbackTest() { Environment env = createEnvironment(context); //TransactionManager txm = (TransactionManager) env.get( EnvironmentName.TRANSACTION_MANAGER ); javax.transaction.TransactionManager tm = (javax.transaction.TransactionManager) env.get( EnvironmentName.TRANSACTION_MANAGER ); TransactionManager txm = new JtaTransactionManager( env.get( EnvironmentName.TRANSACTION ), env.get( EnvironmentName.TRANSACTION_SYNCHRONIZATION_REGISTRY ), tm ); // Create linked transactionTestObjects TransactionTestObject mainObject = new TransactionTestObject(); mainObject.setName("main"); TransactionTestObject subObject = new TransactionTestObject(); subObject.setName("sub"); mainObject.setSubObject(subObject); Cache<Serializable, Object> cache = cm.getCache("jbpm-configured-cache"); try { boolean notTxOwner = txm.begin(); Serializable s = generateId(mainObject); mainObject.setId(Long.valueOf(s.toString())); cache.put(s, mainObject); txm.rollback(notTxOwner); } catch ( Exception e ) { fail("There should not be an exception thrown here: " + e.getMessage()); } }