form表单提交的List在action中得不到值
初期化的时候,action同过Dao从数据库得到多条数据,在页面显示。
编辑后,提交表单,action中得到的list为空
其它的字段都没有问题,只有list为空。
不知道为什么?请各位大虾指点一二
action代码:
public ActionForward OrderInit(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
OrderForm orderForm = (OrderForm) form;
ProductDao productDao = new ProductDao();
ArrayList<ProductDto> list = productDao.searchProduct();
orderForm.setProductList(list);
return mapping.findForward("order");
}
form代码:
public class OrderForm extends BaseForm {
...
private String priceBlack;
private String totalPrice;
private ArrayList<ProductDto> productList = new ArrayList<ProductDto>();
/**
* @return the productList
*/
public ArrayList<ProductDto> getProductList() {
return productList;
}
/**
* @param productList the productList to set
*/
public void setProductList(ArrayList<ProductDto> productList) {
this.productList = productList;
}
...
}
Dto代码:
public class ProductDto extends BaseDto {
private String productID;
。。。
private String countS;
private String countP;
private String priceTotal;
/**
* @return the productID
*/
public String getProductID() {
return productID;
}
/**
* @param productID the productID to set
*/
public void setProductID(String productID) {
this.productID = productID;
}
。。。
}
JSP代码:
<html:form action="/order.do?method=orderLogin">
<table border="1" cellspacing="0">
<logic:notEmpty name="orderForm" property="productList" >
<logic:iterate id="product" name="orderForm" property="productList">
<tr>
<td><html:text name="product" property="productID" size="5" indexed="true"/></td>
<td><html:text name="product" property="name" size="5" indexed="true"/></td>
<td><html:text name="product" property="price" size="5" indexed="true"/></td>
<td><html:text name="product" property="description" size="5" indexed="true"/></td>
</tr>
</logic:iterate>
</logic:notEmpty >
</table>
.....
<html:submit/>
</html:form>
初期化时,页面显示后台得到的数据库List信息
但编辑提交后,得不到List信息。
请高手指点一下。