0

我一直在努力解决这个问题,我们的系统;我正在使用具有结构的复杂形式:

<form:hidden path="details[${detailEntry.key}].locationSites[${locStatus.index}].locationId" />
...

然后我有表单对象:

class MyForm implements Serializable
{


    private Map<String, DetailVO> details;
      <with getters and setters>

...
}

使用 DetailVO 类:

class DetailVO
{
...
   private List<LocationSiteVO> locationSites;
  <with getters and setters>
....
}

class LocationSiteVO 
{
...
  private boolean field1;
...
<with getters and setters>
}

发生的情况是(大多数情况下)绑定在 LocationSiteVO.field1 值中不起作用。通过调试,我看到它从表单(UI)正确传递到控制器(意味着绑定 LocationSiteVO 本身),但不是在 DetailVO 级别。如果有人遇到此问题,请分享您如何解决它。

非常感谢!

4

1 回答 1

0

我认为你的类 DetailVo 和 LocationSiteVO 也必须实现Serializable。如果之后,它仍然不起作用,请制作一些Converter.

编辑:对不起,我认为转换器在你的情况下没有用。它用于在对象已经存在时查找对象。通过 cons 您可以尝试更改路径:

${details[detailEntry.key].locationSites[locStatus.index].locationId}

于 2012-04-20T14:15:03.560 回答