我正在尝试在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>';
}
但这不是异步发送邮件。我想异步发送邮件。
请告诉我这件事我做错了什么。
感谢。
答案 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>';
}
...
}
}
请注意,您正在该方法之外注入服务。