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
Costa T InouyeGermanyIvan Magalhaes QUALIFIED
Aruna V GlickBrazilStephen Shaw QUALIFIED
Clifford M WaycottSpainElwin Sharvill NEW
Cody Z WieserArgentinaElwin Sharvill QUALIFIED
Clifford Z InouyeCanadaXuxue Feng PROPOSAL
Emily P StockhamCanadaBernardo Dominic PROPOSAL
Claire E PoquetteUnited KingdomOnyama Limba NEW
Cody P FlosiBrazilXuxue Feng RENEWAL
Ivar S ShinkoBrazilAmy Elsner QUALIFIED
Jones Z VenereRussiaElwin Sharvill NEW
Wickens F ShinkoGermanyOnyama Limba RENEWAL
Smith H DoeGermanyStephen Shaw PROPOSAL
Deepesh E RulapaughAustraliaIvan Magalhaes NEW
Smith U MorascaJapanAnna Fali RENEWAL
Jennifer N AlbaresSpainIoni Bowcher NEGOTIATION
Izzy U FollerIndiaAnna Fali RENEWAL
Arvin L NickaUnited KingdomOnyama Limba NEW
Nicolas Y GarufiSpainIoni Bowcher UNQUALIFIED
Silvio P VocelkaAustraliaBernardo Dominic UNQUALIFIED
Wickens Q MorascaIndiaXuxue Feng NEGOTIATION
Faith Y DoeAustraliaAnna Fali RENEWAL
Jeanfrancois K RulapaughUnited KingdomAnna Fali RENEWAL
Mayumi U RoysterArgentinaIvan Magalhaes NEW
Aika O StensethJapanAsiya Javayant PROPOSAL
Costa G AlbaresIndiaIoni Bowcher PROPOSAL
Maisha O MarrierAustraliaBernardo Dominic UNQUALIFIED
Aditya L MaletCanadaAmy Elsner NEW
Isabel A MorascaUnited KingdomIvan Magalhaes NEGOTIATION
Alejandro K DoeRussiaIvan Magalhaes QUALIFIED
Deepesh O SaylorsJapanAmy Elsner PROPOSAL
Ricardo Q RimJapanIvan Magalhaes RENEWAL
Murillo C MorascaRussiaAnna Fali RENEWAL
Jones G KolmetzArgentinaStephen Shaw UNQUALIFIED
Clifford H DilliardGermanyXuxue Feng RENEWAL
Silvio X PoquetteRussiaOnyama Limba NEW
Misaki G GillianJapanBernardo Dominic NEGOTIATION
Aika H WieserFranceAsiya Javayant QUALIFIED
Deepesh A GlickIndiaAmy Elsner PROPOSAL
Clifford K CampainItalyAnna Fali PROPOSAL
Clifford E WaycottIndiaAmy Elsner NEW
Costa F BriddickBrazilStephen Shaw PROPOSAL
Arvin U WaycottUnited KingdomIoni Bowcher UNQUALIFIED
Aika L MacleadItalyIvan Magalhaes NEW
Maisha P NickaSpainElwin Sharvill NEGOTIATION
Leon G MaletCanadaIoni Bowcher QUALIFIED
Jones D AlbaresRussiaAmy Elsner PROPOSAL
Cody E MacleadArgentinaXuxue Feng RENEWAL
Clifford Y WhobreyUnited KingdomAsiya Javayant NEW
Ivar Y AlbaresGermanyElwin Sharvill NEW
Cody C SlusarskiArgentinaAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aditya D KuskoSpainAmy Elsner NEW
Misaki P ButtGermanyIvan Magalhaes RENEWAL
Sinclair Q MarrierFranceElwin Sharvill RENEWAL
Isabel B ShinkoRussiaAmy Elsner RENEWAL
Adams E RutaBrazilStephen Shaw NEW
Munro U TollnerIndiaStephen Shaw NEGOTIATION
Johnson L AlbaresAustraliaOnyama Limba QUALIFIED
Alejandro R GarufiJapanIoni Bowcher PROPOSAL
Aruna W OldroydRussiaOnyama Limba NEW
Faith T SlusarskiCanadaAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David X RutaCanada2026-09-12King, Christopher A Esq UNQUALIFIED63Ioni Bowcher
1001Mujtaba F DarakjyArgentina2026-09-25Morlong Associates QUALIFIED67Asiya Javayant
1002Adams S KuskoBrazil2026-09-22Rousseaux, Michael Esq UNQUALIFIED70Anna Fali
1003Maria Q RutaCanada2026-08-30Chemel, James L Cpa UNQUALIFIED15Xuxue Feng
1004Johnson K BologniaArgentina2026-09-20Rousseaux, Michael Esq RENEWAL99Elwin Sharvill
1005Morrow H KolmetzGermany2026-09-17Feiner Bros PROPOSAL73Amy Elsner
1006Julie Y OstroskyCanada2026-08-29Dorl, James J Esq PROPOSAL8Stephen Shaw
1007Ashley S ButtItaly2026-09-10Benton, John B Jr PROPOSAL54Bernardo Dominic
1008Clifford W RutaRussia2026-09-02Feiner Bros RENEWAL17Elwin Sharvill
1009Wickens J ChuiIndia2026-09-06Buckley Miller Wright PROPOSAL28Onyama Limba
1010Nicolas E GillianRussia2026-09-01Chapman, Ross E Esq PROPOSAL58Ioni Bowcher
1011Ashley P IturbideBrazil2026-08-28Feltz Printing Service NEGOTIATION67Elwin Sharvill
1012Cody V GlickRussia2026-09-25Chapman, Ross E Esq NEW34Xuxue Feng
1013Salvatore J DoeIndia2026-08-31King, Christopher A Esq RENEWAL61Stephen Shaw
1014Kaitlin M AlbaresArgentina2026-09-22Printing Dimensions UNQUALIFIED43Onyama Limba
1015Silvio F IturbideSpain2026-08-30Chanay, Jeffrey A Esq PROPOSAL51Ivan Magalhaes
1016Sinclair N WaycottJapan2026-09-15Chapman, Ross E Esq NEGOTIATION78Ivan Magalhaes
1017Smith I AmigonBrazil2026-09-12Chanay, Jeffrey A Esq RENEWAL73Ivan Magalhaes
1018Aditya S StensethIndia2026-09-11Morlong Associates QUALIFIED0Ivan Magalhaes
1019Aditya W StensethIndia2026-09-16Chapman, Ross E Esq QUALIFIED96Xuxue Feng
1020Jeanfrancois K NickaUnited Kingdom2026-09-09Feltz Printing Service PROPOSAL59Anna Fali
1021Adams Q RimAustralia2026-09-08Printing Dimensions PROPOSAL4Elwin Sharvill
1022Misaki D MarrierSpain2026-09-16Morlong Associates QUALIFIED79Amy Elsner
1023Emily X FlosiArgentina2026-09-24King, Christopher A Esq QUALIFIED44Amy Elsner
1024Kadeem I CampainBrazil2026-09-03Feltz Printing Service RENEWAL81Anna Fali
1025Johnson E BriddickGermany2026-09-08Chanay, Jeffrey A Esq UNQUALIFIED12Elwin Sharvill
1026Emily P StockhamItaly2026-09-22King, Christopher A Esq PROPOSAL56Ioni Bowcher
1027David J NickaIndia2026-09-03Printing Dimensions NEGOTIATION48Anna Fali
1028Darci F WieserAustralia2026-09-25Rangoni Of Florence NEW77Ioni Bowcher
1029Misaki P CampainUnited Kingdom2026-08-30King, Christopher A Esq NEW81Ioni Bowcher
1030Jennifer V CampainRussia2026-09-12Dorl, James J Esq RENEWAL76Anna Fali
1031Ricardo H MaletAustralia2026-09-19Chemel, James L Cpa PROPOSAL49Anna Fali
1032Francesco X WaycottJapan2026-09-03Benton, John B Jr NEW8Asiya Javayant
1033Izzy A StockhamIndia2026-09-25Benton, John B Jr UNQUALIFIED27Elwin Sharvill
1034Juan D MaletUnited Kingdom2026-09-26Dorl, James J Esq RENEWAL24Asiya Javayant
1035Jefferson M BriddickJapan2026-09-11Truhlar And Truhlar Attys QUALIFIED11Xuxue Feng
1036Claire Y SergiSpain2026-09-01Truhlar And Truhlar Attys NEW82Elwin Sharvill
1037Alejandro Q ShinkoBrazil2026-09-18Feltz Printing Service QUALIFIED19Asiya Javayant
1038Faith V PerinBrazil2026-09-05Benton, John B Jr RENEWAL98Asiya Javayant
1039Jeanfrancois F NestleGermany2026-09-22Benton, John B Jr NEGOTIATION43Anna Fali
1040Adams Q RoysterBrazil2026-09-14Benton, John B Jr NEW16Anna Fali
1041Ivar B IturbideArgentina2026-09-15Rousseaux, Michael Esq UNQUALIFIED33Xuxue Feng
1042James U ShinkoGermany2026-09-23Rangoni Of Florence RENEWAL55Amy Elsner
1043Darci T MacleadBrazil2026-08-28Feiner Bros RENEWAL92Asiya Javayant
1044Salvatore G ButtCanada2026-08-29Printing Dimensions UNQUALIFIED14Ioni Bowcher
1045Salvatore G AmigonBrazil2026-09-17King, Christopher A Esq PROPOSAL70Ivan Magalhaes
1046James U WieserRussia2026-09-09Buckley Miller Wright PROPOSAL26Ioni Bowcher
1047Antonio Z NickaRussia2026-09-06Chanay, Jeffrey A Esq RENEWAL84Ivan Magalhaes
1048Maisha F VenereIndia2026-09-07Commercial Press RENEWAL40Bernardo Dominic
1049Juan Q AlbaresUnited Kingdom2026-09-24Buckley Miller Wright QUALIFIED96Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jones Y SergiSpainIoni Bowcher QUALIFIED
Leja H MaletAustraliaIvan Magalhaes RENEWAL
Kadeem H FerenczSpainAsiya Javayant NEW
Arvin X ShinkoAustraliaOnyama Limba NEW
Stacey S CampainUnited KingdomIoni Bowcher RENEWAL
Cody Z MorascaJapanAmy Elsner PROPOSAL
Aditya G OstroskyBrazilXuxue Feng NEW
Maisha B KolmetzArgentinaIvan Magalhaes QUALIFIED
Claire U RimUnited KingdomIoni Bowcher QUALIFIED
Antonio B BowleyArgentinaIoni Bowcher NEGOTIATION
Greenwood R KuskoRussiaOnyama Limba NEGOTIATION
Chavez S VocelkaArgentinaStephen Shaw NEGOTIATION
Mujtaba L DoeIndiaXuxue Feng NEGOTIATION
Misaki U FerenczFranceIoni Bowcher QUALIFIED
Tony Y DarakjyArgentinaXuxue Feng QUALIFIED
Maisha B SchemmerGermanyBernardo Dominic NEGOTIATION
Clifford N RoysterItalyAsiya Javayant PROPOSAL
Nicolas B StockhamArgentinaBernardo Dominic UNQUALIFIED
Wickens H BologniaBrazilElwin Sharvill NEGOTIATION
Juan A VocelkaRussiaXuxue Feng PROPOSAL
Faith S NickaBrazilXuxue Feng NEW
Sinclair T MacleadIndiaAnna Fali RENEWAL
Rodrigues Q GarufiUnited KingdomXuxue Feng PROPOSAL
David L MaletUnited KingdomElwin Sharvill PROPOSAL
Jennifer B PaprockiIndiaStephen Shaw NEGOTIATION
Jennifer P GillianItalyBernardo Dominic NEGOTIATION
Costa J SaylorsArgentinaAsiya Javayant UNQUALIFIED
Arvin B NestleUnited KingdomXuxue Feng NEW
Mayumi V BologniaItalyIoni Bowcher QUALIFIED
Aditya U SlusarskiAustraliaOnyama Limba PROPOSAL
Jones G SlusarskiBrazilAsiya Javayant NEW
Claire B BowleyFranceBernardo Dominic UNQUALIFIED
Stacey A WieserSpainAsiya Javayant RENEWAL
Cody T MaletFranceBernardo Dominic UNQUALIFIED
Kadeem Y MorascaRussiaAnna Fali RENEWAL
Alejandro B AmigonArgentinaAsiya Javayant RENEWAL
Jones X ChuiArgentinaIoni Bowcher UNQUALIFIED
Maisha X WieserArgentinaAsiya Javayant PROPOSAL
Munro B CaudySpainAmy Elsner NEGOTIATION
Julie G VenereIndiaIvan Magalhaes UNQUALIFIED
Francesco T VocelkaFranceAnna Fali QUALIFIED
Smith C DarakjyUnited KingdomXuxue Feng NEW
Jeanfrancois F SaylorsSpainStephen Shaw RENEWAL
Juan J BriddickRussiaStephen Shaw NEW
Nicolas X FerenczRussiaOnyama Limba NEGOTIATION
Leja J OldroydIndiaXuxue Feng UNQUALIFIED
Francesco D MarrierItalyAnna Fali RENEWAL
Morrow T StensethFranceAsiya Javayant NEGOTIATION
Deepesh U OstroskyItalyAnna Fali NEGOTIATION
Stacey E MacleadRussiaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Leon V Foller
Jones C Kusko
Emily C Vocelka
Silvio P Dilliard
Stacey D Gaucho
Jefferson O Marrier
Aditya S Venere
Ricardo C Stenseth
Darci P Nicka
Aika M Butt
Alejandro M Gillian
Deepesh Z Slusarski
Aruna K Gaucho
Johnson X Stenseth
Greenwood X Amigon
Ivar A Inouye
Kadeem K Slusarski
Clifford S Schemmer
Jeanfrancois Q Poquette
Jennifer G Garufi
Ricardo B Caudy
Aika L Campain
Adams L Oldroyd
Misaki I Inouye
Jennifer U Bolognia
Maisha R Caldarera
David S Foller
Johnson G Malet
Maisha Z Stockham
Faith C Slusarski
Jefferson M Waycott
Murillo A Morasca
Maisha D Chui
Jefferson Y Perin
Silvio H Albares
Munro H Malet
Sinclair Q Bolognia
Ashley K Poquette
Maisha F Darakjy
Nicolas W Amigon
Leja T Nicka
Faith N Ruta
Costa K Sergi
Kaitlin W Morasca
Ivar I Waycott
Leja J Darakjy
Darci G Rulapaugh
Juan J Whobrey
Clifford G Sergi
Ricardo M Marrier
IdCountryDate
1000India2026-08-29
1001India2026-08-29
1002India2026-09-04
1003Germany2026-09-18
1004Japan2026-09-26
1005Japan2026-08-30
1006Australia2026-09-26
1007Russia2026-09-22
1008Brazil2026-09-09
1009Canada2026-09-26
1010United Kingdom2026-09-23
1011Brazil2026-09-24
1012Canada2026-09-09
1013Spain2026-08-31
1014Spain2026-09-09
1015India2026-09-12
1016Japan2026-09-20
1017Japan2026-09-08
1018Germany2026-09-06
1019United Kingdom2026-09-07
1020Australia2026-09-10
1021Italy2026-08-30
1022Canada2026-09-26
1023Russia2026-09-18
1024Brazil2026-09-21
1025India2026-09-24
1026Russia2026-09-21
1027Germany2026-09-06
1028United Kingdom2026-08-28
1029Japan2026-09-02
1030Germany2026-09-22
1031Germany2026-09-18
1032Japan2026-08-28
1033France2026-09-15
1034Argentina2026-09-06
1035Germany2026-09-10
1036Japan2026-08-28
1037Russia2026-09-25
1038Japan2026-09-11
1039Japan2026-08-29
1040France2026-08-29
1041Italy2026-09-07
1042Germany2026-08-28
1043United Kingdom2026-09-10
1044Japan2026-09-22
1045Spain2026-08-31
1046Brazil2026-09-16
1047Italy2026-09-04
1048Italy2026-09-15
1049France2026-09-26

