Il cliente desidera modificare i file .properties impacchettati nel nostro file WAR

5

Ho un cliente che vuole la possibilità di modificare i file .properties impacchettati nel file WAR delle applicazioni Web in modo che abbiano il controllo per modificare gli ambienti alle impostazioni. Ospiteranno questo sito sui loro server, quindi non posso dire di incolparli, ma non sono sicuro di quale sia il percorso migliore.

Ritengo che qualsiasi amministratore di un server di applicazioni Java EE debba sapere come eseguire il drill nel pacchetto WAR con uno strumento di zip e trovare e modificare i file di proprietà stessi. Non sono sicuro che sia noto o meno.

In genere ho sempre impacchettato i miei artefatti di build con i file di proprietà appropriati per un dato ambiente, ma questo è un caso strano in cui costruiamo la WAR e la consegniamo al cliente. Potrei provare a mantenere i file di proprietà esterni da WAR, ma poi diventa disordinato a causa dei problemi del classloader (classloader di JBoss, classloader Tomcat, ecc ...)

Penso che per comodità conserviamo i file delle proprietà per gli ambienti THEIR e li modifichiamo e li costruiamo sulle loro richieste. Il mio manager ama questa idea perché ci tiene in controllo ma al cliente non piace.

Che cosa faresti?

    
posta maple_shaft 13.07.2011 - 16:56
fonte

3 risposte

7

D: Cosa possono cambiare le proprietà?

Direi che il cliente dovrebbe essere in grado di cambiare le proprietà quando vuole, pagano la flessibilità dopo tutto, giusto?

In una WAR in esecuzione

La modifica di un file di proprietà all'interno di un file WAR in esecuzione è potenzialmente cattiva in quanto alcuni contenitori Web potrebbero vederlo come una ridistribuzione dell'intero file WAR (e sappiamo tutti che l'implementazione di file WAR a caldo può causare perdite di memoria e altri problemi sconosciuti ).

Sul CLASSPATH

Configurare la tua applicazione web per leggere un file delle proprietà da una posizione comune non dovrebbe essere troppo difficile (specialmente se vai per il file delle proprietà nella stessa directory dell'approccio dei file WAR)

Directory esplosa / funzionante

La maggior parte dei server web / app ha un'area esplosa o funzionante in cui la versione corrente dell'app sta facendo il suo dovere. Potrebbe essere possibile cambiare la proprietà in quella versione del file delle proprietà. Non sto dicendo che questo è il modo migliore per fare le cose, ma potresti

Che ne dici di creare un'interfaccia utente?

Sembra che queste proprietà potrebbero essere funzioni aziendali o di amministrazione. Quindi costruisci una bella interfaccia utente per gestire questo, nessuna modifica manuale dei file delle proprietà! Si potrebbe anche allontanarsi dalla memorizzazione di questa configurazione in un file di proprietà del tutto ...

HTH!

    
risposta data 13.07.2011 - 17:08
fonte
4

In generale, direi al cliente che se cambiano il file delle proprietà dopo la distribuzione, se ne stanno andando da soli se qualcosa va storto.

Se si tratta di una modifica una tantum, forse puoi guidarli attraverso di essa e sarà OK. Se sembra che vogliano farlo regolarmente, forse vale la pena aggiungere qualche tipo di pagina di amministrazione o di utilità per consentire loro di cambiare le proprietà da soli.

    
risposta data 13.07.2011 - 17:03
fonte
0

Se i dati nel file .properties devono cambiare spesso, direi che sono dati validi per inserire un database in modo che i file binari non debbano essere modificati.

    
risposta data 19.09.2014 - 18:03
fonte

Leggi altre domande sui tag