java解析XML saxReader.read(xml) 错误:org.dom4j.DocumentException: no protocol

来源:互联网 发布:js调用微信扫一扫demo 编辑:程序博客网 时间:2024/06/05 19:46

java解析XML saxReader.read(xml) 错误:org.dom4j.DocumentException: no protocol

xml参数赋值为一段xml格式的字符串。

dom4j使用的版本是1.0.0,查看该方法的源代码没有代码注释说明


进入InputSource的构造函数定义:


从注释可以看出saxReader.read(xml)中的xml参数应该是资源定位符(URI),而不是实际的xml内容,因此方法使用存在错误

@param systemId The system identifier (URI).
解决方法可以用一个字节数据输入流包装实际的xml内容,然后再用saxBuilder.read方法读取
inputStream = new ByteArrayInputStream(rpcInput.getBytes("UTF-8"));
saxBuilder.read(inputStream)

原创粉丝点击