Grails多个数据源:org.springframework.beans.factory.NoUniqueBeanDefinitionException

时间:2016-03-16 21:30:33

标签: grails

我最近发布了一个关于多个数据源的问题。事情进展顺利,直到我遇到这个问题:

控制器

 def doSomething() {

    def user=userService.getCurrentUser()
   }

服务

    class UserService {
     def getCurrentUser() {
        def principal = springSecurityService.principal
        String username = principal.username
        return find(username)
     }
     def find(String user) {
        return User.find{username==user}
     }
   }

以前在单个DataSource上工作过但现在启用了两个,我在浏览器上看到了这个:

  

错误500:内部服务器错误URI / xxx / xxx类   org.springframework.beans.factory.NoUniqueBeanDefinitionException   消息没有类型的限定bean   [org.springframework.transaction.PlatformTransactionManager]是   已定义:预期单个匹配bean但找到3:   transactionManager的,transactionManager_countrycity,$ primaryTransactionManager

1 个答案:

答案 0 :(得分:1)

好的,现在已经解决了。

我认为我发现了这个问题:如果你有这个导入,请在grails 3下有多个数据源:

  

导入org.springframework.transaction.annotation.Transactional

您将遇到上述问题:

如果你有:

  

导入grails.transaction.Transactional

事情将按预期发挥作用。我没有注意,让我们选择错误的声明