Hello. I'm a bit of a newbie with Struts, and I'm running into some problems with a form that has a nested java bean, which in turn has a list of java beans. I had a version of this working when there wasn't so much nesting, but something has gone awry, I think.
The form, PriceQuoteForm, has two "PriceLine" objects, and each of these corresponds to a separate section on the html form. In each section there is a list of Customers. I need to create some fields with those Customers, and then get them back when the form is posted back, naturally. The problem, I think, is the html ends up looking like: <input type="text" name="customer[0].cost" value="0.0" class="pq_currency"> Doesn't this need to be either "firstLob.customer[0].cost" or "secondLob.customer[0].cost" in order for the form bean to get populated when I post it back? Here is the (stripped down) code I am using: public class PriceQuoteForm extends BaseForm { // ... private PriceLine firstLob = new PriceLine(); private PriceLine secondLob = new PriceLine(); // ... } public class PriceLine { // ... private List customers; // ... } The Customer beans are just dumb data holders, nothing to see there. <html:form action="/PriceQuote.do"> <c:set var="form" value="${priceQuoteForm}"/> <nested:nest property="firstLob"> <logic:notEqual name="priceQuoteForm" property="firstLob.lob" value="-1"> <nested:iterate id="customer" property="customers" type="com.wm.amp.domain.pricing.Container"> <div class="left" style="width: 150px;"> <nested:select indexed="true" name="customer" property="customerId" styleClass="pq_select" style="width: 140px;"> <html:options collection="customers1" property="key" labelProperty="value" /> </nested:select> </div> <div class="left" style="width: 80px;"> <nested:text indexed="true" name="customer" property="quantity" styleClass="pq_currency" style="width: 50px;" /> </div> <div class="left" style="width: 140px;"> <nested:select indexed="true" name="customer" property="frequency" styleClass="pq_select" style="width: 140px;"> <html:options collection="frequencies" property="key" labelProperty="value" /> </nested:select> </div> <div class="left" style="width: 50px;"> <span style="width: 20px;"></span> <nested:checkbox indexed="true" name="customer" property="compactor"/> </div> <div class="left" style="width: 100px;"> <nested:text indexed="true" name="customer" property="cost" styleClass="pq_currency"/> </div> </nested:iterate> </logic:notEqual> </nested:nest> </html:form> (I was going to just include one of the fields, property="cost", but I thought it would be better if I included more detail. This is just one of the two sections of the form.) I just switched over to using nested tags. I was hoping that it would automatically add the nested:nest property at the beginning of the field name, but no such luck. I also tried to use a logic:iterate tag with id="firstLob.customer" and change all the tags inside the iterate to have name="firstLob.customer", but that complains about the dot in the name. When I post back the form, the customers are not getting populated in the form bean. I was able to make this work in a proof of concept (so I thought) with just a few html-el:text tags, and the customers list as part of them PriceQuoteForm bean rather than in a nested java bean. I'm really tearing my hair out, now, and any help would be tremendously appreciated. Thanks in advance, David Conrad --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]