* Will look for Spring transactions and use them if they exist. *
@@ -45,7 +44,7 @@ import org.springframework.transaction.support.TransactionSynchronizationManager */ public class SpringAwareJdbcTransactionManager implements ExternalTransactionManager { - private final static Logger logger = Logger.getLogger(SpringAwareJdbcTransactionManager.class.getName()); + private static final Logger log = LoggerFactory.getLogger(SpringAwareJdbcTransactionManager.class); /** * The data source. @@ -97,23 +96,18 @@ public class SpringAwareJdbcTransactionManager implements ExternalTransactionMan if (holder == null || !holder.isSynchronizedWithTransaction()) { // no current Spring transaction SpiTransaction currentEbeanTransaction = DefaultTransactionThreadLocal.get(serverName); - if (currentEbeanTransaction != null) { - // NOT expecting this so log WARNING - String msg = "SpringTransaction - no current spring txn BUT using current Ebean one " + currentEbeanTransaction.getId(); - logger.log(Level.WARNING, msg); - - } else if (logger.isLoggable(Level.FINEST)) { - logger.log(Level.FINEST, "Spring Txn - no current transaction "); + if (currentEbeanTransaction != null) { // this is unexpected + log.warn("No current Spring transaction BUT using current Ebean one {}", currentEbeanTransaction.getId()); + } else { + log.trace("No current Spring transaction"); } return currentEbeanTransaction; } SpringTxnListener springTxnLister = getSpringTxnListener(); - if (springTxnLister != null) { // we have already seen this transaction return springTxnLister.getTransaction(); - } else { // This is a new spring transaction that we have not seen before. // "wrap" it in a SpringJdbcTransaction for use with Ebean @@ -210,23 +204,18 @@ public class SpringAwareJdbcTransactionManager implements ExternalTransactionMan switch (status) { case STATUS_COMMITTED: - if (logger.isLoggable(Level.FINE)) { - logger.fine("Spring Txn [" + transaction.getId() + "] committed"); - } + log.debug("Spring Txn [{}] committed", transaction.getId()); transactionManager.notifyOfCommit(transaction); break; case STATUS_ROLLED_BACK: - if (logger.isLoggable(Level.FINE)) { - logger.fine("Spring Txn [" + transaction.getId() + "] rollback"); - } + log.debug("Spring Txn [{}] rollback", transaction.getId()); transactionManager.notifyOfRollback(transaction, null); break; default: // this should never happen - String msg = "Invalid status " + status; - throw new PersistenceException(msg); + throw new PersistenceException("Invalid status " + status); } // Remove this transaction object as it is completed diff --git a/src/test/java/com/avaje/test/springsupport/EbeanSpringModuleTest.java b/src/test/java/com/avaje/test/springsupport/EbeanSpringModuleTest.java index 54f50f495..6d31d3e2d 100644 --- a/src/test/java/com/avaje/test/springsupport/EbeanSpringModuleTest.java +++ b/src/test/java/com/avaje/test/springsupport/EbeanSpringModuleTest.java @@ -19,17 +19,14 @@ */ package com.avaje.test.springsupport; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - import java.util.logging.Logger; - import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; /** * Unit test for Ebean Spring Module. diff --git a/src/test/java/com/avaje/test/springsupport/Role.java b/src/test/java/com/avaje/test/springsupport/Role.java index 02381291e..1ff6aa60e 100644 --- a/src/test/java/com/avaje/test/springsupport/Role.java +++ b/src/test/java/com/avaje/test/springsupport/Role.java @@ -20,9 +20,7 @@ package com.avaje.test.springsupport; -import java.util.HashSet; import java.util.Set; - import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.ManyToMany; @@ -56,6 +54,4 @@ public class Role { public void setUsers(Set