J'ai réussi à envoyer un e-mail dans mon application Web à l'aide de JMS, mais le résultat ne s'affiche qu'en texte brut. Je veux que le contenu puisse afficher du HTML. Comment fait-on ça? Voici à peu près ce que j'ai:
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());
}
Définissez le type de contenu. Regardez cette méthode .
la source
GString
enjava.lang.String
.Si vous utilisez le moteur d'application Google / Java, utilisez ce qui suit ...
la source
msg.setSubject(subject,"UTF-8");
ne marche pas. Ça devrait êtremsg.setSubject(subject);
Depuis la version 1.4 de JavaMail, il existe une surcharge de
setText
méthode qui accepte le sous-type.la source
tu dois appeler
après avoir défini le type de contenu.
la source
Jetez un œil à http://commons.apache.org/email/, ils ont une classe HtmlEmail qui fait probablement exactement ce dont vous avez besoin.
la source
Vous pouvez trouver une classe java complète et très simple pour envoyer des e-mails à l'aide d'un compte Google (gmail) ici, Envoyer un e-mail à l'aide de l'application java
Il utilise les propriétés suivantes
la source
Le "loginVo.htmlBody (messageBodyPart);" contiendra les informations conçues au format html, mais dans le courrier ne les reçoit pas.
JAVA - STRUTS2
la source
Je ne suis pas sûr que cela fonctionne pour toutes les primitives CSS
En définissant la propriété d'en-tête "Content-Type" sur "text / html"
maintenant je peux faire des trucs comme
Cordialement
la source
Vous pouvez utiliser setText (java.lang.String text, boolean html) à partir de
MimeMessageHelper
:Mais vous devez:
Avant:
la source