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
Kadeem L AmigonUnited KingdomAmy Elsner UNQUALIFIED
Julie R MarrierGermanyElwin Sharvill UNQUALIFIED
Kadeem N BowleyFranceStephen Shaw NEGOTIATION
Julie A DarakjyAustraliaStephen Shaw UNQUALIFIED
Sinclair U FerenczJapanBernardo Dominic UNQUALIFIED
Jeanfrancois B CaudySpainAnna Fali NEW
Arvin K SergiArgentinaStephen Shaw NEGOTIATION
Chavez Z GarufiUnited KingdomIoni Bowcher RENEWAL
Mujtaba N RimAustraliaStephen Shaw PROPOSAL
Tony B AlbaresGermanyBernardo Dominic UNQUALIFIED
Tony U OldroydSpainXuxue Feng NEGOTIATION
Jefferson G WieserBrazilOnyama Limba NEW
Salvatore J BriddickItalyAmy Elsner NEW
David O MorascaCanadaStephen Shaw UNQUALIFIED
Ivar B PoquetteJapanAmy Elsner QUALIFIED
Kadeem H RoysterFranceXuxue Feng RENEWAL
Munro M WhobreyBrazilOnyama Limba UNQUALIFIED
Darci C BriddickSpainAsiya Javayant QUALIFIED
Maisha Z GarufiAustraliaElwin Sharvill NEGOTIATION
James P SlusarskiItalyStephen Shaw NEGOTIATION
Johnson U StensethRussiaBernardo Dominic QUALIFIED
Alejandro U MacleadBrazilIoni Bowcher PROPOSAL
Aditya U AmigonArgentinaElwin Sharvill QUALIFIED
Claire D CaldareraSpainElwin Sharvill QUALIFIED
Jefferson N ShinkoUnited KingdomIvan Magalhaes PROPOSAL
Wickens I IturbideIndiaAnna Fali UNQUALIFIED
Arvin V StensethCanadaAsiya Javayant NEW
Jeanfrancois Z PaprockiJapanIvan Magalhaes NEW
Ivar X GauchoGermanyIvan Magalhaes RENEWAL
Tony W MaletAustraliaOnyama Limba QUALIFIED
Ricardo T WaycottBrazilXuxue Feng UNQUALIFIED
Salvatore B OstroskyUnited KingdomBernardo Dominic UNQUALIFIED
Cody T NestleArgentinaOnyama Limba NEW
Isabel D SlusarskiAustraliaAnna Fali NEGOTIATION
Adams Q IturbideIndiaAmy Elsner NEGOTIATION
Antonio M FollerArgentinaIoni Bowcher RENEWAL
Darci K OldroydIndiaOnyama Limba NEGOTIATION
Tony I NestleIndiaStephen Shaw RENEWAL
Nicolas A BriddickIndiaIvan Magalhaes NEW
Munro D BologniaBrazilBernardo Dominic PROPOSAL
Ricardo R ChuiBrazilAnna Fali UNQUALIFIED
Mayumi C PaprockiRussiaStephen Shaw UNQUALIFIED
Jefferson V BowleyBrazilBernardo Dominic PROPOSAL
Costa T GarufiGermanyStephen Shaw NEGOTIATION
Clifford V WaycottAustraliaIvan Magalhaes RENEWAL
Smith E BowleyRussiaBernardo Dominic UNQUALIFIED
Munro T RimRussiaBernardo Dominic NEW
Ricardo R RutaRussiaElwin Sharvill UNQUALIFIED
Cody S OstroskyArgentinaIvan Magalhaes NEGOTIATION
Nicolas H MarrierJapanAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aruna U MaletFranceOnyama Limba PROPOSAL
Aika N FerenczItalyOnyama Limba NEGOTIATION
Leja G MaletGermanyAsiya Javayant UNQUALIFIED
Mujtaba M VocelkaAustraliaStephen Shaw PROPOSAL
Aika E FlosiGermanyBernardo Dominic RENEWAL
Octavia S TollnerJapanXuxue Feng PROPOSAL
Maisha L AlbaresBrazilIoni Bowcher NEW
Maisha P VenereAustraliaAnna Fali UNQUALIFIED
Clifford N MacleadFranceAnna Fali NEW
Stacey Y MaletJapanAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna Y StensethFrance2026-03-15Feiner Bros NEW39Onyama Limba
1001Tony J BowleyIndia2026-03-05Feltz Printing Service PROPOSAL1Asiya Javayant
1002Ivar I WaycottCanada2026-02-28Printing Dimensions PROPOSAL80Amy Elsner
1003Claire K IturbideItaly2026-03-23Chemel, James L Cpa PROPOSAL28Stephen Shaw
1004Faith N ShinkoArgentina2026-03-21Chemel, James L Cpa NEW7Ivan Magalhaes
1005Leja I FerenczCanada2026-03-17Chemel, James L Cpa NEW76Onyama Limba
1006Rodrigues S BriddickGermany2026-03-07King, Christopher A Esq UNQUALIFIED58Bernardo Dominic
1007Leja W BriddickJapan2026-03-01King, Christopher A Esq NEW2Ivan Magalhaes
1008Morrow M KolmetzBrazil2026-03-07Chapman, Ross E Esq UNQUALIFIED53Amy Elsner
1009Morrow B TollnerBrazil2026-03-08Chemel, James L Cpa UNQUALIFIED95Bernardo Dominic
1010Cody M RimRussia2026-03-07Feiner Bros UNQUALIFIED28Amy Elsner
1011Jefferson B ShinkoUnited Kingdom2026-03-20Truhlar And Truhlar Attys UNQUALIFIED65Ivan Magalhaes
1012Rodrigues H GlickIndia2026-03-01Chemel, James L Cpa NEGOTIATION94Ivan Magalhaes
1013Octavia D WhobreyArgentina2026-03-10Chemel, James L Cpa UNQUALIFIED16Anna Fali
1014Cody G PerinFrance2026-02-27Morlong Associates RENEWAL91Elwin Sharvill
1015Misaki V WaycottIndia2026-03-23Rousseaux, Michael Esq UNQUALIFIED31Asiya Javayant
1016David D WieserBrazil2026-03-20Chemel, James L Cpa NEW99Xuxue Feng
1017Jeanfrancois C VocelkaAustralia2026-03-11Benton, John B Jr NEGOTIATION84Onyama Limba
1018Mayumi J NickaJapan2026-03-24Benton, John B Jr UNQUALIFIED88Ivan Magalhaes
1019Wickens F CaudyIndia2026-03-04Chanay, Jeffrey A Esq NEGOTIATION81Amy Elsner
1020Aika L FigeroaRussia2026-03-27Commercial Press NEW97Asiya Javayant
1021Jeanfrancois A BologniaItaly2026-03-08Dorl, James J Esq PROPOSAL41Onyama Limba
1022Julie N SergiArgentina2026-03-21Rangoni Of Florence NEGOTIATION39Anna Fali
1023Alejandro H InouyeJapan2026-03-03Feltz Printing Service UNQUALIFIED80Asiya Javayant
1024Leon K FigeroaRussia2026-03-10Morlong Associates RENEWAL78Onyama Limba
1025Kaitlin P FerenczRussia2026-03-07Buckley Miller Wright NEGOTIATION63Bernardo Dominic
1026Greenwood F VenereGermany2026-03-17Commercial Press NEGOTIATION91Amy Elsner
1027Mayumi Q KolmetzUnited Kingdom2026-03-17Buckley Miller Wright NEGOTIATION64Xuxue Feng
1028Munro Z GlickJapan2026-03-11Chanay, Jeffrey A Esq UNQUALIFIED99Ivan Magalhaes
1029Alejandro Q VocelkaArgentina2026-03-08Chemel, James L Cpa RENEWAL56Ivan Magalhaes
1030Ivar M NestleRussia2026-02-28Feiner Bros NEW65Onyama Limba
1031Rodrigues G RimRussia2026-03-02Benton, John B Jr RENEWAL53Xuxue Feng
1032Murillo V TollnerRussia2026-03-25Feiner Bros NEW52Amy Elsner
1033Morrow J AlbaresGermany2026-03-26Chanay, Jeffrey A Esq RENEWAL68Xuxue Feng
1034Aika L WaycottJapan2026-03-02Buckley Miller Wright NEW59Elwin Sharvill
1035Aika N WieserSpain2026-03-09Benton, John B Jr PROPOSAL2Asiya Javayant
1036Leja L StockhamGermany2026-03-13Rangoni Of Florence NEW30Ioni Bowcher
1037Chavez I FollerJapan2026-02-28Benton, John B Jr NEW65Xuxue Feng
1038Aruna C GillianGermany2026-03-13Commercial Press PROPOSAL16Ivan Magalhaes
1039Francesco Q DarakjyGermany2026-03-22Chapman, Ross E Esq UNQUALIFIED6Elwin Sharvill
1040Leja N OstroskyRussia2026-03-20Feiner Bros NEW65Xuxue Feng
1041Ashley O OstroskyGermany2026-03-05Dorl, James J Esq NEGOTIATION6Stephen Shaw
1042Alejandro E FerenczGermany2026-03-17Feltz Printing Service QUALIFIED67Asiya Javayant
1043Aditya R PerinAustralia2026-03-10Rangoni Of Florence PROPOSAL32Elwin Sharvill
1044Sinclair B IturbideFrance2026-03-27Morlong Associates QUALIFIED13Xuxue Feng
1045Alejandro A RimCanada2026-02-28Chapman, Ross E Esq QUALIFIED80Asiya Javayant
1046Ivar G TollnerAustralia2026-03-13Rangoni Of Florence QUALIFIED2Asiya Javayant
1047Chavez X SaylorsAustralia2026-03-14Rousseaux, Michael Esq RENEWAL39Amy Elsner
1048Juan W SaylorsItaly2026-03-06Buckley Miller Wright QUALIFIED78Elwin Sharvill
1049Juan W GlickItaly2026-03-16King, Christopher A Esq PROPOSAL28Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Misaki E FigeroaUnited KingdomIoni Bowcher NEGOTIATION
Ivar U RulapaughSpainIoni Bowcher NEW
Murillo G RimUnited KingdomAsiya Javayant NEGOTIATION
Antonio O WaycottBrazilBernardo Dominic RENEWAL
Jones L WieserUnited KingdomStephen Shaw NEW
Nicolas H PaprockiIndiaIoni Bowcher NEW
Costa K PoquetteBrazilStephen Shaw QUALIFIED
Jeanfrancois T KuskoItalyStephen Shaw NEGOTIATION
Cody L MaletGermanyAnna Fali RENEWAL
Ivar F StockhamFranceAmy Elsner UNQUALIFIED
Ashley Y DilliardJapanAsiya Javayant RENEWAL
Octavia J MacleadItalyAsiya Javayant NEGOTIATION
Izzy O PoquetteGermanyIvan Magalhaes QUALIFIED
Antonio Z FollerGermanyAsiya Javayant PROPOSAL
Octavia C FlosiFranceElwin Sharvill NEGOTIATION
Rodrigues T RulapaughJapanXuxue Feng NEGOTIATION
Izzy E StensethSpainIoni Bowcher RENEWAL
Isabel N NickaUnited KingdomIvan Magalhaes NEGOTIATION
Costa Y GlickArgentinaAmy Elsner PROPOSAL
Jennifer A CaudyBrazilIvan Magalhaes PROPOSAL
David J RimBrazilIoni Bowcher NEGOTIATION
Darci G StockhamArgentinaIoni Bowcher PROPOSAL
Jones H NestleBrazilAnna Fali QUALIFIED
Sinclair O InouyeRussiaBernardo Dominic NEGOTIATION
Maria Z ChuiGermanyIvan Magalhaes RENEWAL
Cody X WieserItalyAmy Elsner QUALIFIED
Maria G GillianIndiaIoni Bowcher NEGOTIATION
Morrow S SergiRussiaStephen Shaw RENEWAL
Leja O RoysterIndiaOnyama Limba QUALIFIED
Cody N PoquetteArgentinaIvan Magalhaes PROPOSAL
David D CampainArgentinaElwin Sharvill UNQUALIFIED
Claire N GlickItalyElwin Sharvill NEGOTIATION
Kadeem M FlosiJapanAnna Fali NEGOTIATION
Clifford M OstroskyUnited KingdomIvan Magalhaes NEGOTIATION
Murillo B GillianBrazilAmy Elsner RENEWAL
Aditya M ButtAustraliaAnna Fali QUALIFIED
Wickens G InouyeGermanyIoni Bowcher NEGOTIATION
Kaitlin H GarufiBrazilIvan Magalhaes NEGOTIATION
Deepesh D AlbaresJapanAsiya Javayant PROPOSAL
Cody G IturbideIndiaElwin Sharvill PROPOSAL
Deepesh Y AmigonIndiaIoni Bowcher QUALIFIED
Nicolas X PoquetteJapanAsiya Javayant NEW
Chavez O PaprockiAustraliaStephen Shaw PROPOSAL
Leja B FlosiSpainIvan Magalhaes QUALIFIED
Mayumi M GillianSpainIoni Bowcher QUALIFIED
Antonio Y WhobreyRussiaStephen Shaw UNQUALIFIED
Claire R MaletIndiaAsiya Javayant PROPOSAL
Jefferson P SergiItalyIvan Magalhaes PROPOSAL
Salvatore R GlickJapanAnna Fali NEW
Misaki N FlosiArgentinaOnyama Limba NEW
Frozen Columns
Name
Antonio C Slusarski
David M Paprocki
Greenwood M Stenseth
Francesco J Tollner
Greenwood C Perin
Silvio I Ruta
Juan G Malet
Deepesh C Schemmer
Stacey K Bolognia
Jones W Sergi
Costa S Sergi
Leon Z Caudy
Mayumi C Morasca
Silvio G Glick
Murillo V Vocelka
Munro Z Albares
Julie N Stenseth
Salvatore Q Butt
Tony X Gillian
Rodrigues X Bowley
Chavez W Kusko
Murillo C Perin
Salvatore L Doe
Darci P Nestle
Jones O Flosi
Ricardo N Garufi
Ivar J Ostrosky
Deepesh W Schemmer
Leja J Nicka
Morrow Q Butt
Morrow K Malet
Arvin L Waycott
Deepesh P Dilliard
Misaki N Doe
Kadeem G Butt
Ivar D Slusarski
Izzy C Nestle
Juan H Darakjy
Misaki Y Royster
Aditya V Stockham
Emily O Dilliard
Smith T Saylors
Adams X Glick
Leja T Glick
Izzy R Doe
Jones D Chui
Misaki N Kusko
Emily N Stenseth
Antonio K Waycott
Arvin R Kolmetz
IdCountryDate
1000Argentina2026-03-15
1001Australia2026-03-15
1002Russia2026-03-04
1003Canada2026-03-11
1004Canada2026-03-11
1005Spain2026-02-27
1006Australia2026-03-02
1007Brazil2026-03-01
1008United Kingdom2026-03-27
1009Spain2026-03-07
1010Russia2026-03-18
1011Spain2026-03-10
1012India2026-03-03
1013Germany2026-03-19
1014Argentina2026-03-11
1015Argentina2026-03-23
1016Canada2026-03-16
1017Germany2026-03-08
1018Spain2026-03-20
1019United Kingdom2026-03-13
1020Italy2026-03-11
1021Russia2026-03-12
1022Canada2026-03-02
1023India2026-03-07
1024Canada2026-03-07
1025Brazil2026-03-15
1026France2026-03-08
1027Spain2026-02-27
1028Italy2026-03-08
1029Brazil2026-03-23
1030India2026-03-01
1031Italy2026-03-17
1032Brazil2026-03-08
1033Russia2026-03-16
1034Argentina2026-03-23
1035Spain2026-03-23
1036India2026-03-09
1037Russia2026-03-13
1038Japan2026-02-28
1039United Kingdom2026-03-10
1040United Kingdom2026-03-21
1041Brazil2026-03-22
1042United Kingdom2026-03-25
1043Italy2026-03-11
1044Italy2026-03-07
1045Brazil2026-03-06
1046Canada2026-03-22
1047Italy2026-03-06
1048Italy2026-03-15
1049United Kingdom2026-03-06

