当前位置: 首页 > 知识库问答 >
问题:

致命错误:1:1:prolog中不允许包含内容

廖绍辉
2023-03-14

我正在使用Java,并试图从一些http链接获取XML文档。我使用的代码是:

URL url = new URL(link);

HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("GET");
connection.connect();
Document doc = null;

CountInputStream in = new CountInputStream(url.openStream());
doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(in);

不要注意CountInputStream,它是一个特殊的类,就像普通的输入流一样。

使用上面的代码,我有时会得到错误致命错误:1:1:prolog中不允许包含内容。我假设这与糟糕的xml格式有关,但我不知道如何修复它。


共有3个答案

公冶经纶
2023-03-14

我发现这个问题的真正解决方案是禁用任何XML格式后处理器。我添加了一个名为“jp@gc-XML格式后处理器”的后处理器,并开始注意到错误“致命错误: 1:1: prolog中不允许内容”

通过禁用后处理器,已停止抛出这些错误。

郎翔
2023-03-14

在XML序言之前肯定有一些奇怪的字符(例如BOM)或空格(

郏经纬
2023-03-14

我把我的评论变成了一个答案,这样它就可以被接受,这个问题也就不再没有答案了。

最有可能的原因是格式错误的响应,其中包括初始之前的字符。

 类似资料:
  • 我有一个用UTF-16 LE编码的超级简单的XML文档。 我这样加载它(使用): 我通过保存文件并用十六进制编辑器检查它,检查了没有额外的BOM/垃圾符号(前导或任何地方)。XML格式正确。 但是,我仍然得到以下错误: 我上下搜索了这个错误,但他们都说这是BOM的错误,我(据我所知)已经证实不是这样。还有什么不对劲?

  • 我试图用Java读取一个XML文件,然后将其与XML模式进行比较,但我无法克服此错误: [致命错误]: 1:1: prolog中不允许有内容org.xml.sax.SAXParseExc0019; lineNumber: 1;柱状编号: 1; prolog中不允许有内容。 这是文件读取的开始 我通过十六进制编辑器扫描了我的XML,但是我没有在里面找到任何奇怪的字符,所以我不知道问题出在哪里 我的文

  • 问题内容: 我正在尝试调用Web服务,但是遇到了奇怪的行为。我们的服务器上正在运行一个Web服务,但是该代码未向我们开放,因此无法看到墙后发生了什么。该服务的所有者公开了基于Web的测试客户端UI,该UI在文本框中输入内容,并显示对测试目的的响应。此输入框采用以下提到的格式输入 它在此UI上工作正常,但是当我尝试通过Java代码调用此Web服务时,它也将获得连接以及被该服务授权,但是当我尝试调用上

  • 问题内容: 我正在使用Java,并且试图从某个http链接获取XML文档。我使用的代码是: 不要关注,它是一些特殊的类,就像常规输入流一样。 使用上面的代码,有时会出错。我认为这与xml格式错误有关,但我不知道如何解决。 问题答案: 我将我的评论转为答案,因此它可以被接受,并且这个问题不再悬而未决。 造成这种情况的最可能原因是格式错误的响应,其中包括在initial之前的字符。因此,请查看通过HT

  • <?xml version=“1.0”encoding=“UTF-8”?> ** 和xml文件的bebinning: <?xml version=“1.0”encoding=“UTF-8”?> ... 即将出现的错误: 原因:org.xml.sax.SAXParseException;行号:2;列号:1;Prolog中不允许包含内容。在org.apache.xerces.parsers.dompa

  • 问题内容: 我正在尝试运行一个Python脚本,该脚本使用由后链接程序创建的二进制文件(xFiles.bin.addr_patched)。但是,我收到此错误。 当我通过ls-l检查此xFiles.bin的权限时,它表明 我认为错误是因为此文件是由其他应用程序创建的,我正在运行的python脚本无法访问它。因为我是ubuntu的初学者,所以我真的不知道如何解决它。对于如何解决这个问题,有任何的建议吗