I've noticed some problems (and differences between our Tomcat and Jetty
assemblies) when attempting to deploy the same application more than
once without a plan (hence using a generated version). What are the
expected results when this is done either by accident or deliberately to
install a newer version of an application? My thinking is that we
should do 1 of 2 things: 1) warn the user that they are attempting to
deploy another version and require some type of confirmation before
proceeding. 2) deploy so long as it is a newer version and ensure
that the newest version is the one that we start/run. I assume that if
it is an older version we should always fail the deploy and warn the
user but I guess that's just a matter of opinion as well. I haven't
tried this scenario but my guess is that we don't currently do any
version checking at all and would get the same results that I'm seeing
with newer versions.
Here is what I'm observing:
Jetty:
- The second deploy succeeds without error. All instances of the
deployed application are marked as "running" when viewed either in the
web console of via the list-modules command and all share the same url.
It's not clear to me which instance of the application is actually
servicing the requests. Both the command line and the web console
deploy result in messages indicating that the application was
successfully deployed.
Tomcat:
- The second deploy fails with a NPE on the server. I've opened
http://issues.apache.org/jira/browse/GERONIMO-1700 for this problem.
When doing the deploy from the command line, a number of exceptions are
displayed to the user (life-cycle exception, Illegal arg exception on
doStart, etc...). When doing the deployment from the web console the
typical success message is returned with no mention of any errors. The
net result in the system is that multiple instances of the application
are deployed but only the original is started and running.
Joe
--
Joe Bohn
joe.bohn at earthlink.net
"He is no fool who gives what he cannot keep, to gain what he cannot
lose." -- Jim Elliot