У меня есть вопрос, который представляет собой разницу между ModelAndView и ModelMap.
Я хочу сохранить modelAndView, когда requestMethod имеет значение «GET», а requestMethod имеет значение «POST».
Моя модель AndView сохранила другие.
Итак, я сделал возвращаемый тип modelAndView для методов "GET", "POST".
Но, Запрос на потерю commandObject, форма: ошибки ..., если запрос возвращает showForm для "POST" из-за сбоя проверки запроса.
пример)
private ModelAndView modelAndView;
public ControllerTest{
this.modelAndView = new ModelAndView();
}
@RequestMapping(method = RequestMethod.GET)
public ModelAndView showForm(ModelMap model) {
EntityObject entityObject = new EntityObject();
CommandObject commandObject = new CommandObject();
commandObject.setEntityObject(entityObject);
model.addAttribute("commandObject", commandObject);
this.modelAndView.addObject("id", "GET");
this.modelAndView.setViewName("registerForm");
return this.modelAndView;
}
@RequestMapping(method = RequestMethod.POST)
public ModelAndView submit(@ModelAttribute("commandObject") CommandObject commandObject,
BindingResult result, SessionStatus status) {
this.commandValidator.validate(commandObject, result);
if (result.hasErrors()) {
this.modelAndView.addObject("id", "POST");
this.modelAndView.setViewName("registerForm");
return this.modelAndView;
} else {
this.modelAndView.addObject("id", "after POST");
this.modelAndView.setViewName("success");
}
status.setComplete();
return this.modelAndView;
}