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
Greenwood X CaldareraItalyAmy Elsner QUALIFIED
James W ChuiGermanyAsiya Javayant PROPOSAL
Francesco G VenereAustraliaAnna Fali NEW
Mayumi Z SaylorsCanadaAnna Fali NEW
Leon F FerenczArgentinaStephen Shaw UNQUALIFIED
Kadeem Z FlosiJapanIvan Magalhaes RENEWAL
Ashley N RutaAustraliaStephen Shaw NEW
Alejandro P ShinkoSpainElwin Sharvill UNQUALIFIED
Julie H OstroskyUnited KingdomXuxue Feng NEW
Mujtaba I InouyeFranceAmy Elsner NEW
Kadeem T SchemmerFranceElwin Sharvill NEW
Jeanfrancois S FigeroaItalyIvan Magalhaes NEW
Nicolas B BologniaJapanAnna Fali NEW
Leja K CaldareraFranceXuxue Feng QUALIFIED
Jennifer X StockhamCanadaXuxue Feng UNQUALIFIED
Munro J OstroskyGermanyAmy Elsner QUALIFIED
Antonio X NestleAustraliaXuxue Feng RENEWAL
David J KuskoCanadaAnna Fali NEGOTIATION
Faith F DoeItalyElwin Sharvill UNQUALIFIED
Murillo J WhobreyRussiaElwin Sharvill QUALIFIED
Faith A MaletIndiaIvan Magalhaes NEGOTIATION
Greenwood G VenereSpainIvan Magalhaes NEW
Arvin G WhobreySpainOnyama Limba NEW
Smith Y PaprockiFranceAmy Elsner QUALIFIED
Silvio N OldroydFranceBernardo Dominic NEW
Smith Z AmigonBrazilStephen Shaw NEGOTIATION
Johnson S MaletAustraliaElwin Sharvill NEGOTIATION
Salvatore G SchemmerArgentinaOnyama Limba QUALIFIED
Maria Z IturbideSpainStephen Shaw NEGOTIATION
Mayumi D FigeroaIndiaIvan Magalhaes NEGOTIATION
Jefferson K SaylorsAustraliaAmy Elsner PROPOSAL
Maria K CampainFranceAmy Elsner NEW
Octavia H GlickJapanAnna Fali RENEWAL
Chavez I CaldareraBrazilAsiya Javayant PROPOSAL
Sinclair M ShinkoArgentinaElwin Sharvill PROPOSAL
Ivar I DarakjyBrazilAmy Elsner NEW
Smith U StensethJapanElwin Sharvill PROPOSAL
Aika R MorascaArgentinaElwin Sharvill QUALIFIED
Salvatore M SergiItalyOnyama Limba NEGOTIATION
Leon P DoeArgentinaIvan Magalhaes NEW
Salvatore Q WieserIndiaBernardo Dominic RENEWAL
Cody T BowleyRussiaAnna Fali QUALIFIED
Antonio R RulapaughFranceStephen Shaw UNQUALIFIED
Claire G OldroydBrazilIoni Bowcher QUALIFIED
David I SaylorsArgentinaBernardo Dominic PROPOSAL
Jefferson Y NestleUnited KingdomAsiya Javayant NEW
Murillo J StockhamItalyAmy Elsner NEGOTIATION
Greenwood J SchemmerJapanAnna Fali QUALIFIED
Darci H MaletRussiaIoni Bowcher UNQUALIFIED
Juan D BriddickRussiaOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mujtaba Q KuskoGermanyOnyama Limba QUALIFIED
Kadeem E BriddickUnited KingdomIvan Magalhaes PROPOSAL
Isabel M RimItalyStephen Shaw NEW
Maria M GlickBrazilAmy Elsner NEW
Isabel B RutaAustraliaAnna Fali UNQUALIFIED
Silvio D BriddickAustraliaBernardo Dominic RENEWAL
Ricardo V MaletSpainAmy Elsner NEW
Smith Q TollnerArgentinaOnyama Limba QUALIFIED
Wickens M KuskoBrazilIoni Bowcher UNQUALIFIED
Deepesh U VocelkaSpainOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem E CaudySpain2026-05-20Buckley Miller Wright NEGOTIATION77Asiya Javayant
1001Nicolas O BriddickItaly2026-04-23Benton, John B Jr NEGOTIATION49Onyama Limba
1002Adams M ButtArgentina2026-05-13Dorl, James J Esq QUALIFIED99Elwin Sharvill
1003Jeanfrancois W AmigonCanada2026-04-24Printing Dimensions UNQUALIFIED79Elwin Sharvill
1004Ashley B StensethSpain2026-04-24Chanay, Jeffrey A Esq NEGOTIATION9Asiya Javayant
1005Faith E StensethItaly2026-05-08Printing Dimensions RENEWAL88Anna Fali
1006Aditya J StensethGermany2026-05-07Buckley Miller Wright PROPOSAL28Ivan Magalhaes
1007Maria W ChuiSpain2026-05-14Feltz Printing Service PROPOSAL40Asiya Javayant
1008Mujtaba N PaprockiIndia2026-05-19Chapman, Ross E Esq UNQUALIFIED23Anna Fali
1009Ivar B GauchoItaly2026-05-09Rangoni Of Florence UNQUALIFIED67Ivan Magalhaes
1010Wickens R NestleIndia2026-05-14Chemel, James L Cpa NEGOTIATION9Ivan Magalhaes
1011Costa V IturbideCanada2026-04-30Chanay, Jeffrey A Esq PROPOSAL96Asiya Javayant
1012Rodrigues T DilliardIndia2026-05-05Morlong Associates PROPOSAL74Anna Fali
1013Claire C GlickFrance2026-05-09Rousseaux, Michael Esq QUALIFIED5Elwin Sharvill
1014Misaki Z DilliardAustralia2026-05-17King, Christopher A Esq RENEWAL49Asiya Javayant
1015Maisha M FerenczArgentina2026-04-25Chapman, Ross E Esq NEGOTIATION19Xuxue Feng
1016Misaki X KuskoUnited Kingdom2026-04-25Rousseaux, Michael Esq NEGOTIATION46Xuxue Feng
1017David M MaletItaly2026-05-19Rousseaux, Michael Esq UNQUALIFIED55Bernardo Dominic
1018Wickens F SlusarskiArgentina2026-05-02King, Christopher A Esq NEW37Bernardo Dominic
1019Leja X SchemmerArgentina2026-05-17Truhlar And Truhlar Attys UNQUALIFIED36Xuxue Feng
1020Maria R BologniaIndia2026-04-23Printing Dimensions RENEWAL59Ioni Bowcher
1021Aruna T FigeroaSpain2026-05-19Truhlar And Truhlar Attys QUALIFIED9Stephen Shaw
1022Misaki Q MaletSpain2026-05-07King, Christopher A Esq NEGOTIATION38Elwin Sharvill
1023Octavia N PaprockiSpain2026-04-28Rangoni Of Florence NEW46Xuxue Feng
1024Sinclair L DilliardSpain2026-05-09Buckley Miller Wright UNQUALIFIED2Anna Fali
1025Leon D MorascaFrance2026-05-01Rousseaux, Michael Esq UNQUALIFIED10Xuxue Feng
1026Mayumi Q DilliardRussia2026-05-10Rangoni Of Florence RENEWAL75Amy Elsner
1027Antonio T VenereArgentina2026-05-17Rousseaux, Michael Esq NEW49Anna Fali
1028Aruna V VenereSpain2026-04-26Feltz Printing Service RENEWAL94Elwin Sharvill
1029Mayumi N BriddickGermany2026-05-14Feiner Bros NEW0Onyama Limba
1030Ricardo S IturbideFrance2026-04-30Benton, John B Jr UNQUALIFIED1Xuxue Feng
1031Claire P WhobreyArgentina2026-05-07Rangoni Of Florence QUALIFIED83Asiya Javayant
1032Sinclair F NestleRussia2026-05-19Chanay, Jeffrey A Esq RENEWAL94Amy Elsner
1033Nicolas V RimSpain2026-05-06Truhlar And Truhlar Attys QUALIFIED61Ioni Bowcher
1034Costa T IturbideArgentina2026-04-26Benton, John B Jr PROPOSAL74Xuxue Feng
1035Leja H PoquetteIndia2026-05-02Commercial Press RENEWAL1Bernardo Dominic
1036Aruna H MaletArgentina2026-04-26Chemel, James L Cpa RENEWAL38Bernardo Dominic
1037Antonio A WhobreyCanada2026-05-09Rousseaux, Michael Esq PROPOSAL6Stephen Shaw
1038Maria D KuskoGermany2026-05-18Chapman, Ross E Esq QUALIFIED59Stephen Shaw
1039Maria V SlusarskiUnited Kingdom2026-05-15Commercial Press UNQUALIFIED81Ioni Bowcher
1040Deepesh Y ShinkoSpain2026-04-25Rangoni Of Florence PROPOSAL2Xuxue Feng
1041Costa G StockhamGermany2026-05-12Chemel, James L Cpa PROPOSAL10Stephen Shaw
1042Deepesh B DarakjyAustralia2026-04-26Feltz Printing Service NEGOTIATION98Bernardo Dominic
1043Kaitlin K PerinItaly2026-04-25King, Christopher A Esq UNQUALIFIED51Elwin Sharvill
1044Adams Z FlosiCanada2026-05-06Chanay, Jeffrey A Esq RENEWAL61Onyama Limba
1045Smith K GillianSpain2026-05-05Printing Dimensions NEW12Bernardo Dominic
1046Jennifer K ButtIndia2026-05-13Chemel, James L Cpa QUALIFIED99Asiya Javayant
1047Stacey S ShinkoFrance2026-05-07Benton, John B Jr NEW93Elwin Sharvill
1048Francesco B OldroydBrazil2026-05-12Rousseaux, Michael Esq RENEWAL22Xuxue Feng
1049Morrow B WieserAustralia2026-05-18Feltz Printing Service UNQUALIFIED95Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Leon Z SchemmerItalyXuxue Feng NEW
Silvio T GillianGermanyAmy Elsner NEGOTIATION
Misaki Z BowleyJapanOnyama Limba UNQUALIFIED
Jefferson Q CaudyBrazilIoni Bowcher NEGOTIATION
Emily B GillianRussiaAsiya Javayant PROPOSAL
Faith S StockhamBrazilElwin Sharvill RENEWAL
Misaki S VenereBrazilAnna Fali PROPOSAL
Leja F PoquetteBrazilStephen Shaw RENEWAL
Jeanfrancois P DoeArgentinaXuxue Feng RENEWAL
Jefferson I RutaItalyXuxue Feng NEGOTIATION
Ivar S NestleBrazilBernardo Dominic QUALIFIED
Izzy E DilliardBrazilOnyama Limba UNQUALIFIED
Aditya A CaldareraArgentinaOnyama Limba QUALIFIED
Francesco M SaylorsRussiaStephen Shaw UNQUALIFIED
Johnson I OstroskyIndiaAnna Fali QUALIFIED
Faith K VocelkaItalyXuxue Feng NEW
Sinclair J CaldareraIndiaXuxue Feng QUALIFIED
Aditya F KuskoItalyIoni Bowcher QUALIFIED
Munro U RulapaughJapanAmy Elsner RENEWAL
Jennifer L CaldareraGermanyIoni Bowcher UNQUALIFIED
Ivar I OstroskyItalyElwin Sharvill NEW
Greenwood N BriddickUnited KingdomAsiya Javayant QUALIFIED
Wickens J VenereAustraliaIvan Magalhaes NEW
Jeanfrancois P CampainFranceElwin Sharvill PROPOSAL
Emily S MaletRussiaAsiya Javayant PROPOSAL
Faith J IturbideGermanyBernardo Dominic QUALIFIED
Deepesh D AmigonSpainAmy Elsner PROPOSAL
Kadeem D FigeroaCanadaIvan Magalhaes PROPOSAL
Cody S StensethGermanyAmy Elsner NEW
Juan Q RutaJapanIoni Bowcher PROPOSAL
Jones C CaudyJapanElwin Sharvill QUALIFIED
Leja Y CaudyRussiaOnyama Limba NEW
Jennifer C MacleadRussiaElwin Sharvill RENEWAL
Ivar V FerenczCanadaIoni Bowcher RENEWAL
Kadeem Q KuskoCanadaOnyama Limba PROPOSAL
Murillo F MacleadRussiaBernardo Dominic UNQUALIFIED
Morrow L DarakjySpainElwin Sharvill NEGOTIATION
Smith W ChuiBrazilIoni Bowcher NEGOTIATION
Deepesh C CaldareraUnited KingdomAmy Elsner PROPOSAL
Kaitlin V BriddickBrazilStephen Shaw PROPOSAL
Maria A WaycottJapanAnna Fali PROPOSAL
Aruna P FlosiIndiaOnyama Limba RENEWAL
Munro A FigeroaArgentinaAnna Fali NEW
Adams C SchemmerUnited KingdomAnna Fali NEGOTIATION
Aruna Y DilliardBrazilElwin Sharvill PROPOSAL
Kadeem T PaprockiRussiaIvan Magalhaes UNQUALIFIED
Clifford F CaldareraGermanyElwin Sharvill NEGOTIATION
Julie H BriddickArgentinaIvan Magalhaes QUALIFIED
Jones E GlickArgentinaStephen Shaw RENEWAL
Clifford Y RutaFranceIoni Bowcher NEW
Frozen Columns
Name
Greenwood Z Inouye
Jeanfrancois G Venere
Smith N Inouye
Faith C Butt
Jefferson H Rulapaugh
Misaki K Iturbide
Aditya O Ferencz
Arvin Y Amigon
Aika W Waycott
Ashley R Glick
Tony H Doe
Faith U Marrier
Arvin A Poquette
Jennifer C Briddick
Octavia Y Darakjy
Jeanfrancois P Kolmetz
Ashley T Briddick
Aruna A Slusarski
Maria G Caudy
Adams U Albares
Deepesh T Dilliard
Izzy Y Briddick
Leja T Glick
Rodrigues S Sergi
Tony Q Flosi
Darci R Iturbide
Sinclair V Kolmetz
Julie Y Ferencz
Adams Y Malet
David K Albares
Clifford J Whobrey
Kadeem M Foller
Greenwood W Amigon
Johnson S Flosi
Juan S Royster
Maria P Vocelka
Faith Q Bowley
Kadeem A Malet
Wickens E Marrier
Cody E Saylors
Munro E Venere
Jennifer V Foller
Maisha Z Albares
Smith M Butt
Jefferson N Maclead
Jones N Briddick
Isabel D Oldroyd
Izzy U Gillian
Emily A Doe
Nicolas H Whobrey
IdCountryDate
1000Canada2026-04-30
1001Italy2026-05-19
1002India2026-05-18
1003Australia2026-05-04
1004Germany2026-04-27
1005Italy2026-05-13
1006Germany2026-05-12
1007Brazil2026-05-14
1008France2026-05-17
1009Argentina2026-05-08
1010Canada2026-04-24
1011Spain2026-05-03
1012Germany2026-04-28
1013India2026-05-19
1014Japan2026-05-19
1015Japan2026-04-26
1016Spain2026-04-25
1017Australia2026-04-26
1018Argentina2026-05-04
1019India2026-05-14
1020Spain2026-05-21
1021Australia2026-05-17
1022Russia2026-04-26
1023Japan2026-04-30
1024Germany2026-05-22
1025Russia2026-05-14
1026Italy2026-05-10
1027United Kingdom2026-05-16
1028India2026-05-14
1029Brazil2026-05-22
1030Australia2026-04-23
1031Canada2026-04-30
1032Australia2026-05-06
1033Argentina2026-04-23
1034France2026-05-11
1035Canada2026-04-25
1036Japan2026-05-19
1037France2026-04-28
1038Australia2026-04-28
1039Germany2026-05-07
1040Argentina2026-05-20
1041Australia2026-05-05
1042Spain2026-05-07
1043France2026-05-03
1044Australia2026-05-06
1045Spain2026-05-18
1046Canada2026-05-14
1047Canada2026-04-30
1048Brazil2026-04-23
1049Italy2026-05-03

