Paginação por demanda com Primefaces 3.0 M3

0 respostas
C
Pessoal estou com problemas para fazer paginação por demanda, estou usando Prime 3.0 M3. XHTML:
<p:dataTable id="dtCarreta" value="#{carretaMBean.mediumCarsModel}" lazy="true" var="item" paginator="true" rows="5"
                             emptyMessage="#{msgs.dtVazia}" rowsPerPageTemplate="5,10,15" selection="#{carretaMBean.selectedCars}"
                             paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink}
                             {LastPageLink} {RowsPerPageDropdown}" rowStyleClass="#{empty rowIx or rowIx mod 2 ne 0 ? 'even-row' : 'odd-row'}"
                             rowIndexVar="rowIx">
            ........
           </p:dataTable>
Bean:
private List<Carreta> cars;
    private Carreta selectedCar = new Carreta();
    private Carreta[] selectedCars;
    private CarDataModel mediumCarsModel;

    public CarretaMBean() {
        cars = new ArrayList<Carreta>();
        mediumCarsModel = new CarDataModel(cars);
    }

    public Carreta[] getSelectedCars() {
        return selectedCars;
    }
    public void setSelectedCars(Carreta[] selectedCars) {
        this.selectedCars = selectedCars;
    }

    public Carreta getSelectedCar() {
        return selectedCar;
    }

    public void setSelectedCar(Carreta selectedCar) {
        this.selectedCar = selectedCar;
    }

    public CarDataModel getMediumCarsModel() {
        return mediumCarsModel;
    }

    public List<Carreta> getCars() {
        return cars;
    }

    public void setCars(List<Carreta> cars) {
        this.cars = cars;
    }
Bean que faz a paginação:
public CarDataModel() {
    }

    public CarDataModel(List<Carreta> data) {
        super(data);
    }

    @Override
    public Carreta getRowData(String rowKey) {
        //In a real app, a more efficient way like a query by rowKey should be implemented to deal with huge data

        List<Carreta> cars = (List<Carreta>) getWrappedData();

        for(Carreta car : cars) {
            if(car.getCodigocarreta().equals(rowKey))
                return car;
        }

        return null;
    }

    @Override
    public Object getRowKey(Carreta car) {
        return car.getCodigocarreta();
    }

O problema é que não aparece nenhum dado na tabela. Alguém tem alguma ideia pra me dar ???

Criado 13 de setembro de 2011
Respostas 0
Participantes 1