I'm trying to use <logic:iterate> within a form that
contains a Collection of OrderItems to create the appropriate input
fields.
Example Screen:
Order Number: ----------------
List of Items:
Item Number Name
Quantity
------------------
------------ ---------
------------------
------------ ---------
------------------
------------ ---------
------------------
------------ ---------
------------------
------------ ---------
(where ------- are form input fields)
The bean the form uses is the OrderForm. It contains an
ArrayList of OrderItems. An OrderItem is an object with 3 fields
ItemNumber, Name, Quantity.
Using <logic:iterate> to iterate over the ArrayList of
OrderItems, and the struts form tags I am trying to generate the correct
input lines for each OrderItem.
Using
<logic:iterate id="orderlist" name="orderform"
property="items" length="2">
<form:text name="orderlist" property="itemNumber" /> </logic:iterate>
... does not work as required. It generate several lines
with the same name for itemNumber for each item in the OrderItems ArrayList.
When the form is submitted the struts framework cannot get the right values
to set the OrderItems ArrayList with the correct values.
Setting the OrderItems collection within the OrderForm
bean is where the problem is... Getting values can be worked around by using
<form:text name="orderlist" property="itemNumber"
value="<%= ((OrderItem)orderlist).getItemNumber() %>" /> (which I had showed below)....
Hope that helps....
-Chandan.
|
- Help: <logic:iterate> and form input fields Chandan Kulkarni
- Re: Help: <logic:iterate> and form input field... Ted Husted
- Re: Help: <logic:iterate> and form input field... Chandan Kulkarni
- Re: Help: <logic:iterate> and form input field... Chandan Kulkarni
- Re: Help: <logic:iterate> and form input field... Chandan Kulkarni
- Re: Help: <logic:iterate> and form input f... Mishkin Berteig
- Re: Help: <logic:iterate> and form input field... Chandan Kulkarni
- Re: Help: <logic:iterate> and form input f... Mishkin Berteig
- Re: Help: <logic:iterate> and form input field... Chandan Kulkarni