【发布时间】:2014-09-29 18:15:27
【问题描述】:
我正在尝试从我的邮件服务器主机为 exg6.exghost.com 的 java web-app 发送邮件,但它给出了 Connection timed out 错误。当我的主机是 smtp.gmail.com 时,同样的代码可以工作。
我的代码是
Properties props = new Properties();
props.put("mail.smtp.host", "exg6.exghost.com");
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.auth", "false");
Session session1 = Session.getInstance(props,
new javax.mail.Authenticator() {
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication(username,password);
}
});
try {
Message message = new MimeMessage(session1);
message.setFrom(new InternetAddress(username));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse("xyz@gmail.com"));
message.setSubject("Testing Subject");
message.setText("Dear Mail Crawler," +
"\n\n No spam to my email, please!");
Transport.send(message);
System.out.println("Done");
} catch (MessagingException e) {
throw new RuntimeException(e);
}
我也尝试将 mail.smtp.auth 设置为 true,但再次连接超时。
请帮忙。
【问题讨论】:
-
主机 exg6.exghost.com 监听的端口是否正确?
-
我怎么知道主机是否监听了正确的端口?
-
我终于搞定了。参考接受的答案stackoverflow.com/questions/25047958/…
标签: java email jakarta-mail exchange-server