Hold up, think I found it... trying to pass Validator as well, doesn't
match the signature in FieldChecks...

-- 
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM/Yahoo: fzammetti
MSN: [EMAIL PROTECTED]
Author of "Practical Ajax Projects With Java Technology"
 (2006, Apress, ISBN 1-59059-695-1)
Java Web Parts - http://javawebparts.sourceforge.net
 Supplying the wheel, so you don't have to reinvent it!

On Wed, October 4, 2006 5:43 pm, Frank W. Zammetti wrote:
> Hello... trying to use Commons Validator 1.3.0 with Struts 1.2.9, seeing
> the following error... anyone have any ideas?  Everything seems fine until
> the first check... config files follow trace.  Thanks!
>
>
> 20061004-17:29:17,766 DEBUG [Servlet.Engine.Transports : 0]
> (ModuleUtils.java:167) Get module name for path
> /testView/testValidation.do
> 20061004-17:29:17,766 DEBUG [Servlet.Engine.Transports : 0]
> (ModuleUtils.java:191) Module name found: default
> 20061004-17:29:17,812 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:172) Processing a 'POST' for path
> '/testView/testValidation'
> 20061004-17:29:17,812 DEBUG [Servlet.Engine.Transports : 0]
> (RequestUtils.java:200)  Looking for ActionForm bean instance in scope
> 'request' under attribute key 'valForm'
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (RequestUtils.java:294)  Creating new DynaActionForm instance of type
> 'org.apache.struts.validator.DynaValidatorForm'
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (RequestUtils.java:300)  -->
> DynaActionForm[dynaClass=valForm,firstName=,lastName=]
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:339)  Storing ActionForm bean instance in scope
> 'request' under attribute key 'valForm'
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:805)  Populating bean properties from this request
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (BeanUtilsBean.java:795)
> BeanUtils.populate(DynaActionForm[dynaClass=valForm,firstName=,lastName=],
> {firstName=[Ljava.lang.String;@7c51607,
> lastName=[Ljava.lang.String;@73fd607})
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (BeanUtilsBean.java:876)
> setProperty(DynaActionForm[dynaClass=valForm,firstName=,lastName=],
> firstName, [])
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (ConvertUtilsBean.java:418) Convert string '' to class 'java.lang.String'
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (ConvertUtilsBean.java:426)   Using converter
> [EMAIL PROTECTED]
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (BeanUtilsBean.java:876)
> setProperty(DynaActionForm[dynaClass=valForm,firstName=,lastName=],
> lastName, [])
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (ConvertUtilsBean.java:418) Convert string '' to class 'java.lang.String'
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (ConvertUtilsBean.java:426)   Using converter
> [EMAIL PROTECTED]
> 20061004-17:29:17,828 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:948)  Validating input form properties
> 20061004-17:29:17,891 DEBUG [Servlet.Engine.Transports : 0]
> (ValidatorResources.java:453) Form 'valForm' found in formset 'default'
> for locale 'en_US_DO'
> 20061004-17:29:17,938 ERROR [Servlet.Engine.Transports : 0]
> (DynaValidatorForm.java:112) No such validation method:
> org.apache.struts.validator.FieldChecks.validateRequired(java.lang.Object,
> org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> javax.servlet.http.HttpServletRequest)
> org.apache.commons.validator.ValidatorException: No such validation
> method:
> org.apache.struts.validator.FieldChecks.validateRequired(java.lang.Object,
> org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> javax.servlet.http.HttpServletRequest)
>       at
> org.apache.commons.validator.ValidatorAction.loadValidationMethod(ValidatorAction.java:603)
>       at
> org.apache.commons.validator.ValidatorAction.executeValidationMethod(ValidatorAction.java:533)
>       at org.apache.commons.validator.Field.validateForRule(Field.java:766)
>       at org.apache.commons.validator.Field.validate(Field.java:846)
>       at org.apache.commons.validator.Form.validate(Form.java:290)
>       at org.apache.commons.validator.Validator.validate(Validator.java:354)
>       at
> org.apache.struts.validator.DynaValidatorForm.validate(DynaValidatorForm.java:110)
>       at
> org.apache.struts.action.RequestProcessor.processValidate(RequestProcessor.java:950)
>       at
> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:207)
>       at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
>       at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>       at
> com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
>       at
> com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
>       at
> com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
>       at
> com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
>       at
> com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
>       at
> com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
>       at
> com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
>       at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:76)
>       at
> com.company.security.j2ee.filter.InactivityFilter.doFilter(InactivityFilter.java:133)
>       at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
>       at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
>       at
> com.company.security.nonportal.filter.AuthFilter.doFilter(AuthFilter.java:358)
>       at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
>       at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
>       at
> com.company.security.nonportal.filter.CrossOrgValidation.doFilter(CrossOrgValidation.java:153)
>       at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
>       at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
>       at
> com.company.security.nonportal.filter.OrgCodeFilter.doFilter(OrgCodeFilter.java:178)
>       at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
>       at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
>       at
> com.company.security.j2ee.filter.CrossSiteScriptingFilter.doFilter(CrossSiteScriptingFilter.java:120)
>       at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
>       at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
>       at
> com.company.security.nonportal.filter.URLParsingFilter.doFilter(URLParsingFilter.java:85)
>       at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
>       at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
>       at
> com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1010)
>       at
> com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:592)
>       at
> com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:204)
>       at
> com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:125)
>       at
> com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:286)
>       at
> com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
>       at
> com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:182)
>       at
> com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
>       at
> com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
>       at
> com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:615)
>       at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:439)
>       at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:912)
> 20061004-17:29:17,938 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:953)   No errors detected, accepting input
> 20061004-17:29:17,938 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:267)  Looking for Action instance for class
> com.company.app.testview.action.TestViewValidationTestAction
> 20061004-17:29:17,953 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:288)   Creating new Action instance
> 20061004-17:29:17,984 DEBUG [Servlet.Engine.Transports : 0]
> (RequestProcessor.java:376)
> processForwardConfig(ForwardConfig[name=validationGOOD,path=/testView/validationGOOD.jsp,redirect=false,contextRelative=false,module=null])
>
>
> validator-rules.xml:
>
>
> <!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD
> Commons Validator Rules Configuration 1.1.3//EN"
> "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd";>
> <form-validation>
>   <global>
>     <validator name="required"
>       classname="org.apache.struts.validator.FieldChecks"
>       method="validateRequired"
>       methodParams="java.lang.Object,
>         org.apache.commons.validator.ValidatorAction,
>         org.apache.commons.validator.Field,
>         org.apache.struts.action.ActionMessages,
>         javax.servlet.http.HttpServletRequest"
>       msg="errors.required" />
> </global>
> </form-validation>
>
>
> struts-config.xml:
>
>
> <?xml version="1.0" encoding="ISO-8859-1" ?>
> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts
> Configuration 1.1//EN"
> "http://jakarta.apache.org/dtds/struts-config_1_0.dtd";>
> <struts-config>
>   <form-beans>
>     <form-bean name="valForm"
>       type="org.apache.struts.validator.DynaValidatorForm">
>       <form-property name="firstName" type="java.lang.String" />
>       <form-property name="lastName" type="java.lang.String" />
>     </form-bean>
>   </form-beans>
>   <action-mappings>
>     <action path="/testView/testValidation"
> input="/testView/validationBAD.jsp"
> type="com.company.app.testview.action.TestViewValidationTestAction"
> name="valForm" scope="request" validate="true">
>       <forward name="validationGOOD" path="/testView/validationGOOD.jsp"
> />
>     </action>
>   </action-mappings>
>   <message-resources parameter="com.company.app.app_resources"
> null="false" />
>   <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
>     <set-property property="pathnames"
> value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
>   </plug-in>
> </struts-config>
>
>
> validation.xml:
>
>
> <?xml version="1.0" encoding="ISO-8859-1" ?>
> <!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD
> Commons Validator Rules Configuration 1.1.3//EN"
> "http://jakarta.apache.org/commons/dtds/validator_1_1_3.dtd";>
> <form-validation>
>   <formset>
>     <form name="valForm">
>       <field property="firstName" depends="required">
>         <arg0 key="firstName" resource="false" />
>       </field>
>       <field property="lastName" depends="required">
>         <arg0 key="lastName"  resource="false" />
>       </field>
>     </form>
>   </formset>
> </form-validation>
>
>
> app_resources.properties (located in WEB-INF/classes/com/company/app):
>
>
> errors.required={0} is required.
>
>
> (validation.xml and validator-rules.xml both in WEB-INF)
>
>
>
> Frank
>
>
> --
> Frank W. Zammetti
> Founder and Chief Software Architect
> Omnytex Technologies
> http://www.omnytex.com
> AIM/Yahoo: fzammetti
> MSN: [EMAIL PROTECTED]
> Author of "Practical Ajax Projects With Java Technology"
>  (2006, Apress, ISBN 1-59059-695-1)
> Java Web Parts - http://javawebparts.sourceforge.net
>  Supplying the wheel, so you don't have to reinvent it!
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to