简单Java Mail API:用于发送但未收到任何电子邮件的邮件队列

时间:2018-12-31 05:37:30

标签: java javamail

我使用简单的Java邮件API编写了一个电子邮件客户端,并且将其排队发送,但没有收到任何电子邮件。

执行信息:

  

INFO:SESSION [1]桥接到远程代理http://10.64.150.9:8080,   用户名:kwong@who.int,代理桥@ localhost:1081

我的代码:

public void sendEmail() {
        try {
            init();
            DataSource fileData = new FileDataSource(new File(".\\report\\Test-Report.html"));

            Email aEmail = EmailBuilder.startingBlank()
                    .from("Peter Wong", "peterapiit@gmail.com")
                    .to(recipientList)
                    .withSubject("ePQS Automation Testing Report")
                    .withPlainText("Please find the ePQS Automation Testing Report from attachment")
                    .withAttachment("ePQS Automation Test Report", fileData)
                    .withBounceTo("kwong@who.int")
                    .buildEmail();

            Mailer mailer = MailerBuilder
                    .withSMTPServer("smtp.gmail.com", 587, "peterapiit@gmail.com", "1234")
                    .withTransportStrategy(TransportStrategy.SMTP_TLS)
                    .withProxy("http://10.64.150.9", 8080, "kwong@who.int", crypt.decryptPwd(".\\password\\peter_wong_wims.txt"))
                    .withSessionTimeout(10 * 1000)
                    .clearEmailAddressCriteria() // turns off email validation
                    .withDebugLogging(true)
                    .buildMailer();

            mailer.sendMail(aEmail, true);

        } catch (Exception ex) {
            LogManager.logger.log(Level.INFO, "Exception: " + ex.getMessage());
        }

    }

我在公司代理后面,并且连接到Internet需要此公司代理。 问题是什么?请帮忙。提前十亿感谢。

PS:有时我会遇到此错误

  

com.sun.mail.util.MailConnectException:无法连接到主机,   端口:smtp.gmail.com,587;超时10000;使用SOCKS主机,端口:   本地主机1081;

最新:

  

调试:setDebug:JavaMail版本1.6.0 2018年12月31日下午3:40:03   org.simplejavamail.mailer.internal.socks.socks5server.AnonymousSocks5Server   运行INFO:在端口1081上启动代理服务器2018年12月31日下午3:40:03   org.simplejavamail.mailer.internal.socks.socks5server.AnonymousSocks5Server   运行信息:等待新的连接...调试:getProvider()返回   javax.mail.Provider [TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]   DEBUG SMTP:需要用户名和密码进行身份验证DEBUG SMTP:   protocolConnect返回false,host = smtp.gmail.com,user = kwong,   password = DEBUG SMTP:useEhlo是,useAuth是DEBUG SMTP:   尝试连接到主机“ smtp.gmail.com”,端口465,isSSL false十月   31,2018 3:40:03下午   org.simplejavamail.mailer.internal.socks.socks5server.SocksSession    INFO:SESSION [1]从2018年12月31日/127.0.0.1:36846打开   下午3:40:03   org.simplejavamail.mailer.internal.socks.socks5server.AnonymousSocks5Server   运行信息:等待新连接... 2018年12月31日,下午3:40:03   org.simplejavamail.mailer.internal.socks.AuthenticatingSocks5Bridge   createSocketAuthenticated INFO:SESSION [1]桥接到远程代理   https://10.64.150.9:8080,用户名:kwong@who.int,代理桥@   本地主机:1081

1 个答案:

答案 0 :(得分:0)

请检查您的代理,我认为这是HTTPS而不是HTTP,因此会造成延迟。