Estou usando o Struts Validator e gostaria de saber como fazer para ele dar uma mensagem na tela em que, pelo menos um campo é requerido (é um form de pesquisa, que retornará uma lista com o resultado depois… os resultados podem ser muitos, portanto pelo menos um campo seria obrigatório).
Já consegui fazer ele validar um campo apenas… mas nesse caso, como devo proceder? Tenho que dizer quais são os campos que eu quero que ele valide?
1 - Pelo que eu sei essa validação que vc tem que fazer não tem no struts validator, mas vc pode criar essa validação e utiliza-la pelo struts validator. É bem simples fazer isso. Ou vc faz essa validação via javascript. Eu acho a primeira opção bem melhor. Se vc achar outra forma melhor post aqui para agente
2 - Sim, no sutruts validator vc tem q informar quais os campos e quais as validações que deveram ser feita nesse campo. E para um campo vc pode ter mais de uma validação. Essa informação fica no validation.xml
marcushlm
ou você pode fazer via annotations, colocando em cima do método da action que vai ser validado, por exemplo:
@Validations(requiredStrings={@RequiredStringValidator(fieldName="senhaAtual",trim=true,message="Digite sua senha atual."),@RequiredStringValidator(fieldName="novaSenha",trim=true,message="Digite sua nova senha.")})publicStringchangePassword(){
acima da assinatura da action deve ser utilizada a seguinte annotation tambem:
e nos metódos nos quais não vai haver validação, essa outra:
@SkipValidationpublicStringinput(){
testa ai!
ps: estou considerando o caso do struts 2.
miko_chin
Ok, obrigada…
Marcus,
eu gostei da idéia, mas queria deixar tudo padronizado usando as validações do struts mesmo. Se eu conseguir alguma coisa, posto aqui!
marcushlm
miko_chin:
Ok, obrigada…
Marcus,
eu gostei da idéia, mas queria deixar tudo padronizado usando as validações do struts mesmo. Se eu conseguir alguma coisa, posto aqui!
miko_chin, esse estilo de validação com anotações é do próprio struts, é só uma alternativa ao uso de XML.