论坛首页 Java企业应用论坛

LazyValidatorForm中的List属性如何编辑

浏览 4596 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-11-26  
使用LazyValidatorForm来当actionFrom。当表单中包含一个List时,却不知道如何编辑。
在struts-config.xml中
<form-bean name="quoteForm" type="org.apache.struts.validator.LazyValidatorForm" >
	<form-property name="orderItems" type="java.util.List"/>
</form-bean>

在action里面,进入编辑之前,先填充quoteForm
List items = orderItemManager.getByPurchase(purchaseid);
DynaBean quoteForm = (DynaBean)form;
quoteForm.set("orderItems", items);	
request.setAttribute("orderItems", items);

在jsp中
<logic:iterate id="orderItems" property="orderItems">
<html:hidden name="orderItems" property="id" indexed="true"/>
<html:text name="orderItems" property="model" readonly="true" indexed="true"/>
<html:text name="orderItems" property="quantity" readonly="true" indexed="true"/>
<html:text name="orderItems" property="price" indexed="true"/>
</logic:iterate>

但按照上面的写法,却报错:
java.lang.NullPointerException: Null attribute name

请问LazyValidatorForm中的List属性如何编辑?谢谢!
   发表时间:2006-11-27  
有人说用mapform可以实现,但是至今还没有实现。在提交时老出错。
0 请登录后投票
   发表时间:2006-11-27  
非得用数组么,不能用list么?
数组的话,是可以实现,但是对于每个属性都必须去配置一下。比如item对象中有5个属性,就必须配置5个数组?
0 请登录后投票
   发表时间:2006-11-27  
这个form不错,谁有简单的实例?
0 请登录后投票
   发表时间:2006-11-27  
这里有篇文章,讲到如何利用DynaValidatorForm来创建动态长度的表单。
http://www.developer.com/java/ejb/article.php/3321521
但是他只用到了数组和HashMap,而且不是编辑情况,而是输入结果。
他也有用例:http://www.blackbear.com/struts.war
惭愧的是,我模仿他的实例,进行编辑表单,依然报java.lang.NullPointerException: Null attribute name错误。
0 请登录后投票
   发表时间:2006-12-13  
还没有解决问题吗?
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics