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
Munro B CaudyJapanStephen Shaw UNQUALIFIED
Faith E VenereIndiaOnyama Limba PROPOSAL
Murillo Z MacleadSpainAmy Elsner NEGOTIATION
Smith D AlbaresCanadaAnna Fali PROPOSAL
Aika Z FollerGermanyOnyama Limba PROPOSAL
Ricardo Z FigeroaGermanyAmy Elsner QUALIFIED
Maria G RoysterFranceIvan Magalhaes RENEWAL
Antonio W IturbideGermanyAsiya Javayant NEW
Nicolas U BriddickUnited KingdomBernardo Dominic RENEWAL
Kadeem W FerenczFranceAmy Elsner PROPOSAL
Deepesh W KuskoGermanyBernardo Dominic UNQUALIFIED
Munro B GarufiArgentinaOnyama Limba NEW
Octavia M DoeArgentinaElwin Sharvill RENEWAL
Claire D PerinCanadaOnyama Limba NEW
Kaitlin H ChuiGermanyBernardo Dominic UNQUALIFIED
Morrow W CaudyArgentinaAmy Elsner UNQUALIFIED
James V GlickItalyXuxue Feng RENEWAL
Jeanfrancois C BologniaBrazilAnna Fali NEW
Arvin H RoysterGermanyElwin Sharvill NEGOTIATION
Nicolas V MaletSpainXuxue Feng RENEWAL
Murillo W AmigonAustraliaXuxue Feng RENEWAL
Kadeem B SaylorsCanadaOnyama Limba NEW
Maria W FlosiArgentinaStephen Shaw UNQUALIFIED
Wickens M MacleadRussiaIoni Bowcher NEW
Cody A DoeSpainBernardo Dominic QUALIFIED
Arvin Q NestleUnited KingdomStephen Shaw QUALIFIED
Jones A MarrierCanadaAsiya Javayant NEGOTIATION
Leja I KuskoRussiaStephen Shaw RENEWAL
Costa N StensethBrazilAnna Fali QUALIFIED
Nicolas X AmigonIndiaOnyama Limba PROPOSAL
Darci P MacleadCanadaAnna Fali UNQUALIFIED
Kaitlin F BowleyUnited KingdomBernardo Dominic PROPOSAL
Isabel T GlickRussiaOnyama Limba RENEWAL
Julie H ChuiAustraliaXuxue Feng RENEWAL
Claire E VenereUnited KingdomElwin Sharvill PROPOSAL
Smith P GlickUnited KingdomXuxue Feng RENEWAL
Costa Q VenereSpainAsiya Javayant PROPOSAL
Octavia P WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Leja C DilliardSpainAsiya Javayant RENEWAL
Nicolas O WaycottSpainBernardo Dominic NEGOTIATION
Kadeem D GarufiBrazilXuxue Feng UNQUALIFIED
Maria J VocelkaSpainOnyama Limba UNQUALIFIED
Jones T NickaGermanyOnyama Limba NEW
Kaitlin X DoeAustraliaBernardo Dominic QUALIFIED
Isabel B WhobreyCanadaStephen Shaw RENEWAL
Maisha S CampainFranceAmy Elsner NEGOTIATION
Adams P FigeroaJapanOnyama Limba PROPOSAL
Munro P CampainJapanAsiya Javayant PROPOSAL
Mayumi G WieserFranceElwin Sharvill NEW
Claire D RulapaughIndiaElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Ivar A CaudyUnited KingdomStephen Shaw QUALIFIED
Clifford D DarakjyUnited KingdomElwin Sharvill NEGOTIATION
Aika G RulapaughUnited KingdomOnyama Limba QUALIFIED
Mayumi L PerinCanadaAnna Fali UNQUALIFIED
Morrow Y CaldareraFranceAsiya Javayant NEW
Maria Q RulapaughSpainIvan Magalhaes RENEWAL
Greenwood R GauchoJapanStephen Shaw UNQUALIFIED
Juan N PoquetteSpainAsiya Javayant PROPOSAL
Adams T AmigonBrazilAsiya Javayant UNQUALIFIED
Izzy X SchemmerIndiaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo G DilliardSpain2026-06-21Rousseaux, Michael Esq QUALIFIED62Onyama Limba
1001Antonio Z StensethGermany2026-06-09Rousseaux, Michael Esq PROPOSAL36Ivan Magalhaes
1002Leja B IturbideIndia2026-06-11Dorl, James J Esq UNQUALIFIED33Amy Elsner
1003Aditya A StensethGermany2026-06-01Feltz Printing Service QUALIFIED7Ioni Bowcher
1004Francesco B SaylorsIndia2026-05-31Rangoni Of Florence NEGOTIATION87Bernardo Dominic
1005Aika X MaletJapan2026-06-18Printing Dimensions PROPOSAL28Anna Fali
1006Smith S ButtGermany2026-06-05King, Christopher A Esq UNQUALIFIED69Ivan Magalhaes
1007Claire Z OldroydGermany2026-06-16Chapman, Ross E Esq NEW39Onyama Limba
1008Kadeem F SergiAustralia2026-06-16Chemel, James L Cpa NEGOTIATION95Anna Fali
1009Sinclair G WaycottGermany2026-06-12Feltz Printing Service NEGOTIATION5Ivan Magalhaes
1010Jefferson I FollerArgentina2026-06-01Dorl, James J Esq QUALIFIED60Bernardo Dominic
1011Octavia S FerenczJapan2026-06-06Rangoni Of Florence PROPOSAL40Anna Fali
1012Juan N RutaCanada2026-06-04Morlong Associates NEGOTIATION79Onyama Limba
1013Jennifer C DarakjyRussia2026-06-04Buckley Miller Wright NEGOTIATION86Anna Fali
1014Jeanfrancois H ShinkoAustralia2026-06-18Chanay, Jeffrey A Esq NEW88Anna Fali
1015Emily H DilliardAustralia2026-06-10Feltz Printing Service NEGOTIATION83Ivan Magalhaes
1016Aika U RutaSpain2026-06-21Buckley Miller Wright NEW88Elwin Sharvill
1017Ivar Q StensethBrazil2026-06-01Dorl, James J Esq NEGOTIATION21Xuxue Feng
1018Kaitlin M SchemmerItaly2026-06-15Feltz Printing Service QUALIFIED61Asiya Javayant
1019Ivar K MaletJapan2026-06-12Dorl, James J Esq NEW57Stephen Shaw
1020Aditya F WhobreyRussia2026-06-23Buckley Miller Wright NEGOTIATION46Bernardo Dominic
1021Smith G RutaIndia2026-06-22King, Christopher A Esq QUALIFIED39Onyama Limba
1022Kadeem C InouyeCanada2026-06-09Benton, John B Jr PROPOSAL92Asiya Javayant
1023Juan U BriddickRussia2026-06-23Commercial Press NEW58Ivan Magalhaes
1024Greenwood U WieserIndia2026-06-24Chemel, James L Cpa RENEWAL20Bernardo Dominic
1025James J DoeAustralia2026-06-25Morlong Associates UNQUALIFIED92Xuxue Feng
1026Maria C WhobreyIndia2026-06-12Chanay, Jeffrey A Esq NEGOTIATION87Ioni Bowcher
1027Jones M BologniaAustralia2026-06-04Rangoni Of Florence NEGOTIATION71Asiya Javayant
1028Darci J WaycottGermany2026-06-23Chanay, Jeffrey A Esq QUALIFIED21Ioni Bowcher
1029Alejandro J SergiSpain2026-06-08Dorl, James J Esq NEW70Xuxue Feng
1030Isabel T RimJapan2026-06-01Feiner Bros QUALIFIED34Bernardo Dominic
1031Jeanfrancois Q ButtCanada2026-06-03Chapman, Ross E Esq NEGOTIATION23Ioni Bowcher
1032Jeanfrancois V PoquetteSpain2026-06-07Rousseaux, Michael Esq QUALIFIED24Bernardo Dominic
1033Silvio B ShinkoRussia2026-06-01Benton, John B Jr QUALIFIED8Asiya Javayant
1034Jennifer J OstroskyJapan2026-06-10Feiner Bros QUALIFIED32Ivan Magalhaes
1035Jeanfrancois P FerenczRussia2026-06-11Benton, John B Jr UNQUALIFIED97Amy Elsner
1036Aruna Q AmigonItaly2026-06-13Chanay, Jeffrey A Esq RENEWAL64Stephen Shaw
1037Kaitlin A OstroskyRussia2026-06-09Chemel, James L Cpa QUALIFIED75Elwin Sharvill
1038Izzy T MarrierUnited Kingdom2026-06-18Morlong Associates NEW92Amy Elsner
1039Isabel K IturbideItaly2026-05-28Benton, John B Jr NEW62Ioni Bowcher
1040Morrow I MarrierBrazil2026-06-16Rangoni Of Florence NEGOTIATION43Elwin Sharvill
1041Arvin F DilliardSpain2026-06-08Benton, John B Jr NEW63Elwin Sharvill
1042Deepesh A PoquetteItaly2026-06-25Benton, John B Jr RENEWAL80Xuxue Feng
1043Darci Y PerinRussia2026-06-14Chapman, Ross E Esq UNQUALIFIED16Anna Fali
1044Claire Q DoeSpain2026-06-24Buckley Miller Wright NEGOTIATION59Elwin Sharvill
1045Ricardo F SaylorsGermany2026-06-03Chanay, Jeffrey A Esq QUALIFIED93Anna Fali
1046Aika M FigeroaJapan2026-05-30Truhlar And Truhlar Attys QUALIFIED71Anna Fali
1047Octavia Q VocelkaAustralia2026-06-21Commercial Press PROPOSAL2Stephen Shaw
1048Smith N WaycottFrance2026-06-12Morlong Associates PROPOSAL12Ivan Magalhaes
1049Nicolas D DoeRussia2026-06-07Chemel, James L Cpa UNQUALIFIED89Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jones K KuskoIndiaAmy Elsner NEW
Faith E CaudyJapanBernardo Dominic QUALIFIED
James D AmigonFranceIvan Magalhaes NEGOTIATION
Aruna P SlusarskiArgentinaAnna Fali QUALIFIED
Jones B PaprockiSpainBernardo Dominic NEW
Mayumi R PoquetteSpainXuxue Feng QUALIFIED
Claire R NestleIndiaIoni Bowcher RENEWAL
Deepesh J GauchoJapanAsiya Javayant NEGOTIATION
Aruna J ButtUnited KingdomOnyama Limba UNQUALIFIED
Ivar X RulapaughJapanStephen Shaw NEW
Mujtaba Z GauchoJapanIvan Magalhaes NEGOTIATION
Ivar Z SergiGermanyBernardo Dominic RENEWAL
Jefferson Z GauchoGermanyAsiya Javayant QUALIFIED
Maisha D VocelkaGermanyXuxue Feng NEGOTIATION
Octavia K ButtJapanAmy Elsner NEW
Wickens G WhobreyFranceIoni Bowcher NEGOTIATION
Leon K GillianCanadaIoni Bowcher UNQUALIFIED
Antonio Q BriddickItalyIvan Magalhaes PROPOSAL
Isabel F SchemmerSpainBernardo Dominic NEW
Adams D MaletArgentinaAnna Fali QUALIFIED
Greenwood Y ButtBrazilStephen Shaw QUALIFIED
Misaki K CaldareraItalyIoni Bowcher RENEWAL
Clifford J PaprockiIndiaBernardo Dominic NEW
Murillo Y VenereIndiaIoni Bowcher PROPOSAL
Mayumi F OldroydGermanyIvan Magalhaes QUALIFIED
Ivar O CaldareraAustraliaIoni Bowcher RENEWAL
Aika A RulapaughFranceAmy Elsner NEGOTIATION
Aika Q AmigonArgentinaXuxue Feng NEW
Leon Q VocelkaArgentinaElwin Sharvill NEW
Clifford J MaletBrazilIvan Magalhaes PROPOSAL
Johnson L IturbideAustraliaIoni Bowcher QUALIFIED
Jefferson A MarrierFranceIoni Bowcher NEGOTIATION
Johnson N StensethAustraliaXuxue Feng NEW
Munro Y FlosiFranceBernardo Dominic NEW
Deepesh T PaprockiRussiaAmy Elsner UNQUALIFIED
Maria E VenereRussiaBernardo Dominic UNQUALIFIED
Murillo C FerenczIndiaElwin Sharvill NEGOTIATION
Kaitlin A MorascaJapanOnyama Limba RENEWAL
Smith J GillianSpainBernardo Dominic NEGOTIATION
Morrow Y PoquetteAustraliaAnna Fali PROPOSAL
Aditya F NestleRussiaOnyama Limba NEGOTIATION
Wickens A PoquetteSpainIvan Magalhaes RENEWAL
Salvatore I GillianRussiaXuxue Feng UNQUALIFIED
Stacey O MacleadBrazilStephen Shaw QUALIFIED
Greenwood W GarufiCanadaAmy Elsner UNQUALIFIED
Clifford H VenereUnited KingdomXuxue Feng NEW
Kaitlin E AmigonArgentinaOnyama Limba NEW
Munro E OldroydRussiaAsiya Javayant RENEWAL
Jeanfrancois B TollnerJapanIoni Bowcher NEW
Costa P WieserItalyAnna Fali PROPOSAL
Frozen Columns
Name
Emily D Maclead
Leon P Paprocki
Nicolas D Poquette
Faith J Gillian
Maisha I Dilliard
Cody L Tollner
Alejandro G Tollner
Ashley E Doe
Munro H Saylors
Izzy H Albares
Munro W Paprocki
Francesco U Sergi
Leon K Whobrey
Ashley Y Marrier
Octavia J Rim
Morrow K Wieser
Ivar B Nicka
Costa C Malet
Francesco E Rulapaugh
Alejandro F Caudy
Munro Y Albares
Faith G Caldarera
Smith P Garufi
Salvatore O Kolmetz
Deepesh O Kolmetz
Ricardo L Briddick
Ricardo N Caudy
Wickens Q Foller
Emily H Venere
Clifford H Rim
Silvio S Kolmetz
Clifford F Whobrey
Jefferson M Stenseth
Ivar V Inouye
Leja X Stockham
Cody O Doe
Aditya E Whobrey
Chavez Q Inouye
Ivar U Shinko
Claire B Whobrey
Deepesh O Darakjy
Tony U Venere
Murillo I Waycott
Nicolas L Gaucho
Aditya Z Glick
Faith Y Iturbide
Silvio D Stockham
Ricardo G Nicka
Greenwood O Briddick
Julie O Amigon
IdCountryDate
1000India2026-06-19
1001Italy2026-06-20
1002France2026-06-13
1003India2026-06-08
1004Argentina2026-05-28
1005Canada2026-06-18
1006Japan2026-06-09
1007Russia2026-05-29
1008Italy2026-06-07
1009India2026-05-29
1010Argentina2026-06-23
1011Spain2026-06-05
1012Argentina2026-06-12
1013United Kingdom2026-06-18
1014Russia2026-06-23
1015United Kingdom2026-06-17
1016Spain2026-06-20
1017Spain2026-06-10
1018Spain2026-06-24
1019Australia2026-06-21
1020Brazil2026-06-01
1021Spain2026-06-15
1022Italy2026-05-29
1023Australia2026-06-04
1024Italy2026-06-09
1025France2026-06-11
1026United Kingdom2026-05-29
1027Brazil2026-06-01
1028India2026-06-11
1029Spain2026-06-12
1030Australia2026-06-06
1031Italy2026-06-09
1032United Kingdom2026-06-01
1033Russia2026-06-11
1034Spain2026-06-09
1035Australia2026-06-11
1036Germany2026-06-25
1037Canada2026-06-20
1038Russia2026-06-12
1039Canada2026-06-05
1040Italy2026-06-24
1041France2026-06-05
1042Brazil2026-06-10
1043Australia2026-06-16
1044France2026-06-12
1045France2026-06-14
1046Japan2026-05-28
1047France2026-06-18
1048Australia2026-06-08
1049India2026-06-08

