Class Not Found Issues
Preface
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:
Classloader HOWTO pages: [http://tomcat.apache.org/tomcat-4.1-doc/class-loader-howto.html Tomcat 4.1], [http://tomcat.apache.org/tomcat-5.0-doc/class-loader-howto.html Tomcat 5.0], [http://tomcat.apache.org/tomcat-5.5-doc/class-loader-howto.html Tomcat 5.5].
[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]!
[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
*Why is
jsp:useBean
is not working?*
Make sure:
- Your bean is packaged in a class.
- You have fully qualified your class name (eg:
) OR
com.bar.package.MyClass
- You have imported your class into your jsp (eg:
)
<%@ pageimport="com.bar.package.MyClass"%>
- Why do I get
*
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.
- Why do I get
?*
java.lang.NoClassDefFoundError: org/xml/sax/InputSource
You have conflicting XML api jar files in your classpath. Read the README or RELEASE-NOTES for more information.