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:
<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:
><f:facet name="footer">
<t:panelGrid border="0" cellpadding="0" align="center" columns="1">
<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}">