On-Demand Data

NameIdCountryDate
Ivar R Dilliard1000Italy2026-06-07
Maisha W Figeroa1001France2026-06-21
Greenwood Q Albares1002Italy2026-05-29
Alejandro E Nestle1003Spain2026-06-23
Cody J Saylors1004Spain2026-06-08
Claire I Glick1005Russia2026-06-25
Jeanfrancois P Rulapaugh1006Japan2026-06-23
Clifford D Nicka1007Argentina2026-06-03
Wickens E Butt1008Brazil2026-06-24
Alejandro S Rulapaugh1009Argentina2026-06-22
Munro A Kolmetz1010Canada2026-06-10
Jefferson W Stockham1011Japan2026-06-23
Nicolas Q Vocelka1012Germany2026-05-29
Nicolas S Malet1013France2026-06-25
Misaki K Rim1014Argentina2026-06-04
Kadeem Z Foller1015Brazil2026-06-23
Greenwood P Foller1016Italy2026-06-23
Deepesh K Malet1017Germany2026-06-18
Kaitlin T Dilliard1018Argentina2026-06-13
Clifford K Slusarski1019Australia2026-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony F RoysterItalyXuxue Feng QUALIFIED
Kadeem H OstroskyAustraliaAnna Fali UNQUALIFIED
Murillo N PaprockiItalyElwin Sharvill UNQUALIFIED
James N MacleadItalyIoni Bowcher PROPOSAL
Salvatore V RulapaughArgentinaBernardo Dominic PROPOSAL
Izzy U BriddickCanadaAnna Fali QUALIFIED
Sinclair A RimAustraliaIoni Bowcher NEGOTIATION
Costa I GauchoAustraliaElwin Sharvill UNQUALIFIED
Alejandro Z RutaUnited KingdomAmy Elsner NEW
Kaitlin I NickaBrazilAmy Elsner NEGOTIATION
Deepesh H NickaUnited KingdomOnyama Limba UNQUALIFIED
Leon A MaletIndiaXuxue Feng UNQUALIFIED
Jones Y VenereArgentinaAmy Elsner UNQUALIFIED
Misaki T VenereJapanXuxue Feng UNQUALIFIED
Aika W FollerSpainIvan Magalhaes NEGOTIATION
Isabel Q AlbaresRussiaElwin Sharvill UNQUALIFIED
Greenwood E RimIndiaOnyama Limba RENEWAL
Silvio N SchemmerItalyAsiya Javayant UNQUALIFIED
Antonio H DarakjyIndiaIvan Magalhaes PROPOSAL
Johnson J GauchoSpainAmy Elsner UNQUALIFIED
Aditya D SchemmerRussiaIoni Bowcher NEGOTIATION
Arvin R SaylorsArgentinaAsiya Javayant UNQUALIFIED
Smith N DarakjySpainBernardo Dominic NEGOTIATION
Johnson F GauchoJapanIoni Bowcher NEW
Johnson Z AmigonUnited KingdomStephen Shaw QUALIFIED
Aruna E SergiIndiaAsiya Javayant PROPOSAL
Faith R MacleadRussiaAmy Elsner RENEWAL
Leon G PerinCanadaAnna Fali QUALIFIED
Adams P ChuiAustraliaAsiya Javayant NEGOTIATION
Emily K VocelkaAustraliaAmy Elsner UNQUALIFIED
Chavez P KuskoSpainAnna Fali RENEWAL
Jeanfrancois J StensethFranceOnyama Limba NEW
Francesco A DarakjyRussiaOnyama Limba NEW
Cody S CaudyFranceXuxue Feng QUALIFIED
Claire T FigeroaIndiaStephen Shaw QUALIFIED
James D RutaGermanyBernardo Dominic NEGOTIATION
Deepesh H ShinkoSpainAmy Elsner PROPOSAL
Aruna U MarrierIndiaAmy Elsner RENEWAL
Maisha L ButtFranceAsiya Javayant RENEWAL
Jeanfrancois D OstroskyCanadaElwin Sharvill PROPOSAL

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