Bom dia,
estou com um problema que não consigo resolver.
Tenho um portal de vendas (na verdade da empresa onde trabalho) que é utilizado por alguns clientes. Ou seja, é um serviço que eles pagam.
Toda vez que é necessário atualizar, é mandado o arquivo .WAR para os clientes. No entanto, antes de mandar para cada um, é necessário alterar o endereço do banco, login e senha em 3 arquivos:
- ConnectionFactory.java
- persistence.xml
- applicationContext.xml
Então surgiu a idéia de disponibilizar um arquivo server.ini com dados do banco. Assim, só seria necessário gerar um .WAR e mandar para todos os clientes. A aplicação leria esse arquivo e faria a conexão.
Para o ConnectionFactory.java eu consegui isso pegando o endereço do arquivo pelo System.getProperty(“user.dir”), lendo ele em um FileInputStream e jogando em um Properties.
Mas, e para esses dois XMLs? Não consegui atribuir o valor a tag. Alguém poderia me ajudar?
Dei uma pesquisada sobre isso e encontrei um artigo sobre XStream e WriteFile mas, pelo que entendi, é para gerar XML e não alterar. Pelo menos era assim o exemplo.
Abaixo segue parte do XML que gostaria de alterar.
persistence.xml
Queria alterar as linhas de 12 a 14
<persistence-unit name="bookingDatabase" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<!-- <property name="hibernate.hbm2ddl.auto" value="update"/> -->
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle9iDialect"/>
<!-- Use these vendor-specific properties to setup JDBC connection instead of using Spring configuration -->
<property name="hibernate.connection.driver_class" value="oracle.jdbc.driver.OracleDriver"/>
<property name="hibernate.connection.username" value="USUARIO"/>
<property name="hibernate.connection.password" value="SENHA"/>
<property name="hibernate.connection.url" value="jdbc:oracle:thin:@192.168.1.90:1521:AWORKSDB"/>
<property name="hibernate.jdbc.batch_size" value="50" />
</properties>
</persistence-unit>
applicationContext.xml.
Gostaria de alterar as linhas de 3 a 5
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@192.168.1.90:1521:AWORKSDB"/>
<property name="username" value="USUARIO"/>
<property name="password" value="SENHA"/>
</bean>
server.ini
Carrego as configurações deste arquivo:
banco=jdbc:oracle:thin:@192.168.1.90:1521:AWORKSDB
login=USUARIO
senha=SENHA
Obrigado