Я ранее использовал класс устаревших классов org.springframework.web.context.support.ServletContextPropertyPlaceholderConfigurer
, чтобы загрузить файл свойств из файловой системы сервера. Я следующий боб определяемом:Tomcat Context-Params игнорируется в Spring Webapp при использовании PropertyPlaceholder
<bean class="org.springframework.web.context.support.ServletContextPropertyPlaceholderConfigurer">
<property name="locations" value="${config}"/>
<property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
<property name="ignoreUnresolvablePlaceholders" value="true"/>
<property name="searchContextAttributes" value="true"/>
<property name="contextOverride" value="false"/>
<property name="ignoreResourceNotFound" value="true"/>
<property name="searchSystemEnvironment" value="false"/>
</bean>
config
является аргумент, который передается при запуске Tomcat, т.е.
-Dconfig=/path/to/application.properties
Для веб-приложение У меня также есть файл контекста:
<Context docBase="/path/to/application.war">
<Parameter name="host" value="localhost" override="false"/>
<Parameter name="port" value="8080" override="false"/>
</Context>
Если файл .properties
, заданный аргументом -Dconfig
, содержит свойство, которое ссылается на некоторые другие bean-компоненты, а затем значение из .properties
используется файл, в противном случае используется значение из XML-файла контекста.
Это позволило мне установить набор свойств по умолчанию, развернутых в WAR, и, если необходимо, я смог указать файл .properties
для переопределения определенных значений.
Теперь я обновляю, чтобы использовать новые абстракции свойств весной 3.1, но я не могу понять, что эквивалентный подход к этому?
У меня есть один и тот же файл контекст и войны развернутых таким же образом, и теперь у меня есть следующий в заявке:
<context:property-placeholder
location="${config}"
system-properties-mode="OVERRIDE"
ignore-resource-not-found="true"
ignore-unresolvable="true"/>
Это находит и использует свойства из файла свойств, но это не используйте значения из XML-файла контекста.
Как получить мое приложение для использования параметров контекста при использовании этого нового владельца-заполнителя?
Спасибо.
Я не думаю, что вы полностью поняли мое первоначальное сообщение. Я уже заполнил заполнители, используя файл свойств. Вопрос задает вопрос об использовании параметров контекста. – C0deAttack
Вы следили за ссылкой с 1-го предложения? Остальная часть ответа - это просто дополнение для других разработчиков, которые используют .properties и application.properties. – luksmir
Вопрос касается параметров контекста - не файлов свойств. – C0deAttack