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
Nicolas X MaletItalyAsiya Javayant UNQUALIFIED
Leon Z CaudySpainAsiya Javayant PROPOSAL
Jennifer Q IturbideSpainAsiya Javayant PROPOSAL
Alejandro Y SlusarskiJapanElwin Sharvill NEGOTIATION
Francesco Q OldroydAustraliaIvan Magalhaes UNQUALIFIED
Nicolas U CaldareraItalyAnna Fali QUALIFIED
Aruna Y RulapaughSpainAsiya Javayant RENEWAL
Smith X GarufiRussiaAnna Fali NEGOTIATION
Greenwood T NickaRussiaBernardo Dominic RENEWAL
Costa I OldroydJapanIvan Magalhaes NEGOTIATION
Faith M DoeItalyIvan Magalhaes PROPOSAL
Greenwood T DarakjyAustraliaBernardo Dominic QUALIFIED
Ashley E RoysterAustraliaElwin Sharvill NEW
Kadeem M WaycottArgentinaAnna Fali UNQUALIFIED
Octavia Z PaprockiArgentinaXuxue Feng RENEWAL
Leon Q AmigonBrazilAsiya Javayant NEW
Mayumi E AlbaresArgentinaIvan Magalhaes UNQUALIFIED
Leja W IturbideAustraliaAmy Elsner UNQUALIFIED
Julie T GlickGermanyAmy Elsner QUALIFIED
Rodrigues V FigeroaArgentinaStephen Shaw UNQUALIFIED
Costa T AlbaresSpainOnyama Limba UNQUALIFIED
Mayumi I MarrierSpainXuxue Feng QUALIFIED
Maisha R NickaUnited KingdomAmy Elsner UNQUALIFIED
Leon Z RimIndiaAnna Fali UNQUALIFIED
Nicolas E FlosiItalyStephen Shaw QUALIFIED
Sinclair I NestleRussiaAsiya Javayant UNQUALIFIED
Nicolas J IturbideFranceIvan Magalhaes RENEWAL
Izzy B OldroydGermanyElwin Sharvill UNQUALIFIED
Octavia X RoysterRussiaOnyama Limba QUALIFIED
James M SaylorsAustraliaIoni Bowcher UNQUALIFIED
Deepesh N VocelkaGermanyStephen Shaw PROPOSAL
Deepesh R BowleyJapanIoni Bowcher RENEWAL
Kadeem M FollerFranceAsiya Javayant RENEWAL
Rodrigues K OstroskyUnited KingdomAnna Fali UNQUALIFIED
Rodrigues H RoysterGermanyXuxue Feng PROPOSAL
Kadeem D RoysterBrazilElwin Sharvill QUALIFIED
Juan Q BriddickItalyOnyama Limba RENEWAL
Aruna V MacleadFranceStephen Shaw RENEWAL
James C GillianUnited KingdomStephen Shaw RENEWAL
Arvin M IturbideItalyStephen Shaw RENEWAL
Morrow Y FlosiUnited KingdomElwin Sharvill PROPOSAL
Darci M IturbideUnited KingdomAnna Fali NEGOTIATION
Ricardo E KolmetzAustraliaElwin Sharvill RENEWAL
Salvatore E PoquetteCanadaOnyama Limba UNQUALIFIED
Juan S FollerUnited KingdomIoni Bowcher UNQUALIFIED
Cody K SaylorsJapanXuxue Feng NEGOTIATION
David L KuskoRussiaStephen Shaw NEW
Antonio D BowleySpainAsiya Javayant PROPOSAL
Munro P OstroskyBrazilBernardo Dominic RENEWAL
Isabel F PoquetteRussiaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Tony J GauchoItalyElwin Sharvill PROPOSAL
Rodrigues J TollnerBrazilAmy Elsner UNQUALIFIED
Salvatore K SergiGermanyAmy Elsner QUALIFIED
Aditya C InouyeFranceElwin Sharvill NEGOTIATION
Francesco K RoysterArgentinaAmy Elsner UNQUALIFIED
Octavia I WhobreyRussiaIvan Magalhaes QUALIFIED
Ivar A DarakjyCanadaAsiya Javayant RENEWAL
Greenwood P ShinkoRussiaXuxue Feng QUALIFIED
David S NestleAustraliaStephen Shaw RENEWAL
Nicolas X MorascaJapanAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin U RoysterSpain2026-04-04Truhlar And Truhlar Attys RENEWAL92Elwin Sharvill
1001Francesco T RulapaughBrazil2026-04-12Buckley Miller Wright PROPOSAL13Ivan Magalhaes
1002Murillo C MorascaUnited Kingdom2026-03-29Feltz Printing Service PROPOSAL67Elwin Sharvill
1003Emily R FlosiUnited Kingdom2026-04-18Printing Dimensions UNQUALIFIED81Amy Elsner
1004Octavia A FlosiItaly2026-03-21Buckley Miller Wright PROPOSAL44Ivan Magalhaes
1005Jennifer O VenereAustralia2026-04-17Buckley Miller Wright QUALIFIED83Anna Fali
1006Kaitlin A PaprockiAustralia2026-03-27Rousseaux, Michael Esq UNQUALIFIED78Elwin Sharvill
1007Alejandro Z SlusarskiItaly2026-03-23Feltz Printing Service QUALIFIED47Stephen Shaw
1008Jennifer C ButtArgentina2026-03-27Printing Dimensions UNQUALIFIED29Asiya Javayant
1009James K MorascaJapan2026-04-09Morlong Associates NEW36Anna Fali
1010Alejandro I SlusarskiJapan2026-04-02Dorl, James J Esq NEW57Stephen Shaw
1011Faith U StockhamIndia2026-04-11Chapman, Ross E Esq NEGOTIATION10Onyama Limba
1012Salvatore K FerenczBrazil2026-04-14Morlong Associates NEW77Xuxue Feng
1013Darci Q MaletGermany2026-04-15Benton, John B Jr RENEWAL62Bernardo Dominic
1014Maria D PoquetteRussia2026-04-01King, Christopher A Esq RENEWAL12Stephen Shaw
1015Johnson W FerenczAustralia2026-03-20Rangoni Of Florence UNQUALIFIED9Bernardo Dominic
1016Maisha Z WieserBrazil2026-03-27Chemel, James L Cpa UNQUALIFIED10Anna Fali
1017Sinclair V RulapaughArgentina2026-04-06Printing Dimensions NEW27Bernardo Dominic
1018Jefferson I CaudyGermany2026-04-06Chapman, Ross E Esq PROPOSAL43Ioni Bowcher
1019Aika D FollerItaly2026-04-10Truhlar And Truhlar Attys NEGOTIATION19Ivan Magalhaes
1020Johnson S PaprockiCanada2026-04-03Morlong Associates RENEWAL45Anna Fali
1021Jones U ChuiCanada2026-03-20Chanay, Jeffrey A Esq PROPOSAL74Anna Fali
1022Stacey V SchemmerGermany2026-04-14Printing Dimensions NEW34Elwin Sharvill
1023Alejandro P StockhamSpain2026-03-24Truhlar And Truhlar Attys PROPOSAL93Anna Fali
1024Stacey W BowleyBrazil2026-04-01Commercial Press PROPOSAL8Ioni Bowcher
1025Faith Z WhobreyBrazil2026-04-04King, Christopher A Esq UNQUALIFIED51Stephen Shaw
1026Rodrigues D WieserCanada2026-03-27Truhlar And Truhlar Attys UNQUALIFIED96Stephen Shaw
1027Murillo M OldroydUnited Kingdom2026-04-16Feiner Bros UNQUALIFIED74Bernardo Dominic
1028Alejandro J WaycottBrazil2026-03-23Morlong Associates RENEWAL46Ivan Magalhaes
1029Ivar U BriddickAustralia2026-04-16Feiner Bros PROPOSAL71Bernardo Dominic
1030Emily D InouyeAustralia2026-03-20Chemel, James L Cpa NEW37Amy Elsner
1031Emily M MorascaJapan2026-03-23Chapman, Ross E Esq RENEWAL67Bernardo Dominic
1032Kaitlin T TollnerArgentina2026-04-14Benton, John B Jr RENEWAL77Elwin Sharvill
1033Julie B RimCanada2026-04-18King, Christopher A Esq RENEWAL23Xuxue Feng
1034Claire F CampainIndia2026-04-14Morlong Associates QUALIFIED64Elwin Sharvill
1035Aika R WieserAustralia2026-03-24Rangoni Of Florence RENEWAL67Stephen Shaw
1036Ricardo X KolmetzArgentina2026-03-30King, Christopher A Esq QUALIFIED80Elwin Sharvill
1037Morrow B MaletItaly2026-04-12Morlong Associates RENEWAL34Ioni Bowcher
1038Kadeem Y PoquetteBrazil2026-04-14Morlong Associates NEW80Amy Elsner
1039Aruna U GlickAustralia2026-04-18Truhlar And Truhlar Attys UNQUALIFIED19Asiya Javayant
1040Claire L OstroskyFrance2026-03-23Printing Dimensions PROPOSAL96Amy Elsner
1041Johnson A RutaGermany2026-03-28Benton, John B Jr PROPOSAL54Anna Fali
1042Silvio S VenereItaly2026-03-26Benton, John B Jr QUALIFIED52Ivan Magalhaes
1043Kaitlin N GarufiRussia2026-04-14Chapman, Ross E Esq RENEWAL85Anna Fali
1044Alejandro R ButtItaly2026-03-21Benton, John B Jr PROPOSAL61Amy Elsner
1045Ashley Q AlbaresIndia2026-04-06Benton, John B Jr PROPOSAL70Anna Fali
1046Kadeem X VenereArgentina2026-03-24Benton, John B Jr NEGOTIATION37Bernardo Dominic
1047Aika Z FigeroaCanada2026-03-25Morlong Associates PROPOSAL50Elwin Sharvill
1048Jennifer V DoeAustralia2026-04-09Chemel, James L Cpa NEGOTIATION53Bernardo Dominic
1049Mayumi K AlbaresAustralia2026-03-27Benton, John B Jr QUALIFIED50Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Darci V SlusarskiCanadaIoni Bowcher RENEWAL
Darci J ChuiAustraliaAnna Fali QUALIFIED
Silvio J KolmetzRussiaAnna Fali PROPOSAL
Maisha K OldroydFranceIvan Magalhaes NEGOTIATION
Izzy F MaletSpainStephen Shaw UNQUALIFIED
Aika U FerenczAustraliaXuxue Feng PROPOSAL
Claire E DoeSpainXuxue Feng PROPOSAL
Sinclair Y SaylorsItalyIvan Magalhaes RENEWAL
Maria G StockhamArgentinaXuxue Feng PROPOSAL
Greenwood A FlosiItalyOnyama Limba UNQUALIFIED
Murillo F IturbideFranceIvan Magalhaes UNQUALIFIED
Sinclair L DoeGermanyXuxue Feng NEGOTIATION
Aditya S ShinkoArgentinaXuxue Feng UNQUALIFIED
Johnson Q PaprockiItalyAsiya Javayant PROPOSAL
Claire Q GauchoFranceAsiya Javayant RENEWAL
Costa S FlosiRussiaAsiya Javayant QUALIFIED
Aruna F WhobreyFranceIoni Bowcher QUALIFIED
Silvio P AmigonFranceIvan Magalhaes NEW
Murillo I RulapaughSpainAmy Elsner NEGOTIATION
Ashley C GlickSpainXuxue Feng NEGOTIATION
Ashley Y WaycottArgentinaAnna Fali RENEWAL
Mayumi H NestleAustraliaStephen Shaw UNQUALIFIED
Stacey B GarufiSpainIoni Bowcher QUALIFIED
Maria O KuskoBrazilStephen Shaw NEW
Aditya Y BriddickUnited KingdomBernardo Dominic PROPOSAL
Jefferson J DoeArgentinaIvan Magalhaes QUALIFIED
Chavez G CaldareraJapanElwin Sharvill PROPOSAL
Misaki X TollnerCanadaAnna Fali PROPOSAL
Alejandro F CaudySpainAsiya Javayant NEGOTIATION
Morrow P GillianSpainOnyama Limba PROPOSAL
Tony G KolmetzJapanOnyama Limba QUALIFIED
Mayumi Z StockhamSpainBernardo Dominic RENEWAL
Izzy B MaletFranceElwin Sharvill NEGOTIATION
Kaitlin C MarrierItalyBernardo Dominic UNQUALIFIED
Munro H GlickJapanStephen Shaw NEW
Aruna U RutaFranceStephen Shaw RENEWAL
Ivar G SchemmerFranceElwin Sharvill NEW
Cody B VenereSpainAnna Fali PROPOSAL
Salvatore E TollnerRussiaAsiya Javayant NEGOTIATION
Adams D MacleadRussiaIoni Bowcher RENEWAL
Sinclair Q OstroskyItalyAmy Elsner RENEWAL
Jennifer L MaletFranceAmy Elsner QUALIFIED
Antonio T PaprockiArgentinaIvan Magalhaes PROPOSAL
Aruna D MacleadIndiaIoni Bowcher QUALIFIED
Murillo S InouyeGermanyStephen Shaw PROPOSAL
Alejandro O PoquetteSpainAnna Fali QUALIFIED
Morrow B FollerSpainOnyama Limba QUALIFIED
David E SaylorsUnited KingdomXuxue Feng RENEWAL
Mayumi R SergiArgentinaIoni Bowcher NEGOTIATION
Misaki Q FlosiFranceIoni Bowcher QUALIFIED
Frozen Columns
Name
Clifford I Caldarera
Mayumi S Kolmetz
Juan V Inouye
Nicolas B Rim
Ivar T Figeroa
Kadeem X Campain
Izzy O Royster
Juan F Campain
Antonio W Kusko
Jennifer L Morasca
Antonio G Kolmetz
Julie Z Kolmetz
Jones U Stenseth
Leja M Gaucho
Claire R Saylors
Costa H Ferencz
Julie X Nestle
Julie T Foller
Francesco I Poquette
Deepesh K Darakjy
David K Chui
Costa E Bowley
Isabel X Bowley
Darci N Venere
Kadeem Q Briddick
Tony H Dilliard
Kaitlin X Albares
James H Nestle
Aditya B Oldroyd
Leja M Slusarski
Morrow U Perin
Arvin N Briddick
Chavez Q Figeroa
Maisha I Bolognia
Octavia G Kusko
Smith W Inouye
Wickens U Iturbide
Juan P Tollner
Octavia Q Ostrosky
Leja S Figeroa
Ivar J Inouye
Kadeem C Butt
Arvin A Malet
Julie C Tollner
Costa Z Shinko
Emily B Flosi
Sinclair S Amigon
Adams F Iturbide
Jennifer K Inouye
Smith T Venere
IdCountryDate
1000Australia2026-03-22
1001Spain2026-03-29
1002Germany2026-04-18
1003Argentina2026-04-13
1004Spain2026-04-14
1005Canada2026-04-02
1006Russia2026-04-01
1007Spain2026-04-15
1008Spain2026-03-25
1009United Kingdom2026-03-30
1010Russia2026-04-05
1011France2026-04-04
1012Canada2026-03-21
1013Italy2026-04-11
1014Italy2026-04-14
1015Brazil2026-04-08
1016France2026-03-31
1017Brazil2026-03-25
1018Germany2026-03-22
1019Australia2026-04-03
1020Russia2026-04-11
1021Argentina2026-04-07
1022Australia2026-04-12
1023Canada2026-03-20
1024Italy2026-03-22
1025Australia2026-03-28
1026Brazil2026-03-27
1027Spain2026-03-29
1028Brazil2026-04-07
1029Germany2026-04-10
1030Japan2026-03-21
1031Argentina2026-03-29
1032Italy2026-03-21
1033Brazil2026-04-12
1034Spain2026-04-06
1035Brazil2026-04-08
1036United Kingdom2026-04-18
1037France2026-03-31
1038Japan2026-03-29
1039Australia2026-04-13
1040Argentina2026-04-14
1041Italy2026-04-04
1042United Kingdom2026-04-11
1043Japan2026-04-04
1044Japan2026-04-11
1045France2026-03-28
1046India2026-03-25
1047Australia2026-04-02
1048Brazil2026-03-22
1049France2026-03-25

