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
Antonio C CampainRussiaBernardo Dominic PROPOSAL
Adams I ButtBrazilXuxue Feng RENEWAL
Aika K OstroskyGermanyAnna Fali NEW
Isabel G GillianItalyStephen Shaw PROPOSAL
Isabel W RutaUnited KingdomOnyama Limba QUALIFIED
Arvin G FlosiJapanAmy Elsner RENEWAL
Stacey U MorascaAustraliaIvan Magalhaes RENEWAL
James G RutaRussiaIoni Bowcher NEGOTIATION
Darci T WieserItalyElwin Sharvill RENEWAL
James C PerinAustraliaOnyama Limba UNQUALIFIED
Salvatore H IturbideSpainAsiya Javayant QUALIFIED
Mayumi O AmigonIndiaBernardo Dominic QUALIFIED
Kaitlin N WieserAustraliaXuxue Feng NEGOTIATION
Rodrigues Q RimGermanyAmy Elsner NEGOTIATION
Stacey K VocelkaUnited KingdomAsiya Javayant NEGOTIATION
Julie W NestleCanadaStephen Shaw PROPOSAL
Mujtaba G KolmetzCanadaXuxue Feng QUALIFIED
Jones P DoeSpainElwin Sharvill UNQUALIFIED
Kaitlin J PoquetteGermanyAmy Elsner NEGOTIATION
Julie K NestleArgentinaIoni Bowcher NEGOTIATION
Adams X PerinUnited KingdomOnyama Limba RENEWAL
Chavez N OstroskyGermanyAnna Fali RENEWAL
Jeanfrancois Y BowleyCanadaOnyama Limba RENEWAL
Clifford V SaylorsArgentinaOnyama Limba QUALIFIED
Leon I PoquetteGermanyXuxue Feng QUALIFIED
Emily L IturbideFranceAsiya Javayant NEGOTIATION
Claire I RoysterIndiaAsiya Javayant NEGOTIATION
Aruna G SaylorsAustraliaXuxue Feng RENEWAL
Maria X IturbideUnited KingdomAmy Elsner PROPOSAL
Darci J RulapaughArgentinaAsiya Javayant RENEWAL
Ricardo T VocelkaSpainAnna Fali NEW
Mayumi C VocelkaJapanAmy Elsner QUALIFIED
James B WhobreyAustraliaStephen Shaw QUALIFIED
Faith A DilliardIndiaElwin Sharvill RENEWAL
Ashley D DilliardJapanAmy Elsner RENEWAL
Jennifer G MaletBrazilIoni Bowcher NEW
Mujtaba B TollnerArgentinaAnna Fali NEGOTIATION
Adams W GarufiGermanyStephen Shaw UNQUALIFIED
Maria T DarakjyJapanAnna Fali PROPOSAL
Silvio V MacleadCanadaBernardo Dominic UNQUALIFIED
Leja P OldroydUnited KingdomIvan Magalhaes NEW
Francesco B BologniaItalyXuxue Feng PROPOSAL
Jefferson X GauchoRussiaAsiya Javayant RENEWAL
David R RimUnited KingdomIoni Bowcher QUALIFIED
Misaki F CaldareraGermanyElwin Sharvill RENEWAL
Ivar Z VenereArgentinaElwin Sharvill UNQUALIFIED
Faith E PoquetteAustraliaIoni Bowcher PROPOSAL
Silvio X RimBrazilAsiya Javayant RENEWAL
Nicolas Y InouyeItalyElwin Sharvill PROPOSAL
Morrow M WhobreyFranceStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Emily S AmigonAustraliaStephen Shaw UNQUALIFIED
Adams P BriddickItalyBernardo Dominic NEGOTIATION
Munro M RulapaughFranceAsiya Javayant QUALIFIED
Smith U CaldareraFranceXuxue Feng PROPOSAL
Chavez U SergiAustraliaAsiya Javayant UNQUALIFIED
Maria H WaycottGermanyAsiya Javayant QUALIFIED
Julie M CampainSpainAmy Elsner UNQUALIFIED
Isabel Q NickaCanadaStephen Shaw RENEWAL
Emily X SchemmerGermanyAnna Fali PROPOSAL
Kadeem Z MarrierUnited KingdomStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia Y FerenczBrazil2026-04-18Truhlar And Truhlar Attys QUALIFIED8Asiya Javayant
1001Murillo X AmigonUnited Kingdom2026-05-09Feltz Printing Service NEW19Stephen Shaw
1002Francesco O PaprockiSpain2026-04-22Commercial Press PROPOSAL76Elwin Sharvill
1003Tony K CaldareraJapan2026-04-27Feiner Bros QUALIFIED76Elwin Sharvill
1004Jennifer C DoeItaly2026-04-20Buckley Miller Wright QUALIFIED63Ioni Bowcher
1005James L MorascaFrance2026-04-14Printing Dimensions UNQUALIFIED43Asiya Javayant
1006Munro O GarufiAustralia2026-05-03Chemel, James L Cpa RENEWAL30Ivan Magalhaes
1007Kadeem M ShinkoJapan2026-04-18Chanay, Jeffrey A Esq QUALIFIED98Asiya Javayant
1008Stacey V SlusarskiFrance2026-05-10Printing Dimensions PROPOSAL31Ivan Magalhaes
1009Munro Z OstroskySpain2026-05-09Benton, John B Jr NEGOTIATION85Elwin Sharvill
1010Nicolas D RoysterFrance2026-04-22Chemel, James L Cpa QUALIFIED9Asiya Javayant
1011David X IturbideArgentina2026-04-14Feiner Bros NEGOTIATION87Amy Elsner
1012Mayumi V MaletItaly2026-04-20Buckley Miller Wright UNQUALIFIED22Asiya Javayant
1013Murillo Y PaprockiUnited Kingdom2026-05-04Dorl, James J Esq NEGOTIATION40Elwin Sharvill
1014Misaki I NickaRussia2026-04-16Chapman, Ross E Esq RENEWAL63Asiya Javayant
1015Salvatore Q DilliardFrance2026-04-16Chapman, Ross E Esq NEGOTIATION81Anna Fali
1016Emily B MaletGermany2026-05-08Chemel, James L Cpa PROPOSAL62Elwin Sharvill
1017Claire G IturbideIndia2026-05-02Morlong Associates UNQUALIFIED44Asiya Javayant
1018Cody O RutaCanada2026-05-04Benton, John B Jr NEGOTIATION8Anna Fali
1019Alejandro P RimRussia2026-05-04Chapman, Ross E Esq QUALIFIED21Amy Elsner
1020Jones A KuskoJapan2026-05-01King, Christopher A Esq QUALIFIED75Bernardo Dominic
1021Kadeem S SaylorsRussia2026-04-17Feltz Printing Service NEW63Elwin Sharvill
1022David L RutaArgentina2026-05-09Commercial Press NEGOTIATION34Asiya Javayant
1023Aditya G BologniaCanada2026-04-18Morlong Associates UNQUALIFIED44Ivan Magalhaes
1024Julie C KolmetzAustralia2026-04-30Chemel, James L Cpa NEGOTIATION28Ivan Magalhaes
1025Jones I GillianAustralia2026-05-08Truhlar And Truhlar Attys PROPOSAL76Amy Elsner
1026Ashley D RoysterGermany2026-04-19Rousseaux, Michael Esq PROPOSAL0Onyama Limba
1027Munro H GillianSpain2026-04-23Dorl, James J Esq UNQUALIFIED51Xuxue Feng
1028James Z FlosiGermany2026-04-23Dorl, James J Esq NEW37Onyama Limba
1029Claire J AlbaresGermany2026-05-02Dorl, James J Esq UNQUALIFIED94Bernardo Dominic
1030Jefferson I InouyeAustralia2026-04-30Benton, John B Jr RENEWAL42Bernardo Dominic
1031Silvio X AmigonIndia2026-04-27Feiner Bros UNQUALIFIED37Anna Fali
1032Salvatore W MaletItaly2026-05-13Rangoni Of Florence PROPOSAL60Amy Elsner
1033Juan Q StockhamFrance2026-04-25Dorl, James J Esq UNQUALIFIED98Bernardo Dominic
1034Izzy F InouyeJapan2026-05-03Morlong Associates PROPOSAL87Elwin Sharvill
1035Maria Q DarakjyBrazil2026-04-16Printing Dimensions PROPOSAL30Asiya Javayant
1036Jennifer Y GarufiArgentina2026-04-14Benton, John B Jr UNQUALIFIED75Ivan Magalhaes
1037Munro Z InouyeCanada2026-05-08King, Christopher A Esq NEGOTIATION25Asiya Javayant
1038Aruna X OstroskyJapan2026-05-10King, Christopher A Esq PROPOSAL36Ioni Bowcher
1039Silvio V PerinGermany2026-04-28Chapman, Ross E Esq NEW38Ioni Bowcher
1040Jefferson W InouyeItaly2026-04-24Commercial Press NEGOTIATION70Elwin Sharvill
1041Aruna W NickaBrazil2026-05-11Morlong Associates RENEWAL23Ioni Bowcher
1042Juan D BologniaGermany2026-04-14Rousseaux, Michael Esq QUALIFIED35Asiya Javayant
1043Jennifer A SaylorsArgentina2026-04-26Printing Dimensions NEW94Ivan Magalhaes
1044Emily S DoeAustralia2026-04-28Printing Dimensions PROPOSAL84Elwin Sharvill
1045Mayumi J GillianGermany2026-04-23King, Christopher A Esq UNQUALIFIED68Amy Elsner
1046Aditya R ButtFrance2026-04-22Buckley Miller Wright NEW24Anna Fali
1047Adams M TollnerRussia2026-04-19Rousseaux, Michael Esq PROPOSAL89Ioni Bowcher
1048Francesco K KuskoCanada2026-04-21Feiner Bros NEW25Ioni Bowcher
1049Claire H FerenczItaly2026-04-28Rousseaux, Michael Esq QUALIFIED52Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ivar O VenereBrazilElwin Sharvill NEW
Cody Z ButtItalyIoni Bowcher RENEWAL
Kaitlin C OldroydAustraliaOnyama Limba RENEWAL
Stacey Z RulapaughSpainBernardo Dominic UNQUALIFIED
Isabel U OstroskyItalyAsiya Javayant NEGOTIATION
Tony Z NestleAustraliaBernardo Dominic RENEWAL
Clifford P MaletArgentinaElwin Sharvill NEW
Jennifer P MaletFranceIoni Bowcher NEGOTIATION
Stacey N WieserBrazilAnna Fali RENEWAL
Johnson X TollnerUnited KingdomBernardo Dominic NEGOTIATION
Juan W CaldareraIndiaOnyama Limba RENEWAL
Mujtaba G PaprockiRussiaIoni Bowcher NEW
Murillo R WhobreySpainAmy Elsner RENEWAL
Aika N OstroskyFranceXuxue Feng RENEWAL
Stacey S KolmetzBrazilStephen Shaw UNQUALIFIED
Munro B FigeroaFranceOnyama Limba PROPOSAL
Greenwood D NickaSpainAnna Fali NEGOTIATION
Aika S CaudyUnited KingdomIoni Bowcher PROPOSAL
Stacey O PaprockiFranceAmy Elsner PROPOSAL
Kadeem R MaletBrazilOnyama Limba NEW
Johnson P OstroskyUnited KingdomOnyama Limba NEGOTIATION
Darci N KuskoItalyIoni Bowcher UNQUALIFIED
James N DarakjyCanadaIvan Magalhaes NEW
Morrow C PoquetteUnited KingdomAmy Elsner QUALIFIED
Salvatore X OstroskyJapanAnna Fali RENEWAL
Greenwood W GauchoUnited KingdomIvan Magalhaes RENEWAL
Julie R MacleadUnited KingdomBernardo Dominic RENEWAL
Alejandro G FerenczUnited KingdomAmy Elsner NEGOTIATION
Maria B SchemmerFranceElwin Sharvill QUALIFIED
Maisha D KolmetzFranceIoni Bowcher NEGOTIATION
Nicolas E StensethRussiaIoni Bowcher NEGOTIATION
Silvio G PoquetteGermanyIvan Magalhaes UNQUALIFIED
Jeanfrancois F BologniaArgentinaIvan Magalhaes RENEWAL
Munro D ButtCanadaIoni Bowcher RENEWAL
Jefferson K KolmetzGermanyAnna Fali QUALIFIED
Alejandro I AmigonCanadaAmy Elsner UNQUALIFIED
Tony C ButtBrazilAnna Fali NEW
Maria M SaylorsArgentinaStephen Shaw RENEWAL
Izzy O MarrierGermanyBernardo Dominic RENEWAL
Jefferson L TollnerSpainOnyama Limba NEGOTIATION
Nicolas X CampainItalyOnyama Limba QUALIFIED
Jennifer H WieserUnited KingdomIvan Magalhaes NEGOTIATION
Murillo Q ShinkoBrazilStephen Shaw RENEWAL
Ivar B RulapaughArgentinaAsiya Javayant QUALIFIED
Clifford T CaudyItalyElwin Sharvill RENEWAL
Munro J FerenczFranceOnyama Limba NEW
Jennifer I OstroskyRussiaElwin Sharvill NEGOTIATION
Mujtaba L KolmetzGermanyAnna Fali NEGOTIATION
Izzy W StensethAustraliaIvan Magalhaes NEW
Darci N GlickGermanyBernardo Dominic RENEWAL
Frozen Columns
Name
Faith M Doe
Mayumi B Shinko
Maria K Doe
Kaitlin S Doe
Adams Y Ostrosky
Clifford P Foller
Morrow Z Bowley
Jeanfrancois G Waycott
Claire P Paprocki
Costa C Royster
Kaitlin I Poquette
Munro M Foller
Ivar G Briddick
Stacey N Rulapaugh
Tony Q Nestle
Kaitlin A Waycott
Isabel C Morasca
Jennifer H Schemmer
David V Sergi
Salvatore V Wieser
Faith E Glick
Faith M Caldarera
Alejandro L Tollner
Sinclair K Albares
Nicolas Y Butt
Maria U Oldroyd
Nicolas Z Rulapaugh
Misaki K Ostrosky
Smith L Venere
Julie F Glick
Izzy Z Vocelka
Francesco K Garufi
Julie O Figeroa
Jeanfrancois Q Figeroa
Munro U Venere
Octavia G Sergi
Chavez G Nicka
Aruna W Shinko
Smith F Tollner
Juan J Briddick
Deepesh J Kolmetz
Silvio I Ruta
Faith R Ruta
Wickens X Poquette
Nicolas I Wieser
Leja I Marrier
Emily K Whobrey
Kadeem D Gillian
Izzy U Dilliard
Antonio Y Iturbide
IdCountryDate
1000Italy2026-05-13
1001Spain2026-05-06
1002Japan2026-04-26
1003Brazil2026-04-26
1004Spain2026-05-05
1005France2026-04-29
1006Brazil2026-04-15
1007France2026-04-28
1008Brazil2026-04-18
1009France2026-05-13
1010Australia2026-05-02
1011United Kingdom2026-05-04
1012Brazil2026-05-07
1013Japan2026-04-28
1014India2026-04-22
1015India2026-04-17
1016Germany2026-04-28
1017United Kingdom2026-05-01
1018India2026-04-19
1019Canada2026-04-27
1020Spain2026-04-22
1021United Kingdom2026-05-11
1022Germany2026-04-18
1023Japan2026-04-21
1024India2026-04-27
1025France2026-04-25
1026Russia2026-04-30
1027Spain2026-05-01
1028Australia2026-04-28
1029Argentina2026-05-01
1030Japan2026-04-30
1031Brazil2026-05-06
1032India2026-04-24
1033Australia2026-05-09
1034France2026-05-07
1035Canada2026-05-05
1036France2026-04-22
1037Spain2026-04-21
1038United Kingdom2026-05-07
1039Australia2026-04-30
1040Germany2026-05-10
1041France2026-05-07
1042United Kingdom2026-04-23
1043France2026-04-14
1044Argentina2026-05-11
1045Italy2026-04-15
1046India2026-05-13
1047Australia2026-05-13
1048Brazil2026-05-13
1049Russia2026-04-19

