我在同一个JSP中有一个登录和一个注册表单,但是我希望他们调用两个不同的servlet。主要功能是工作,所以你可以登录或注册,但如果发生了什么,我想在登录和注册servlet上更改主页上的$ {message}属性。我该怎么办?
登录JSP页面(login.jsp)
<form action="register" method="POST">
INPUTS...
</form>
<form action="login" method="POST">
INPUTS...
</form>
登录Servlet(LoginSV.java)
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
//Happens when e-mail or password incorrect
request.setAttribute("message", "Incorrect email/password.");
request.getRequestDispatcher("/login.jsp").forward(request, response);
return;
}
注册Servlet(RegisterSV.java)
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
//Happens if user leaves a field empty
request.setAttribute("message", "One or more field is epty.");
request.getRequestDispatcher("/login.jsp").forward(request, response);
return;
}
的web.xml
<servlet>
<servlet-name>LoginSV</servlet-name>
<servlet-class>servlet.LoginSV</servlet-class>
</servlet>
<servlet>
<servlet-name>RegisterSV</servlet-name>
<servlet-class>servlet.RegisterSV</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginSV</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>RegisterSV</servlet-name>
<url-pattern>/register</url-pattern>
</servlet-mapping>
我在login.jsp文件中有表单,因此Login Servlet可以更改属性(因此在登录表单调用时它可以正常工作),但是Register不能,$ {message}变量不是任何形式的。
答案 0 :(得分:0)
问题解决了。在login.jsp中有一个重定向脚本,搞砸了什么。谢谢大家。