<action path="initPage" name="BasicContentForm" validate="false" type="com.example.InitAction">
<!-- This action populates the form -->
<forward path="page.jsp" redirect="false" name="success" />
</action>
<action path="processPage" name="BasicContentForm" validate="true" input="initPage.do" ...>
<!-- this action processes the form -->
</action>
-- Jeff
Diego Manilla Suárez wrote:
Hi! I have a problem with form members initialization.
I have this form.
public class BasicContentForm extends ValidatorForm {
protected java.util.List propertyValues; public BasicContentForm() { this.propertyValues = new java.util.ArrayList(); } public void setPropertyValues( java.util.List propertyValues ) { this.propertyValues = propertyValues; } public java.util.List getPropertyValues() { return this.propertyValues; } public Object getPropertyValue(int index) { return propertyValues.get(index); } public void reset(ActionMapping mapping, HttpServletRequest request) { this.propertyValues = new java.util.ArrayList(); } }
And this jsp:
<logic:iterate name="basicContentForm" property="propertyValues" id="propertyValue">
<html:text name="propertyValue" property="value" indexed="true"/>
</logic:iterate>
The problem is that the number and type of the elements of propertyValues list is calculated dynamically (from the database). I was doing that on my Action class, but I've realized that this doesn't work: when I submit the form, I get an Exception at BeanUtils.populate, because the list is not properly initialized. If I can't initialize it on the reset() method (I need to access the database), what else can I do?
Thanks in advance
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]