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
Octavia T OldroydIndiaStephen Shaw QUALIFIED
Maisha R PerinRussiaIoni Bowcher NEW
Rodrigues H MaletIndiaBernardo Dominic NEW
Kaitlin N NickaSpainOnyama Limba NEW
Jones O SlusarskiFranceElwin Sharvill PROPOSAL
Izzy B BologniaJapanIvan Magalhaes UNQUALIFIED
Adams Y VenereRussiaStephen Shaw NEGOTIATION
Murillo K ChuiJapanBernardo Dominic RENEWAL
Ashley X WaycottGermanyAnna Fali NEW
Jones M GarufiFranceBernardo Dominic NEW
Izzy R WhobreyRussiaElwin Sharvill RENEWAL
Emily R VocelkaAustraliaXuxue Feng NEGOTIATION
Smith M NickaBrazilIvan Magalhaes QUALIFIED
Maria T SergiJapanElwin Sharvill NEGOTIATION
Jennifer J BologniaFranceAnna Fali NEW
Darci T GillianRussiaOnyama Limba UNQUALIFIED
James X ShinkoUnited KingdomXuxue Feng QUALIFIED
Mayumi C StensethRussiaStephen Shaw QUALIFIED
Claire Q GarufiBrazilOnyama Limba RENEWAL
Leja I ShinkoArgentinaIoni Bowcher RENEWAL
Aditya N InouyeUnited KingdomOnyama Limba UNQUALIFIED
Salvatore O RulapaughUnited KingdomIvan Magalhaes NEGOTIATION
Tony W WaycottItalyAsiya Javayant NEGOTIATION
Aika Z BowleyItalyIvan Magalhaes NEW
Chavez K StockhamFranceXuxue Feng NEW
Faith R BowleyGermanyOnyama Limba UNQUALIFIED
Isabel G StensethAustraliaIoni Bowcher UNQUALIFIED
Claire A KolmetzGermanyAnna Fali NEGOTIATION
Jennifer H DarakjyFranceStephen Shaw UNQUALIFIED
Mayumi D InouyeGermanyXuxue Feng RENEWAL
Johnson U FigeroaJapanAnna Fali NEW
Jones S NestleJapanElwin Sharvill RENEWAL
James D RulapaughCanadaElwin Sharvill UNQUALIFIED
Smith W OldroydUnited KingdomAmy Elsner RENEWAL
David N KuskoFranceElwin Sharvill UNQUALIFIED
Sinclair O AlbaresBrazilIvan Magalhaes PROPOSAL
Alejandro P RulapaughUnited KingdomAmy Elsner UNQUALIFIED
Wickens E ChuiJapanIoni Bowcher QUALIFIED
Misaki A PoquetteIndiaBernardo Dominic PROPOSAL
Johnson S MaletArgentinaStephen Shaw RENEWAL
Salvatore Y ShinkoRussiaAsiya Javayant NEGOTIATION
Misaki V ChuiGermanyAmy Elsner NEW
Francesco S NestleItalyAmy Elsner RENEWAL
Silvio D BologniaSpainAmy Elsner RENEWAL
Salvatore C VenereAustraliaAmy Elsner QUALIFIED
Silvio D PaprockiArgentinaAmy Elsner NEW
Maisha N OldroydArgentinaOnyama Limba QUALIFIED
Smith J SchemmerUnited KingdomIoni Bowcher RENEWAL
Juan M PerinGermanyIoni Bowcher UNQUALIFIED
Ivar W NestleCanadaXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Kadeem B GauchoSpainIoni Bowcher RENEWAL
Costa B PaprockiItalyBernardo Dominic NEW
Maisha L KolmetzCanadaElwin Sharvill QUALIFIED
James V VenereRussiaAmy Elsner UNQUALIFIED
Smith I SergiSpainIoni Bowcher RENEWAL
Francesco R MacleadJapanOnyama Limba QUALIFIED
Salvatore Y SchemmerArgentinaElwin Sharvill UNQUALIFIED
Leon V FigeroaIndiaAmy Elsner RENEWAL
Jefferson C IturbideSpainStephen Shaw NEGOTIATION
Claire W VenereItalyIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey G DilliardIndia2026-10-13King, Christopher A Esq PROPOSAL9Ivan Magalhaes
1001Aditya O MarrierGermany2026-10-25Rousseaux, Michael Esq NEGOTIATION20Stephen Shaw
1002Antonio D CaudyArgentina2026-10-18Printing Dimensions PROPOSAL1Bernardo Dominic
1003Jeanfrancois K ShinkoBrazil2026-10-21Buckley Miller Wright NEW0Anna Fali
1004Costa O GauchoBrazil2026-10-14Morlong Associates NEW62Ivan Magalhaes
1005Aruna N GlickArgentina2026-10-14Chanay, Jeffrey A Esq UNQUALIFIED7Anna Fali
1006Darci D BologniaCanada2026-10-13Benton, John B Jr UNQUALIFIED12Onyama Limba
1007Jones C StensethBrazil2026-11-08Feltz Printing Service UNQUALIFIED75Bernardo Dominic
1008Murillo V WaycottFrance2026-10-24Buckley Miller Wright NEGOTIATION51Anna Fali
1009Aruna J MacleadIndia2026-11-02Chanay, Jeffrey A Esq RENEWAL95Ivan Magalhaes
1010Jones I PaprockiIndia2026-10-22Rousseaux, Michael Esq UNQUALIFIED93Ioni Bowcher
1011David A BowleyFrance2026-11-02Feiner Bros RENEWAL96Elwin Sharvill
1012David C WieserBrazil2026-10-12Dorl, James J Esq UNQUALIFIED24Ioni Bowcher
1013Rodrigues L KuskoUnited Kingdom2026-11-09Commercial Press QUALIFIED97Amy Elsner
1014Costa J SlusarskiCanada2026-10-12Feltz Printing Service NEGOTIATION15Asiya Javayant
1015Aditya W WieserCanada2026-10-19Chemel, James L Cpa UNQUALIFIED92Onyama Limba
1016Ricardo A RulapaughAustralia2026-10-22Buckley Miller Wright RENEWAL15Onyama Limba
1017Cody L FollerGermany2026-11-05Truhlar And Truhlar Attys NEW17Anna Fali
1018Greenwood R FollerFrance2026-10-18King, Christopher A Esq QUALIFIED30Bernardo Dominic
1019Misaki R VenereBrazil2026-10-17Chapman, Ross E Esq NEW94Stephen Shaw
1020Mayumi Z PerinGermany2026-10-30Commercial Press NEGOTIATION94Elwin Sharvill
1021Greenwood P GarufiBrazil2026-11-01Morlong Associates UNQUALIFIED37Elwin Sharvill
1022Ashley M WhobreyAustralia2026-10-30Morlong Associates PROPOSAL68Amy Elsner
1023Darci Y AlbaresSpain2026-11-07Feiner Bros UNQUALIFIED64Ivan Magalhaes
1024Chavez L VocelkaArgentina2026-10-17Morlong Associates PROPOSAL43Ivan Magalhaes
1025Claire A DarakjyArgentina2026-10-22Rangoni Of Florence RENEWAL6Anna Fali
1026Ivar J SaylorsFrance2026-10-22Printing Dimensions NEW2Amy Elsner
1027Mujtaba I SergiItaly2026-11-04Chapman, Ross E Esq PROPOSAL52Onyama Limba
1028Ricardo D WhobreyArgentina2026-11-03Buckley Miller Wright RENEWAL30Bernardo Dominic
1029Jeanfrancois V CampainSpain2026-10-24Rangoni Of Florence NEGOTIATION65Xuxue Feng
1030Cody X ShinkoJapan2026-10-12Rousseaux, Michael Esq NEW88Asiya Javayant
1031Ashley T OldroydBrazil2026-10-18Chanay, Jeffrey A Esq QUALIFIED39Ioni Bowcher
1032Adams P BriddickBrazil2026-10-29Printing Dimensions QUALIFIED9Asiya Javayant
1033Kaitlin D BriddickJapan2026-10-25Rangoni Of Florence QUALIFIED4Anna Fali
1034Ashley H BriddickSpain2026-11-07Dorl, James J Esq PROPOSAL70Bernardo Dominic
1035Deepesh H WaycottArgentina2026-10-24Chemel, James L Cpa NEW14Ioni Bowcher
1036Francesco V CaldareraUnited Kingdom2026-10-29Rousseaux, Michael Esq RENEWAL52Bernardo Dominic
1037Clifford H IturbideAustralia2026-10-12Chanay, Jeffrey A Esq QUALIFIED7Amy Elsner
1038Aruna M GarufiArgentina2026-11-09Chemel, James L Cpa RENEWAL62Bernardo Dominic
1039Jefferson K BologniaArgentina2026-10-25King, Christopher A Esq UNQUALIFIED28Amy Elsner
1040Aditya S ChuiBrazil2026-10-14Rousseaux, Michael Esq NEW93Onyama Limba
1041Juan U ShinkoRussia2026-11-04Truhlar And Truhlar Attys PROPOSAL47Ivan Magalhaes
1042Adams J PoquetteArgentina2026-10-25King, Christopher A Esq PROPOSAL72Amy Elsner
1043Francesco C GlickGermany2026-10-13Chemel, James L Cpa RENEWAL60Amy Elsner
1044Jeanfrancois L DoeRussia2026-10-13Benton, John B Jr NEGOTIATION65Ioni Bowcher
1045Emily J MaletAustralia2026-10-20Rangoni Of Florence UNQUALIFIED77Stephen Shaw
1046Costa H GarufiAustralia2026-10-30Buckley Miller Wright UNQUALIFIED55Xuxue Feng
1047Ricardo B RulapaughBrazil2026-11-01Commercial Press UNQUALIFIED57Ivan Magalhaes
1048Aika S BowleyUnited Kingdom2026-10-16Feltz Printing Service UNQUALIFIED77Elwin Sharvill
1049Johnson A GillianSpain2026-11-09Chemel, James L Cpa NEW23Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Jennifer R InouyeJapanAsiya Javayant UNQUALIFIED
Kaitlin I NestleItalyStephen Shaw QUALIFIED
David S GauchoUnited KingdomAnna Fali RENEWAL
Jones F WieserAustraliaXuxue Feng NEGOTIATION
Antonio I FigeroaRussiaAsiya Javayant UNQUALIFIED
Izzy U ButtIndiaAmy Elsner UNQUALIFIED
Ivar B VenereSpainElwin Sharvill NEGOTIATION
Ricardo P GlickJapanElwin Sharvill UNQUALIFIED
Sinclair Z CaldareraArgentinaIoni Bowcher NEGOTIATION
Jefferson V ShinkoBrazilBernardo Dominic PROPOSAL
Aruna W MaletItalyStephen Shaw PROPOSAL
Wickens D ButtItalyBernardo Dominic PROPOSAL
Munro M RimAustraliaStephen Shaw QUALIFIED
Tony K SergiBrazilAsiya Javayant NEGOTIATION
Wickens J SlusarskiArgentinaElwin Sharvill QUALIFIED
Silvio L CaldareraCanadaOnyama Limba UNQUALIFIED
Faith D FerenczAustraliaAsiya Javayant NEW
Silvio T CaldareraItalyElwin Sharvill RENEWAL
Salvatore C InouyeJapanAnna Fali UNQUALIFIED
Emily A FerenczFranceAmy Elsner PROPOSAL
Claire C TollnerFranceXuxue Feng PROPOSAL
Johnson N FerenczItalyAmy Elsner RENEWAL
Murillo J OldroydIndiaElwin Sharvill NEGOTIATION
Francesco M RutaBrazilAsiya Javayant NEGOTIATION
Leja U CaudyBrazilIvan Magalhaes RENEWAL
Antonio Y AlbaresArgentinaStephen Shaw NEW
Ricardo C FigeroaFranceIvan Magalhaes QUALIFIED
Ivar G CaudyArgentinaAmy Elsner PROPOSAL
Greenwood I FigeroaFranceAnna Fali NEW
Arvin F BologniaBrazilIvan Magalhaes NEGOTIATION
Sinclair P FollerBrazilElwin Sharvill PROPOSAL
Aruna N MaletCanadaAnna Fali NEGOTIATION
Jennifer Z ShinkoRussiaElwin Sharvill RENEWAL
Jones V FlosiCanadaElwin Sharvill UNQUALIFIED
Ashley M DilliardIndiaAmy Elsner RENEWAL
Leja A MorascaSpainXuxue Feng PROPOSAL
Johnson T DilliardArgentinaAmy Elsner QUALIFIED
Izzy J ShinkoGermanyIvan Magalhaes PROPOSAL
Misaki A BologniaItalyIoni Bowcher PROPOSAL
Murillo O SaylorsBrazilXuxue Feng NEGOTIATION
Isabel A ShinkoSpainAsiya Javayant PROPOSAL
Aika H MaletBrazilAsiya Javayant UNQUALIFIED
Ricardo E FlosiArgentinaIoni Bowcher UNQUALIFIED
Sinclair J RulapaughItalyAnna Fali QUALIFIED
Kadeem Q FollerArgentinaIvan Magalhaes NEGOTIATION
Emily M FigeroaBrazilBernardo Dominic QUALIFIED
Murillo F StockhamAustraliaBernardo Dominic NEGOTIATION
Deepesh J ButtItalyAmy Elsner QUALIFIED
Jefferson S NestleBrazilAmy Elsner NEW
Ivar P NickaJapanXuxue Feng NEW
Frozen Columns
Name
Maria W Garufi
Johnson A Chui
Deepesh J Slusarski
Rodrigues W Inouye
Murillo E Campain
Julie Z Royster
Adams J Doe
Julie E Iturbide
Ricardo B Rulapaugh
Juan S Campain
Costa H Morasca
Misaki P Slusarski
Silvio I Waycott
Murillo Y Chui
Mayumi G Waycott
Chavez B Glick
Misaki P Foller
Emily S Albares
Julie U Marrier
Isabel J Ruta
Mujtaba C Campain
Smith L Butt
Alejandro Z Foller
Murillo T Butt
Emily H Marrier
Antonio D Waycott
Jennifer F Caldarera
Aditya T Venere
Claire J Caudy
Antonio U Inouye
David V Dilliard
Ricardo V Caldarera
Ashley A Whobrey
Darci A Inouye
Claire N Garufi
Octavia P Bolognia
Leon A Rulapaugh
Clifford N Flosi
Deepesh I Slusarski
Misaki A Shinko
Rodrigues N Malet
Aditya G Slusarski
Ricardo V Flosi
Darci I Bowley
Octavia G Ferencz
Misaki A Caldarera
Ricardo B Paprocki
David C Nicka
Johnson Z Kusko
Johnson P Doe
IdCountryDate
1000India2026-10-12
1001India2026-11-05
1002Germany2026-10-14
1003Russia2026-11-01
1004Brazil2026-11-09
1005France2026-11-04
1006Germany2026-10-22
1007Canada2026-11-06
1008Spain2026-10-12
1009Russia2026-11-01
1010Russia2026-10-24
1011Italy2026-11-01
1012Brazil2026-10-20
1013Argentina2026-10-21
1014Russia2026-10-12
1015Brazil2026-11-01
1016Germany2026-11-02
1017Argentina2026-11-01
1018France2026-10-23
1019Brazil2026-10-23
1020India2026-10-11
1021Italy2026-10-14
1022Argentina2026-10-18
1023Brazil2026-10-29
1024Argentina2026-10-13
1025Germany2026-11-08
1026Brazil2026-10-11
1027Italy2026-11-08
1028Brazil2026-10-20
1029Brazil2026-11-05
1030Brazil2026-11-01
1031Canada2026-10-29
1032Japan2026-10-26
1033Germany2026-11-08
1034Canada2026-10-12
1035Brazil2026-10-22
1036Canada2026-10-11
1037Japan2026-11-03
1038Australia2026-11-09
1039Italy2026-11-09
1040Italy2026-10-27
1041Russia2026-11-03
1042Japan2026-10-20
1043Italy2026-10-26
1044Russia2026-10-24
1045India2026-10-14
1046India2026-11-04
1047Germany2026-10-28
1048Italy2026-11-08
1049United Kingdom2026-10-15