On-Demand Data

NameIdCountryDate
Rodrigues R Stockham1000France2026-04-18
Francesco Q Caldarera1001Spain2026-05-01
James O Stockham1002Japan2026-05-12
Isabel D Waycott1003Germany2026-04-19
Rodrigues E Ruta1004Argentina2026-05-11
Jefferson R Shinko1005Australia2026-04-23
Deepesh W Nicka1006France2026-05-08
Cody Q Kusko1007France2026-04-30
Jennifer X Stockham1008Australia2026-04-24
Munro X Figeroa1009Germany2026-04-28
Costa C Bolognia1010France2026-05-07
James O Poquette1011Argentina2026-04-18
Clifford A Flosi1012Australia2026-05-06
Juan L Rim1013Japan2026-04-21
Stacey S Caldarera1014United Kingdom2026-04-14
Aruna I Kusko1015India2026-05-05
Izzy V Wieser1016Australia2026-04-27
Johnson L Maclead1017Australia2026-04-14
Salvatore D Foller1018France2026-05-04
Alejandro S Malet1019United Kingdom2026-04-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow B WieserFranceAnna Fali NEW
Stacey W GillianFranceAmy Elsner QUALIFIED
Stacey Q BowleyRussiaStephen Shaw PROPOSAL
Julie I SergiGermanyElwin Sharvill PROPOSAL
Claire M SergiBrazilIoni Bowcher RENEWAL
Ashley I OstroskyRussiaAmy Elsner RENEWAL
Claire J StockhamUnited KingdomXuxue Feng QUALIFIED
Juan O RutaAustraliaElwin Sharvill NEW
Aika U CaldareraRussiaOnyama Limba UNQUALIFIED
Juan N MaletAustraliaOnyama Limba RENEWAL
Johnson V WhobreyUnited KingdomBernardo Dominic QUALIFIED
Tony L ChuiArgentinaAnna Fali NEW
Silvio O InouyeUnited KingdomBernardo Dominic NEW
Costa F DarakjyGermanyAmy Elsner UNQUALIFIED
Mayumi V PaprockiItalyOnyama Limba QUALIFIED
Cody Y MarrierCanadaOnyama Limba PROPOSAL
Sinclair Z PaprockiGermanyIvan Magalhaes QUALIFIED
Aruna C RimSpainElwin Sharvill NEW
Tony I AlbaresAustraliaXuxue Feng NEGOTIATION
David D VenereGermanyAmy Elsner UNQUALIFIED
Rodrigues F AmigonSpainBernardo Dominic UNQUALIFIED
Silvio W CampainAustraliaAsiya Javayant RENEWAL
Nicolas P WhobreyRussiaIoni Bowcher UNQUALIFIED
David T MarrierCanadaAsiya Javayant PROPOSAL
Sinclair U RutaAustraliaOnyama Limba QUALIFIED
Julie M OldroydArgentinaIvan Magalhaes UNQUALIFIED
Ricardo F DoeAustraliaAnna Fali RENEWAL
Deepesh O ShinkoCanadaIvan Magalhaes PROPOSAL
Isabel I DoeCanadaIoni Bowcher NEGOTIATION
David Z VenereGermanyIvan Magalhaes RENEWAL
David T DoeCanadaStephen Shaw UNQUALIFIED
Jones N PerinSpainAnna Fali UNQUALIFIED
Smith T GarufiSpainAmy Elsner QUALIFIED
Mujtaba K NickaUnited KingdomAmy Elsner RENEWAL
Wickens M MaletBrazilBernardo Dominic PROPOSAL
Ricardo I StensethItalyAsiya Javayant PROPOSAL
David N DarakjyArgentinaIvan Magalhaes RENEWAL
Juan P AlbaresSpainElwin Sharvill RENEWAL
Ricardo A InouyeBrazilElwin Sharvill UNQUALIFIED
Salvatore Q DoeArgentinaIvan Magalhaes 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.