Wiadomość e-mail została pomyślnie wysłana w mojej aplikacji internetowej przy użyciu JMS, ale wynik jest wyświetlany tylko w postaci zwykłego tekstu. Chcę, aby treść mogła wyświetlać html. Jak mam to zrobić? Oto z grubsza to, co mam:
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());
}
Ustaw typ zawartości. Spójrz na tę metodę .
źródło
GString
najava.lang.String
.Jeśli korzystasz z silnika aplikacji Google / języka Java, użyj następującego ...
źródło
msg.setSubject(subject,"UTF-8");
nie działa. Powinno byćmsg.setSubject(subject);
Od wersji 1.4 JavaMail istnieje przeciążenie
setText
metody, która akceptuje podtyp.źródło
musisz zadzwonić
po ustawieniu typu treści.
źródło
Spójrz na http://commons.apache.org/email/ mają klasę HtmlEmail, która prawdopodobnie robi dokładnie to, czego potrzebujesz.
źródło
Możesz znaleźć kompletną i bardzo prostą klasę java do wysyłania e-maili za pomocą konta Google (gmail) tutaj, Wyślij wiadomość e-mail za pomocą aplikacji java
Wykorzystuje następujące właściwości
źródło
„LoginVo.htmlBody (messageBodyPart);” będzie zawierać zaprojektowane informacje w formacie html, ale nie otrzyma ich w wiadomości e-mail.
JAVA - STRUTS2
źródło
Nie jestem pewien, czy to działa dla wszystkich prymitywów CSS
Ustawiając właściwość nagłówka „Content-Type” na „text / html”
teraz mogę robić takie rzeczy
pozdrowienia
źródło
Możesz użyć setText (java.lang.String text, boolean html) z
MimeMessageHelper
:Ale musisz:
Przed:
źródło