axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dejan Milošević <>
Subject RE: Re[2]: jars locked forever
Date Tue, 26 Dec 2006 14:49:21 GMT
With auto deploy its even worse. Tomcat at first undeploys the app, but
since it cannot delete the jars during undeployment, they apear to be
deployed when autodeploy mechanism rereads the webapps folder, so
application is listed as 'running' again after a few seconds! Application is
damaged (web.xml, all the JSPs, images, etc. are deleted) so that it cannot
be used but jars remain! Of course that jars are locked by classloader, but
I don't know how. When I would want to make such a webapp that makes tomcat
lock a jar even after undeployment I wouldn't know how.


I cannot believe that this is not a bug and that I'm the only one that has a
problem with it.


-----Original Message-----
From: Ivan Latysh [] 
Sent: Monday, December 25, 2006 6:33 PM
Subject: Re[2]: jars locked forever


Hello Dejan,


Monday, December 25, 2006, 11:50:29 AM, you wrote:


> Thanx for the quick reply, but the bug that I pointed remains. I know how
to undeploy a regular webapp from Tomcat

> (or WebSphere), but when I try the same method on the axis2 webapp all the
jars remain locked until I restart Tomcat

> (the same with WebSphere). Application seems to be undeployed, but I
cannot delete files from the file system

> (windows) until web server is stopped. And I tried it with the clean
sample war that ant builds from axis2-1.1 distribution (webapp\build.xml),
without any of my jars!

To be precise, jars are locked by classloader not by Axis (or any other

I would suggest you to do a small test. Launch Tomcat without your
application, and make sure that auto deploy is on,

now add your application and wait until tomcat load the classes, when you
application deployed check if it is working

fine, now you can un-deploy your application and you should be able to
update any jars.

If it will work for you it means that when you start Tomcat with your
application some of the classes has been picked up

by the Tomcat classloader, so you need to figure out the way around.

But you should remember that classloader resources are not recyclable, so
after a few dozen (or less) redeployment of

your application you may simply run out of the memory. Considering this, I
will not advice you to update application

without restarting container on production servers.



Best regards,





To unsubscribe, e-mail:

For additional commands, e-mail:

View raw message