【发布时间】:2012-05-01 17:19:33
【问题描述】:
我有一个非常简单的登录 servlet,代码如下:
userName = request.getParameter("username");
password = request.getParameter("password");
if ("xxx".equals(userName) && "xxx".equals(password)) {
RequestDispatcher requestDisSecure = request
.getRequestDispatcher("VendorList_Secure.jsp");
requestDisSecure.forward(request, response);
}
if ("xxx".equals(userName) && "xxx".equals(password)) {
RequestDispatcher requestDisSecure = request
.getRequestDispatcher("VendorList_Secure.jsp");
requestDisSecure.forward(request, response);
}
if ("xxx".equals(userName) && "xxx".equals(password)) {
RequestDispatcher requestDisSecure = request
.getRequestDispatcher("VendorList_Secure.jsp");
requestDisSecure.forward(request, response);
}
if ("xxx".equals(userName) && "xxx".equals(password)) {
RequestDispatcher requestDisSecure = request
.getRequestDispatcher("VendorList_Secure.jsp");
requestDisSecure.forward(request, response);
} else {
/**
* Unauthenticated user
*/
RequestDispatcher requestDisUnSecure = request
.getRequestDispatcher("VendorLoginError.jsp");
requestDisUnSecure.forward(request, response);
}
我们从具有用户名和密码参数的 VendorLogin.jsp 得到这个 servlet 逻辑,如果登录正确,它会转发到 VendorList_Secure.jsp,但如果不是,它将转发到 VendorLoginError.jsp,但在输入新的用户名和密码并点击上述 servlet,我将用户名和密码参数都设为 null,而不是 servlet 中的新更新值!
我尝试了重定向,但效果相同
我知道我可以通过保护 web.xml 中的资源来更好地实现登录,但我想知道为什么这个简单的例子不起作用
那么我在这里做错了什么?
非常感谢
【问题讨论】: