餐饮网站建设方案书wordpress用户上传资源验证码
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:09
当前位置: 首页 > news >正文
餐饮网站建设方案书,wordpress用户上传资源验证码,海尔网站建设投入,互联网创业项目平台加盟问题出现情况 邮件发送时debug用F8逐步运行可以成功发送邮件#xff0c;但是用F9或者直接运行程序却发送失败未开启mail的debug模式的报错日志是下面这个#xff1a;org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is java…问题出现情况 邮件发送时debug用F8逐步运行可以成功发送邮件但是用F9或者直接运行程序却发送失败未开启mail的debug模式的报错日志是下面这个org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is javax.mail.AuthenticationFailedException: [EOF]at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:440)at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:361)at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:356)开启了mail的debug日志然后之前忘了添加超时设置后续添加了下面超时设置spring:#JavaMailSendermail:host: smtp.exmail.qq.comport: 587username: xxxxxx.compassword: xxxdefault-encoding: UTF-8properties:mail.smtp.starttls.enable: truemail.smtp.timeout: 5000 # 设置连接超时毫秒后面加的mail.smtp.connectiontimeout: 5000 # 设置连接超时毫秒后面加的mail.smtp.writetimeout: 5000 # 设置写入超时毫秒后面加的之后发现是卡在了权限验证AUTH LOGIN然后无法进行下一步直到超时日志如下DEBUG SMTP: exception reading response, THROW: java.net.SocketTimeoutException: Read timed outat java.net.SocketInputStream.socketRead0(Native Method)at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)at java.net.SocketInputStream.read(SocketInputStream.java:171)at java.net.SocketInputStream.read(SocketInputStream.java:141)at sun.security.ssl.SSLSocketInputRecord.read(SSLSocketInputRecord.java:475)at sun.security.ssl.SSLSocketInputRecord.readHeader(SSLSocketInputRecord.java:469)at sun.security.ssl.SSLSocketInputRecord.bytesInCompletePacket(SSLSocketInputRecord.java:69)at sun.security.ssl.SSLSocketImpl.readApplicationRecord(SSLSocketImpl.java:1271)at sun.security.ssl.SSLSocketImpl.access\(300(SSLSocketImpl.java:76)at sun.security.ssl.SSLSocketImpl\)AppInputStream.read(SSLSocketImpl.java:948)at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:126)at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)at java.io.BufferedInputStream.read(BufferedInputStream.java:265)at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:106)at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:2440)at com.sun.mail.smtp.SMTPTransport.ehlo(SMTPTransport.java:1699)at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:759)at javax.mail.Service.connect(Service.java:366)at org.springframework.mail.javamail.JavaMailSenderImpl.connectTransport(JavaMailSenderImpl.java:518)at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:437)at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:361)at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:356)at com.example.demo.mail.MailServiceImpl.send(MailServiceImpl.java:95)at com.example.demo.mail.MailServiceImpl.send(MailServiceImpl.java:108)at com.example.demo.schedule.MyRunner.run(MyRunner.java:20)at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:781)at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:765)at org.springframework.boot.SpringApplication.run(SpringApplication.java:319)at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204)问题解决过程 在debug过程中发现是在TLS握手时超时导致的权限验证失败在项目启动时添加-Djavax.net.debugssl:handshake添加后查看日志ServerHello返回的版本是TLSv1.2但是指定通信的版本是TLSv1.3成功的日志指定的也是1.3我尝试配置指定TLS版本为v1.2后发现问题成功解决 spring:mail:host: smtp.exmail.qq.comport: 587username: xxxxxx.compassword: xxxdefault-encoding: UTF-8properties:mail.smtp.starttls.enable: truemail.smtp.starttls.required: truemail.smtp.ssl.protocols: TLSv1.2mail.smtp.auth: truemail.smtp.timeout: 5000 # 设置连接超时毫秒mail.smtp.connectiontimeout: 5000 # 设置连接超时毫秒mail.smtp.writetimeout: 5000 # 设置写入超时毫秒后续我通过openssl命令行执行查看server的TLS版本发现是支持v1.3的 adminDESKTOP-0SP0F5T MINGW64 ~/Desktop $ openssl s_client -starttls smtp -crlf -connect smtp.exmail.qq.com:587 Connecting to 119.147.6.199 CONNECTED(00000250) depth2 CUS, ODigiCert Inc, OUwww.digicert.com, CNDigiCert Global Root CA verify return:1 depth1 CUS, ODigiCert Inc, CNDigiCert Secure Site CN CA G3 verify return:1 depth0 CCN, STGuangdong Province, LShenzhen, OTencent Technology (Shenzhen) Company Limited, CN*.exmail.qq.com verify return:1 …省略 No client certificate CA names sent Peer signing digest: SHA256 Peer signature type: RSA-PSS
Server Temp Key: X25519, 253 bits
SSL handshake has read 3871 bytes and written 446 bytes
Verification: OK
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
…省略
250 8BITMIME
Post-Handshake New Session Ticket arrived: SSL-Session:Protocol : TLSv1.3Cipher : TLS_AES_256_GCM_SHA384 …省略 然而通过ssl-tool在线验证却发现不支持可自行点击超链接查看 问了chatgpt发现也是 所以最后解决方法是指定了TLS版本 补充 项目用的是JDK1.8SpringBoot版本是2.1.8.RELEASE后续使用了JDK17SpringBoot版本3.3.4问题依旧而且F8调试的不会报错但是指定了TLS版本的方法虽然成功发送了邮件但是socket已关闭然后报错。如下 221 Bye 发送邮件完毕… 2024-10-12 14:04:16.696 INFO 30640 — [ Thread-2] o.s.s.concurrent.ThreadPoolTaskExecutor : Shutting down ExecutorService applicationTaskExecutor javax.net.ssl|FINE|01|main|2024-10-12 14:04:16.690 GMT08:00|SSLSocketImpl.java:497|duplex close of SSLSocket javax.net.ssl|FINE|01|main|2024-10-12 14:04:16.692 GMT08:00|SSLSocketImpl.java:1551|close the underlying socket javax.net.ssl|FINE|01|main|2024-10-12 14:04:16.692 GMT08:00|SSLSocketImpl.java:1570|close the SSL connection (initiative) javax.net.ssl|FINE|01|main|2024-10-12 14:04:16.692 GMT08:00|SSLSocketImpl.java:755|close inbound of SSLSocket javax.net.ssl|WARNING|01|main|2024-10-12 14:04:16.693 GMT08:00|SSLSocketImpl.java:515|SSLSocket duplex close failed ( throwable : {java.net.SocketException: Socket is closedat java.net.Socket.shutdownInput(Socket.java:1538)at com.sun.mail.util.WriteTimeoutSocket.shutdownInput(WriteTimeoutSocket.java:281)at sun.security.ssl.BaseSSLSocketImpl.shutdownInput(BaseSSLSocketImpl.java:218)at sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:771)at sun.security.ssl.SSLSocketImpl.bruteForceCloseInput(SSLSocketImpl.java:720)at sun.security.ssl.SSLSocketImpl.duplexCloseOutput(SSLSocketImpl.java:580)at sun.security.ssl.SSLSocketImpl.close(SSLSocketImpl.java:504)at com.sun.mail.smtp.SMTPTransport.closeConnection(SMTPTransport.java:1425)at com.sun.mail.smtp.SMTPTransport.close(SMTPTransport.java:1418)at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:476)at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:361)at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:356)at com.example.demo.mail.MailServiceImpl.send(MailServiceImpl.java:95)at com.example.demo.mail.MailServiceImpl.send(MailServiceImpl.java:105)at com.example.demo.schedule.MyRunner.run(MyRunner.java:20)at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:781)at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:765)at org.springframework.boot.SpringApplication.run(SpringApplication.java:319)at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215)at org.springframework.boot.SpringApplication.run(SpringApplication.java:1204)最后 哪位大佬知道这是为什么吗最终还是没明白问题出在了哪里望指点
- 上一篇: 餐饮网站程序网站建设 个人服务器
- 下一篇: 餐饮系统网站建设个人工作室税收优惠政策
相关文章
-
餐饮网站程序网站建设 个人服务器
餐饮网站程序网站建设 个人服务器
- 技术栈
- 2026年03月21日
-
餐饮食材配送网站开发企划书网站建设费用说明
餐饮食材配送网站开发企划书网站建设费用说明
- 技术栈
- 2026年03月21日
-
餐饮设计公司网站婚恋网站女孩子都是做美容
餐饮设计公司网站婚恋网站女孩子都是做美容
- 技术栈
- 2026年03月21日
-
餐饮系统网站建设个人工作室税收优惠政策
餐饮系统网站建设个人工作室税收优惠政策
- 技术栈
- 2026年03月21日
-
餐饮行业网站建设怎么提要求个人网站名称举例
餐饮行业网站建设怎么提要求个人网站名称举例
- 技术栈
- 2026年03月21日
-
残疾人招聘网站建设jsp网站开发四库
残疾人招聘网站建设jsp网站开发四库
- 技术栈
- 2026年03月21日






