2013-05-22 170 views
1

對tomcat有點麻煩。我有一個tomcat應用程序爲一些需要soap接口的數據公開soap接口。迄今爲止都很好。在測試中一切正常。Tomcat連接池和更改數據庫

當我安裝時有一個問題。我想更改數據庫連接以指向活動數據庫框。所以我編輯了context.xml並重新加載了應用程序。事實上,我已經關閉並重新啓動tomcat,以防萬一。

這裏是我的origonal背景

<Context> 

    <Resource name="jdbc/tclsms" auth="Container" type="oracle.jdbc.pool.OracleDataSource" 
       maxActive="20" maxIdle="10" maxWait="100" 
       user="***" password="***" driverClassName="oracle.jdbc.OracleDriver" 
       url="jdbc:oracle:thin:@tcl-sms:1521:smf" 
       factory="oracle.jdbc.pool.OracleDataSourceFactory" 
       /> 

    <!-- factory="org.apache.commons.dbcp.BasicDataSourceFactory" -->   

</Context> 

然後我把它改成這樣

<Context> 

    <Resource name="jdbc/tclsms" auth="Container" type="oracle.jdbc.pool.OracleDataSource" 
       maxActive="20" maxIdle="10" maxWait="100" 
       user="***" password="***" driverClassName="oracle.jdbc.OracleDriver" 
       url="jdbc:oracle:thin:@10.40.125.150:1521:smf" 
       factory="oracle.jdbc.pool.OracleDataSourceFactory" 
       /> 

    <!-- factory="org.apache.commons.dbcp.BasicDataSourceFactory" -->   

</Context> 

(密碼和用戶不*在實際安裝)

任何方式後進行更改並重新加載。我收到一個錯誤,並在錯誤中告訴我它無法解析tcl-sms。

有什麼理由說的tomcat不會被裝入新的context.xml我已經通過具有origonal的context.xml war文件部署

更多信息 。 部署完成後,我進入了webapps文件夾並編輯了上下文。

的測試系統是Ubuntu和直播系統是的Solaris(如果讓任何差異)

回答

0

發現這個問題。我認爲我最好在這裏發帖,以防其他人遇到同樣的事情。

這是發生了什麼事。部署後,tomcat在webapps中創建一個文件夾。這個文件夾是根據我的應用命名的,並有META-INF和WEB-INF文件夾。在那裏我找到了我的context.xml,並開始編輯。

但它仍然在尋找錯誤的分貝主機。所以我接下來做的是tomcat目錄中的那個主機的grep。沒有什麼,所以我認爲文件不能在戰爭檔案以外的地方定義。我錯了。我的應用還有另一個context.xml,但我沒有讀權限,所以grep失敗。

然後我發現這個http://tomcat.10.x6.nabble.com/context-xml-not-read-td2116658.html。事實證明,這個Web應用程序在 $ CATALINA_BASE/conf ///。xml

已有此預存的context.xml文件,它已全部正常工作。不知道爲什麼tomcat這樣做......