Dear all,
I wrote a servlet "Test.java" which contains a
service(request,response) method, and it works properly. Then I want to write
another servlet "Handler.java" which extends the "Test" class, and in
Handler.java, I overrides the service(request,response) method. It was compiled
succesfully,but can not run. I use JBuilder to run my servlets, and it gives the
following error:
Error: 500 Location: /servlet/Handler
Internal Servlet
Error:java.lang.NullPointerException
at java.lang.ClassLoader.resolveClass0(Native Method) at java.lang.ClassLoader.resolveClass(ClassLoader.java:588) at org.apache.tomcat.loader.AdaptiveClassLoader.loadClass(AdaptiveClassLoader.java:430) at org.apache.tomcat.loader.AdaptiveServletLoader.loadClass(AdaptiveServletLoader.java:174) at org.apache.tomcat.core.ServletWrapper.loadServlet(ServletWrapper.java:265) at org.apache.tomcat.core.ServletWrapper.init(ServletWrapper.java:289) at org.apache.tomcat.core.Handler.service(Handler.java:254) at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:812) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:758) at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213) 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) Can anyone answer my question? Thanks a lot!
My Test.java:
import java.io.*;
import java.net.*; import java.text.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; public class Test extends HttpServlet {
public void service(HttpServletRequest
request, HttpServletResponse
response)
throws IOException,ServletException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<body>"); out.println("<head>"); out.println("<title>Hello World!</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Hello World!</h1>");
onMessage(request,response);
out.println("</body>"); out.println("</html>"); } public void onMessage(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException { PrintWriter out = response.getWriter(); out.println("<h1>onMessage?</h1>"); } } My Handler.java
import java.io.*;
import javax.servlet.*; import javax.servlet.http.*; public class EbXMLHandler extends EbTest {
public void service(HttpServletRequest
request, HttpServletResponse response)throws
IOException,ServletException
{ super.service(request,response); } } best regards!
Sincerely
Ying
|