我已经在Windows机器上对tomcat进行了Solr Integration的以下步骤。请你澄清我在这里做错了什么。
1)下载Solr并将Solr 5.2.1解压缩到以下目录C:\ downloads \ solr-5.2.1 \ solr-5.2.1。
2)下载Tomcat 7压缩版并将其解压缩到位置C:\ downloads \ apache-tomcat-7.0.62 \ apache-tomcat-7.0.62
3)将Jar文件从C:\ downloads \ solr-5.2.1 \ solr-5.2.1 \ dist \ solrj-lib目录复制到C:\ downloads \ apache-tomcat-7.0.62 \ apache-tomcat- 7.0.62 \ lib目录。
4)在C:\ downloads \ apache-tomcat-7.0.62 \ apache-tomcat-7.0.62 \ conf \ Catalina \ localhost文件夹中创建一个solr.xml。
<?xml version='1.0' encoding='UTF-8'?>
<context docBase="C:/downloads/apache-tomcat-7.0.62/apache-tomcat-7.0.62/webapps/solr.war" debug="0" crossContext="true" >
<environment name="solr" type="java.lang.String" value="/apache-tomcat-7.0.62/webapps/" override="true"></environment>
</context>
5)将solr.war文件从C:\ downloads \ solr-5.2.1 \ solr-5.2.1 \ server \ webapps复制到 C:\ downloads \ apache-tomcat-7.0.62 \ apache-tomcat-7.0.62 \ webapps文件夹。
6)使用bin文件夹
中的startup.bat命令启动tomcat7)将web.xml编辑为
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>C:/downloads/solr-5.2.1/solr-5.2.1</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
8)重新启动tomcat并点击网址http://localhost:8080/solr我收到404 Not found Error。控制台中的错误是
SEVERE: Error deploying configuration descriptor C:\downloads\apache-tomcat-7.0.
62\apache-tomcat-7.0.62\conf\Catalina\localhost\solr.xml
java.lang.NullPointerException
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.ja
va:645)
答案 0 :(得分:0)
Solr wiki声称在Tomcat上运行5.x版本是no longer supported:
在内部,Solr仍然通过Servlet API实现,并由Jetty提供支持 - 但这只是一个实现细节。部署为&#34; webapp&#34;不支持其他Servlet容器(或Jetty的其他实例),并且可能在将来5.x版本的Solr中无法在Solr内部进行其他更改以利用自定义网络堆栈功能时使用。