Что такое хорошая система шаблонов электронной почты в формате html, которая также правильно отображает текстовую или простую альтернативу? - PullRequest
4 голосов
/ 22 января 2009

У нас есть веб-приложение, которое периодически рассылает электронные письма пользователям. На данный момент мы генерируем HTML-версию и текстовую версию в коде. Тем не менее, это громоздко поддерживать.

Существует ли хорошая система шаблонов электронной почты, которая может генерировать как HTML, так и текстовые версии электронной почты из одного шаблона для Java?

Некоторые требования:

  • любые изображения / значки, правильно встроенные в виде миметров и правильно связанные
  • текстовая версия должна чем-то напоминать HTML-версию - для удобства пользователей, которые видят текстовую версию и детекторы спама
  • ссылки должны отображать URL в текстовой версии
  • полный контроль (или насколько это возможно) макета и стиля

Если ваш ответ имеет значение, мы используем Struts ... 1 .

Ответы [ 4 ]

2 голосов
/ 22 января 2009

Я бы также порекомендовал использовать шаблонизатор. Создайте два шаблона, один для текстовой части и один для части HTML. Используйте функцию включения механизма шаблонов, чтобы вы могли повторно использовать буквенные тексты в обоих шаблонах.

2 голосов
/ 22 января 2009

Вы можете использовать утилиту, которая преобразует HTML в текст на Java (Google для него, например, this ), убирая теги и конвертируя специальные символы HTML. Однако это не даст вам всего, что вам нужно, особенно не форматирование (например, списки) и ссылки.

Другой вариант - использовать XSLT для преобразования вашего XHTML (напишите его правильно ...) в текст и использовать процессор XSLT (например, Xalan-J или Saxon ) для запустить его. Это довольно простое упражнение XSLT, если ваши требования просты (например, вас не волнуют проблемы CSS).

0 голосов
/ 22 января 2009

Возьмите Скорость Apache . Я не знаю более мощный шаблонизатор.

0 голосов
/ 22 января 2009

Я успешно использовал Freemarker шаблоны для подготовки txt и html контента для писем. Если вы используете Spring, это может сделать все еще проще, так как он имеет все необходимые сантехники. Даже без Spring JavaMail API удобен для пользователя, поэтому проблем не должно быть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...