Вопрос:

как отправить HTML письмо

html javamail

69366 просмотра

1 ответ

580 Репутация автора

Я должен отправить HTML-файл по электронной почте, но не как вложение.

Message simpleMessage = new MimeMessage(mailSession);
try {
   fromAddress = new InternetAddress(from);
   toAddress = new InternetAddress(to);

} catch (AddressException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
}

try {
    simpleMessage.setFrom(fromAddress);
    simpleMessage.setRecipient(RecipientType.TO, toAddress);

    simpleMessage.setSubject(subject);
    simpleMessage.setText(text);

    Transport.send(simpleMessage);
} catch (MessagingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

Это отправка электронной почты просто с текстовым сообщением. Я хочу отправить HTML-контент, который хранится в другом файле, но не в виде вложения

Автор: Prerna Источник Размещён: 07.03.2011 05:37

Ответы (1)


116 плюса

12502 Репутация автора

Решение

Не выкладывай MimeMessageна Message:

MimeMessage simpleMessage = new MimeMessage(mailSession);

Затем, когда вы хотите установить тело сообщения, либо

simpleMessage.setText(text, "utf-8", "html");

или позвоните по телефону

simpleMessage.setContent(text, "text/html; charset=utf-8");

Если вы предпочитаете использовать кодировку utf-8, отличную от нее, замените ее в соответствующем месте.

JavaMail имеет дополнительный бесполезное слой абстракции , который часто оставляет Вас холдинг классы , как Multipart, Messageи Address, что все они имеют гораздо меньше возможностей , чем реальных подклассов ( MimeMultipart, MimeMessageи InternetAddress), которые на самом деле получить построен ...

Автор: dkarp Размещён: 07.03.2011 10:29
Вопросы из категории :
32x32