Utilizei o PreferencesPlaceholderConfigurer para configurar um DataSource, conforme mostrado abaixo:
<bean id="placeholderConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
<property name="ignoreUnresolvablePlaceholders" value="true" />
</bean>
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.firebirdsql.jdbc.FBDriver" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</bean>
No meu sistema existe uma interface onde o usuário informa tais valores. O problema é que os novos valores informados são lidos apenas quando faço um redeploy da aplicação. Tem como evitar isso? Tentei o código abaixo mas não funcionou.
GenericApplicationContext context = new GenericApplicationContext();
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(context);
reader.loadBeanDefinitions(new ServletContextResource((ServletContext) getExternalContext().getContext(), "/WEB-INF/applicationContext.xml"));
context.refresh();
Obrigado,
Felipe