我将 solr3.6 与 tika1.2 一起使用,但我无法上传 pdf 文件。首先,我安装 solr 并从 exampledocs 上传一些 *.xml 文件。我可以用这个 URL 搜索这些文件http://localhost:8983/solr/select/?q=solr
。在下一步中,我安装 tika 以上传 pdf 和 doc 文件,但它不起作用。以下内容在“example/solr/conf/solrconf.xml”文件中。
<requestHandler name="/update/extract" startup="lazy" class="solr.extraction.ExtractingRequestHandler" >
<lst name="defaults"><str name="fmap.content">text</str><str name="lowernames">true</str>
<str name="uprefix">ignored_</str>
<str name="tika.config">tika-data-config.xml</str>
<str name="captureAttr">true</str>
<str name="fmap.a">links</str>
<str name="fmap.div">ignored_</str>
</lst>
</requestHandler>`
在文件“example/solr/conf/tika-data-config.xml”中我有这个内容:
<dataConfig>
<dataSource name="bin" type="BinFileDataSource" />
<document>
<entity name="f" dataSource="null" rootEntity="false" processor="FileListEntityProcessor" transformer="TemplateTransformer" baseDir="/home/ubuntu-user/Documents" fileName=".*\.(DOC)|(PDF)|(pdf)|(doc)|(docx)|(ppt)" onError="skip" recursive="true">
<field column="fileAbsolutePath" name="path" />
<field column="fileSize" name="size" />
<field column="fileLastModified" name="lastmodified" /><entity name="tika-test" dataSource="bin" processor="TikaEntityProcessor" url="${f.fileAbsolutePath}" format="text" onError="skip">
<field column="Author" name="author" meta="true"/>
<field column="title" name="title" meta="true"/>
</entity>
如果我把这行放在控制台中
curl http://localhost:8983/solr/update/extract?literal.id=doc2&uprefix=attr_&fmap.content=attr_content&commit=true" -F "myfile=@test.pdf"
我得到这个输出
<?xml version="1.0" encoding="UTF-8"?>
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">183</int>
</lst>
</response>
但我无法用 solr 搜索内容。如果我浏览到这个 url: http://localhost:8983/solr/browse
,我会看到一个新条目,但没有内容。
我还启动了 solr 和 tika 服务器:
java -jar start.jar
java -jar tika-server-1.2.jar
谁能帮我 ?