Когда я загружаю эту форму, таблица стран заполняется из базы данных с 240 странами.если я отправлю его с пустыми обязательными полями, страница снова перезагрузится с сообщениями об ошибках.Но я не получил ни одной страны в списке.Я использую один и тот же код для заполнения списка методов GET и POST - см. Ниже
<form:form commandName="student_personal_info" method="post">
<table>
<tr>
<td><form:label path="country">Country:</form:label></td>
<td><form:select path="country">
<form:option value="NONE" label=" --Select-- "></form:option>
<form:options items="${countries}"/>
</form:select>
</td>
</tr></table>
</form:form>
@RequestMapping(value = "student_personal_info", method = RequestMethod.GET)
public ModelAndView DisplayPersonalForm(ModelAndView model) {
StudentPersonalInfo personalInfo = new StudentPersonalInfo();
model.addObject("student_personal_info", personalInfo);
model.addObject("countries",getCountries());
return model;
} //this works fine
@RequestMapping(value = "student_personal_info", method = RequestMethod.POST)
public String PersonalFormSubmitted(
@ModelAttribute("student_personal_info") @Valid StudentPersonalInfo student_personal_info,
BindingResult result, ModelAndView model) {
model.addObject("countries", getCountries());
if (result.hasErrors()) {
logger.info("From student personal info, there are "
+ String.valueOf(this.getCountries().size())
+ " Countries"); //This prints 240 countries on the consule
return "student_personal_info";
}
else
return "redirect:/display_program_of_study.tsegay";
}
все остальные мои настройки работают нормально