Could someone explain why the following does not work:
- - - - Form bean:
<form-bean name="forms.myForm"
type="org.apache.struts.validator.DynaActionForm">
<form-property name="values" type="java.util.List" />
</form-bean>
- - - - Action Mapping:
<action path="/populateMyForm"
type="test.populateFormAction"
scope="request">
<forward name="success" path="myTestPage.jsp"/>
</action>
<action path="/readMyForm"
type="test.editFormAction"
scope="request"
name="forms.myForm"
<forward name="success" path="myResultPage.jsp" />
</action>
- - - - Prepopulated form:
<logic:iterate id="value" name="myStringList">
<html:text property="values" value="${value}" indexed="true" />
</logic:iterate>
- - - - Action:
DynaActionForm dynaForm = (DynaActionForm) myForm;
List myList = (List) dynaForm.get("values");
The form shows up fine, but somehow the List I retrieve doesn't contain
any elements. ( If the text field is empty, List should still contain at
least one element )
Only workaround I've found so far is to set size-parameter to form-bean
definition ( and because the form can contain 0 to n items, it is kind
of a nasty way to do it, setting the size parameter high enough so that
overflow wont happen )
So.. how to use DynaActionForm to retrieve indexed properties from
dynamically created form?
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]