XML数字节点导致的异常
0
如果XML节点是数字或数字开头,那么JDOM添加节点会提示:
The name "1te" is not legal for JDOM/XML elements: XML names cannot begin with the character "1".
JDOM使用xPath读取时提示:
org.jdom.JDOMException: Invalid XPath expression: "xml/12test": Expected one of '.', '..', '@', '*', <QName>
然而DOM4J添加节点和生成XML文档不会存在问题,但是读取时提示:
org.dom4j.DocumentException: Error on line 6 of document : 元素内容必须由格式正确的字符数据或标记组成。 Nested exception: 元素内容必须由格式正确的字符数据或标记组成。
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at com.acgist.xml.XmlUtils.loadContent(XmlUtils.java:72)
at com.acgist.xml.XmlUtils.main(XmlUtils.java:367)
Nested exception:
org.xml.sax.SAXParseException; lineNumber: 6; columnNumber: 4; 元素内容必须由格式正确的字符数据或标记组成。
Exception in thread "main" org.dom4j.InvalidXPathException: Invalid XPath expression: /xml/1 Expected one of '.', '..', '@', '*', <QName>
at org.dom4j.xpath.DefaultXPath.parse(DefaultXPath.java:360)
at org.dom4j.xpath.DefaultXPath.<init>(DefaultXPath.java:59)
另外hibernate-core
里面有一个包xml-apis
,这个包里面包含InputSource
这个类可能引起冲突。