我运行的服务器每秒发送一个xml文件(最终需要升级到800个文件/秒)。我编写的客户机侦听服务器,可以很好地处理第一个文件,但一旦第一个文件被完全处理并尝试转到第二个文件,就会出现以下错误:
javax.xml.stream.xmlstreamexception:parseerror at[row,col]:[164,6]消息:不允许处理指令目标匹配“[xx][mm][ll]”。
我假设这是因为它正在读取下一个xml文件的开始 <?xml version="1.0" encoding='null' standalone='no'?>
这就导致了错误?
1条答案
按热度按时间368yc8dk1#
这个异常是由xml声明(这是prolog的一部分)引起的,根据规范,xml声明不在文档的第一个元素之前。根据您用来读取文件的实现,您应该重置读取器或关闭并为每个文件创建新示例。