兔橘长啊 2019-11-20 17:45 采纳率: 0%
浏览 4685

配置web.xml后显示HTTP Status 404 – 未找到

实现通过表单向servlet中传送数据,配置webxml后一直显示HHTP404,但我把添加的配置内容删掉后反而可以运行了

web.xml配置:

<servlet>
    <servlet-name>ComputeBill</servlet-name>
    <servlet-class>myservlet.ComputeBill</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>ComputeBill</servlet-name>
    <url-pattern>/ComputeBill</url-pattern>
</servlet-mapping>

图片说明

图片说明

jsp代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>利用表单给servlet传送数据</title>
</head>
<body>
<form action="ComputeBill"  method="post">
输入账单:<br>
<textarea name='billMess' rows="5" cols="30">
</textarea>
<br>
<input type=submit value="提交">
</form>
</body>
</html>

servlet代码(省略导包):


public class ComputeBill extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#HttpServlet()
     */
    public ComputeBill() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see Servlet#init(ServletConfig)
     */
    public void init(ServletConfig config) throws ServletException {
        // TODO Auto-generated method stub
        super.init(config);
    }

    /**
     * @see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
     */
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        //1、设置编码格式
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=UTF-8");
        //2、利用printwriter类输出流声明out对象,利用response对象调用getwriter方法获取一个输出流,利用out对象调用print方法
        PrintWriter out=response.getWriter();
        out.print("<html><body bgcolor=yellow>");
        //3、通过request对象获取表单中文本区的内容送给str
        String str=request.getParameter("billMess");
        if(str==null||str.length()==0)
            return;
        String [] price=str.split("[^0123456789.]+");
        double sum=0;
        try
        {
            for(int i=0;i<price.length;i++)
            {
                if(price[i].length()>=1)
                    sum+=Double.parseDouble(price[i]);
            }
        }
        catch(NumberFormatException e){out.print(e);}
        out.print(str+"<br>的消费额:"+sum+"元");
        out.print("</body></html>");


    }
  • 写回答

1条回答

  • 毕小宝 博客专家认证 2019-11-20 18:10
    关注

    可能是你添加的 Servlet 类没有成功发布到项目中,导致项目找不到 Servlet 。

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)