0

我想从静态方法中访问 Grails ConfigObject,并尝试关注这篇文章: http ://burtbeckwith.com/blog/?p=1017

该解决方案建议使用单例类创建自定义应用程序上下文持有者,并将其注册到 bean 列表 (resources.groovy) 中。

单例类应该有一个 ApplicationContext 类型的私有属性,它应该由 setApplicationContext 方法初始化,但看起来这永远不会发生。

如何在我的单例类实例中设置 ApplicationContext?

4

1 回答 1

2

这取决于您何时尝试访问它 - 如果您的静态方法在 grailsApplication 完全设置之前被调用,那么它可能尚未被注入。尝试使用grails.util.Holders(ApplicationHolder 等的非弃用替代品)或尝试“域类技巧”

new MyDomainObject().getDomainClass().grailsApplication.config
于 2012-11-19T09:36:43.033 回答