我正在嘗試將apache solr4.5與tomcat7.0集成。爲什麼tomcat7無法讀取我的context.xml?
這是我的問題,我在$ CATALINA_BASE/webapps下創建一個名爲「solr」的目錄,並在目錄結構的路徑下創建一個context.xml。
$ CATALINA_BASE/webapps /下的Solr/META-INF/context.xml的
context.xml中看起來像如下:
<?xml version="1.0" encoding="utf-8" ?>
<Context docBase="/solr/home/root/solr.war">
<Environment name="solr/home" type="java.lang.String" value="/solr/home/root" />
</Context>
當我訪問「我期待本地主機:8080/Solr的/」,Solr的web應用程序應該正常工作,但我得到的是一些象這樣的錯誤:
HTTP Status 404 - /solr/
type Status report
message /solr/
description The requested resource (/solr/) is not available.
Apache Tomcat/7.0.26
但根據Apache的tomcat7.0 documen噸,
個人背景信息元素可被明確定義:
在在/META-INF/context.xml應用程序文件內的單個文件。可以根據主機的copyXML 屬性將其複製到 $ CATALINA_BASE/conf/[enginename]/[主機名] /並重命名爲 應用程序的基本文件名加上「.xml」擴展名。
在$ CATALINA_BASE/conf/[enginename]/[hostname] /目錄中的單個文件(擴展名爲「.xml」)。上下文 路徑和版本將從文件的基本名稱( 文件名少於.xml擴展名)派生而來。該文件將始終優先於應用程序的META-INF目錄中打包的任何context.xml文件,其優先級爲 。
在主conf/server.xml中的主機元素內。
所以,請人給我一些線索,謝謝。
我知道SolrLogging從solr.war分隔,所以問題不是filterStart的錯誤。其實我可以通過在$ CATALINA_BASE/conf/[enginename]/[hostname] /solr.xml中聲明我的上下文來很好地運行solr,但是我只是不明白爲什麼我無法使用第一種方法方法mentiod在我的問題。 – David