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
Darci S SergiJapanOnyama Limba NEW
Kaitlin I DarakjyJapanAmy Elsner UNQUALIFIED
Leon C TollnerRussiaAmy Elsner PROPOSAL
Rodrigues B IturbideRussiaElwin Sharvill NEW
Antonio F WieserGermanyAmy Elsner UNQUALIFIED
Rodrigues W KolmetzSpainAsiya Javayant RENEWAL
Tony I CampainItalyAsiya Javayant PROPOSAL
James K DilliardIndiaOnyama Limba RENEWAL
Silvio X SergiIndiaAmy Elsner PROPOSAL
Chavez K FollerItalyBernardo Dominic RENEWAL
Mujtaba K KuskoAustraliaAsiya Javayant QUALIFIED
Deepesh R ShinkoBrazilXuxue Feng UNQUALIFIED
Ivar M MaletRussiaElwin Sharvill NEGOTIATION
Mujtaba P FerenczUnited KingdomIvan Magalhaes NEW
Stacey N WaycottUnited KingdomAmy Elsner RENEWAL
Salvatore D PerinFranceAsiya Javayant UNQUALIFIED
Aruna Z RulapaughArgentinaOnyama Limba QUALIFIED
Octavia A SergiBrazilAsiya Javayant QUALIFIED
Arvin Z MaletIndiaStephen Shaw NEW
Clifford I MaletArgentinaIoni Bowcher UNQUALIFIED
Leja D RutaCanadaIvan Magalhaes UNQUALIFIED
Julie O RutaArgentinaIvan Magalhaes PROPOSAL
Munro B DarakjyIndiaAmy Elsner RENEWAL
Greenwood I FigeroaFranceXuxue Feng UNQUALIFIED
Izzy C CaudyJapanBernardo Dominic RENEWAL
Francesco B PoquetteUnited KingdomIvan Magalhaes PROPOSAL
Adams S VenereAustraliaIoni Bowcher NEGOTIATION
Darci X SlusarskiBrazilAsiya Javayant RENEWAL
Francesco Y PaprockiArgentinaAmy Elsner QUALIFIED
Darci D DarakjyGermanyAnna Fali NEGOTIATION
Cody J RimSpainOnyama Limba RENEWAL
Wickens Y AmigonJapanStephen Shaw QUALIFIED
Isabel X SaylorsJapanAmy Elsner RENEWAL
Emily W RulapaughIndiaIvan Magalhaes RENEWAL
Aika H InouyeAustraliaAmy Elsner UNQUALIFIED
Ashley N RoysterJapanIoni Bowcher NEGOTIATION
Morrow G SergiUnited KingdomBernardo Dominic RENEWAL
David L IturbideAustraliaAnna Fali QUALIFIED
Jefferson G CaudyUnited KingdomIoni Bowcher RENEWAL
Cody N PerinCanadaElwin Sharvill QUALIFIED
Deepesh M DarakjyJapanAsiya Javayant QUALIFIED
Octavia R DilliardArgentinaAsiya Javayant NEW
Izzy P OldroydAustraliaOnyama Limba PROPOSAL
Emily K SergiRussiaAmy Elsner NEGOTIATION
Aditya C KuskoUnited KingdomAsiya Javayant NEW
Faith X DilliardCanadaBernardo Dominic RENEWAL
Antonio C RoysterIndiaAsiya Javayant PROPOSAL
Stacey N MorascaCanadaStephen Shaw PROPOSAL
Arvin T KuskoIndiaBernardo Dominic NEGOTIATION
Stacey C GarufiFranceStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Costa O StensethItalyBernardo Dominic NEGOTIATION
Mujtaba W DilliardArgentinaAnna Fali NEGOTIATION
Jennifer V MaletRussiaOnyama Limba UNQUALIFIED
Stacey D StockhamCanadaIoni Bowcher UNQUALIFIED
Octavia C InouyeIndiaAnna Fali NEGOTIATION
Kadeem J CaudyFranceStephen Shaw NEW
Julie G SlusarskiFranceStephen Shaw UNQUALIFIED
Jefferson I AmigonAustraliaStephen Shaw PROPOSAL
Jefferson K RutaSpainXuxue Feng QUALIFIED
Misaki L IturbideIndiaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith P AlbaresItaly2026-03-24Dorl, James J Esq NEGOTIATION2Stephen Shaw
1001James O RulapaughFrance2026-03-22Printing Dimensions NEW50Elwin Sharvill
1002Leja N VenereBrazil2026-03-23Feiner Bros NEW7Asiya Javayant
1003Ashley F AmigonIndia2026-03-24Rangoni Of Florence RENEWAL52Elwin Sharvill
1004Francesco W MaletItaly2026-03-31Benton, John B Jr NEGOTIATION66Ioni Bowcher
1005Maisha Z IturbideAustralia2026-03-09Morlong Associates NEW16Ivan Magalhaes
1006Aika A MaletArgentina2026-03-24Rangoni Of Florence NEW1Xuxue Feng
1007Julie C DarakjyRussia2026-03-29Rousseaux, Michael Esq QUALIFIED74Anna Fali
1008Francesco Q DoeUnited Kingdom2026-04-02Chemel, James L Cpa QUALIFIED97Ivan Magalhaes
1009Juan M KolmetzItaly2026-03-29Rousseaux, Michael Esq NEGOTIATION97Stephen Shaw
1010Kadeem U CaldareraFrance2026-03-26King, Christopher A Esq UNQUALIFIED6Amy Elsner
1011James M AmigonSpain2026-03-28Buckley Miller Wright QUALIFIED8Stephen Shaw
1012Maisha R GarufiRussia2026-04-02Chemel, James L Cpa NEGOTIATION97Stephen Shaw
1013Leja U GillianCanada2026-04-01Truhlar And Truhlar Attys QUALIFIED95Ioni Bowcher
1014Kadeem R AmigonBrazil2026-04-02Benton, John B Jr RENEWAL38Onyama Limba
1015Arvin E ButtItaly2026-03-10Morlong Associates RENEWAL50Bernardo Dominic
1016Chavez B NickaRussia2026-03-16Chapman, Ross E Esq UNQUALIFIED26Bernardo Dominic
1017Darci T RulapaughGermany2026-03-21Rousseaux, Michael Esq NEGOTIATION39Ivan Magalhaes
1018Izzy T GillianItaly2026-03-10Rousseaux, Michael Esq RENEWAL83Stephen Shaw
1019Wickens M PaprockiArgentina2026-03-27Morlong Associates RENEWAL82Amy Elsner
1020Faith Z CaudyAustralia2026-03-27Rangoni Of Florence QUALIFIED54Anna Fali
1021Jeanfrancois J WhobreyFrance2026-03-10Commercial Press NEGOTIATION85Asiya Javayant
1022David E ChuiUnited Kingdom2026-03-14Feltz Printing Service QUALIFIED90Bernardo Dominic
1023Adams Q OldroydItaly2026-03-27Chapman, Ross E Esq RENEWAL39Asiya Javayant
1024Jones P IturbideFrance2026-03-07Printing Dimensions NEGOTIATION93Asiya Javayant
1025Chavez L BowleyCanada2026-03-28Commercial Press QUALIFIED36Bernardo Dominic
1026David L DilliardCanada2026-03-31Dorl, James J Esq RENEWAL97Anna Fali
1027Maria W CaldareraCanada2026-03-29Commercial Press PROPOSAL94Ivan Magalhaes
1028Ashley S InouyeFrance2026-03-20Benton, John B Jr NEW49Amy Elsner
1029Francesco D ChuiUnited Kingdom2026-03-07Chapman, Ross E Esq QUALIFIED45Asiya Javayant
1030Juan H MaletIndia2026-03-15Commercial Press NEW40Bernardo Dominic
1031Jeanfrancois X BowleyArgentina2026-03-12Feiner Bros NEW81Anna Fali
1032Julie J MaletSpain2026-04-01Dorl, James J Esq NEGOTIATION52Stephen Shaw
1033Rodrigues V PoquetteGermany2026-03-21Printing Dimensions NEW71Amy Elsner
1034Johnson L GauchoBrazil2026-03-19Truhlar And Truhlar Attys PROPOSAL73Ioni Bowcher
1035Salvatore M DilliardItaly2026-03-05Printing Dimensions UNQUALIFIED31Bernardo Dominic
1036Ricardo D GillianArgentina2026-03-15Chapman, Ross E Esq NEW92Ioni Bowcher
1037Leon P SlusarskiGermany2026-03-22Chapman, Ross E Esq QUALIFIED39Xuxue Feng
1038Ricardo F GlickArgentina2026-03-08Commercial Press NEGOTIATION20Onyama Limba
1039Alejandro I ShinkoGermany2026-04-01Buckley Miller Wright PROPOSAL43Xuxue Feng
1040Maria A RulapaughGermany2026-04-02Chemel, James L Cpa QUALIFIED11Amy Elsner
1041Antonio P SchemmerArgentina2026-03-14Feltz Printing Service UNQUALIFIED67Anna Fali
1042Izzy K FlosiUnited Kingdom2026-03-11Feltz Printing Service QUALIFIED42Bernardo Dominic
1043Greenwood M AmigonJapan2026-03-06King, Christopher A Esq NEGOTIATION7Xuxue Feng
1044Morrow T OldroydCanada2026-03-25Commercial Press NEGOTIATION41Amy Elsner
1045Silvio B InouyeJapan2026-03-21Truhlar And Truhlar Attys UNQUALIFIED53Onyama Limba
1046Aika T WaycottUnited Kingdom2026-03-17Dorl, James J Esq UNQUALIFIED81Ivan Magalhaes
1047Jeanfrancois K DarakjyUnited Kingdom2026-03-12Dorl, James J Esq UNQUALIFIED23Asiya Javayant
1048Mayumi N WaycottCanada2026-03-23Feiner Bros PROPOSAL72Asiya Javayant
1049Aika C ButtArgentina2026-03-10Dorl, James J Esq RENEWAL41Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Sinclair H RoysterFranceIoni Bowcher QUALIFIED
James D GauchoFranceIoni Bowcher UNQUALIFIED
Costa P SergiSpainAmy Elsner NEGOTIATION
Rodrigues H PoquetteAustraliaAnna Fali RENEWAL
Cody F OstroskyUnited KingdomIvan Magalhaes RENEWAL
Ashley U GillianArgentinaXuxue Feng UNQUALIFIED
Kadeem Q CaudyUnited KingdomBernardo Dominic QUALIFIED
Aika E AmigonItalyBernardo Dominic UNQUALIFIED
Leja C GauchoRussiaAsiya Javayant NEW
Izzy C PoquetteRussiaBernardo Dominic NEGOTIATION
Mujtaba U FollerFranceElwin Sharvill NEGOTIATION
Maisha E VenereArgentinaBernardo Dominic UNQUALIFIED
Rodrigues X PaprockiCanadaIoni Bowcher UNQUALIFIED
Antonio R GauchoUnited KingdomOnyama Limba NEGOTIATION
Maisha H RutaFranceAsiya Javayant NEGOTIATION
Kadeem B GarufiJapanStephen Shaw NEGOTIATION
Morrow A KolmetzSpainAsiya Javayant RENEWAL
Ivar Q GauchoSpainElwin Sharvill NEW
Arvin O RoysterSpainIvan Magalhaes PROPOSAL
Ivar A RutaBrazilXuxue Feng RENEWAL
Maisha A NickaBrazilXuxue Feng QUALIFIED
James X KolmetzGermanyStephen Shaw NEGOTIATION
Kaitlin E DoeJapanOnyama Limba NEW
Stacey T RimBrazilOnyama Limba QUALIFIED
Francesco Z MaletItalyOnyama Limba NEW
Maisha W AmigonRussiaOnyama Limba UNQUALIFIED
Aika Q RimGermanyAsiya Javayant UNQUALIFIED
Morrow Q NestleUnited KingdomIvan Magalhaes NEW
Jeanfrancois L WhobreyRussiaStephen Shaw PROPOSAL
Ashley Y GauchoCanadaAmy Elsner RENEWAL
James T RoysterCanadaBernardo Dominic QUALIFIED
Ashley D OstroskyItalyAmy Elsner NEGOTIATION
Darci D MarrierRussiaStephen Shaw QUALIFIED
Juan E SergiSpainXuxue Feng RENEWAL
Stacey N DoeArgentinaAnna Fali UNQUALIFIED
Leon S VenereBrazilElwin Sharvill UNQUALIFIED
Adams Z ChuiGermanyStephen Shaw NEW
Aruna Z PoquetteBrazilElwin Sharvill RENEWAL
Jennifer B GlickArgentinaXuxue Feng RENEWAL
James F StockhamCanadaAmy Elsner QUALIFIED
Alejandro C SaylorsArgentinaIoni Bowcher PROPOSAL
Darci W RimSpainOnyama Limba NEGOTIATION
Costa X SchemmerSpainAnna Fali QUALIFIED
Ashley O BowleyGermanyXuxue Feng PROPOSAL
Aditya T CaudyCanadaElwin Sharvill UNQUALIFIED
Tony A TollnerSpainIoni Bowcher PROPOSAL
Alejandro O WhobreyUnited KingdomIoni Bowcher QUALIFIED
Izzy X GlickCanadaIvan Magalhaes PROPOSAL
Alejandro X CaudyCanadaIvan Magalhaes RENEWAL
Greenwood M PerinRussiaAsiya Javayant RENEWAL
Frozen Columns
Name
Cody T Perin
Arvin B Foller
Julie I Maclead
Leon T Flosi
Antonio L Malet
Jefferson S Iturbide
Izzy I Doe
Emily E Paprocki
Clifford U Poquette
Jennifer C Campain
Juan V Briddick
Greenwood V Oldroyd
Adams P Poquette
Julie G Ostrosky
Jones L Vocelka
Isabel M Caldarera
Wickens Q Bolognia
Ricardo H Rim
Tony U Flosi
Faith N Malet
Jones W Whobrey
Deepesh M Saylors
Octavia P Schemmer
Chavez F Venere
Maisha Y Caldarera
Julie U Inouye
Deepesh Y Malet
Rodrigues S Malet
Chavez C Royster
Chavez G Stenseth
Clifford G Wieser
Kaitlin R Amigon
Sinclair B Whobrey
Leon V Maclead
Antonio E Venere
David R Paprocki
Ivar U Saylors
Salvatore L Nestle
Chavez P Kusko
Faith F Darakjy
Salvatore Y Malet
Arvin C Royster
Maisha C Venere
Leon W Perin
Sinclair Q Slusarski
Murillo E Morasca
Jeanfrancois I Maclead
Mujtaba N Iturbide
Alejandro L Oldroyd
Munro J Venere
IdCountryDate
1000Germany2026-04-02
1001Brazil2026-03-21
1002Australia2026-03-14
1003France2026-03-30
1004Spain2026-03-07
1005Canada2026-03-20
1006Japan2026-03-26
1007United Kingdom2026-03-07
1008Australia2026-03-12
1009Australia2026-03-16
1010France2026-03-30
1011France2026-03-23
1012Australia2026-04-01
1013Italy2026-04-01
1014Italy2026-03-22
1015Canada2026-03-22
1016India2026-03-07
1017Russia2026-03-30
1018Spain2026-03-05
1019Brazil2026-03-09
1020Russia2026-03-09
1021Japan2026-03-21
1022Russia2026-03-12
1023France2026-03-12
1024Argentina2026-03-29
1025Germany2026-03-10
1026India2026-03-28
1027Canada2026-03-24
1028Canada2026-04-01
1029Russia2026-03-19
1030Russia2026-03-27
1031Japan2026-04-01
1032Canada2026-03-20
1033United Kingdom2026-03-14
1034Italy2026-03-31
1035Argentina2026-03-21
1036Brazil2026-03-18
1037United Kingdom2026-03-07
1038Brazil2026-03-21
1039Canada2026-03-22
1040Germany2026-03-10
1041Australia2026-03-08
1042Japan2026-03-07
1043United Kingdom2026-03-24
1044France2026-03-17
1045Canada2026-03-25
1046Germany2026-03-15
1047Brazil2026-03-30
1048Canada2026-03-20
1049Japan2026-03-10

