1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 利用org.apache.commons.mail发送邮件smtp.exmail.qq.com:25链接超时

利用org.apache.commons.mail发送邮件smtp.exmail.qq.com:25链接超时

时间:2018-09-09 07:25:46

相关推荐

利用org.apache.commons.mail发送邮件smtp.exmail.qq.com:25链接超时

服务器:阿里云服务器

发邮件:commons-email

maven:

<dependency><groupId>mons</groupId><artifactId>commons-email</artifactId><version>1.5</version></dependency>

发送邮件报错:

mons.mail.EmailException: Sending the email to the following server failed : smtp.:25

at mons.mail.Email.sendMimeMessage(Email.java:1469) ~[commons-email-1.5.jar:1.5]

at mons.mail.Email.send(Email.java:1496) ~[commons-email-1.5.jar:1.5]

at mon.email.MailUtil.sendEmailHtml(MailUtil.java:94) [sec-common-1.0.0.jar:?]

at mon.email.MailUtil.sendHtmlWithFile(MailUtil.java:168) [sec-common-1.0.0.jar:?]

at com.sec.core.settle.schedule.CustAccountMailSchedule.custAccountMail(CustAccountMailSchedule.java:120) [classes/:1.0.0-SNAPSHOT]

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_201]

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_201]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_201]

at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_201]

at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:84) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE]

at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE]

at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE]

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_201]

at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_201]

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_201]

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:1.8.0_201]

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_201]

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_201]

at java.lang.Thread.run(Thread.java:748) [?:1.8.0_201]

Caused by: com.sun.mail.util.MailConnectException: Couldn't connect to host, port: smtp., 25; timeout 60000

at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2209) ~[javax.mail-1.6.2.jar:1.6.2]

at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:740) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Service.connect(Service.java:388) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Service.connect(Service.java:246) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Service.connect(Service.java:195) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Transport.send0(Transport.java:254) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Transport.send(Transport.java:124) ~[javax.mail-1.6.2.jar:1.6.2]

at mons.mail.Email.sendMimeMessage(Email.java:1459) ~[commons-email-1.5.jar:1.5]

... 18 more

Caused by: .SocketTimeoutException: connect timed out

at .PlainSocketImpl.socketConnect(Native Method) ~[?:1.8.0_201]

at .AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[?:1.8.0_201]

at .AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[?:1.8.0_201]

at .AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[?:1.8.0_201]

at .SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[?:1.8.0_201]

at .Socket.connect(Socket.java:589) ~[?:1.8.0_201]

at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:357) ~[javax.mail-1.6.2.jar:1.6.2]

at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:238) ~[javax.mail-1.6.2.jar:1.6.2]

at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2175) ~[javax.mail-1.6.2.jar:1.6.2]

at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:740) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Service.connect(Service.java:388) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Service.connect(Service.java:246) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Service.connect(Service.java:195) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Transport.send0(Transport.java:254) ~[javax.mail-1.6.2.jar:1.6.2]

at javax.mail.Transport.send(Transport.java:124) ~[javax.mail-1.6.2.jar:1.6.2]

at mons.mail.Email.sendMimeMessage(Email.java:1459) ~[commons-email-1.5.jar:1.5]

... 18 more

解决办法:

email.setSmtpPort(465);email.setSSLOnConnect(true);

问题分析:

开始以为服务器关闭了25端口,但是配置之后还是访问不了,然后查到有人也遇到一样的问题,咨询的阿里云客服了解到阿里云ECS为管控垃圾邮件,屏蔽了25端口号的服务,所以导致该访问超时之后尝试使用ssl方式的465端口,发送邮件成功。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。