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
Emily T IturbideRussiaAsiya Javayant RENEWAL
Clifford F ChuiAustraliaIvan Magalhaes NEGOTIATION
Octavia A StockhamSpainAnna Fali QUALIFIED
Salvatore W DilliardItalyOnyama Limba PROPOSAL
Francesco N StockhamSpainXuxue Feng UNQUALIFIED
Greenwood H WaycottIndiaElwin Sharvill NEW
Arvin H MarrierJapanElwin Sharvill QUALIFIED
Maisha V CaldareraJapanAmy Elsner UNQUALIFIED
Maria H FerenczGermanyAsiya Javayant UNQUALIFIED
James V BologniaJapanStephen Shaw NEW
Octavia H CaldareraCanadaIvan Magalhaes PROPOSAL
Misaki D IturbideJapanStephen Shaw NEW
Juan C BowleyUnited KingdomXuxue Feng PROPOSAL
Jones D KolmetzUnited KingdomBernardo Dominic NEW
Cody A StockhamGermanyIoni Bowcher UNQUALIFIED
Mujtaba M SchemmerFranceAnna Fali PROPOSAL
Costa R BriddickRussiaStephen Shaw NEW
Leja X MacleadItalyIvan Magalhaes RENEWAL
Darci S DoeFranceIoni Bowcher UNQUALIFIED
Costa A IturbideCanadaIvan Magalhaes UNQUALIFIED
Smith N WieserSpainElwin Sharvill UNQUALIFIED
Isabel Y MaletCanadaBernardo Dominic NEW
Leon L RoysterBrazilIoni Bowcher QUALIFIED
Aruna T FlosiIndiaAsiya Javayant NEW
Jennifer X MacleadJapanAmy Elsner QUALIFIED
Octavia Q RoysterIndiaAmy Elsner NEW
Ashley P FlosiRussiaAmy Elsner UNQUALIFIED
Mujtaba I ButtIndiaXuxue Feng RENEWAL
Chavez T BowleyArgentinaXuxue Feng RENEWAL
Clifford L RoysterGermanyElwin Sharvill NEGOTIATION
Smith L BowleyAustraliaXuxue Feng UNQUALIFIED
Julie H IturbideJapanAnna Fali NEGOTIATION
Kadeem L FigeroaUnited KingdomStephen Shaw NEW
Alejandro T RimCanadaAsiya Javayant QUALIFIED
Leja F GillianSpainStephen Shaw QUALIFIED
Stacey O GlickSpainXuxue Feng PROPOSAL
Jeanfrancois A SchemmerRussiaBernardo Dominic QUALIFIED
Rodrigues P InouyeUnited KingdomAsiya Javayant QUALIFIED
Julie T AlbaresIndiaOnyama Limba RENEWAL
Faith V FigeroaJapanAnna Fali RENEWAL
Johnson M BriddickSpainAnna Fali QUALIFIED
Aruna G StensethAustraliaIvan Magalhaes NEW
David B GarufiRussiaBernardo Dominic UNQUALIFIED
Cody W PerinArgentinaAnna Fali QUALIFIED
Johnson J VenereRussiaIvan Magalhaes PROPOSAL
Faith H CaldareraIndiaElwin Sharvill PROPOSAL
Ivar P GillianArgentinaOnyama Limba NEGOTIATION
Faith J FollerCanadaElwin Sharvill RENEWAL
Ivar R InouyeIndiaStephen Shaw UNQUALIFIED
Aditya C InouyeIndiaElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Leon I StockhamArgentinaIvan Magalhaes NEW
Emily T CampainIndiaIoni Bowcher RENEWAL
Leon X DarakjyRussiaIvan Magalhaes RENEWAL
Ricardo Y ButtIndiaOnyama Limba PROPOSAL
Greenwood C DilliardGermanyStephen Shaw RENEWAL
Arvin X MaletSpainBernardo Dominic NEGOTIATION
Sinclair I TollnerBrazilAnna Fali PROPOSAL
Cody J VocelkaGermanyIoni Bowcher PROPOSAL
David Q RutaRussiaAnna Fali NEGOTIATION
Aditya C GarufiSpainAsiya Javayant UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi I MorascaRussia2026-10-13King, Christopher A Esq NEGOTIATION4Stephen Shaw
1001Julie D AlbaresItaly2026-11-05Feltz Printing Service NEW18Onyama Limba
1002Maria U CaldareraSpain2026-11-02Feltz Printing Service QUALIFIED53Ivan Magalhaes
1003Stacey O RutaGermany2026-10-14Truhlar And Truhlar Attys NEGOTIATION21Amy Elsner
1004Johnson T BowleyRussia2026-10-25King, Christopher A Esq RENEWAL58Bernardo Dominic
1005Nicolas N CaldareraJapan2026-10-20Printing Dimensions PROPOSAL17Xuxue Feng
1006Clifford K PoquetteAustralia2026-10-19Commercial Press PROPOSAL96Ioni Bowcher
1007Aditya D CaldareraRussia2026-11-03Rangoni Of Florence QUALIFIED43Stephen Shaw
1008Morrow S CaudyArgentina2026-10-16Dorl, James J Esq PROPOSAL46Xuxue Feng
1009Jones G WieserCanada2026-10-09Chanay, Jeffrey A Esq QUALIFIED63Elwin Sharvill
1010Juan M FlosiGermany2026-10-29Chemel, James L Cpa QUALIFIED40Ivan Magalhaes
1011Chavez F RoysterCanada2026-10-24Buckley Miller Wright NEW31Stephen Shaw
1012Maisha N CaudyArgentina2026-10-15Feltz Printing Service QUALIFIED74Ivan Magalhaes
1013Silvio I SergiAustralia2026-10-30Feltz Printing Service QUALIFIED62Amy Elsner
1014Isabel T VenereSpain2026-10-30Chapman, Ross E Esq NEGOTIATION31Xuxue Feng
1015Ashley V DoeCanada2026-10-20King, Christopher A Esq UNQUALIFIED16Elwin Sharvill
1016Antonio R FigeroaRussia2026-11-03Morlong Associates NEGOTIATION47Amy Elsner
1017Stacey K FlosiArgentina2026-10-19Dorl, James J Esq PROPOSAL0Asiya Javayant
1018Octavia X CampainArgentina2026-10-17King, Christopher A Esq NEGOTIATION28Amy Elsner
1019Aika V GlickCanada2026-10-10King, Christopher A Esq UNQUALIFIED31Xuxue Feng
1020Ashley H GarufiCanada2026-10-28Rangoni Of Florence RENEWAL85Anna Fali
1021Aruna G MacleadAustralia2026-11-04Dorl, James J Esq UNQUALIFIED70Stephen Shaw
1022Sinclair D FlosiIndia2026-10-11Chemel, James L Cpa QUALIFIED59Anna Fali
1023Salvatore M MaletRussia2026-10-28Feiner Bros PROPOSAL36Stephen Shaw
1024Smith P OstroskyJapan2026-10-26Rangoni Of Florence NEW11Onyama Limba
1025Claire C FollerJapan2026-10-12Morlong Associates UNQUALIFIED80Xuxue Feng
1026Faith M KuskoCanada2026-10-16Feltz Printing Service RENEWAL75Ioni Bowcher
1027Morrow L ShinkoCanada2026-11-01Printing Dimensions NEGOTIATION70Asiya Javayant
1028Maisha M OstroskyRussia2026-10-16Chapman, Ross E Esq QUALIFIED99Anna Fali
1029Jeanfrancois Z BologniaRussia2026-10-12Chapman, Ross E Esq NEGOTIATION19Asiya Javayant
1030Jefferson J DarakjyAustralia2026-10-26Chemel, James L Cpa NEGOTIATION88Onyama Limba
1031Mayumi W KuskoRussia2026-10-12Benton, John B Jr NEW55Stephen Shaw
1032Izzy Q OstroskyItaly2026-10-15Benton, John B Jr RENEWAL51Anna Fali
1033Leja H DarakjyBrazil2026-10-28Feltz Printing Service UNQUALIFIED1Ioni Bowcher
1034Izzy W FerenczBrazil2026-10-15Chapman, Ross E Esq PROPOSAL32Amy Elsner
1035Ricardo G ButtAustralia2026-11-03Feiner Bros RENEWAL88Xuxue Feng
1036Jones M MacleadJapan2026-10-14Morlong Associates UNQUALIFIED89Elwin Sharvill
1037Rodrigues V GlickItaly2026-10-27Feiner Bros QUALIFIED70Xuxue Feng
1038Maisha C VenereCanada2026-10-07Rousseaux, Michael Esq NEW94Anna Fali
1039Mayumi A TollnerAustralia2026-10-09Chanay, Jeffrey A Esq QUALIFIED82Asiya Javayant
1040Claire E NestleBrazil2026-10-07Commercial Press PROPOSAL19Anna Fali
1041Salvatore Q FerenczJapan2026-11-04Buckley Miller Wright UNQUALIFIED1Asiya Javayant
1042Cody C KolmetzBrazil2026-10-17Buckley Miller Wright PROPOSAL86Amy Elsner
1043Maisha C CaudyArgentina2026-10-20Commercial Press UNQUALIFIED44Ivan Magalhaes
1044Darci C WaycottUnited Kingdom2026-10-07Truhlar And Truhlar Attys QUALIFIED67Ivan Magalhaes
1045Jones M AlbaresFrance2026-10-19Chapman, Ross E Esq PROPOSAL17Stephen Shaw
1046Kadeem V WaycottBrazil2026-10-11Chapman, Ross E Esq QUALIFIED70Bernardo Dominic
1047James D CampainJapan2026-10-19Chanay, Jeffrey A Esq NEGOTIATION19Ioni Bowcher
1048Aditya B RimArgentina2026-10-08Printing Dimensions QUALIFIED0Anna Fali
1049Darci Q GauchoRussia2026-10-31Rangoni Of Florence RENEWAL92Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Morrow A RutaJapanOnyama Limba NEGOTIATION
Kaitlin A RoysterGermanyAmy Elsner NEW
Chavez E CaldareraArgentinaXuxue Feng UNQUALIFIED
Wickens N KuskoGermanyOnyama Limba NEGOTIATION
Francesco W StensethBrazilAnna Fali UNQUALIFIED
Kadeem P MorascaCanadaIoni Bowcher NEW
Nicolas Z FigeroaJapanStephen Shaw NEGOTIATION
Julie A DoeFranceXuxue Feng NEGOTIATION
Silvio V MaletJapanAmy Elsner UNQUALIFIED
Emily L VocelkaArgentinaIvan Magalhaes PROPOSAL
Stacey J InouyeBrazilIvan Magalhaes PROPOSAL
Claire I SchemmerFranceStephen Shaw NEW
Kaitlin R AlbaresUnited KingdomXuxue Feng UNQUALIFIED
Clifford W FlosiUnited KingdomBernardo Dominic RENEWAL
Arvin K DoeAustraliaBernardo Dominic NEW
Kaitlin Q SlusarskiIndiaAnna Fali QUALIFIED
Smith U GarufiRussiaOnyama Limba NEGOTIATION
Darci Z WieserRussiaElwin Sharvill PROPOSAL
Morrow O RutaFranceIoni Bowcher PROPOSAL
Claire P StockhamAustraliaXuxue Feng RENEWAL
Silvio K RutaArgentinaIvan Magalhaes PROPOSAL
Arvin H PerinIndiaAnna Fali NEW
Jefferson R DarakjyJapanBernardo Dominic NEGOTIATION
Juan T PerinRussiaStephen Shaw UNQUALIFIED
Stacey P WhobreyRussiaXuxue Feng NEW
Francesco W NestleSpainElwin Sharvill UNQUALIFIED
James Y CaldareraIndiaOnyama Limba QUALIFIED
Leon A FerenczSpainIvan Magalhaes RENEWAL
Ricardo G OstroskyFranceOnyama Limba UNQUALIFIED
Mujtaba R RulapaughJapanBernardo Dominic UNQUALIFIED
Cody P ShinkoRussiaAnna Fali NEW
Alejandro L IturbideAustraliaIvan Magalhaes PROPOSAL
Adams I NickaBrazilXuxue Feng QUALIFIED
Alejandro J SlusarskiFranceAnna Fali NEW
Aditya T PoquetteSpainBernardo Dominic NEW
Aruna V DilliardAustraliaOnyama Limba UNQUALIFIED
Emily N FerenczFranceStephen Shaw PROPOSAL
Maisha X RutaBrazilIvan Magalhaes NEW
Antonio M RutaBrazilOnyama Limba NEW
Jennifer M FlosiItalyAnna Fali PROPOSAL
Claire S StensethGermanyBernardo Dominic RENEWAL
Maisha V MorascaIndiaBernardo Dominic NEGOTIATION
Isabel C GarufiSpainIvan Magalhaes UNQUALIFIED
Adams H SchemmerJapanElwin Sharvill UNQUALIFIED
Jennifer R DarakjyRussiaAnna Fali NEW
Jennifer Q FollerCanadaStephen Shaw PROPOSAL
Aruna O RulapaughCanadaStephen Shaw NEW
Octavia B ChuiGermanyAmy Elsner QUALIFIED
Maisha T VenereItalyAnna Fali QUALIFIED
Salvatore R BologniaIndiaXuxue Feng PROPOSAL
Frozen Columns
Name
Chavez F Schemmer
Francesco J Briddick
Julie D Caudy
Greenwood J Tollner
Antonio H Morasca
Murillo Q Shinko
Smith P Marrier
Adams L Kolmetz
Clifford I Malet
Greenwood N Campain
James G Sergi
Ivar H Rim
Isabel E Saylors
Juan B Royster
Costa S Stockham
Claire K Ruta
Jennifer C Garufi
Greenwood F Malet
James D Stenseth
Darci W Whobrey
Ivar W Rulapaugh
Juan C Malet
Silvio U Malet
Munro H Foller
Antonio K Slusarski
Claire P Gaucho
Jeanfrancois N Perin
Sinclair X Gillian
Nicolas C Morasca
Emily B Wieser
David T Malet
James Z Dilliard
Cody M Ostrosky
Mujtaba O Briddick
Julie M Kusko
Adams P Iturbide
Murillo P Royster
Morrow A Inouye
Mujtaba J Figeroa
Stacey L Campain
Aditya V Venere
Chavez S Poquette
Claire D Ostrosky
Emily H Malet
Rodrigues F Caldarera
Antonio M Bowley
Kadeem R Oldroyd
Smith T Nicka
Murillo F Kusko
Leja E Stenseth
IdCountryDate
1000Argentina2026-10-25
1001Germany2026-10-17
1002Japan2026-10-22
1003Argentina2026-10-25
1004Russia2026-11-05
1005Germany2026-10-25
1006Spain2026-10-31
1007Argentina2026-10-26
1008Italy2026-11-05
1009Italy2026-10-14
1010India2026-10-09
1011Spain2026-10-26
1012United Kingdom2026-10-14
1013Australia2026-10-10
1014India2026-10-23
1015United Kingdom2026-10-17
1016Brazil2026-10-27
1017Spain2026-10-24
1018India2026-10-17
1019France2026-10-28
1020Brazil2026-11-03
1021Italy2026-10-19
1022Russia2026-10-07
1023Brazil2026-10-20
1024Spain2026-10-08
1025Spain2026-10-29
1026Russia2026-10-17
1027France2026-10-21
1028Spain2026-10-21
1029Italy2026-11-02
1030Russia2026-10-12
1031Germany2026-10-30
1032Japan2026-10-09
1033Australia2026-10-21
1034Italy2026-10-28
1035India2026-10-23
1036India2026-10-20
1037United Kingdom2026-11-03
1038Italy2026-10-20
1039Brazil2026-10-25
1040Italy2026-10-26
1041Italy2026-10-16
1042Australia2026-10-08
1043Italy2026-10-15
1044Australia2026-11-02
1045Australia2026-11-04
1046Spain2026-10-19
1047Germany2026-11-01
1048Brazil2026-10-29
1049Spain2026-10-15