On-Demand Data

NameIdCountryDate
Kadeem K Royster1000Brazil2026-03-23
Darci G Rulapaugh1001Canada2026-03-14
Leon N Ferencz1002Russia2026-03-07
Mayumi A Bowley1003Japan2026-03-13
Clifford A Briddick1004Argentina2026-03-10
Juan T Stenseth1005Spain2026-04-02
Antonio J Doe1006Germany2026-03-19
Ivar U Glick1007Canada2026-03-24
Arvin K Poquette1008Italy2026-03-22
David S Figeroa1009Japan2026-03-30
Jennifer Z Campain1010Canada2026-03-19
Mayumi J Campain1011India2026-03-24
Ricardo M Marrier1012Spain2026-03-20
Faith E Darakjy1013Japan2026-03-15
Juan A Ostrosky1014Russia2026-03-16
Nicolas R Gillian1015United Kingdom2026-03-07
Wickens H Iturbide1016Argentina2026-03-27
Clifford M Stockham1017Russia2026-03-31
Tony C Figeroa1018Italy2026-03-17
Stacey R Perin1019India2026-03-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody O CaldareraFranceElwin Sharvill PROPOSAL
Kaitlin X VenereFranceAsiya Javayant NEW
Darci Q PoquetteFranceAmy Elsner PROPOSAL
Tony K SaylorsIndiaAsiya Javayant NEGOTIATION
Chavez Q FlosiGermanyElwin Sharvill NEW
Jones O StockhamIndiaXuxue Feng UNQUALIFIED
Chavez D VocelkaIndiaOnyama Limba RENEWAL
Rodrigues H NestleJapanAsiya Javayant RENEWAL
Emily J SchemmerSpainOnyama Limba UNQUALIFIED
Claire K SlusarskiJapanIoni Bowcher PROPOSAL
Emily V DoeFranceStephen Shaw NEW
Isabel R SchemmerArgentinaXuxue Feng UNQUALIFIED
Misaki U DoeItalyStephen Shaw QUALIFIED
Alejandro V MaletIndiaAmy Elsner PROPOSAL
Mujtaba G StensethFranceOnyama Limba QUALIFIED
Misaki P StensethAustraliaStephen Shaw PROPOSAL
Ricardo C WhobreyArgentinaElwin Sharvill NEGOTIATION
Munro I IturbideBrazilOnyama Limba NEW
Faith Z StockhamRussiaOnyama Limba UNQUALIFIED
Leja F CaldareraUnited KingdomIvan Magalhaes NEGOTIATION
Faith N OldroydJapanIvan Magalhaes UNQUALIFIED
Deepesh T MarrierArgentinaAsiya Javayant RENEWAL
Costa R StensethCanadaStephen Shaw QUALIFIED
Faith S WhobreyCanadaIvan Magalhaes RENEWAL
Ashley L VocelkaBrazilAmy Elsner NEW
Leon E CampainUnited KingdomIvan Magalhaes NEGOTIATION
Juan G BowleyBrazilStephen Shaw UNQUALIFIED
Antonio J StensethItalyIoni Bowcher QUALIFIED
Jefferson A PoquetteFranceAsiya Javayant PROPOSAL
Clifford A WieserJapanStephen Shaw PROPOSAL
Misaki X CaudyBrazilXuxue Feng NEW
Francesco H TollnerBrazilOnyama Limba UNQUALIFIED
Kadeem Y RimSpainAmy Elsner PROPOSAL
Jeanfrancois Y MarrierSpainStephen Shaw QUALIFIED
Mujtaba M MaletIndiaBernardo Dominic NEGOTIATION
James J FigeroaCanadaStephen Shaw RENEWAL
Mujtaba H GarufiCanadaElwin Sharvill QUALIFIED
David X OstroskyBrazilBernardo Dominic RENEWAL
Greenwood H NestleUnited KingdomAsiya Javayant NEW
Claire T TollnerItalyIvan Magalhaes NEW

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