在java中为电子邮件添加html到xml属性文件

时间:2012-06-13 14:30:48

标签: java spring

我想发送html电子邮件。我使用spring框架Mailsender类发送电子邮件,并且有一个email_en.xml文件,其中包含的内容类似于

 <?xml version="1.0" encoding="UTF-8"?>
   <!DOCTYPE properties [ 
<!ELEMENT properties ( comment?, entry* ) >
<!ATTLIST properties version CDATA #FIXED "1.0">
<!ELEMENT comment (#PCDATA) >
<!ELEMENT entry (#PCDATA) >
<!ATTLIST entry key CDATA #REQUIRED>
  ]>
  <properties>
 <entry key="subject">
 email
</entry>
 <entry key="to">
   test@test.com
  </entry>
  <entry key="name">
       Garry
    </entry>
    <entry key="body">
   Dear User,
  <![CDATA[
    Dear User,
    <b>This is your email for reference</b>
    ]]>
    </entry>
    </properties>

所以我可以将html标签添加到我尝试的这个文件中,但它不起作用。我还添加了[CDATA []]标签,但它仍无效。

任何人都可以给我一些想法

1 个答案:

答案 0 :(得分:1)

您很可能只使用MailSender并发送简单的电子邮件。为了处理HTML内容,您应该使用JavaMailSender,以便发送MimeMessage

Spring e-mail tutorial描述了差异,以及如何正确准备电子邮件(适用于版本2.x.x,但应适用于3.x.x)。

如果您使用的是MimeMessageHelper,请不要忘记在调用#setText方法时将HTML flag设置为true。

P.S。您似乎正在使用自定义实用程序来解析XML消息并将其转换为消息bean。检查您的代码并确保调用适当的setter,因为XML消息中的属性与MailMessage中的属性名称不匹配。