Questo problema si è verificato di recente. Ho usato la formica per eoni e so che avrei potuto "risolvere" questo problema, ma ho pensato di chiedertelo: non offre una soluzione elegante per questo caso?Ant: come i valori delle proprietà xml-escape durante la copia di file xml con "filtering"
Problema
Quando uso formica per copiare i file XML e "popolare i valori" tramite l'attributo "filtraggio", come posso fare scappare automaticamente commerciali (e altri XML 'caratteri speciali')?
Contesto
Piuttosto che avere/esecutori a mano modificare tutti i vari file di configurazione specifici di applicazione-server installatori, li abbiamo modificare un file '' build.properties nella directory principale della nostra applicazione. copie Ant una versione pre-configurata 'fonte' del file in una directory 'target', mentre il popolamento valori dalle proprietà file
1) Build.properties ha questo valore:
JDBC_PASSWORD=smith&wesson
2) "Source "file di configurazione ha questo elemento:
<local-tx-datasource>
...
<password>@[email protected]</password>
...
</local-tx-datasource>
3) copie Ant i file XML dalla directory di configurazione 'fonte' e popola il 'JDBC_PASSWORD' (tra gli altri le proprietà) con l'attributo 'filtraggio':
<copy todir="${appserver.home.dir}" filtering="yes">
<fileset dir="${appserver.conf.dir}">
<include name="**/*.xml"/>
</fileset>
</copy>
4) Dato che la proprietà ha una e commerciale, il file XML risultante 'target' non è valido. (Il '&' dovrebbe essere '& amp;')
<local-tx-datasource>
...
<password>smith&wesson</password>
...
</local-tx-datasource>
Risultato desiderato
invece di 4, vorrei questo:
<local-tx-datasource>
...
<password>smith&wesson</password>
...
</local-tx-datasource>
Ulteriori
Devo preoccuparmi dell'intero cast di charac ters ', cioè minore di, maggiore di, ecc., nonché la e commerciale.
Grazie in anticipo
Ho lo stesso problema. Come hai risolto il tuo? Hai scritto un codificatore personalizzato? Grazie. –