Boa tarde.
Estou com um problema e não sei o pq.
Tenho um dialog com um dataTable dentro. Esse dataTable fica carregando toda vez que eu abro a página e isso causa lentidão, pois ele busca os dados no BD.
Eu pensei em evitar isso criando uma condicional dentro do List que popula o dataTable e essa condicional está funcionando.
Quando entro na página o sistema n carrega os dados do dataTable como eu queria, apenas carrega quando eu chamo o dialog em que o dataTable está.
Dentro do Dialog eu trabalho normalmente. Quando eu clico em sair eu devo chamar o método que “liberou” o uso do dataTable e mudar o valor do atributo. Este é o problema o botão sair não chama o método e nesse form ainda tenho mais 1 botão que está funcionando normalmente.
Segue o código:
Este botão está dentro do mesmo form que o botão Gravar, mas o Gravar funciona.
<p:commandButton value="Sair"
actionListener="#{cadastrarCategoriaControle.carregarCategoria}"
update=":listaCategoria:tabelaCategoria"
oncomplete="dialogGerCategoria.hide()"/>
O método para “liberar” ou não o carregamento do dataTable.
public void carregarCategoria(){
System.out.println("VALOR INICIAL" + carregarListaCategoria);
if (carregarListaCategoria == true) {
System.out.println("Valia TRUE mudando para FALSE");
carregarListaCategoria = false;
}
else if(carregarListaCategoria == false){
System.out.println("Valia FALSE mudando para TRUE");
carregarListaCategoria = true;
}
}
Detalhe, eu libero o dataTable em um menu e esse menu está funcionando a primeira vez quando clico ele muda para true a segunda ele muda para false.
Alguem sabe o pq o bottão não está funcionando?
