With your configuration validator will forward to /PrepaidAccountInfo.do if validation errors are found - because thats what you set up as the "input" in your "/prepaid" action mapping - is that not happening?
Niall ----- Original Message ----- From: "Skip Hollowell" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, April 05, 2004 6:14 PM Subject: Problem with DynaValidatorForm > OK, I have a lot of things going on in my app, and something > is cancelling out my Validation, and I don't know what. I load > the PrepaidAccoundInfo.do action, and the Tiles based > page loads properly. I am able to submit the form on this > page, and it loads the prepaid.do action just fine, and r > emembers the bean info and redisplays it properly, but the > data is not validated. I can omit any of the required fields, > and the AccountNum can be entered as anything, not just an int. > > I have tryed renaming some of my paths, but they all appear to > be correct. Is the SAIF Intereceptor causing the problem? > My next test will be to remove it, but I was wondering if anyone > had incorporated all of these things together before. > > - DynaValidatorForm (I need to validate my user entered data, and > I am using lots of forms throughout the system) > - SAIF (I Want to be able to perform some common logic on all the > actions, for user authentication and authroization type functionality > mainly. Tabs and actions will be available based upon what rights > the user has) > - Tiles for easy page creation (tabBar, header, body, footer) > > Thoughts? Help? Possible alternatatives? All would be greatly > appreciated. > > Skip Hollowell > > > struts-config.xml: > ========================================================= > <form-beans > > <form-bean name="registerForm" type="skipdaddy.struts.form.RegisterForm"> > </form-bean> > <form-bean name="prepaidDynaValidatorForm" > type="org.apache.struts.validator.DynaValidatorForm"> > <form-property name="parmVRUCode" type="java.lang.String" /> > <form-property name="parmAccountNum" type="java.lang.String" /> > <form-property name="parmDnis" type="java.lang.String" /> > </form-bean> > </form-beans> > > <global-forwards > > <forward name="PrepaidAccountInfo" path="/PrepaidAccountInfo.do" /> > </global-forwards> > > <action-mappings > > <action path="/prepaid" > type="skipdaddy.struts.action.PrepaidDynaAction" > name="prepaidDynaValidatorForm" > input="/PrepaidAccountInfo.do" > scope="session" > validate="true" > > <forward name="success" path="/PrepaidAccountInfo.do" /> > <forward name="failure" path="/failure.html" /> > </action> > > <action > path="/PrepaidAccountInfo" > type="org.apache.struts.actions.ForwardAction" > parameter=".prepaid.accountInfoLayout" /> > > </action-mappings> > > <plug-in className="org.apache.struts.tiles.TilesPlugin"> > <set-property property="definitions-config" > value="/WEB-INF/tiles-defs.xml" /> > <set-property property="moduleAware" value="true" /> > <set-property property="definitions-parser-validate" value="true" /> > </plug-in> > <!-- end comment if struts1.0.x --> > > <plug-in className="org.apache.struts.validator.ValidatorPlugIn"> > <set-property property="pathnames" value="/WEB-INF/validator-rules.xml, > /WEB-INF/validation.xml" /> > <set-property property="definitions-debug" value="1" /> > </plug-in> > > <plug-in className="net.sf.struts.saif.SAIFPlugin"> > <set-property property="interceptor-config" > value="/WEB-INF/interceptor-config.xml" /> > </plug-in> > > > validation.xml: > ============================== > <formset> > <form name="prepaidDynaValidatorForm"> > <field property="parmVRUCode" > depends="required"> > <arg0 key="prepaid-vru.displayname"/> > </field> > <field property="parmAccountNum" > depends="required,integer"> > <arg0 key="prepaid-pin.displayname"/> > </field> > <field property="parmDnis" > depends="required,integer"> > <arg0 key="prepaid-dnis.displayname"/> > </field> > </form> > </formset> > > > header.jsp (part of my tile) > ============================================= > <table id="getaccnt" align="center" width="95%"> > <html:form action="/prepaid" focus="parmAccountNum"> > <html:hidden property="parmAction" value="hld"/> > <tr> > <td id="staticVrucode" align="right">VRUCode </td> > <td align="left"><html:text property="parmVRUCode" size="10" > maxlength="10"/></td> > <td> </td> > </tr> > > PrepaidDynaAction.java: > ================================================ > /Created by MyEclipse Struts > // XSL source (default): > platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_2.6.200/xslt/ > JavaClass.xsl > > package skipdaddy.struts.action; > > import javax.servlet.http.HttpServletRequest; > import javax.servlet.http.HttpServletResponse; > > import org.apache.struts.action.ActionForm; > import org.apache.struts.action.ActionForward; > import org.apache.struts.action.ActionMapping; > import org.apache.struts.tiles.actions.TilesAction; > import org.apache.struts.validator.DynaValidatorForm; > > /** > * MyEclipse Struts > * Creation date: 01-13-2004 > * > */ > public class PrepaidDynaAction extends TilesAction > { > > // --------------------------------------------------------- Instance > Variables > > // --------------------------------------------------------- Methods > > /** > * Method execute > * @param ActionMapping mapping > * @param ActionForm form > * @param HttpServletRequest request > * @param HttpServletResponse response > * @return ActionForward > * @throws Exception > */ > public ActionForward execute( > ActionMapping mapping, > ActionForm form, > HttpServletRequest request, > HttpServletResponse response) > throws Exception > { > //String parmAccountNum = prepaidForm.getParmAccountNum(); > // String parmDnis = prepaidForm.getParmDnis(); > //String parmVruCode = prepaidForm.getParmVRUCode(); > > DynaValidatorForm prepaidDynaValidatorForm = (DynaValidatorForm)form; > System.out.println(prepaidDynaValidatorForm.toString()); > String parmAccountNum = request.getParameter("parmAccountNum"); > String parmDnis = request.getParameter("parmDnis"); > String parmVruCode = request.getParameter("parmVRUCode"); > > System.out.println( > "Entering the ActionForward in PrepaidAction" > + request.getParameter("parmAccountNum")); > if (parmAccountNum.equals(parmAccountNum)) > { > System.out.println("PrepaidAction: SUCCESS"); > return mapping.findForward("success"); > } > else > { > System.out.println("PrepaidAction: FAILURE"); > return mapping.findForward("failure"); > } > } > } > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]