It was obviously successful when sending emails with 163 mailbox before, but when using China Mobile's own mailbox, it was not successful in sending them in the Linux server anyway. The following error was reported at the beginning:
javax.mail.MessagingException: Unknown SMTP host: mail.chinamobilesz.com at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1959) ~ [mail-1.4.7.jar:1.4.7] at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:65 4) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Service.connect(Service.java:317) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Service.connect(Service.java:176) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Service.connect(Service.java:125) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Transport.send0(Transport.java:194) ~[mail-1.4.7.jar:1.4.7 ] at javax.mail.Transport.send(Transport.java:124) ~[mail-1.4.7.jar:1.4.7] at com.cmsz.processOm.service.impl.EmailSendServiceImpl.sendEmail(EmailS endServiceImpl.java:107) ~[EmailSendServiceImpl.class:na] at com.cmsz.processOm.controller.WorkOrderController$SendEmail.isSendEma il(WorkOrderController.java:555) [WorkOrderController$SendEmail.class:na] at com.cmsz.processOm.controller.WorkOrderController$SendEmail.run(WorkO rderController.java:524) [WorkOrderController$SendEmail.class:na] at java.lang.Thread.run(Thread.java:745) [na:1.7.0.11] ......
telnet mail.chinamobilesz.com 25 is not working in Linux, but you can just change mail.chinamobilesz.com to IP. After searching for information online and referring to other articles, setting up the mapping of host name and IP, finally telnet successfully connects:
However, although Telnet successfully connected, it still reported an error when sending the email after starting the project, but it was just a change:
javax.mail.MessagingException: Could not connect to SMTP host: mail.chinamobilesz.com, port: 25 at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1961) ~[mail-1.4.7.jar:1.4.7] at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:654) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Service.connect(Service.java:317) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Service.connect(Service.java:176) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Service.connect(Service.java:125) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Transport.send0(Transport.java:194) ~[mail-1.4.7.jar:1.4.7] at javax.mail.Transport.send(Transport.java:124) ~[mail-1.4.7.jar:1.4.7] at com.cmsz.processOm.service.impl.EmailSendServiceImpl.sendEmail(EmailSendServiceImpl.java:107) ~[EmailSendServiceImpl.class:na] at com.cmsz.processOm.controller.WorkOrderController$SendEmail.isSendEmail(WorkOrderController.java:555) [WorkOrderController$SendEmail.class:na] at com.cmsz.processOm.controller.WorkOrderController$SendEmail.run(WorkOrderController.java:524) [WorkOrderController$SendEmail.class:na] at java.lang.Thread.run(Thread.java:745) [na:1.7.0.11] ......
I searched a lot of information but still couldn't solve the problem. I don't understand why I can't connect to the program even if I can't. After a long time of struggle, the team leader finally solved the problem, and I finally understood the reason. It turned out that the following code in the project was caused:
// SSL encryption MailSSLSocketFactory sf = null; try { sf = new MailSSLSocketFactory(); // Set trust all hosts sf.setTrustAllHosts(true); proers.put("mail.smtp.ssl.enable", "true"); proers.put("mail.smtp.ssl.socketFactory", sf); } catch (GeneralSecurityException e) { e.printStackTrace(); }After using this code, the connection is port 465, not 25, but in fact the email address provided to me did not open the 465 port, so it is impossible to connect to port 465 or port 25. So after removing this code, the startup project will send the email again and successfully.
The above is the full description of the pitfalls encountered when Java implements the email function that I have introduced to you. I hope it will be helpful to you. If you have any questions, please leave me a message and the editor will reply to you in time. Thank you very much for your support to Wulin.com website!