【问题标题】:Could not roll back JPA transaction; javax.persistence.PersistenceException: unexpected error when rollbacking" exceptions?无法回滚 JPA 事务; javax.persistence.PersistenceException:回滚时出现意外错误”异常?
【发布时间】:2013-12-31 14:41:25
【问题描述】:

什么事件导致“org.springframework.transaction.TransactionSystemException - 无法回滚 JPA 事务;嵌套异常是 javax.persistence.PersistenceException:回滚时出现意外错误”异常?

【问题讨论】:

  • 您应该尝试提供更多关于您正在尝试做什么、在什么时候收到错误等信息。也许完整的堆栈跟踪和一些代码/配置文件也会有所帮助......

标签: jpa persistence


【解决方案1】:

我在使用 spring 和 Jpa 时遇到了同样的错误。 问题是在超时的情况下断开与 Mysql 数据库的连接。我晚上没有使用应用程序,早上我得到了同样的错误。当你不活动时,弹簧什么也不做,它会超时。 为了防止它,您可以添加到application.properties 下一行:

spring.datasource.connection-test-query="SELECT 1"
spring.datasource.test-while-idle=true
spring.datasource.test-on-borrow=true

现在它工作正常。 来自Virtustilus blog 的其他信息也很有用。

【讨论】:

    【解决方案2】:

    如果事务是 XA 事务(分布式),那么其中一个参与者可能拒绝了回滚。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-16
      • 2016-08-14
      • 2015-10-03
      • 2019-01-21
      • 2020-09-24
      • 1970-01-01
      • 2012-12-28
      • 2012-04-13
      相关资源
      最近更新 更多