Galera, estou usando o componente Tree do Primefaces e preciso fazer que apareça um campo na tela quando o usuário clicar em um nó da árvore.
[code]
<p:fieldset id=“content” legend="${helpMsgs.label_content}">
<p:tree value="#{ajudaController.root}" var=“node” dynamic=“true” cache=“false"
selectionMode=“single” selection=”#{ajudaController.selectedNode}" id=“content”>
<p:ajax event=“select” update=":form:inclusion_esn_1" listener="#{ajudaController.onNodeSelect}" />
<p:treeNode id=“treeNode”>
<h:outputText value="#{node}" id=“lblNode”/>
</p:treeNode>
</p:tree>
</p:fieldset>
</p:layoutUnit>
<!-- INCLUSAO DE ESN -->
<p:layoutUnit position="center">
<!-- Tela de Abertura -->
<p:fieldset id="inclusion_esn_1" legend="${helpMsgs.label_inclusion_esn}" rendered="#{ajudaController.telaAbertura}">
<h:outputLabel value="tela abertura " styleClass="textLabel"/>
</p:fieldset>
</p:layoutUnit> [/code]
Eu debuguei e caiu no método do Controller.
public void onNodeSelect(NodeSelectEvent event) {
telaAbertura = true;
}
/// getters and setters
public boolean getTelaAbertura() {
return telaAbertura;
}
No atributo update do evento eu coloquei o id do campo que eu quero que apareça. Embora tenha caído no método onNodeSelect, o campo não apareceu na tela.
Alguém saberia dizer se tem alguma coisa errada no meu código?