Como alterar parâmetros XML passando valores obtidos de um arquivo .INI externo?

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

Aos moderadores, peço que por favor excluam um dos meus tópicos.
Ao inserir a primeira vez deu um erro entao criei novamente. Não tinha visto que já havia sido postado.
Desculpem-me

seria melhor criar um arquivo .ini seguinte

ipbanco=xxx.xxx.xxx.xxx
banco=nome_da_db
usuario=usuario_da_db
senha=senha_da_db

ai carregar as variaveis dentro do script de conexão… atualmente estou precisando disso ai, mais… vo terque estudar para ver se faço xD

o xstream eu nunca usei, mas você pode usar o SAXBuilder da JDOM