You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by David Rees <dr...@ebetinc.com> on 2000/11/30 23:59:09 UTC
Tomcat 3.2 ClassCastException after servlet update on getAttribute
I also just tried this on Tomcat 3.2, same problem.
Again, here's the problem:
I have a form which posts to a jsp, which then instantiates a bean with the
data from the form, which then forwards the request to a servlet which does
a getAttribute to obtain then the bean data. It then forwards on again to
another jsp.
The problem occurs during development: Updating the servlet causes a
ClassCastException. Shutting down and restarting Tomcat makes the
ClassCastException go away.
This happens on Tomcat 3.1 and 3.2. It does not happen on the Tomcat 4.0 m4
build.
Should I post this issue to the -dev list? It seems like a Tomcat bug to
me.
-Dave
> Replying to my own message:
>
> I just downloaded and tried it under Tomcat 3.1 which showed the same
> problem. So at least this isn't a new bug. :-)
>
> I also tried Tomcat 4.0-m4 which works perfectly in for my test case.
>
> > I have a simple test case (which this was generated under) which I can
> > post to the list if anyone is interested.
> >
> > Is this a known bug? I haven't tried the same thing under Tomcat 3.1
> > yet, as I was under the impression that Tomcat 3.2beta was superior to
> > Tomcat 3.1.
>
RE: Tomcat 3.2 ClassCastException after servlet update on getAttribute
Posted by David Rees <dr...@ebetinc.com>.
Hi Craig,
> -----Original Message-----
> From: Craig R. McClanahan [mailto:Craig.McClanahan@eng.sun.com]
>
> David Rees wrote:
>
> > I also just tried this on Tomcat 3.2, same problem.
> >
> > Again, here's the problem:
> >
> > I have a form which posts to a jsp, which then instantiates a
> bean with the
> > data from the form, which then forwards the request to a
> servlet which does
> > a getAttribute to obtain then the bean data. It then forwards
> on again to
> > another jsp.
> >
> > The problem occurs during development: Updating the servlet causes a
> > ClassCastException. Shutting down and restarting Tomcat makes the
> > ClassCastException go away.
> >
> > This happens on Tomcat 3.1 and 3.2. It does not happen on the
> Tomcat 4.0 m4
> > build.
> >
> > Should I post this issue to the -dev list? It seems like a
> Tomcat bug to
> > me.
>
> You can if you want ... but there are fundamental architectural
> problems to the
> way that class reloading was done in 3.1 and 3.2. It would be a
> pretty major
> change to fix it.
Ah, so is this a known bug? I looked through the archive, but couldn't find
any reference to it. I would think that what I'm trying to do is pretty
common, I'm surprised it hasn't come up more often. Is there any known
workarounds besides restarting the server? It's a very strange bug, casting
the Bean to an object and running Class.forName() reports the right thing...
> Tomcat 4.0 uses a different strategy (pretty much based on what
> Apache JServ)
> did that seems to deal with class reloading in a much more robust
> manner (and
> with lower overhead).
Yeah, I noticed that 4.0 seems to be much quicker when it comes to compiling
and reloading things. I guess I could run the latest milestone build of
that to avoid this problem.
Thanks,
-Dave
Re: Tomcat 3.2 ClassCastException after servlet update on getAttribute
Posted by "Craig R. McClanahan" <Cr...@eng.sun.com>.
David Rees wrote:
> I also just tried this on Tomcat 3.2, same problem.
>
> Again, here's the problem:
>
> I have a form which posts to a jsp, which then instantiates a bean with the
> data from the form, which then forwards the request to a servlet which does
> a getAttribute to obtain then the bean data. It then forwards on again to
> another jsp.
>
> The problem occurs during development: Updating the servlet causes a
> ClassCastException. Shutting down and restarting Tomcat makes the
> ClassCastException go away.
>
> This happens on Tomcat 3.1 and 3.2. It does not happen on the Tomcat 4.0 m4
> build.
>
> Should I post this issue to the -dev list? It seems like a Tomcat bug to
> me.
>
You can if you want ... but there are fundamental architectural problems to the
way that class reloading was done in 3.1 and 3.2. It would be a pretty major
change to fix it.
Tomcat 4.0 uses a different strategy (pretty much based on what Apache JServ)
did that seems to deal with class reloading in a much more robust manner (and
with lower overhead).
>
> -Dave
Craig McClanahan