I had a similar problem here.  I used formdef to define the page attribute and 
didn't specify the type.  When the cast was made inside of validator, it was 
unable to cast the value to an Integer.  The field was a string containing the 
page number.  Couldn't it use Integer.valueOf?

-----Original Message-----
From: Bart Busschots [mailto:[EMAIL PROTECTED]
Sent: Sunday, August 06, 2006 3:33 PM
To: Struts Users Mailing List
Subject: Re: Validator not getting called and I can't see why [resolved]


OK, I got all this figured out in the end.

The validator was being called but because of problems with the page 
attribute in the form the validator appears to have been receiving a 
page value of zero and hence not validating the items on pages 1 or two 
because neither 1 nor 2 are less that or equal to zero! When I did get 
the validator to be called it still wasn't working right but I got that 
fixed too.

Anyhow, I did up a blog post about it which can be found here: 
http://www.bartbusschots.ie/blog/?p=262

If people thing an edited version of this would be a useful addition to 
the Wiki work away, just credit me or link to the original blog post and 
I'll be more than happy.

Cheers for your help guys,

Bart.

Bart Busschots wrote:
> I'm either missing something stupid (which is always possible) or I've 
> managed to break the validator. I have an app that uses validator all 
> over the place and it's working fine in all my other actions but for 
> this one action it is simply not getting called.
>
> I can't see any difference between this action/form/validation and all 
> the other ones that are working.
>
> This is the form:
>
>  <form-bean name="createStudentGroupForm" 
> type="org.apache.struts.validator.DynaValidatorForm">
>   <form-property name="groupName" type="java.lang.String" />
>   <form-property name="noStudents" type="java.lang.String" />
>   <form-property name="groupType" type="java.lang.String" />
>   <form-property name="wikiText" type="java.lang.String" />
>   <form-property name="studentNames" type="java.lang.String[]" />
>  </form-bean>
>
> This is the action:
>
>  <action path="/mentor/createStudentGroupStep1" 
> type="vtie.portal.mentor.CreateStudentGroupPrepareAction" 
> name="createStudentGroupForm" scope="session" validate="true" 
> input="/home/mentor/addStudentGroupForm.jsp">
>   <forward name="createAnonymous" 
> path="/do/mentor/createAnonymousStudentGroup" />
>   <forward name="getStudentNames" 
> path="/home/mentor/getStudentNamesForm.jsp" />
>   <forward name="fail" path="/home/mentor/addStudentGroupForm.jsp" />
>  </action>
>
> And this is the validation:
>
>  <form name="createStudentGroupForm">
>   <field property="groupName" page="1" depends="required, mask">
>    <var><var-name>mask</var-name><var-value>^[a-zA-Z]+[\w\ 
> ]*$</var-value></var>
>    <arg0 key="mentor.createStudentGroup.groupName.label"/>
>   </field>
>   <field property="noStudents" page="1" depends="required, integer">
>    <arg0 key="mentor.createStudentGroup.noStudents.label"/>
>   </field>
>   <field property="studentNames" page="2" depends="required">
>    <arg0 key="mentor.createStudentGroup.studentNames.label"/>
>   </field>
>  </form>
>
> Can anyone see something obviously wrong there?
>
> Cheers,
>
> Bart.
>
> ---------------------------------------------------------------------
> 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]


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

Reply via email to