velocity模板中#springFormSingleSelect的工作无效
我正在制作spring mvc应用程序,并在视图中使用velocity模板。有一个表单用于按数据填充它,在这个表单中我使用#springFormSingleSelect。当数据有效时,表单工作正常,但当表单由无效数据填充时,如前所述,会出现错误消息,但#springFormSingleSelect为空。这是我的视图:velocity模板中#springFormSingleSelect的工作无效,spring,model-view-controller,spring-mvc,velocity,Spring,Model View Controller,Spring Mvc,Velocity,我正在制作spring mvc应用程序,并在视图中使用velocity模板。有一个表单用于按数据填充它,在这个表单中我使用#springFormSingleSelect。当数据有效时,表单工作正常,但当表单由无效数据填充时,如前所述,会出现错误消息,但#springFormSingleSelect为空。这是我的视图: <form action="saveEmployee" method="POST"> #springBind("newEmployee"
<form action="saveEmployee" method="POST">
#springBind("newEmployee")
<a href="listEmployees">#springMessage("label.back")</a>
<p>
<table>
<tr>
<td>#springMessage("label.firstName")</td>
<td>#springFormInput("newEmployee.firstName" "")</td>
<td><font color="red">#springShowErrors(" " "")</font></td>
</tr>
<tr>
<td>#springMessage("label.lastName")</td>
<td>#springFormInput("newEmployee.lastName" "")</td>
<td><font color="red">#springShowErrors(" " "")</font></td>
</tr>
<tr>
<td>#springMessage("label.salary")</td>
<td>#springFormInput("newEmployee.salary" "")</td>
<td><font color="red">#springShowErrors(" " "")</font></td>
</tr>
<tr>
<td>#springMessage("label.birthdate")</td>
<td>#springFormInput("newEmployee.birthday" "")</td>
<td><font color="red">#springShowErrors(" " "")</font></td>
</tr>
<tr>
<td>#springMessage("label.departament")</td>
<td>#springFormSingleSelect("newEmployee.departamentId" $departamentsMap "")</td>
</tr>
</table>
<input type="submit" value="#springMessage("label.submit")">
</form>
#springBind(“新员工”)
#springMessage(“label.firstName”)
#springFormInput(“newEmployee.firstName”)
#春季淋浴错误(“ ”“”)
#springMessage(“label.lastName”)
#springFormInput(“newEmployee.lastName”“”)
#春季淋浴错误(“ ”“”)
#springMessage(“label.salary”)
#springFormInput(“newEmployee.salary”)
#春季淋浴错误(“ ”“”)
#springMessage(“label.birthdate”)
#springFormInput(“新员工生日”)
#春季淋浴错误(“ ”“”)
#springMessage(“label.department”)
#springFormSingleSelect(“newEmployee.departmentId”$departmentsMap”)
这是视图控制器的一部分:
@RequestMapping(value="/saveEmployee", method= RequestMethod.GET)
public ModelAndView newuserForm(){
ModelAndView model = new ModelAndView("newEmployee");
Employee empl = new Employee();
Map departamentsMap = new TreeMap();
List<Departament> departamentsList = service.listDepartaments();
//for singleselect of departaments
for(int i=0; i<departamentsList.size(); i++){
Departament dep = departamentsList.get(i);
departamentsMap.put(dep.getDepartamentId(),dep.getTitle() );
}
model.addObject("departamentsMap",departamentsMap);
model.getModelMap().put("newEmployee", empl);
return model;
}
@RequestMapping(value="/saveEmployee", method=RequestMethod.POST)
public String create(@ModelAttribute("newEmployee")Employee empl, BindingResult result){
employeeValidator.validate(empl, result);
if(result.hasErrors()){
return "newEmployee";
}
service.saveEmployee(empl);
return "redirect:/listEmployees";
}
@RequestMapping(value=“/saveEmployee”,method=RequestMethod.GET)
公共模型和视图newuserForm(){
ModelAndView模型=新的ModelAndView(“新员工”);
雇员雇员=新雇员();
映射部门映射=新树映射();
List DepartmentsList=service.listDepartments();
//适用于单选部门
对于(int i=0;idepartmentsmap在出错时为空…因此请添加model.addObject(“departmentsmap”,departmentsmap);
在您的帖子详细信息中,因此当出现EEOR时,它不能为空
//Modified this line of code..
if(result.hasErrors()){
Map departamentsMap = new TreeMap();
List<Departament> departamentsList = service.listDepartaments();
//for singleselect of departaments
for(int i=0; i<departamentsList.size(); i++){
Departament dep = departamentsList.get(i);
departamentsMap.put(dep.getDepartamentId(),dep.getTitle() );
}
model.addObject("departamentsMap",departamentsMap);
return "newEmployee";
}
//修改了这行代码。。
if(result.hasErrors()){
映射部门映射=新树映射();
List DepartmentsList=service.listDepartments();
//适用于单选部门
对于(int i=0;i