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); } 

表格

 
Fonction :
Nom d'établissement :
Ville :
Délégation : <form:input type="text" class="round default-width-input" path="cd_reg"
Date début :
Date fin :

例外情况:

 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:

  ...  ...  ...