Email 在grails中有多个发送者
我需要创建一个应用程序的人可以发送电子邮件,从任何人到任何人 我尝试过在grails中使用邮件插件Email 在grails中有多个发送者,email,grails,jakarta-mail,Email,Grails,Jakarta Mail,我需要创建一个应用程序的人可以发送电子邮件,从任何人到任何人 我尝试过在grails中使用邮件插件 mail { host = "smtp.gmail.com" port = 465 username = "adityasoni051293@gmail.com" password = "aditya051293" props = ["mail.smtp.auth":"true", "mail.smtp.socketFactory.
mail {
host = "smtp.gmail.com"
port = 465
username = "adityasoni051293@gmail.com"
password = "aditya051293"
props = ["mail.smtp.auth":"true",
"mail.smtp.socketFactory.port":"465",
"mail.smtp.socketFactory.class":"javax.net.ssl.SSLSocketFactory",
"mail.smtp.socketFactory.fallback":"false"]
}
无论我如何无法从应用程序中更改发件人,
我在控制器中尝试了以下代码
def defaultFrom = grailsApplication.config.grails.mail.default.from
String oldUsername = grailsApplication.config.grails.mail.mailSender.username
String oldPassword = grailsApplication.config.grails.mail.mailSender.password
// Change the properties here; send the email
try {
grailsApplication.config.grails.mail.default.from = "${parent_personal_data.email}"
grailsApplication.config.grails.mail.mailSender.username = "${parent_personal_data.email}"
grailsApplication.config.grails.mail.mailSender.password = "${parent_data.password}"
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 {
grailsApplication.config.grails.mail.default.from = defaultFrom
grailsApplication.config.grails.mail.mailSender.username = oldUsername
grailsApplication.config.grails.mail.mailSender.password = oldPassword
但它也使用我在config.groovy中设置的id。
有办法吗。
或者其他我可以使用的插件
请帮忙,我在等。。。。。谢谢您面临的问题是Grails Mail插件的设计并不是为了在运行时更改其主机/端口/用户名/密码/连接属性。它设计用于使用
Config.groovy
中定义的一个设置
如果您需要能够在运行时设置该信息,则必须直接使用。幸运的是,您可以查看Grails邮件插件的详细信息,为您提供一些想法,甚至可以利用Spring框架(Grails构建于Spring之上)进行发送。我也遇到了类似的问题。
您可以将配置传递给MailService#sendMail方法
`MailMessage sendMail(Config config, @DelegatesTo(strategy = Closure.DELEGATE_FIRST, value = MailMessageBuilder) Closure callable)`
以下是一个例子:
和源代码