PrimeFaces Tree

1 resposta
TiagoS

estou usando o componente TREE do PrimeFaces para exibir um lista, onde posso selecionar varios nomes.
Alguem sabe como eu faço para que ao clicar no botão me retornar os ids da lista e não os nomes.

Desde já agradeço!

1 Resposta

P

Tiago, você está criando o TreeNode com o Data como String, coloque o objeto:

TreeNode no = new DefaultTreeNode("Nome", root);

Use:

Pessoa objectPessoa = getPessoaBD();
TreeNode no = new DefaultTreeNode(objectPessoa, root);

na página:

<p:tree value="#{pessoaMB.root}" var="pessoa" cache="false">
    <p:treeNode>
	<h:outputText value="#{pessoa.nome}" /> 
    </p:treeNode>
</p:tree>

Agora uma pergunta:
Como você está fazendo para executar a ação ao selecionar o Nó?
o que eu quero fazer é reinderizar um DataTable ao clicar no nó, mas não está fazendo.
Ao clicar ele invoca o método que eu quero, mas o dataTable continua no mesmo estado, só muda se atualizar a pagina (F5);
outra coisa é que toda vez que execute uma ação na p:tree, ele invoca o método getRoot, tornando a navegação mais lenta.
pode me ajudar?

Criado 17 de janeiro de 2011
Ultima resposta 4 de fev. de 2011
Respostas 1
Participantes 2