package paketti1;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Eka1 extends HttpServlet {
public void doGet ( HttpServletRequest request,
HttpServletResponse response )
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title>He llo, Cruel
World!</title></head>");
out.println("<body>");
out.println("<h1>Hello, Cruel World !</h1>");
out.println("This is my last servlet.");
out.println("</body>");
}// end doGet
}///:~
This is what I have added to server.xml:
<Context path="/eka" docBase="eka" debug="0" reloadable="true" />
my web.xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<servlet>
<servlet-name>Eka1</servlet-name>
<servlet-class>paketti1.Eka1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Eka1</servlet-name>
<url-pattern>/Eka1</url-pattern>
</servlet-mapping>
</web-app>
My class file is here:
/usr/local/jakarta-tomcat-4.1.31/webapps/eka/WEB-INF/classes/paketti1
I put this to address bar http://localhost:8080/eka/Eka1
and I received an error message:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented
it from fulfilling this request.
exception
javax.servlet.ServletException: Wrapper cannot find servlet class
paketti1.Eka1 or a class it depends on
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:844)
at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:163)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:595)
root cause
java.lang.ClassNotFoundException: paketti1.Eka1
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1407)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1252)
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:838)
at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:163)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:595)
Apache Tomcat/4.1.31
What have I done wrong?
Regars Lasse
====>>> <url-pattern>/Eka1</url-pattern>
> </servlet-mapping>
>
> </web-app>
>
> My class file is here:
> /usr/local/jakarta-tomcat-4.1.31/webapps/eka/WEB-INF/classes/paketti1
>
> I put this to address bar http://localhost:8080/eka/Eka1
try
http://localhost:8080/Eka1
Greger
> and I received an error message:
>
> HTTP Status 500 -
>
> type Exception report
>
> message
>
> description The server encountered an internal error () that prevented
> it from fulfilling this request.
>
> exception
>
> javax.servlet.ServletException: Wrapper cannot find servlet class
> paketti1.Eka1 or a class it depends on
> at
>
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:844)
> at
>
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
> at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:163)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
> at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
> at
>
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
> at
> org.apache.coyote.http11.Http11Protoco
$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
> at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
> at
> org.apache.tomcat.util.threads.ThreadPoo
$ControlRunnable.run(ThreadPool.java:683)
> at java.lang.Thread.run(Thread.java:595)
>
> root cause
>
> java.lang.ClassNotFoundException: paketti1.Eka1
> at
>
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1407)
> at
>
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1252)
> at
>
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:838)
> at
>
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
> at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:163)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
> at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
> at
>
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
> at
> org.apache.catalina.core.StandardPipelin
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
> at
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
> at
> org.apache.coyote.http11.Http11Protoco
$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
> at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
> at
> org.apache.tomcat.util.threads.ThreadPoo
$ControlRunnable.run(ThreadPool.java:683)
> at java.lang.Thread.run(Thread.java:595)
>
> Apache Tomcat/4.1.31
>
> What have I done wrong?
> Regars Lasse
--
QxRSSReader v1.2.6a released (30-06-2006)
http://www.gregerhaga.net/
There are no stupid questions, only stupid answers.
type Status report
message /Eka1
description The requested resource (/Eka1) is not available.
Apache Tomcat/4.1.31
Greger kirjoitti:
Pretty much everything seems ok.
>The code builds ok:
>
>package paketti1;
>import java.io.*;
>import javax.servlet.*;
>import javax.servlet.http.*;
>
>public class Eka1 extends HttpServlet {
I suppose the generated class file is named Eka1.class (note the capital
E in the file name)?
>This is what I have added to server.xml:
><Context path="/eka" docBase="eka" debug="0" reloadable="true" />
Looks good. You could try increasing the debug level, though.
>My class file is here:
>/usr/local/jakarta-tomcat-4.1.31/webapps/eka/WEB-INF/classes/paketti1
Seems correct. Does the Tomcat runtime account (so, the user account
under which you're running the tomcat processes) have at least read
access to everything within webapps/eka?
>javax.servlet.ServletException: Wrapper cannot find servlet class
>paketti1.Eka1 or a class it depends on
... I wonder where/why this happens. The error message is clear, at
least.
--
Wolf a.k.a. Juha Laiho Espoo, Finland
(GC 3.0) GIT d- s+: a C++ ULSH++++$ P++@ L+++ E- W+$@ N++ !K w !O !M V
PS(+) PE Y+ PGP(+) t- 5 !X R !tv b+ !DI D G e+ h---- r+++ y++++
"...cancel my subscription to the resurrection!" (Jim Morrison)