发送邮件(通过java)可以在eclipse中工作,但不能在linux服务器上工作
我正在使用下面的java代码发送邮件发送邮件(通过java)可以在eclipse中工作,但不能在linux服务器上工作,java,linux,eclipse,email,smtp,Java,Linux,Eclipse,Email,Smtp,我正在使用下面的java代码发送邮件 Properties properties = System.getProperties(); properties.put("mail.transport.protocol", "smtp"); properties.put("mail.smtp.auth", "true"); properties.put("mail.smtp.starttls.enable", "true"); properties.put("m
Properties properties = System.getProperties();
properties.put("mail.transport.protocol", "smtp");
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
properties.put("mail.smtp.host", "smtp.gmail.com");
properties.put("mail.smtp.port", "587");
我能够在eclipse(OS:Windows7)中使用它发送邮件。
但在将相同的代码导出到war文件并托管在linux服务器上之后,
我在发送邮件时出错
ERROR [STDERR] javax.mail.MessagingException: Exception reading response;
ERROR [STDERR] nested exception is:
ERROR [STDERR] java.net.SocketException: Connection reset
ERROR [STDERR] at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:1764)
ERROR [STDERR] at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1632)
ERROR [STDERR] at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:1483)
ERROR [STDERR] at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:462)
ERROR [STDERR] at javax.mail.Service.connect(Service.java:313)
ERROR [STDERR] at javax.mail.Service.connect(Service.java:172)
ERROR [STDERR] at javax.mail.Service.connect(Service.java:121)
ERROR [STDERR] at javax.mail.Transport.send0(Transport.java:190)
ERROR [STDERR] at javax.mail.Transport.send(Transport.java:120)
那么,为什么它可以在eclipse(windows)中工作,而不能在linux上工作呢
我试过了
telnet smtp.gmail.com 587
在窗户里
在linux中也尝试了同样的方法
# telnet smtp.gmail.com 587
Trying 74.125.200.108...
Connected to smtp.gmail.com.
Escape character is '^]'.
220 smtp.gmail.com ESMTP n8sm22997292pgc.16 - gsmtp
Connection closed by foreign host.
#
所以,请帮助我确定为什么会发生这种情况。
这个问题在linux防火墙升级后开始出现。
早些时候,它在linux中运行良好
编辑:
在serverfault.com上发布了该问题,因为它可能位于该论坛之下
如果这个问题已经结束,请在那里回答。谢谢“这个问题在linux防火墙升级后开始出现。”-那么这不是一个编程问题。我投票将这个问题作为离题题来结束,因为它属于服务器故障是系统管理和网络问题的最佳位置。。。这就是我想要的。谢谢你的提示。我要等40分钟才能在serverfault.com上发布,有没有办法把这个问题转移到那个论坛上?很遗憾,没有。或者至少,我不能。也许你可以标记它以引起版主的注意,并询问他们是否可以迁移它。