Olá pessoal, estou tentando fazer a pagina na minha dataTable com a propriedde lazy do primefaces, mas o problema é que os registros nao aparecem na table. O que fazer?
Table:
[code]<p:dataTable id=“dtCarreta” value="#{carretaMBean.lazyTransacaoDataModel}" var=“item” selectionMode=“true”
selection="#{carretaMBean.selectedCarretas}" emptyMessage="#{msgs.dtVazia}"
paginator=“true” lazy=“true” rows=“3”>
<f:facet name=“header”>
<h:commandLink id=“clkXls”>
<p:graphicImage value=“imagens/excel.png” />
<p:dataExporter type=“xls” target=“dtCarreta” fileName="#{msgs.dtEpt}"
excludeColumns=“6” postProcessor="#{carretaRelMBean.postProcessoXLS}"/>
</h:commandLink>
<p:tooltip for=“clkXls” value="#{msgs.tpClkXls}" showEffect=“grow” position=“topRight”
hideEffect=“grow” showEffectLength=“100” hideEffectLength=“500” />
<p:spacer height="10px" />
<h:commandLink id="clkPdf">
<p:graphicImage value="imagens/pdf.png" />
<p:dataExporter type="pdf" target="dtCarreta" fileName="#{msgs.dtEpt}" excludeColumns="6"/>
</h:commandLink>
<p:tooltip for="clkPdf" value="#{msgs.tpClkPdf}" showEffect="grow" position="topRight"
hideEffect="grow" showEffectLength="100" hideEffectLength="500" />
</f:facet>
<p:column id="clnCodCarreta" sortBy="#{item.codigocarreta}" filterBy="#{item.codigocarreta}">
<f:facet name="header">
<h:outputText id="optCodigoCarreta" value="#{msgs.optTableCodigoCarreta}" />
</f:facet>
<h:outputText value="#{item.codigocarreta}"/>
</p:column>
<p:column id="clnDescricaoCarreta" sortBy="#{item.descricao}" filterBy="#{item.descricao}">
<f:facet name="header">
<h:outputText id="optDescricaoCarreta" value="#{msgs.optTableDescricaoCarreta}" />
</f:facet>
<p:commandLink id="clkDescricao" value="#{item.descricao}" update="frmCadastrarCarreta:pnlCadastro"
styleClass="clkEditar">
<f:setPropertyActionListener value="#{item}" target="#{carretaMBean.selectedCarreta}" />
</p:commandLink>
<p:tooltip for="clkDescricao" value="#{msgs.tpEditar}" showEffect="grow" position="topRight"
hideEffect="grow" showEffectLength="100" hideEffectLength="500" />
</p:column>
<p:column id="clnPlaca" sortBy="#{item.placa}" filterBy="#{item.placa}">
<f:facet name="header">
<h:outputText value="#{msgs.optTablePlacaCarreta}" />
</f:facet>
<h:outputText value="#{item.placa}"/>
</p:column>
<p:column id="clnAno" sortBy="#{item.ano}" filterBy="#{item.ano}">
<f:facet name="header">
<h:outputText value="#{msgs.optTableAnoCarreta}" />
</f:facet>
<h:outputText value="#{item.ano}"/>
</p:column>
<p:column id="clnCor" sortBy="#{item.cor}" filterBy="#{item.cor}">
<f:facet name="header">
<h:outputText value="#{msgs.optTableCorCarreta}" />
</f:facet>
<h:outputText value="#{item.cor}"/>
</p:column>
<p:column id="clnCarroceira" sortBy="#{item.carroceria.descricao}" filterBy="#{item.carroceria.descricao}">
<f:facet name="header">
<h:outputText value="#{msgs.optTableCarroceriaCarreta}" />
</f:facet>
<h:outputText value="#{item.carroceria.descricao}"/>
</p:column>
</p:dataTable>[/code]
Managed Bean:
private LazyDataModel<Carreta> lazyTransacaoDataModel;
[code]public LazyDataModel<Carreta> getLazyTransacaoDataModel() {
if (lazyTransacaoDataModel == null) {
lazyTransacaoDataModel = new LazyDataModel<Carreta>() {
@Override
public List<Carreta> load(int first, int pageSize, String string, boolean bln, Map<String, String> map) {
List<Carreta> pesquisaCarreta = carretaDAO.getCarreta();
return pesquisaCarreta;
}
};
lazyTransacaoDataModel.setPageSize(10);
}
return lazyTransacaoDataModel;
}
public void setLazyTransacaoDataModel(LazyDataModel<Carreta> lazyTransacaoDataModel) {
this.lazyTransacaoDataModel = lazyTransacaoDataModel;
} [/code]
DAO:
public List<Carreta> getCarreta() {
List<Carreta> list = getPureList("from Carreta carreta");
return list;