No meu sistema a Classe pai é Cliente com duas classes filhas (PessoaFisica) e (PessoaJuridica).
No meu JSP, tenho que criar um campo radio ou select que quando eu escolho pessoa fisica ele habilita os dados (rg, cpf) e se eu escolho pessoa Juridica habilita (cnjp, etc…)
Fiz algo como o que vc está precisando utilizando JSF 2, xhtml e primefaces. Não sei quais as tecnologias vc está utilizando porém ai vai uma versão adaptada, espero ajudar.
<h:panelGridcolumns="2"cellspacing="1"><h:selectOneRadioid="tipoPessoa"valueChangeListener="#{clienteMB.trocarMascara}"><f:selectItemsvalue="#{clienteMB.tpPessoa}"/></h:selectOneRadio></h:panelGrid><p:outputPanel><h:outputLabelvalue="CPF/CNPJ: *"/><p:inputMaskmask="#{clienteMB.mascaraCpfCnpj}"id="pesCpfCnpj"size="20"value="#{clienteMB.cpfcnpj}"required="true"requiredMessage="CPF/CNPJ é obrigatório!"validator="validadorCpfCnpj"/></p:outputPanel>
/**
* método para setar a máscara de CPF/CNPJ e o tpPessoa
* @param tipoPessoa
*/
public void mascaraCpfCnpj(String tipoPessoa){
if (tipoPessoa.equalsIgnoreCase("PJ")) {
this.setMascaraCpfCnpj("99.999.999/9999-99");
this.getPessoa().setTpPessoa("PJ");
} else {
this.setMascaraCpfCnpj("[CPF removido]");
this.getPessoa().setTpPessoa("PJ");
}
}
M
macavieira
Obrigado.
Vi 2 exemplos bastante interessante… vou ver como vou utiliza-los
M
macavieira
Romarcio, obrigado, consegui fazer com o seu codigo, ficou legal
só estou com uns probleminhas na hora de mostrar os dados, pois se eu nao digito as informações do Pessoa fisica e cadastro, acusa um erro que não encontrou nada em RG, etc, embora os campos permitem null
mas vou tentar resolver.
Obrigado!!!
romarcio:
Você vai ter que usar JavaScript.
Um exemplo bem simples.