Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在服务中使用GrailsApplication_Grails - Fatal编程技术网

在服务中使用GrailsApplication

在服务中使用GrailsApplication,grails,Grails,所以我做了一系列关于在服务中使用grailsApplication的研究,但似乎没有一个能在2.4.4中工作 下面是我如何使用它的 class AddressLookupService { def grailsApplication def addressLookup(address1, address2, city, state, zip){ def addressValidationErrors = verifyAddress( g

所以我做了一系列关于在服务中使用grailsApplication的研究,但似乎没有一个能在2.4.4中工作

下面是我如何使用它的

class AddressLookupService {

    def grailsApplication

    def addressLookup(address1, address2, city, state, zip){
        def addressValidationErrors = verifyAddress(
            grailsApplication.config.uspsUserId,
            address1, address2, city, state, zip, '')
        return addressValidationErrors.errDescription
    }
}
我得到的错误是什么

无法获取空对象的属性“config”

您可以将服务中的类作为

将grails.util.holder导入为H,然后将此holder用作
H.grailsApplication?.config?.uspsUserId

是grails应用程序/服务中的服务吗?请查看类似问题。确保def grailsApplication是一个类作用域变量字段,而不是在方法或Spring看不到的其他作用域中。另外,请尝试删除目标目录并运行grails compile以强制执行完全清理和重新编译-您可能只是失去了同步。@dmahapatro是的,服务在grails应用程序中/services@BurtBeckwithgrailsApplication是一个类范围变量字段。我还做了一次grails清理,然后是grails刷新依赖项,但仍然不起作用。我已经更新了显示整个类的问题OK,下一个问题是如何调用服务方法/在哪里调用服务方法?测验应用程序运行时?或仅H.config.uspsUserIdNope,避免使用Holders类。Use dependency Injection按预期工作,尽管Igor访问配置是正确的,但这种方式更短。