将请求从servlet转发到jsp

2024-01-06

我有一个小型应用程序(HTML 表单、作为控制器的 servlet 和 jsp 文件),我尝试弄清楚为什么我无法将请求从 servlet 转发到 jsp 文件。

问题是从 html 提交后,显示“HTTP Status 404”

申请流程:

  1. 从 html 提交。
  2. 控制器从 html 中获取名称。
  3. 控制器应该将请求移动到 jsp 文件。

thanks!

项目层次结构:http://s23.postimg.org/kgt7r7lwb/Capture.jpg http://s23.postimg.org/kgt7r7lwb/Capture.jpg

主要.html:

<html>
<title>Coupons categories</title>
<body>
  <h1 align="center">Coupons categories</h1>
  <form method="GET" action="Controller">
    Select category 
    Type:
    <select name="type" size=1>
      <option value="restaurants">Restaurants</option>
      <option value="electrics">Electrics</option>
      <option value="hotels">Hotels</option>
    </select>
    <br><br>
      <input type="Submit">
   </form>
</body>
<html>

控制器.java:

   @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //PrintWriter out = response.getWriter();
        //out.write(request.getPathInfo());

        String path = request.getParameter("type");
        if(path.equals("electrics"))
        {
            request.setAttribute("timestamp", new Date());
            RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/view/electrics.jsp");
            dispatcher.forward(request, response);
        }
        else if(path.equals("hotels"))
        {
            request.setAttribute("timestamp", new Date());
            RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/view/hotels.jsp");
            dispatcher.forward(request, response);          
        }
        else if(path.equals("restaurants"))
        {
            request.setAttribute("timestamp", new Date());
            RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/view/restaurants.jsp");
            dispatcher.forward(request, response);          
        }
    }

电气.jsp:

<%@ page language="java" contentType="text/html; charset=windows-1255"
    pageEncoding="windows-1255"%>
<!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=windows-1255">
<title>Insert title here</title>
</head>
<body>
    <h2>products list...</h2>
    <%
    Object ob = request.getAttribute("timestamp");
    out.println(ob);
    %>
</body>
</html>

web.xml:

    <description>
      CouponsServer
    </description>
    <display-name>Controller for CouponsServer</display-name>

    <servlet>
      <servlet-name>Controller</servlet-name>
      <servlet-class>uses.server.Controller</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>Controller</servlet-name>
        <url-pattern>/Controller</url-pattern>
    </servlet-mapping>


</web-app>

更新: 问题可能出在controller.java中。 当我尝试以下代码时,我得到 HTTP 状态 500。 protected void doGet(HttpServletRequest 请求, HttpServletResponse 响应) 抛出 ServletException, IOException {

        PrintWriter out = response.getWriter();
        out.write(request.getPathInfo());
    }

尝试这个

 request.getRequestDispatcher("/view/electrics.jsp").forward(req,res);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将请求从servlet转发到jsp 的相关文章

