Boa tarde pessoALL,
Estou com um problema que aparentemente achei que fosse simples, mas estou já sem alternativas.
Seguinte:
Tenho um MB com o scope.REQUEST e uma rich:dataTable. Esse dataTable eu fiz um binding nesse MB, de forma que a tabela é montada (colunas, cabeçalho, registros) dentro no MB mesmo. Eu só passo o binding do dataTable para o .xhtml reRenderizar a tabela. Desta forma eu consigo renderizar várias tabelas de forma dinâmica.
Quando eu utilizo esse MB com o scope.SESSION tudo funciona 100%, mudei e os problemas começaram a aparecer.
- A tabela não reREnderiza nem cabeçalho, colunas, muito menos registros.
Já dei reRender em tudo o que foi possivel, desde a tabela, até o componente maior no meu caso (dataTable, a4j:outputPanel e a4j:form).
Estou utilizando o a4j:keepAlive pra extender o estado do MB porque é necessário.
Tentei:
- Toda vez que eu monto o dataTable eu:
dataTable.getChildrens().clear()-> desta forma eu estaria limpando efetivamente qualquer “lixo” de tabelas anteriores. Não funcionou! - No getDataTable tentei inserir:
FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("tabela", getListaComRegistros);-> desta forma eu inseri no .xhtml o value do datable :value="#{sessionScope['tabela']}-> E não funcionou!
Fora da tabela eu pedi pra exibir :
#{mb.dataTable.rows} -> e tem os registros ok lá, tipo 20 registros na paginação.
#{sessionScope['tabela']} -> ele exibe que possui os 20 registros.
Mas no rich:dataTable eu não consigo renderizar de forma alguma…
ALLguém pode dar uma luz aí ??? =/
Obrigado a todos.