我有一个我在grails-app/services目录下移动的类,以便注入springSecurityService.这个类是spring userDetailsService类的实现(这是正确的术语吗?).这是我在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)