gpt4 book ai didi

grails - 依赖注入(inject)在 Grails 服务中不起作用

转载 作者:行者123 更新时间:2023-12-01 10:44:34 25 4
gpt4 key购买 nike

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

userDetailsService(com.company.product.PracticeUserDetailsService) {
grailsApplication = ref('grailsApplication')
}

这个类正在扩展 GormUserDetailsS​​ervice.

我尝试的dependencyInjection 导致一个空对象。

class PracticeUserDetailsService extends GormUserDetailsService{

def springSecurityService

UserDetails loadUserByUsername(String username, boolean loadRoles) throws UsernameNotFoundException {
// impl omitted
}
}

如果我在 grails 中创建一些测试 Controller 或一些服务并注入(inject) springSecurityService,它可以正常工作。所以,这个特定的类可能有一些东西没有放在 Grails 生态系统中。我 checkout this尝试手动注入(inject)如下:

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

}

最佳答案

PracticeUserDetailsS​​ervicegrails-app/services 移动到 src/groovy 并在 resources.groovy< 中更改您的 Spring bean 定义到:

userDetailsService(com.company.product.PracticeUserDetailsService) {
grailsApplication = ref('grailsApplication')
springSecurityService = ref('springSecurityService')
}

关于grails - 依赖注入(inject)在 Grails 服务中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27950569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com