On-Demand Data

NameIdCountryDate
Maisha A Kolmetz1000Russia2026-05-01
Morrow R Tollner1001Canada2026-04-28
Silvio V Doe1002United Kingdom2026-05-14
Darci P Paprocki1003France2026-04-27
Munro I Nestle1004India2026-04-29
Johnson R Iturbide1005Australia2026-05-12
Tony O Oldroyd1006Argentina2026-04-25
Chavez Z Malet1007Argentina2026-05-05
Smith O Darakjy1008Argentina2026-05-01
Morrow J Slusarski1009France2026-04-29
Faith V Kolmetz1010Japan2026-05-18
Claire B Schemmer1011Spain2026-04-28
Ashley L Schemmer1012Italy2026-05-10
Kadeem D Poquette1013Argentina2026-05-18
Ricardo W Ruta1014Argentina2026-05-18
Octavia N Venere1015Germany2026-05-15
Wickens Q Bolognia1016Canada2026-05-15
Jefferson L Shinko1017Spain2026-05-05
Chavez H Vocelka1018Italy2026-05-10
Faith F Doe1019Canada2026-05-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja E MacleadArgentinaAnna Fali RENEWAL
Cody K BologniaIndiaIvan Magalhaes NEW
Ivar B WaycottRussiaAnna Fali PROPOSAL
Ashley A TollnerUnited KingdomAnna Fali NEGOTIATION
Rodrigues O FollerSpainAsiya Javayant QUALIFIED
Stacey Q OstroskyItalyAmy Elsner QUALIFIED
Ivar I FerenczAustraliaAnna Fali UNQUALIFIED
Izzy M PerinBrazilElwin Sharvill PROPOSAL
Clifford R PaprockiCanadaAmy Elsner RENEWAL
Leon M OstroskyBrazilAmy Elsner NEW
Maisha Y ButtArgentinaXuxue Feng QUALIFIED
Munro Z WaycottItalyOnyama Limba PROPOSAL
Juan I GlickGermanyIoni Bowcher NEW
Arvin X DoeBrazilIoni Bowcher RENEWAL
Leja D VocelkaFranceIoni Bowcher PROPOSAL
Faith K ShinkoCanadaOnyama Limba NEW
Costa C ButtCanadaStephen Shaw RENEWAL
Jones Z AmigonCanadaOnyama Limba NEW
Isabel C MacleadCanadaXuxue Feng PROPOSAL
Sinclair Q WaycottBrazilIvan Magalhaes UNQUALIFIED
Ricardo W PaprockiAustraliaAsiya Javayant PROPOSAL
Ricardo S ShinkoIndiaIvan Magalhaes RENEWAL
Jeanfrancois D RulapaughItalyElwin Sharvill PROPOSAL
Faith T OstroskyGermanyElwin Sharvill QUALIFIED
Jeanfrancois M PoquetteUnited KingdomBernardo Dominic PROPOSAL
Arvin J FollerIndiaStephen Shaw UNQUALIFIED
Darci Z MorascaCanadaIvan Magalhaes QUALIFIED
Alejandro W AmigonRussiaIoni Bowcher NEGOTIATION
Juan Z WieserCanadaAsiya Javayant NEW
Misaki U RulapaughCanadaIoni Bowcher NEW
Aditya U GlickItalyStephen Shaw NEW
Costa S OstroskyUnited KingdomAnna Fali PROPOSAL
Adams F MacleadCanadaIvan Magalhaes NEGOTIATION
Jennifer D MorascaRussiaOnyama Limba NEW
Antonio R OldroydBrazilIoni Bowcher UNQUALIFIED
Adams M MaletUnited KingdomOnyama Limba NEW
Mayumi P SergiBrazilStephen Shaw NEW
Deepesh W TollnerFranceIvan Magalhaes QUALIFIED
Wickens S NestleBrazilAsiya Javayant NEGOTIATION
Octavia S NestleArgentinaIoni Bowcher RENEWAL

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