Spring MVC中一个表单的许多commandName
我有一个页面jsp,我将使用不同POJO类的许多属性,所以我需要在表单中使用两个commandName。 可以在控制器中使用多个@ModelAttribute,那么如果多个commandName不工作又有什么意义呢?
例如,我想插入一个信息,名称和函数,name是类Agent中的一个属性,function是Activity类中的一个属性? 我该怎么办?
控制器
@RequestMapping(value="/fiche_service",method=RequestMethod.GET) public ModelAndView Fiche_service(@ModelAttribute Activite activitey,@ModelAttribute Etablissement etabl,ModelMap model) { Agent ag = new Agent(); return new ModelAndView("FicheService","agent",ag); }
表格
例外情况:
Etat HTTP 500 - /WEB-INF/pages/FicheService.jsp (line: 397, column: 64) Attribute qualified names must be unique within an element
第397行==>
method="post" commandName="activity" commandName="etabl">
使用springform:form
标签不可能有多个commandName
属性。
(实现org.springframework.web.servlet.tags.form.FormTag
只有一个字段来保存此值)。
最简单的解决方案(无效工作)将使用包装器命令对象,它必须包含字段。
public class CombinedCommand() { Activity activity; Etabl etabl; //Getter and setter }
JSP:
... ... ...