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
Aditya T SlusarskiArgentinaAsiya Javayant RENEWAL
Kadeem Y MaletFranceAsiya Javayant NEGOTIATION
Ashley J WieserAustraliaBernardo Dominic NEW
Deepesh L MorascaRussiaOnyama Limba UNQUALIFIED
Munro U DilliardAustraliaOnyama Limba NEW
David X BriddickGermanyAmy Elsner NEGOTIATION
Silvio N CampainSpainXuxue Feng NEGOTIATION
Greenwood A PaprockiRussiaBernardo Dominic UNQUALIFIED
Alejandro D PoquetteGermanyAsiya Javayant NEGOTIATION
Francesco D CampainSpainIvan Magalhaes QUALIFIED
Aditya U CampainGermanyAsiya Javayant QUALIFIED
Darci W OstroskyIndiaAnna Fali PROPOSAL
Jefferson V KolmetzGermanyAsiya Javayant PROPOSAL
Clifford I SaylorsRussiaBernardo Dominic NEW
Aruna W BriddickIndiaAsiya Javayant QUALIFIED
Emily W ChuiFranceStephen Shaw UNQUALIFIED
Nicolas X DilliardArgentinaIoni Bowcher UNQUALIFIED
Costa I PoquetteCanadaAmy Elsner NEW
Leja E MaletBrazilXuxue Feng NEGOTIATION
Faith P ShinkoRussiaAmy Elsner QUALIFIED
Adams N WieserBrazilOnyama Limba UNQUALIFIED
Tony B SergiUnited KingdomStephen Shaw NEW
Jeanfrancois T KuskoArgentinaAnna Fali UNQUALIFIED
Ricardo P MaletSpainElwin Sharvill PROPOSAL
Leja K CaldareraCanadaOnyama Limba NEW
Arvin M PoquetteJapanElwin Sharvill RENEWAL
Francesco I GillianJapanAnna Fali NEW
Aruna N PaprockiGermanyOnyama Limba PROPOSAL
Tony G KolmetzJapanXuxue Feng RENEWAL
Costa T DoeUnited KingdomIvan Magalhaes NEW
Adams E ChuiJapanAsiya Javayant RENEWAL
Isabel I FollerGermanyOnyama Limba NEW
Emily P CaudyFranceBernardo Dominic QUALIFIED
Alejandro F ButtRussiaOnyama Limba NEW
Leja V FlosiBrazilOnyama Limba NEW
Claire B WieserCanadaElwin Sharvill PROPOSAL
Clifford A FollerJapanStephen Shaw NEW
Kaitlin Y OldroydRussiaElwin Sharvill RENEWAL
Mayumi F RutaArgentinaAmy Elsner NEW
Aditya V ButtFranceElwin Sharvill NEGOTIATION
Deepesh T AmigonFranceAnna Fali UNQUALIFIED
Mujtaba W GauchoBrazilAsiya Javayant QUALIFIED
Morrow P KuskoItalyXuxue Feng PROPOSAL
Antonio Y NestleBrazilBernardo Dominic NEGOTIATION
Isabel S ShinkoIndiaStephen Shaw NEGOTIATION
Kadeem U SergiAustraliaAnna Fali RENEWAL
Aditya Q ChuiAustraliaAsiya Javayant NEW
Johnson M WaycottFranceBernardo Dominic NEGOTIATION
Ivar Y ChuiSpainIvan Magalhaes UNQUALIFIED
Jeanfrancois O SchemmerArgentinaBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Chavez O FollerUnited KingdomIvan Magalhaes RENEWAL
Chavez Q AmigonIndiaXuxue Feng PROPOSAL
Kadeem J SlusarskiFranceBernardo Dominic QUALIFIED
Claire L GauchoGermanyBernardo Dominic NEGOTIATION
Misaki Z VocelkaCanadaXuxue Feng NEGOTIATION
Antonio I CaudyCanadaOnyama Limba NEGOTIATION
Jennifer S NestleSpainAsiya Javayant NEGOTIATION
Mujtaba T InouyeIndiaOnyama Limba UNQUALIFIED
Francesco E WaycottSpainXuxue Feng NEW
Jennifer I MarrierItalyStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy V RulapaughRussia2026-05-22Feltz Printing Service NEGOTIATION98Elwin Sharvill
1001Mujtaba H CaldareraAustralia2026-05-19Chapman, Ross E Esq QUALIFIED51Amy Elsner
1002Octavia I SchemmerSpain2026-06-10Chemel, James L Cpa QUALIFIED92Amy Elsner
1003Julie V FigeroaBrazil2026-06-10Dorl, James J Esq QUALIFIED49Asiya Javayant
1004Isabel N MorascaFrance2026-06-01Morlong Associates NEGOTIATION32Onyama Limba
1005Aika E NestleFrance2026-06-09Rangoni Of Florence PROPOSAL55Xuxue Feng
1006Claire G MarrierFrance2026-05-24Printing Dimensions QUALIFIED13Ivan Magalhaes
1007Juan T ChuiAustralia2026-06-05Chanay, Jeffrey A Esq UNQUALIFIED58Bernardo Dominic
1008Stacey Z StockhamIndia2026-05-14Printing Dimensions RENEWAL62Onyama Limba
1009Aditya Z DilliardFrance2026-06-04Truhlar And Truhlar Attys UNQUALIFIED11Ivan Magalhaes
1010Jennifer H SergiJapan2026-05-21Chanay, Jeffrey A Esq RENEWAL81Onyama Limba
1011Aika X NestleCanada2026-06-08Chemel, James L Cpa PROPOSAL79Ioni Bowcher
1012Ricardo O CampainCanada2026-05-19Rousseaux, Michael Esq UNQUALIFIED67Onyama Limba
1013Leon O SlusarskiSpain2026-05-20Feiner Bros NEW43Ioni Bowcher
1014Costa C OstroskyCanada2026-05-16Morlong Associates RENEWAL55Asiya Javayant
1015Isabel L WhobreyCanada2026-05-21Rousseaux, Michael Esq NEW54Onyama Limba
1016Munro J GlickBrazil2026-05-30Feiner Bros NEW36Ioni Bowcher
1017Maisha G KolmetzBrazil2026-05-13Commercial Press UNQUALIFIED38Xuxue Feng
1018Sinclair J PoquetteCanada2026-05-14Benton, John B Jr UNQUALIFIED90Asiya Javayant
1019Aditya A OstroskyRussia2026-06-10Chanay, Jeffrey A Esq UNQUALIFIED22Ioni Bowcher
1020Chavez X GillianFrance2026-06-07Chapman, Ross E Esq RENEWAL11Ivan Magalhaes
1021Wickens E PerinItaly2026-05-18Benton, John B Jr NEW87Amy Elsner
1022Aruna K PerinArgentina2026-05-12Benton, John B Jr NEW85Ivan Magalhaes
1023Stacey M BriddickBrazil2026-05-28Chanay, Jeffrey A Esq UNQUALIFIED33Xuxue Feng
1024Emily X TollnerItaly2026-05-16Feiner Bros PROPOSAL73Ioni Bowcher
1025Stacey V SaylorsCanada2026-05-21Truhlar And Truhlar Attys NEW50Ivan Magalhaes
1026Izzy V OstroskyRussia2026-05-13King, Christopher A Esq NEW14Asiya Javayant
1027Chavez S RutaAustralia2026-05-12Morlong Associates QUALIFIED50Amy Elsner
1028Jennifer H MarrierBrazil2026-05-18Dorl, James J Esq QUALIFIED8Amy Elsner
1029Mujtaba J RutaBrazil2026-05-12Buckley Miller Wright RENEWAL72Ioni Bowcher
1030Silvio P NestleCanada2026-05-19Dorl, James J Esq NEW51Anna Fali
1031Munro D KuskoUnited Kingdom2026-05-13Feiner Bros RENEWAL24Ivan Magalhaes
1032Tony K NestleSpain2026-05-22Rangoni Of Florence PROPOSAL88Stephen Shaw
1033Alejandro B GauchoIndia2026-05-30Rousseaux, Michael Esq NEGOTIATION71Onyama Limba
1034Maisha O IturbideAustralia2026-05-29Buckley Miller Wright NEGOTIATION67Stephen Shaw
1035Morrow S MaletFrance2026-06-01Truhlar And Truhlar Attys UNQUALIFIED11Ivan Magalhaes
1036Jefferson B RutaBrazil2026-05-17Chemel, James L Cpa RENEWAL65Amy Elsner
1037Johnson D RimArgentina2026-05-17King, Christopher A Esq PROPOSAL71Elwin Sharvill
1038Ashley R PaprockiJapan2026-06-02Feiner Bros NEGOTIATION15Stephen Shaw
1039Chavez W SchemmerGermany2026-05-23Morlong Associates QUALIFIED1Xuxue Feng
1040Emily V PerinBrazil2026-05-22Dorl, James J Esq PROPOSAL78Xuxue Feng
1041Faith O PaprockiItaly2026-06-10Chemel, James L Cpa RENEWAL60Stephen Shaw
1042Jennifer O RulapaughFrance2026-05-18Feltz Printing Service PROPOSAL69Bernardo Dominic
1043Aruna Q GarufiCanada2026-06-09Printing Dimensions PROPOSAL27Ioni Bowcher
1044Jeanfrancois G MarrierBrazil2026-06-02Buckley Miller Wright RENEWAL74Onyama Limba
1045Nicolas F GlickArgentina2026-06-09Rousseaux, Michael Esq QUALIFIED1Asiya Javayant
1046Claire F ShinkoArgentina2026-05-17Feltz Printing Service UNQUALIFIED6Ivan Magalhaes
1047Deepesh J StockhamBrazil2026-05-23Rangoni Of Florence QUALIFIED46Asiya Javayant
1048Misaki C PoquetteGermany2026-05-17Chapman, Ross E Esq PROPOSAL83Elwin Sharvill
1049Salvatore U VocelkaUnited Kingdom2026-05-29Dorl, James J Esq RENEWAL75Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
James J GlickAustraliaAnna Fali NEW
Smith N SlusarskiGermanyAmy Elsner PROPOSAL
Aruna Z MorascaSpainElwin Sharvill NEW
Aditya J MorascaCanadaAsiya Javayant PROPOSAL
Jeanfrancois N AmigonUnited KingdomStephen Shaw PROPOSAL
Tony D MaletFranceIoni Bowcher PROPOSAL
Rodrigues M NestleAustraliaXuxue Feng RENEWAL
Arvin B AmigonItalyAnna Fali QUALIFIED
Ashley M StensethRussiaIoni Bowcher QUALIFIED
Francesco H ChuiArgentinaBernardo Dominic UNQUALIFIED
Arvin T CaldareraRussiaOnyama Limba UNQUALIFIED
Maria J OstroskyArgentinaIoni Bowcher NEGOTIATION
James K FlosiAustraliaElwin Sharvill RENEWAL
Greenwood J AmigonBrazilElwin Sharvill QUALIFIED
Murillo V SaylorsIndiaAsiya Javayant RENEWAL
Francesco C AmigonIndiaIvan Magalhaes RENEWAL
Smith N MacleadUnited KingdomAsiya Javayant RENEWAL
Stacey F VenereAustraliaIvan Magalhaes NEGOTIATION
David N GauchoCanadaElwin Sharvill NEW
Jefferson Y OldroydSpainIvan Magalhaes NEGOTIATION
Ricardo V GillianJapanAnna Fali QUALIFIED
Jefferson O PaprockiFranceIvan Magalhaes NEW
Ashley N SchemmerFranceStephen Shaw RENEWAL
Smith D MaletUnited KingdomXuxue Feng UNQUALIFIED
Leja B PoquetteSpainAnna Fali RENEWAL
Aika Z NickaCanadaXuxue Feng UNQUALIFIED
Izzy O MaletItalyIoni Bowcher RENEWAL
Munro V FigeroaGermanyStephen Shaw RENEWAL
Ashley N OldroydGermanyIvan Magalhaes PROPOSAL
Faith T MacleadArgentinaAsiya Javayant NEW
Mayumi Z VenereArgentinaAnna Fali NEW
Francesco U DoeItalyOnyama Limba NEW
Ricardo L WhobreyAustraliaOnyama Limba RENEWAL
Octavia J WaycottRussiaOnyama Limba PROPOSAL
Claire X MarrierItalyAmy Elsner UNQUALIFIED
James P AlbaresGermanyAnna Fali RENEWAL
Claire S SergiRussiaBernardo Dominic RENEWAL
Maria S FerenczJapanXuxue Feng NEGOTIATION
Munro R ShinkoItalyOnyama Limba PROPOSAL
Claire Y RulapaughUnited KingdomIvan Magalhaes PROPOSAL
Francesco S AlbaresFranceElwin Sharvill RENEWAL
Salvatore A ChuiArgentinaOnyama Limba PROPOSAL
Kadeem N IturbideItalyBernardo Dominic RENEWAL
Izzy O DarakjyFranceAmy Elsner PROPOSAL
Aika Q FollerCanadaIvan Magalhaes QUALIFIED
Greenwood S SchemmerIndiaXuxue Feng RENEWAL
Jeanfrancois M CampainArgentinaIoni Bowcher RENEWAL
Faith G BowleySpainOnyama Limba PROPOSAL
Ivar R SlusarskiArgentinaAmy Elsner QUALIFIED
Aruna S OldroydBrazilAnna Fali QUALIFIED
Frozen Columns
Name
Julie Q Tollner
Isabel F Figeroa
Salvatore V Dilliard
Deepesh A Nicka
Morrow K Waycott
Tony Y Amigon
Juan I Waycott
Adams A Ruta
Smith U Ferencz
Julie R Waycott
Stacey C Wieser
Isabel Z Sergi
Greenwood Y Vocelka
Chavez L Sergi
Octavia R Caudy
Alejandro K Marrier
Francesco H Kolmetz
Arvin J Saylors
Ricardo B Sergi
Johnson J Tollner
Adams R Stockham
Munro X Paprocki
Stacey I Slusarski
Mujtaba Y Oldroyd
Rodrigues T Whobrey
Emily H Doe
David R Venere
Wickens F Foller
Ashley Z Briddick
Smith U Ostrosky
Stacey F Garufi
Johnson W Iturbide
Tony G Gillian
Leon M Glick
Murillo Y Briddick
Silvio Q Stenseth
Izzy E Campain
Adams N Bolognia
Leon Y Kolmetz
James J Oldroyd
Costa V Paprocki
Sinclair U Glick
Silvio D Perin
Ricardo L Iturbide
Jefferson W Nicka
Isabel D Venere
Kadeem W Gillian
Mujtaba X Royster
Rodrigues E Ferencz
Chavez X Bowley
IdCountryDate
1000Spain2026-06-01
1001United Kingdom2026-06-10
1002Japan2026-06-01
1003Spain2026-05-16
1004Canada2026-06-01
1005Argentina2026-06-02
1006India2026-05-17
1007Argentina2026-06-08
1008Brazil2026-05-14
1009France2026-05-20
1010Canada2026-05-13
1011France2026-06-08
1012Italy2026-06-09
1013Germany2026-06-10
1014France2026-06-09
1015United Kingdom2026-05-29
1016Australia2026-06-04
1017Argentina2026-06-06
1018Germany2026-05-16
1019Brazil2026-06-07
1020Russia2026-05-22
1021Germany2026-05-12
1022United Kingdom2026-05-17
1023Japan2026-05-15
1024United Kingdom2026-05-23
1025Brazil2026-05-15
1026Canada2026-05-23
1027Argentina2026-06-04
1028Brazil2026-06-03
1029Italy2026-06-06
1030United Kingdom2026-05-14
1031Spain2026-05-14
1032India2026-05-26
1033France2026-05-13
1034Australia2026-05-13
1035Germany2026-05-28
1036Russia2026-05-18
1037Australia2026-06-01
1038Brazil2026-05-26
1039Japan2026-05-16
1040India2026-05-18
1041Russia2026-05-17
1042Japan2026-05-16
1043Italy2026-06-07
1044Argentina2026-05-25
1045Argentina2026-05-23
1046India2026-05-24
1047Canada2026-05-28
1048India2026-05-30
1049Spain2026-05-28