On-Demand Data

NameIdCountryDate
Maisha T Venere1000France2026-03-30
Julie K Dilliard1001Italy2026-03-28
Faith H Butt1002Australia2026-04-13
Alejandro Y Caudy1003Germany2026-04-15
Octavia O Waycott1004Canada2026-03-24
Maisha L Rulapaugh1005Japan2026-04-10
Alejandro V Gillian1006Italy2026-03-22
Salvatore N Whobrey1007Spain2026-04-11
Leja J Waycott1008Italy2026-04-14
Mujtaba M Stenseth1009Spain2026-04-09
Greenwood C Ferencz1010France2026-04-01
Leja U Vocelka1011Germany2026-03-26
Adams W Ruta1012Russia2026-04-12
Izzy T Perin1013Brazil2026-04-16
Sinclair Q Saylors1014France2026-03-26
Costa J Nestle1015Brazil2026-03-29
Smith A Butt1016India2026-04-11
Isabel T Glick1017Italy2026-04-15
Leja C Kusko1018Japan2026-03-26
Jones W Poquette1019India2026-04-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro M NestleArgentinaIvan Magalhaes PROPOSAL
Aruna N RimGermanyAsiya Javayant UNQUALIFIED
Jefferson Z GillianUnited KingdomAnna Fali RENEWAL
Aditya K StockhamArgentinaAsiya Javayant NEGOTIATION
Aditya N DarakjyBrazilAnna Fali PROPOSAL
Tony U DarakjyArgentinaElwin Sharvill NEW
Faith F FlosiRussiaIoni Bowcher PROPOSAL
Ivar M DarakjyUnited KingdomAmy Elsner PROPOSAL
Clifford G GlickAustraliaIoni Bowcher QUALIFIED
Julie P AmigonIndiaStephen Shaw PROPOSAL
Cody H NestleItalyStephen Shaw RENEWAL
Mujtaba L GauchoCanadaOnyama Limba QUALIFIED
Murillo R BologniaCanadaBernardo Dominic UNQUALIFIED
Emily M AmigonItalyAmy Elsner UNQUALIFIED
Alejandro E KolmetzJapanIoni Bowcher NEGOTIATION
Maria Q MacleadUnited KingdomBernardo Dominic UNQUALIFIED
Aditya A OstroskyBrazilBernardo Dominic PROPOSAL
Darci D PerinGermanyAsiya Javayant NEGOTIATION
Claire X WaycottCanadaAsiya Javayant PROPOSAL
Jones B FlosiCanadaXuxue Feng RENEWAL
Misaki D GillianAustraliaIvan Magalhaes PROPOSAL
Arvin U SlusarskiIndiaAnna Fali NEGOTIATION
Munro T NestleJapanIvan Magalhaes RENEWAL
Emily T ChuiJapanOnyama Limba RENEWAL
Nicolas M KolmetzArgentinaElwin Sharvill UNQUALIFIED
Nicolas Q BriddickBrazilOnyama Limba RENEWAL
Jefferson B StockhamFranceBernardo Dominic PROPOSAL
Ivar K BowleySpainAsiya Javayant NEW
Tony X FollerAustraliaAsiya Javayant PROPOSAL
Antonio Y MorascaJapanAsiya Javayant QUALIFIED
Adams U CaudyRussiaAsiya Javayant NEW
Kadeem D InouyeIndiaIvan Magalhaes RENEWAL
Octavia M RoysterUnited KingdomStephen Shaw PROPOSAL
Jeanfrancois Z OldroydAustraliaAmy Elsner UNQUALIFIED
Maria X GillianArgentinaIvan Magalhaes QUALIFIED
Maria K DarakjyIndiaStephen Shaw RENEWAL
Adams F MaletArgentinaXuxue Feng PROPOSAL
Darci K DoeCanadaIoni Bowcher NEGOTIATION
Arvin Z PoquetteItalyXuxue Feng PROPOSAL
Munro M FigeroaJapanElwin Sharvill 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.