Bom dia pessoal…
Estou com o seguinte problema… No xhtml abaixo, quando selecione um perfil o fildeset (mainField) com o nome do perfil e carrega os campos do perfil selecionado. O problema em si é que preciso atualizar o formulário para que o componente renderizado seja exibido e ao atualizar o formulário, o radioButton com o perfil selecionado se desmarca… O formulário desejado é exibido sem problema, independente do perfil selecionado. O único problema é que ao atualizar o formulário a o radioButton fica desmarcado e acredito que isso não seja correto.
Já mudei o ajax para atualizar só o fildset(mainFildset), mas ai o componente renderizado não é exibido.
Alguém pode me dar uma luz, de como resolver isso… a lógica que devo usar pra não ter esse problema… ?
<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:stella="http://stella.caelum.com.br/faces2">
    <h:head>
        <title>NUTRISIS - Cadastro de Usuários</title>
        <link rel="stylesheet" type="text/css" href="#{facesContext.externalContext.request.contextPath}/css/perfil.css" />
    </h:head>
    <h:body styleClass="body">
        <h:form id="formPrincipal">
            
            <!-- Inicio - Sessão de Growl -->
            <p:growl id="growlPerfil" showDetail="false" />
            <p:growl id="growlCep" sticky="false" showDetail="true" for="cep" life="7000"/>
            <!-- Fim - Sessão de Growl -->
            
            
            <!-- Inicio - Sessão de blockUI-->
            <p:blockUI block="formPrincipal" trigger="cep, btnCadUsuario">
                Processando Requisição
            </p:blockUI>
            <p:blockUI block="formPrincipal" trigger="cpf">
                Verificando CPF
            </p:blockUI>
            <!-- Fim - Sessão de blockUI -->
            <!-- 
             Inicio do formulário renderizavel. 
            -->
            <p:fieldset id="principalFild" legend="Cadastrar Usuário" toggleable="false">
                <p:fieldset legend="Selecione o Pefil" toggleable="false" id="perfil" styleClass="perfil">
                    <h:selectOneRadio value="#{perfilBean.perfil}" >
                        <p:ajax listener="#{perfilBean.renderizar}" update="principalFild" />
                        <f:selectItem itemValue="1" itemLabel="Paciente"  />
                        <f:selectItem itemValue="2" itemLabel="Secretária(o)" />
                        <f:selectItem itemValue="3" itemLabel="Nutricionista" />
                        <f:selectItem itemValue="4" itemLabel="Laboratório de Exames" />
                    </h:selectOneRadio>
                </p:fieldset>
                <br />
                <p:fieldset legend="#{perfilBean.perfil}" toggleable="true" id="mainFildset" rendered="#{perfilBean.isRenderiza}">
                    <!-- INICIO - IDENTIFICAÇÃO -->
                    <p:fieldset legend="Identificação" rendered="true">
                        <p:panelGrid columns="4" >
                            <h:outputLabel for="login" value="Login: " />
                            <p:inputText id="login" value="#{perfilBean.tbUsuario.login}"/>
                            <h:outputLabel for="nome" value="Nome Completo: " />
                            <p:inputText id="nome" value="#{perfilBean.tbUsuario.nomeCompleto}" size="50"/>
                            <h:outputLabel for="cpf" value="CPF: " />
                            <p:inputMask id="cpf" mask="999.999.999-99" value="#{perfilBean.tbUsuario.cpf}">
                                <p:ajax id="ajaxCpf" listener="#{perfilBean.recuperaCpf}"
                                        update="growlPerfil" />
                            </p:inputMask>
                            <h:outputLabel for="rg" value="RG:"/>
                            <p:inputText id="rg" value="#{perfilBean.tbUsuario.rg}" />
                            <h:outputLabel for="dn" value="Data de Nascimento: " />
                            <p:inputMask id="dn" mask="99/99/9999" value="#{perfilBean.tbUsuario.dataNascimento}" />
                        </p:panelGrid>
                    </p:fieldset>
                    <br />
                    <!-- FIM - IDENTIFICAÇÃO -->
                    <!-- INICIO - CONTATO -->
                    <p:fieldset legend="Contato" id="contato" rendered="true">
                        <p:panelGrid columns="4" >
                            <h:outputLabel for="foneR" value="Telefone Residêncial: "/>
                            <p:inputMask id="foneR" mask="(99) - 9999-9999" value="#{perfilBean.tbUsuario.telefonePrincipal}"/>
                            <h:outputLabel for="foneC" value="Telefone Comercial: "/>
                            <p:inputMask id="foneC" mask="(99) - 9999-9999" value="#{perfilBean.tbUsuario.telefoneSecundario}"/>
                            <h:outputLabel for="email" value="Email: "/>
                            <p:inputText id="email" value="#{perfilBean.tbUsuario.email}" size="50"/>
                        </p:panelGrid>
                    </p:fieldset>
                    <br/>
                    <!-- FIM CONTATO -->
                    <!-- INICIO - ENDEREÇO -->
                    <p:fieldset legend="Endereço" id="endereco" rendered="#{perfilBean.isRenderiza}">
                        <p:panelGrid columns="4" >
                            <h:outputLabel for="cep" value="CEP: "/>
                            <p:inputMask id="cep" mask="99-999-999" value="#{perfilBean.cep}">
                                <p:ajax id="ajaxCep" listener="#{perfilBean.recuperaCep}"
                                        update="log, cidade, bairro, uf, growlCep" />
                            </p:inputMask>
                            <h:outputLabel for="log" value="Logradouro: "/>
                            <p:inputText id="log" value="#{perfilBean.tbUsuario.logradouro}" size="50"/>
                            <h:outputLabel for="bairro" value="Bairro: "/>
                            <p:inputText id="bairro"  value="#{perfilBean.tbUsuario.bairro}"/>
                            <h:outputLabel for="comp" value="Complemento: "/>
                            <p:inputText id="comp"  value="#{perfilBean.tbUsuario.complemento}"/>
                            <h:outputLabel for="cidade" value="Cidade: "/>
                            <p:inputText id="cidade"  value="#{perfilBean.tbUsuario.cidade}"/>
                            <h:outputLabel for="num" value="Nº: "/>
                            <p:inputText id="num"  value="#{perfilBean.tbUsuario.numero}" size="5"/>
                            <h:outputLabel for="uf" value="UF: " />
                            <p:selectOneMenu id="uf" value="#{perfilBean.tbUsuario.uf}" effect="fade">
                                <f:selectItem itemLabel="Estado" itemValue=""/>
                                <f:selectItems value="#{perfilBean.recuperaUF}"/>
                            </p:selectOneMenu>
                        </p:panelGrid>
                    </p:fieldset>
                    <br/>
                    <!-- FIM ENDEREÇO -->
                    <br/>
                    <p:commandButton id="btnCadUsuario" ajax="false" value="Cadastrar Usuário" 
                                     actionListener="#{perfilBean.cadastrarPerfil}"
                                     update="formPrincipal"/>
                </p:fieldset>
            </p:fieldset>
        </h:form>
    </h:body>
</html>