I'm using loadFromXML method of java.util.Properties class to parse an XML file that contains some application parameters. Value of one of these parameters is an HTML string as follows:

我使用的是java.util的loadFromXML方法。属性类来解析包含一些应用程序参数的XML文件。其中一个参数的值是一个HTML字符串,如下所示:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
    <entry key="THREAD_COUNT">4</entry>
    <entry key="SENDER_EMAIL">MAIL@SOMESITE.COM</entry>
    <entry key="EMAIL_SUBJECT">SAMPLE SUBJECT</entry>
    <entry key="EMAIL_BODY"><span style='font-family : Monotype Corsiva ; font-size:14pt'>SAMPLE TEXT</span></entry>
</properties>

When I have such a value, loadFromXML method throws the following exception:

当我有这样一个值时,loadFromXML方法抛出以下异常:

java.util.InvalidPropertiesFormatException: org.xml.sax.SAXParseException: Element type "span" must be declared.
    at java.util.XMLUtils.load(XMLUtils.java:59)
    at java.util.Properties.loadFromXML(Properties.java:852)
    at com.test.mail.ConfigReader.<init>(ConfigReader.java:27)
    at com.test.mail.ConfigReader.getInstance(ConfigReader.java:43)
    at com.test.mail.SendMail.readParameters(SendMail.java:64)
    at com.test.mail.SendMail.startJob(SendMail.java:29)
    at com.test.mail.SendMail.main(SendMail.java:24)

Is there a way to use such a value in an XML properties file?

有办法在XML属性文件中使用这样的值吗?

1 个解决方案

#1


5

Use a CDATA section inside your xml, to mark it as data, otherwise it will be parsed as a part of your xml:

在xml中使用CDATA部分,将其标记为数据,否则将解析为xml的一部分:

See http://www.w3schools.com/xml/xml_cdata.asp

参见http://www.w3schools.com/xml/xml_cdata.asp

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
    <entry key="THREAD_COUNT">4</entry>
    <entry key="SENDER_EMAIL">MAIL@SOMESITE.COM</entry>
    <entry key="EMAIL_SUBJECT">SAMPLE SUBJECT</entry>
    <entry key="EMAIL_BODY"><![CDATA[<span style='font-family : Monotype Corsiva ; font-size:14pt'>SAMPLE TEXT</span>]]></entry>
</properties>

更多相关文章

  1. 转发可变数量的参数以通过椭圆运算符接受可变数量的参数
  2. 准备语句SQL异常“无输入参数”
  3. JAVA中的反射只获取属性的get方法
  4. 如何在Spring中读取具有相同键的多个属性?
  5. 使用Java中的Scala:将函数作为参数传递
  6. 如何在命令中传递对象参数?
  7. 为泛型类的泛型方法的属性赋值 - Java
  8. 如何在Spring Data(JPA)派生查询中按多个属性排序?
  9. 如何在Javascript中解析URL查询参数?(复制)

随机推荐

  1. 10.ScrollView
  2. Android线程调度机制
  3. 识别你的手机 Android的属性系统
  4. android View 重绘机制
  5. Android cocos2d-x开发(三)之创建Android工
  6. Ubuntu下查找.android/avd
  7. Android(安卓)多点触控(放大、缩小、旋转
  8. Arcgis Android 基本概念 - 浅谈
  9. Android 性能监控与分析方法
  10. Android 搭建Junit测试环境