我有tomcat的context.xml文件,其中包含对context.properties文件的引用
<Context sessionCookiePath="/" path="/">
<Resource name="jdbc/dbwriter" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="com.mysql.jdbc.Driver"
type="javax.sql.DataSource"
url="jdbc:mysql://${context.ip}:3306/test" username="${user}"
password="${pass}" />
</Context>
context.properties文件如下所示:
context.ip=localhost
user=admin
pass=admin
但似乎tomcat没有加载属性文件并尝试解析jdbc:mysql://${context.ip}:3306
。我做错了什么?
对于构建我正在使用maven。也许它应该填满房产占位符?
编辑:context.properties
文件位于WEB-INF/classes
侧文件夹中,context.xml
位于WAR文件内的META-INF
文件夹中。
答案 0 :(得分:3)
将context.properties文件作为Web应用程序的一部分提供,没有什么意义。您也可以让构建系统为您替换属性。
如果要保留属性定义,如果将它们添加到位于$ CATALINA_BASE / conf
中的catalina.properties文件中,Tomcat将获取这些属性。