On-Demand Data

NameIdCountryDate
Jennifer A Royster1000United Kingdom2026-09-19
Claire C Dilliard1001Brazil2026-09-22
Leon M Maclead1002Argentina2026-09-24
Alejandro R Nicka1003Russia2026-09-01
Darci D Stenseth1004United Kingdom2026-09-04
Nicolas F Marrier1005Russia2026-09-09
Wickens O Kolmetz1006India2026-09-25
Jeanfrancois N Figeroa1007Spain2026-09-02
Darci U Malet1008Russia2026-08-28
Leja A Poquette1009France2026-09-02
Ivar F Stockham1010Australia2026-08-28
Silvio X Whobrey1011Russia2026-09-04
Mayumi M Figeroa1012Spain2026-09-01
Jefferson Q Darakjy1013Italy2026-09-13
Jefferson U Butt1014Russia2026-09-01
Aika J Stenseth1015Germany2026-09-22
Aika Y Saylors1016United Kingdom2026-09-08
Maria C Paprocki1017Russia2026-09-20
Kadeem G Foller1018India2026-09-23
Murillo D Wieser1019India2026-09-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan D ChuiJapanOnyama Limba UNQUALIFIED
Cody D MarrierIndiaElwin Sharvill PROPOSAL
Adams K RulapaughArgentinaOnyama Limba UNQUALIFIED
Aruna L CaudyFranceIvan Magalhaes QUALIFIED
Sinclair A DilliardFranceAsiya Javayant UNQUALIFIED
Juan K FlosiArgentinaIvan Magalhaes RENEWAL
Ashley E IturbideBrazilStephen Shaw PROPOSAL
Aditya L InouyeRussiaOnyama Limba UNQUALIFIED
Kaitlin A NickaArgentinaOnyama Limba NEGOTIATION
Arvin K GarufiBrazilAsiya Javayant PROPOSAL
Sinclair T CaldareraItalyXuxue Feng RENEWAL
Mayumi Q StensethFranceBernardo Dominic RENEWAL
Leon V AmigonFranceIvan Magalhaes QUALIFIED
Chavez I BriddickSpainAnna Fali UNQUALIFIED
David X WieserJapanAnna Fali QUALIFIED
Isabel W CampainUnited KingdomAsiya Javayant NEW
Misaki C GauchoSpainElwin Sharvill PROPOSAL
Wickens M InouyeGermanyAmy Elsner NEW
David E GarufiBrazilStephen Shaw PROPOSAL
Leon P DilliardUnited KingdomElwin Sharvill RENEWAL
Deepesh P SergiGermanyIvan Magalhaes NEGOTIATION
Jones X SergiItalyAmy Elsner QUALIFIED
Claire E KolmetzArgentinaStephen Shaw PROPOSAL
Ashley O RutaFranceAsiya Javayant RENEWAL
Emily I StockhamBrazilAnna Fali RENEWAL
Alejandro U AlbaresItalyIvan Magalhaes UNQUALIFIED
Juan V BowleyUnited KingdomXuxue Feng PROPOSAL
Octavia N PaprockiRussiaElwin Sharvill UNQUALIFIED
Juan U SlusarskiItalyBernardo Dominic RENEWAL
Sinclair Z AlbaresSpainXuxue Feng NEGOTIATION
Wickens V GlickJapanAnna Fali NEGOTIATION
Arvin J VocelkaArgentinaXuxue Feng NEW
Tony P CaldareraCanadaAsiya Javayant PROPOSAL
Leon U DoeUnited KingdomXuxue Feng UNQUALIFIED
Izzy N DilliardBrazilAmy Elsner QUALIFIED
Mujtaba Q FollerItalyElwin Sharvill NEW
James T RimGermanyXuxue Feng QUALIFIED
Francesco Z GauchoAustraliaStephen Shaw PROPOSAL
Alejandro J InouyeIndiaElwin Sharvill UNQUALIFIED
Antonio E WhobreyFranceStephen Shaw NEGOTIATION

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