0

我正在努力让我的 JSP 中更改的列表值返回到 MVC 控制器。这些值显示得很好,但是在提交表单时更改不会显示在 ModelAttribute 中(任何更改的非列表值都会在提交时显示)。以下是相关代码的缩略版:

JSP:

<c:forEach items="${poForm.poDetail}" varStatus="i">
...
<!-- Product Description -->
<td class="leftAlign"  >
  <form:input path="poDetail[${i.index}].description"  />
</td>

支持表格:

public class POForm {
  private List<PurchaseOrderDetail> poDetail;
...
}

采购订单详情:

public class PurchaseOrderDetail implements Comparable<PurchaseOrderDetail>{
    private String partNumber; // alpha-numeric part number (vendor's)
private String description; // Product name/description
... remaining properties are non-complex
}

控制器:

@RequestMapping(value="/savePO",method=RequestMethod.POST)
public ModelAndView savePO(@ModelAttribute("poForm") POForm poForm, final       
     HttpServletRequest request) {
.... "examine the poForm here and items of poDetail are unchanged"
}

有什么建议可以尝试吗??

4

2 回答 2

0

我记得我前段时间遇到过类似的问题。当我没记错时,将支持从's更改Listarray.

于 2012-09-16T10:38:07.023 回答
0

感谢 Ralph,我发现 Spring MVC List 值没有被返回,因为我无意中提交了错误的表单。一旦我纠正了这一点,列表值就会按预期返回。

于 2012-09-16T15:14:53.683 回答