On-Demand Data

NameIdCountryDate
Kaitlin W Iturbide1000Japan2026-02-28
Aditya H Butt1001Germany2026-03-01
Misaki B Vocelka1002Germany2026-02-27
Greenwood D Butt1003Argentina2026-02-27
Sinclair M Caudy1004Spain2026-03-16
Salvatore Z Maclead1005Australia2026-03-16
Tony O Wieser1006Italy2026-03-02
Jones T Slusarski1007Germany2026-03-20
Kaitlin E Garufi1008Brazil2026-03-15
Aditya E Albares1009Germany2026-03-24
Mujtaba P Waycott1010United Kingdom2026-03-10
Ashley E Ferencz1011Germany2026-03-20
David E Maclead1012Russia2026-03-19
Morrow T Vocelka1013Argentina2026-02-27
Stacey J Figeroa1014Australia2026-03-14
Claire O Garufi1015France2026-03-25
Ricardo Z Ruta1016Argentina2026-03-28
Sinclair D Doe1017Spain2026-03-26
Silvio K Nestle1018Germany2026-03-06
Aruna R Wieser1019United Kingdom2026-03-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika H WhobreyUnited KingdomAmy Elsner QUALIFIED
Alejandro S MarrierFranceAmy Elsner QUALIFIED
Deepesh I CaudyUnited KingdomOnyama Limba UNQUALIFIED
Ricardo R KuskoArgentinaElwin Sharvill UNQUALIFIED
Johnson G RimSpainAnna Fali RENEWAL
Greenwood R SergiCanadaXuxue Feng RENEWAL
Mujtaba Z KolmetzSpainAnna Fali RENEWAL
Jennifer S CaudySpainOnyama Limba RENEWAL
David M CaudyCanadaOnyama Limba NEGOTIATION
Leon G WaycottFranceBernardo Dominic QUALIFIED
Jennifer F RoysterIndiaStephen Shaw NEW
Mayumi X BriddickUnited KingdomAsiya Javayant RENEWAL
Johnson M DilliardGermanyElwin Sharvill RENEWAL
Deepesh J StockhamCanadaAsiya Javayant PROPOSAL
James F GillianIndiaXuxue Feng NEGOTIATION
Kadeem S VenereCanadaAsiya Javayant NEGOTIATION
Cody F PerinIndiaStephen Shaw QUALIFIED
Nicolas O GlickItalyXuxue Feng UNQUALIFIED
Arvin O DilliardItalyAsiya Javayant UNQUALIFIED
Isabel I NestleGermanyOnyama Limba QUALIFIED
Deepesh U SergiBrazilAsiya Javayant RENEWAL
Maria N MorascaUnited KingdomBernardo Dominic NEW
Salvatore V RimRussiaBernardo Dominic QUALIFIED
Silvio U IturbideItalyBernardo Dominic NEGOTIATION
Ashley U MaletFranceStephen Shaw PROPOSAL
Antonio M TollnerCanadaAnna Fali QUALIFIED
Leja O SchemmerArgentinaAnna Fali RENEWAL
Costa O KuskoGermanyIoni Bowcher NEGOTIATION
Maisha T ButtSpainOnyama Limba PROPOSAL
Aditya B DilliardJapanBernardo Dominic RENEWAL
Maisha K MaletCanadaBernardo Dominic PROPOSAL
Adams C MaletItalyIoni Bowcher RENEWAL
Murillo I NestleFranceElwin Sharvill NEW
Darci D MaletRussiaAmy Elsner NEGOTIATION
Jennifer V KolmetzIndiaAsiya Javayant UNQUALIFIED
Claire P WaycottAustraliaAsiya Javayant NEGOTIATION
David V SlusarskiIndiaAmy Elsner NEW
Ivar W DilliardJapanIvan Magalhaes NEW
Jeanfrancois I DoeIndiaStephen Shaw RENEWAL
Isabel Y VenereSpainOnyama Limba 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">
            <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.