Я делаю контроллер Spring на основе аннотаций.Проблема в том, что при неудачной проверке эталонные данные теряются, а именно материал countryDivisions.Я не поместил его в форму, потому что это не редактируемые пользователем данные, и ортодоксальность заключается в том, что в форму попадают только редактируемые пользователем данные.У меня есть другой выбор?
@Controller
public class MyInfoController {
@Autowired
private MyInfoFormValidator validator;
private void loadReferenceData(ModelMap model) {
model.put("countryDivisions",countryDivisionService.getCountryDivisionOrderedByCode());
}
@ModelAttribute
private MyInfoForm loadMyInfo() {
MyInfoForm form = new MyInfoForm();
//load it up
return form;
}
@RequestMapping(value="/editMyInfo", method = RequestMethod.GET)
public String editMyInfo(ModelMap model ) {
loadReferenceData(model);
return "contactEdit";
}
@RequestMapping(value="/editMyInfo", method = RequestMethod.POST)
public String saveMyInfo(ModelMap model, MyInfoForm form,BindingResult result ) {
validator.validate (form,result);
if (result.hasErrors()) {
model.put("commandName", "myInfoForm");
return "contactEdit";
}
//save some stuff
return "redirect:viewMyInfo";
}
}