【发布时间】:2021-03-29 12:37:46
【问题描述】:
带有 SpringBatch 和 JPA 的 SpringBoot 应用程序,没有 @Async 一切正常,但在 REST API 中添加了 @Async,作业完成,但 JPAItemWriter 没有将对象保存在数据库中。看起来像事务问题,因为我得到了这个异常。
事务管理器 [org.sringframework.batch.support.transaction.ResourcelessTransactionManager] 不支持事务暂停。
我尝试了不同的方法,例如更改 Propagation.Requires_New (Required, Supports) 但没有任何效果,尝试搜索所有论坛但没有运气。
@Service
public class SampleWriter extends JpaItemWriter<TestEntity> {
@Autowired
EntityManager entityManager;
@Transactional(readOnly=false, propagation = Propagation.REQUIRED, isolation = Isolation.READ_COMMITTED)
@Override
public void write(List<TestEntity> entities) {
this.doWrite(entityManager, entities);
}
}
【问题讨论】:
标签: spring-boot jpa spring-batch