私はコントローラを持っています
@Controller
public class EmployeeController {
@ModelAttribute("employeeForm")
public EmployeeForm createForm(Model map, HttpSession session){
EmployeeForm form = new EmployeeForm ();
form.setName("TestName");
form.setAge("28");
form.setRank("1");
//calling service and getting data
EmployeeDTO eDTO = new EmployeeDTO();
eDTO = employeeService.getEmployeeDetails(employeeId);
if(null!=eDTO){
form.setName(eDTO.getName);//dto getName value = "Harry"
form.setAge(eDTO.getAge);//dto getAge value = "45"
form.setRank(eDTO.getRank);dto getRank value = "5"
}
return form;
}
@ModelAttribute("rankValues")
public<Integer> getRankValues(){
List<Integer> ranks= new ArrayList<Integer>();
for(int i=1;i<10;i++){
ranks.add(Integer.valueOf(i));
}
return ranks;
}
}
JSPで:
<div class="eRank">
<form:select name="rank" id="employeeRank" class="test" path="rank">
<c:forEach items="${rankValues }" var="rank">
<option data-value="${rank}" value="${rank}">${rank}
</option>
</c:forEach>
</form:select>
</div>
私の場合、ここでランクである正しいパスに設定されている限り、Spring 4を使用しているため、呼び出し元のサービスから取得する値(ここではランクの場合は5)がjspドロップダウンで自動的に選択されるはずですが、それは起こっていません自分。誰かが私がここで間違っていたことを教えてください。