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
将ApacheTika和Solr Cell与Solr集成以索引pdf和word文档_Solr_Solrnet_Apache Tika_Solr Cell - Fatal编程技术网

将ApacheTika和Solr Cell与Solr集成以索引pdf和word文档

将ApacheTika和Solr Cell与Solr集成以索引pdf和word文档,solr,solrnet,apache-tika,solr-cell,Solr,Solrnet,Apache Tika,Solr Cell,我正在使用solr搜索引擎对pdf和word文档进行POC索引。我试图搜索详细的级别信息或文章,但没有找到任何详细的文章。我发现的是使用solr包提供的一些示例。这不是我所需要的 我目前掌握的信息是,可以使用Solr Cell和ApacheTika为pdf文档编制索引 从一些stakeoverflow中我找到了链接,但它不是教程,也没有我想要的步骤。另外,我想使用solrnet从.net应用程序调用solr 我使用的是Solr5.1版本 我提供了从solr参考文档运行的示例代码,如下所示 bin

我正在使用solr搜索引擎对pdf和word文档进行POC索引。我试图搜索详细的级别信息或文章,但没有找到任何详细的文章。我发现的是使用solr包提供的一些示例。这不是我所需要的

我目前掌握的信息是,可以使用Solr Cell和ApacheTika为pdf文档编制索引

从一些stakeoverflow中我找到了链接,但它不是教程,也没有我想要的步骤。另外,我想使用solrnet从.net应用程序调用solr

我使用的是Solr5.1版本

我提供了从solr参考文档运行的示例代码,如下所示

bin/solr -e techproducts
它使用techproducts core启动了示例solr实例。之后,我运行下面的命令为pdf文档编制索引

curl "http://localhost:8983/solr/techproducts/update/extract?literal.id=doc1&commit=true" -F "myfile=@example/exampledocs/solr-word.pdf"
它工作得很好

在此之后,我从tomcat托管的solr服务器创建了新的core,并尝试在该服务器上运行相同的curl命令和receiver error。 我在solrconfig.xml中添加了以下请求处理程序代码

<requestHandler name="/update/extract" 
                  startup="lazy"
                  class="solr.extraction.ExtractingRequestHandler" >
    <lst name="defaults">
      <str name="lowernames">true</str>
      <str name="uprefix">ignored_</str>

      <!-- capture link hrefs but ignore div attributes -->
      <str name="captureAttr">true</str>
      <str name="fmap.a">links</str>
      <str name="fmap.div">ignored_</str>
    </lst>
  </requestHandler>
错误:

<?xml version="1.0" encoding="UTF-8"?>
<response>
<lst name="error"><str name="msg">Error loading class 'solr.extraction.Extractin
gRequestHandler'</str><str name="trace">org.apache.solr.common.SolrException: Er
ror loading class 'solr.extraction.ExtractingRequestHandler'
        at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.
java:492)
        at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.
java:423)
        at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:561)
        at org.apache.solr.core.PluginBag$LazyPluginHolder.createInst(PluginBag.
java:343)
        at org.apache.solr.core.PluginBag$LazyPluginHolder.get(PluginBag.java:32
8)
        at org.apache.solr.core.PluginBag.get(PluginBag.java:130)
        at org.apache.solr.handler.RequestHandlerBase.getRequestHandler(RequestH
andlerBase.java:219)
        at org.apache.solr.core.SolrCore.getRequestHandler(SolrCore.java:1263)
        at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilte
r.java:382)
        at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilte
r.java:220)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:239)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:219)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:106)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:142)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:79)
        at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAcce
ssLogValve.java:610)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:88)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:518)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp
11Processor.java:1091)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:668)
        at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.pr
ocess(Http11NioProtocol.java:223)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpo
int.java:1517)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoin
t.java:1474)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskTh
read.java:61)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: solr.extraction.ExtractingRequestHa
ndler
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.net.FactoryURLClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.
java:476)
        ... 27 more
</str><int name="code">500</int></lst>
</response>

加载类'solr.extraction.Extractin'时出错
gRequestHandler'org.apache.solr.common.SolrException:Er
ror正在加载类“solr.extraction.ExtractingRequestHandler”
在org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader。
爪哇:492)
在org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader。
爪哇:423)
位于org.apache.solr.core.SolrCore.createInstance(SolrCore.java:561)
在org.apache.solr.core.PluginBag$LazyPluginHolder.createInst(PluginBag。
爪哇:343)
位于org.apache.solr.core.PluginBag$LazyPluginHolder.get(PluginBag.java:32
8)
位于org.apache.solr.core.PluginBag.get(PluginBag.java:130)
在org.apache.solr.handler.RequestHandlerBase.getRequestHandler(RequestH
andlerBase.java:219)
位于org.apache.solr.core.SolrCore.getRequestHandler(SolrCore.java:1263)
位于org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilte
r、 爪哇:382)
位于org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilte
r、 爪哇:220)
在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
(filterchain.java:239)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
阿尔维(java:219)
在org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:106)
位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:142)
在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
艾娃:79)
位于org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAcce
ssLogValve.java:610)
位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:88)
位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:518)
在org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp
11Processor.java:1091)
位于org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:668)
位于org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.pr
进程(Http11NioProtocol.java:223)
位于org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpo
int.java:1517)
位于org.apache.tomcat.util.net.niodempoint$SocketProcessor.run(nionedpoin
t、 爪哇:1474)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(未知源)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(未知源)
位于org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskTh
阅读:java:61)
位于java.lang.Thread.run(未知源)
原因:java.lang.ClassNotFoundException:solr.extraction.extracting请求HA
恩德勒
位于java.net.URLClassLoader$1.run(未知源)
位于java.net.URLClassLoader$1.run(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.net.URLClassLoader.findClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于java.net.FactoryURLClassLoader.loadClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于java.lang.Class.forName0(本机方法)
位于java.lang.Class.forName(未知源)
在org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader。
爪哇:476)
... 还有27个
500

我遗漏了什么吗?

查看错误,似乎在solr库的提取库中缺少apache solr cell jar及其依赖项

<lib dir="../../dist/" regex="apache-solr-cell-\d.*\.jar" />
<lib dir="../../contrib/extraction/lib" />


添加这些文件…

ExtractingRequestHandler页面在我看来非常详细和全面。那怎么办?你听不懂吗?当你跟着它走的时候,什么东西不起作用?@Gagravarr-我对solr是新手。我已经更新了我的问题。请看一看,并请提供您的意见。我错过了那些文件。但我有一个关于这些路径的问题。路径“C:\tomcat solr\contrib\extraction\lib”和路径“C:\tomcat solr\dist”在solr方面的意义是什么?这些JAR用于提取。欲了解更多详情,请顺便检查答案是否有助于解决问题,请接受或投票:)接受您的答案。我是新来solr的。所以,我问了两个文件夹“contrib”和“dist”的意义。请分享更多详细信息?contrib类似于dataimporthandler,它直接支持SQL数据库的完整和增量索引,以及本地或REST可访问的XML文件。。。
<lib dir="../../dist/" regex="apache-solr-cell-\d.*\.jar" />
<lib dir="../../contrib/extraction/lib" />