Ich habe in meiner Webanwendung erfolgreich E-Mails mit JMS gesendet, aber das Ergebnis wird nur im Klartext angezeigt. Ich möchte, dass der Inhalt HTML anzeigen kann. Wie mache ich es? Hier ist ungefähr das, was ich habe:
Message msg = new MimeMessage(mailSession);
try{
msg.setSubject("Test Notification");
msg.setRecipient(Message.RecipientType.TO, new InternetAddress(sentTo, false));
String message = "<div style=\"color:red;\">BRIDGEYE</div>";
msg.setContent(message, "text/html; charset=utf-8");
msg.setSentDate(new Date());
Transport.send(msg);
}catch(MessagingException me){
logger.log(Level.SEVERE, "sendEmailNotification: {0}", me.getMessage());
}
Legen Sie den Inhaltstyp fest. Schauen Sie sich diese Methode an .
quelle
GString
zujava.lang.String
.Wenn Sie Google App Engine / Java verwenden, verwenden Sie Folgendes ...
quelle
msg.setSubject(subject,"UTF-8");
funktioniert nicht. Es sollte seinmsg.setSubject(subject);
Seit JavaMail Version 1.4 gibt es eine Überladung von
setText
Methoden, die den Subtyp akzeptieren.quelle
du musst anrufen
nach dem Einstellen des Inhaltstyps.
quelle
Werfen Sie einen Blick auf http://commons.apache.org/email/. Dort gibt es eine HtmlEmail-Klasse, die wahrscheinlich genau das tut, was Sie brauchen.
quelle
Eine vollständige und sehr einfache Java-Klasse zum Senden von E-Mails mit dem Google-Konto (Google Mail) finden Sie hier. E-Mail-Nachricht mit der Java-Anwendung senden
Es werden die folgenden Eigenschaften verwendet
quelle
Der "loginVo.htmlBody (messageBodyPart);" enthält die HTML-formatierten gestalteten Informationen, erhält sie jedoch per E-Mail nicht.
JAVA - STRUTS2
quelle
Ich fand auf diese Weise nicht sicher, ob es für alle CSS-Grundelemente funktioniert
Durch Setzen der Header-Eigenschaft "Content-Type" auf "text / html"
Jetzt kann ich Sachen machen wie
Grüße
quelle
Sie können setText (java.lang.String text, boolean html) verwenden aus
MimeMessageHelper
:Aber Sie müssen:
Vor:
quelle