在我的Spring配置我有以下行:替代屬性和系統屬性在Spring的XML
<context:property-placeholder
location="/META-INF/spring/global.properties,#{systemProperties['external.propertyFile'] ?: ''}, /WEB-INF/local.properties"
ignore-resource-not-found="true" />
我的目的是在global.properties
已經運了一些默認值,這些都應該在穿過另一個外部文件是重寫external.propertyFile
和一些屬性保持本地應用程序本身local.properties
從我在日誌中看到 - global.properties
和local.properties
被處理的權利,但與#{systemProperties ... }
替代似乎並不在這裏工作。
任何提示的如何解決或解決它?
下面是從我的應用程序相關的日誌(縮短了一下):
Loading properties file from ServletContext resource [/META-/spring/counter.properties]
Loading properties file from ServletContext resource [/#{systemProperties['external.propertyFile'] ?: ''}]
WARN support.PropertySourcesPlaceholderConfigurer: Could not load properties from ServletContext resource [/#{systemProperties['external.propertyFile'] ?: ''}]: Could not open ServletContext resource [/#{systemProperties['external.propertyFile'] ?: ''}]
Loading properties file from ServletContext resource [/WEB-INF/local.properties]
只是一句話:
在相同的XML配置其他地方的置換工作正常 - 如。搭配:
<util:properties
id="myProp"
location="#{systemProperties['my.propertyFile'] ?: '/META-INF/spring/my.properties'}"/>
但這次我需要處理更復雜的方法/合併的實際屬性值:(
如果你使用Maven,採取看看[Maven資源過濾](http://maven.apache.org/guides/getting-started/index.html#How_do_I_filter_resource_files)。 – adarshr 2013-02-19 12:31:48