Ich verstehe das Problem überhaupt nicht. Wenn ich von der Hauptmethode versuche, während ich als Java-Anwendung laufe, dann kommt die E-Mail perfekt mit korrektem Betreff und Inhalt formatiert. während, wenn ich von localhost versuchen, kommt es in gebrochenem Format wieMail nicht Rendern HTML und kommen in gebrochenem Format
------ = _ Part_0_1765202668.1460463643056 Content-Type: text/html; charset = utf-8 Content-Transfer-Encoding: 7bit
Mein Inhalt
------ = _ Part_0_1765202668.1460463643056--
ich alle relevanten Gläser (javax hinzugefügt haben. Mail). Egal, was der Inhalt ist, es wird nur als solcher kommen. Es ist das gleiche Stück Code, das gut von den Hauptmethoden funktioniert, aber nicht mit dem lokalen Host. irgendwelche Ideen?
einige relevante Code
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(this.from));
if ((this.replyTo != null) && (!this.replyTo.equals("")))
msg.setReplyTo(InternetAddress.parse(this.replyTo));
msg.setSentDate(new Date());
InternetAddress[] address = InternetAddress.parse(this.to);
msg.setRecipients(Message.RecipientType.TO, address);
if (this.cc != null) {
InternetAddress[] address1 = InternetAddress.parse(this.cc);
msg.setRecipients(Message.RecipientType.CC, address1);
}
if (this.bcc != null) {
InternetAddress[] address2 = InternetAddress.parse(this.bcc);
msg.setRecipients(Message.RecipientType.BCC, address2);
}
msg.setSubject(this.subject);
Multipart mp = new MimeMultipart();
MimeBodyPart mbp = new MimeBodyPart();
mbp.setContent(this.body,"text/html;charset=utf-8");
mp.addBodyPart(mbp);
if (this.attachfiles != null) {
for (Enumeration e = this.attachfiles.keys(); e.hasMoreElements();) {
String filename = (String) e.nextElement();
mbp = new MimeBodyPart();
FileDataSource fds = new FileDataSource(
(String) this.attachfiles.get(filename));
mbp.setDataHandler(new DataHandler(fds));
mbp.setFileName(filename);
mp.addBodyPart(mbp);
}
}
msg.setContent(mp);
msg.setSentDate(new Date());
Transport.send(msg);
ich nicht den Unterschied zwischen „aus dem Haupt versuchen“ und „versuchen, von localhost“. Kannst du besser erklären, was du tust? – Henry
Mit "localhost" meinen Sie, Sie laufen in einer Art von Anwendungsserver? Sind Sie sicher, dass der Server dieselbe Version von JavaMail verwendet? Was zeigt die [JavaMail-Debugausgabe] (http://www.oracle.com/technetwork/java/javamail/faq/index.html#debug)? –