Tenho o seguinte cenario:
pessoa Fisica e Juridica,ao selecionar um dos tipos em um <h:selectOneRadio …/> deve ser renderizada os
<a4j:outputPanel …/> referentes ao tipo selecionado,este processo deve passar sem que seja validado os campos requeridos,vejam minha dificuldade abaixo:
<center><h:outputText value="#{msg.tipopessoa}"></h:outputText>
<h:selectOneRadio
value="#{cliente.cliente.tipopessoa}">
<a4j:support event="onclick" action="#{cliente.mudaPessoa}"
reRender="pf,pj,r" ajaxSingle="true"></a4j:support>
<f:selectItem itemLabel="#{msg.pessoafisica}" id="chpf"
itemValue="true" itemDisabled="#{cliente.clienteEditando}" />
<f:selectItem itemLabel="#{msg.pessoajuridica}" id="chpj"
itemValue="false" itemDisabled="#{cliente.clienteEditando}" />
</h:selectOneRadio></center>
aqui os paineis que serão renderizados conforme a opcao do usuario:
<a4j:outputPanel ajaxRendered="true" id="pf"
rendered="#{cliente.cliente.tipopessoa}">
<h:panelGrid columns="2" width="730">
<h:panelGroup>
<h:outputText value="#{msg.nome}"></h:outputText>
<rich:spacer width="13"></rich:spacer>
<h:inputText value="#{cliente.pessoafisica.nome}" id="nome"
required="true" style=" width : 507px;" styleClass="select"
maxlength="40">
</h:inputText>
<h:graphicImage value="/images/stop.png" width="15"
height="15" styleClass="imagem">
</h:graphicImage>
</h:panelGroup>
<br>
<h:panelGroup>
<h:outputText value="#{msg.cpf}"></h:outputText>
<rich:spacer width="13"></rich:spacer>
<h:panelGroup>
<h:inputText value="#{cliente.pessoafisica.cpf}"
onkeypress="mascara(this,soNumeros)" maxlength="11"
style=" width : 123px;" id="icpf" onblur=" VerificaCPF ();"
required="#{cliente.cliente.tipopessoa}"
disabled="#{cliente.clienteEditando}">
</h:inputText>
<h:graphicImage value="/images/stop.png" width="15"
height="15" styleClass="imagem">
</h:graphicImage>
</h:panelGroup>
<h:outputText value="#{msg.rg}"></h:outputText>
<rich:spacer width="11"></rich:spacer>
<h:panelGroup>
<h:inputText value="#{cliente.pessoafisica.rg}"
onkeypress="mascara(this,soNumeros)" styleClass="select"
style=" width : 109px;" id="rg"
required="#{cliente.cliente.tipopessoa}"
disabled="#{cliente.clienteEditando}">
</h:inputText>
<h:graphicImage value="/images/stop.png" width="15"
height="15" styleClass="imagem">
</h:graphicImage>
</h:panelGroup>
</h:panelGroup>
</h:panelGrid>
</a4j:outputPanel>
<a4j:outputPanel id="pj"
rendered="#{not cliente.cliente.tipopessoa}">
<h:panelGrid columns="3" width="712">
<h:panelGroup>
<h:outputText value="#{msg.nomefantasia}"></h:outputText>
<rich:spacer width="8"></rich:spacer>
<h:inputText value="#{cliente.pessoajuridica.nomefantasia}"
style=" width : 319px;" id="nf" maxlength="40"
required="#{!cliente.cliente.tipopessoa}"
styleClass="select" label="#{msg.nomefantasia}">
</h:inputText>
<h:graphicImage value="/images/stop.png" width="15"
height="15" styleClass="imagem">
</h:graphicImage>
</h:panelGroup>
<h:panelGroup>
<h:outputText value="#{msg.cnpj}"></h:outputText>
<rich:spacer width="20"></rich:spacer>
<h:inputText value="#{cliente.pessoajuridica.cnpj}"
id="icnpj" onkeypress="mascara(this,soNumeros)"
maxlength="18" required="#{!cliente.cliente.tipopessoa}"
style=" width : 190px;" label="#{msg.cnpj}"
onblur="return validaCNPJ()"
disabled="#{cliente.clienteEditando}">
</h:inputText>
<h:graphicImage value="/images/stop.png" width="15"
height="15" styleClass="imagem">
</h:graphicImage>
</h:panelGroup>
</h:panelGrid>
</a4j:outputPanel>
<a4j:outputPanel id="r"
rendered="#{not cliente.cliente.tipopessoa}">
<h:panelGrid columns="3" width="737">
<h:outputText value="#{msg.ramo}"></h:outputText>
<rich:spacer width="0"></rich:spacer>
<h:panelGroup>
<h:inputText value="#{cliente.ramoatividade.descricao}"
id="ramo" maxlength="40" styleClass="select"
required="#{not cliente.cliente.tipopessoa}"
style=" width : 318px;"></h:inputText>
<h:graphicImage value="/images/stop.png" width="15"
height="15" styleClass="imagem">
</h:graphicImage>
</h:panelGroup>
</h:panelGrid>
</a4j:outputPanel>
Se alguem puder ajudar fico mto grato,pois ja pesquisei e tentei implementar isso de varias maneiras mas nao obtive exito ainda .
Obrigado,abracos.