Hi there,

I have created a context called /stest and I am able to execute
servlets, e.g. /stest/servlet/SomeServlet, from this context. However I
am unable to execute JSP pages, e.g. /stest/SomePage.jsp, from this
context. I get the following error:

javax.servlet.ServletException: sun/tools/javac/Main
        at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:399)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
        at org.apache.tomcat.core.Handler.service(Handler.java:286)
        at
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
        at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
        at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
        at
org.apache.tomcat.service.connector.Ajp13ConnectionHandler.processConnection(Ajp13ConnectionHandler.java:160)
        at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
        at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
        at java.lang.Thread.run(Thread.java:484)

Root cause: 

java.lang.NoClassDefFoundError: sun/tools/javac/Main
        at
org.apache.jasper.compiler.SunJavaCompiler.compile(SunJavaCompiler.java:128)
        at
org.apache.jasper.compiler.Compiler.compile(Compiler.java:245)
        at
org.apache.jasper.servlet.JspServlet.doLoadJSP(JspServlet.java:462)
        at
org.apache.jasper.servlet.JasperLoader12.loadJSP(JasperLoader12.java:146)
        at
org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:433)
        at
org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary(JspServlet.java:152)
        at
org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:164)
        at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
        at
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
        at org.apache.tomcat.core.Handler.service(Handler.java:286)
        at
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
        at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
        at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
        at
org.apache.tomcat.service.connector.Ajp13ConnectionHandler.processConnection(Ajp13ConnectionHandler.java:160)
        at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
        at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
        at java.lang.Thread.run(Thread.java:484)

This is my configuration:
- Apache 1.3.19
- Tomcat 3.2.1
- JBoss 2.1
- Red Hat Linux 6.2
- Sun JVM 1.3

Maybe something vital is missing from my classpath, but I have no idea
what it could be. Or maybe the JSP has to be in a particular location
within the context, though I find no mention of that in the Tomcat docs
or the Servlet 2.2 spec. Any help is appreciated. Thanks in advance.
-- 
Jason Wells
Web Architect
Xsilogy, Inc.
http://www.xsilogy.com/

Reply via email to