当SimpleBatchConfiguration +
DefaultBatchConfigurer公开PlatformTransactionManager bean时,就会出现问题,
如您所述,这确实是BATCH-2788中报告的内容。我们正在探索的解决方案是
仅在 Spring Batch创建事务管理器bean 时才 公开它。
同时,您可以设置属性
spring.main.allow-bean-definition-overriding=true以允许Bean定义覆盖,并设置要Spring
Batch与之配合使用的事务管理器
BatchConfigurer#getTransactionManager。在您的情况下,它将类似于:
@Beanpublic BatchConfigurer batchConfigurer() { return new DefaultBatchConfigurer(this.singletonNotExposedSpringDatasource()) { @Override public PlatformTransactionManager getTransactionManager() { return new MyTransactionManager(); } };}
希望这可以帮助。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)