Java 在转发或重定向表单参数后获取null
我有一个非常简单的登录servlet,代码如下:Java 在转发或重定向表单参数后获取null,java,http,jsp,servlets,Java,Http,Jsp,Servlets,我有一个非常简单的登录servlet,代码如下: userName = request.getParameter("username"); password = request.getParameter("password"); if ("xxx".equals(userName) && "xxx".equals(password)) { RequestDispatcher requestDisSecure = reque
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逻辑,它具有username和password参数,如果登录正确,它将很好地转发到VendorList_Secure.jsp,如果不正确,它将转发到VendorLogin.jsp,但是在输入新的用户名和密码并点击上述servlet之后,我得到的用户名和密码参数都是null,而不是servlet中新更新的值
我尝试了重定向,但得到了相同的效果
我知道我可以通过保护web.xml中的资源来更好地实现登录,但我想知道为什么这个简单的示例不起作用
那么我做错了什么
非常感谢您的登录jsp应该包含用户名和密码作为名称的元素
<input type="text" name="username" id="txtUserName" />
表单元素应与getParameter中给出的名称匹配
userName = request.getParameter("username");
password = request.getParameter("password");
那就像下面一样
<input type="text" name="username" />
<input type="password" name="password" />
也有相同的,我第一次向servlet请求正确的凭据时,就可以访问VendorList_Secure.jsp。但是,在发送错误的用户名和密码并转发到VendorLoginError.jsp后,我没有得到新的更新值,我得到的只是空值。我忘记在VendorLoginError.jsp中输入name属性,这是一个多么愚蠢的错误;)有时候会发生的