Я использую Spring 3.2 в веб-приложении, и я хотел бы иметь файл .properties
в пути к классам, который содержит значения по умолчанию. Пользователь должен иметь возможность использовать JNDI для определения местоположения, где хранится другой .properties
, который переопределяет значения по умолчанию.
Следующее работает до тех пор, пока пользователь установил свойство configLocation
как JNDI.
@Configuration
@PropertySource({ "classpath:default.properties", "file:${java:comp/env/configLocation}/override.properties" })
public class AppConfig
{
}
Однако внешние переопределения должны быть необязательными, поэтому свойство JNDI.
В настоящее время я получаю исключение (java.io.FileNotFoundException: comp\env\configLocation\app.properties (The system cannot find the path specified)
, когда отсутствует свойство JNDI.
Как определить опциональный .properties
, который используется только тогда, когда установлено свойство JNDI (configLocation
)? Возможно ли это с помощью @PropertySource
или есть другое решение?