我有一个页面check
,在其中添加一个flashAttribute("error","Test message");
,并向页面RedirectView
返回一个login
。
@RequestMapping(value = "/login")
public ModelAndView mainPage(Model model){
System.out.println(" - " + model.asMap().get("error") + " - "); //-> - null -
return new ModelAndView("/login");
}
@RequestMapping(value = "/check")
public View checkLogin(RedirectAttributes redirectAttributes,
@RequestHeader(value = "username", required = false)String username,
@RequestHeader(value = "password", required = false)String password){
redirectAttributes.addFlashAttribute("error", "Test message");
return new RedirectView("/login");
}
此行:model.asMap().get("error")
返回null
。我该如何处理RedirectAttributes
?
答案 0 :(得分:3)
我想this可能会帮助您。
@RequestMapping(value = "/login")
public ModelAndView mainPage(RedirectAttributes redirectAttrs){
Map<String> attributesMap = redirectAttrs.getFlashAttributes();
return new ModelAndView("/login");
}
@RequestMapping(value = "/check")
public View checkLogin(RedirectAttributes redirectAttributes,
@RequestHeader(value = "username", required = false)String username,
@RequestHeader(value = "password", required = false)String password){
redirectAttributes.addFlashAttribute("error", "Test message");
return new RedirectView("/login");
}
希望这会有所帮助