我正在尝试在Eclipse IDE中使用Java Servlet发送电子邮件。
这是我的代码。
final String username = "******@gmail.com";
final String password = "******";
Properties props = new Properties();
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.port", "587");
props.put("mail.smtp.ssl.trust", "smtpserver");
Session session1 = Session.getInstance(props, new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try
{
if(result)
{
Message message = new MimeMessage(session1);
message.setFrom(new InternetAddress("******[email protected]"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(email));
message.setSubject("Welcome To Our Bank");
message.setText("Dear "+custname+","
+"\n\n Your Account has been Created Successfully."
+"\n\n Your Account Details Are:"
+"\n User Id : "+userid+""
+"\n Account Number : "+accno+""
+"\n Login Password : "+passwd+""
+"\n Transaction Password : "+t_passwd+"");
Transport.send(message);
out.println("mail sent");
}
}
catch(MessagingException e)
{
out.println("Exception Caught : "+e);
}
这是执行后发生的异常。
引发异常:javax.mail.MessagingException:无法将套接字转换为TLS;无法将套接字转换为TLS。
嵌套的异常是:
java.io.IOException:服务器不受信任:smtp.gmail.com
最佳答案
通过将“mail.smtp.ssl.trust”设置为“smtpserver”,您已经说过,您仅信任名为“smtpserver”的服务器。 “smtp.gmail.com”未命名为“smtpserver”。