On 12/17/10 3:01 AM, Pid wrote: > On 15/12/2010 15:37, Srikanth Konjarla wrote: >> >> >> On 12/15/10 7:13 AM, Pid wrote: >>> On 15/12/2010 02:40, Srikanth Konjarla wrote: >>>> I could catch Axis threadlocals from the app to clean up. However, I >>>> have a question wrt following tomcat's log at the time of undeploy of >>>> app. The message suggests that it is removing the same threadlocal >>>> twice. Is it because it was not removed in the first attempt? >>>> >>>> --------------------------------------------------------------------- >>>> ec 15, 2010 1:05:28 AM org.apache.catalina.loader.WebappClassLoader >>>> clearThreadLocalMap >>>> SEVERE: A web application created a ThreadLocal with key of type >>>> [java.lang.ThreadLocal] (value [java.lang.threadlo...@14213040]) and a >>>> value of type [org.apache.catalina.loader.WebappClassLoader] (value >>>> [WebappClassLoader >>>> delegate: false >>>> repositories: >>>> /WEB-INF/classes/ >>>> ----------> Parent Classloader: >>>> org.apache.catalina.loader.standardclassloa...@6ee3849c >>>> ]) but failed to remove it when the web application was stopped. To >>>> prevent a memory leak, the ThreadLocal has been forcibly removed. >>>> Dec 15, 2010 1:05:28 AM org.apache.catalina.loader.WebappClassLoader >>>> clearThreadLocalMap >>>> SEVERE: A web application created a ThreadLocal with key of type >>>> [java.lang.ThreadLocal] (value [java.lang.threadlo...@14213040]) and a >>>> value of type [org.apache.catalina.loader.WebappClassLoader] (value >>>> [WebappClassLoader >>>> delegate: false >>>> repositories: >>>> /WEB-INF/classes/ >>>> ----------> Parent Classloader: >>>> org.apache.catalina.loader.standardclassloa...@6ee3849c >>>> ]) but failed to remove it when the web application was stopped. To >>>> prevent a memory leak, the ThreadLocal has been forcibly removed. >>>> -------------------------------------------------------------------- >>> >>> I don't think this is from Axis, does your code check other sources? >> Right. This is not from Axis. This is from one of the components of the >> app. I am wondering why the threalocal is not cleared at first time? > > Are you generically clearing all ThreadLocals, or just Axis related ones? I am clearing ThreadLocals pertaining to Axis. Also, clearing all threadlocals from context listener during "destroy" process of the webapp.
> >> Or is it one each for "threadLocals" and "inheritedthreadLocals"? > > Yes, you need to clear them separately. Right. The code mimics tomcat's cleaning process that exists in "WebappClassLoader" class. Srikanth > > > p > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org