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
Jeanfrancois W BologniaSpainAnna Fali NEGOTIATION
Costa U DarakjyIndiaXuxue Feng NEGOTIATION
Cody Y GillianArgentinaStephen Shaw NEGOTIATION
Izzy N SchemmerIndiaStephen Shaw PROPOSAL
Aruna J MacleadUnited KingdomAnna Fali RENEWAL
Mujtaba U StensethIndiaAmy Elsner NEW
Stacey D GauchoJapanIvan Magalhaes NEGOTIATION
Izzy J PoquetteArgentinaBernardo Dominic QUALIFIED
Faith R VenereCanadaElwin Sharvill PROPOSAL
Octavia X OldroydCanadaOnyama Limba PROPOSAL
Emily W AmigonUnited KingdomStephen Shaw PROPOSAL
Darci P VocelkaBrazilXuxue Feng NEGOTIATION
Rodrigues G PerinCanadaStephen Shaw QUALIFIED
Ashley G SergiBrazilIoni Bowcher RENEWAL
Sinclair H MorascaGermanyIoni Bowcher UNQUALIFIED
Johnson N SergiItalyIvan Magalhaes PROPOSAL
Cody X FlosiUnited KingdomAnna Fali PROPOSAL
Ivar Q MaletBrazilOnyama Limba RENEWAL
Jones W StensethJapanStephen Shaw NEGOTIATION
Adams G OstroskyBrazilStephen Shaw RENEWAL
Wickens O VocelkaBrazilAmy Elsner NEGOTIATION
Claire K VenereJapanElwin Sharvill RENEWAL
Salvatore M FerenczGermanyBernardo Dominic PROPOSAL
Morrow Z MacleadArgentinaXuxue Feng NEW
Stacey G ChuiGermanyIoni Bowcher RENEWAL
Munro V InouyeGermanyAnna Fali NEGOTIATION
Maria B BriddickArgentinaElwin Sharvill UNQUALIFIED
Misaki G PerinRussiaAmy Elsner NEW
Mayumi C StockhamUnited KingdomXuxue Feng NEGOTIATION
Smith U SchemmerCanadaOnyama Limba NEGOTIATION
Julie G CampainIndiaBernardo Dominic RENEWAL
Jefferson J RimArgentinaElwin Sharvill PROPOSAL
Adams K FerenczFranceStephen Shaw NEW
Kaitlin I CaudyJapanOnyama Limba PROPOSAL
Octavia Q IturbideArgentinaIoni Bowcher NEW
Jones C WhobreySpainElwin Sharvill UNQUALIFIED
Salvatore Z MaletIndiaAnna Fali NEW
Misaki R GauchoGermanyAmy Elsner UNQUALIFIED
Juan Y RimGermanyStephen Shaw RENEWAL
Nicolas R PoquetteIndiaOnyama Limba PROPOSAL
Ricardo E MaletAustraliaAmy Elsner QUALIFIED
Jennifer R CaldareraSpainAsiya Javayant QUALIFIED
Jones G GarufiIndiaIvan Magalhaes NEGOTIATION
Nicolas T BowleyBrazilXuxue Feng NEW
Emily C ShinkoIndiaIoni Bowcher NEGOTIATION
Alejandro P PerinItalyIoni Bowcher NEW
Maria S StockhamItalyStephen Shaw PROPOSAL
Ricardo T RulapaughSpainAsiya Javayant QUALIFIED
Smith P StensethAustraliaIvan Magalhaes RENEWAL
Wickens S CampainSpainIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro P WieserItalyBernardo Dominic PROPOSAL
Misaki W RutaArgentinaOnyama Limba PROPOSAL
Alejandro W FlosiIndiaOnyama Limba QUALIFIED
Faith O DoeIndiaBernardo Dominic RENEWAL
Salvatore Z CampainArgentinaIvan Magalhaes PROPOSAL
Aditya D BowleyRussiaAnna Fali UNQUALIFIED
Chavez W FigeroaGermanyStephen Shaw NEGOTIATION
Antonio N PoquetteCanadaOnyama Limba NEGOTIATION
Juan F VocelkaSpainOnyama Limba UNQUALIFIED
Costa Y TollnerRussiaAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily N GlickJapan2026-05-15Chemel, James L Cpa UNQUALIFIED22Amy Elsner
1001Rodrigues M ChuiAustralia2026-05-12Buckley Miller Wright NEGOTIATION66Xuxue Feng
1002Ashley F WieserRussia2026-05-20Commercial Press NEW67Onyama Limba
1003Kadeem K VenereAustralia2026-06-05Feltz Printing Service RENEWAL70Ioni Bowcher
1004Arvin R SaylorsSpain2026-05-19Truhlar And Truhlar Attys NEGOTIATION42Amy Elsner
1005Clifford R VocelkaIndia2026-05-19Truhlar And Truhlar Attys NEW49Ioni Bowcher
1006Costa Z OstroskyFrance2026-05-14King, Christopher A Esq PROPOSAL83Ioni Bowcher
1007Wickens V NickaRussia2026-06-09King, Christopher A Esq UNQUALIFIED92Anna Fali
1008Salvatore H SchemmerIndia2026-06-08Feiner Bros PROPOSAL31Ivan Magalhaes
1009Jefferson L FigeroaUnited Kingdom2026-06-04Benton, John B Jr NEGOTIATION69Anna Fali
1010Clifford G BriddickBrazil2026-05-30Truhlar And Truhlar Attys NEGOTIATION13Amy Elsner
1011Chavez Y AmigonCanada2026-06-04Chapman, Ross E Esq NEW44Ivan Magalhaes
1012Claire M MacleadAustralia2026-05-15Buckley Miller Wright PROPOSAL59Amy Elsner
1013Murillo O MacleadSpain2026-05-29Morlong Associates UNQUALIFIED53Ioni Bowcher
1014Stacey N WaycottUnited Kingdom2026-06-02Feiner Bros RENEWAL47Bernardo Dominic
1015Adams Z FigeroaBrazil2026-05-21Rangoni Of Florence PROPOSAL76Onyama Limba
1016Jones R DarakjyIndia2026-05-14Chanay, Jeffrey A Esq NEGOTIATION26Amy Elsner
1017Nicolas M OstroskyIndia2026-05-13Rangoni Of Florence NEGOTIATION6Anna Fali
1018Greenwood H FollerSpain2026-06-10Chanay, Jeffrey A Esq RENEWAL78Elwin Sharvill
1019David V WhobreyCanada2026-05-21Morlong Associates PROPOSAL76Anna Fali
1020Leon N KolmetzSpain2026-06-01Commercial Press UNQUALIFIED45Ivan Magalhaes
1021Ivar C DoeCanada2026-05-27Rangoni Of Florence QUALIFIED4Amy Elsner
1022Kaitlin S ShinkoBrazil2026-06-05Printing Dimensions UNQUALIFIED40Onyama Limba
1023Aika D IturbideCanada2026-05-17Rousseaux, Michael Esq RENEWAL41Stephen Shaw
1024Cody A VenereItaly2026-05-25Chanay, Jeffrey A Esq QUALIFIED98Anna Fali
1025Smith V DilliardFrance2026-05-17Truhlar And Truhlar Attys NEW27Stephen Shaw
1026Salvatore V RoysterRussia2026-05-21King, Christopher A Esq RENEWAL23Amy Elsner
1027James Q SlusarskiSpain2026-06-08Feiner Bros NEW45Amy Elsner
1028Ashley A SchemmerFrance2026-05-27Commercial Press QUALIFIED3Ivan Magalhaes
1029Antonio E KolmetzSpain2026-06-04Truhlar And Truhlar Attys QUALIFIED86Amy Elsner
1030Jennifer A AmigonItaly2026-06-07Truhlar And Truhlar Attys UNQUALIFIED35Anna Fali
1031Leja F DoeUnited Kingdom2026-05-14Benton, John B Jr PROPOSAL61Amy Elsner
1032Rodrigues K BologniaJapan2026-05-19Printing Dimensions QUALIFIED27Stephen Shaw
1033Silvio J FerenczRussia2026-05-17Chapman, Ross E Esq UNQUALIFIED67Bernardo Dominic
1034Francesco G GillianItaly2026-05-16Feltz Printing Service QUALIFIED27Anna Fali
1035Silvio A SchemmerArgentina2026-06-05Truhlar And Truhlar Attys RENEWAL46Xuxue Feng
1036Aruna W ChuiSpain2026-05-28Commercial Press RENEWAL49Amy Elsner
1037Wickens L DilliardSpain2026-06-10Buckley Miller Wright RENEWAL16Anna Fali
1038Arvin E NickaArgentina2026-05-16Rousseaux, Michael Esq QUALIFIED94Ioni Bowcher
1039Chavez F BologniaUnited Kingdom2026-05-21Commercial Press RENEWAL31Anna Fali
1040Faith K CaudySpain2026-06-04Truhlar And Truhlar Attys NEGOTIATION4Ivan Magalhaes
1041Izzy S DoeItaly2026-06-05Chapman, Ross E Esq RENEWAL76Ivan Magalhaes
1042Cody I WhobreyArgentina2026-05-24Feltz Printing Service RENEWAL38Onyama Limba
1043Misaki M FlosiArgentina2026-06-01Rangoni Of Florence UNQUALIFIED55Anna Fali
1044Munro X SlusarskiUnited Kingdom2026-05-30Dorl, James J Esq QUALIFIED15Amy Elsner
1045Julie V DoeItaly2026-05-13Morlong Associates QUALIFIED46Asiya Javayant
1046Julie U MaletArgentina2026-05-22Benton, John B Jr UNQUALIFIED38Ivan Magalhaes
1047Kadeem O SlusarskiRussia2026-05-29Buckley Miller Wright UNQUALIFIED55Stephen Shaw
1048Maisha V StensethSpain2026-05-30Chapman, Ross E Esq NEGOTIATION69Anna Fali
1049Claire A SlusarskiGermany2026-06-03King, Christopher A Esq NEW56Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Julie V WaycottFranceStephen Shaw NEGOTIATION
David F WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Smith A ButtItalyElwin Sharvill NEGOTIATION
Sinclair B ShinkoIndiaAmy Elsner NEGOTIATION
Clifford U MarrierAustraliaStephen Shaw NEW
Smith L BologniaIndiaOnyama Limba NEW
Jennifer P VenereAustraliaBernardo Dominic PROPOSAL
Mujtaba H PoquetteGermanyElwin Sharvill NEGOTIATION
Faith A BowleyBrazilAmy Elsner UNQUALIFIED
Mayumi P BowleyJapanStephen Shaw NEGOTIATION
Wickens S MaletIndiaAsiya Javayant QUALIFIED
Salvatore O RimArgentinaXuxue Feng UNQUALIFIED
Aika I KuskoAustraliaIoni Bowcher QUALIFIED
Smith U KuskoSpainBernardo Dominic PROPOSAL
David N SchemmerRussiaOnyama Limba UNQUALIFIED
Cody I RutaItalyAnna Fali NEGOTIATION
Jones R PaprockiItalyIoni Bowcher UNQUALIFIED
Leon D PaprockiBrazilAnna Fali NEGOTIATION
Costa O GarufiCanadaOnyama Limba NEW
Costa W KuskoGermanyBernardo Dominic RENEWAL
Mayumi L BowleyBrazilAmy Elsner NEGOTIATION
Rodrigues N GarufiBrazilAsiya Javayant NEGOTIATION
Sinclair L ShinkoItalyElwin Sharvill RENEWAL
Darci T RimBrazilAsiya Javayant NEW
Costa T NestleGermanyAnna Fali NEW
Antonio S PaprockiRussiaIvan Magalhaes UNQUALIFIED
Salvatore J CaudyUnited KingdomAmy Elsner PROPOSAL
Octavia L OstroskyItalyAmy Elsner RENEWAL
Murillo X GarufiAustraliaOnyama Limba UNQUALIFIED
Jeanfrancois U MarrierGermanyOnyama Limba PROPOSAL
Kadeem K VocelkaCanadaElwin Sharvill NEW
Murillo J OldroydFranceAmy Elsner QUALIFIED
Clifford P KuskoBrazilIvan Magalhaes PROPOSAL
Mujtaba Z PerinJapanXuxue Feng NEW
Maria Z FollerItalyStephen Shaw PROPOSAL
Wickens Q StockhamBrazilElwin Sharvill NEW
Cody I PoquetteIndiaXuxue Feng PROPOSAL
Aruna A RimFranceElwin Sharvill RENEWAL
Octavia D KolmetzBrazilIoni Bowcher NEW
Octavia T CaldareraJapanBernardo Dominic UNQUALIFIED
Leja W FigeroaFranceXuxue Feng UNQUALIFIED
Jones L DarakjyItalyIoni Bowcher QUALIFIED
Morrow U SergiRussiaAsiya Javayant UNQUALIFIED
Mayumi B PerinSpainOnyama Limba PROPOSAL
Mayumi A SergiAustraliaIvan Magalhaes QUALIFIED
Salvatore I MarrierUnited KingdomOnyama Limba NEGOTIATION
Tony X AmigonSpainAsiya Javayant RENEWAL
Kadeem S WaycottFranceXuxue Feng PROPOSAL
Julie Y RimArgentinaStephen Shaw NEGOTIATION
James F MorascaAustraliaXuxue Feng NEGOTIATION
Frozen Columns
Name
Misaki G Stenseth
Murillo T Caldarera
Costa H Vocelka
Maisha D Paprocki
Greenwood E Rim
Mayumi S Stenseth
Costa F Venere
Aditya U Nestle
Darci W Briddick
Sinclair S Whobrey
Sinclair E Ostrosky
Leja H Stockham
Arvin G Wieser
Antonio F Chui
Kadeem F Poquette
Mayumi Z Rulapaugh
Arvin L Slusarski
Octavia T Vocelka
Aruna S Caudy
Maria Z Ruta
Maria K Sergi
Jefferson X Whobrey
Rodrigues T Schemmer
Nicolas U Kolmetz
Aruna H Caudy
Jennifer A Shinko
Kaitlin Z Campain
Ricardo P Garufi
Adams S Stockham
Chavez H Garufi
Faith P Stenseth
Claire O Nicka
Ivar J Ferencz
Chavez F Iturbide
Salvatore K Amigon
Clifford I Poquette
Ivar S Waycott
Francesco V Oldroyd
Nicolas F Morasca
Deepesh A Nicka
Wickens L Dilliard
Francesco U Foller
Leja J Flosi
Jones I Gaucho
Nicolas W Malet
Mujtaba S Bowley
Emily H Rulapaugh
Isabel G Inouye
Ricardo N Stenseth
Alejandro T Nicka
IdCountryDate
1000United Kingdom2026-05-31
1001France2026-05-26
1002Brazil2026-05-29
1003Russia2026-06-05
1004Canada2026-05-25
1005Argentina2026-05-28
1006Argentina2026-05-19
1007France2026-06-06
1008Germany2026-06-06
1009Japan2026-05-14
1010Italy2026-05-31
1011Japan2026-06-08
1012United Kingdom2026-06-09
1013Japan2026-05-28
1014Brazil2026-06-04
1015Canada2026-05-20
1016Spain2026-05-26
1017Russia2026-05-15
1018Russia2026-06-05
1019France2026-06-06
1020France2026-05-12
1021Italy2026-05-25
1022Canada2026-05-25
1023France2026-05-17
1024Italy2026-06-10
1025Italy2026-05-23
1026United Kingdom2026-06-04
1027Argentina2026-06-05
1028India2026-05-17
1029France2026-06-04
1030France2026-06-03
1031Canada2026-05-27
1032Italy2026-05-27
1033Argentina2026-05-25
1034Brazil2026-06-02
1035Brazil2026-05-21
1036Argentina2026-05-15
1037Brazil2026-05-27
1038Japan2026-06-02
1039Russia2026-05-16
1040Italy2026-06-09
1041Brazil2026-06-10
1042Argentina2026-05-22
1043Spain2026-06-08
1044Spain2026-05-26
1045Spain2026-05-28
1046Spain2026-05-12
1047Japan2026-06-02
1048Italy2026-06-02
1049India2026-05-25

