You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Gary Yang <yg...@yahoo.com> on 2000/03/09 23:26:04 UTC

Servlet Reload Problem

I am using the latest Tomcat (I checked out from CVS repository this
morning:-)). I have a servlet. When I start tomcat and touch the servlet
class, the reload function works fine. Howerver, after a while, maybe
one hour, if I touch again, the reload function will not work. And then
I delete the class file, but it still can be accessed on my
browser(restarted, without cache).

I've checked loader/AdaptiveClassLoader.java, and added
System.out.println(entry.origin.getPath()+"/"+entry.origin.getName());
after line 316 and recompiled. The problem occured again.
At begining, the servlet's class can be found in ClassCacheEntry,
and then disappeared after a while.

My platform is Redhat 6.1, Blackdown JDK 1.2.2 RC4 with SUNWJIT
Complier. Is that a JIT problem?



Re: Servlet Reload Problem

Posted by Gary Yang <yg...@yahoo.com>.
Gary Yang wrote:

> I am using the latest Tomcat (I checked out from CVS repository this
> morning:-)). I have a servlet. When I start tomcat and touch the servlet
> class, the reload function works fine. Howerver, after a while, maybe
> one hour, if I touch again, the reload function will not work. And then
> I delete the class file, but it still can be accessed on my
> browser(restarted, without cache).
>
> I've checked loader/AdaptiveClassLoader.java, and added
> System.out.println(entry.origin.getPath()+"/"+entry.origin.getName());
> after line 316 and recompiled. The problem occured again.
> At begining, the servlet's class can be found in ClassCacheEntry,
> and then disappeared after a while.
>
> My platform is Redhat 6.1, Blackdown JDK 1.2.2 RC4 with SUNWJIT
> Complier. Is that a JIT problem?
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org

I disabled JIT, and it happened again. That means, a servlet may be cached,
but not in
ClassCacheEntry, so can not be reloaded. It can still be accessed even you
delete the class file.