4

我有一个名为 的服务Mailer和一个控制器,它应该使用这个服务:

class DocumentController {

    def mailer

    def publish = {
        mailer.sendReport()
    }

}

但是当我打电话时,publish我得到:

java.lang.NullPointerException: Cannot invoke method sendReport() on null object

为什么依赖注入在这里不起作用?

4

1 回答 1

8

Grails 是关于约定的。我认为 mailer 需要被称为 mailerService。它需要在服务目录中。控制器需要在控制器目录中。

从文档

“服务包含可以在 Grails 应用程序中重用的业务逻辑。在 Grails 中,服务是一个以约定“服务”结尾并位于 grails-app/services 目录中的类。可以使用创建服务命令:”

于 2011-01-20T19:56:01.510 回答