On-Demand Data

NameIdCountryDate
Juan B Chui1000Argentina2026-11-02
Izzy Z Garufi1001Australia2026-11-01
Misaki V Malet1002Canada2026-10-14
Kaitlin W Albares1003Canada2026-10-15
Kadeem L Flosi1004Russia2026-10-13
Cody M Kolmetz1005Germany2026-11-08
Mayumi M Perin1006Japan2026-11-09
Cody R Ostrosky1007Canada2026-10-24
Leon O Doe1008Argentina2026-11-09
Leon Z Paprocki1009Argentina2026-10-25
Wickens P Nestle1010Brazil2026-11-05
Antonio X Inouye1011Brazil2026-11-05
Jones C Perin1012India2026-10-14
Kaitlin X Caldarera1013Brazil2026-10-25
Nicolas X Ruta1014Italy2026-10-21
Juan A Venere1015United Kingdom2026-10-31
Ricardo P Campain1016Brazil2026-10-30
Costa S Flosi1017Spain2026-10-29
Greenwood Y Bowley1018Brazil2026-10-14
Jeanfrancois V Venere1019India2026-11-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire Q ButtUnited KingdomXuxue Feng PROPOSAL
Rodrigues L GlickArgentinaStephen Shaw RENEWAL
Adams V SlusarskiAustraliaIvan Magalhaes NEW
Alejandro P SergiArgentinaXuxue Feng QUALIFIED
Juan S KolmetzAustraliaAmy Elsner RENEWAL
Octavia W PaprockiArgentinaXuxue Feng NEW
Leja U MarrierCanadaElwin Sharvill NEGOTIATION
Johnson B GarufiIndiaStephen Shaw RENEWAL
Adams Y PerinRussiaStephen Shaw PROPOSAL
Salvatore L FerenczGermanyAmy Elsner NEW
Kadeem H ButtJapanAsiya Javayant RENEWAL
Clifford T SergiGermanyAmy Elsner RENEWAL
Greenwood U BriddickArgentinaIvan Magalhaes RENEWAL
Nicolas N GlickItalyIoni Bowcher UNQUALIFIED
Salvatore Z OldroydIndiaIvan Magalhaes QUALIFIED
Darci D AlbaresIndiaElwin Sharvill RENEWAL
Alejandro T RimGermanyIvan Magalhaes RENEWAL
Deepesh F WieserArgentinaXuxue Feng QUALIFIED
Silvio K KolmetzSpainStephen Shaw NEGOTIATION
Darci D RulapaughIndiaIoni Bowcher NEW
Chavez S RulapaughSpainAnna Fali NEW
Maria S WaycottCanadaAsiya Javayant NEW
Adams A IturbideItalyXuxue Feng RENEWAL
Ricardo W OldroydFranceStephen Shaw UNQUALIFIED
Aruna E RulapaughAustraliaElwin Sharvill NEGOTIATION
Mujtaba R RulapaughFranceAnna Fali QUALIFIED
Juan U RoysterCanadaXuxue Feng UNQUALIFIED
Aika M ChuiBrazilIoni Bowcher NEW
Johnson D SlusarskiArgentinaAmy Elsner UNQUALIFIED
Juan R FerenczRussiaBernardo Dominic UNQUALIFIED
Jennifer J OstroskySpainStephen Shaw NEGOTIATION
Nicolas I GarufiCanadaElwin Sharvill NEW
Jennifer T ShinkoGermanyOnyama Limba NEW
Julie X FlosiIndiaElwin Sharvill NEGOTIATION
Misaki H PoquetteCanadaStephen Shaw UNQUALIFIED
Kadeem T MarrierArgentinaIvan Magalhaes NEGOTIATION
Jennifer E MorascaIndiaBernardo Dominic UNQUALIFIED
Jennifer D SaylorsIndiaAsiya Javayant QUALIFIED
Johnson U MarrierFranceAmy Elsner PROPOSAL
Rodrigues D OldroydSpainIvan Magalhaes RENEWAL

<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>