tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Costin Manolache <>
Subject Re: WAR File problem - Don't cut final version until fixe
Date Tue, 04 Apr 2000 19:52:33 GMT
Jonathan Pierce wrote:

> The directory is just a cache for the war file. If the war file timestamp has
> changed, why not just delete the entire correcsponding directory and replace it
> with the newly expanded contents of the new war file. We don't need to merge the
> war file contents with the contents of the directory, just assume that if the
> war file has changed since it was last expanded, then replace the entire
> directory with its contents.

Wrong - the directory is the _internal_ tomcat representation of a web application.

The WAR file is the file format used for deployment.

There is no cache for the war file - as soon as you deploy the web application,
will use it's own internal representation.

It was never intended to be a cache - and the "autoexpand" is just a helper and
a cheap substitute for a real deployement tool.

The current definition is:
- deploy tool : cp file.war to webapps
- un-deploy : rm -rf  directory
- update: un-deploy then deploy again
And you have the option to edit the files in-place.

At least that's what I implemented in tomcat.

> I don't think we should put logic in the deploy tool if it isn't necessary since
> people may want the option of using their own deploy tool that may not share the
> same design.

The deploy tool is dependent of the server - it has to take a WAR file as input
and generate the server internal representation as output.

For tomcat that means generate apache, iis and nes config files, create the
right directory structure, etc. Any server is free to choose it's own internal
representation, have it's onw directory structure, etc.

The webapps/ directory is tomcat specific, and we tried to make "manual" deployment


When you upgrade an application you need to make a number of complex operations,
like restarting Apache, generating config files, etc. It's not just "expand a war


View raw message