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
Tony W MacleadRussiaStephen Shaw RENEWAL
Aika Q OldroydGermanyStephen Shaw QUALIFIED
Claire W DilliardAustraliaAsiya Javayant NEW
Maisha D GillianJapanAmy Elsner RENEWAL
Alejandro L DilliardUnited KingdomElwin Sharvill QUALIFIED
Emily I NestleCanadaIoni Bowcher RENEWAL
Faith K RutaIndiaIvan Magalhaes NEW
Munro I StockhamIndiaStephen Shaw RENEWAL
Rodrigues E OstroskyCanadaOnyama Limba PROPOSAL
Rodrigues F OstroskyCanadaStephen Shaw QUALIFIED
Jennifer W WhobreyAustraliaOnyama Limba NEGOTIATION
Clifford X MarrierIndiaXuxue Feng UNQUALIFIED
Leja H CampainJapanStephen Shaw PROPOSAL
Greenwood Z MorascaArgentinaIvan Magalhaes NEW
Kaitlin C CampainFranceBernardo Dominic PROPOSAL
Aika O FollerRussiaOnyama Limba UNQUALIFIED
Claire T FollerArgentinaAsiya Javayant NEGOTIATION
Francesco G FlosiIndiaElwin Sharvill RENEWAL
Jeanfrancois M DilliardBrazilBernardo Dominic UNQUALIFIED
Faith Z MaletCanadaIvan Magalhaes NEW
Aika Y ChuiItalyBernardo Dominic NEW
Salvatore J ShinkoArgentinaBernardo Dominic NEW
Jeanfrancois U ChuiUnited KingdomIoni Bowcher NEGOTIATION
Salvatore G VocelkaArgentinaIvan Magalhaes QUALIFIED
Adams L GillianGermanyIoni Bowcher QUALIFIED
Deepesh B StensethCanadaAnna Fali RENEWAL
Emily T BowleyJapanStephen Shaw RENEWAL
Jeanfrancois P StockhamUnited KingdomBernardo Dominic NEGOTIATION
Salvatore D FollerJapanOnyama Limba NEGOTIATION
Deepesh Z TollnerBrazilOnyama Limba PROPOSAL
Stacey M InouyeUnited KingdomBernardo Dominic PROPOSAL
Ricardo B RulapaughArgentinaAsiya Javayant NEW
Francesco C TollnerGermanyElwin Sharvill UNQUALIFIED
Mujtaba S TollnerIndiaXuxue Feng UNQUALIFIED
Mayumi O GlickArgentinaStephen Shaw UNQUALIFIED
Claire T OstroskyItalyIoni Bowcher PROPOSAL
Juan D VocelkaGermanyElwin Sharvill QUALIFIED
Antonio P ChuiSpainAsiya Javayant NEGOTIATION
Munro J GlickCanadaStephen Shaw PROPOSAL
Smith E VenereGermanyBernardo Dominic QUALIFIED
Mujtaba F ShinkoSpainAmy Elsner PROPOSAL
Clifford F SaylorsGermanyXuxue Feng UNQUALIFIED
Maria W KuskoSpainIvan Magalhaes RENEWAL
Izzy Z StockhamGermanyAnna Fali RENEWAL
Cody Y OldroydBrazilAsiya Javayant RENEWAL
Izzy V KuskoJapanElwin Sharvill NEW
Deepesh G WaycottGermanyXuxue Feng RENEWAL
Cody T MarrierUnited KingdomXuxue Feng NEGOTIATION
Jefferson E ChuiFranceXuxue Feng RENEWAL
Leon O RoysterGermanyAnna Fali NEW
Horizontal
NameCountryRepresentativeStatus
Mayumi K PaprockiFranceElwin Sharvill QUALIFIED
Antonio X StensethSpainIvan Magalhaes RENEWAL
Munro I DarakjyJapanXuxue Feng NEW
Arvin W VenereSpainAmy Elsner QUALIFIED
Adams B SlusarskiGermanyXuxue Feng UNQUALIFIED
Chavez R CaldareraJapanOnyama Limba PROPOSAL
Wickens T PerinRussiaStephen Shaw RENEWAL
Darci Z AlbaresArgentinaIoni Bowcher NEGOTIATION
Ricardo A InouyeArgentinaIvan Magalhaes QUALIFIED
Murillo H SergiJapanElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan O InouyeBrazil2026-05-27Chemel, James L Cpa RENEWAL7Amy Elsner
1001Tony U ShinkoFrance2026-06-22King, Christopher A Esq NEGOTIATION8Ioni Bowcher
1002Maria D InouyeFrance2026-06-22Commercial Press PROPOSAL69Onyama Limba
1003Ashley P RulapaughUnited Kingdom2026-06-12Truhlar And Truhlar Attys PROPOSAL40Amy Elsner
1004Kaitlin O FigeroaArgentina2026-05-26Morlong Associates PROPOSAL35Xuxue Feng
1005Claire R IturbideJapan2026-06-05King, Christopher A Esq PROPOSAL86Asiya Javayant
1006Emily Y TollnerCanada2026-06-21Feltz Printing Service NEW89Elwin Sharvill
1007Octavia Z KuskoGermany2026-06-18Benton, John B Jr PROPOSAL18Ioni Bowcher
1008Adams T AlbaresSpain2026-05-31Printing Dimensions QUALIFIED98Ioni Bowcher
1009Emily C NickaJapan2026-06-14Chanay, Jeffrey A Esq PROPOSAL41Amy Elsner
1010Leja E CampainBrazil2026-06-16Truhlar And Truhlar Attys UNQUALIFIED52Elwin Sharvill
1011Antonio A NickaIndia2026-06-08Dorl, James J Esq UNQUALIFIED96Xuxue Feng
1012Arvin D PerinCanada2026-05-28Feiner Bros PROPOSAL30Stephen Shaw
1013Greenwood C BologniaBrazil2026-06-10King, Christopher A Esq NEGOTIATION69Elwin Sharvill
1014Kaitlin H GillianIndia2026-06-05Feltz Printing Service NEW47Bernardo Dominic
1015Kadeem L DilliardFrance2026-06-15Printing Dimensions NEW33Amy Elsner
1016Kadeem D WhobreyGermany2026-06-07Feltz Printing Service NEGOTIATION2Elwin Sharvill
1017Clifford P OstroskyGermany2026-06-11Feltz Printing Service QUALIFIED72Ioni Bowcher
1018Greenwood G NickaFrance2026-06-02Chemel, James L Cpa PROPOSAL95Bernardo Dominic
1019Aruna N ButtAustralia2026-06-06Rangoni Of Florence QUALIFIED25Anna Fali
1020Cody V CaudyBrazil2026-06-02Printing Dimensions UNQUALIFIED23Xuxue Feng
1021Adams T OstroskyArgentina2026-06-22Commercial Press RENEWAL94Stephen Shaw
1022Ivar U MaletIndia2026-06-01Commercial Press NEGOTIATION76Ioni Bowcher
1023Greenwood D DoeFrance2026-06-09Chemel, James L Cpa UNQUALIFIED84Anna Fali
1024Claire T ButtSpain2026-05-25Rangoni Of Florence UNQUALIFIED33Ioni Bowcher
1025Silvio Q MaletRussia2026-05-31Printing Dimensions NEGOTIATION12Ioni Bowcher
1026Tony P SchemmerIndia2026-05-27Commercial Press QUALIFIED50Asiya Javayant
1027Maisha X InouyeCanada2026-06-17Rangoni Of Florence RENEWAL10Ivan Magalhaes
1028Maria A ShinkoUnited Kingdom2026-06-14Truhlar And Truhlar Attys NEW28Asiya Javayant
1029Salvatore T NestleJapan2026-06-07Feiner Bros QUALIFIED91Anna Fali
1030Morrow B MarrierBrazil2026-06-07Printing Dimensions QUALIFIED57Amy Elsner
1031Octavia N ShinkoUnited Kingdom2026-05-28Feltz Printing Service UNQUALIFIED31Xuxue Feng
1032Nicolas B CaudyFrance2026-06-22Morlong Associates QUALIFIED75Amy Elsner
1033Claire H BologniaUnited Kingdom2026-06-21Chapman, Ross E Esq RENEWAL15Asiya Javayant
1034Morrow J GlickUnited Kingdom2026-05-25Feltz Printing Service NEW47Ivan Magalhaes
1035Izzy K RimAustralia2026-05-30Feiner Bros RENEWAL65Amy Elsner
1036Izzy H BologniaItaly2026-06-07Rousseaux, Michael Esq QUALIFIED26Elwin Sharvill
1037Sinclair M MaletJapan2026-06-04Feltz Printing Service NEW73Xuxue Feng
1038Jones S PerinUnited Kingdom2026-06-09Morlong Associates QUALIFIED14Xuxue Feng
1039Salvatore S SergiUnited Kingdom2026-06-01King, Christopher A Esq NEW4Xuxue Feng
1040Murillo P BowleyJapan2026-06-23Rousseaux, Michael Esq QUALIFIED58Ioni Bowcher
1041Jones H CampainArgentina2026-06-05Rangoni Of Florence PROPOSAL73Ioni Bowcher
1042Adams T SaylorsSpain2026-05-30Truhlar And Truhlar Attys RENEWAL83Ivan Magalhaes
1043Maria C KuskoBrazil2026-06-23Benton, John B Jr RENEWAL41Xuxue Feng
1044Alejandro L FigeroaGermany2026-06-20Printing Dimensions NEGOTIATION11Stephen Shaw
1045Silvio H MaletUnited Kingdom2026-05-30Feiner Bros UNQUALIFIED98Amy Elsner
1046Ashley A CaudySpain2026-05-28Rangoni Of Florence QUALIFIED28Xuxue Feng
1047Darci G TollnerItaly2026-06-10Printing Dimensions NEGOTIATION32Xuxue Feng
1048Stacey R SaylorsCanada2026-06-14Commercial Press NEW9Amy Elsner
1049Silvio Z GauchoSpain2026-06-16Rousseaux, Michael Esq QUALIFIED47Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Izzy K ShinkoFranceOnyama Limba QUALIFIED
Morrow W StockhamBrazilElwin Sharvill QUALIFIED
Maisha P CaldareraUnited KingdomIoni Bowcher PROPOSAL
Aditya D SchemmerArgentinaStephen Shaw RENEWAL
Salvatore E FigeroaCanadaStephen Shaw UNQUALIFIED
Alejandro D NickaSpainAsiya Javayant UNQUALIFIED
David T DoeBrazilIvan Magalhaes NEW
Leja C GarufiFranceIvan Magalhaes UNQUALIFIED
Mujtaba Y ChuiGermanyBernardo Dominic RENEWAL
Adams I InouyeIndiaIvan Magalhaes NEGOTIATION
Mayumi R AmigonArgentinaXuxue Feng QUALIFIED
Claire P ShinkoAustraliaBernardo Dominic RENEWAL
Clifford O NickaUnited KingdomAsiya Javayant UNQUALIFIED
Johnson S OldroydCanadaBernardo Dominic NEW
Leon G CaldareraFranceAmy Elsner QUALIFIED
Misaki J GauchoSpainOnyama Limba QUALIFIED
Kadeem W DilliardSpainAnna Fali UNQUALIFIED
Mayumi W WhobreyAustraliaBernardo Dominic RENEWAL
Salvatore R OldroydAustraliaElwin Sharvill NEW
Claire U VenereCanadaStephen Shaw UNQUALIFIED
Clifford B GillianJapanElwin Sharvill UNQUALIFIED
Juan T NickaFranceAmy Elsner QUALIFIED
Cody G FollerUnited KingdomElwin Sharvill PROPOSAL
Emily Q ShinkoUnited KingdomOnyama Limba PROPOSAL
Jefferson W RulapaughArgentinaXuxue Feng RENEWAL
Silvio P ShinkoCanadaElwin Sharvill NEW
Silvio S FollerUnited KingdomElwin Sharvill RENEWAL
Leon X RimGermanyBernardo Dominic NEW
Nicolas W FlosiArgentinaIvan Magalhaes UNQUALIFIED
Deepesh T BowleyArgentinaIvan Magalhaes UNQUALIFIED
Chavez B CaldareraFranceAsiya Javayant RENEWAL
Isabel L GillianBrazilBernardo Dominic QUALIFIED
Kaitlin V GauchoIndiaBernardo Dominic PROPOSAL
Salvatore V GillianItalyElwin Sharvill QUALIFIED
Morrow Q BriddickGermanyBernardo Dominic NEGOTIATION
Isabel W TollnerCanadaOnyama Limba NEGOTIATION
Tony D InouyeCanadaIvan Magalhaes UNQUALIFIED
Jefferson I VenereSpainBernardo Dominic QUALIFIED
Rodrigues O BologniaBrazilElwin Sharvill UNQUALIFIED
Leon Q CaldareraItalyAnna Fali RENEWAL
Maria B StensethJapanStephen Shaw UNQUALIFIED
Faith O BologniaBrazilBernardo Dominic PROPOSAL
Adams Z GlickAustraliaXuxue Feng PROPOSAL
Ashley E GauchoGermanyAsiya Javayant NEW
Leon N StensethRussiaAsiya Javayant PROPOSAL
Ashley E BriddickJapanIoni Bowcher RENEWAL
Leon H CaudyGermanyIvan Magalhaes RENEWAL
Izzy J SlusarskiUnited KingdomAsiya Javayant PROPOSAL
Jones D DilliardIndiaOnyama Limba PROPOSAL
Aruna T MaletRussiaBernardo Dominic QUALIFIED
Frozen Columns
Name
Arvin P Doe
Clifford O Kolmetz
Deepesh N Wieser
Salvatore J Doe
Munro O Flosi
Clifford G Perin
Johnson H Slusarski
Mayumi E Gaucho
Wickens T Amigon
Arvin Q Stockham
Mujtaba W Dilliard
Aruna C Marrier
Emily F Shinko
Isabel O Bowley
Jones S Darakjy
Smith N Venere
Kadeem Y Oldroyd
Munro T Darakjy
Costa K Maclead
Leon C Kolmetz
Aika Y Malet
Wickens I Stenseth
Octavia G Chui
Morrow B Kusko
Chavez Q Poquette
Murillo A Venere
Morrow F Schemmer
Costa Y Ostrosky
Mujtaba Y Vocelka
Johnson W Waycott
Smith M Darakjy
Cody L Briddick
Adams V Albares
Ivar V Garufi
Morrow O Kusko
Costa N Tollner
Aika B Shinko
Mayumi D Chui
Maria J Foller
Nicolas Q Vocelka
Smith V Stockham
Francesco L Schemmer
Deepesh Z Darakjy
Stacey F Stenseth
Stacey K Stenseth
Kaitlin D Ruta
Aika U Butt
Antonio A Shinko
Juan W Foller
James H Ostrosky
IdCountryDate
1000India2026-06-07
1001Brazil2026-06-01
1002Germany2026-05-29
1003Italy2026-06-08
1004Spain2026-05-29
1005Canada2026-06-03
1006Italy2026-06-09
1007United Kingdom2026-05-31
1008Argentina2026-06-21
1009Australia2026-06-23
1010Italy2026-06-14
1011France2026-06-01
1012Australia2026-06-09
1013United Kingdom2026-06-16
1014Russia2026-06-17
1015Russia2026-06-12
1016Canada2026-06-05
1017France2026-06-06
1018Italy2026-06-20
1019Japan2026-06-04
1020Germany2026-06-20
1021Brazil2026-06-19
1022Canada2026-06-02
1023United Kingdom2026-05-30
1024India2026-06-19
1025Argentina2026-06-23
1026Russia2026-06-06
1027Argentina2026-06-04
1028Japan2026-06-14
1029Australia2026-06-09
1030Germany2026-06-16
1031France2026-05-28
1032Russia2026-06-18
1033Brazil2026-06-13
1034France2026-06-18
1035Argentina2026-05-30
1036Russia2026-06-16
1037United Kingdom2026-06-10
1038Italy2026-06-07
1039Italy2026-06-15
1040Canada2026-06-03
1041Argentina2026-06-18
1042Russia2026-06-18
1043Russia2026-06-10
1044Japan2026-06-07
1045Germany2026-06-18
1046Spain2026-06-21
1047Russia2026-05-26
1048Spain2026-06-23
1049India2026-06-22

