Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: converted to 1.6 markup

...

This page discusses the various ways you see Class Not Found errors or very similar errors. It is strongly advised you read the following topics:

  • Wiki MarkupClassloader HOWTO pages: \[http://tomcat.apache.org/tomcat-4.1-doc/class-loader-howto.html Tomcat 4.1\], \[http://tomcat.apache.org/tomcat-5.5-doc/class-loader-howto.html Tomcat 5.5\], \[http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html Tomcat 6.0\].
  • Wiki Markup\[http://marc.theaimsgroup.com/?t=104317529200004&r=1&w=2 Don't\] \[http://marc.theaimsgroup.com/?t=104380440100003&r=1&w=2 use\] \[http://marc.theaimsgroup.com/?t=96947656900002&r=1&w=2 packageless\] \[http://marc.theaimsgroup.com/?t=104491020100002&r=1&w=2 classes\] \[http://marc.theaimsgroup.com/?t=104265576200003&r=1&w=2 and\] \[http://marc.theaimsgroup.com/?t=104249748300001&r=1&w=2 declare\] \[http://marc.theaimsgroup.com/?t=102996950100003&r=1&w=2 all\] \[http://marc.theaimsgroup.com/?t=102922189400001&r=1&w=2 imported classes\]!
  • Wiki Markup\[http://marc.theaimsgroup.com/?l=tomcat-user&m=103843452413727&w=2 Another answer to a classloader issue\] \\

If you get a NoClassDefFoundError exception, the root cause might be the same as for a ClassNotFound exception.

Questions

...

  1. \[#Q1 Why is jsp:useBean is not working?\]unmigrated-wiki-markup
  2. \[#Q2 Why do I get java.lang.NoClassDefFoundError: javax/servlet/Filter?\]unmigrated-wiki-markup
  3. \[#Q3 Why do I get java.lang.NoClassDefFoundError: org/xml/sax/InputSource?\] \\

Answers

Anchor
Q1
Q1
*Why is

No Format
 jsp:useBean 

...

  • Your bean is packaged in a class.
  • You have fully qualified your class name (eg:
    No Format
     com.bar.package.MyClass 
    ) OR
  • You have imported your class into your jsp (eg:
    No Format
     <%@ pageimport="com.bar.package.MyClass"%> 
    )

Anchor
Q2
Q2
*Why do I get

No Format
 java.lang.NoClassDefFoundError: javax/servlet/Filter

...

You probably have servlet.jar floating around somewhere it shouldn't be. This really messes up the classloaders since Tomcat's classloaders don't act quite as normal as one expects (see links above). servlet.jar should only be found only once in $CATALINA_HOME/common/lib.

Anchor
Q3
Q3
*Why do I get

No Format
 java.lang.NoClassDefFoundError: org/xml/sax/InputSource 

...