代码之家  ›  专栏  ›  技术社区  ›  Teysz

如何更改HttpServlet Request.servletpath?

  •  0
  • Teysz  · 技术社区  · 12 年前

    我使用了几个JSP页面和一个servlet。

    Servlet doPost():

    String userPath = request.getServletPath();
    if (userPath.equals("/PageAdm")) {
         String username = request.getParameter("username");
         String password = request.getParameter("password");
         User userone = new User(username, password);
         request.setAttribute("user", user);
         RequestDispatcher view = request.getRequestDispatcher("view/Page.jsp");
         view.forward(request, response);
    } else if (userPath.equals("/Page")) {
         String username = request.getParameter("username");
         UsersService us = new UsersService();
         User user = us.getUserByUsername(username);
         request.setAttribute("user", user);
         RequestDispatcher view = request.getRequestDispatcher("view/UserNameEdit.jsp");
         view.forward(request, response);
    }
    

    登录时,我可以更改用户名,但当我提交表单(单击)进行更改时,servlet路径仍然是“/PageAdm”,但必须是“/Page”,这样我才能更改用户名。如何更改servlet路径,使其进入“/UserNameEdit”?

    1 回复  |  直到 12 年前
        1
  •  2
  •   stepanian    12 年前

    将操作属性添加到表单元素以指向正确的路径。

    <form action="<c:url value="/MyServletPath/Page"/>" method="post">