ok here are sniptes:
jsp:
<bean

efine id="compOffersDyna" name="savedcompOffers" scope="request" />
<bean:size id="compOffersSizeDyna" name="compOffersDyna"/>
<logic:greaterThan name="compOffersSizeDyna" value="0">
<logic:iterate id="offersDyna" name="compOffersDyna"
type="com.web.databean.OverrideDataBean">
<tr class="odd">
<td>
<html:select
property="siteNamesD" size="1" disabled="false">
html

ptionsCollection name="offersDyna" property="listSites" label="name" value="id" />
</html:select></td>
/tr>
</logic:iterate>
</logic:greaterThan>
Main collection contains OverrideDataBeans
each of these represents 1 row in the html table, and 1st column has Select-option box:
public class OverrideSavedDataBean {
private Collection listSites = new ArrayList();
private
String siteD;
// this class is used for a site list name and id.
public static class ListValue implements Serializable {
private String name;
private int id;
public ListValue() {}
public ListValue(int id, String name) {
this.id = id;
this.name = name;
}
public String getName() {
return name;
}
public void setName(String string) {
name = string;
}
public int getId() {
return id;
}
public void setId(int i) {
id = i;
}
}
public void setSiteList(List siteList) {
for (Iterator iter = siteList.iterator(); iter.hasNext()

{
Site site = (Site) iter.next();
listSites.add(new ListValue(site.getSiteId().intValue(), site.getSiteName()));
}
..........
.........the rest are just getters and setters
and action form has following properties:
public class AdminOverrideForm extends ActionForm {
String siteNamesDyna;
private String[] selectedSitesList = null;
/**
* this is main colection holdind beans representing table raws
*/
/*
this is list of selected Sites id
*/
private String[] siteNamesD = null;
when I supply array of sites to the action form ALL the sites which are present in that array are selected in the option lists.