我有一个包含XML的InputStream
,其中包含被转义XML的内容。转义的XML大小可能为数百兆字节,因此必须将其作为自己的XML文档进行处理,以防止Apache Axiom的OMElement将整个内容加载到内存中。
是否可以使用Axiom来流化节点的内容并将其解析为单独的文档?
最佳答案
在Axiom中执行此操作的正确方法是在包装了转义XML的getTextAsStream
上调用cache
(将false
设置为OMElement
),然后将返回的Reader
解析为XML。请注意,这仅在您告诉Axiom禁用基础XML解析器中的合并时才有效,如here所述;如果您不这样做,那么整个内容仍将被加载到内存中。
关于java - 使用Axiom流XML节点的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40750029/