TreeNode primeFaces Dinamico

Java

14/02/2015

Boa noite estou criando um Menu treenode dinâmico mais o mesmo não carrega as funções;


bean
public class Funcao implements Serializable {

	private static final long serialVersionUID = 1L;

	private String nome;
	private String pagina;

	public Funcao(String nome, String pagina) {
		this.nome = nome;
		this.pagina = pagina;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getPagina() {
		return pagina;
	}

	public void setPagina(String pagina) {
		this.pagina = pagina;
	}
}



FuncaoController
public FuncoesController() {
		rootCadastros = new DefaultTreeNode("root", null);

		/*
		 * TreeNode produto = new DefaultTreeNode(new Funcao("Produto", null),
		 * rootCadastros); new DefaultTreeNode("document", new Funcao("Marca",
		 * "/cadastros/marca.xhtml"), produto);
		 */

		TreeNode financeiro = new DefaultTreeNode(
				new Funcao("Financeiro", null), rootCadastros);
		new DefaultTreeNode("document", new Funcao("Banco",
				"/cadastros/banco.xhtml"), financeiro);
		new DefaultTreeNode("document", new Funcao("Agência Banco",
				"/cadastros/agenciaBanco.xhtml"), financeiro);
	}

	public TreeNode getRootCadastros() {
		return rootCadastros;
	}

	public void onNodeSelect(NodeSelectEvent event) {
		pagina = ((Funcao) event.getTreeNode().getData()).getPagina();
		tituloJanela = ((Funcao) event.getTreeNode().getData()).getNome();
		janelaVisivel = true;
	}

	public TreeNode getFuncaoSelecionada() {
		return funcaoSelecionada;
	}

	public void setFuncaoSelecionada(TreeNode funcaoSelecionada) {
		this.funcaoSelecionada = funcaoSelecionada;
	}

	public String getPagina() {
		return pagina;
	}

	public String getTituloJanela() {
		return tituloJanela;
	}

	public boolean isJanelaVisivel() {
		return janelaVisivel;
	}


Menu

<p:tab title="Cadastros">
			<h:form id="form">
				<p:tree id="treeCadastros" selectionMode="single"
					value="#{funcoesController.rootCadastros}" var="fun"
					style="border: none">

					<p:ajax event="select"
						listener="#{funcoesController.onNodeSelect()}"
						update=":panelCentro" oncomplete="layoutPrincipal.toggle('west')" />

					<p:treeNode expandedIcon="ui-icon-folder-open"
						collapsedIcon="ui-icon-folder-collapsed">
						<h:outputText value="#{fun.nome}" />
					</p:treeNode>

					<p:treeNode type="document" icon="ui-icon-document">
						<h:outputText value="#{fun.nome}" />
					</p:treeNode>

				</p:tree>

			
			</h:form>
		</p:tab>

John Lima

John Lima

Curtidas 0

Respostas

Ronaldo Lanhellas

Ronaldo Lanhellas

14/02/2015

Está faltando anotar a classe FuncoesController com o @ManagedBean e o Scopo (ex: @ViewScoped)
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

14/02/2015

Está faltando anotar a classe FuncoesController com o @ManagedBean e o Scopo (ex: @ViewScoped)
GOSTEI 0
John Lima

John Lima

14/02/2015

Ronaldo na classe FuncaoController eu anotei com o ManageBean e com o escopo de aplicação sugerido no showcase do primeface
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

14/02/2015

Ocorreu algum erro ? Veja no console da IDE e no Console do Browser
GOSTEI 0
John Lima

John Lima

14/02/2015

Boa tarde Ronaldo depois de muitas horas foi solucionado o problema reiniciei a maquina fui toma breja voltei executei e pronto funcionou ¬¬ é brincadeira
GOSTEI 0
John Lima

John Lima

14/02/2015

os nós estão carregando corretamente, porem está dando erro no ajax

nessa chamada:

<p:ajax event="select" listener="#{funcoesController.onNodeSelect()}" update=":panelCentro" oncomplete="layoutPrincipal.toggle('west')" />


método correspondente

public void onNodeSelect(NodeSelectEvent event) {
		pagina = ((Funcao) event.getTreeNode().getData()).getPagina();
		tituloJanela = ((Funcao) event.getTreeNode().getData()).getNome();
		janelaVisivel = true;
	}
GOSTEI 0
POSTAR