Pessoal estou quebrando a cabeça para tentar renderizar um <h:panelGroup> apartir de um resultado do <h:selectOneRadio>.
<h:selectOneRadio id="tipoPessoa"
value="#{cadastroPessoaBean.pessoa.tipoPessoa}"
label="Tipo de Pessoa" required="true">
<f:selectItems value="#{cadastroPessoaBean.tipoPessoa}"/>
</h:selectOneRadio>
<h:message for="tipoPessoa" showSummary="true" showDetail="false"
styleClass="msgErro" />
<h:panelGroup rendered="#{[b]O QUE DEVO COLOCAR A QUI[/b]}"
id="pessoaPJGroup">
<h:outputLabel value="CNPJ:" />
<h:inputText id="pjuridica" value="#{cadastroPessoaBean.pessoa.cnpj}" />
</h:panelGroup>
<h:panelGroup rendered="#{[b]O QUE DEVO COLOCAR A QUI[/b]}"
id="pessoaFSGroup">
<h:outputLabel value="CPF:" />
<h:inputText id="rgInput" value="#{cadastroPessoaBean.pessoa.cpf}" />
</h:panelGroup>
</h:panelGroup>
O Problema é que o meu <f:selectItems> representa um Enum, então não sei como obter o valor da escolha =/
o que devo fazer? alguma sugestão? OBG
newbcc
#2
Olá,
esse atributo não é obrigatório, então você pode retirar caso não tenha alguma regra que se aplique.
O atributo rendered espera por um valor do tipo boolean que determinará se o elemento em questão, no caso o Panel Group, será ou não exibido.
Abs!
no Bean:
private Boolean valor;
//getter and setters
no atributo:
//no primeiro
#{meuBean.valor}
//no segundo
#{!meuBean.valor}
No selectOneMenu
<h:selectOneMenu value="#{meuBean.valor}" >
<f:selectItem itemValue="#{true}" />
<f:selectItem itemValue="#{false}" />
<f:ajax reRender="painelDesejado" />
</h:selectOneMenu>
Já da pra ter uma base.
[quote=altitdb]no Bean:
private Boolean valor;
//getter and setters
no rendered do panel:
//no primeiro
#{meuBean.valor}
//no segundo
#{!meuBean.valor}
No selectOneMenu:
<h:selectOneMenu value="#{meuBean.valor}" >
<f:selectItem itemValue="#{true}" />
<f:selectItem itemValue="#{false}" />
<f:ajax reRender="painelDesejado" />
</h:selectOneMenu>
Já da pra ter uma base.[/quote]
no Bean:
private Boolean valor;
//getter and setters
no rendered do panel:
//no primeiro
#{meuBean.valor}
//no segundo
#{!meuBean.valor}
No selectOneMenu:
<h:selectOneMenu value="#{meuBean.valor}" >
<f:selectItem itemValue="#{true}" />
<f:selectItem itemValue="#{false}" />
<f:ajax reRender="painelDesejado" />
</h:selectOneMenu>
Já da pra ter uma base.