flow of website http://imageshack.com/a/img661/8053/64Mqxv.gif
我目前有index.html
- > LoginCtrl工作得很好。如果用户名和密码错误,代码会转发回index.html
页面,如果用户名和密码正确,则会转发到BuildRegistration.java
。
这是我无法弄清楚如何处理从servlet转发到servlet以构建带有表单的网页。我创建了一个带有表单的jsp页面,我可以转发到那个jsp,但是教授希望我转发到另一个servlet并让它构建网页和表单。
我无法在servlet上找到servlet交互的任何资源,因此非常感谢任何有关链接或解释的帮助。
LoginCtrl servlet:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
if (request.getParameter("userName").equals("schmitts") &&
request.getParameter("password").equals("pass")){
request.getRequestDispatcher("BuildRegistration.java").forward(request, response);
} else {
request.getRequestDispatcher("index.html").forward(request, response);
}
}
答案 0 :(得分:0)
传递给forward()
的是映射资源的路径(相对或绝对,在同一个webapp中)。
如果它是<webappRoot>/foo/bar
下的JSP,则路径为/foo/bar/theJsp.jsp
。如果它是一个servlet,那么它是使用web.xml文件的servlet-mapping
元素或@WebServlet
注释映射到的路径。如果您的servlet映射到/registration/build
,那么这就是您应该传递给forward()
的路径。