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
Ashley H AlbaresSpainBernardo Dominic NEGOTIATION
Jeanfrancois H SlusarskiCanadaStephen Shaw QUALIFIED
Deepesh T CaudyRussiaAnna Fali QUALIFIED
Maria P NestleItalyXuxue Feng UNQUALIFIED
Juan W BowleyUnited KingdomElwin Sharvill QUALIFIED
Darci M OstroskyItalyStephen Shaw NEGOTIATION
Arvin T InouyeFranceXuxue Feng UNQUALIFIED
Maisha U FlosiFranceIoni Bowcher QUALIFIED
Izzy F VocelkaFranceOnyama Limba UNQUALIFIED
Munro Q GlickJapanAmy Elsner PROPOSAL
Kaitlin X AmigonBrazilElwin Sharvill NEW
Smith A BowleyBrazilAnna Fali QUALIFIED
Antonio J BowleyFranceElwin Sharvill NEGOTIATION
Izzy J StockhamCanadaOnyama Limba NEW
Cody M ButtItalyAsiya Javayant PROPOSAL
Arvin X NickaItalyXuxue Feng UNQUALIFIED
Deepesh I WhobreyFranceAsiya Javayant RENEWAL
Sinclair H RimGermanyBernardo Dominic NEW
Cody X IturbideBrazilIvan Magalhaes PROPOSAL
Salvatore Y KuskoJapanAsiya Javayant QUALIFIED
Claire W MacleadAustraliaXuxue Feng QUALIFIED
Francesco C VenereBrazilOnyama Limba UNQUALIFIED
Emily O FlosiAustraliaIoni Bowcher NEW
Tony V StensethRussiaBernardo Dominic PROPOSAL
Francesco S TollnerUnited KingdomElwin Sharvill QUALIFIED
Jennifer Q GauchoRussiaAsiya Javayant RENEWAL
Rodrigues A MorascaUnited KingdomIvan Magalhaes RENEWAL
Johnson U SaylorsUnited KingdomAnna Fali QUALIFIED
Aika V RimAustraliaAnna Fali UNQUALIFIED
Silvio O DilliardAustraliaAsiya Javayant NEW
Izzy S StensethJapanIvan Magalhaes QUALIFIED
Johnson L GauchoFranceElwin Sharvill UNQUALIFIED
Johnson T GillianCanadaXuxue Feng UNQUALIFIED
Leja Q GillianFranceAsiya Javayant NEW
Chavez X MaletArgentinaAsiya Javayant QUALIFIED
Izzy F FollerIndiaAnna Fali UNQUALIFIED
Maisha X RimRussiaAmy Elsner PROPOSAL
Alejandro G MacleadFranceIoni Bowcher QUALIFIED
Ivar X VenereCanadaAmy Elsner UNQUALIFIED
Wickens B RutaItalyStephen Shaw NEGOTIATION
Izzy P GauchoGermanyIoni Bowcher UNQUALIFIED
Murillo D SlusarskiJapanAnna Fali NEGOTIATION
Alejandro C PoquetteBrazilStephen Shaw NEGOTIATION
Ashley Z TollnerSpainAnna Fali QUALIFIED
Francesco I ShinkoGermanyStephen Shaw PROPOSAL
Nicolas I VocelkaCanadaAmy Elsner QUALIFIED
Nicolas L SlusarskiRussiaStephen Shaw PROPOSAL
Adams R DoeIndiaOnyama Limba PROPOSAL
Morrow C StensethGermanyElwin Sharvill UNQUALIFIED
Costa L DoeFranceElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kaitlin D WaycottAustraliaOnyama Limba RENEWAL
Izzy I ChuiUnited KingdomAsiya Javayant NEGOTIATION
Emily D KolmetzRussiaAnna Fali QUALIFIED
Munro T DarakjySpainStephen Shaw NEGOTIATION
Misaki E OstroskyIndiaIvan Magalhaes PROPOSAL
Leon Z FollerJapanAmy Elsner NEW
Chavez G KolmetzGermanyAmy Elsner UNQUALIFIED
Deepesh F ShinkoJapanIvan Magalhaes UNQUALIFIED
Cody A SergiSpainBernardo Dominic NEW
Nicolas D SaylorsArgentinaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily B SergiUnited Kingdom2026-06-19Feiner Bros NEGOTIATION1Amy Elsner
1001Leon N MorascaBrazil2026-05-29Commercial Press NEGOTIATION22Bernardo Dominic
1002Maisha A SergiUnited Kingdom2026-06-03Chanay, Jeffrey A Esq QUALIFIED97Asiya Javayant
1003Deepesh G DarakjyGermany2026-06-01Printing Dimensions PROPOSAL15Xuxue Feng
1004Darci I SlusarskiArgentina2026-06-10Chanay, Jeffrey A Esq QUALIFIED32Ioni Bowcher
1005Stacey I SaylorsItaly2026-06-10Rangoni Of Florence NEW59Bernardo Dominic
1006David W SaylorsJapan2026-05-26Feltz Printing Service PROPOSAL86Amy Elsner
1007Tony Z FigeroaJapan2026-05-28Morlong Associates NEW16Onyama Limba
1008Jefferson B PerinIndia2026-06-09Buckley Miller Wright UNQUALIFIED24Ivan Magalhaes
1009Chavez V RutaUnited Kingdom2026-06-14Chemel, James L Cpa PROPOSAL16Ioni Bowcher
1010Aruna V MaletArgentina2026-05-27Chemel, James L Cpa PROPOSAL95Xuxue Feng
1011Juan Q GarufiAustralia2026-06-14Chapman, Ross E Esq RENEWAL92Amy Elsner
1012Nicolas P AlbaresIndia2026-05-31Benton, John B Jr UNQUALIFIED70Elwin Sharvill
1013Octavia G SergiGermany2026-06-04Morlong Associates NEGOTIATION88Anna Fali
1014Julie I ChuiUnited Kingdom2026-05-28Chanay, Jeffrey A Esq PROPOSAL57Ivan Magalhaes
1015Greenwood L ChuiGermany2026-06-03Buckley Miller Wright NEW51Ioni Bowcher
1016Munro I ChuiCanada2026-06-11Truhlar And Truhlar Attys QUALIFIED85Anna Fali
1017Jeanfrancois F AlbaresIndia2026-06-10King, Christopher A Esq RENEWAL21Amy Elsner
1018Francesco L CaudyJapan2026-06-08Chanay, Jeffrey A Esq UNQUALIFIED83Stephen Shaw
1019Murillo L TollnerItaly2026-06-01Truhlar And Truhlar Attys NEGOTIATION63Bernardo Dominic
1020James Y OldroydGermany2026-06-03Rousseaux, Michael Esq RENEWAL2Onyama Limba
1021Cody X GarufiJapan2026-06-01Chanay, Jeffrey A Esq NEW14Elwin Sharvill
1022Sinclair H GlickCanada2026-06-19Rousseaux, Michael Esq RENEWAL60Ivan Magalhaes
1023Jeanfrancois R BologniaItaly2026-06-08Commercial Press NEW79Onyama Limba
1024David Z FigeroaRussia2026-06-11Chemel, James L Cpa RENEWAL9Ivan Magalhaes
1025Chavez T VenereRussia2026-06-13Commercial Press NEW75Stephen Shaw
1026Izzy W DilliardArgentina2026-06-06Morlong Associates QUALIFIED84Onyama Limba
1027Morrow H CaudySpain2026-06-05Truhlar And Truhlar Attys NEW26Ioni Bowcher
1028Aika U FigeroaBrazil2026-06-17Morlong Associates QUALIFIED0Onyama Limba
1029David A PerinArgentina2026-06-08Feiner Bros UNQUALIFIED66Anna Fali
1030Misaki H PoquetteGermany2026-05-23Feiner Bros PROPOSAL15Anna Fali
1031Izzy V IturbideJapan2026-05-31Truhlar And Truhlar Attys NEGOTIATION56Bernardo Dominic
1032Mujtaba O PerinFrance2026-06-14Truhlar And Truhlar Attys NEW65Bernardo Dominic
1033Maria A AlbaresSpain2026-06-09Printing Dimensions RENEWAL34Stephen Shaw
1034Murillo A ShinkoRussia2026-05-27Chanay, Jeffrey A Esq NEGOTIATION78Ivan Magalhaes
1035Mayumi S AlbaresGermany2026-06-19Benton, John B Jr NEGOTIATION44Ivan Magalhaes
1036Rodrigues P FollerCanada2026-06-12Printing Dimensions PROPOSAL41Elwin Sharvill
1037Stacey P RoysterRussia2026-06-11King, Christopher A Esq RENEWAL81Anna Fali
1038Smith J NestleRussia2026-05-29Benton, John B Jr QUALIFIED48Onyama Limba
1039Adams M PaprockiBrazil2026-06-07Printing Dimensions QUALIFIED54Asiya Javayant
1040Sinclair H MorascaGermany2026-06-15Feltz Printing Service PROPOSAL91Elwin Sharvill
1041Nicolas C AmigonAustralia2026-05-28Benton, John B Jr QUALIFIED5Asiya Javayant
1042Rodrigues L IturbideAustralia2026-06-17Chapman, Ross E Esq UNQUALIFIED34Anna Fali
1043Jones B BologniaBrazil2026-05-23Rousseaux, Michael Esq NEW71Xuxue Feng
1044Wickens P ButtSpain2026-05-29Rousseaux, Michael Esq PROPOSAL97Ioni Bowcher
1045Jeanfrancois E WhobreyJapan2026-06-16Dorl, James J Esq QUALIFIED3Stephen Shaw
1046Clifford E FollerArgentina2026-06-20Feiner Bros RENEWAL80Anna Fali
1047Aruna V PerinGermany2026-05-25Dorl, James J Esq UNQUALIFIED15Stephen Shaw
1048Izzy B AlbaresBrazil2026-05-23Benton, John B Jr NEGOTIATION81Ivan Magalhaes
1049Smith Z NickaIndia2026-06-04Benton, John B Jr RENEWAL55Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Maria U IturbideBrazilIoni Bowcher QUALIFIED
Adams T VenereAustraliaXuxue Feng QUALIFIED
Antonio Q MaletBrazilOnyama Limba NEGOTIATION
Tony L NickaArgentinaIoni Bowcher RENEWAL
Tony O DoeIndiaIvan Magalhaes RENEWAL
Arvin M RulapaughItalyAsiya Javayant UNQUALIFIED
Maisha Y TollnerCanadaElwin Sharvill RENEWAL
Juan F FigeroaArgentinaIoni Bowcher NEGOTIATION
Leja V VocelkaBrazilElwin Sharvill QUALIFIED
Leon N IturbideAustraliaElwin Sharvill UNQUALIFIED
Emily T FerenczFranceIvan Magalhaes QUALIFIED
Deepesh K MorascaItalyAsiya Javayant RENEWAL
Jennifer X GauchoSpainBernardo Dominic NEGOTIATION
Claire P CampainAustraliaAmy Elsner QUALIFIED
Jennifer K DilliardFranceXuxue Feng QUALIFIED
Claire S CampainFranceOnyama Limba NEW
Isabel H StensethSpainIoni Bowcher NEGOTIATION
Maria W PoquetteItalyOnyama Limba RENEWAL
Antonio Q DoeIndiaAsiya Javayant NEW
Jeanfrancois V PaprockiRussiaStephen Shaw NEGOTIATION
Silvio N CaldareraAustraliaIoni Bowcher RENEWAL
Smith B ChuiBrazilIvan Magalhaes PROPOSAL
Julie I FollerAustraliaXuxue Feng RENEWAL
Ivar Z CampainFranceElwin Sharvill RENEWAL
Costa L GillianArgentinaStephen Shaw PROPOSAL
Ivar X BowleyAustraliaXuxue Feng QUALIFIED
Juan R AlbaresFranceIoni Bowcher PROPOSAL
Leon N CaldareraIndiaAnna Fali QUALIFIED
Kadeem F BriddickUnited KingdomAnna Fali NEGOTIATION
Aruna R VenereArgentinaBernardo Dominic QUALIFIED
Misaki U MarrierAustraliaXuxue Feng UNQUALIFIED
Izzy X KuskoUnited KingdomElwin Sharvill QUALIFIED
Morrow P DarakjyCanadaElwin Sharvill RENEWAL
Francesco I CaldareraRussiaIoni Bowcher QUALIFIED
Kaitlin Y WieserIndiaElwin Sharvill RENEWAL
Aditya V FerenczSpainOnyama Limba NEGOTIATION
Aika N GillianUnited KingdomOnyama Limba NEGOTIATION
Deepesh M GillianUnited KingdomAnna Fali NEGOTIATION
Deepesh M VenereSpainOnyama Limba UNQUALIFIED
Maisha E NickaUnited KingdomXuxue Feng NEW
Chavez X PerinUnited KingdomAmy Elsner PROPOSAL
Claire D SaylorsGermanyAmy Elsner UNQUALIFIED
Aruna O SlusarskiBrazilOnyama Limba PROPOSAL
Mayumi R DilliardFranceOnyama Limba PROPOSAL
Costa Z PoquetteArgentinaAsiya Javayant NEGOTIATION
Wickens Y FigeroaIndiaAnna Fali PROPOSAL
Francesco J CaldareraIndiaElwin Sharvill NEGOTIATION
Rodrigues B SergiGermanyBernardo Dominic NEGOTIATION
Francesco F CaldareraCanadaXuxue Feng PROPOSAL
Julie E ChuiItalyStephen Shaw NEGOTIATION
Frozen Columns
Name
Arvin E Shinko
Jennifer O Rim
Chavez G Gillian
Rodrigues Z Foller
Alejandro C Morasca
Wickens N Saylors
Silvio J Butt
Aruna C Ruta
Maria H Venere
Costa I Campain
Costa U Ruta
Greenwood N Foller
Rodrigues S Caudy
Jones Y Stenseth
Chavez D Bowley
Claire Y Slusarski
Murillo D Kusko
Greenwood T Sergi
Johnson F Flosi
Maria W Briddick
Tony U Doe
Kadeem A Doe
Maisha Y Briddick
Ashley K Saylors
Aditya P Flosi
Jeanfrancois A Poquette
Clifford R Paprocki
Arvin I Venere
Alejandro B Slusarski
Clifford B Marrier
Maria Z Stenseth
Leja K Tollner
Cody H Caudy
Greenwood F Caudy
Silvio A Perin
Ashley P Inouye
Kaitlin T Gaucho
Jones J Saylors
Ashley E Nicka
Kaitlin U Oldroyd
Costa Y Vocelka
Arvin C Malet
Misaki W Wieser
David F Shinko
Maria C Kolmetz
Jefferson H Garufi
Adams D Maclead
Stacey W Glick
Rodrigues B Venere
Arvin P Darakjy
IdCountryDate
1000Italy2026-05-28
1001Japan2026-05-29
1002Spain2026-05-26
1003Australia2026-05-28
1004Spain2026-06-06
1005Germany2026-05-23
1006United Kingdom2026-06-09
1007France2026-06-14
1008Canada2026-05-25
1009Germany2026-06-12
1010France2026-06-01
1011India2026-05-24
1012Brazil2026-06-14
1013Canada2026-06-15
1014Russia2026-06-19
1015France2026-05-25
1016Russia2026-06-13
1017Germany2026-06-13
1018France2026-06-20
1019Argentina2026-06-16
1020Russia2026-05-23
1021Italy2026-05-26
1022Italy2026-06-11
1023Germany2026-06-17
1024Russia2026-05-26
1025Canada2026-06-10
1026Brazil2026-06-19
1027India2026-06-11
1028Brazil2026-06-18
1029Australia2026-06-05
1030France2026-05-28
1031United Kingdom2026-05-24
1032Canada2026-05-22
1033Germany2026-05-24
1034France2026-06-17
1035Australia2026-06-20
1036Brazil2026-06-07
1037United Kingdom2026-05-30
1038Germany2026-06-20
1039Canada2026-06-02
1040Japan2026-06-08
1041Spain2026-06-03
1042Australia2026-05-29
1043Russia2026-06-04
1044Canada2026-06-17
1045Australia2026-05-31
1046Spain2026-06-16
1047Australia2026-06-20
1048Canada2026-06-10
1049Japan2026-06-15

