Forma correta de impl. de extends no ActionForm

Pessoal,

vejam o cenário, tenho uma classe Pessoa e uma classe PessoaJuridica que extende Pessoa, bom esses são meus VOs.

Tenho um PessoaForm que extende ActionForm e preciso contruir a classe PessoaJuridicaForm extendendo PessoaForm, mas enfim isso é entendido pelo Struts? e depois no caso da execução do método validate() eu deixaria os atributos de PessoaForm como protected para poder acessa-los em PessoaJuridica e fazer o validate() ou deixo os atributos em PessoaForm como private e executo o método validate() da superclasse no método validate() de PessoaJuridica como segue?

public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)
{
ActionErrors actionErrors = new ActionErrors();
actionErrors.add(super.validate(mapping, request));

return actionErrors;

}

Se não me falhe a memória “todos atributos” das suas classes Forms devem ser “protected” porcausa que o Struts acessa via Reflection e os atributos tem que estar vísiveis para o ActionForm(Struts).

E sobre a sua dúvida de hiearquia o Struts consegue entender sim, aqui eu uso uma classe(MainActionForm) abstrata que contém os atributos referente as ações(entre outras coisas) e ela extende o ActionForm(Struts) e os Forms das telas extende apenas o MainActionForm.

Sem mais, Rodrigo.

Ok Rodrigo,

vou aplicar dessa forma então, valeu a dica!