Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java mail发送邮件时,远程主机在握手异常期间关闭了连接_Java_Ssl_Email - Fatal编程技术网

使用Java mail发送邮件时,远程主机在握手异常期间关闭了连接

使用Java mail发送邮件时,远程主机在握手异常期间关闭了连接,java,ssl,email,Java,Ssl,Email,我正在使用Java邮件API版本。1.4.2用于在基于JSF 1.2-Spring的Web应用程序中发送电子邮件。我正在使用非安全SMTP连接发送邮件。此电子邮件配置在独立状态下运行良好。还使用JUnit4测试验证了这个实用程序,我能够使用非安全连接发送邮件 当我将此电子邮件模块与主web应用程序集成时,我在发送邮件时在运行时遇到以下异常 javax.mail.MessaginException:异常读取响应;嵌套异常为:javax.net.ssl.SSLHandshakeException:远

我正在使用Java邮件API版本。1.4.2用于在基于JSF 1.2-Spring的Web应用程序中发送电子邮件。我正在使用非安全SMTP连接发送邮件。此电子邮件配置在独立状态下运行良好。还使用JUnit4测试验证了这个实用程序,我能够使用非安全连接发送邮件

当我将此电子邮件模块与主web应用程序集成时,我在发送邮件时在运行时遇到以下异常

javax.mail.MessaginException:异常读取响应;嵌套异常为:javax.net.ssl.SSLHandshakeException:远程主机已关闭 在以下位置进行握手时的连接: com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1764) 在 com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1523) 在 SMTPTransport.protocolConnect(SMTPTransport.java:453) 位于javax.mail.Service.connect(Service.java:317) javax.mail.Service.connect(Service.java:176)位于 javax.mail.Service.connect(Service.java:125)位于 javax.mail.Transport.send0(Transport.java:194)位于 javax.mail.Transport.send(Transport.java:124)

已使用安全SMTP连接验证此电子邮件模块,该模块工作正常


有人对这个问题有想法吗?为什么非安全SMTP连接无法与Web应用程序集成?

我正在使用电子邮件模块进行安全和非安全连接。 在这种情况下,以下属性导致了问题:props.put(“mail.smtp.socketFactory.class”,“javax.net.ssl.SSLSocketFactory”)


已删除非安全连接的此属性,现在我的非安全SMTP连接正在与Web应用程序集成工作。

您的远程主机是否接受来自您发送的服务器的连接?您是否尝试过从服务器通过Java发送电子邮件,但不在web应用程序中?您说它可以独立运行,并且您使用JUnit进行了验证,但是它是来自您的开发站的独立运行还是来自服务器本身的独立运行?还有,您尝试使用哪个端口,SSL端口还是非SSL端口?默认值为端口25。以下属性导致问题:props.put(“mail.smtp.socketFactory.class”、“javax.net.ssl.SSLSocketFactory”);已删除未固定连接的此选项。