我创建了一个URL,它将触发我们的GSA返回XML回复。我仔细检查了网址生成工作。Java尝试解析XML流时出错
当我尝试使用下面的代码行解析流:
Document doc = (Document) db.parse(new URL(filePath).openStream());
在系统日志中我得到以下错误:
Error: URI=null Line=2: Document root element "GSP", must match DOCTYPE root "null"
Error: URI=null Line=2: Document is invalid: no grammar found
XML文件看起来是这样的(我已用xxx清空识别信息):
<GSP VER="3.2">
<TM>0.011504</TM>
<Q>xxxxxxx</Q>
<PARAM name="output" value="xml_no_dtd" original_value="xml_no_dtd"/>
<PARAM name="q" value="xxxxxxx" original_value="xxxxxxx"/>
<PARAM name="site" value="xxxxxxx" original_value="xxxxxxx"/>
<PARAM name="btn" value="" original_value=""/>
<PARAM name="ie" value="UTF-8" original_value="UTF-8"/>
<PARAM name="ip" value="xxx.xxx.xxx.xxx,xxx.xxx.xxx.xxx,xxx.xxx.xxx.xxx" original_value="xxx.xxx.xxx.xxx,xxx.xxx.xxx.xxx,xxx.xxx.xxx.xxx"/>
<PARAM name="access" value="p" original_value="p"/>
<PARAM name="sort" value="date:D:L:d1" original_value="date:D:L:d1"/>
</GSP>
有没有人处理issu那么在此之前,可能能够提供一些指导措施?
什么是数据库? xml文档的内容是什么?尝试将调用'openStream()'的结果赋值给一个变量并检查它是否为null。 (这是一个好主意,因此你可以在解析后关闭流) –
我将把xml添加到主要问题 – Deslyxia
db是我在这种情况下给我的DocumentBuilder – Deslyxia