tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jacob Kjome <h...@visi.com>
Subject RE: Tomcat and hot code deployment
Date Tue, 22 Jun 2004 21:07:23 GMT
Quoting Ivan Jouikov <ivj@comcast.net>:

> Yes I am sure I am referring to WEB-INF.
> 
> See, one of my classes has its own static daemon running, and when I update
> that class's code, a new one gets loaded in, but the old one keeps running.
> 

Are you able to shut down the daemon thread at application shutdown?  If you can
get a handle to the thread, use a servlet context listener contextDestroyed()
method to do the shutdown.  The classloader can't be destroyed properly when a
daemon thread is still running within it.  I don't pretend to know the details
of the destruction of the WebappClassLoader, so I'll leave the specifics to
someone who knows better.

Jake

> -----Original Message-----
> From: Jacob Kjome [mailto:hoju@visi.com]
> Sent: Tuesday, June 22, 2004 3:48 AM
> To: Tomcat Users List
> Subject: Re: Tomcat and hot code deployment
> 
> At 10:37 PM 6/21/2004 -0700, you wrote:
> >Hey!
> >
> >As far as I understand, hot code deployment, is when you modify .class
> >inside /WEB-INF/classes, and tomcat reloads it,  correct?
> >
> >If so, is it true, that whenever it reloads it, the OLD instance of static
> >objects, threads, and properties stay alive, that is, tomcat doesn’t
> >destroy them?   Is that why many  developers don’t use hot code
> >deployment on production servers?  Because I’ve been trying to debug
> my
> >app, and I realized this pattern, and if I am correct, then my application
> >is bug-free.
> >
> 
> I haven't attempted to verify what you are saying, but it seems to me that
> if the classes containing static variables exist inside WEB-INF/lib or
> WEB-INF/classes, they should reflect any changes made to code as the
> WebappClassLoader is dumped and recreated upon reload.  Are you sure you
> aren't referencing static variables from classes existing in common/lib,
> common/classes, shared/lib, or shared/classes?  Those wouldn't be reloaded.
> 
> Jake
> 
> >Thanks
> >
> >---
> >Outgoing mail is certified Virus Free.
> >Checked by AVG anti-virus system (http://www.grisoft.com).
> >Version: 6.0.701 / Virus Database: 458 - Release Date: 07.06.2004
> >
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-user-help@jakarta.apache.org
> 
> ---
> Incoming mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.701 / Virus Database: 458 - Release Date: 07.06.2004
> 
> 
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.701 / Virus Database: 458 - Release Date: 07.06.2004
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-user-help@jakarta.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Mime
View raw message