On-Demand Data

NameIdCountryDate
Kadeem O Campain1000France2026-05-14
Sinclair F Perin1001Germany2026-06-10
Octavia E Garufi1002Australia2026-05-23
Mayumi G Gillian1003Italy2026-05-17
Murillo I Saylors1004Italy2026-05-25
Morrow M Marrier1005Argentina2026-06-07
Salvatore T Maclead1006Brazil2026-05-19
Darci Z Kolmetz1007Argentina2026-05-29
Misaki N Morasca1008Italy2026-06-01
Jones H Marrier1009Spain2026-05-18
Antonio M Morasca1010Japan2026-05-27
Ashley O Sergi1011Japan2026-05-25
Adams O Caudy1012Germany2026-05-28
Jones Q Wieser1013Brazil2026-06-08
Morrow A Flosi1014India2026-05-20
Claire T Flosi1015Italy2026-05-19
Leja V Butt1016Brazil2026-06-01
Francesco N Ruta1017Japan2026-05-24
Mujtaba D Waycott1018Italy2026-06-08
Nicolas I Poquette1019Spain2026-05-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues T FerenczRussiaIvan Magalhaes NEW
Wickens V BriddickJapanElwin Sharvill RENEWAL
Cody D MarrierItalyBernardo Dominic QUALIFIED
Silvio L InouyeCanadaAnna Fali QUALIFIED
Aika J MaletIndiaOnyama Limba UNQUALIFIED
David P TollnerGermanyAnna Fali UNQUALIFIED
Costa R DoeFranceIoni Bowcher NEGOTIATION
Claire A DarakjyAustraliaAnna Fali NEW
Tony U GauchoGermanyIoni Bowcher UNQUALIFIED
Stacey G CampainFranceAnna Fali NEW
Cody W NestleFranceOnyama Limba RENEWAL
Salvatore V NickaAustraliaOnyama Limba QUALIFIED
Aditya Z RimUnited KingdomOnyama Limba NEW
Jeanfrancois A OstroskyRussiaElwin Sharvill NEW
James Z KuskoRussiaOnyama Limba NEW
Jeanfrancois I RoysterBrazilIvan Magalhaes PROPOSAL
Chavez T SchemmerItalyAmy Elsner NEGOTIATION
Arvin K GlickItalyAmy Elsner RENEWAL
Claire R SlusarskiFranceStephen Shaw RENEWAL
Wickens S CaldareraFranceAsiya Javayant RENEWAL
Salvatore O AlbaresGermanyIvan Magalhaes UNQUALIFIED
Munro W OstroskyCanadaElwin Sharvill UNQUALIFIED
James Y RulapaughJapanOnyama Limba UNQUALIFIED
Izzy U FigeroaSpainAmy Elsner NEGOTIATION
Octavia D BologniaBrazilOnyama Limba RENEWAL
Silvio X NestleFranceIoni Bowcher UNQUALIFIED
Alejandro L FerenczBrazilIoni Bowcher UNQUALIFIED
Jennifer T PaprockiFranceAmy Elsner UNQUALIFIED
Claire B FerenczArgentinaAsiya Javayant UNQUALIFIED
Maisha Q PoquetteUnited KingdomBernardo Dominic QUALIFIED
Chavez D SlusarskiArgentinaXuxue Feng UNQUALIFIED
Julie B WhobreyJapanStephen Shaw NEW
Claire M RutaUnited KingdomAmy Elsner NEGOTIATION
Octavia H RulapaughCanadaOnyama Limba PROPOSAL
Murillo U PaprockiJapanAmy Elsner PROPOSAL
Darci G RimItalyIoni Bowcher RENEWAL
Tony K BowleyJapanElwin Sharvill NEGOTIATION
Salvatore A KolmetzIndiaAsiya Javayant QUALIFIED
Stacey Y GarufiUnited KingdomAmy Elsner NEGOTIATION
James I FerenczCanadaXuxue Feng 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.