欢迎使用普元产品知识库,本知识库包含普元应用开发平台EOSPlatform,流程平台BPS,企业服务总线ESB,微服务平台Microservice,运维管理平台Devops,数据集成平台DI

页面树结构

欢迎使用普元文档库

Skip to end of metadata
Go to start of metadata

【问题描述】

springboot应用部署在PAS中,具体接口测试场景如下:

先进行数据插入,而后程序报错,由于添加了事务,正常数据应该回滚,但是目前数据还是进了库

【解决方案】

问题原因:

一般Springboot下包含DataSourceTransactionManager与JtaTransactionManager等事务管理器。
- JtaTransactionManager应用于JNDI下的事务管理。
- DataSourceTransactionManager应用于普通JDBC下事务管理。

通常JDBC事务需要DataSourceTransactionManager事务管理器,而由于某些版本SpringBoot下的JtaTransactionManager比DataSourceTransactionManager事务管理器优先级更高,所以导致事务回滚不生效。

项目中解决方案:

项目添加JDBC事务管理器配置,优先开启DataSourceTransactionManager。具体配置参考DataSourceTransactionManagerConfiguration.java


  • 无标签