我需要使用JavaMail發送簡單的html消息。當我試圖在互聯網上找到一些很好的例子和解釋,每一個下一個例子都讓我更加生氣和憤怒。如何配置環境以使用JavaMail?
所有這些愚蠢的例子包含複製和粘貼它們的差別僅在評論和一個不錯的聲明,首先,你應該配置你的SMTP和POP3服務器的Java代碼。
據我所知,沒有人願意讓一個做廣告的一些具體產品,但配置的服務器是恕我直言最難的部分。那麼,任何人都可以給我一些關於配置具體服務器(例如Kerio或其他任何一個)的非常有用的信息(無需Java代碼)?
我現在有什麼是下一個異常:
250 2.0.0 Reset state
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
com.sun.mail.smtp.SMTPAddressFailedException: 550 5.7.1 Relaying to <[email protected]> denied (authentication required)
UPD。以前所有文本的簡單重寫是:想象你有Windows,jdk,而沒有別的。你想製作java程序並在你的機器上運行它。這個程序應該發送「Hello world!」到您的Gmail帳戶。列出你的步驟。
UPD2。下面是代碼:
Properties props = new Properties();
props.setProperty ("mail.transport.protocol", "smtp");
props.setProperty ("mail.host", "smtp.gmail.com");
props.setProperty ("mail.user", "[email protected]");
props.setProperty ("mail.password", "password_from_email_above");
Session mailSession = Session.getDefaultInstance (props, null);
mailSession.setDebug (true);
Transport transport = mailSession.getTransport();
MimeMessage message = new MimeMessage (mailSession);
message.setSubject ("HTML mail with images");
message.setFrom (new InternetAddress ("[email protected]"));
message.setContent ("<h1>Hello world</h1>", "text/html");
message.addRecipient (Message.RecipientType.TO,
new InternetAddress ("[email protected]"));
transport.connect();
transport.sendMessage (message,
message.getRecipients (Message.RecipientType.TO));
和異常是:
RSET
250 2.1.5 Flushed 3sm23455365fge.10
com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. 3sm23455365fge.10
at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1829)
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1368)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:886)
at com.teamdev.imgmail.MailSender.main(MailSender.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
...
你的問題太含糊回答,因爲它代表。請告訴我們更多關於您的主機及其上運行的組件的信息。繼續品牌,我們不在乎。告訴我們你想做什麼,什麼是工作,什麼不是。 – 2009-12-22 12:23:53
@Carl Smotricz:我加了UPD部分。 – Roman 2009-12-22 12:29:48
更新是一個*更*更好的問題。爲此,事實證明,您甚至不需要自己的SMTP服務器,因爲Google恰好爲您運行一個相當大的服務器。 – 2009-12-22 12:32:50