STAX 解析器因大型 XML 而失败

问题描述 投票:0回答:2

我遇到了一个非常奇怪的情况。 我有 2 个 XML,我正在尝试将它们合并并形成一个 XML。 我正在使用 STAX Parser 来实现它。

它可以完美地处理小文件,但当文件大小超过 300 KB(我认为不是很大)时就会失败。

此处不发布 XML 或代码,因为它非常大。

请找出下面的错误

java.lang.ArrayIndexOutOfBoundsException: -32769
    at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl$ElementStack.peek(Unknown Source)
    at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.closeStartTag(Unknown Source)
    at com.sun.xml.internal.stream.writers.XMLStreamWriterImpl.writeStartElement(Unknown Source)
    at com.sun.xml.internal.stream.writers.XMLEventWriterImpl.add(Unknown Source)

XML 没有问题。我收到错误的行是

eventWriter.add(事件);。这里 eventWriter 是 XMLEventWriter 的实例,而 event 是 XMLEvent

如果有人遇到类似的错误,请告诉我。

java xml stax
2个回答
-1
投票

我能够解决上述问题。这与 STAX 无关。代码中存在一些漏洞,我现在已经修复了。


-1
投票

我也有同样的经历。如果您分享您在代码中确切发现的内容,我将不胜感激。如果问题在其他地方,为什么这个类会出现这种现象?

© www.soinside.com 2019 - 2024. All rights reserved.