2

我已将 solr 4.3 集成到我的 Web 应用程序并添加了所有依赖项。当我通过 Eclipse juno 在 tomcat 上运行我的应用程序时,出现以下错误。

注意:如果我将 app.war 直接部署到 tomcat 的 webapp 目录,它似乎工作正常。

HTTP 状态 500 - {msg=SolrCore 'collection1' 由于 init 失败不可用:无法加载 solrconfig.xml 的配置,trace=org.apache.solr.common.SolrException: SolrCore 'collection1' 由于 init 不可用失败:无法在 org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:248) 的 org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:1212) 加载 solrconfig.xml 的配置.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:155) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:210) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 在 org.apache.catalina.core.StandardContextValve。在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 的 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 处调用(StandardContextValve.java:123) .catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :118) 在 org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1008) 在 org.apache.coyote.AbstractProtocol$ 的 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) AbstractConnectionHandler.process(AbstractProtocol.java:589) 在 org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) 在 java.util.concurrent.ThreadPoolExecutor。runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) 原因:org.apache.solr .common.SolrException:无法在 org.apache.solr.core.CoreContainer.create(CoreContainer.java:984) 的 org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:919) 加载 solrconfig.xml 的配置) 在 org.apache.solr.core.CoreContainer$2.call(CoreContainer.java:597) 在 org.apache.solr.core.CoreContainer$2.call(CoreContainer.java:592) 在 java.util.concurrent.FutureTask$ Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util .concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 在 java.util.concurrent.FutureTask。run(FutureTask.java:166) ... 3 更多原因:java.io.IOException: Can't find resource 'solrconfig.xml' in classpath or 'solr/collection1/conf/', cwd=/home/kumarkailash在 org.apache.solr.core.SolrResourceLoader.openResource(SolrResourceLoader.java:337) 在 org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:302) 在 org.apache.solr.core.Config.( Config.java:122) 在 org.apache.solr.core.Config.(Config.java:92) 在 org.apache.solr.core.SolrConfig.(SolrConfig.java:119) 在 org.apache.solr.core .CoreContainer.createFromLocal(CoreContainer.java:916) ... 11 更多 ,code=500}openResource(SolrResourceLoader.java:337) 在 org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:302) 在 org.apache.solr.core.Config.(Config.java:122) 在 org.apache。 solr.core.Config.(Config.java:92) 在 org.apache.solr.core.SolrConfig.(SolrConfig.java:119) 在 org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:916) ... 11 更多,代码=500}openResource(SolrResourceLoader.java:337) 在 org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:302) 在 org.apache.solr.core.Config.(Config.java:122) 在 org.apache。 solr.core.Config.(Config.java:92) 在 org.apache.solr.core.SolrConfig.(SolrConfig.java:119) 在 org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:916) ... 11 更多,代码=500}

类型状态报告

消息 {msg=SolrCore 'collection1' 由于初始化失败不可用:无法加载 solrconfig.xml 的配置,trace=org.apache.solr.common.SolrException:SolrCore 'collection1' 由于初始化失败不可用:可以不在 org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:248) 的 org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:1212) 加载 solrconfig.xml 的配置。 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) 上的 solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:155) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java: 210) 在 org.apache.catalina.core.StandardContextValve 的 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)。在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 的 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 处调用(StandardContextValve.java:123) .catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :118) 在 org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1008) 在 org.apache.coyote.AbstractProtocol$ 的 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) AbstractConnectionHandler.process(AbstractProtocol.java:589) 在 org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) 在 java.util.concurrent.ThreadPoolExecutor。runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) 原因:org.apache.solr .common.SolrException:无法在 org.apache.solr.core.CoreContainer.create(CoreContainer.java:984) 的 org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:919) 加载 solrconfig.xml 的配置) 在 org.apache.solr.core.CoreContainer$2.call(CoreContainer.java:597) 在 org.apache.solr.core.CoreContainer$2.call(CoreContainer.java:592) 在 java.util.concurrent.FutureTask$ Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util .concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 在 java.util.concurrent.FutureTask。run(FutureTask.java:166) ... 3 更多原因:java.io.IOException: Can't find resource 'solrconfig.xml' in classpath or 'solr/collection1/conf/', cwd=/home/kumarkailash在 org.apache.solr.core.SolrResourceLoader.openResource(SolrResourceLoader.java:337) 在 org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:302) 在 org.apache.solr.core.Config.( Config.java:122) 在 org.apache.solr.core.Config.(Config.java:92) 在 org.apache.solr.core.SolrConfig.(SolrConfig.java:119) 在 org.apache.solr.core .CoreContainer.createFromLocal(CoreContainer.java:916) ... 11 更多 ,code=500}openResource(SolrResourceLoader.java:337) 在 org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:302) 在 org.apache.solr.core.Config.(Config.java:122) 在 org.apache。 solr.core.Config.(Config.java:92) 在 org.apache.solr.core.SolrConfig.(SolrConfig.java:119) 在 org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:916) ... 11 更多,代码=500}openResource(SolrResourceLoader.java:337) 在 org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:302) 在 org.apache.solr.core.Config.(Config.java:122) 在 org.apache。 solr.core.Config.(Config.java:92) 在 org.apache.solr.core.SolrConfig.(SolrConfig.java:119) 在 org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:916) ... 11 更多,代码=500}

描述 服务器遇到一个内部错误,阻止它完成这个请求。Apache Tomcat/7.0.40

请帮忙。谢谢

4

1 回答 1

4

Seems the solr.home is missing.
You can add the solr.home entry to the web.xml itself.
Uncomment the line and populate correct values :-

<env-entry>
   <env-entry-name>solr/home</env-entry-name>
   <env-entry-value>/put/your/solr/home/here</env-entry-value>
   <env-entry-type>java.lang.String</env-entry-type>
</env-entry>
于 2013-06-12T05:52:07.110 回答