I think the validation you're looking for is beyond the scope of the
validate() method. The Struts form validation should concentrate on
syntactic validation, such as making sure a zip code field has the right
number of digits, a int field contains valid numeric data, a required field
was filled in, or a date field contains data in the correct format.
Take a look at struts-example.war. The validate() method of RegistrationForm
checks that the given passwords match, but the check to see if the password
is valid is done in an Action class.
--- Eric Noel <[EMAIL PROTECTED]> wrote:
> How do i validate in my ValidatorForm when in my html i have two submit
> buttons having same name = "btn".
>
> ## I have this idea of a login form with two submit buttons (ie., sign
> in, passwd change) having same name "btn":
>
> <html:errors />
> <html:form action="Login">
> <table>
> <tr>
> <td><bean:message key="signinForm.loginname"/></td>
> <td><html:text property="loginName"/> </td>
> </tr>
> <tr>
> <td><bean:message key="signinForm.password"/></td>
> <td><html:password property="loginPassword"/> </td>
> </tr>
> <tr>
> <td><bean:message key="signinForm.newpassword"/></td>
> <td><html:password property="loginNewPassword"/> </td>
> </tr>
> <tr>
> <td><bean:message key="signinForm.confirmpassword"/></td>
> <td><html:password property="loginConfirmPassword"/> </td>
> </tr>
> <tr>
> <td >
> <html:submit property="btn">
> <bean:message key="signinForm.signin"/>
> </html:submit>
>
> <html:submit property="btn">
> <bean:message key="signinForm.pwdchg"/>
> </html:submit>
> </td>
> </tr>
> </table>
> </html:form>
>
> ## On my LoginAction i used LookupDispatchAction
> ...<snipped>
>
> protected Map getKeyMethodMap() {
> Map map = new HashMap();
> map.put("signinForm.signin", "signin");
> map.put("siginForm.pwdchg", "pwdchg");
> return map;
> }
> public ActionForward signin(
> LoginForm loginForm = (LoginForm)form;
> loginName = loginForm.getLoginName();
> loginPassword = loginForm.getLoginPassword();
> loginNewPassword = loginForm.getLoginNewPassword();
>
> public ActionForward pwdchg(
> LoginForm loginForm = (LoginForm)form;
> loginName = loginForm.getLoginName();
> loginPassword = loginForm.getLoginPassword();
> loginNewPassword = loginForm.getLoginNewPassword();
>
>
> ## The question is how do i validate the fields in my ActionForm (ie.g
> ValidatorForm). E.g if the password change button was clicked check if
> loginNewPassword and loginChangePassword exists, etc. If sign in button
> was clicked check if loginName exists, etc.
>
> ## my ValidatorForm code below, but it validates for both buttons :
> ..<snipped>
> public ActionErrors validate(ActionMapping mapping,
> HttpServletRequest request) {
>
> ActionErrors errors = super.validate(mapping, request);
> if (errors == null) errors = new ActionErrors();
>
> if ( (loginNewPassword == null ) || (loginNewPassword.length() == 0)
> || (loginNewPassword.equals(""))) {
> errors.add("loginNewPassword",
> new
> ActionError("errors.login.newpassword.required"));
> }
> return errors;
> }
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
__________________________________
Do you Yahoo!?
Win a $20,000 Career Makeover at Yahoo! HotJobs
http://hotjobs.sweepstakes.yahoo.com/careermakeover
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]