“将电子邮件发送到以下服务器失败:webmail.company.com:465”

时间:2013-06-03 14:12:56

标签: java smtp

我使用此代码发送电子邮件

 Email email = new SimpleEmail();
            email.setDebug(true);
            email.setHostName("webmail.company.com");
            email.setSmtpPort(587);

            email.setAuthenticator(new DefaultAuthenticator("username@company.com", "*****"));
            email.setSSLOnConnect(true);
            try {
                email.setFrom("username@company.com");

                email.setSubject("TestMail");

                email.setMsg("Hi "+receiver.getSex()+" "+receiver.getName()+" "+editorBean.getValue());

                email.addTo(receiver.getEmail());
                email.send();
            } catch (EmailException ex) {
                Logger.getLogger(PersonBean.class.getName()).log(Level.SEVERE, null, ex);
                result += "exptions :" + ex.getMessage();
                return result;
            }

我认为smtp端口没有变化 “将电子邮件发送到以下服务器失败:webmail.company.com:465” 问题是什么 ?

3 个答案:

答案 0 :(得分:2)

您需要使用setSslSmtpPort(String)而不是setSmtpPort(int),因为您使用SSL进行连接。

答案 1 :(得分:1)

检查您的IP是否列入黑名单。在某些情况下,您需要明确

在连接到smtp之前列出你的ip。

答案 2 :(得分:0)

步骤1: 更改您的Gmail帐户设置,以允许不太安全的应用程序。 转到https://myaccount.google.com/lesssecureapps并为不太安全的应用启用Access 第2步: 在我的情况下,Avast Antivirus在我尝试发送电子邮件时导致异常被抛出。 Avast防护控制 - >禁用10分钟 (要么) 打开Avast用户界面 - >设置 - >组件 - > MailShield(自定义) - > MainSettings - 取消选中'扫描出站邮件(SMTP)'