Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 指定的流长度错误。返回到读取流,直到结束流_Java_Solr_Pdfbox_Apache Tika - Fatal编程技术网

Java 指定的流长度错误。返回到读取流,直到结束流

Java 指定的流长度错误。返回到读取流,直到结束流,java,solr,pdfbox,apache-tika,Java,Solr,Pdfbox,Apache Tika,我正在尝试使用发送PDF文档进行解析。(具体来说,我正在使用,但我不认为这与此问题有关) 但是,对于我发送的每个PDF文件,我都会在日志中收到以下警告(来自Solr Admin): 根据我的研究,当PDFBox读取某些PDF时会发生这种情况。我发现了一个类似的例子,上面写着更改推送大小。 问题是我使用的是Solr5.2.1,还没有弄清楚如何配置此设置。有没有办法配置Solr以便我为这些文件编制索引?您的PDF已损坏。PDF流对象如下所示: 4 0 obj << /Length 34

我正在尝试使用发送PDF文档进行解析。(具体来说,我正在使用,但我不认为这与此问题有关)

但是,对于我发送的每个PDF文件,我都会在日志中收到以下警告(来自Solr Admin):

根据我的研究,当PDFBox读取某些PDF时会发生这种情况。我发现了一个类似的例子,上面写着更改
推送大小

问题是我使用的是Solr5.2.1,还没有弄清楚如何配置此设置。有没有办法配置Solr以便我为这些文件编制索引?

您的PDF已损坏。PDF流对象如下所示:

4 0 obj
<<
/Length 34841
>>
stream
... content (which should have a length of 34841 bytes) ...
endstream
endobj
40对象
>
流动
... 内容(长度应为34841字节)。。。
尾流
endobj
因此,如果“endstream”没有出现在预期的偏移量处,您将得到描述的消息。这意味着PDFBox尝试了一个“方案B”;如果没有显示进一步的消息,则将处理PDF。你所能做的就是告诉PDF的创建者要干净地工作,即正确地计算流的长度。或者避免在“廉价”文本编辑器中打开PDF文件并保存


问题PDFBOX-2381描述了另一个错误,即回推缓冲区太小。

谢谢。您认为PDFBox严格符合PDF规范吗?我以前没有遇到过其他PDF库的问题。@JesseGood没有;如果PDFBox“严格”符合PDF规范,则该文件将被拒绝。但这不是一个“问题”:如果之后没有消息,这意味着你的文件已经被处理。可能是其他库悄悄地处理该文件,或者日志级别设置不同。谢谢您的帮助。我现在明白了,这只是一个警告。