You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "[ .--- --- .... -. / -... --- .-- . -. ]" <jo...@birthmachine.com> on 2001/06/26 09:38:51 UTC

Completely frustrated with NoClassDefFoundError...

  Environment:

  I've got Tomcat 3.2.2 under IIS 5 as an NT in-process with JavaService and
am using JDK1.3.

  I installed the JavaService with the "hotspot" option, rather than the
"classic" option.

  I compile everything under JBuilder 4 on another machine, also using
JDK1.3.

  Tried creating both a /streamer directory under webapps, and also putting
it in another directory and adding a context in server.xml.  Tomcat service
starts up and runs non-bean JSPs just fine.  However, anytime I try and use
a bean in a JSP [<jsp:useBean id="validator"  class="main.Validate"
scope="request" />], I get a 500 error.  The file
webapps/streamer/WEB-INF/classes/main/Validate.class DOES exist, the line
"package main;" is appropriately in the source code, and I've made sure both
the class declaraction and the methods in the bean are public.

  Strange thing is that I could have sworn this all worked when I tested
Tomcat out - perhaps this was before I installed JavaService?  Even
stranger, when I open up jasper.log, it says "Classpath according to the
servlet engine is: E:\tomcat\webapps\streamer\WEB-INF\classes" among other
things.  So, Tomcat's classpath seems right, my .class file in the right
package, I've rechecked case-sensitivity at least two dozen times, why can't
it see this or any other .class file?

  ANY help on this would be greatly appreciated, I'm tearing my limbs off
here.

  Full error message underneath my signature.

  Thanks in advance.
  - John


---
Error: 500
Location: /streamer/authenticate.jsp
Internal Servlet Error:

javax.servlet.ServletException: main/Validate$5
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:508)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)
	at org.apache.tomcat.core.Handler.service(Handler.java:287)
	at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
	at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
7)
	at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
	at
org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnection
(Ajp12ConnectionHandler.java:166)
	at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
	at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
	at java.lang.Thread.run(Thread.java:484)

Root cause:
java.lang.NoClassDefFoundError: main/Validate$5
	at java.lang.Class.newInstance0(Native Method)
	at java.lang.Class.newInstance(Class.java:237)
	at java.beans.Beans.instantiate(Beans.java:207)
	at java.beans.Beans.instantiate(Beans.java:51)
	at
_0002fauthenticate_0002ejspauthenticate_jsp_7._jspService(_0002fauthenticate
_0002ejspauthenticate_jsp_7.java:72)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.jasper.servlet.JspServlet$JspCountedServlet.service(JspServlet.ja
va:130)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
va:282)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:429)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:500)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:405)
	at org.apache.tomcat.core.Handler.service(Handler.java:287)
	at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
	at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
7)
	at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
	at
org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnection
(Ajp12ConnectionHandler.java:166)
	at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
	at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
	at java.lang.Thread.run(Thread.java:484)