Hi,
Here is my (simplified) setup:
struts-config.xml:
<form-bean name="myForm" dynamic="true"
type="org.apache.struts.action.DynaValidatorActionForm">
<form-property name="name" type="java.lang.String"/>
...
<form-property name="lineItems" type="my.custom.LineItem[]"/>
</form-bean>
<action-mappings>
<action path="/saveLineItem"
name="myForm"
type="my.package.SaveLineItemAction"
validate="true"
input="/displayOrder.do?method=afterError"
scope="request">
<forward name="success" path="order.edit"/>
</action>
<action path="/displayOrder"
name="rfqForm"
type="my.package.DisplayOrderAction"
validate="false"
scope="request"
parameter="method">
<forward name="successEdit" path="order.edit"/>
</action>
...
</action-mappings>
"order.edit" is a tiles-def that allows user editing of the order, which, when
constructed, looks something like this:
<html>
<body>
<html:form action="/saveOrder.do" enctype="multipart/form-data" method="POST">
...
<bean:define id="lineItems" name="myForm" property="lineItems"/>
<logic:iterate name="lineItems" id="lineItem" type="my.custom.LineItem[]"
indexId="itemIndex">
<td><html:text name="lineItem" property="quantity" indexed="true"
size="6"/></td>
...
</logic:iterate>
</html:form>
</body>
</html>
The issue is, that if /saveLineItem is called and validation is successful, I
can get the parameter values off of the request (which is of type
org.apache.struts.upload.MultipartRequestWrapper), which include the lineItem
property values. However, if validation fails, there is no way to get these
values off the request before they are lost, since the DynaValidatorActionForm
doesn't support custom beans, and calling something like
"request.getParameterValues("lineItem[0].property") returns null. Overriding
the "reset()" method also doesn't allow me to get the request parameters. Why
are the parameters getting lost?
Thanks,
Dallas Vaughan
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.371 / Virus Database: 267.14.1/206 - Release Date: 12/16/2005
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]