2

我将 Dspace 设置为使用我公司的电子邮件服务器发送电子邮件,DSpace 使用 javax.mail 来执行此操作。

当我尝试在公司网络之外发送电子邮件时,电子邮件发送成功,但在公司网络中电子邮件未发送。

遵循显示的错误消息:

错误:javax.mail.MessagingException:异常读取响应;
嵌套异常是:javax.net.ssl.SSLException:无法识别的 SSL 消息,明文连接?

(1) 途中没有代理
(2) 我尝试使用 gmail 发送,但我遇到了相同的情况
(3) 我发现的唯一相关线程是通过代理设置解决的,但是因为 (1)不是解决方案(Java 邮件在公司网络中不起作用
(4) 使用的门 (587) 与 Thunderbird 中的配置相同,在我公司网络内外都很好用。

多么神秘啊!!!面向对象

如果有人可以提供帮助,那就太好了!

非常感谢!

4

1 回答 1

0

我在另一个引导我的线程中找到了答案:

Javamail 非 ssl 属性为:

Properties props = new Properties();
props.put("mail.smtp.user", "email@mydomain.com");
props.put("mail.smtp.password", "password");
props.put("mail.smtp.protocol", "smtp");
props.put("mail.smtp.host", "smtp.mydomain.com");
props.put("mail.smtp.port", "25");
props.put("mail.smtp.starttls.enable","false");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.socketFactory.port", "25");
props.put("mail.smtp.socketFactory.class", "");
props.put("mail.smtp.socketFactory.fallback", "false");

我更改为 DSpace 开始发送电子邮件的唯一属性是 mail.smtp.socketFactory.class="",之前是“javax.net.ssl.SSLSocketFactory”。

不幸的是,我仍然不明白为什么以前的设置在公司网络之外工作,也许是一些规则阻止了 ssl 连接。

@SergeBallesta:感谢您的帮助!

于 2014-12-04T17:50:32.810 回答