关于在无休止的xml文件流中使用StAX的问题

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

我有一台正在运行的服务器,每秒发送一个xml文件(最终需要将其升级到每秒800个文件)。我编写的用于侦听服务器的客户端,可以很好地处理第一个文件,但是一旦第一个文件被完全处理并尝试转到第二个文件,就会收到以下错误:

javax.xml.stream.XMLStreamException:在[row,col]处为ParseError:[164,6]消息:匹配“ [xX] [mM] [lL]”的处理指令目标为不允许。

我假设这是由于下一个xml文件<?xml version="1.0" encoding='null' standalone='no'?>而正在读取开始而导致错误的原因造成的?

java stax
1个回答
1
投票

此异常,正如您所假定的那样,是根据spec,XML声明(它是prolog的一部分)不在文档的第一个元素之前。根据读取文件所用的实现方式,应重置阅读器或关闭并为每个文件创建新实例。

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