Struts - Validation

PessoALL,

ve se alguem consege me ajudar.
Estou fazendo o serviço Fale Conosco de uma empresa.
Todos devem saber como funciona.
O usuario vai la e preenche uns dados e manda a mensagem
pra empresa via site. Até ai tudo normal. Mas existem
duas formas desse formulario, uma é pra um usuario
qualquer e outra é pra usuario ja cliente e que esta logado
no sistema. Digamos que pra usario qualquer existem os
campos A B C D e E obrigatorios. Isso ta funcionando tranquilo.
Mas esse mesmo formulario é dinamico, quando um usuario cliente
esta logado so aparecem os campos A e B por exemplo.
Mas o validation continua validando tudo, inclusive imprime a msg
de erro dos campos C D e E.

Alguma ideia de como resolver isso?

A outra duvida é que tem um campo com checkbox com SIM ou NAO e esse campo so eh validado se marcar em SIM.
Eh uma validacao condicional. Tudo isso usando o validation do struts.

valeu!

Pois é, se utilizar o validation do struts não adianta ser uma tela dinâmica que mesmo não sendo exibidos os campos eles serão validados de qualquer jeito.

Olha, poderias fazer o seguinte, criar uma action para cada situação.

Uma deles validaria os campos A B C D e E e outra validaria os campos A e B.

Antes de submeter a página você trocaria a action do form.

Porém, lá no struts-config.xml o seu form deve ser do tipo
org.apache.struts.validator.DynaValidatorActionForm e lá no arquivo validation.xml você declara

e

Então cara, nessa situação acho que o melhor é fazer a validação na mão mesmo, no método validate() do actionForm.