Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java org.apache.xmlbeans.XmlException的消息是什么;意外元素:CDATA";什么意思?_Java_Xml_Xmlbeans_Xmlexception - Fatal编程技术网

Java org.apache.xmlbeans.XmlException的消息是什么;意外元素:CDATA";什么意思?

Java org.apache.xmlbeans.XmlException的消息是什么;意外元素:CDATA";什么意思?,java,xml,xmlbeans,xmlexception,Java,Xml,Xmlbeans,Xmlexception,我试图解析并加载一个XML文档,但是当我在扩展XmlObject的类上调用parse方法时,我遇到了这个异常。不幸的是,它让我不知道什么元素是意外的,这是我的问题 我不能共享代码,但是如果需要的话,我可以尝试提供更多的信息。 不能共享代码或输入数据,你可以考虑以下方法。恐怕这是一种非常常见的诊断方法,实际上你可能已经开始了 尝试通过删除部分输入XML来减小输入XML的大小,确保底层XML文档保持格式良好且可能有效(如果解析器的设置中需要有效性)。如果您保持有效性,这可能需要更改模式(DTD或其他

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


<>我不能共享代码,但是如果需要的话,我可以尝试提供更多的信息。

不能共享代码或输入数据,你可以考虑以下方法。恐怕这是一种非常常见的诊断方法,实际上你可能已经开始了

尝试通过删除部分输入XML来减小输入XML的大小,确保底层XML文档保持格式良好且可能有效(如果解析器的设置中需要有效性)。如果您保持有效性,这可能需要更改模式(DTD或其他)的[副本],因为在“切试”方法中可能会删除下颌骨元素。。。顺便说一句,错误消息似乎更多地暗示了验证问题,而不是基本的良好格式断言问题

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

您也可以从尝试一个大部分为空的文件开始,以断言解析器确实可以工作。。。还有一种想法是“分而治之”:问题是在XML输入中还是在解析器中?(记住可能有两个问题,一个在输入中,一个在解析器中,这些问题甚至可能是不相关的…)


抱歉,您可能会熟练掌握一些基本的诊断技术…

您应该检查传递给parse()方法的参数;
如果直接传递字符串以进行解析,或者相应地传递文件或输入流(file/inputstream/string)等。

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

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


这方面的谷歌点击率很高。。您是否发现其中任何一项具有启发性?尽管您无法“共享代码”,您是否可以共享XML文档本身或其部分。或者,另一个建议是,您可以尝试使用另一个在普通XML编辑器(如XMLNotPad)中读取为ok的XML文档吗。XML文档在记事本中可以很好地打开—它的格式良好,并根据模式进行验证。它是在特定文档上失败,还是在所有文档上失败?你是如何调用parse方法的?是的。当它开始工作时,开始添加。简单但高效且通用!