Hi, I have investigated the indexed properties as follows.
structure of my jsp page: =================== <html:form action="/DisplayNestedPropertiesAction.do"> <logic:iterate name="nestedPropertiesForm" property="skills" id="skillBean"> <TABLE border="1" borderColor="cyan" cellpadding="0" cellpadding="0"> <TBODY> <TR bgcolor="<bean:write name="skillBean" property="backgroundColor"/>"> <TD><html:checkbox name="skillBean" property="checkbox" styleClass="clickclass" indexed="true" onclick="Javascript:ViewTheSkill()"/></TD> <TD><bean:write name="skillBean" property="qualification"/></TD> <TD><bean:write name="skillBean" property="profession"/></TD> </TR> </TBODY> </TABLE> </logic:iterate> </html:form> ActionForm: ========= public class NestedPropertiesForm extends FWKActionForm{ /** * */ public NestedPropertiesForm() { super(); } /** * Permet de récupérer la collection "skills" des objets skillBean */ protected List skills = new ArrayList(); /** * Permet de récupérer la collection "skills" des objets skillBean */ public List getSkills() { return skills; } public void setSkills(List skills) { this.skills = skills; } /** * Permet de récupérer dans l'action, l'objet indicé "index" de la liste. * @param index * @return */ public SkillBean getSkills(int index) { // automatically grow List size while (index >= skills.size()) { skills.add(new SkillBean()); } return (SkillBean)skills.get(index); } public void reset(ActionMapping actionMapping, HttpServletRequest httpServletRequest) { //I would like to initialize the checkbox properties here to false... } public void init(){ skills = new ArrayList(); } } embeded Bean: ****************** public class SkillBean { private boolean checkbox; private String qualification; private String profession; /** * */ public SkillBean() { super(); // TODO Raccord de constructeur auto-généré } /** * */ public SkillBean(boolean checkBox, String qualif, String profession) { super(); // TODO Raccord de constructeur auto-généré this.checkbox = checkBox; this.qualification = qualif; this.profession = profession; } /** * @return */ public boolean getCheckbox() { return checkbox; } /** * @return */ public String getProfession() { return profession; } /** * @return */ public String getQualification() { return qualification; } /** * @param string */ public void setCheckBox(boolean checkBox) { this.checkbox = checkBox; } /** * @param string */ public void setQualification(String string) { qualification = string; } /** * @param string */ public void setProfession(String string) { profession = string; } } Action: ===== public class NestedPropertiesAction extends Action{ public ActionForward execute(ActionMapping arg0, ActionForm arg1, HttpServletRequest arg2, HttpServletResponse arg3) throws Exception { NestedPropertiesForm nestedPropertiesForm = (NestedPropertiesForm)arg1; List skillBeanList = createSkillList(); nestedPropertiesForm.setSkills(skillBeanList); return arg0.findForward("nestedPropertiesPage"); } } public static List createSkillList(){ List skillBeanList = new ArrayList(); SkillBean skillBean1 = new SkillBean(false, "Engineer", "Developer"); SkillBean skillBean2 = new SkillBean(true, "practician", "surg"); SkillBean skillBean3 = new SkillBean(false, "Architect", "Maintenance Appareil"); skillBeanList.add(skillBean1); skillBeanList.add(skillBean2); skillBeanList.add(skillBean3); return skillBeanList; } My questions: ========== Please: ===== 1.)Am I missing something in this implementation? 2.) Knowing that the right way of correctly using a checkbox is to initialize the checkbox property in the reset method; how can I do this in my actionForm with the indexProperties? 3.) How can I get only the checked Bean in my action. When I select a checkbox, I would like to trigger an action (/ViewTheSkill.do). How can I get (ONLY) the corresponding bean in my action? ViewTheSkill.execute(). I would like to use this bean for further processing. public class ViewTheSkillAction extends Action{ public ActionForward execute(ActionMapping arg0, ActionForm arg1, HttpServletRequest arg2, HttpServletResponse arg3) throws Exception { NestedPropertiesForm nestedPropertiesForm = (NestedPropertiesForm)arg1; //HOW CAN I get the checked SkillBean here? } } Thanks very much. --------------------------------- Créez gratuitement votre Yahoo! Mail avec 100 Mo de stockage ! Créez votre Yahoo! Mail Le nouveau Yahoo! Messenger est arrivé ! Découvrez toutes les nouveautés pour dialoguer instantanément avec vos amis.Téléchargez GRATUITEMENT ici !