2011-08-19 46 views
0

我試圖連接到遠程郵件服務器,但不知何故commons電子郵件/ JavaMail總是試圖連接到本地主機。爲什麼???Commons Email沒有連接到正確的主機

Email email = new SimpleEmail(); 
    email.setHostName("mailserver.com"); 
    email.setSentDate(new Date()); 
    email.setAuthentication("[email protected]", "password"); 
    email.setSubject("testing using simple mail"); 
    email.setMsg("test email"); 
    email.setFrom("*******@gmail.com"); 
    email.addTo("*****@gmail.com"); 
    email.setDebug(true); 
    email.send(); 

我總是得到以下情況除外:

Exception in thread "main" org.apache.commons.mail.EmailException: Sending the email to the following server failed : ********:25 
    at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1242) 
    at org.apache.commons.mail.Email.send(Email.java:1267) 
    at MyJasperService.main(MyJasperService.java:219) 
Caused by: javax.mail.SendFailedException: Send failure (javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25 (java.net.ConnectException: Connection refused: connect)) 
    at javax.mail.Transport.send(Transport.java:163) 
    at javax.mail.Transport.send(Transport.java:48) 
    at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1232) 
    ... 2 more 
Caused by: javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25 (java.net.ConnectException: Connection refused: connect) 
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1934) 
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638) 
    at javax.mail.Service.connect(Service.java:254) 
    at javax.mail.Service.connect(Service.java:85) 
    at javax.mail.Service.connect(Service.java:70) 
    at javax.mail.Transport.send(Transport.java:94) 
    ... 4 more 
Caused by: java.net.ConnectException: Connection refused: connect 
    at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:69) 
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:337) 
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:198) 
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:180) 
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157) 
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391) 
    at java.net.Socket.connect(Socket.java:579) 
    at java.net.Socket.connect(Socket.java:528) 
    at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:288) 
    at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:231) 
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1900) 
    ... 9 more 

回答

0

我好像記得,有來自太陽/ Oracle的了JavaMail版本之一是一個問題。

您使用的是哪個版本的javamail(即mail.jar)和哪種版本的commons-email?

如果升級到兩者的最新版本,可能會有效。

相關問題