JavaMail uses outlook in the company
•
Java
I used JavaMail for the first time with some exceptions. I don't understand that I saw some mistakes in other questions, but their answers didn't help me This is my code
final String username = "imsan1@cdcpk.com"; final String password = "**********"; Properties props = System.getProperties(); props.put("mail.smtp.auth","true"); props.put("mail.smtp.host","10.1.136.26"); props.put("mail.smtp.port","25"); props.put( "mail.smtp.user",username ); props.put( "mail.smtp.password",password ); Session session = Session.getInstance(props,new SmtpAuthenticator(username,password) ); try { Message message = new MimeMessage(session); message.setFrom(new InternetAddress("imsan1@cdcpk.com")); message.setRecipients(Message.RecipientType.TO,InternetAddress.parse("immni1@cdcpk.com")); message.setSubject("Testing Subject"); message.setText("Dear Mail Crawler," + "\n\n No spam to my email,please!"); Transport.send(message); System.out.println("Done"); } catch (MessagingException e) { throw new RuntimeException(e); } }
SmtpAuthenticator
import javax.mail.Authenticator; import javax.mail.PasswordAuthentication; class SmtpAuthenticator extends Authenticator { String user; String pw; public SmtpAuthenticator (String username,String password) { super(); this.user = username; this.pw = password; } public PasswordAuthentication getpasswordAuthentication() { return new PasswordAuthentication(user,pw); } }
The error log is
Exception in thread "main" java.lang.RuntimeException: javax.mail.AuthenticationFailedException: 250-CDC-HO-CAS1.cdcpk.com Hello [10.1.34.74] 250-SIZE 37748736 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-X-ANONYMOUSTLS 250-AUTH NTLM 250-X-EXPS GSSAPI NTLM 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 XRDST at org.cdc.eipo.bean.investorsetup.EmailController.main(EmailController.java:64) Caused by: javax.mail.AuthenticationFailedException: 250-CDC-HO-CAS1.cdcpk.com Hello [10.1.34.74] 250-SIZE 37748736 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-X-ANONYMOUSTLS 250-AUTH NTLM 250-X-EXPS GSSAPI NTLM 250-8BITMIME 250-BINARYMIME 250-CHUNKING 250 XRDST at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:826) at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:761) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:685) at javax.mail.Service.connect(Service.java:317) at javax.mail.Service.connect(Service.java:176) at javax.mail.Service.connect(Service.java:125) at javax.mail.Transport.send0(Transport.java:194) at javax.mail.Transport.send(Transport.java:124) at org.cdc.eipo.bean.investorsetup.EmailController.main(EmailController.java:59)
Thank you very much for any help
Solution
The code works normally. The reason for the error is that I don't have the permission of SMTP server, so an exception is displayed. Send mail after configuring access
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码