I'm using struts 1.1 with the standard Validation stuff (see below) <plug-in className="org.apache.struts.validator.ValidatorPlugIn"> <set-property property="pathnames" value="/WEB-INF/validator-rules.xml, /WEB-INF/validation.xml"/> </plug-in>
I have a multi-page form (random access tabbed interface) and I would like to do the correct validation on the correct form (tab). There are 3 related jsp pages. Formtab1.jsp, formtab2.jsp and formtab2.jsp. Only fields on formtab1.jsp should be validated and so on... I understand that I would need to specify the correct page for each field in my validation.xml file. I also need to do a setPage(x) with my Action on the DynaValidatorForm object. This really is not my question. I want to understand how the DynaValidatorForm gets initialized. I initialize it the first time through my Action using: BeanUtils.copyProperties(form, mybean); This action is also used for the tab navigation, but I don't want to initialize the form each time I run through the action. How can I sense that the form has already been initialized so I don't overwrite new user entries on the form? I don't think I should have to create a separate struts action for the first time and another for each time after that. Here's a snippet of code: DynaValidatorForm _form = (DynaValidatorForm)form; String prop_id = req.getParameter("id"); Context jndi_context = new InitialContext(); Object obj_ref = jndi_context.lookup("java:comp/env/ejb/props"); RentalPropertyHome home = (RentalPropertyHome) PortableRemoteObject.narrow(obj_ref, RentalPropertyHome.class); // could have a finder exception here if user hacks URL RentalProperty rental_prop = home.findByPrimaryKey(prop_id); RentalPropertyValue prop_vo = rental_prop.getRentalPropertyValue(); BeanUtils.copyProperties(_form, prop_vo); // decide which tab to make visible if ( page_tab.equals("1") ) { _form.setPage(1); return mapping.findForward("editformtab1"); } else if ( page_tab.equals("2") ) { return mapping.findForward("editformtab2"); } else if ( page_tab.equals("3") ) { return mapping.findForward("editformtab3"); } else if ( page_tab.equals("4") ) { return mapping.findForward("editformtab4"); } else { return mapping.findForward("editformtab1"); } thanks --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]