【发布时间】:2015-10-17 15:47:35
【问题描述】:
我们如何在 Spring Security 配置中访问 webapp 的 WEB-INF 文件夹之外的 jdbc 属性?我的项目层次结构如下:
tomcat
webapps
appName
Configuration
jdbc.properties
other configuration files too are here
WebPages
all the jsps/htmls here
WEB-INF
web.xml
spring-security.xml
classes/
lib/
tlds/
在 spring-security.xml 中,我试图引用 jdbc.properties 并且每次我得到文件未找到异常,
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="file:${catalina.home}/webapps/appName/configuration/jdbc.properties"/>
<property name="location" value="file:${catalina.base}/webapps/appName/configuration/jdbc.properties"/>
<property name="location" value="/configuration/jdbc.properties"/>
<property name="location" value="file:/configuration/jdbc.properties"/>
<property name="location" value="classpath:/configuration/jdbc.properties"/>
<property name="location" value="classpath:/configuration/jdbc.properties"/>
</bean>
{catalina.home} 和 {catalina.base} 工作,但仅在服务器重新启动或应用程序重新部署发生之前。 SO或互联网上的几乎所有答案都指向jdbc.properties文件放置在类路径中(即类文件夹内)的解决方案,但是由于内部原因,我不能在我的项目中这样做。
【问题讨论】:
-
当然是把它们放在 CLASSPATH 中。它们属于 WEB-INF/classes。
标签: java tomcat configuration spring-security