grails中的异步邮件插件实现

时间:2014-04-02 11:08:28

标签: email grails asynchronous

我正在尝试在Grails项目中实现异步邮件插件。我已按照This Tutorial

的所有步骤进行操作

在此我无法将 asyncMailService 对象注入到我的控制器类中。导入

import grails.plugin.asyncmail.AsynchronousMailService

无法识别。

以下是我发送邮件的代码:

AsynchronousMailService asyncMailService asyncMailService.sendMail { to 'xxx@gmail.com' subject 'Test'; html '<body><u>Test</u></body>'; }

在上面的代码中AsynchronousMailService无法识别。

我可以使用以下代码发送邮件:

sendMail { to 'xxx@gmail.com' subject 'Test'; html '<body><u>Test</u></body>'; }

但这不是异步发送邮件。我想异步发送邮件。

请告诉我这件事我做错了什么。

感谢。

1 个答案:

答案 0 :(得分:2)

我怀疑是因为您没有正确注入服务。你的控制器应该是这样的:

package com.example
import grails.plugin.asyncmail.AsynchronousMailService

class MyController {

  AsynchronousMailService asyncMailService // this injects the service

  def someFancyMethod() {
    ...
    asyncMailService.sendMail {
      to 'xxx@gmail.com'
      subject 'Test';
      html '<body><u>Test</u></body>';
    }
    ...
  }
}

请注意,您正在该方法之外注入服务。