Example usage for org.springframework.transaction TransactionSystemException TransactionSystemException

List of usage examples for org.springframework.transaction TransactionSystemException TransactionSystemException

Introduction

In this page you can find the example usage for org.springframework.transaction TransactionSystemException TransactionSystemException.

Prototype

public TransactionSystemException(String msg, Throwable cause) 

Source Link

Document

Constructor for TransactionSystemException.

Usage

From source file:org.springextensions.db4o.Db4oTransactionManager.java

protected void doRollback(DefaultTransactionStatus status) {
    Db4oTransactionObject txObject = (Db4oTransactionObject) status.getTransaction();
    logger.debug("Rolling back db4o transaction on object container [{}]",
            txObject.getObjectContainerHolder().getObjectContainer());
    try {/*from www .  jav  a 2s .  c  o  m*/
        txObject.getObjectContainerHolder().getObjectContainer().rollback();
    } catch (Exception ex) {
        throw new TransactionSystemException("Could not roll back db4o transaction", ex);
    } finally {
        try {
            // TODO: refresh the container somehow
        } catch (Exception e) {
            // we already throw an exception (hold back this one).
        }
    }
}

From source file:org.cfr.capsicum.datasource.CayenneTransactionManager.java

@Override
protected void doCommit(DefaultTransactionStatus status) {
    CayenneTransactionObject txObject = (CayenneTransactionObject) status.getTransaction();
    Connection con = txObject.getConnectionHolder().getConnection();
    if (status.isDebug()) {
        logger.debug("Committing JDBC transaction on Connection [" + con + "]");
    }/*from  w ww .jav a  2s.  co m*/
    try {
        status.flush();
        con.commit();
    } catch (SQLException ex) {
        throw new TransactionSystemException("Could not commit JDBC transaction",
                exceptionTranslator.convertJdbcAccessException(ex));
    } catch (CayenneRuntimeException ex) {
        throw new TransactionSystemException("Could not commit JDBC transaction",
                exceptionTranslator.convertAccessException(ex));
    }
}

From source file:org.cfr.capsicum.datasource.CayenneTransactionManager.java

@Override
protected void doRollback(DefaultTransactionStatus status) {
    CayenneTransactionObject txObject = (CayenneTransactionObject) status.getTransaction();
    Connection con = txObject.getConnectionHolder().getConnection();
    ObjectContext dataContext = txObject.getConnectionHolderEx().getObjectContext();
    if (status.isDebug()) {
        logger.debug("Rolling back JDBC transaction on Connection [" + con + "]");
    }/*from ww w .ja v  a2s .  c  om*/
    try {
        if (dataContext != null) {
            dataContext.rollbackChanges();
        }
        con.rollback();
    } catch (SQLException ex) {
        throw new TransactionSystemException("Could not commit JDBC transaction",
                exceptionTranslator.convertJdbcAccessException(ex));
    } catch (CayenneRuntimeException ex) {
        throw new TransactionSystemException("Could not commit JDBC transaction",
                exceptionTranslator.convertAccessException(ex));
    }
}

From source file:org.guzz.web.context.spring.GuzzTransactionManager.java

@Override
protected void doCommit(DefaultTransactionStatus status) {
    GuzzTransactionObject txObject = (GuzzTransactionObject) status.getTransaction();
    if (status.isDebug()) {
        logger.debug("Committing Guzz transaction on WriteTranSession ["
                + TransactionManagerUtils.toString(txObject.getSessionHolder().getWriteTranSession()) + "]");
    }//  w ww.ja v  a 2 s  . com
    try {
        txObject.getSessionHolder().getWriteTranSession().commit();
    } catch (DaoException ex) {
        throw convertGuzzAccessException(ex);
    } catch (Throwable ex) {
        throw new TransactionSystemException("Could not commit Hibernate transaction", ex);
    }
}

From source file:com._4dconcept.springframework.data.marklogic.datasource.ContentSourceTransactionManager.java

@Override
protected void doCommit(DefaultTransactionStatus status) {
    ContentSourceTransactionObject txObject = (ContentSourceTransactionObject) status.getTransaction();
    Session ses = txObject.getSessionHolder().getSession();
    if (status.isDebug()) {
        logger.debug("Committing XDBC transaction on Session [" + ses + "]");
    }//  www .j  av  a2s  .  c o  m
    try {
        ses.commit();
    } catch (XccException ex) {
        throw new TransactionSystemException("Could not commit XDBC transaction", ex);
    }
}

From source file:org.guzz.web.context.spring.GuzzTransactionManager.java

