我尝试过多次重启应用程序,然后从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对象的 View 访问getCustomerName方法。还尝试了另一项服务,结果相同。
最佳答案
这里只是一个猜测-以下内容读起来像一个getter方法:
def getCustomerName()
框架是否有可能在进行依赖项注入(inject)之前检查getter和setter方法的有效性?
Burt几年前回答了一个关于在onLoad()中使用依赖注入(inject)的问题,看来这是正在发生的事情。他建议:
添加此导入:
import org.codehaus.groovy.grails.commons.ApplicationHolder as AH
然后引用客户服务为
def customerService = AH.application.mainContext.customerService