随机推荐

  • 令人困惑的 typedef 涉及类作用域

    我正在阅读 C 项目的代码 它包含以下形式的一些代码 namespace ns class A class B struct C typedef ns A ns B type 有人可以解释一下它的含义吗typedef line type似乎
  • Angular 2 - 无法读取未定义的属性“AssetUrl”

    我是新来的angular2 and material design 我正在尝试将它们一起使用 I cloned this Material2 应用程序 https github com jelbourn material2 app 这是基于
  • 计算和验证第一个字节的时间 (TTFB)

    我得到了以下公式来测量第一个字节的时间 TTFB TTFB 到 DOM 就绪和页面加载 TTFB window performance timing responseStart window performance timing navig
  • Redux 减速器初始化相同的状态键

    我正在搞乱github 上的 最简单的 Redux 示例 https github com jackielii simplest redux example我添加了第二个减少 state count 的减速器 如果我在 switch cas
  • 如何用C#实现交互式决策树

    我需要允许用户通过在屏幕上显示的两个简单选项之间进行选择来选择自己的路径 以便进行下一组选择 直到他们到达其中一个结局 即应该实现这样的事情 我尝试过以下代码 但每次只评估左侧 我想知道如何才能达到如上图所示的结果 覆盖所有分支 例如 如果
  • AbstractNum 和 NumberingInstance 的用途

    1 我在想他的目的AbstractNum是重用编号格式并且NumberingInstance是创建新列表 从 1 重新启动 但我注意到 如果在 1 处重新启动列表的第二个实例 openxml 文档将具有该列表的精确副本AbstractNum
  • Resharper 总是建议我制作 const string 而不是 string

    哪一个好 string sQuery SELECT FROM table or const string sQuery SELECT FROM table 为什么 resharper 总是建议我这样做 后者更好 这意味着 这不是实例变量 因
  • AIX 上的 proftpd 静态编译

    我想在 AIX 上编译 proftpd 使其可以部署在其他服务器上 而不必在每台服务器上重新安装所有 gnu lib 库 我已经设法动态编译它 但我无法使用该选项来编译它 LDFLAG Wl static 就像 Proftpd 官方文档中的
  • 如何在 Debian Wheezy armel 上安装 g++ 4.9?

    我的 Debian 7 armel 嵌入式系统目前有 g 4 6 我想升级到 g 4 9 以使用新的 C 11 功能 我怎么做 我当前的sources list内容是 deb http security debian org wheezy
  • Spreadsheet_excel_reader 日期格式[重复]

    这个问题在这里已经有答案了 我正在使用电子表格 excel reader 读取 php 上的 xls 文件并将数据插入到 oracle 数据库中 我正在使用下面的代码 filename test xls reader new Spreads
  • EF 3.x 中最简单的分组依据失败,并显示“不支持客户端分组依据”

    目前正在使用 EF Core 版本 3 1 1 进行测试 当我搜索时 我找到了对此问题的引用 但我没有看到任何关于为什么会发生这种情况的明确答案 以及它是否是一个将被修复的错误或是否是预期的行为 这就像看起来一样简单 BatchReques
  • 通过 WordPress 管理员不断收到此控制台错误

    未捕获 承诺中 message 侦听器通过 r 指示异步响应 在收到响应之前关闭了通道 消息 侦听器通过返回 true 指示异步响应 但消息通道在响应之前关闭收到 原型 对象 Promise then 异步 匿名 geolocation s
  • 从代码隐藏访问 asp:content

    好吧 我是一名经验丰富的 Web 开发人员 但有时 ASP Net 会欺骗我 我在 asp net 中有一个母版页 然后我有一个基于该母版页 home aspx 的页面 现在在 home aspx cs 中 我想访问 asp content
  • 停止自动隐藏托盘通知图标

    每当我的 Windows 窗体应用程序第一次运行时 托盘图标保持可见状态大约不到一分钟 然后自动隐藏 我该怎么做才能让它粘住而不是自动隐藏 我尝试搜索 但找不到任何有用的信息 看来这是 Windows 7 及更高版本的默认行为 我想知道是否
  • 如何在 Amazon EC2 Ubuntu 服务器上设置 GUI

    我正在使用亚马逊 Ubuntu EC2 实例 它只有一个命令行界面 我想为该服务器设置 UI 以使用远程桌面工具进行访问 有没有办法将GUI应用到EC2实例 这是可以做到的 以下是设置 GUI 的步骤 创建新用户 使用密码登录 sudo u
  • 使用Java注解的ViewResolver

    是否有可能在Spring http en wikipedia org wiki Spring Framework3 1 1 使用Java注释配置视图解析器 我已经使用 Java 注释完成了所有配置 但我陷入困境视图解析器 Code pack
  • 如何使用 BigDecimal 显示始终保留 2 位小数的数字?

    我在用大十进制以获得一些价格值 需求是这样的 无论我们从数据库中获取什么值 显示的值都应该有2个小数点 Eg 获取的值为 1 应显示为 1 00获取的值为 1 7823 应显示为 1 78 我在用setScale 2 BigDecimal
  • 如何在javascript中匹配由已知前缀和后缀包围的子字符串

    给定一个字符串 例如 示例字符串与要匹配的预期嵌套字符串 如何隔离仅知道其前缀和后缀的子字符串 例如之间intended and to match 使用正则表达式非捕获括号 https developer mozilla org en US
  • 如何检测 UIImage 中的 alpha 像素

    如果用户触摸位于 alpha 像素 透明 上 我尝试将 hitTest 传递给我下面的元素 我不知道的是如何确定 CGPoint 20 20 上的像素是否是完整的 alpha iOS 4 谢谢 奥 可以获取像素RGBA 然后获取alpha
  • 将请求从servlet转发到jsp

    我有一个小型应用程序 HTML 表单 作为控制器的 servlet 和 jsp 文件 我尝试弄清楚为什么我无法将请求从 servlet 转发到 jsp 文件 问题是从 html 提交后 显示 HTTP Status 404 申请流程 从 h