从Spring 3.1开始,你可以使用RedirectAttributes。在执行重定向之前,添加你希望具有的属性。添加BindingResult和用于验证的对象,在本例中为Register。
对于BindingResult,你将使用名称:“ org.springframework.validation.BindingResult。[modelattribute的名称]”。
对于用于验证的对象,将使用modelattribute的名称。
要使用RedirectAttributes,你必须将此添加到配置文件中。你还告诉Spring使用一些较新的类:
<mvc:annotation-driven />
@RequestMapping(value = "/submit", method = RequestMethod.POST)
public final String submit(@modelattribute("register") @Valid final Register register, final BindingResult binding, RedirectAttributes attr, HttpSession session) {
if (binding.hasErrors()) {
attr.addFlashAttribute("org.springframework.validation.BindingResult.register", binding);
attr.addFlashAttribute("register", register);
return "redirect:/register/create";
}
return "redirect:/register/success";
}