我使用下面的代码来使用grails中的邮件插件
try {
CH.config.grails.mail.default.from = "${parent_personal_data.email}"
mailSender.username = "${parent_personal_data.email}"
mailSender.password = "${parent_data.password}"
mailService.sendMail {
to "${employee_personal_data.email}"
subject "new task"
body "you have been added to project and you are given a task"
}
}
catch (Exception e) {
// catch block code
}
// Set the original settings back
finally {
CH.config.grails.mail.default.from = defaultFrom
mailSender.username = oldUsername
mailSender.password = oldPassword
}
它如何继续向我显示错误 没有这样的财产:CH 没有这样的属性:mailSender
答案 0 :(得分:0)
我不知道您的代码中的CH是什么,或者您使用的是什么版本的grails,但获取配置元素的适当方式是通过grailsApplication
或Holders
。
在控制器或服务中,您可以注入grailsApplication。
class SomeService {
def grailsApplication
def someMethod() {
def from = grailsApplication.config.grails.mail.default.from
...
}
}
或者您可以使用grails.util.Holders类。
class SomeService {
def grailsApplication
def someMethod() {
def from = Holders.config.grails.mail.default.from
...
}
}
阅读一些docs。