Como usar validação javascript no Struts?

4 respostas
thiagorani

Pessoal, alguém poderia dar uma luz de como usar validação javascript no struts?
Olhando o validator-rules.xml notei que ele valida os campos do formulario atraves de umas funcoes javascript, como isso acontece?
Se alguem tiver um documento explicando por favor, mande por email para [email removido]!

Valeu.

4 Respostas

cariocathi
vc tem q colocar o plugin do validator no arquivo de configuração do struts
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
       <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
                                              /WEB-INF/validation.xml"/>
</pug-in>

o validator-rules.xml é o arquivo q vc conhece e o validation é o arquivo q vc cria com as suas validações

<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE form-validation PUBLIC
          "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0//EN"
          "http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">

<form-validation>
   <formset>
      <form name="LoginForm">
         <field property="login" depends="required">
     	     <arg0 key="LoginForm.name.displayName"/>
         </field>
      </form>
   </formset>
</form-validation>

esse é um exemplo de uma página onde a property login é requerida e ele não dá submit enquanto ela estiver vazia.

e no jsp vc deve colocar <html:javascript formName="meuForm" />

e na tag <html:form vc coloca <hml:form action=... onsubmit="return validateMeuForm( this )" >

thiagorani

Acho que peguei o jeito da coisa!

Vou começar a codificar meu projeto de final de curso na facul, vou usar Struts!

o nome da funcao “validateMeuForm” pode ser qualquer um, ou tem alguma amaração?

thiagorani

tem que ser o nome da funcao contida no validator-rules.xml!

Deu erro cara, aparaceu a funcao javascript no browser, logo em cima do formulario!

thiagorani

Putz, nao tinha derrubado o servidor! :oops:
Valeu, funcionou!

Criado 30 de outubro de 2003
Ultima resposta 31 de out. de 2003
Respostas 4
Participantes 2