java - 游戏中发送电子邮件异常! 2

标签 java email playframework playframework-2.0 playframework-2.1

我正在尝试在 Play 中发送电子邮件!框架 v 2.1.1。

在 build.scala 中我有:

"com.typesafe" %% "play-plugins-mailer" % "2.1.0"

在conf/application.conf中我有:

smtp.host=smtp.gmail.com
smtp.port= "587"
smtp.ssl=true
smtp.tls=true
smtp.user="dylanrboudro@gmail.com"
smtp.password="xxxxxx"

我也尝试过 smtp.port = "465"

发送电子邮件的方法是:

 public void Email() {

    MailerAPI mail = play.Play.application().plugin(MailerPlugin.class).email();
    mail.setSubject("test");
    mail.addRecipient("dylanrboudro@gmail.com");
    mail.addFrom("DevOpsNotifications@gmail.com");
    String body = "this is the first email sent by the devops requestor";
    mail.sendHtml(body);

我收到此错误:

[RuntimeException: org.apache.commons.mail.EmailException: Sending the email to the following server failed : smtp.gmail.com:587]

这个堆栈跟踪:

! @6f9o6gmj8 - Internal server error, for (POST) [/request] ->

play.api.Application$$anon$1: Execution exception[[RuntimeException: org.apache.
commons.mail.EmailException: Sending the email to the following server failed :
smtp.gmail.com:587]]
        at play.api.Application$class.handleError(Application.scala:289) ~[play_
2.10.jar:2.1.1]
        at play.api.DefaultApplication.handleError(Application.scala:383) [play_
2.10.jar:2.1.1]
        at play.core.server.netty.PlayDefaultUpstreamHandler$$anon$2$$anonfun$ha
ndle$1.apply(PlayDefaultUpstreamHandler.scala:144) [play_2.10.jar:2.1.1]
        at play.core.server.netty.PlayDefaultUpstreamHandler$$anon$2$$anonfun$ha
ndle$1.apply(PlayDefaultUpstreamHandler.scala:140) [play_2.10.jar:2.1.1]
        at play.api.libs.concurrent.PlayPromise$$anonfun$extend1$1.apply(Promise
.scala:113) [play_2.10.jar:2.1.1]
        at play.api.libs.concurrent.PlayPromise$$anonfun$extend1$1.apply(Promise
.scala:113) [play_2.10.jar:2.1.1]
java.lang.RuntimeException: org.apache.commons.mail.EmailException: Sending the
email to the following server failed : smtp.gmail.com:587
        at play.libs.F$Promise$6.apply(F.java:401) ~[play_2.10.jar:2.1.1]
        at scala.concurrent.Future$$anonfun$map$1.liftedTree2$1(Future.scala:253
) ~[scala-library.jar:na]
        at scala.concurrent.Future$$anonfun$map$1.apply(Future.scala:249) ~[scal
a-library.jar:na]
        at scala.concurrent.Future$$anonfun$map$1.apply(Future.scala:249) ~[scal
a-library.jar:na]
        at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29) ~[scala-
library.jar:na]
        at akka.dispatch.BatchingExecutor$Batch$$anonfun$run$1.liftedTree1$1(Bat
chingExecutor.scala:67) ~[akka-actor_2.10.jar:na]
Caused by: org.apache.commons.mail.EmailException: Sending the email to the foll
owing server failed : smtp.gmail.com:587
        at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1242) ~[comm
ons-email-1.2.jar:1.2]
        at org.apache.commons.mail.Email.send(Email.java:1267) ~[commons-email-1
.2.jar:1.2]
        at com.typesafe.plugin.CommonsMailer.send(MailerPlugin.scala:242) ~[play
-plugins-mailer_2.10-2.1.0.jar:2.1.0]
        at com.typesafe.plugin.MailerBuilder$class.sendHtml(MailerPlugin.scala:2
04) ~[play-plugins-mailer_2.10-2.1.0.jar:2.1.0]
        at com.typesafe.plugin.CommonsMailer.sendHtml(MailerPlugin.scala:215) ~[
play-plugins-mailer_2.10-2.1.0.jar:2.1.0]
        at models.V1Project.Email(V1Project.java:211) ~[na:na]
Caused by: javax.mail.MessagingException: Could not connect to SMTP host: smtp.g
mail.com, port: 465
        at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1391) ~
[mail-1.4.1.jar:1.4.1]
        at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:41
2) ~[mail-1.4.1.jar:1.4.1]
        at javax.mail.Service.connect(Service.java:310) ~[mail-1.4.1.jar:1.4.1]
        at javax.mail.Service.connect(Service.java:169) ~[mail-1.4.1.jar:1.4.1]
        at javax.mail.Service.connect(Service.java:118) ~[mail-1.4.1.jar:1.4.1]
        at javax.mail.Transport.send0(Transport.java:188) ~[mail-1.4.1.jar:1.4.1
]
Caused by: java.net.ConnectException: Connection timed out: connect
        at java.net.DualStackPlainSocketImpl.connect0(Native Method) ~[na:1.7.0_
07]
        at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketI
mpl.java:69) ~[na:1.7.0_07]
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.ja
va:339) ~[na:1.7.0_07]
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocket
Impl.java:200) ~[na:1.7.0_07]
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java
:182) ~[na:1.7.0_07]
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157) ~[na:1.7.0
_07]

有人有什么想法吗?非常感谢!

最佳答案

您需要从 smtp.port 设置中删除引号。
它应该是 smtp.port = 587
我没有在 smtp.password 字段中使用引号,它对我有用。

关于java - 游戏中发送电子邮件异常! 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18240498/

相关文章:

php - 我如何在 Joomla 3.x 中将电子邮件设置为用户名?

playframework - 在 Play Framework Controller 中使用 pojo 绑定(bind)时出现持久性异常

json - 大体的 POST 请求在服务器端收到空

Java RMI 分层接口(interface)

sorting - 在java中存储递归方法的增量

java - 具有一些额外条件的子集和算法的复杂性

php - 是否可以在没有 SMTP 设置的情况下发送邮件?

java - 允许安全性较低的应用程序 : ON But Heroku still generating that error

mongodb - 通过 Scala Play 连接时如何解决 MongoDB 超时错误!框架?

java - install4j - 更新文件放置在我的本地目录中