邮件发送报错如下:
Caused by: com.sun.mail.smtp.SMTPSendFailedException: 554 Access denied: Amazon SES no longer supports TLS 1.0 and TLS 1.1 connections. You must update your client to use TLS version 1.2 or above. To learn more and to update your client, see https://go.aws/3AUlVSb. For further assistance, contact AWS support
解决方法:HtmlEmail 初始化smtp时,设置ssl.protocols
代码如下:
HtmlEmail hemail = new HtmlEmail();
// 设置SMTP服务器
try {
hemail.setSmtpPort(465);
hemail.setSSLOnConnect(true);
hemail.setHostName("***");
hemail.setAuthentication("smtpuser", "smtppas");
hemail.setFrom("form");
hemail.addTo(MailAddress, MailAddress);
hemail.setCharset("UTF-8");
hemail.setSubject("title");
StringBuffer sb = new StringBuffer();
sb.append("****")
hemail.setSubject(sb.toString());
hemail.addPart("sdfsd", "text/html;charset=utf-8");
//此处3行设置 tls1.2 主要位置
hemail.getMailSession().getProperties().put("mail.smtp.starttls.enable", "true");
hemail.getMailSession().getProperties().put("mail.smtp.starttls.required", "true");
hemail.getMailSession().getProperties().put("mail.smtp.ssl.protocols", "TLSv1.2");
EmailAttachment attachment = new EmailAttachment();
attachment.setPath("****@qq.com");
attachment.setDisposition(EmailAttachment.ATTACHMENT);
hemail.attach(attachment);
hemail.send();
} catch (Exception e) {
myLog.error("Mail Send Error:", e);
}