如何从插件访问主应用程序的"grailsApplication"?
示例情况:我在插件中有一个类,需要从主应用程序获取资源链接,通常通过"grailsApplication"检索.我怎么做?
解决方案 在插件类中,您可以简单地指定:
import grails.util.Holders
Holders.getGrailsApplication()
Run Code Online (Sandbox Code Playgroud)
在服务中,您应该能够添加
def grailsApplication
Run Code Online (Sandbox Code Playgroud)
它将被注入您的服务.
如果你的班级是一个春天的豆子,那么你应该能够将它注入其中
def doWithSpring = { ->
myBean( org.whatever.BeanClass ) {
grailsApplication = ref( 'grailsApplication' )
}
}
Run Code Online (Sandbox Code Playgroud)
插件主groovy文件的块.
如果它们都不是,你试过使用Holders类吗?
def grailsApplication = grails.util.Holders.getGrailsApplication()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1423 次 |
| 最近记录: |