Java Mail 發送郵件失敗問題:Sending the email to the following server failed

轉自:http://student.csdn.net/space.php?uid=51562&do=blog&id=13670 

org.apache.commons.mail.EmailException: Sending the email to the following server failed : smtp.163.com:25 
at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1138) 
at org.apache.commons.mail.Email.send(Email.java:1163) 
at com.newer.servlet.EmailServlet.doPost(EmailServlet.java:45) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) 
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584) 
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) 
at java.lang.Thread.run(Thread.java:619) 
Caused by: javax.mail.AuthenticationFailedException: failed to connect 
at javax.mail.Service.connect(Service.java:322) 
at javax.mail.Service.connect(Service.java:172) 
at javax.mail.Service.connect(Service.java:121) 
at javax.mail.Transport.send0(Transport.java:190) 
at javax.mail.Transport.send(Transport.java:120) 
at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1128) 
... 16 more 


查了很多資料,終於解決了。 

做發送郵件的這個功能基本上做了一天,從昨天中午開始一直到凌晨一點,還是沒解決掉,人都快崩潰了,開始是mail.jar和activation.jar這兩個包沒有導入,導入後就報上面這個連接異常。早上4:00多醒來了,實在睡不着。起來打開電腦,突然想起昨晚臨睡前看email協議,郵件服務器,pop3,smtp.程序實在找不出什麼錯誤,靈光一閃,就進入郵箱賬號看看郵箱設置,發現沒有開啓pop3.smtp服務。開啓後,郵件就能發送成功了。 

所以在做發送郵件的java,或者jsp測試前,一定要記得把郵箱的pop3.smtp服務開啓。所以有時候你的程序根本沒有錯誤,但就是會出現一些讓你根本就想不到得錯誤,這時候就得看看與你程序相關的一些其它的服務是否與程序的運行有關了,郵件發送時是這樣,還有一個web項目比較常見的是銀行付款。 

查了一些資料,163郵箱在2005年以後註冊的郵箱沒有提供pop3.smtp服務,只有付費郵箱纔有這個功能。 

因此最好是用QQ郵箱或者sina郵箱進行測試,並且記得一定要開啓pop3.smtp服務。 

希望能給像我一樣在程序路上前進的朋友能有一些幫助,因爲我找着錯誤的時候,網上的帖子基本上沒講到這個,就是本身程序以外的而有關第三方產品的服務而導致的異常
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章