Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Есть такой кусок кода:
- try {
- DefaultTransactionDefinition transactionDefinition = new DefaultTransactionDefinition();
- transactionDefinition.setIsolationLevel(TransactionDefinition.ISOLATION_REPEATABLE_READ);
- transaction = transactionManager.getTransaction(transactionDefinition);
- order = create();
- transactionManager.commit(transaction);
- } catch (Exception ex) {
- if (transaction != null) {
- transactionManager.rollback(transaction);
- }
- throw ex;
- }
- Метод create():
- public Order create() {
- Order order = new Order();
- // Order setters
- Wallet wallet = walletRepository.forOrder(order);
- // Wallet updates
- log.debug("Saving to db {}", order);
- orderRepository.save(order);
- walletService.save(wallet);
- return order;
- }
- Ошибка в логе:
- 2019-06-18 15:07:40.556 DEBUG 5005 --- [.0-9091-exec-12] o.h.e.t.internal.TransactionImpl : rollback() called on an inactive transaction
- 2019-06-18 15:07:40.558 ERROR 5005 --- [.0-9091-exec-12] o.s.orm.jpa.JpaTransactionManager : Commit exception overridden by rollback exception
- org.springframework.dao.InvalidDataAccessApiUsageException: EntityManagerFactory is closed; nested exception is java.lang.IllegalStateException: EntityManagerFactory is closed
- at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:370) ~[spring-orm-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
- at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:255) ~[spring-orm-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
- at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:536) ~[spring-orm-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
- at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:746) [spring-tx-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
- at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:714) [spring-tx-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
- at строка, там где commit вызывается на transactionManager
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement