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