November Deals: Limited Coupons Available! 🎁 Claim Your Coupon

Locale

Change the locale of the datepicker, schedule and client side validation messages.

Language
English
English
English
French
German
German
German
Italian
Korean
Spanish
Catalan
Dutch
Portuguese
Portuguese
Arabic
Arabic
Bulgarian
Bangla
Bosnian
Czech
Greek
Persian
Finnish
Danish
Hindi
Indonesian
Croatian
Japanese
Hungarian
Hebrew
Georgian
Central Kurdish
Khmer
Kyrgyz
Kazakh
Lithuanian
Latvian
Malay
Norwegian
Polish
Romanian
Russian
Slovak
Slovenian
Serbian
Serbian
Swedish
Thai
Turkish
Ukrainian
Uzbek
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Blue Saga Blue
Vela Blue Vela Blue
Arya Blue Arya Blue
Bootstrap
Bootstrap Blue Light Bootstrap Blue Light
Bootstrap Purple Light Bootstrap Purple Light
Bootstrap Blue Dark Bootstrap Blue Dark
Bootstrap Purple Dark Bootstrap Purple Dark
Material Design
Material Indigo Light Material Indigo Light
Material Deep Purple Light Material Deep Purple Light
Material Indigo Dark Material Indigo Dark
Material Deep Purple Dark Material Deep Purple Dark
Material Design Compact
Material Compact Indigo Light Material Compact Indigo Light
Material Compact Deep Purple Light Material Compact Deep Purple Light
Material Compact Indigo Dark Material Compact Indigo Dark
Material Compact Deep Purple Dark Material Compact Deep Purple Dark
Legacy
Nova Light Nova Light
Nova Dark Nova Dark
Nova Colored Nova Colored
Luna Amber Luna Amber
Luna Blue Luna Blue
Luna Green Luna Green
Luna Pink Luna Pink

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Jefferson A WaycottGermanyOnyama Limba NEGOTIATION
Jones L RutaArgentinaAnna Fali PROPOSAL
Ricardo N BologniaGermanyElwin Sharvill UNQUALIFIED
Juan Y BologniaBrazilIvan Magalhaes UNQUALIFIED
Isabel Q DilliardSpainStephen Shaw NEGOTIATION
Faith Z DoeJapanAmy Elsner PROPOSAL
Leon H OldroydJapanStephen Shaw NEW
Isabel G InouyeSpainStephen Shaw PROPOSAL
David V KuskoRussiaIvan Magalhaes RENEWAL
Antonio Y PaprockiJapanOnyama Limba UNQUALIFIED
Chavez P MaletCanadaAnna Fali PROPOSAL
Antonio W DarakjyAustraliaAnna Fali UNQUALIFIED
Murillo N VocelkaAustraliaXuxue Feng UNQUALIFIED
Francesco W DoeArgentinaIvan Magalhaes RENEWAL
Leon Y MaletSpainOnyama Limba UNQUALIFIED
Jeanfrancois A NickaRussiaIoni Bowcher NEGOTIATION
Nicolas T PerinSpainAnna Fali PROPOSAL
Jones J VenereGermanyElwin Sharvill UNQUALIFIED
Octavia L NickaAustraliaBernardo Dominic RENEWAL
Alejandro T PaprockiAustraliaXuxue Feng NEW
Murillo M IturbideBrazilAnna Fali RENEWAL
Smith W DoeUnited KingdomElwin Sharvill QUALIFIED
Salvatore P WaycottUnited KingdomIvan Magalhaes PROPOSAL
Faith L CaldareraFranceStephen Shaw RENEWAL
Greenwood R MaletIndiaXuxue Feng NEGOTIATION
Rodrigues K FollerItalyElwin Sharvill NEW
Smith S MaletAustraliaAmy Elsner UNQUALIFIED
Jennifer O OstroskySpainAnna Fali NEW
Emily C OldroydItalyIoni Bowcher NEGOTIATION
Murillo E StensethRussiaXuxue Feng RENEWAL
Chavez Y MaletJapanIvan Magalhaes PROPOSAL
Costa F FigeroaArgentinaBernardo Dominic NEGOTIATION
Cody H GarufiIndiaXuxue Feng NEW
Deepesh C VenereArgentinaAsiya Javayant UNQUALIFIED
Johnson W PaprockiUnited KingdomAnna Fali NEW
Chavez O KuskoArgentinaXuxue Feng QUALIFIED
Claire J MaletBrazilAmy Elsner PROPOSAL
Jones C BriddickRussiaBernardo Dominic RENEWAL
Tony P StensethRussiaAnna Fali QUALIFIED
Adams S PoquetteCanadaElwin Sharvill NEGOTIATION
Ashley W WhobreyJapanXuxue Feng UNQUALIFIED
Johnson X BowleySpainOnyama Limba QUALIFIED
Chavez D ButtFranceAnna Fali NEW
Aruna N WieserIndiaIvan Magalhaes PROPOSAL
Costa K NestleItalyAsiya Javayant NEGOTIATION
Maria E RimBrazilIoni Bowcher UNQUALIFIED
Jefferson E CaudyFranceIvan Magalhaes RENEWAL
Francesco E GarufiGermanyAnna Fali QUALIFIED
Izzy F SchemmerBrazilStephen Shaw NEW
Ivar L OldroydCanadaBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jennifer F CampainCanadaIoni Bowcher RENEWAL
Stacey L KuskoIndiaBernardo Dominic NEW
Stacey W IturbideRussiaStephen Shaw NEW
Smith L MarrierArgentinaBernardo Dominic RENEWAL
Maisha I StockhamArgentinaAsiya Javayant UNQUALIFIED
Wickens I BologniaArgentinaIoni Bowcher QUALIFIED
Juan N WieserAustraliaElwin Sharvill UNQUALIFIED
Izzy F PaprockiJapanAmy Elsner RENEWAL
Isabel G AlbaresFranceOnyama Limba NEGOTIATION
Nicolas O FigeroaAustraliaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem B WaycottFrance2026-09-21Feiner Bros RENEWAL40Ioni Bowcher
1001Izzy B ShinkoCanada2026-10-04Commercial Press UNQUALIFIED73Ioni Bowcher
1002Chavez J ChuiSpain2026-09-29Printing Dimensions PROPOSAL67Ivan Magalhaes
1003Jennifer T GillianArgentina2026-09-19Buckley Miller Wright UNQUALIFIED99Asiya Javayant
1004Emily O PaprockiJapan2026-09-23Buckley Miller Wright QUALIFIED7Stephen Shaw
1005Ashley R RutaJapan2026-10-10Truhlar And Truhlar Attys NEW39Onyama Limba
1006James F PoquetteCanada2026-10-17Rangoni Of Florence NEW17Onyama Limba
1007Wickens X WhobreyAustralia2026-09-23Rousseaux, Michael Esq PROPOSAL83Asiya Javayant
1008Aditya U GlickArgentina2026-10-05Feltz Printing Service NEW48Ioni Bowcher
1009Murillo J IturbideRussia2026-10-14Chapman, Ross E Esq QUALIFIED93Ivan Magalhaes
1010Sinclair W WieserCanada2026-09-27Chemel, James L Cpa QUALIFIED64Amy Elsner
1011Mujtaba N BowleyJapan2026-09-26Morlong Associates NEW39Onyama Limba
1012Jefferson T MacleadArgentina2026-10-13Truhlar And Truhlar Attys QUALIFIED64Bernardo Dominic
1013Munro Z KolmetzIndia2026-09-20Chapman, Ross E Esq NEGOTIATION66Elwin Sharvill
1014Sinclair H GlickArgentina2026-10-05Feltz Printing Service NEGOTIATION58Ioni Bowcher
1015Cody F RoysterBrazil2026-09-22Buckley Miller Wright PROPOSAL25Ivan Magalhaes
1016Octavia S WaycottFrance2026-09-23Rousseaux, Michael Esq QUALIFIED69Xuxue Feng
1017Costa C DoeUnited Kingdom2026-10-08Benton, John B Jr NEW37Ivan Magalhaes
1018Smith R SergiArgentina2026-09-23Benton, John B Jr NEW13Ioni Bowcher
1019Aditya K MarrierArgentina2026-10-06Chemel, James L Cpa RENEWAL99Stephen Shaw
1020Ivar A ChuiArgentina2026-09-22Feiner Bros QUALIFIED61Elwin Sharvill
1021Smith C OstroskyJapan2026-09-20Feltz Printing Service UNQUALIFIED69Ivan Magalhaes
1022Kadeem H DarakjySpain2026-09-29Commercial Press NEGOTIATION3Xuxue Feng
1023Emily C RutaCanada2026-09-30Benton, John B Jr NEGOTIATION80Bernardo Dominic
1024Antonio C DilliardAustralia2026-10-11Chemel, James L Cpa PROPOSAL51Ioni Bowcher
1025Leon X StockhamBrazil2026-09-27Rangoni Of Florence UNQUALIFIED61Ioni Bowcher
1026Ashley P OldroydRussia2026-10-06Feltz Printing Service UNQUALIFIED91Bernardo Dominic
1027Maisha R PaprockiSpain2026-10-15Commercial Press NEW87Anna Fali
1028Jones K NestleItaly2026-10-09Truhlar And Truhlar Attys NEW10Bernardo Dominic
1029Mujtaba G DilliardCanada2026-10-02Printing Dimensions RENEWAL90Bernardo Dominic
1030Faith C BriddickBrazil2026-09-21Chapman, Ross E Esq RENEWAL41Ivan Magalhaes
1031Faith X RimSpain2026-10-05Rousseaux, Michael Esq NEGOTIATION57Stephen Shaw
1032Alejandro C DilliardSpain2026-09-28Printing Dimensions QUALIFIED67Amy Elsner
1033Izzy F NickaUnited Kingdom2026-10-04Chapman, Ross E Esq NEW40Amy Elsner
1034Claire T WhobreyUnited Kingdom2026-09-19Dorl, James J Esq NEGOTIATION78Ivan Magalhaes
1035Isabel R MaletItaly2026-10-17Truhlar And Truhlar Attys UNQUALIFIED61Ioni Bowcher
1036Darci Y NestleFrance2026-10-04Feltz Printing Service NEW81Stephen Shaw
1037Costa N InouyeUnited Kingdom2026-09-25Chanay, Jeffrey A Esq RENEWAL32Ivan Magalhaes
1038Tony X CaldareraItaly2026-10-15King, Christopher A Esq PROPOSAL96Ioni Bowcher
1039Morrow T StensethRussia2026-10-01Truhlar And Truhlar Attys RENEWAL77Ivan Magalhaes
1040Costa U RulapaughGermany2026-10-10Printing Dimensions NEGOTIATION3Onyama Limba
1041Ivar R DarakjyFrance2026-10-10King, Christopher A Esq NEGOTIATION17Onyama Limba
1042Aika P OldroydSpain2026-10-07Chanay, Jeffrey A Esq UNQUALIFIED24Elwin Sharvill
1043Aruna V CaldareraAustralia2026-09-24Printing Dimensions QUALIFIED40Elwin Sharvill
1044Jefferson L OldroydIndia2026-10-04King, Christopher A Esq UNQUALIFIED23Bernardo Dominic
1045Aditya L PaprockiCanada2026-10-07Chanay, Jeffrey A Esq NEW41Anna Fali
1046Silvio X MacleadAustralia2026-10-15Feltz Printing Service PROPOSAL97Elwin Sharvill
1047Kaitlin Z OstroskyUnited Kingdom2026-09-24Dorl, James J Esq UNQUALIFIED36Asiya Javayant
1048Clifford J StockhamBrazil2026-09-28Commercial Press UNQUALIFIED68Onyama Limba
1049Arvin T ShinkoItaly2026-09-28Dorl, James J Esq PROPOSAL52Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
David Z PoquetteRussiaAsiya Javayant PROPOSAL
Salvatore U FlosiItalyBernardo Dominic PROPOSAL
James U NestleFranceAnna Fali PROPOSAL
Murillo O StockhamUnited KingdomAmy Elsner UNQUALIFIED
Isabel N FigeroaUnited KingdomAmy Elsner NEGOTIATION
Tony P SchemmerAustraliaAsiya Javayant QUALIFIED
Leon B RoysterJapanStephen Shaw RENEWAL
Clifford W DilliardUnited KingdomXuxue Feng NEW
Izzy C RulapaughJapanElwin Sharvill UNQUALIFIED
Aruna C VenereGermanyAmy Elsner RENEWAL
Emily O GarufiSpainAmy Elsner NEW
Isabel W CaudySpainAsiya Javayant NEW
Adams N GlickArgentinaIoni Bowcher NEGOTIATION
Jones W GlickItalyAnna Fali RENEWAL
Cody L NestleCanadaElwin Sharvill RENEWAL
Aruna R VocelkaJapanAsiya Javayant QUALIFIED
Greenwood S RimArgentinaAnna Fali UNQUALIFIED
Darci R SergiIndiaAsiya Javayant PROPOSAL
Salvatore A GillianCanadaIvan Magalhaes NEW
Silvio K SlusarskiIndiaAnna Fali NEGOTIATION
Maria S RulapaughBrazilAnna Fali NEGOTIATION
Clifford X SchemmerArgentinaIoni Bowcher PROPOSAL
Aika A CaldareraCanadaAnna Fali RENEWAL
Greenwood W DilliardFranceStephen Shaw NEW
Maisha J MorascaSpainOnyama Limba RENEWAL
Francesco Y FigeroaGermanyElwin Sharvill PROPOSAL
Deepesh J NickaUnited KingdomBernardo Dominic QUALIFIED
Darci C WieserGermanyIvan Magalhaes RENEWAL
Octavia F WieserItalyBernardo Dominic NEGOTIATION
Mujtaba M MaletJapanElwin Sharvill RENEWAL
Murillo J GillianUnited KingdomBernardo Dominic QUALIFIED
Johnson V FollerIndiaAnna Fali NEW
Chavez Y MarrierRussiaAnna Fali RENEWAL
Salvatore Y BologniaCanadaIvan Magalhaes RENEWAL
Darci U PoquetteItalyAsiya Javayant NEGOTIATION
Emily R GlickUnited KingdomAnna Fali PROPOSAL
Maisha Y GlickArgentinaBernardo Dominic PROPOSAL
Mayumi V SlusarskiRussiaAmy Elsner UNQUALIFIED
Johnson T NestleJapanStephen Shaw QUALIFIED
Claire F RutaRussiaBernardo Dominic QUALIFIED
Murillo H GarufiJapanBernardo Dominic UNQUALIFIED
Isabel T IturbideCanadaBernardo Dominic RENEWAL
Mujtaba Y IturbideCanadaAmy Elsner NEW
Misaki N SaylorsFranceOnyama Limba PROPOSAL
Arvin Y PerinFranceStephen Shaw UNQUALIFIED
Darci Q SergiCanadaStephen Shaw NEGOTIATION
Cody W KolmetzBrazilXuxue Feng RENEWAL
Emily D PerinIndiaAsiya Javayant QUALIFIED
Jennifer V KolmetzBrazilElwin Sharvill UNQUALIFIED
Isabel O RoysterCanadaIoni Bowcher NEW
Frozen Columns
Name
Juan B Shinko
Murillo L Amigon
Clifford S Schemmer
Alejandro O Bowley
Antonio J Sergi
Izzy F Doe
Ricardo W Iturbide
Ivar R Caldarera
Silvio A Gaucho
James U Poquette
Jeanfrancois R Whobrey
Aditya P Ferencz
Misaki X Gaucho
Darci Z Caudy
Silvio T Rim
Mayumi E Marrier
Alejandro S Caldarera
Cody H Glick
Deepesh I Marrier
Costa W Butt
Aditya B Royster
Wickens C Albares
Octavia I Waycott
Nicolas G Briddick
Alejandro N Briddick
James X Perin
Murillo L Caldarera
Maria Z Sergi
Kaitlin M Marrier
Costa R Bolognia
Misaki F Nicka
Wickens A Venere
Aditya Q Figeroa
Kadeem F Campain
Kaitlin M Rulapaugh
Arvin B Albares
Cody O Venere
Kaitlin Y Rulapaugh
Chavez E Stockham
Jeanfrancois V Paprocki
Kaitlin D Poquette
Rodrigues D Perin
Salvatore M Dilliard
Morrow Z Darakjy
Kaitlin W Rim
Silvio D Malet
Antonio M Figeroa
Alejandro F Figeroa
Aika U Stenseth
Isabel Y Bowley
IdCountryDate
1000Australia2026-10-03
1001Russia2026-10-10
1002Canada2026-10-13
1003Russia2026-09-24
1004Australia2026-10-09
1005Australia2026-10-12
1006India2026-10-01
1007United Kingdom2026-10-15
1008Argentina2026-09-22
1009Spain2026-09-19
1010Argentina2026-09-24
1011Russia2026-10-07
1012Argentina2026-10-10
1013United Kingdom2026-10-16
1014Argentina2026-10-15
1015India2026-09-22
1016Russia2026-09-28
1017India2026-10-16
1018United Kingdom2026-10-02
1019Australia2026-09-29
1020India2026-09-22
1021Argentina2026-10-11
1022Russia2026-10-13
1023Italy2026-09-28
1024India2026-09-26
1025France2026-10-14
1026Germany2026-10-12
1027Spain2026-10-13
1028Italy2026-09-24
1029United Kingdom2026-10-03
1030Brazil2026-10-09
1031Japan2026-10-06
1032Spain2026-10-01
1033Argentina2026-09-30
1034Japan2026-10-10
1035Germany2026-10-13
1036Germany2026-10-16
1037Italy2026-09-23
1038India2026-09-28
1039Australia2026-09-20
1040Russia2026-09-27
1041France2026-10-04
1042Italy2026-10-10
1043Japan2026-10-05
1044Russia2026-09-20
1045India2026-09-26
1046Russia2026-10-08
1047Canada2026-10-08
1048Russia2026-09-25
1049India2026-10-05

