[Resolvido]-Paginação JSF + tomahawk

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

:arrow: 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.
:arrow: Os objetos que são listados na <t:dataTable> deve implementar a Serializable ? Ok meus objetos implementam a Serializable
:arrow: 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:

&lt;t:dataTable value="#{solMaterialMB.itensSolicitacao}" id="itensSolicitacao" var="row" bodyStyleClass="tableContent"

styleClass="textOverflow" cellpadding="2px" cellspacing="0" rowIndexVar="rowIndex"

binding="#{solMaterialMB.table}" rowOnClick="selecionarLinha(this)" rowOnMouseOver="destacarLinha(this, true)"

rowOnMouseOut="destacarLinha(this, false)" rows="10" footerClass="GridFooter"

preserveDataModel="true" preserveSort="true" sortable="false"

E o principal:

&gt;&lt;f:facet name="footer"&gt;

&lt;t:panelGrid border="0" cellpadding="0" align="center" columns="1"&gt;

&lt;t:dataScroller fastStep="10" pageCountVar="" pageIndexVar="" paginator="true" paginatorMaxPages="0"

paginatorActiveColumnStyle="font-weight:bold;" for="itensSolicitacao" lastRowIndexVar="lastRow"

firstRowIndexVar="firstRow" rowsCountVar="totalRows" actionListener="#{solMaterialMB.onPaginate}"&gt;

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

:arrow: 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.

:arrow: 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.