我目前使用的代碼如下:發送Java的電子郵件沒有認證(沒有這樣的提供商例外:SMTP)
String to = "[email protected]";
String from = "[email protected]";
String host = "127.0.0.1";
Properties properties = System.getProperties();
properties.setProperty("mail.smtp.host", host);
Session session = Session.getDefaultInstance(properties);
try {
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to));
message.setSubject("This is the Subject Line!");
message.setText("This is actual message");
Transport.send(message);
System.out.println("Sent message successfully....");
} catch (MessagingException mex) {
mex.printStackTrace();
}
如果我粘貼上面的代碼在我的Java servlet
並運行它,但以下情況除外被拋出: javax.mail.NoSuchProviderException: smtp
我也曾嘗試以下這些資源,但無濟於事列出的解決方案:link1link2link3link4。
你有郵件服務器上烏爾本地主機上運行? – nafas
郵件服務器的意思是,你能解釋一下嗎? – Selva
我不想在這裏混淆你,首先需要檢查「mx記錄」是什麼。試試這個:嘗試gmail-smtp-in.l.google.com作爲主機而不是 – nafas