Solução para Struts Validator?

Salve galera.

Vamos lá, tenho apenas um "Form(estende ActionForm) " para todas as telas do meu sistema, isso mesmo apenas “um”.

Fiz isso porq não vi necessidade de ter um Form pra cada tela, assim tanb eu consigo usar campos de outras telas sem poluir o meu Form.

No “validation.xml” coloquei as validações dos campos do Form e chamei no Jsp, até aqui tudo bem, mas quando executo submit ele não consegue validar porq na tela não existe todos os campos do sistema.

Eis a minha dúvida, gostaria de saber se tem alguma forma/configuração no validator que antes de validar ele verifica se existe tal campo na tela???

Obrigado.

Sem mais, Rodrigo.

Experimenta sobrecarregar o método reset do seu ActionForm e inicializar os campos do seu form, assim eles passam a “existir” (!=null).

Valew pela resposta.

Pra mim fica meio inviável sobrepor já que esse Form tem uma porrada de campos(atributos), eu fiz o seu teste mas quando envio o form dá um erro de javascript dizendo que o tipo do campo é nulo.

Tem mais alguma outra solução por favor?

Valew.

Sem mais, Rodrigo.

Como vc esta inicializando os atributos?
Que erro de javascript é esse?

Eu sobrecarreguei o método reset e iniciei com um valor qualquer os atributos.

O erro do js diz que o campo é nulo, inválido.

Vc usa um Form por tela?? Se teu sistema tiver 500 telas terá 500 forms diferentes né?? Estou procurando alguma melhor sugestão porq estou percendo que com um apenas um Form não conseguirei usar o validator do Struts. :wink:

Obrigado.

Sem mais, Rodrigo.

E você quer usar o mesmo form em quinhentas páginas? Não parece muito bom também.

O que você pode fazer é definir o atributo “page” na validação e colocar ele no seu formulário, mas isso vai ser uma gambiarra no mínimo, terrível. Dê uma olhada nos forms com páginas lá no Validator:

http://struts.apache.org/userGuide/dev_validator.html

Blz esse esquema do page já resolve o problema, valew. :wink:

Mas a minha idéia era essa mesmo, um Form pra todo sistema será que não fica viável?

Pensei que fazendo assim facilitaria o reaproveitamento dos campos, usando um Form eu posso ter 200 telas normais e mais 20 telas chamando diversos campos de outras telas por exemplo, mas já to começando a mudar de opinião.

O que vc me indicaria? Nesse caso acho que o Dynamic ActionForm tanb não ajudaria.

Obrigado.

Sem mais, Rodrigo.