使用环境变量作为CATALINA_HOME的Property-placeholder

时间:2013-09-04 11:10:14

标签: java spring applicationcontext

我想在property-placeholder的位置使用Envriomental变量,但我不明白:

我试过这样的方式:

<context:property-placeholder location="${CATALINA_HOME}/conf/database.properties" order="0"/>

但我收到此错误

  

org.springframework.beans.factory.BeanInitializationException:可以   不加载属性;嵌套异常是   java.io.FileNotFoundException:无法打开ServletContext资源   [/ $ {CATALINA_HOME} /conf/database.properties]

另外,我没有在上下文配置或属性占位符中找到有关使用环境变量的文档。

亲切的问候。

3 个答案:

答案 0 :(得分:1)

我认为你应该这样做:

<context:property-placeholder location="#{ systemProperties['CATALINA_HOME'] }/conf/database.properties"/>

如果我不明白你错了。

答案 1 :(得分:1)

我用过:

我听说这项工作适用于tomcat 6.0或更高版本。

答案 2 :(得分:0)

您也可以使用以下方式,我在我的应用程序中使用它

<context:property-placeholder location="file:${env.CATALINA_HOME}/conf/database.properties"/>