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

Input Style

Themes

PrimeOne
Saga Saga
Vela Vela
Arya Arya
Bootstrap
bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple
Material Design
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple
Material Design Compact
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple

DataTable Scroll

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

Vertical
NameCountryRepresentativeStatus
Ivar Y NestleSpainIoni Bowcher UNQUALIFIED
Aruna P ButtCanadaXuxue Feng UNQUALIFIED
Kaitlin L PaprockiAustraliaIvan Magalhaes NEGOTIATION
James S NickaJapanBernardo Dominic NEGOTIATION
Morrow F PerinSpainAmy Elsner PROPOSAL
Costa R DoeGermanyStephen Shaw NEW
Murillo D CampainFranceOnyama Limba NEW
Octavia J BriddickIndiaXuxue Feng PROPOSAL
Antonio N CaudyItalyIoni Bowcher RENEWAL
Maria S FerenczJapanStephen Shaw RENEWAL
Francesco G PoquetteJapanAsiya Javayant NEGOTIATION
Nicolas X SchemmerCanadaIvan Magalhaes QUALIFIED
Aditya F MarrierAustraliaElwin Sharvill QUALIFIED
Johnson J GlickCanadaIvan Magalhaes UNQUALIFIED
Kaitlin Z NickaItalyAsiya Javayant UNQUALIFIED
Maria M OstroskyArgentinaOnyama Limba UNQUALIFIED
Ricardo U GarufiJapanAsiya Javayant UNQUALIFIED
Juan J KolmetzGermanyAmy Elsner NEGOTIATION
Cody O AlbaresIndiaElwin Sharvill RENEWAL
Sinclair G KuskoArgentinaBernardo Dominic UNQUALIFIED
Faith C WhobreyGermanyXuxue Feng NEW
Ashley D BologniaSpainIvan Magalhaes PROPOSAL
Ivar O FlosiArgentinaStephen Shaw PROPOSAL
Leja N BologniaIndiaOnyama Limba NEW
Alejandro B WhobreyRussiaXuxue Feng UNQUALIFIED
Wickens J WieserGermanyIoni Bowcher RENEWAL
Mayumi X DoeAustraliaBernardo Dominic UNQUALIFIED
Francesco J AmigonArgentinaAmy Elsner NEW
Tony S GarufiItalyAsiya Javayant QUALIFIED
Nicolas S NestleGermanyElwin Sharvill UNQUALIFIED
Alejandro N StockhamFranceXuxue Feng NEW
Maria A OldroydRussiaBernardo Dominic QUALIFIED
Leon X BriddickIndiaBernardo Dominic NEW
Faith M AmigonCanadaBernardo Dominic UNQUALIFIED
Tony I StensethArgentinaAsiya Javayant PROPOSAL
Johnson A InouyeGermanyOnyama Limba QUALIFIED
Darci Y RutaBrazilAsiya Javayant NEW
Jeanfrancois E CaudyArgentinaAmy Elsner NEW
Jennifer O BowleySpainIoni Bowcher RENEWAL
Johnson D WieserCanadaIvan Magalhaes PROPOSAL
James I AlbaresUnited KingdomIvan Magalhaes PROPOSAL
Wickens M GlickBrazilAsiya Javayant PROPOSAL
Alejandro N TollnerArgentinaElwin Sharvill NEGOTIATION
Leja K RulapaughUnited KingdomBernardo Dominic NEGOTIATION
Rodrigues F PoquetteItalyAsiya Javayant UNQUALIFIED
Johnson S FlosiArgentinaStephen Shaw NEGOTIATION
Alejandro U DilliardAustraliaBernardo Dominic NEGOTIATION
Maisha S WieserSpainStephen Shaw QUALIFIED
Costa B WhobreyIndiaElwin Sharvill UNQUALIFIED
Jennifer B RutaCanadaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Johnson X KolmetzUnited KingdomIvan Magalhaes RENEWAL
Deepesh I BriddickSpainAnna Fali UNQUALIFIED
Chavez G BologniaBrazilAsiya Javayant UNQUALIFIED
Ashley J MorascaItalyAsiya Javayant PROPOSAL
Silvio F IturbideIndiaAnna Fali PROPOSAL
Rodrigues B CaldareraFranceStephen Shaw UNQUALIFIED
Jennifer F GauchoJapanOnyama Limba UNQUALIFIED
Greenwood Q AlbaresGermanyIoni Bowcher QUALIFIED
Maria I ButtUnited KingdomIoni Bowcher NEGOTIATION
Wickens S BowleyCanadaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson H FollerAustralia2026-04-17Truhlar And Truhlar Attys PROPOSAL14Stephen Shaw
1001Kaitlin C WaycottGermany2026-03-28Feltz Printing Service RENEWAL9Elwin Sharvill
1002Maria O PoquetteSpain2026-04-05Benton, John B Jr QUALIFIED47Onyama Limba
1003Ricardo U MarrierCanada2026-04-12Truhlar And Truhlar Attys PROPOSAL20Amy Elsner
1004Morrow G BriddickAustralia2026-04-15Benton, John B Jr RENEWAL93Onyama Limba
1005Octavia K ShinkoIndia2026-03-31Rangoni Of Florence NEW54Ivan Magalhaes
1006Chavez Q RutaGermany2026-04-10Chanay, Jeffrey A Esq RENEWAL28Xuxue Feng
1007Mujtaba E GlickFrance2026-03-27Chemel, James L Cpa PROPOSAL88Xuxue Feng
1008Sinclair K CaudyBrazil2026-04-22King, Christopher A Esq RENEWAL56Asiya Javayant
1009Aika R DoeItaly2026-04-09Dorl, James J Esq UNQUALIFIED90Stephen Shaw
1010Wickens R AmigonItaly2026-04-06Feltz Printing Service NEGOTIATION76Anna Fali
1011Arvin M CaudyJapan2026-04-15Chapman, Ross E Esq UNQUALIFIED71Anna Fali
1012Costa G MarrierBrazil2026-04-11Dorl, James J Esq QUALIFIED94Ioni Bowcher
1013Adams Y AlbaresCanada2026-04-22Commercial Press RENEWAL33Anna Fali
1014Smith S WhobreySpain2026-04-15Chanay, Jeffrey A Esq UNQUALIFIED50Bernardo Dominic
1015Darci T VenereBrazil2026-04-04Feiner Bros RENEWAL86Amy Elsner
1016Greenwood Z AmigonSpain2026-04-13Rousseaux, Michael Esq NEGOTIATION86Stephen Shaw
1017Leon S GauchoSpain2026-04-13Feiner Bros UNQUALIFIED37Elwin Sharvill
1018Kadeem B GauchoJapan2026-04-20Morlong Associates NEW22Bernardo Dominic
1019Greenwood P PerinSpain2026-04-03Commercial Press NEW81Onyama Limba
1020Misaki C InouyeRussia2026-04-20Benton, John B Jr PROPOSAL41Ivan Magalhaes
1021Aika L MaletGermany2026-04-03Feltz Printing Service QUALIFIED68Elwin Sharvill
1022James M CampainAustralia2026-04-19Rousseaux, Michael Esq UNQUALIFIED4Stephen Shaw
1023Aruna E TollnerJapan2026-04-03King, Christopher A Esq NEW87Onyama Limba
1024Costa D IturbideArgentina2026-03-26Feiner Bros QUALIFIED49Ioni Bowcher
1025Jefferson S VocelkaFrance2026-04-21Morlong Associates UNQUALIFIED91Onyama Limba
1026Aika J IturbideIndia2026-04-17Dorl, James J Esq RENEWAL79Ioni Bowcher
1027Smith L FlosiJapan2026-04-18Printing Dimensions PROPOSAL88Ioni Bowcher
1028Rodrigues X AmigonItaly2026-04-05Printing Dimensions PROPOSAL63Ivan Magalhaes
1029Mujtaba A BologniaCanada2026-03-29Chemel, James L Cpa RENEWAL98Xuxue Feng
1030Francesco X FlosiJapan2026-04-09Benton, John B Jr NEGOTIATION55Anna Fali
1031Julie S StockhamRussia2026-04-06Printing Dimensions UNQUALIFIED83Ivan Magalhaes
1032Silvio V StensethSpain2026-04-07Feiner Bros NEW14Asiya Javayant
1033Johnson C FigeroaIndia2026-04-05Dorl, James J Esq RENEWAL68Stephen Shaw
1034Emily Y OstroskyFrance2026-04-07Morlong Associates RENEWAL17Xuxue Feng
1035Faith I MarrierGermany2026-04-10Rangoni Of Florence PROPOSAL3Amy Elsner
1036Kadeem T PoquetteUnited Kingdom2026-04-12Rousseaux, Michael Esq PROPOSAL74Asiya Javayant
1037Isabel O DoeUnited Kingdom2026-03-30Rousseaux, Michael Esq NEGOTIATION91Elwin Sharvill
1038Arvin C ButtIndia2026-04-07Feltz Printing Service UNQUALIFIED3Ivan Magalhaes
1039Stacey L OstroskyItaly2026-04-10Truhlar And Truhlar Attys RENEWAL36Ioni Bowcher
1040Kaitlin O ButtJapan2026-03-24Feiner Bros RENEWAL87Onyama Limba
1041Mayumi M MacleadArgentina2026-04-21Feltz Printing Service UNQUALIFIED24Onyama Limba
1042Rodrigues J FerenczAustralia2026-04-05Feltz Printing Service NEW96Ivan Magalhaes
1043Tony O PerinItaly2026-04-08Truhlar And Truhlar Attys PROPOSAL38Ivan Magalhaes
1044Stacey D ButtCanada2026-04-04Feltz Printing Service PROPOSAL98Asiya Javayant
1045Misaki D SaylorsArgentina2026-04-21Morlong Associates UNQUALIFIED97Xuxue Feng
1046Isabel T MarrierSpain2026-04-18Chanay, Jeffrey A Esq NEW27Amy Elsner
1047Murillo L StockhamIndia2026-04-05Truhlar And Truhlar Attys NEW4Amy Elsner
1048Kaitlin Z VenereCanada2026-04-01Benton, John B Jr NEW28Amy Elsner
1049Jones N InouyeSpain2026-03-27Chemel, James L Cpa PROPOSAL75Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Aika V VenereJapanAsiya Javayant RENEWAL
Greenwood Q NickaCanadaIvan Magalhaes UNQUALIFIED
Leon B NestleJapanIoni Bowcher PROPOSAL
Octavia A FollerGermanyXuxue Feng UNQUALIFIED
Jennifer Q TollnerRussiaIvan Magalhaes QUALIFIED
Ivar C StockhamCanadaIvan Magalhaes QUALIFIED
Juan Q OldroydUnited KingdomXuxue Feng QUALIFIED
Aditya Z NestleIndiaAnna Fali QUALIFIED
Tony T FigeroaJapanIvan Magalhaes NEW
Antonio D BowleyBrazilOnyama Limba RENEWAL
Smith V AmigonAustraliaOnyama Limba NEGOTIATION
Juan K PerinUnited KingdomIoni Bowcher RENEWAL
Wickens O WieserFranceAsiya Javayant QUALIFIED
Aruna M AlbaresArgentinaStephen Shaw NEW
Adams R NestleUnited KingdomIvan Magalhaes RENEWAL
Murillo J AlbaresJapanXuxue Feng RENEWAL
Faith X RoysterBrazilElwin Sharvill UNQUALIFIED
Clifford S DilliardCanadaIvan Magalhaes UNQUALIFIED
Julie C GlickBrazilXuxue Feng PROPOSAL
Misaki R OstroskyFranceOnyama Limba PROPOSAL
Aditya C TollnerJapanXuxue Feng QUALIFIED
Jones U RulapaughGermanyOnyama Limba NEW
Silvio T FollerGermanyStephen Shaw NEW
Darci I BowleyBrazilAsiya Javayant QUALIFIED
Munro V GauchoCanadaBernardo Dominic UNQUALIFIED
Murillo Q VocelkaArgentinaAsiya Javayant NEGOTIATION
Faith A GarufiArgentinaOnyama Limba RENEWAL
Alejandro Q ButtRussiaAmy Elsner PROPOSAL
Antonio B BowleyArgentinaOnyama Limba UNQUALIFIED
Kadeem A InouyeUnited KingdomXuxue Feng UNQUALIFIED
Leja B DoeIndiaOnyama Limba RENEWAL
Jennifer V CaudyCanadaAnna Fali UNQUALIFIED
Maria T StensethRussiaIvan Magalhaes PROPOSAL
Morrow S StensethJapanAnna Fali UNQUALIFIED
Faith D FollerUnited KingdomAsiya Javayant NEGOTIATION
Julie S ShinkoRussiaIvan Magalhaes NEGOTIATION
Maria U FlosiBrazilXuxue Feng PROPOSAL
Mayumi H IturbideIndiaIoni Bowcher QUALIFIED
Stacey K KuskoArgentinaIoni Bowcher RENEWAL
Maisha M KuskoCanadaBernardo Dominic UNQUALIFIED
Adams B OstroskyUnited KingdomIvan Magalhaes NEGOTIATION
James N GlickArgentinaXuxue Feng NEW
Leon L RoysterBrazilXuxue Feng QUALIFIED
Kaitlin T NestleArgentinaIvan Magalhaes UNQUALIFIED
Cody S DilliardBrazilBernardo Dominic NEW
Salvatore G FerenczBrazilBernardo Dominic NEGOTIATION
Leon C MacleadAustraliaBernardo Dominic PROPOSAL
Jennifer J MaletBrazilBernardo Dominic RENEWAL
Johnson Q RulapaughSpainXuxue Feng NEW
Johnson A GarufiAustraliaIoni Bowcher PROPOSAL
Frozen Columns
Name
Kadeem B Royster
Greenwood W Darakjy
Ashley O Nicka
Antonio V Flosi
Octavia K Doe
Silvio O Foller
Rodrigues D Gillian
Leja Y Shinko
Izzy K Tollner
Murillo W Ruta
Greenwood E Whobrey
Kadeem V Foller
Adams X Bowley
Salvatore D Malet
Sinclair M Paprocki
Salvatore A Rulapaugh
Leon K Caldarera
Johnson X Bolognia
Rodrigues F Poquette
Johnson X Stockham
Clifford B Stenseth
Alejandro Z Ruta
Tony O Garufi
Jefferson B Glick
Isabel G Darakjy
Salvatore D Kolmetz
Aika L Garufi
Ashley J Garufi
Murillo O Flosi
Adams V Chui
Juan D Glick
Jennifer A Sergi
Aika Q Gillian
Clifford P Bolognia
Maria K Stenseth
Costa P Vocelka
Leon J Iturbide
Faith B Briddick
Tony A Ostrosky
Silvio O Saylors
Mayumi L Briddick
Kaitlin L Kolmetz
Morrow A Malet
Aditya I Royster
Jennifer R Kolmetz
Ivar W Butt
Isabel S Darakjy
Leon Z Iturbide
Kadeem E Campain
Kadeem L Nestle
IdCountryDate
1000United Kingdom2026-04-10
1001France2026-04-04
1002India2026-04-05
1003Spain2026-04-10
1004Russia2026-04-02
1005France2026-04-10
1006United Kingdom2026-04-06
1007Spain2026-04-06
1008Australia2026-03-28
1009Brazil2026-03-31
1010France2026-04-13
1011Spain2026-04-02
1012Argentina2026-04-11
1013Canada2026-03-26
1014Canada2026-04-22
1015Italy2026-04-03
1016United Kingdom2026-03-29
1017Brazil2026-04-11
1018Germany2026-04-03
1019Brazil2026-03-26
1020Argentina2026-03-29
1021Italy2026-04-08
1022Italy2026-04-16
1023United Kingdom2026-03-26
1024Canada2026-04-01
1025Germany2026-03-27
1026Russia2026-04-03
1027India2026-04-19
1028Germany2026-03-24
1029Italy2026-04-11
1030France2026-04-02
1031Argentina2026-04-21
1032Argentina2026-04-20
1033Argentina2026-03-31
1034Australia2026-04-13
1035Germany2026-04-03
1036Brazil2026-04-15
1037United Kingdom2026-04-12
1038France2026-03-25
1039Argentina2026-04-01
1040India2026-04-21
1041India2026-03-30
1042Spain2026-03-26
1043Germany2026-03-30
1044France2026-04-18
1045Argentina2026-04-01
1046Argentina2026-03-26
1047Brazil2026-04-05
1048Germany2026-03-26
1049Spain2026-04-10

