This confirms that the problem class is on your CLASSPATH.
However, putting servlet.jar on the CLASSPATH is not a
good solution.

Now servlet.jar can't see any classes in the
"TOMCAT_HOME/lib/common" classloader that it could
previously.  You've traded one symptom for different
symptoms which may be more difficult to diagnose.

The correct solution is to find the class on the
CLASSPATH that depends on servlet.jar and move
it off of the CLASSPATH to TOMCAT_HOME/lib/common,
TOMCAT_HOME/lib/apps, or the webapp's WEB-INF/lib
(assuming the class is in a jar).  Which directory is
best depends on the nature of the class.  I would
recommend trying WEB-INF/lib first.  This should be
doable since the webapp is working on other servers.

Unfortunately, I know of no simple way to find the
offending class, other than trial and error.

Larry

> -----Original Message-----
> From: Daniel Lemberg [mailto:[EMAIL PROTECTED]] 
> Sent: Tuesday, February 04, 2003 4:41 PM
> To: 'Tomcat Users List'
> Subject: RE: Tomcat 3.3.1 HttpSessionBindingListener not found
> 
> 
> Yep, adding servlet.jar to the classpath did the trick!  Thanks!
> 
> -----Original Message-----
> From: Larry Isaacs [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, February 04, 2003 3:14 PM
> To: Tomcat Users List
> Subject: RE: Tomcat 3.3.1 HttpSessionBindingListener not found
> 
> 
> This means that the class that Class.ForName() is trying
> to load has a dependency chain that includes a class
> that has a dependency on HttpSessionBindingListener, i.e.
> servlet.jar.
> 
> That class with the servlet.jar dependency is being found
> in a classloader that is below (i.e. a parent,) of the
> "TOMCAT_HOME/lib/common" classloader that contains
> servlet.jar.  Thus it can't see servlet.jar classes.
> 
> This class is likely to be in the CLASSPATH or extension
> directory.  If you haven't messed with the CLASSPATH, then
> check the extensions directory.  It is probably likely
> that this class is a duplicate of one that is located
> in the proper location.  The systems that work don't
> have this duplicate in the wrong location.
> 
> HTH.
> 
> Cheers,
> Larry
> 
> 
> > -----Original Message-----
> > From: Daniel Lemberg [mailto:[EMAIL PROTECTED]] 
> > Sent: Tuesday, February 04, 2003 2:45 PM
> > To: '[EMAIL PROTECTED]'
> > Subject: Tomcat 3.3.1 HttpSessionBindingListener not found
> > 
> > 
> > Hey, I'm running into an odd problem on Tomcat 3.3.1 on Sun, 
> > and am hoping
> > somone could help shed some light on the problem.
> > 
> > I have a few classes in a JAR file that implement
> > HttpSessionBindingListener.
> > 
> > In my test environment on my PC (Tomcat 3.3.1a for Windows), 
> > the classes
> > work fine. But on one of our customer's server (which might 
> > be configured
> > wrong), the classes throw:
> > 
> > java.lang.NoClassDefFoundError:
> > javax/servlet/http/HttpSessionBindingListener
> > 
> > whenever anything tries to load them (which we do via 
> > Class.ForName()).
> > 
> > Note that we have some 40 other customers that don't have 
> > this problem, but
> > none of them that I know of are using Tomcat.
> > 
> > Does anyone have any idea how this could happen? How could 
> > Tomcat not know
> > what a HttpSessionBindingListener is? I'm about stumped. 
> > 
> > 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to