Enviei um e-mail com sucesso em meu aplicativo da web usando JMS, mas o resultado é exibido apenas em texto simples. Eu quero que o conteúdo seja capaz de exibir html. Como eu faço isso? Aqui está aproximadamente o que eu tenho:
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());
}
Defina o tipo de conteúdo. Veja este método .
fonte
GString
parajava.lang.String
.Se você estiver usando o Google app engine / Java, use o seguinte ...
fonte
msg.setSubject(subject,"UTF-8");
não funciona. Deveria sermsg.setSubject(subject);
Desde o JavaMail versão 1.4, há uma sobrecarga de
setText
método que aceita o subtipo.fonte
você tem que ligar
após definir o tipo de conteúdo.
fonte
Dê uma olhada em http://commons.apache.org/email/ eles têm uma classe HtmlEmail que provavelmente faz exatamente o que você precisa.
fonte
Você pode encontrar uma classe java completa e muito simples para enviar e-mails usando a conta do Google (gmail) aqui, Enviar mensagem de e-mail usando o aplicativo java
Ele usa as seguintes propriedades
fonte
O "loginVo.htmlBody (messageBodyPart);" irá conter as informações projetadas formatadas em html, mas no e-mail não as recebe.
JAVA - STRUTS2
fonte
Descobri que não tenho certeza se funciona para todos os primitivos CSS
Ao definir a propriedade do cabeçalho "Content-Type" para "text / html"
agora posso fazer coisas como
Saudações
fonte
Você pode usar setText (java.lang.String text, boolean html) de
MimeMessageHelper
:Mas você precisa:
Antes:
fonte