我尝试过多个应用重启,并从2.0.0升级到2.0.3,没有帮助。我总是得到这样的信息:
: def getCustomerName(){64: customerService.name
"Cannot get property 'name' on null object"
相关域类部分:
class Instance {
def customerService
...
def getCustomerName(){
customerService.name
}
相关服务类:
class CustomerService {
我正在尝试从有权访问Instance对象的视图中访问getCustomerName方法。也尝试使用其他服务,结果相同。
答案 0 :(得分:3)
这里只是猜测 - 以下读取类似于getter方法:
def getCustomerName()
在依赖注入发生之前,框架是否有可能检查getter和setter方法的有效性?
几年前Burt回答了一个关于在onLoad()中使用依赖注入的问题,看起来就是这样。他建议:添加此导入:
import org.codehaus.groovy.grails.commons.ApplicationHolder as AH
然后将客户服务引用为
def customerService = AH.application.mainContext.customerService