0
Ich benutze flashAttribute für Redirect Daten zu anderen Controller-Aktion. Aber Modell ist leer. Der Code scheint richtig zu sein. Derselbe Code in anderen Aktionen funktioniert wie ein Zauber. Der einzige Unterschied ist eine @PathVariable für MethodensignaturRedirectAttribute funktioniert nicht - Modell ist im Frühling leer mvc controller
@RequestMapping("/user/edit-execute")
public String editExecute(@ModelAttribute @Valid UserEditForm userEditForm, BindingResult result, RedirectAttributes attr,HttpServletRequest httpServletRequest) {
basePath =""
ModelAndView m = new ModelAndView("user.edit");
ModelAndView redirect = new ModelAndView("redirect:/user/");
HttpSession session = httpServletRequest.getSession();
try{
if(userEditForm.getStatus()==null){
userEditForm.setStatus(0);
}
if(!result.hasFieldErrors()) {
userDaoCrud.update(userEditForm, userEditForm.getId_user());
session.setAttribute("message", "Operazione completata con successo.");
session.setAttribute("css_class", "dashboard_ok");
return "redirect: " + basePath + "/user";
}else{
attr.addFlashAttribute("org.springframework.validation.BindingResult.userEditForm", result);
attr.addFlashAttribute("userEditForm", userEditForm);
return "redirect: " + basePath + "/user/edit/"+userEditForm.getId_user();
}
} catch (Exception e) {
e.printStackTrace();
return "redirect: " + basePath + "/user/edit/"+userEditForm.getId_user();
}
}
@RequestMapping("/user/edit/{id}")
public String edit(Model model, @PathVariable("id") int id, HttpServletRequest httpServletRequest) {
logger.warn(model);
....
return "user.edit";
}