On-Demand Data

NameIdCountryDate
Mayumi R Nestle1000Japan2026-11-02
Rodrigues P Rim1001India2026-10-07
Clifford A Foller1002France2026-10-10
Silvio F Rim1003India2026-11-02
Arvin Q Perin1004Canada2026-10-22
Francesco T Shinko1005Argentina2026-10-13
Julie U Campain1006Japan2026-10-07
Munro L Poquette1007United Kingdom2026-10-11
Kadeem D Ruta1008Germany2026-10-24
Claire Z Bolognia1009United Kingdom2026-10-12
Aditya Q Sergi1010France2026-10-29
Tony W Wieser1011Argentina2026-10-30
Jeanfrancois Q Marrier1012Australia2026-11-02
Isabel A Waycott1013Australia2026-10-29
Aika R Paprocki1014Australia2026-10-09
Chavez N Wieser1015India2026-10-27
Julie G Marrier1016Argentina2026-11-04
Kaitlin Q Chui1017Germany2026-10-23
Julie G Morasca1018Argentina2026-10-19
Chavez T Foller1019Germany2026-11-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez A PoquetteBrazilAsiya Javayant QUALIFIED
Claire H GarufiBrazilIoni Bowcher QUALIFIED
Chavez G DilliardUnited KingdomAnna Fali NEGOTIATION
Aika X InouyeGermanyOnyama Limba PROPOSAL
Darci C FigeroaUnited KingdomAnna Fali UNQUALIFIED
Jefferson J SergiAustraliaIoni Bowcher NEGOTIATION
Jennifer R ChuiItalyAsiya Javayant NEW
Sinclair K FigeroaArgentinaAmy Elsner NEW
Isabel O GlickGermanyBernardo Dominic NEW
Jennifer P WieserCanadaElwin Sharvill UNQUALIFIED
David H SchemmerItalyAmy Elsner NEGOTIATION
Silvio T FollerIndiaAnna Fali NEW
Rodrigues Z ButtSpainAsiya Javayant RENEWAL
Wickens A StockhamRussiaAmy Elsner RENEWAL
Adams Z SlusarskiSpainAnna Fali QUALIFIED
Leja W WieserRussiaAnna Fali PROPOSAL
Claire Z GarufiSpainAmy Elsner UNQUALIFIED
Johnson I VocelkaAustraliaIvan Magalhaes QUALIFIED
Claire T ButtRussiaBernardo Dominic NEW
Maria O PaprockiAustraliaElwin Sharvill NEW
Jeanfrancois U DarakjyIndiaIoni Bowcher QUALIFIED
Misaki D SaylorsAustraliaAmy Elsner UNQUALIFIED
Sinclair F TollnerBrazilIoni Bowcher PROPOSAL
Leja F KolmetzBrazilIvan Magalhaes RENEWAL
Kaitlin Y AmigonSpainXuxue Feng RENEWAL
Misaki C MarrierUnited KingdomStephen Shaw UNQUALIFIED
Arvin H PaprockiBrazilAmy Elsner NEW
Francesco K PerinArgentinaAmy Elsner RENEWAL
Mayumi G WaycottUnited KingdomAmy Elsner QUALIFIED
Clifford E StockhamAustraliaAnna Fali QUALIFIED
Darci R SergiSpainBernardo Dominic UNQUALIFIED
Ashley K WaycottCanadaAnna Fali NEGOTIATION
James C IturbideIndiaBernardo Dominic QUALIFIED
Tony R MaletItalyXuxue Feng PROPOSAL
Adams A MarrierAustraliaAsiya Javayant PROPOSAL
Rodrigues T SaylorsUnited KingdomIoni Bowcher QUALIFIED
Emily U CaldareraArgentinaAnna Fali PROPOSAL
Jones Q SchemmerItalyAnna Fali PROPOSAL
Izzy J OldroydJapanBernardo Dominic QUALIFIED
Johnson A IturbideSpainAmy Elsner UNQUALIFIED

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