我正在尝试从我的Java Play 2.10应用程序通过SendGrid发送一个简单的测试电子邮件。我正在使用play-plugins-mailer发送电子邮件并拥有一个免费的(heroku)SendGrid帐户。这是我到目前为止所做的一切:
在我的控制器中添加了以下代码以发送电子邮件:
MailerAPI mail = play.Play.application().plugin(MailerPlugin.class).email();
mail.setSubject("test subject");
mail.addRecipient("test@gmail.com");
mail.addFrom("testapp@heroku.com");
mail.send("some text");
在我的application.conf中添加了以下内容:
smtp.host="smtp.sendgrid.net"
smtp.user="[my-sendgrid-user]"
smtp.pass="[my-sendgrid-pass]"
smtp.port="587"
smtp.channel=plain
我很确定Mailer工作正常,它似乎只是一个SendGrid配置问题。执行此代码时,我收到此错误:
[RuntimeException:org.apache.commons.mail.EmailException:将电子邮件发送到以下服务器失败:smtp.sendgrid.net:587]
我已尝试在我的本地计算机上以及heroku上运行此操作,我已将SendGrid插件添加到我的应用程序中。
答案 0 :(得分:1)
你看过这个帖子了吗? Send mail in Heroku using SendGrid
此外,您可能会尝试使用本教程中所述的Typesafe邮件插件:
http://blog.flurdy.com/2012/05/send-email-via-sendgrid-on-heroku-using.html
答案 1 :(得分:1)
我认为您可以使用官方SendGrid-java Jithub项目中提供的Java API。
答案 2 :(得分:0)