On-Demand Data

NameIdCountryDate
Misaki G Nicka1000Australia2026-06-13
Morrow M Glick1001Russia2026-06-06
Jefferson G Waycott1002Italy2026-06-05
Costa V Wieser1003Spain2026-06-15
Chavez C Kolmetz1004Japan2026-06-15
Darci R Ferencz1005Argentina2026-05-28
Clifford V Caudy1006Germany2026-06-16
Jefferson A Morasca1007Argentina2026-05-27
Maria Z Venere1008Spain2026-06-05
Aika V Bolognia1009Spain2026-05-25
Maisha V Bolognia1010Spain2026-06-10
Alejandro K Figeroa1011Australia2026-05-29
Aika E Dilliard1012Canada2026-06-16
Isabel D Bowley1013Australia2026-06-18
Jeanfrancois K Inouye1014India2026-06-11
Johnson C Kolmetz1015Canada2026-06-19
Leon R Amigon1016United Kingdom2026-05-29
Leon U Iturbide1017Australia2026-06-17
Johnson Q Wieser1018Italy2026-06-22
Murillo A Wieser1019Italy2026-06-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley G DoeArgentinaIvan Magalhaes QUALIFIED
Kaitlin V MaletItalyAnna Fali PROPOSAL
Chavez E GillianBrazilAsiya Javayant UNQUALIFIED
Salvatore Z VenereArgentinaElwin Sharvill PROPOSAL
Octavia E BriddickJapanIvan Magalhaes UNQUALIFIED
Wickens H AmigonCanadaIoni Bowcher UNQUALIFIED
Chavez D TollnerRussiaAnna Fali NEGOTIATION
Rodrigues M BologniaUnited KingdomStephen Shaw NEW
Maria G RimSpainOnyama Limba RENEWAL
Leja G PerinFranceIvan Magalhaes QUALIFIED
Aruna I KolmetzRussiaXuxue Feng UNQUALIFIED
Johnson N OstroskyCanadaXuxue Feng NEGOTIATION
Morrow B GlickIndiaIoni Bowcher QUALIFIED
Aditya O KuskoCanadaStephen Shaw QUALIFIED
Faith M CampainItalyIoni Bowcher UNQUALIFIED
Wickens V CaudyJapanAsiya Javayant RENEWAL
Adams Y DarakjyAustraliaAmy Elsner UNQUALIFIED
Arvin S InouyeUnited KingdomBernardo Dominic NEW
Ricardo G WieserCanadaStephen Shaw RENEWAL
Francesco E RoysterGermanyIoni Bowcher UNQUALIFIED
Clifford P RulapaughUnited KingdomIoni Bowcher QUALIFIED
Aditya U FerenczBrazilIvan Magalhaes NEGOTIATION
Murillo V NickaItalyXuxue Feng PROPOSAL
Chavez Z CampainIndiaAmy Elsner PROPOSAL
Kadeem F PaprockiRussiaElwin Sharvill UNQUALIFIED
Jeanfrancois U RoysterBrazilElwin Sharvill PROPOSAL
Faith B DilliardGermanyElwin Sharvill UNQUALIFIED
James W MaletArgentinaAnna Fali PROPOSAL
Nicolas G BologniaGermanyXuxue Feng PROPOSAL
Antonio K OstroskyJapanOnyama Limba NEGOTIATION
Tony E FlosiBrazilXuxue Feng RENEWAL
Ivar B SergiItalyBernardo Dominic NEW
Mayumi S RoysterJapanStephen Shaw NEW
Aditya S MarrierFranceBernardo Dominic PROPOSAL
Leja G RutaJapanXuxue Feng NEW
Julie E MorascaSpainBernardo Dominic UNQUALIFIED
Mujtaba L NestleFranceAnna Fali RENEWAL
Jefferson G SlusarskiUnited KingdomAsiya Javayant NEW
Faith Y CaldareraBrazilIoni Bowcher UNQUALIFIED
Cody Y SchemmerRussiaAnna Fali NEW

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