Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.38 KB | None | 0 0
  1. Есть такой кусок кода:
  2. try {
  3. DefaultTransactionDefinition transactionDefinition = new DefaultTransactionDefinition();
  4. transactionDefinition.setIsolationLevel(TransactionDefinition.ISOLATION_REPEATABLE_READ);
  5. transaction = transactionManager.getTransaction(transactionDefinition);
  6. order = create();
  7.  
  8. transactionManager.commit(transaction);
  9. } catch (Exception ex) {
  10. if (transaction != null) {
  11. transactionManager.rollback(transaction);
  12. }
  13. throw ex;
  14. }
  15. Метод create():
  16. public Order create() {
  17. Order order = new Order();
  18. // Order setters
  19. Wallet wallet = walletRepository.forOrder(order);
  20. // Wallet updates
  21.  
  22. log.debug("Saving to db {}", order);
  23.  
  24. orderRepository.save(order);
  25. walletService.save(wallet);
  26.  
  27. return order;
  28. }
  29.  
  30. Ошибка в логе:
  31. 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
  32. 2019-06-18 15:07:40.558 ERROR 5005 --- [.0-9091-exec-12] o.s.orm.jpa.JpaTransactionManager : Commit exception overridden by rollback exception
  33. org.springframework.dao.InvalidDataAccessApiUsageException: EntityManagerFactory is closed; nested exception is java.lang.IllegalStateException: EntityManagerFactory is closed
  34. at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:370) ~[spring-orm-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
  35. at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:255) ~[spring-orm-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
  36. at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:536) ~[spring-orm-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
  37. at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:746) [spring-tx-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
  38. at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:714) [spring-tx-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
  39. at строка, там где commit вызывается на transactionManager
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement