我是在myeclipse上编写servlet程序,服务器配置正确,web.xml文件也进行了相关修改,可以进入tomcat管理页面,但是不知道应该如何在myeclipse上测试servlet
整个web项目如下图
web.xml源代码如下
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <display-name></display-name>
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>Hello</servlet-name>
    <servlet-class>servlet.Hello</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Hello</servlet-name>
    <url-pattern>/servlet</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>servlet源代码如下package servlet;//这是第一个servlet,使用实现servlet接口来开发import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Hello
{ //该函数用于初始化servlet(类似于类的构造函数)
//该函数只会被调用一次(当用户第一次访问该servlet时被调用)
public void init(ServletConfig parm1) throws ServletException {
// Put your code here
System.out.println("init it");
}  public ServletConfig getServletConfig(){
   return null;
  }
  
  //该函数用于处理业务逻辑
  //程序员应当把业务逻辑代码写在这里
  //当用户每访问一次该servlet的时候都会被调用
  //ServletRequest用于获得客户端(浏览器)的信息
  //ServletResponse用于向客户端返回信息
  public void service(ServletRequest req, ServletResponse res)throws ServletException,IOException{
   System.out.println("service it");
   //从res中得到PrintWriter
   PrintWriter pw=res.getWriter();
   pw.println("hello.word");
  
  }
  
  public String getServletInfo(){
   return "";
  }
  
  //销毁serv实例(释放内存)
  //reload;关闭tomcat;关机
  public void destroy() {
System.out.println("destroy");
}
}报错是404,如下图希望各位前辈能够指出哪里出了错误
servletmyeclipse报错

解决方案 »

  1.   


    改为:
    <servlet-mapping>
        <servlet-name>Hello</servlet-name>
        <url-pattern>/servlet/*</url-pattern>
      </servlet-mapping>
      

  2.   

    亲!你在web.xml中配置的 <url-pattern>/servlet</url-pattern>,所有在浏览器中访问时应该写成如下:
    http://localhost:JSPSERVLET1/servlet/servlet
      

  3.   

    楼主 你web.xml文件为什么要改 改了什么呢
    在你新建servlet之后MyEclipse是会自动把需要的配置追加到web.xml里的 楼主不会是自己改了吧 
     <servlet-mapping>
        <servlet-name>Hello</servlet-name>
        <url-pattern>/servlet</url-pattern>
      </servlet-mapping>
    这一段  在访问的时候用的就是 <url-pattern>这个节点内的内容 节点内第一个反斜线不要  “/”
    http://localhost:端口/项目名/url-pattern节点内的内容 这样能直接向这个servlet发送请求
      

  4.   

    路径是http://localhost:8080/JSPSERVLET1/servlet/你的servlet名字
      

  5.   

    成了,谢谢您!
    刚学jsp,让您见笑了
      

  6.   

     你的类应该继承HttpServlet--> public class Hello extends HttpServlet