galera o meu validation.xml ta meio loko
[code]
<?xml version="1.0" encoding="UTF-8"?>
[/code]
e o meu application.properties ta
errors.required.nome=<H3><FONT color="red">Erro de Validacao</FONT></H3> <LI>Nome Requisitado</LI>
errors.required.sobrenome=<H3><FONT color="red">Erro de Validacao</FONT></H3> <LI>Sobrenome Requisitado</LI>
so que o aplication nao pega a requisicao do validation… -.- ele so funciona se eu deixar soh errors.required
mais ai fica zuada a mensgaem de erro pq vai para o nome e sobrenome
e eu queria separado para cada 1
Você está usando Struts1?
bom utilizo struts 1, mas não deve ser muito diferente essa parte.
tente assim:
<?xml version="1.0" encoding="UTF-8"?>
<!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>
<formset>
<form name="login">
<field property="firstName" depends="required">
<arg key="comum.nome"/>
</field>
<field property="lastName" depends="required">
<arg key="comum.sobrenome"/>
</field>
</form>
</formset>
</form-validation>
e no seu application.properties :
errors.required=<H3><FONT color="red">Erro de Validacao</FONT></H3> <LI>{0} Requisitado</LI>
comum.sobrenome=Sobrenome
comum.nome=Nome
Perceba que no seu validation.xml voce tem a tag , ou seja, um argumento. Quando voce cria uma validação do tipo “required”, se falhar ele vai chamar o seu errors.required do .properties passando o argumento que voce configurou no .xml
se voce precisar de mais argumentos. voce vai usar assim:
properties:
errors.minlength={0} não pode ser menor que {1} caracteres.
validation.xml:
<form name="loginForm">
<field property="password" depends="required,minlength">
<arg0 key="comum.password"/>
<arg1 name="minlength" key="${var:minlength}" resource="false"/>
<var>
<var-name>minlength</var-name>
<var-value>4</var-value>
</var>
</field>
</form>
qualquer duvida, posta ae.
abs
hmm… obrigado pela dica e explicacao vou testar
intendi como funciona…
o
{0} Requisitado o 0 e como se foc uma variavel que vai receber o dado que tem q passar
e o arg key é uma chave falando oque ele vai passar para imprimir no erro.required
é isso?
isso o {0} vai receber um parametro, uma variável.
o <arg 0 > é a passagem de parametros, o que voce passar no <arg 0> ele vai preencher o {0}.
voce pode utilizar isso em uma classe java também, passando os parametros apos a mensagem separados por virgula. exemplo:
setMensagem(messageResources.getMessage("mensagem.clienteNaoEncontrado", codigoCliente.toString()));