Tomcat连接池,并更改DB

时间:2013-05-22 04:19:25

标签: tomcat

与tomcat有点麻烦。我有一个tomcat应用程序,它为一些需要soap接口的数据公开soap接口。到目前为止都很好。在测试中一切正常。

安装时出现问题。我想将数据库连接更改为指向实时数据库框。所以我编辑了context.xml并重新加载了应用程序。事实上我已经关闭并重新启动了tomcat,以防万一。

这是我的原始背景

    <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

更多信息 我已经通过一个具有原始context.xml的war文件进行部署。 部署后,我进入了webapps文件夹并编辑了上下文。

测试系统是Ubuntu,实时系统是Solaris(如果这有任何区别)

1 个答案:

答案 0 :(得分:0)

发现问题。我想我最好在这里发布一些其他人遇到同样的事情。

发生了什么事。部署后,tomcat在webapps中创建了一个文件夹。此文件夹以我的应用程序命名,并具有META-INF和WEB-INF文件夹。在那里,我找到了我的context.xml,并开心地开始编辑。

然而它仍在寻找错误的数据库主机。所以接下来我在tomcat目录中为那个主机做了grep。没什么,所以我认为文件不能在war文件以外的任何地方定义。我错了。我的应用程序还有另一个context.xml,但我没有读取权限,因此grep失败了。

然后我找到了http://tomcat.10.x6.nabble.com/context-xml-not-read-td2116658.html。事实证明,这个Web应用程序有一个预先存在的context.xml $ CATALINA_BASE / CONF ///。XML

编辑该文件并且一切正常。不知道为什么tomcat这样做....