gpt4 book ai didi

grails - resources.groovy grails文件中的springSecurityService?

转载 作者:行者123 更新时间:2023-12-02 15:13:25 24 4
gpt4 key购买 nike

我无法从resources.groovy文件访问springSecurityService,我正在尝试加载用户语言环境设置并创建LocaleResolver

import User

beans = {
localeResolver(org.springframework.web.servlet.i18n.SessionLocaleResolver) {
def user = User.get(springSecurityService.principal.id)
if (user?.settings?.locale) {
defaultLocale = new Locale(user?.settings?.locale)
java.util.Locale.setDefault(defaultLocale)
}
}
}

谢谢,
美佳

最佳答案

您上面的代码没有多大意义。在resources.groovy中,您应该定义Spring bean的实现类并设置其依赖项。看来您正在尝试实际使用resources.groovy编写实现类。

相反,您应该编写自己的LocaleResolver

package org.example

class MyLocaleResolver extends AbstractLocaleResolver {

def springSecurityService

// implementation of methods omitted, because I haven't clue how you want to resolve Locales
}

然后在 resources.groovy中,定义此类型的bean,以替换默认的 localeResolver bean
beans = {
localeResolver(org.example.MyLocaleResolver) {
springSecurityService = ref('springSecurityService')
}
}

关于grails - resources.groovy grails文件中的springSecurityService?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9886358/

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