On-Demand Data

NameIdCountryDate
Silvio R Maclead1000France2026-10-07
Munro V Wieser1001Japan2026-09-26
Mayumi C Bolognia1002Italy2026-10-04
Maisha N Venere1003United Kingdom2026-09-28
Kaitlin R Shinko1004Italy2026-09-26
Antonio E Morasca1005Japan2026-10-17
Aika M Figeroa1006Brazil2026-10-03
Isabel D Saylors1007Italy2026-10-12
Antonio G Dilliard1008United Kingdom2026-10-01
Aditya W Caudy1009Brazil2026-09-19
Emily I Nestle1010Spain2026-09-19
Leja H Paprocki1011Canada2026-10-11
Jeanfrancois L Sergi1012Russia2026-10-17
Maisha Y Morasca1013United Kingdom2026-09-30
Misaki P Perin1014Spain2026-10-09
Sinclair R Garufi1015Brazil2026-10-06
Ricardo O Marrier1016Russia2026-10-14
Smith K Stenseth1017United Kingdom2026-10-16
Kaitlin T Doe1018India2026-10-06
Silvio I Shinko1019Japan2026-09-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba C RimIndiaIoni Bowcher QUALIFIED
Kaitlin G WhobreyIndiaStephen Shaw UNQUALIFIED
Mujtaba D GauchoJapanAnna Fali QUALIFIED
Maria T OstroskyJapanAmy Elsner PROPOSAL
Izzy F InouyeFranceOnyama Limba PROPOSAL
Clifford T DilliardAustraliaXuxue Feng PROPOSAL
Ricardo J BriddickAustraliaBernardo Dominic UNQUALIFIED
Tony D TollnerSpainIvan Magalhaes RENEWAL
Julie Q GillianAustraliaXuxue Feng QUALIFIED
Octavia Z BowleyCanadaBernardo Dominic RENEWAL
Julie I GauchoGermanyIoni Bowcher UNQUALIFIED
Rodrigues J SergiBrazilElwin Sharvill NEGOTIATION
Adams E CaldareraGermanyStephen Shaw RENEWAL
Misaki P CaudyBrazilBernardo Dominic RENEWAL
Julie I RoysterGermanyElwin Sharvill QUALIFIED
Munro S MaletUnited KingdomAmy Elsner QUALIFIED
Izzy C OstroskyFranceIoni Bowcher QUALIFIED
Alejandro E GauchoGermanyAmy Elsner NEW
Mujtaba L StensethFranceAsiya Javayant PROPOSAL
Darci O ButtUnited KingdomXuxue Feng NEW
Adams V CampainFranceOnyama Limba NEGOTIATION
Ashley N VocelkaJapanIvan Magalhaes NEW
Ashley K BowleyIndiaBernardo Dominic UNQUALIFIED
Clifford I NestleJapanBernardo Dominic UNQUALIFIED
Emily B RutaSpainIvan Magalhaes PROPOSAL
Smith Q BologniaRussiaAmy Elsner RENEWAL
Kaitlin S ShinkoAustraliaAmy Elsner PROPOSAL
Izzy O BowleyItalyElwin Sharvill NEW
David O RutaFranceAsiya Javayant RENEWAL
Ricardo V DilliardJapanBernardo Dominic UNQUALIFIED
Emily R MarrierUnited KingdomIoni Bowcher PROPOSAL
Deepesh T VocelkaSpainIoni Bowcher UNQUALIFIED
Maria U VocelkaFranceXuxue Feng NEGOTIATION
Tony C ShinkoBrazilIvan Magalhaes RENEWAL
Morrow H NickaUnited KingdomIvan Magalhaes QUALIFIED
Faith L PaprockiItalyIoni Bowcher QUALIFIED
Maria Y SergiSpainIoni Bowcher NEW
Juan H ButtGermanyIoni Bowcher UNQUALIFIED
Johnson W OldroydItalyIoni Bowcher PROPOSAL
Ricardo R AlbaresItalyAsiya Javayant QUALIFIED

<style>
    .ui-datatable-frozenlayout-left {
        width: 20%;
    }

    .ui-datatable-frozenlayout-right {
        width: 80%;
    }
</style>


<h:form>
    <div class="card">
        <h5 style="margin-top:0">Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers1}" scrollable="true" scrollHeight="250">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers2}" scrollable="true" scrollWidth="600">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal and Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers3}" scrollable="true" scrollWidth="50%" scrollHeight="250">
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
            <p:column headerText="Company" footerText="Company">
                <h:outputText value="#{customer.company}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
            <p:column headerText="Activity" footerText="Activity">
                <h:outputText value="#{customer.activity}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers4}" scrollable="true" scrollHeight="250"
                     frozenRows="2">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Columns</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers5}" scrollable="true" scrollHeight="250"
                     scrollWidth="300" frozenColumns="1" frozenColumnsAlignment="left">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h3>On-Demand Data</h3>
        <p:dataTable var="customer" value="#{dtScrollView.customers6}" scrollRows="20" scrollable="true" liveScroll="true" scrollHeight="150">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Virtual Scrolling - 20000 Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.lazyModel}" scrollRows="20" scrollable="true"
                     virtualScroll="true" scrollHeight="200" rows="40" style="margin-bottom:0">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

</h:form>