giovedì, agosto 17, 2006

Resin 3: war deploy

Resin, come altri servlet engine, permette il deploy di un war, che il container si occupa di esplodere nella directory corrispondente.
Dal passaggio alla release 3.0.18 ho pero' notato che come comportamento di default, Resin, nel caso in cui il file web.xml fosse gia' presente (tipicamente nel rilascio di una nuova versione dell'applicativo in sostituzione della vecchia) preferiva mantenere la vecchia versione del file e non sovrascriverla con la nuova presente nel pacchetto war.
Ho tagliato la testa al toro aggiungendo queste poche righe di configurazione (che non sono standard JavaEE, ma sono proprietarie di Resin) nel file resin-web.xml (ma nulla vieta che possa essere fatta la stessa cosa intervenendo sul file resin.conf):

<web-app-deploy path="webapps">
<expand-cleanup-fileset>
<include>*</include>
</expand-cleanup-fileset>
</web-app-deploy>

Ho assegnato all'attributo path dell'element web-app-deploy il valore 'webapps' (che e', nella configurazione di default, il nome della directory contenente i war e gli applicativi esplosi), mentre ho detto, per mezzo di <expand-cleanup-fileset><include>*</include></expand-cleanup-fileset>, a Resin, di eliminare qualsiasi file preesistente al momento dell'esplosione del war.

Nessun commento: