【发布时间】:2012-05-23 19:51:36
【问题描述】:
我在 spring-config.xml 中声明了以下属性
<util:properties id="ldap" location="classpath:com/company/project/resources/some_configuration.properties"/>
然后我在服务实现中使用 spring@Value 注释将属性中包含的值注入到一些成员变量中(这种方法是迄今为止我在服务实现中使用的最干净/最优雅的方法,如果可能的话我不想改变它)。
这种布局的问题是我必须修改属性文件并为每个部署环境(质量、生产等)重新生成应用程序战争,并且服务器管理员希望通过 JNDI 配置 some_configuration.properties 路径(应用程序服务器是 JBoss)
如何通过<util:properties />标签中的jndi传递文件位置?
任何帮助和建议将不胜感激
编辑: 如果有人提出一个解决方案,我可以做类似的事情,那就太好了:
<util:properties id="ldap" location="jndi:url/some_configuration.properties"/>
或类似
【问题讨论】:
-
如果您使用的是 Maven2,您可以使用
prepare-resourcesMaven 的阶段上的maven-antrun-plugin按 Maven Profile(dev1、dev2、test、preprod、prod)过滤您的some_configuration.properties。我以前做过。 -
谢谢,但我没有在项目中使用 Maven2
-
您使用哪些开发工具?阿帕奇蚂蚁?
-
来自 WTP 的 Eclipse 动态 Web 项目
-
在下面查看我的答案:stackoverflow.com/a/10727450/439427