Tree JSF só funciona no 1 select [JSF2 + Primefaces]

0 respostas
A

Gente, criei uma tree com o componente tree do primefaces, consigo carregar a árvore por meio do bean, consigo capturar o primeiro click, mas depois do primeiro click ele morre, não aparece + nada, apenas no 1 click.

Olha o meu xhtml

<ui:composition template="../../modulos/template/modelo.xhtml"
                xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:p="http://primefaces.prime.com.tr/ui">
    <ui:define name="estilos">
        <link rel="stylesheet" media="all" href="/FRB/resources/css/barcos.css"/>
    </ui:define>
    <ui:define name="conteudo">
        <p:panel>
            <h:panelGrid width="100%" id="titulo">
                <h:outputText value="Código Nacional de Dopagem"/>
            </h:panelGrid>
            <br/>
            <h:form>
                <p:tree value="#{tree.root}" var="node"
                        selection="#{tree.selectedNode}"
                        selectionMode="single"
                        update="nd"
                        nodeSelectListener="#{tree.onNodeSelect}">
                    <p:treeNode>
                        <h:outputText value="#{node}"/>
                    </p:treeNode>
                </p:tree>

                <h:outputText value="#{tree.selectedNode.data}" id="nd"/>
            </h:form>
        </p:panel>

        <p:dialog id="isso" widgetVar="isso">
            <h:outputText value="#{tree.selectedNode.data}"/>
        </p:dialog>
    </ui:define>
</ui:composition>

e tá aqui o meu bean

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.frb.esporte;

import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import org.primefaces.event.NodeSelectEvent;
import org.primefaces.model.DefaultTreeNode;
import org.primefaces.model.TreeNode;

/**
 *
 * @author André
 */
@ManagedBean
@SessionScoped
public class Tree implements Serializable{

    private TreeNode root;
    private TreeNode selectedNode;

    public Tree() {
        carregaTree(null);
    }

