[Resolvido]-Paginação JSF + tomahawk  XML
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Autor Mensagem
ramilani12
GUJ Master
[Avatar]

Membro desde: 11/03/2005 01:23:30
Mensagens: 1944
Localização: Curitiba-PR
Offline

Olá pessoal,
Tenho uma paginação bem simples utilizando JSF + tomahawk
Mas ao paginar obtenho essa exceção abaixo:

java.lang.ClassCastException: javax.faces.model.ListDataModel

O motivo dessa exceção

Meu managedbean esta com escopo de Session , solução: alterar para request , caso o MB esteja com escopo de session a lista continuará preenchida na paginação enquanto a sessão do usuário durar, bem óbvio.
Os objetos que são listados na <t:dataTable> deve implementar a Serializable ? Ok meus objetos implementam a Serializable
Por último setar para true o: preserveDataModel="true" - ok fiz isso :


Mesmo assim continuo pegando a exceção.
Alguem ja passou por este problema?


Bom vou deixar aqui como estou paginando:


E o principal:

This message was edited 2 times. Last update was at 28/11/2007 11:35:27


my delicious|follow me|linkedin
[Email] [ICQ]
ramilani12
GUJ Master
[Avatar]

Membro desde: 11/03/2005 01:23:30
Mensagens: 1944
Localização: Curitiba-PR
Offline

Bom pessoal resolvi meu problema ontem mesmo, so agora tive tempo em responder:
JSF+tomahawk tem o seguinte comportamento:

preserveDataModel = "true"
Tomahawk não chamará o metodo getDataModel durante a fase APPLY_REQUEST_VALUES e conseqüentemente não chamará o setDataModel() ele manterá o estado objetos armazenados ainda na sessão por isso trocar escopo do managed bean para Request ao invez de Session.

preserveDataModel = "false"
Tomahawk chamará o getDataModel durante a fase APPLY_REQUEST_VALUES e consquemente chamará o setDataModel sempre matendo o estado dos objetos atualizados (assumindo que Managed Bean esta conf. como Request no escope e nao necessariamente os objetos que serão listados na table precisam implementar a Serializable)

Mas como disse no post anterior já havia trocado meu managed bean para escope de request mas nao funcionou a solução foi deixar o meu managed bean como escopo de session(prq preciso) e preserveDataModel = "false" e assim na fase de APPLY_REQUEST_VALUES ele chamará setDataModel matendo atualizado estado dos objetos e assim paginação ira funcionar.

Fica dica ai para pessoal.

my delicious|follow me|linkedin
[Email] [ICQ]
 
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Ir para:   
Powered by JForum 2.1.8 © JForum Team