Example usage for org.springframework.transaction TransactionException TransactionException

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

Introduction

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

Prototype

public TransactionException(String msg) 

Source Link

Document

Constructor for TransactionException.

Usage

From source file:org.ujorm.spring.UjormTransactionManager.java

/** Begin a new transaction with semantics according to the given transaction */
protected void doEnd(boolean commit, Session localSession) throws TransactionException {
    if (localSession.isClosed()) {
        final String msg = "Transaction is closed, can't be " + (commit ? "commited" : "rollbacked");
        throw new TransactionException(msg) {
            private static final long serialVersionUID = 1L;
        };/*  w  ww .  j  a v  a2s .com*/
    }
    try {
        if (LOGGER.isLoggable(UjoLogger.TRACE)) {
            LOGGER.log(UjoLogger.TRACE, "Transaction is finished on the " + (commit ? "Commit" : "Rollback"));
        }
        if (commit) {
            localSession.commitTransaction();
        } else
            try {
                localSession.rollbackTransaction();
            } catch (Exception e) {
                // The rollback exception must not be thrown, because the original one could be overlapped.
                LOGGER.log(UjoLogger.ERROR, "Rollback failed", e);
            }
    } finally {
        if (localSession.getTransaction() == null) {
            session.remove();
            localSession.close();
        }
    }
}