    public void carregaTree(NodeSelectEvent e){
        root = new DefaultTreeNode("Root", null);
        TreeNode node0 = new DefaultTreeNode("1 - Ato de Dopagem", root);
        TreeNode node1 = new DefaultTreeNode("2 - Controle de Dopagem", root);
        TreeNode node2 = new DefaultTreeNode("3 - Procedimento", root);
        TreeNode node4 = new DefaultTreeNode("4 - Análise das Amostras", root);
        TreeNode node5 = new DefaultTreeNode("5 - Informe dos Resultados", root);
        TreeNode node6 = new DefaultTreeNode("6 - Penalidades", root);
        TreeNode node7 = new DefaultTreeNode("7 - Lista de Substâncias Proibidas", root);
        TreeNode node8 = new DefaultTreeNode("8 - Métodos Proibidos", root);
        TreeNode node9 = new DefaultTreeNode("9 - Comissão Empresarial", root);

        TreeNode node21 = new DefaultTreeNode("Item 2.1", node1);
        TreeNode node22 = new DefaultTreeNode("Item 2.2", node1);
        TreeNode node23 = new DefaultTreeNode("Item 2.3", node1);
        TreeNode node24 = new DefaultTreeNode("Item 2.4", node1);
        TreeNode node25 = new DefaultTreeNode("Item 2.5", node1);
        TreeNode node26 = new DefaultTreeNode("Item 2.6", node1);
        TreeNode node27 = new DefaultTreeNode("Item 2.7", node1);

        TreeNode node31 = new DefaultTreeNode("Item 3.1", node2);
        TreeNode node32 = new DefaultTreeNode("Item 3.2", node2);
        TreeNode node33 = new DefaultTreeNode("Item 3.3", node2);
        TreeNode node34 = new DefaultTreeNode("Item 3.4", node2);
        TreeNode node341 = new DefaultTreeNode("Item 3.4.1", node34);
        TreeNode node342 = new DefaultTreeNode("Item 3.4.2", node34);
        TreeNode node343 = new DefaultTreeNode("Item 3.4.3", node34);
        TreeNode node344 = new DefaultTreeNode("Item 3.4.4", node34);
        TreeNode node345 = new DefaultTreeNode("Item 3.4.5", node34);
        TreeNode node346 = new DefaultTreeNode("Item 3.4.6", node34);
        TreeNode node347 = new DefaultTreeNode("Item 3.4.7", node34);
        TreeNode node348 = new DefaultTreeNode("Item 3.4.8", node34);
        TreeNode node349 = new DefaultTreeNode("Item 3.4.9", node34);
        TreeNode node3410 = new DefaultTreeNode("Item 3.4.10", node34);
        TreeNode node3411 = new DefaultTreeNode("Item 3.4.11", node34);
        TreeNode node3412 = new DefaultTreeNode("Item 3.4.12", node34);
        TreeNode node3413 = new DefaultTreeNode("Item 3.4.13", node34);
        TreeNode node3414 = new DefaultTreeNode("Item 3.4.14", node34);
        TreeNode node3415 = new DefaultTreeNode("Item 3.4.15", node34);
        TreeNode node3416 = new DefaultTreeNode("Item 3.4.16", node34);
        TreeNode node3417 = new DefaultTreeNode("Item 3.4.17", node34);

        TreeNode node41 = new DefaultTreeNode("Item 4.1", node4);
        TreeNode node42 = new DefaultTreeNode("Node 4.2", node4);
        TreeNode node43 = new DefaultTreeNode("Node 4.3", node4);

        TreeNode node411 = new DefaultTreeNode("Item 4.1.1", node41);
        TreeNode node412 = new DefaultTreeNode("Item 4.1.2", node41);
        TreeNode node413 = new DefaultTreeNode("Item 4.1.3", node41);

        TreeNode node51 = new DefaultTreeNode("Item 5.1", node5);
        TreeNode node52 = new DefaultTreeNode("Item 5.2", node5);
        TreeNode node53 = new DefaultTreeNode("Item 5.3", node5);
        TreeNode node54 = new DefaultTreeNode("Item 5.4", node5);
        TreeNode node55 = new DefaultTreeNode("Item 5.5", node5);

        TreeNode node61 = new DefaultTreeNode("Item 6.1", node6);
        TreeNode node62 = new DefaultTreeNode("Item 6.2", node6);
        TreeNode node63 = new DefaultTreeNode("Item 6.3", node6);
        TreeNode node64 = new DefaultTreeNode("Item 6.4", node6);
        TreeNode node65 = new DefaultTreeNode("Item 6.5", node6);
        TreeNode node66 = new DefaultTreeNode("Item 6.6", node6);
        TreeNode node67 = new DefaultTreeNode("Item 6.7", node6);
        TreeNode node68 = new DefaultTreeNode("Item 6.8", node6);
        TreeNode node69 = new DefaultTreeNode("Item 6.9", node6);
        TreeNode node610 = new DefaultTreeNode("Item 6.10", node6);

        TreeNode node631 = new DefaultTreeNode("Item 6.3.1", node63);
        TreeNode node632 = new DefaultTreeNode("Item 6.3.2", node63);

        TreeNode node71 = new DefaultTreeNode("Estimulantes", node7);
        TreeNode node72 = new DefaultTreeNode("Narcóticos", node7);
        TreeNode node73 = new DefaultTreeNode("Canabinóides", node7);
        TreeNode node74 = new DefaultTreeNode("Agentes Anabólicos", node7);
        TreeNode node75 = new DefaultTreeNode("Hormônios Peptídios", node7);
        TreeNode node76 = new DefaultTreeNode("Beta-2 Agonistas", node7);
        TreeNode node77 = new DefaultTreeNode("Agentes com Atividade Anti-Estrogênica", node7);
        TreeNode node78 = new DefaultTreeNode("Agentes Mascarantes", node7);
        TreeNode node79 = new DefaultTreeNode("Diuréticos", node7);
        TreeNode node710 = new DefaultTreeNode("Glicorticóides", node7);

        TreeNode node81 = new DefaultTreeNode("Interferência no Transporte do Oxigênio", node8);
        TreeNode node82 = new DefaultTreeNode("Farmacológico, Substância Química e Manipulação Física", node8);
        TreeNode node83 = new DefaultTreeNode("Dopagem Genética", node8);
    }

    public TreeNode getRoot() {
        return root;
    }

    public TreeNode getSelectedNode() {
        return selectedNode;
    }

    public void setSelectedNode(TreeNode selectedNode) {
        this.selectedNode = selectedNode;
    }

    public void onNodeSelect(NodeSelectEvent event) {
        System.out.print(selectedNode.getData());
    }
}

eu hosteei aqui no meu computador para vocês poderem verificar:
http://186.214.155.220:9005/FRB/paginas/esporte/dopagem.frb

eu pedi para exibir bem abaixo da tree o valor selecionado, vocês verão que funciona, mas no segundo click nada aparece, nenhum erro no console ou erro nos logs, ou erro na tela ou qq coisa similar.

Criado 14 de abril de 2011
Respostas 0
Participantes 1