UI を実行するときにデータベースから入力するリスト ボックスがあります。itemLabel は表示されますが、itemsValue は表示されません。ページの実行時に表示されるコードは次のとおりです。
<li>
<label>Select Gender</label>
<select id="genderId" name="genderId">
<option itemsValue="genderId" value="com.crimetrack.business.Gender@1a81bd5">Select Gender</option><option itemsValue="genderId" value="com.crimetrack.business.Gender@1bb60ad">FEMALE</option><option itemsValue="genderId" value="com.crimetrack.business.Gender@c80e21">MALE</option>
</select>
</li>
値が正しく表示されませんが、説明は表示されます。
@Controller
................
private GenderManager genderManager;
Map<String, Object> myGender = new HashMap<String, Object>();
.........
@RequestMapping(value="officer_registration.htm", method = RequestMethod.GET)
public ModelAndView loadPage(HttpServletRequest request,
HttpServletResponse response,@ModelAttribute Officers officer, BindingResult result, ModelMap m, Model model) throws Exception {
try{
myGender.put("genderList", this.genderManager.getGenderList());
model.addAttribute("gender", myGender);
return new ModelAndView("officer_registration");
}catch(Exception e){
request.setAttribute("error",e.getMessage());
return new ModelAndView("error_page");
}
}
public void setGenderManager(GenderManager genderManager){
this.genderManager = genderManager;
}
jsp
<li>
<label>Select Gender</label>
<form:select path="genderId">
<form:options items = "${gender.genderList}" itemsValue="genderId" itemLabel="genderDesc" />
</form:select>
<form:errors path="genderId"/>
</li>