On-Demand Data

NameIdCountryDate
Mayumi L Darakjy1000United Kingdom2026-04-13
Kaitlin D Caudy1001Argentina2026-04-17
Murillo C Glick1002India2026-03-31
Deepesh Q Bolognia1003France2026-03-26
Leja M Wieser1004India2026-04-09
Ricardo W Chui1005Brazil2026-03-28
Darci H Maclead1006Italy2026-04-11
Leja T Schemmer1007Australia2026-03-31
Aruna T Ruta1008Japan2026-04-03
Arvin M Oldroyd1009Germany2026-04-01
Francesco S Albares1010India2026-04-12
Maria P Ostrosky1011Italy2026-04-05
Ivar Z Stenseth1012Brazil2026-03-30
Alejandro I Tollner1013Brazil2026-03-24
Arvin U Bowley1014Brazil2026-04-11
Misaki T Schemmer1015Japan2026-04-04
Wickens A Campain1016United Kingdom2026-04-22
Morrow A Amigon1017Argentina2026-04-04
Adams K Marrier1018Argentina2026-04-10
Clifford V Paprocki1019Japan2026-04-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith S BriddickCanadaAnna Fali UNQUALIFIED
Isabel G CaldareraJapanElwin Sharvill RENEWAL
Maria O CaldareraIndiaStephen Shaw UNQUALIFIED
Jennifer L SergiJapanOnyama Limba PROPOSAL
Maria F MacleadUnited KingdomAsiya Javayant RENEWAL
Misaki F AmigonUnited KingdomStephen Shaw PROPOSAL
Julie D WaycottFranceBernardo Dominic RENEWAL
Tony N NickaCanadaStephen Shaw PROPOSAL
Greenwood M PoquetteGermanyAnna Fali NEGOTIATION
Greenwood J CaudyUnited KingdomStephen Shaw PROPOSAL
Emily M BologniaGermanyXuxue Feng QUALIFIED
Johnson X RimIndiaAmy Elsner RENEWAL
Ricardo R BologniaCanadaXuxue Feng RENEWAL
Sinclair Y SaylorsIndiaElwin Sharvill PROPOSAL
Antonio Q MaletGermanyAnna Fali NEGOTIATION
Maisha Q RulapaughFranceIvan Magalhaes UNQUALIFIED
Claire P AlbaresSpainAsiya Javayant QUALIFIED
Jefferson Y MorascaAustraliaAmy Elsner RENEWAL
Kaitlin O PoquetteCanadaOnyama Limba RENEWAL
Leon C MarrierGermanyOnyama Limba NEW
Rodrigues L GillianIndiaAnna Fali QUALIFIED
Smith W SlusarskiCanadaStephen Shaw UNQUALIFIED
Tony H NestleItalyAnna Fali RENEWAL
Faith G BowleyRussiaStephen Shaw NEGOTIATION
Jefferson M MarrierBrazilAmy Elsner QUALIFIED
Aditya D AlbaresJapanXuxue Feng UNQUALIFIED
Francesco T AmigonJapanAnna Fali NEW
Faith P GillianCanadaIvan Magalhaes NEW
Maria X TollnerJapanBernardo Dominic QUALIFIED
Clifford R MarrierItalyAnna Fali RENEWAL
Cody Y SergiSpainIvan Magalhaes NEW
Maisha M BologniaAustraliaElwin Sharvill NEGOTIATION
Wickens J SergiRussiaElwin Sharvill RENEWAL
Darci N RoysterAustraliaIvan Magalhaes NEW
Juan U BriddickBrazilBernardo Dominic NEGOTIATION
Costa R KolmetzUnited KingdomStephen Shaw PROPOSAL
Maisha O KuskoJapanBernardo Dominic NEGOTIATION
Leja Q MacleadRussiaOnyama Limba RENEWAL
Deepesh E FigeroaGermanyIoni Bowcher UNQUALIFIED
David H GarufiRussiaAsiya Javayant 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">
            <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>

You are using an LTS version of PrimeFaces with an invalid license, you may either switch back to a non-LTS version or purchase a license at PrimeStore.