Мы используем новую функцию профилей среды Spring 3.1. В настоящее время мы устанавливаем активный профиль, устанавливая переменную среды spring.profiles.active=xxxxx на сервере, на котором мы развертываем приложение.
Мы считаем, что это неоптимальное решение, поскольку файл войны, который мы хотим развернуть, должен просто иметь дополнительный файл свойств, который устанавливает среду, в которой должен загружаться контекст приложения Spring, поэтому развертывание не зависит от некоторого набора env var на сервере.
Я попытался выяснить, как это сделать, и нашел:
ConfigurableEnvironment.setActiveProfiles()
который я могу использовать для программной установки профиля, но тогда я все еще не знаю, где и когда выполнять этот код. Где-то загружается контекст весны? Могу ли я загрузить параметр, который хочу передать методу, из файла свойств?
ОБНОВЛЕНИЕ: я только что нашел в документы, которые я мог бы быть в состоянии реализовать, чтобы установить активный профиль?