On-Demand Data

NameIdCountryDate
Jones Q Saylors1000Canada2026-05-21
Sinclair Z Ferencz1001Spain2026-06-02
Aika X Sergi1002Germany2026-05-22
Ivar D Bolognia1003Germany2026-06-10
Antonio C Gillian1004Germany2026-05-20
Cody M Ostrosky1005Italy2026-05-26
Kadeem U Chui1006Japan2026-06-05
David V Poquette1007India2026-05-14
Aika V Paprocki1008Spain2026-05-20
Smith V Campain1009Australia2026-05-16
Maisha W Ferencz1010Japan2026-05-12
Clifford W Paprocki1011United Kingdom2026-05-14
Chavez W Venere1012Canada2026-06-02
Octavia G Venere1013Brazil2026-05-25
Kaitlin G Ruta1014Japan2026-05-27
Mayumi C Slusarski1015Germany2026-05-25
Kadeem E Glick1016Brazil2026-05-19
David T Malet1017Russia2026-06-05
Cody G Royster1018Brazil2026-06-01
Misaki T Slusarski1019United Kingdom2026-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro H ButtGermanyElwin Sharvill QUALIFIED
Ricardo H DilliardSpainAmy Elsner RENEWAL
Francesco W SlusarskiIndiaAnna Fali NEGOTIATION
Sinclair Y VenereGermanyIoni Bowcher QUALIFIED
Murillo L GauchoAustraliaAmy Elsner QUALIFIED
Adams M PoquetteItalyIoni Bowcher NEW
Clifford S BowleySpainAnna Fali QUALIFIED
Adams T MaletUnited KingdomAsiya Javayant NEGOTIATION
Misaki E MaletArgentinaAnna Fali PROPOSAL
Julie F OldroydCanadaIoni Bowcher QUALIFIED
Maisha X MaletFranceElwin Sharvill UNQUALIFIED
Maisha Q MaletUnited KingdomAsiya Javayant RENEWAL
Aika G MorascaItalyXuxue Feng QUALIFIED
Aditya L FerenczJapanAnna Fali NEW
Julie P FollerRussiaStephen Shaw UNQUALIFIED
Aditya I FlosiRussiaAnna Fali NEGOTIATION
Emily H CaldareraGermanyIvan Magalhaes NEW
Silvio N FerenczItalyElwin Sharvill RENEWAL
Arvin V FlosiBrazilElwin Sharvill NEW
Leon P CaudyRussiaIvan Magalhaes UNQUALIFIED
Mujtaba E SaylorsRussiaStephen Shaw NEGOTIATION
Tony B WieserFranceStephen Shaw NEW
Claire D MarrierIndiaIoni Bowcher RENEWAL
Emily D StensethCanadaIoni Bowcher RENEWAL
Morrow J IturbideRussiaXuxue Feng QUALIFIED
Claire Q AmigonRussiaAmy Elsner NEGOTIATION
Jefferson X FlosiItalyStephen Shaw NEW
Misaki R ButtIndiaBernardo Dominic NEW
Nicolas A BowleyJapanStephen Shaw PROPOSAL
Francesco A BriddickGermanyXuxue Feng RENEWAL
Aditya R SchemmerRussiaBernardo Dominic RENEWAL
Deepesh H NestleGermanyXuxue Feng NEGOTIATION
Wickens E DarakjyItalyAmy Elsner UNQUALIFIED
Rodrigues J OstroskyRussiaAsiya Javayant UNQUALIFIED
Maria D RoysterBrazilAmy Elsner QUALIFIED
Faith Y StockhamAustraliaOnyama Limba QUALIFIED
Tony I MacleadCanadaXuxue Feng RENEWAL
Izzy J GauchoArgentinaAsiya Javayant RENEWAL
Isabel U MaletRussiaBernardo Dominic PROPOSAL
Aruna E GlickAustraliaStephen Shaw 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.