小编jcd*_*jcd的帖子

依赖注入在Grails服务中不起作用

我有一个我在grails-app/services目录下移动的类,以便注入springSecurityService.这个类是spring userDetailsS​​ervice类的实现(这是正确的术语吗?).这是我在resources.groovy中的声明:

userDetailsService(com.company.product.PracticeUserDetailsService) {
    grailsApplication = ref('grailsApplication')
}
Run Code Online (Sandbox Code Playgroud)

这个课程正在扩展 GormUserDetailsService.

我尝试的dependencyInjection导致一个null对象.

class PracticeUserDetailsService extends GormUserDetailsService{

    def springSecurityService

    UserDetails loadUserByUsername(String username, boolean loadRoles) throws UsernameNotFoundException {
        // impl omitted
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我在grails中创建一些测试控制器或某些服务并注入springSecurityService,它可以正常工作.所以,这个特定的类可能还有一些东西没有放在Grails生态系统中.我检查了这个尝试手动注入它如下:

beans = {
    springSecurityTEST(grails.plugins.springsecurity.SpringSecurityService) {}

}
Run Code Online (Sandbox Code Playgroud)

grails dependency-injection spring-security

3
推荐指数
1
解决办法
2581
查看次数