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
二维码
