model.addAttribute("error",ErrorMessages.USERLOGINERROR);
在使用重定向时不起作用
return "redirect:/userlogin";
我在Google上找到了它,但找不到合适的答案
if(name.equals("false")){
System.out.println(ErrorMessages.USERLOGINERROR);
model.addAttribute("error",ErrorMessages.USERLOGINERROR);
return "redirect:/getuserloginpage";
}
JSP:
<form:form action="userlogin" method="post" commandname="login">
<div align="center" style="color: red">${error}</div>
<div align="center" style="color: red">${thanks}</div>
...
预期结果应为:
请检查您的电子邮件或密码。实际结果:什么也没印刷。 (未发现错误或异常)
答案 0 :(得分:0)
普通模型属性不适用于重定向。
请改用重定向属性,如下所示。
@RequestMapping(value="/someURL", method=GET)
public String yourMethod(RedirectAttributes redirectAttributes)
{
...
redirectAttributes.addAttribute("rd", "rdValue");
redirectAttributes.addFlashAttribute("fa", faValue);
return "redirect:/someOtherURL";
}
答案 1 :(得分:0)
做一件事,您正在使用
return "redirect:/userlogin";
这意味着您拥有
@RequestMapping(value="/userlogin", method=GET)
public String yourMethod(Model model)
{
your code.....
return some_page_name;// from tiles.xml or directly as per you configuration
}
now use the same return
if(name.equals("false")){
System.out.println(ErrorMessages.USERLOGINERROR);
model.addAttribute("error",ErrorMessages.USERLOGINERROR);
//return "redirect:/getuserloginpage";
return some_page_name; // simple and easy but take care of functionality
}