Spring中事务管理器自定义命名失效问题咨询
事务管理器Bean匹配问题排查与临时解决
找不到名为'transactionManager'的Bean:未找到与限定符'transactionManager'匹配的TransactionManager Bean——既不匹配限定符也不匹配Bean名称!
为解决该错误,只能将事务管理器重命名为默认名称,相关代码调整如下:
事务管理器Bean定义
@Bean(name = "transactionManager") @Primary public PlatformTransactionManager dbTxManager() { return new DataSourceTransactionManager(clientDestinationDataSource()); }
事务方法注解调整
@Transactional(value = "transactionManager") @Override public Long processClient(Client client) { // 方法业务逻辑 }
构造器注入指定限定符
@Autowired public UpdateStrategy(Repository repository, ... @Qualifier("transactionManager") PlatformTransactionManager txManager) { super(repository,... txManager); }
目前仍不清楚为何无法使用自定义名称的事务管理器,求各位提供排查思路。
内容的提问来源于stack exchange,提问作者skyho
相关产品推荐
相关产品推荐

