5

我有一个需要调用服务的命令类。

import org.codehaus.groovy.grails.commons.ApplicationHolder as AH

class FilterVisitCommand {

    def accessRightsService = AH.application.mainContext.accessRightsService
    def customerService = AH.application.mainContext.customerService
...
}

这种通过应用程序持有者定义的服务正在工作,但已被弃用。还有另一种方法可以让服务被注入吗?只有“def accessRightsService”不适用于命令类。

4

2 回答 2

15

如果您将服务注入到命令对象中进行验证,您可能需要通过命令对象引用该服务。

class FilterVisitCommand {

    def accessRightsService

    static constraints = {
        foo(validator: { foo, cmd ->
            cmd.accessRightsService.bar()
        })
    }
}
于 2012-04-18T03:50:27.323 回答
0

Grails 富域插件支持常规 Groovy 类的服务注入、验证等。

于 2012-04-17T12:52:02.917 回答