javax.mail.MessagingException: Could not connect to SMTP host: smtp.163.com, port: 465;
1、报错信息如下:
trying to connect to host "smtp.163.com", port 465, isSSL true
javax.mail.MessagingException: Could not connect to SMTP host: smtp.163.com, port: 465;nested exception is:javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1961)at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:654)at javax.mail.Service.connect(Service.java:295)at javax.mail.Service.connect(Service.java:176)at javax.mail.Service.connect(Service.java:196)at com.xnpool.smsServer.Tools.SendEmailUtils.sendEmail(SendEmailUtils.java:66)at com.xnpool.smsServer.controller.sms.SmsCodeServicerApi.sendEmail(SmsCodeServicerApi.java:151)at sun.reflect.GeneratedMethodAccessor109.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2、代码
public class SendEmailRequest {/*** 接收地址*/private String email;/*** 邮件标题*/private String title;/*** 邮件内容*/private String content;/*** 主机地址* smtp.163.com* smtp.qq.com*/private String host;/*** 发送地址*/private String from;/*** 秘钥*/private String secrect;}@Slf4j
public class SendEmailUtils {public static void sendEmail(SendEmailRequest request) {try {log.info(log.getName() + " 发送邮件请求参数【{}】", JSONObject.toJSONString(request));Properties properties = new Properties();properties.put("mail.transport.protocol", "smtp");// 连接协议properties.put("mail.smtp.host", request.getHost());// 163主机名properties.put("mail.smtp.port", 465);// 端口号properties.put("mail.smtp.auth", "true");properties.put("mail.smtp.ssl.enable", "true");//设置是否使用ssl安全连接 ---一般都使用properties.put("mail.debug", "true");//设置是否显示debug信息 true 会在控制台显示相关信息//得到回话对象Session session = Session.getInstance(properties);// 获取邮件对象Message message = new MimeMessage(session);//设置发件人邮箱地址message.setFrom(new InternetAddress(request.getFrom()));//设置收件人地址message.setRecipients(MimeMessage.RecipientType.TO, new InternetAddress[]{new InternetAddress(request.getEmail())});//抄送自己message.addRecipients(Message.RecipientType.CC, InternetAddress.parse(request.getFrom()));//设置邮件标题message.setSubject(request.getTitle());//设置邮件内容message.setText(request.getContent());//得到邮差对象Transport transport = session.getTransport();//连接自己的邮箱账户transport.connect(request.getFrom(), request.getSecrect());//密码为刚才得到的授权码//发送邮件transport.sendMessage(message, message.getAllRecipients());transport.close();} catch (Exception e) {e.printStackTrace();}log.info(log.getName() + " 发送邮件发送成功【{}】", JSONObject.toJSONString(request));}
}
3、问题解决
发现自己的邮箱设置:MAP/POP3 都已经开启,且都已经增加了授权码还报错,那就是正式环境JDK 的验证问题
which javals -lrt /usr/bin/javals -lrt /etc/alternatives/java
找到目录
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security
修改java.security:不要SSL3,TLSv1, TLSv1.1
# dk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048
jdk.tls.disabledAlgorithms=RC4, DES, MD5withRSA, \DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \include jdk.disabled.namedCurves
重启JAVA程序
javax.mail.MessagingException: Could not connect to SMTP host: smtp.163.com, port: 465;相关推荐
- 邮件常见异常:javax.mail.MessagingException: Could not connect to SMTP host
文章目录 邮件常见异常:javax.mail.MessagingException: Could not connect to SMTP host 1.异常触发 2.Failed message 1: ...
- javax.mail.MessagingException: Could not connect to SMTP host
如果使用了 SSL 连接请添加配置:spring.mail.properties.mail.smtp.ssl.enable=true 可以参考 https://stackoverflow.com/qu ...
- 解决发邮件错误javax.mail.MessagingException: Could not connect to SMTP host
用java实现发送邮件功能时报错 javax.mail.MessagingException: Could not connect to SMTP host Exception in thread & ...
- 解决问题:javax.mail.MessagingException: Could not connect to SMTP host: smtp.exmail.qq.com, port: 25;
最近项目中需要用到发送邮件这一功能,总是遇到这样的一个报错: javax.mail.MessagingException: Could not connect to SMTP host: smtp.e ...
- javax.mail.MessagingException: Could not connect to SMTP host: smtp.xdf.cn
1.问题描述:关于使用Java Mail进行邮件发送,抛出Could not connect to SMTP host: xx@xxx.com, port: 25的异常可能: 当我们使用Java Ma ...
- 解决javax.mail.MessagingException: Could not connect to SMTP host: smtp.exmail.qq.com, port: 25;
邮件的服务器设置错误. 从数据库获取的邮件服务器的数据不对,用户设置的就是错误的. 删除原来的服务器配置,增加一条新的记录喽. delete from BI_CONFIG_RULE_MAILSERVE ...
- Azkaban重新编译,解决:Could not connect to SMTP host: smtp.163.com, port: 465【2022年01月10日】
Azkaban配置文件修改465端口一直报错,如下: javax.mail.MessagingException: Could not connect to SMTP host: smtp.163.c ...
- Could not connect to SMTP host: smtp.163.com, port: 465, response: -1
1.用以下代码,邮件发送测试失败 JavaMailSenderImpl tempMailSender = new JavaMailSenderImpl(); tempMailSender.setHos ...
- 使用javamail发邮件出现javax.mail.MessagingException: Unknown SMTP host: smtp.qq.com的解决方案
这几天有在修改一个邮件发送的功能,使用的是javamail,然后本地测试ok,在腾讯的tsf环境上,报下面这个错: javax.mail.MessagingException: Unknown SMT ...
- javax.mail.MessagingException: 500 Error: bad syntax问题
2019独角兽企业重金招聘Python工程师标准>>> 在eclipse下执行下面这个发送邮件的方法报错: public static void sendSimpleMail() t ...
最新文章
- 张宏江对话清华“智班”:我想看到更多极客
- VC++ inline内联函数的作用解决方案
- linux centos查看CPU型号及物理CPU个数
- 关于.net的.dll.refresh文件
- BugkuCTF-PWN题pwn5-overflow2超详细讲解
- 信息学奥赛C++语言:判断正负
- 基于JAVA+SpringMVC+Mybatis+MYSQL的餐厅收银管理系统
- 修改10g自动统计信息收集作业GATHER_STATS_JOB到仅仅周末执行
- python处理select
- 用什么软件写html语言,写html代码用什么软件
- android高德地图热力图,调用高德地图API(热力图)详解(示例代码)
- ibatis结果集resultClass的几种类型
- 代数拓扑笔记(1) —— 胞腔复形
- 新广告法违规词、敏感词在线检测工具
- 网站改造为百度智能小程序教程,适合所有网站封装
- 压力变送器matlab,总结压差变送器三种不同故障以及处理方法[理论结合实际]
- UNI-APP,动态设置view的背景图片
- 看我如何用Python来分析《斗破苍穹》
- 学生管理系统的设计与实现
- 乱发短信的脉脉终于败诉了,网友:早就该判刑了