@Override
protected void doRollback(DefaultTransactionStatus status) {
    GuzzTransactionObject txObject = (GuzzTransactionObject) status.getTransaction();
    if (status.isDebug()) {
        logger.debug("Rolling back Guzz transaction on WriteTranSession ["
                + TransactionManagerUtils.toString(txObject.getSessionHolder().getWriteTranSession()) + "]");
    }//  w  ww . j ava  2 s  .  co m

    try {
        txObject.getSessionHolder().getWriteTranSession().rollback();
    } catch (Throwable ex) {
        throw new TransactionSystemException("Could not roll back Hibernate transaction", ex);
    }
}

From source file:com._4dconcept.springframework.data.marklogic.datasource.ContentSourceTransactionManager.java

@Override
protected void doRollback(DefaultTransactionStatus status) {
    ContentSourceTransactionObject txObject = (ContentSourceTransactionObject) status.getTransaction();
    Session ses = txObject.getSessionHolder().getSession();
    if (status.isDebug()) {
        logger.debug("Rolling back XDBC transaction on Session [" + ses + "]");
    }//from w w w  .j a  v a  2 s  . co m
    try {
        ses.rollback();
    } catch (XccException ex) {
        throw new TransactionSystemException("Could not roll back XDBC transaction", ex);
    }
}

From source file:org.fcrepo.camel.FcrepoProducer.java

/**
 * Define how message exchanges are processed.
 *
 * @param exchange the InOut message exchange
 * @throws FcrepoOperationFailedException when the underlying HTTP request results in an error
 *//*from  ww  w  .  jav  a 2  s .com*/
@Override
public void process(final Exchange exchange) throws FcrepoOperationFailedException {
    if (exchange.isTransacted()) {
        transactionTemplate.execute(new TransactionCallbackWithoutResult() {
            @Override
            protected void doInTransactionWithoutResult(final TransactionStatus status) {
                final DefaultTransactionStatus st = (DefaultTransactionStatus) status;
                final FcrepoTransactionObject tx = (FcrepoTransactionObject) st.getTransaction();
                try {
                    doRequest(exchange, tx.getSessionId());
                } catch (final FcrepoOperationFailedException ex) {
                    throw new TransactionSystemException("Error executing fcrepo request in transaction: ", ex);
                }
            }
        });
    } else {
        doRequest(exchange, null);
    }
}

From source file:org.springframework.jdbc.datasource.JdbcTransactionObjectSupport.java

/**
 * This implementation rolls back to the given JDBC 3.0 Savepoint.
 * @see java.sql.Connection#rollback(java.sql.Savepoint)
 *//*from   w w  w .  j a va2 s  .  c  o m*/
@Override
public void rollbackToSavepoint(Object savepoint) throws TransactionException {
    ConnectionHolder conHolder = getConnectionHolderForSavepoint();
    try {
        conHolder.getConnection().rollback((Savepoint) savepoint);
        conHolder.resetRollbackOnly();
    } catch (Throwable ex) {
        throw new TransactionSystemException("Could not roll back to JDBC savepoint", ex);
    }
}

From source file:org.springframework.jdbc.support.lob.LobCreatorUtils.java

/**
 * Register a transaction synchronization for closing the given LobCreator,
 * preferring Spring transaction synchronization and falling back to
 * plain JTA transaction synchronization.
 * @param lobCreator the LobCreator to close after transaction completion
 * @param jtaTransactionManager the JTA TransactionManager to fall back to
 * when no Spring transaction synchronization is active (may be {@code null})
 * @throws IllegalStateException if there is neither active Spring transaction
 * synchronization nor active JTA transaction synchronization
 *//*from  w  w  w. j  ava 2 s.  c  o  m*/
public static void registerTransactionSynchronization(LobCreator lobCreator,
        TransactionManager jtaTransactionManager) throws IllegalStateException {

    if (TransactionSynchronizationManager.isSynchronizationActive()) {
        logger.debug("Registering Spring transaction synchronization for LobCreator");
        TransactionSynchronizationManager
                .registerSynchronization(new SpringLobCreatorSynchronization(lobCreator));
    } else {
        if (jtaTransactionManager != null) {
            try {
                int jtaStatus = jtaTransactionManager.getStatus();
                if (jtaStatus == Status.STATUS_ACTIVE || jtaStatus == Status.STATUS_MARKED_ROLLBACK) {
                    logger.debug("Registering JTA transaction synchronization for LobCreator");
                    jtaTransactionManager.getTransaction()
                            .registerSynchronization(new JtaLobCreatorSynchronization(lobCreator));
                    return;
                }
            } catch (Throwable ex) {
                throw new TransactionSystemException(
                        "Could not register synchronization with JTA TransactionManager", ex);
            }
        }
        throw new IllegalStateException("Active Spring transaction synchronization or active "
                + "JTA transaction with specified [javax.transaction.TransactionManager] required");
    }
}