On-Demand Data

NameIdCountryDate
Maria J Oldroyd1000Japan2026-06-16
Jefferson T Morasca1001France2026-06-19
Leja P Figeroa1002Brazil2026-05-22
Johnson Y Garufi1003Brazil2026-06-04
Kaitlin W Maclead1004Italy2026-06-06
Mayumi D Ostrosky1005Spain2026-05-29
Ivar I Maclead1006Australia2026-06-04
Claire C Sergi1007Argentina2026-05-22
Mujtaba J Caldarera1008Italy2026-06-09
Leja O Stockham1009Germany2026-05-30
Deepesh J Maclead1010Italy2026-06-20
Mayumi S Gillian1011Spain2026-06-11
Costa U Bowley1012Spain2026-06-16
Tony Q Waycott1013France2026-06-19
Munro D Vocelka1014Japan2026-06-09
Izzy F Ruta1015Japan2026-06-02
Costa H Dilliard1016Australia2026-06-17
Jones X Figeroa1017Japan2026-06-04
Ivar G Inouye1018Italy2026-06-10
Nicolas I Flosi1019Russia2026-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan F GauchoItalyAmy Elsner UNQUALIFIED
Francesco P MarrierIndiaAmy Elsner NEGOTIATION
Smith J BologniaCanadaStephen Shaw RENEWAL
Murillo T SaylorsBrazilIvan Magalhaes RENEWAL
Jefferson V GlickCanadaXuxue Feng PROPOSAL
Julie Y SlusarskiGermanyIoni Bowcher NEGOTIATION
Munro X DarakjyRussiaBernardo Dominic UNQUALIFIED
Julie L RoysterSpainBernardo Dominic NEGOTIATION
James Y BologniaBrazilBernardo Dominic NEGOTIATION
Emily B BologniaJapanAmy Elsner RENEWAL
Darci W WieserBrazilXuxue Feng RENEWAL
Darci O DarakjyGermanyIoni Bowcher RENEWAL
Juan R BologniaArgentinaBernardo Dominic QUALIFIED
Johnson J SergiRussiaAsiya Javayant QUALIFIED
Wickens T AlbaresArgentinaStephen Shaw NEGOTIATION
Kaitlin P SergiJapanXuxue Feng RENEWAL
Ivar I OldroydArgentinaElwin Sharvill PROPOSAL
Maisha B CaudyJapanIvan Magalhaes NEGOTIATION
Cody A SergiGermanyAmy Elsner PROPOSAL
Chavez F FlosiArgentinaAmy Elsner RENEWAL
Kadeem U WhobreyArgentinaStephen Shaw NEW
Morrow K SergiIndiaIvan Magalhaes UNQUALIFIED
Wickens V StockhamGermanyIvan Magalhaes PROPOSAL
Aditya L GarufiIndiaXuxue Feng UNQUALIFIED
Clifford E MorascaGermanyOnyama Limba UNQUALIFIED
Julie L DarakjyIndiaIoni Bowcher QUALIFIED
Murillo A BologniaFranceXuxue Feng NEGOTIATION
Silvio Q CaudyBrazilAnna Fali NEGOTIATION
Clifford X SergiFranceIvan Magalhaes NEW
Jennifer C GlickBrazilBernardo Dominic QUALIFIED
Stacey U WieserJapanAnna Fali RENEWAL
Silvio Q RutaAustraliaElwin Sharvill UNQUALIFIED
Juan Z MarrierRussiaOnyama Limba PROPOSAL
Julie P PerinBrazilAsiya Javayant RENEWAL
Isabel G WaycottAustraliaOnyama Limba UNQUALIFIED
Alejandro R FlosiJapanAsiya Javayant RENEWAL
James C GillianItalyStephen Shaw RENEWAL
Mujtaba R NickaFranceBernardo Dominic RENEWAL
Mayumi H MacleadCanadaIoni Bowcher NEGOTIATION
Clifford N GauchoBrazilXuxue Feng QUALIFIED

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