struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Francisco Antonio Vieira Souza <avs1...@yahoo.com.br>
Subject Re: Help - I cannot validate a simple form with 2 fields
Date Wed, 21 Sep 2005 18:00:08 GMT
ActionError(...) is deprecated in Struts 1.2.7

rahul escreveu:

>try this
> errors.add("usuario", new ActionError("login.usuario.requerido"));
>
>
>  
>
>>-----Original Message-----
>>From: Francisco Antonio Vieira Souza [mailto:avs1001@yahoo.com.br]
>>Sent: Wednesday, September 21, 2005 8:30 PM
>>To: Struts Users Mailing List
>>Subject: Re: Help - I cannot validate a simple form with 2 fields
>>
>>
>>I really dont get it, I might be being so stupid not figuring out what
>>is going on wrong here, but I dont.
>>
>>Clearing a little. I decided not to use DynaForm and go back to the
>>usual ActionForm and gave up using Client-side validation.
>>
>>When I implement the validate method of the Bean (as it is now) I get
>>the error messages as expected, but I had to create a protected method
>>to check if the field was null or blank, then put the error message in
>>the ActionMessage.
>>
>>But I dont see any sense in doing such thing like that, why should I do
>>this inside validate method if I have already said in validation.xml
>>that those fields are REQUIRED, at least that message should be shown to
>>the user. Correct me if I am wrong.
>>
>>If I comment the validate method nothing happen, it is not able to check
>>if the field was left blank.
>>
>>Please be pacience and have a look again:
>>
>>struts-config.xml:
>><?xml version="1.0" encoding="ISO-8859-1" ?>
>>
>><!DOCTYPE struts-config PUBLIC
>>          "-//Apache Software Foundation//DTD Struts
>>Configuration 1.2//EN"
>>          "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
>>
>>
>><struts-config>
>>
>>    <form-beans>
>>        <!-- This is it -->
>>        <form-bean name="LoginUsuarioForm"
>>type="br.com.gerente.bean.LoginFormBean"/>
>>
>>        <form-bean name="GetClienteForm"
>>type="br.com.gerente.bean.GetClienteFormBean"/>
>>    </form-beans>
>>
>>    <global-exceptions>
>>
>>    </global-exceptions>
>>
>>    <global-forwards>
>>        <forward name="welcome"  path="/Clientes.do"/>
>>        <forward name="inicio" path="/index.jsp" redirect="true"/>
>>    </global-forwards>
>>
>>    <action-mappings>
>>        <!-- This is an action just to call the .jsp file with
>>the form -->
>>        <action path="/prepararLogin"
>>            type="br.com.gerente.action.SuccessAction">
>>            <forward name="success" path="/paginas/login.jsp"/>
>>        </action>
>>
>>        <!-- This is my (first) problem in validation -->
>>        <action name="LoginUsuarioForm"
>>            input="/paginas/login.jsp"
>>            path="/LoginUsuario"
>>            scope="request"
>>            type="br.com.gerente.action.LoginUsuarioAction"
>>            validate="true">
>>            <forward name="sucesso" path="/paginas/clienteCadastro.jsp"/>
>>        </action>
>>
>>        <!-- This is just the next form to be processed after validating
>>the previous -->
>>        <action path="/Clientes" forward="/paginas/clienteCadastro.jsp"/>
>>
>>        <!-- This is another form with the data from the previous
>>inputs -->
>>        <action name="GetClienteForm"
>>            input="/paginas/clienteCadastro.jsp"
>>            path="/clientes"
>>            scope="request"
>>            type="br.com.gerente.action.GetClienteFormAction">
>>            <forward name="mostrandoDadosCliente"
>>            path="/paginas/clienteDados.jsp"/>
>>        </action>
>>
>>    </action-mappings>
>>
>>    <controller
>>processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>
>>    <message-resources parameter="br/com/gerente/Resources"/>
>>
>>    <!-- ========================= Tiles plugin
>>===============================-->
>>    <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" />
>>    </plug-in>
>>
>>    <!-- ========================= Validator plugin
>>================================= -->
>>    <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="stopOnFirstError" value="true" />
>>    </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>
>>
>>    <global>
>>    </global>
>>
>>    <formset >
>>        <constant>
>>            <constant-name>postalCode</constant-name>
>>            <constant-value>^[0-9a-zA-Z]*$</constant-value>
>>        </constant>
>>
>>        <form name="LoginUsuarioForm">
>>            <field property="usuario" depends="required">
>>                <arg key="login.usuario"/>
>>            </field>
>>            <field property="senha" depends="required">
>>                <arg key="login.senha"/>
>>            </field>
>>        </form>
>>    </formset>
>>
>></form-validation>
>>//----------------------------------------------------------------
>>-----------------------------------------------
>>
>>/*
>> * LoginFormBean.java
>> *
>> * Created on 21 de Setembro de 2005, 08:25
>> *
>>*/
>>
>>package br.com.gerente.bean;
>>
>>import javax.servlet.http.HttpServletRequest;
>>import org.apache.struts.action.ActionMapping;
>>import org.apache.struts.action.ActionErrors;
>>import org.apache.struts.action.ActionMessage;
>>
>>public class LoginFormBean extends
>>org.apache.struts.validator.ValidatorForm {
>>    private String usuario;
>>    private String senha;
>>    private String senhaConfirmada;
>>
>>    public LoginFormBean() {
>>    }
>>
>>    public void reset(ActionMapping actionMapping, HttpServletRequest
>>request) {
>>    }
>>
>>    public ActionErrors validate(ActionMapping actionMapping,
>>HttpServletRequest request) {
>>        ActionErrors errors = super.validate( actionMapping, request );
>>        if (errors == null) {
>>            errors = new ActionErrors(  );
>>        }
>>        if( nullOrBlank( (String)this.getUsuario()) ) {
>>            errors.add("usuario", new
>>ActionMessage("login.usuario.requerido"));
>>        }
>>        if( nullOrBlank( (String)this.getSenha()) ) {
>>            errors.add("senha", new
>>ActionMessage("login.senha.requerido"));
>>        }
>>
>>        return errors;
>>    }
>>
>>    protected boolean nullOrBlank(String str) {
>>        return ((str == null) || (str.length() == 0));
>>    }
>>
>>    public String getUsuario() {
>>        return usuario;
>>    }
>>
>>    public void setUsuario(String usuario) {
>>        this.usuario = usuario;
>>    }
>>
>>    public String getSenha() {
>>        return senha;
>>    }
>>
>>    public void setSenha(String senha) {
>>        this.senha = senha;
>>    }
>>
>>    public String getSenhaConfirmada() {
>>        return senhaConfirmada;
>>    }
>>
>>    public void setSenhaConfirmada(String senhaConfirmada) {
>>        this.senhaConfirmada = senhaConfirmada;
>>    }
>>
>>}
>>//----------------------------------------------------------------
>>-----------------------------------------------
>>
>>/*
>> * LoginUsuarioAction.java
>> *
>> * Created on 21 de Setembro de 2005, 09:50
>> *
>> */
>>
>>package br.com.gerente.action;
>>
>>import br.com.gerente.bean.GetClienteFormBean;
>>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;
>>
>>public class LoginUsuarioAction extends org.apache.struts.action.Action {
>>
>>    /** Creates a new instance of LoginUsuarioAction */
>>    public LoginUsuarioAction() {
>>    }
>>
>>    public ActionForward execute(ActionMapping mapping, ActionForm form,
>>HttpServletRequest request, HttpServletResponse response) throws
>>Exception {
>>        return mapping.findForward("sucesso");
>>    }
>>}
>>//----------------------------------------------------------------
>>-----------------------------------------------
>>
>>Resources.properties:
>>#--- erro padrao / default errors --
>>errors.header=<font color="red">Erro! Por favor verifique a(s)
>>seguinte(s) mensagem(ns):<ul>
>>errors.footer=</ul></font>
>>errors.prefix=<LI>
>>errors.suffix=</LI>
>>
>>errors.invalid={0} is invalid.
>>errors.maxlength={0} can not be greater than {1} characters.
>>errors.minlength={0} can not be less than {1} characters.
>>errors.range={0} is not in the range {1} through {2}.
>>errors.required={0} é obrigatório.
>>errors.byte={0} must be an byte.
>>errors.date={0} is not a date.
>>errors.double={0} must be an double.
>>errors.float={0} must be an float.
>>errors.integer={0} must be an integer.
>>errors.long={0} must be an long.
>>errors.short={0} must be an short.
>>errors.creditcard={0} is not a valid credit card number.
>>errors.email={0} is an invalid e-mail address.
>>errors.cancel=Operation cancelled.
>>errors.detail={0}
>>errors.general=The process did not complete. Details should follow.
>>errors.token=Request could not be completed. Operation is not in sequence.
>>
>>login.titulo=Login de Acesso ao Sistema [G]erente
>>login.usuario=Nome de acesso
>>login.senha=Senha de acesso
>>login.usuario.requerido=Nome de acesso obrigatório
>>login.senha.requerido=Senha de acesso obrigatório
>>
>># -- botoes/buttons --
>>botao.enviar=Enviar Dados
>>botao.cancelar=Cancelar
>>botao.confirmar=Confirmar
>>botao.limpar=Limpar
>>botao.salvar=Salvar
>>//----------------------------------------------------------------
>>-----------------------------------------------
>>
>>login.jsp:
>><%@ taglib uri="http://jakarta.apache.org/struts/tags-bean"
>>prefix="bean" %>
>><%@ taglib uri="http://jakarta.apache.org/struts/tags-html"
>>prefix="html" %>
>><%@ taglib uri="http://jakarta.apache.org/struts/tags-logic"
>>prefix="logic" %>
>>
>><html:html locale="true">
>>    <head>
>>        <title><bean:message key="login.titulo"/></title>
>>        <html:base/>
>>    </head>
>>
>>    <body>
>>        <center>
>>            <h1><bean:message key="login.titulo"/></h1>
>>
>>            <table width="50%">
>>                <html:form action="/LoginUsuario.do" focus="login"
>>method="post">
>>                    <thead>
>>                        <tr>
>>                            <th ><bean:message key="login.usuario"/></th>
>>                            <th ><bean:message key="login.senha"/></th>
>>                        </tr>
>>                    </thead>
>>                    <tbody>
>>                        <tr>
>>                            <td><html:text property="usuario" size="20"
>>maxlength="20" /></td>
>>                            <td><html:password property="senha"
>>size="20" maxlength="10"/></td>
>>                        </tr>
>>                        <tr>
>>                            <td>
>>                                <html:submit>
>>                                    <bean:message key="botao.enviar" />
>>                                </html:submit>
>>                            </td>
>>                            <td>
>>                                <html:cancel>
>>                                    <bean:message key="botao.cancelar" />
>>                                </html:cancel>
>>                            </td>
>>                        </tr>
>>                    </tbody>
>>                </html:form>
>>            </table>
>>        </center>
>>        <html:errors />
>>    </body>
>>    <html:javascript formName="LoginUsuarioForm"
>>dynamicJavascript="true" staticJavascript="false"/>
>>
>></html:html>
>>
>>Thanks in advance.
>>Francisco
>>
>>
>>
>>
>>
>>_______________________________________________________
>>Novo Yahoo! Messenger com voz: ligações, Yahoo! Avatars, novos
>>emoticons e muito mais. Instale agora!
>>www.yahoo.com.br/messenger/
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>>For additional commands, e-mail: user-help@struts.apache.org
>>
>>
>>    
>>
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>For additional commands, e-mail: user-help@struts.apache.org
>
>
>  
>

	

	
		
_______________________________________________________ 
Novo Yahoo! Messenger com voz: ligações, Yahoo! Avatars, novos emoticons e muito mais. Instale
agora! 
www.yahoo.com.br/messenger/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message