O'Reilly logo

PrimeFaces Cookbook by Mert Çalışkan, Oleg Varaksin

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Handling tons of data – LazyDataModel

dataTable provides support for displaying tons of data by enabling lazy loading. In order to handle large datasets, a data model needs to be implemented based on org.primefaces.model.LazyDataModel to support pagination, sorting, filtering, and live scrolling.

How to do it...

First, the lazy attribute should be set to true for lazy loading to be enabled for the table, and the abstract load method should be implemented in org.primefaces.model.LazyDataModel. We must also implement getRowData and getRowKey when selection is enabled in the table. The lazy data model should be constructed with the list of Car instances, and it should be bound to dataTable.

List<Car>cars = new ArrayList<Car> (millions of cars); LazyDataModel<Car>lazyModel ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required