带有“意外元素的消息的org.apache.xmlbeans.XmlException是什么:CDATA”意思?

StackOverflow https://stackoverflow.com/questions/1407101

我正在尝试解析并加载XML文档,但是当我在扩展XmlObject的类上调用parse方法时,我遇到了这个异常。不幸的是,它没有让我知道哪个元素是意外的,这是我的问题。

我无法为此分享代码,但我可以尝试在必要时提供更多信息。

有帮助吗?

解决方案

无法共享代码或输入数据,您可以考虑以下方法。这是一种非常常见的二分法诊断方法,我担心,事实上你可能已经开始了......

尝试通过删除部分XML来减小输入XML的大小,确保底层XML文档保持良好格式且可能有效(如果解析器的设置需要有效性)。如果你保持有效性,这可能需要改变模式(DTD或其他)的[副本],因为在剪切和尝试方法期间可能会删除任务... ...顺便说一句,错误消息似乎暗示更多一个基本的良构性断言问题的验证问题。

除非对触发解析器投诉的区域有特别的预感,否则我们通常会删除(或重新添加,当事情开始工作时)大约是先前剪切或重新添加的一半。

你也可以从尝试一个基本上空的文件开始,断言解析器确实可以正常工作......还有一个想法是“划分为优先级”:这是XML输入或解析器中的问题? (记住可能有两个问题,一个在输入中,一个在解析器中,而这些问题甚至可能是无关的......)

对不起belabor基本的诊断技术,你可能会很流利...

其他提示

你应该检查你传递给方法parse()的参数; 如果你直接传递一个字符串来解析或文件或输入流(File / InputStream / String)等。

异常是由XML文件的长度引起的。如果您在文件中添加或删除一个字符,解析器将会成功。

问题出现在XMLBeans所依赖的第三方PiccoloLexer库中。它已在修订版959082中修复,但尚未应用于xbean 2.5 jar。

XMLBeans - 如果长度恰好是8193字节,则会出现XML文件问题

有关XMLBean Jira报告的问题

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top