求助: request.getRequestDispatcher().forward(request, response) 无法跳转
小弟问个菜鸟问题:
在Servlet里用request.getRequestDispatcher().forward(request, response) 无法跳转到指定的页面。
这是一个用于登录验证用的,但是密码和用户名都输入正确时,还是跳转到 Login.jsp,希望高手帮忙解决问题
源文件:
package ernst.MVCBBS.control;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@SuppressWarnings("serial")
public class LoginServlet extends HttpServlet {
/**
* Constructor of the object.
*/
public LoginServlet() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
if(action != null && action.equals("login")) {
String userName = request.getParameter("userName");
String userPwd = request.getParameter("userPwd");
if(userName == null || !userName.equals("admin")) {
request.setAttribute("error", "NOUSER");
request.getRequestDispatcher("Login.jsp").forward(request, response);
} else if(userPwd == null || !userPwd.equals("admin")) {
request.setAttribute("error", "PWD");
request.getRequestDispatcher("Login.jsp").forward(request, response);
} else {
request.getSession().setAttribute("user", userName);
request.getRequestDispatcher("ArticleTreeShow.jsp").forward(request, response);
}
}
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occurs
*/
public void init() throws ServletException {
// Put your code here
}
}
在Servlet里用request.getRequestDispatcher().forward(request, response) 无法跳转到指定的页面。
这是一个用于登录验证用的,但是密码和用户名都输入正确时,还是跳转到 Login.jsp,希望高手帮忙解决问题
源文件:
package ernst.MVCBBS.control;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@SuppressWarnings("serial")
public class LoginServlet extends HttpServlet {
/**
* Constructor of the object.
*/
public LoginServlet() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String action = request.getParameter("action");
if(action != null && action.equals("login")) {
String userName = request.getParameter("userName");
String userPwd = request.getParameter("userPwd");
if(userName == null || !userName.equals("admin")) {
request.setAttribute("error", "NOUSER");
request.getRequestDispatcher("Login.jsp").forward(request, response);
} else if(userPwd == null || !userPwd.equals("admin")) {
request.setAttribute("error", "PWD");
request.getRequestDispatcher("Login.jsp").forward(request, response);
} else {
request.getSession().setAttribute("user", userName);
request.getRequestDispatcher("ArticleTreeShow.jsp").forward(request, response);
}
}
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occurs
*/
public void init() throws ServletException {
// Put your code here
}
}
...全文
相关推荐
jsp跳转getRequestDispatcher()和sendRedirect()的区别
主要介绍了jsp跳转getRequestDispatcher()和sendRedirect()的区别,需要的朋友可以参考下
response_sendRedirect和request_getRequestDispatcher()_forward的区别.
跳转方式 http://localhost:8080/Test应用 运用forward方法只能重定向到同一个Web应用程序中的一个资源。而sendRedirect方法可以让你重定向到任何URL。 表单form的action="/uu";sendRedirect("/uu");表示相对于服务器根路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/uu); Forward代码中的"/uu"则代表相对与WEB应用的路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/Test/uu);
JSP request.setAttribute()详解及实例
主要介绍了 javascript request.setAttribute()详解及实例的相关资料,需要的朋友可以参考下
五种JSP页面跳转方法详解
五种JSP页面跳转方法详解,详细的很
jsp跳转getRequestDispatcher()和sendRedirect()的区别.docx
jsp跳转getRequestDispatcher()和sendRedirect()的区别.docx


Web 开发
