Can you enter this as an issue in JIRA?  I'm assuming you're using Struts 1.x?

FWIW, I can reproduce this bug on the demo site:

http://demo.raibledesigns.com/equinox-struts/users.html

Matt

On 2/21/07, Scott Purcell <[EMAIL PROTECTED]> wrote:
The userForm does not work right out of the box. I did it at home last
night also with the same results. If you do not enter a lastname in the
userform, it still saves to the DB.




Scott



-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Matt
Raible
Sent: Wednesday, February 21, 2007 8:14 AM
To: users@appfuse.dev.java.net
Subject: Re: [appfuse-user] Equinox 1.7 Validation Help Required

Looks like a bug to me.  Does the validation work on the userForm or
not?  You say it's "broken out of th ebox".  Did you fix it or does
this cause a similar error?

Matt

On 2/21/07, Scott Purcell <[EMAIL PROTECTED]> wrote:
>
>
>
>
> Hello,
>
>
>
> Equinox 1.7 'Struts, Spring, Hibernate' configuration.
>
>
>
>
>
> I am trying to do some validation just like the lastname validation in
the
> userForm.jsp. (that one was broke out of the box also.). I cannot
figure
> this out, and would really like to get it working. But I cannot get
the
> userform one to work, nor can I get mine to work. I was hoping someone
may
> see a problem somewhere, or be able to understand the error.
>
>
>
> Thanks,
>
>
>
>
>
> A) The validator plug-in is defined in the struts-config.xml like so.
>
>     <plug-in
> className="org.apache.struts.validator.ValidatorPlugIn">
>
>         <set-property
>
>             property="pathnames" value="/WEB-INF/validator-rules.xml,
>
>
> /WEB-INF/validation.xml"/>
>
>     </plug-in>
>
>
>
> B) I am only trying to validate that the lastname of my form is
required, so
> in validation.xml I have this between formset tags.
>
> <form name="contactForm">
>
>             <field property="contact.lastName" depends="required">
>
>                 <arg0 key="contact.lastName"/>
>
>             </field>
>
>         </form>
>
>
>
> C) My action extends DispatchAction (copied from the userAction);
>
> public ActionForward save(ActionMapping mapping, ActionForm form,
>
>                                 HttpServletRequest request,
>
>                                 HttpServletResponse response)
>
>             throws Exception {
>
>         if (log.isDebugEnabled()) {
>
>             log.debug("entering 'save' method...");
>
>         }
>
>
>
>         ActionMessages errors = form.validate(mapping, request);
>
>         if (!errors.isEmpty()) {
>
>             saveErrors(request, errors);
>
>             return mapping.findForward("edit");
>
>         }
>
>
>
>
>
>
>
> D) JSP page
>
> <html:form action="/contactus.html?method=save">
>
> <table class="detail">
>
> <tr>
>
>     <th><label for="contact.firstName"><fmt:message
> key="contact.firstName"/>:</label></th>
>
>     <td><html:text property="contact.firstName"
> styleId="contact.firstName"/></td>
>
> </tr>
>
>
>
> <tr>
>
>     <th><label for="contact.lastName" class="required">* <fmt:message
> key="contact.lastName"/>:</label></th>
>
>     <td>
>
>         <html:text property="contact.lastName"
styleId="contact.lastName"/>
>
>         <span class="fieldError"><html:errors
> property="contact.lastName"/></span>
>
>     </td>
>
> </tr>
>
>
>
>
>
>
>
>
>
>
>
> Error From Tomcat log:
>
>         at java.lang.Thread.run(Unknown Source)
>
> ERROR - DynaValidatorForm.validate(112) | No such validation method:
>
org.apache.struts.validator.FieldChecks.validateRequired(java.lang.Objec
t,
> org.ap
>
> ache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> javax.servlet.http.HttpServletReq
>
> uest)
>
> org.apache.commons.validator.ValidatorException: No such
> validation method:
>
org.apache.struts.validator.FieldChecks.validateRequired(java.lang.Objec
t,
>
>  org.apache.commons.validator.ValidatorAction,
> org.apache.commons.validator.Field,
> org.apache.struts.action.ActionMessages,
> javax.servlet.http.HttpSer
>
> vletRequest)
>
>         at
>
org.apache.commons.validator.ValidatorAction.loadValidationMethod(Valida
torAction.java:603)
>
>         at
>
org.apache.commons.validator.ValidatorAction.executeValidationMethod(Val
idatorAction.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
> com.mb.purcell.action.ContactAction.save(ContactAction.java:41)
>
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
> Source)
>
>         at java.lang.reflect.Method.invoke(Unknown Source)
>
>         at
>
org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.j
ava:270)
>
>         at
>
org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187
)
>
>         at
>
org.apache.struts.action.RequestProcessor.processActionPerform(RequestPr
ocessor.java:431)
>
>         at
>
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:
236)
>
>         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:709)
>
>         at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:252)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:173)
>
>         at
>
org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFi
lter.java:125)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:202)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:173)
>
>         at
>
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.
java:118)
>
>         at
>
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.j
ava:52)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:202)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:173)
>
>         at
> org.appfuse.web.MessageFilter.doFilter(MessageFilter.java:32)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:202)
>
>         at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:173)
>
>         at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:213)
>
>         at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:178)
>
>         at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:126)
>
>         at
>
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:105)
>
>         at
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:107)
>
>         at
>
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1
48)
>
>         at
>
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:86
9)
>
>         at
>
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.proc
essConnection(Http11BaseProtocol.java:664)
>
>         at
>
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint
.java:527)
>
>         at
>
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollow
erWorkerThread.java:80)
>
>         at
>
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:684)
>
>         at java.lang.Thread.run(Unknown Source)


--
http://raibledesigns.com

---------------------------------------------------------------------
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]




--
http://raibledesigns.com

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

Reply via email to