Grails spring安全userDetailService导入服务
您好,是否仍要将服务导入customUserDetailService?我犯了错误 org.springframework.security.authentication.InternalAuthenticationServiceException:无法对null对象调用方法validatePin()Grails spring安全userDetailService导入服务,grails,grails-plugin,Grails,Grails Plugin,您好,是否仍要将服务导入customUserDetailService?我犯了错误 org.springframework.security.authentication.InternalAuthenticationServiceException:无法对null对象调用方法validatePin() 您可能正在参考资料.groovy中注册自定义用户详细信息服务。在bean定义中,启用自动连接并添加对您尝试注入的服务的引用 userDetailsService(CustomUserDetails
您可能正在
参考资料.groovy
中注册自定义用户详细信息服务。在bean定义中,启用自动连接并添加对您尝试注入的服务的引用
userDetailsService(CustomUserDetailsService) {
it.autowire = true
apiService = ref('apiService')
}
谢谢想解释一下autowire是如何工作的吗?因为我缺少这个autowire,所以如果你使用
it.autowire='byName'
而不是it.autowire=true
那么你就可以消除apiService=ref('apiService'))
。如果在grails app/services/…
下定义CustomUserDetailsService
,则可以从resources.groovy中删除bean定义。groovy
。@JeffScottBrown在这种情况下,bean覆盖了Spring安全插件的bean,因此需要显式定义,否则是的。@doelleri对我来说有道理。
userDetailsService(CustomUserDetailsService) {
it.autowire = true
apiService = ref('apiService')
}