有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java调度器。forward()生成HTTP 500

考虑层次结构:

enter image description here

我将JSP从WEB-INF移动到了src文件夹。但是,当我尝试dispatcher.forward()时,我得到:

HTTP Status 500 -

type Exception report

message

description The server encountered an internal error that prevented it from fulfilling this request.

exception

java.lang.NullPointerException
    controller.LoginPage.doPost(LoginPage.java:214)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.50 logs.

Apache Tomcat/7.0.50

指定的异常出现在以下行中:

 String addressPath = "/../view/admin/adminPage.jsp";
 RequestDispatcher dispatcher = request.getRequestDispatcher(addressPath);
 dispatcher.forward(request, response);

我如何修复路径

谢谢


共 (1) 个答案

  1. # 1 楼答案

    JSP位于源文件夹中这一事实似乎表明它将被放置在源文件夹中

    /WEB-INF/classes/view/admin/
    

    这真的不是什么地方

    String addressPath = "/../view/admin/adminPage.jsp";
    

    指的是什么

    如果Servlet容器无法返回给定路径的getRequestDispatcher返回null

    JSP不应该真正处于/WEB-INF/classes之下。把它们放在一个像/WEB-INF/jsp/view这样的专用文件夹中,并在那里访问它们

    然后,您可以使用

    String addressPath = "/WEB-INF/jsp/view/admin/adminPage.jsp";