我正在使用Java Mail API Ver。 1.4.2用於在基於JSF 1.2-Spring的Web應用程序中發送電子郵件。我使用非安全的SMTP連接發送郵件。此電子郵件配置工作正常。還使用JUnit 4測試驗證了此實用程序,並且能夠使用非安全連接發送郵件。使用Java Mail發送郵件時握手異常期間,遠程主機關閉連接
當我將此電子郵件模塊與主Web應用程序集成時,我在運行時收到異常併發送郵件。
javax.mail.MessagingException:異常讀取響應;嵌套異常是:javax.net.ssl.SSLHandshakeException:遠程主機關閉 握手期間的連接 com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1764) at com.sun.mail.smtp。 SMTPTransport.openServer(SMTPTransport.java:1523) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:453) at javax.mail.Service.connect(Service.java:317)at javax .mail.Service.connect(Service.java:176)at javax.mail.Service.connect(Service.java:125)at javax.mail.Transport.send0(Transport.java:194)at javax.mail .Transport.send(Transport.java:124)
驗證此電子郵件模塊使用安全的SMTP連接,它工作正常。
任何人有關於這個問題的想法?爲什麼非安全的SMTP連接不能與Web應用程序集成?
您的遠程主機是否接受您從中發送的服務器?您是否嘗試過嘗試通過Java從服務器發送電子郵件,但在Web應用程序的外部?你說它獨立運行並且你使用JUnit進行了驗證,但是它是獨立於你的開發站還是獨立於服務器本身? – JoshDM
你還試圖反對什麼端口,SSL端口或非SSL端口?缺省值是端口25. – JoshDM
以下屬性導致問題:props.put(「mail.smtp.socketFactory.class」,「javax.net.ssl.SSLSocketFactory」);刪除了這個不安全的連接。 – mmodi