2016-09-21 11 views
0

I電子メールの送信のためのJavaのSSL証明書に関する次のエラーだった:私はInstallCert.javaを使用して証明書を生成しているし、今私は次のエラーを取得していますJavaのメールエラー:550 SMTP認証

Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 
at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141) 
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126) 
at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280) 
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382) 
... 23 more 

を:

com.sun.mail.smtp.SMTPSendFailedException: 550 SMTP authentication mandatory 

at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388) 
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959) 
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583) 
at com.MailerPecUtility.sendMail(MailerPecUtility.java:201) 
at com.MailerPecUtility.main(MailerPecUtility.java:266) 

どのように私はこれを解決する必要がありますか? ありがとう

答えて

0

transport.connect(specProps.getProperty("mail.smtp.host"), port, user, pass); 

私はこれを使用していた:

transport.connect(null,smtpUser,smtpPassword); 

そのため、以下の方法で、私はエラーなしで電子メールを送信できます。

  message.setText("The email body text"); 
     Transport transport = session.getTransport("smtp"); 
     transport.connect(null,smtpUser,smtpPassword); 
     message.saveChanges(); 
     Transport.send(message); 
     System.out.println("Message Has been sent!"); 
関連する問題