Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.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

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 在Solr中存储pdf_Java_Solr_Apache Tika - Fatal编程技术网

Java 在Solr中存储pdf

Java 在Solr中存储pdf,java,solr,apache-tika,Java,Solr,Apache Tika,我正在尝试(在我的本地环境中)设置一些东西,以便在Solr中存储PDF,但我无法让它工作。现在我正在处理Solr提供的示例文件夹中的文件 我没有修改solr-3.6.0/example/conf中的solrconfig.xml,因为它似乎已经按照中所述进行了配置。也就是说,它已经包含以下内容: <lib dir="../../dist/" regex="apache-solr-cell-\d.*\.jar" /> <lib dir="../../contrib/extracti

我正在尝试(在我的本地环境中)设置一些东西,以便在Solr中存储PDF,但我无法让它工作。现在我正在处理Solr提供的示例文件夹中的文件

我没有修改solr-3.6.0/example/conf中的solrconfig.xml,因为它似乎已经按照中所述进行了配置。也就是说,它已经包含以下内容:

<lib dir="../../dist/" regex="apache-solr-cell-\d.*\.jar" />
<lib dir="../../contrib/extraction/lib" regex=".*\.jar" />
我正试图使用以下命令将pdf发送到Solr:

java -jar start.jar 
java -Durl=http://localhost:8983/solr/update/extract -Dauto -jar /Applications/Solr-3.6.0/example/exampledocs/post.jar /path/to/pdf/mypdf.pdf
如果我没有对/Solr-3.6.0/example/Solr/conf/schema.xml进行任何更改,我会得到以下消息:

FATAL: Solr returned an error #400 [doc=null] missing required field: id
如果我将schema.xml中id元素中属性“required”的值更改为false,我会得到:

FATAL: Solr returned an error #400 Document is missing mandatory uniqueKey field: id
我认为,如果模式中元素的required属性为false,那么我可以只发送不包含该字段的文件,但显然不是这样


我还尝试在发送pdf的命令中添加参数-Dparams=literal.id=mypdf1,但这也没有帮助。有什么想法吗?

我认为我的困惑是因为您需要为发送给Solr的文档提供一个id,同时Solr-3.6.0/example/Solr/conf/schema.xml中有一个id元素

我相信我遇到的第一个错误是指模式中的id元素。第二个错误是引用文档id

在ZeroPage的帮助下,我也克服了第二个错误,将文档id添加到url中,而不是作为单独的参数传递。此查询现在适用于我:

java -Durl=http://localhost:8983/solr/update/extract?literal.id=form1 -jar /Applications/Solr-3.6.0/example/exampledocs/post.jar /path/to/pdf/form1.pdf 
如果我们想让Solr为PDF的全部内容编制索引,我们需要添加uprefixfmap.contentaTributes:

java -Durl="http://localhost:8983/solr/update/extract?literal.id=form1&uprefix=attr_&fmap.content=attr_content&commit=true" -jar /Applications/Solr-3.6.0/example/exampledocs/post.jar /path/to/pdf/form1.pdf

我认为我的困惑是因为您需要为发送给Solr的文档提供一个id,同时Solr-3.6.0/example/Solr/conf/schema.xml中有一个id元素

我相信我遇到的第一个错误是指模式中的id元素。第二个错误是引用文档id

在ZeroPage的帮助下,我也克服了第二个错误,将文档id添加到url中,而不是作为单独的参数传递。此查询现在适用于我:

java -Durl=http://localhost:8983/solr/update/extract?literal.id=form1 -jar /Applications/Solr-3.6.0/example/exampledocs/post.jar /path/to/pdf/form1.pdf 
如果我们想让Solr为PDF的全部内容编制索引,我们需要添加uprefixfmap.contentaTributes:

java -Durl="http://localhost:8983/solr/update/extract?literal.id=form1&uprefix=attr_&fmap.content=attr_content&commit=true" -jar /Applications/Solr-3.6.0/example/exampledocs/post.jar /path/to/pdf/form1.pdf

你试过移除-Dauto吗?我试过了(我最初就是这样做的)。这没有帮助。您是否尝试过将参数添加到url中,如“…/extract?literal.id=mypdf1”?成功了!非常感谢你,ZeroPage。我不明白为什么这样做有效,-Dparams=literal.id=form1不起作用(它在文档中),但至少我可以继续工作。再次感谢。你试过移除-Dauto吗?是的(我最初就是这样做的)。这没有帮助。您是否尝试过将参数添加到url中,如“…/extract?literal.id=mypdf1”?成功了!非常感谢你,ZeroPage。我不明白为什么这样做有效,-Dparams=literal.id=form1不起作用(它在文档中),但至少我可以继续工作。再次感谢。