我想从静态方法中访问Grails ConfigObject,我试着遵循这篇文章: http://burtbeckwith.com/blog/?p=1017
解决方案建议使用单例类创建自定义应用程序上下文持有者,并在bean列表中注册(resources.groovy)。
单例类应该有一个ApplicationContext类型的私有属性,应该由setApplicationContext方法初始化,但看起来永远不会发生。
如何在我的单例类实例中设置ApplicationContext?
答案 0 :(得分:2)
这取决于您何时尝试访问它 - 如果在完全设置grailsApplication之前调用静态方法,则可能尚未注入。尝试使用grails.util.Holders
(ApplicationHolder等人的非弃用替代品)或尝试使用"domain class trick"
new MyDomainObject().getDomainClass().grailsApplication.config