什么是一个好的HTML电子邮件模板系统,也正确地呈现文本/普通替代?

时间:2009-01-22 09:01:32

标签: java html text templates email

我们有一个定期向用户发送电子邮件的Web应用程序。目前我们在代码中生成html版本和文本版本。但是,维护起来很麻烦。

是否有一个好的电子邮件模板系统可以从同一个Java模板生成电子邮件的html和文本版本?

一些要求:

  • 正确嵌入为mimeparts并正确链接的任何图片/图标
  • 文本版本需要有点像html版本 - 为了看到文本版本和垃圾邮件检测器的用户的利益
  • 链接需要在文本版本中显示网址
  • 完全控制(或尽可能)布局和样式

如果对你的答案很重要,我们正在使用Struts ......< cough> 1< / cough&gt ;.

4 个答案:

答案 0 :(得分:2)

您可以使用一个实用程序,通过剥离标记并转换特殊的HTML字符,将HTML转换为Java格式的文本(Google for the,例如this one)。但是,这不会为您提供所需的一切,尤其是不格式化(如列表)和链接。

另一个选择是使用XSLT将您的XHTML(正确编写...)转换为文本并使用XSLT处理器(如Xalan-JSaxon)来运行它。只要您的要求很简单(例如,您不关心CSS问题),这是一个相当简单的XSLT练习。

答案 1 :(得分:2)

我还建议使用模板引擎。创建两个模板,一个用于文本部分,另一个用于HTML部分。使用模板引擎的include功能,以便您可以在两个模板中重复使用文字文本。

答案 2 :(得分:0)

我已成功使用Freemarker模板为电子邮件准备txt和html内容。如果你使用Spring,它可以使事情更容易,因为它具有所有必要的管道。即使没有Spring,JavaMail API也是用户友好的,所以它应该不是问题。

答案 3 :(得分:0)

Apache Velocity。我不知道更强大的模板引擎。