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
Arvin O GlickAustraliaXuxue Feng PROPOSAL
Mayumi L AmigonSpainAmy Elsner NEW
Juan G WaycottJapanIvan Magalhaes QUALIFIED
Arvin E WaycottAustraliaIvan Magalhaes PROPOSAL
Aditya Z OldroydCanadaBernardo Dominic NEW
Murillo Y FigeroaCanadaAmy Elsner NEGOTIATION
Greenwood T NestleAustraliaBernardo Dominic QUALIFIED
Wickens N GillianGermanyAsiya Javayant NEGOTIATION
Chavez R DilliardCanadaAsiya Javayant UNQUALIFIED
James H FigeroaRussiaIoni Bowcher RENEWAL
Leon E VocelkaBrazilIvan Magalhaes PROPOSAL
Kaitlin K NickaFranceBernardo Dominic NEGOTIATION
Aditya L WaycottFranceOnyama Limba NEW
Isabel E ShinkoFranceIvan Magalhaes NEW
Chavez E RimCanadaStephen Shaw PROPOSAL
Claire O StensethSpainAsiya Javayant QUALIFIED
Misaki T CaldareraRussiaAsiya Javayant PROPOSAL
Leon Z GlickItalyElwin Sharvill NEGOTIATION
Misaki I FerenczArgentinaIoni Bowcher NEGOTIATION
Salvatore S RulapaughRussiaBernardo Dominic QUALIFIED
Ashley A DoeAustraliaStephen Shaw QUALIFIED
Faith H FigeroaAustraliaIvan Magalhaes QUALIFIED
Jeanfrancois S MacleadIndiaIvan Magalhaes NEGOTIATION
Jennifer C FigeroaArgentinaOnyama Limba NEW
Nicolas M MorascaSpainAsiya Javayant UNQUALIFIED
Aruna I WaycottUnited KingdomElwin Sharvill NEW
Stacey C SergiCanadaIvan Magalhaes NEW
Salvatore J DarakjySpainAmy Elsner PROPOSAL
Jennifer B DilliardJapanIvan Magalhaes NEGOTIATION
Rodrigues Z WhobreyUnited KingdomXuxue Feng QUALIFIED
Deepesh B GauchoUnited KingdomAnna Fali RENEWAL
Aika X DarakjyCanadaElwin Sharvill NEGOTIATION
Maria Y AmigonBrazilBernardo Dominic NEW
Leja D PaprockiAustraliaBernardo Dominic UNQUALIFIED
Johnson A CampainItalyStephen Shaw NEW
Mujtaba H RimGermanyAnna Fali NEW
Faith P IturbideIndiaOnyama Limba NEW
Aruna S WieserCanadaIvan Magalhaes RENEWAL
Kadeem W AlbaresBrazilXuxue Feng RENEWAL
Juan Q GillianCanadaElwin Sharvill NEW
Morrow P PaprockiFranceOnyama Limba PROPOSAL
Morrow D AmigonRussiaAmy Elsner RENEWAL
Silvio A GlickAustraliaBernardo Dominic RENEWAL
Leja F NickaJapanBernardo Dominic NEW
Cody U KolmetzSpainAmy Elsner QUALIFIED
Clifford B FigeroaFranceXuxue Feng PROPOSAL
Aika U MarrierSpainBernardo Dominic UNQUALIFIED
Greenwood S NestleRussiaIoni Bowcher PROPOSAL
Darci V BowleyIndiaAsiya Javayant RENEWAL
Leon V OstroskyGermanyOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jones L PerinItalyIvan Magalhaes RENEWAL
Misaki N FigeroaRussiaElwin Sharvill PROPOSAL
Leon T SchemmerUnited KingdomAnna Fali RENEWAL
Mujtaba O MorascaIndiaOnyama Limba NEW
Ashley A FlosiIndiaIoni Bowcher NEGOTIATION
Mujtaba Z MorascaArgentinaXuxue Feng PROPOSAL
Leja V SergiRussiaIvan Magalhaes RENEWAL
Emily V NickaAustraliaElwin Sharvill NEW
Jefferson J DoeBrazilOnyama Limba UNQUALIFIED
Deepesh W TollnerRussiaElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa P IturbideArgentina2026-06-07Rousseaux, Michael Esq UNQUALIFIED29Stephen Shaw
1001Francesco A AlbaresItaly2026-06-17King, Christopher A Esq NEW14Anna Fali
1002Johnson M RimFrance2026-06-21Printing Dimensions PROPOSAL65Bernardo Dominic
1003Alejandro L WieserBrazil2026-06-09Feltz Printing Service RENEWAL97Ioni Bowcher
1004Arvin L PerinSpain2026-06-18King, Christopher A Esq NEW24Elwin Sharvill
1005Silvio W RutaAustralia2026-06-09Commercial Press QUALIFIED53Elwin Sharvill
1006Francesco Q SergiBrazil2026-06-13Dorl, James J Esq RENEWAL25Onyama Limba
1007Jennifer J WaycottGermany2026-06-17Commercial Press QUALIFIED9Ioni Bowcher
1008Claire B RimGermany2026-06-13Benton, John B Jr PROPOSAL54Amy Elsner
1009Julie W DarakjyFrance2026-05-27Chapman, Ross E Esq QUALIFIED21Ivan Magalhaes
1010Emily M AlbaresRussia2026-06-20Rousseaux, Michael Esq NEW24Stephen Shaw
1011Mujtaba H PoquetteBrazil2026-05-28King, Christopher A Esq QUALIFIED47Elwin Sharvill
1012Munro I FlosiCanada2026-06-18Chemel, James L Cpa QUALIFIED51Amy Elsner
1013Silvio U InouyeFrance2026-06-05Morlong Associates UNQUALIFIED3Bernardo Dominic
1014Octavia N MorascaUnited Kingdom2026-06-19Buckley Miller Wright QUALIFIED80Xuxue Feng
1015James U BowleyItaly2026-06-01King, Christopher A Esq RENEWAL34Anna Fali
1016Mujtaba F SchemmerUnited Kingdom2026-05-24Truhlar And Truhlar Attys NEW12Elwin Sharvill
1017Alejandro Y FollerJapan2026-06-17Truhlar And Truhlar Attys NEGOTIATION6Anna Fali
1018Nicolas D RulapaughArgentina2026-06-03Chapman, Ross E Esq RENEWAL82Ivan Magalhaes
1019James V FerenczRussia2026-06-12Dorl, James J Esq RENEWAL60Ioni Bowcher
1020Greenwood D FollerArgentina2026-06-06Buckley Miller Wright PROPOSAL93Stephen Shaw
1021Izzy M VenereItaly2026-06-08Rousseaux, Michael Esq RENEWAL15Ivan Magalhaes
1022Nicolas X SergiSpain2026-06-19Benton, John B Jr NEW79Ioni Bowcher
1023Costa X GillianItaly2026-05-27Printing Dimensions QUALIFIED5Ioni Bowcher
1024Jefferson J GlickRussia2026-06-12Feltz Printing Service PROPOSAL28Amy Elsner
1025Ricardo N InouyeFrance2026-06-05Chanay, Jeffrey A Esq NEGOTIATION93Xuxue Feng
1026Greenwood T StensethFrance2026-05-30Rangoni Of Florence UNQUALIFIED13Xuxue Feng
1027Sinclair C StockhamIndia2026-06-02Chanay, Jeffrey A Esq RENEWAL76Elwin Sharvill
1028Antonio Q StensethSpain2026-06-19Dorl, James J Esq PROPOSAL96Amy Elsner
1029Leon Z FollerItaly2026-05-25Rangoni Of Florence PROPOSAL15Xuxue Feng
1030David L RutaSpain2026-06-08Chemel, James L Cpa RENEWAL53Elwin Sharvill
1031Salvatore C FerenczSpain2026-05-24Printing Dimensions NEW16Amy Elsner
1032Aditya P MaletArgentina2026-06-03Buckley Miller Wright UNQUALIFIED27Onyama Limba
1033Jennifer V TollnerBrazil2026-06-04Benton, John B Jr UNQUALIFIED64Ioni Bowcher
1034Cody I SchemmerUnited Kingdom2026-06-21King, Christopher A Esq UNQUALIFIED39Xuxue Feng
1035Jeanfrancois Y GauchoRussia2026-06-09Rangoni Of Florence NEGOTIATION99Xuxue Feng
1036Julie R NickaIndia2026-06-13Commercial Press QUALIFIED30Ioni Bowcher
1037Leon Q SchemmerSpain2026-06-15Chapman, Ross E Esq NEGOTIATION66Anna Fali
1038Silvio Z GauchoSpain2026-06-06Truhlar And Truhlar Attys QUALIFIED37Elwin Sharvill
1039Aditya Y GillianSpain2026-06-17Truhlar And Truhlar Attys RENEWAL80Stephen Shaw
1040Murillo W MaletSpain2026-06-18Rousseaux, Michael Esq QUALIFIED65Anna Fali
1041Morrow R StockhamItaly2026-06-08Morlong Associates PROPOSAL80Ivan Magalhaes
1042Jeanfrancois A MaletJapan2026-06-07Feiner Bros NEW96Amy Elsner
1043Jeanfrancois W MaletUnited Kingdom2026-06-16Chapman, Ross E Esq NEGOTIATION27Ivan Magalhaes
1044Aika I RulapaughCanada2026-06-19Morlong Associates NEW94Elwin Sharvill
1045Wickens D GarufiAustralia2026-06-07King, Christopher A Esq RENEWAL70Bernardo Dominic
1046Francesco D MacleadRussia2026-06-15Commercial Press QUALIFIED94Asiya Javayant
1047James P PaprockiArgentina2026-06-21Rangoni Of Florence NEGOTIATION48Anna Fali
1048Octavia V VocelkaItaly2026-06-07Chanay, Jeffrey A Esq NEGOTIATION48Asiya Javayant
1049Maria U DilliardGermany2026-06-20Feltz Printing Service UNQUALIFIED63Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aruna J InouyeCanadaAnna Fali NEGOTIATION
Juan L BriddickAustraliaIoni Bowcher PROPOSAL
Francesco W RutaAustraliaOnyama Limba QUALIFIED
Murillo Z AlbaresIndiaIoni Bowcher UNQUALIFIED
Silvio K BowleyFranceIoni Bowcher PROPOSAL
Munro Y PerinSpainAmy Elsner NEW
Faith R AlbaresCanadaAnna Fali NEGOTIATION
Aditya A VocelkaJapanAsiya Javayant NEW
Maria A MarrierUnited KingdomBernardo Dominic PROPOSAL
Misaki Y GlickCanadaElwin Sharvill NEW
Silvio Q TollnerArgentinaElwin Sharvill NEGOTIATION
Cody Z RulapaughGermanyIoni Bowcher RENEWAL
Murillo G GarufiRussiaAnna Fali UNQUALIFIED
Mujtaba E MarrierCanadaIvan Magalhaes NEGOTIATION
Mujtaba H AlbaresAustraliaXuxue Feng NEGOTIATION
Rodrigues O OldroydItalyOnyama Limba RENEWAL
Jefferson O VenereAustraliaElwin Sharvill UNQUALIFIED
Cody Q BriddickGermanyAnna Fali NEW
David U MacleadArgentinaIoni Bowcher NEW
Silvio Y KolmetzBrazilElwin Sharvill QUALIFIED
Cody D MarrierGermanyOnyama Limba UNQUALIFIED
Darci I FerenczGermanyAnna Fali QUALIFIED
Juan W SergiGermanyOnyama Limba NEW
Arvin K RutaBrazilElwin Sharvill QUALIFIED
Deepesh L WaycottCanadaStephen Shaw NEW
Mujtaba D SergiSpainAsiya Javayant NEW
Costa N SaylorsAustraliaAnna Fali RENEWAL
Nicolas V TollnerJapanAmy Elsner NEW
David G MorascaGermanyOnyama Limba RENEWAL
Jeanfrancois K VocelkaFranceAnna Fali QUALIFIED
Deepesh S BowleyBrazilIvan Magalhaes RENEWAL
Deepesh K DarakjyIndiaIoni Bowcher NEW
Johnson G PaprockiGermanyIvan Magalhaes PROPOSAL
Misaki J WieserSpainIvan Magalhaes NEGOTIATION
Jeanfrancois Z RulapaughAustraliaBernardo Dominic PROPOSAL
Rodrigues Z DilliardSpainStephen Shaw RENEWAL
Claire B DilliardUnited KingdomElwin Sharvill QUALIFIED
Costa L WaycottItalyOnyama Limba NEGOTIATION
Sinclair C MarrierRussiaXuxue Feng RENEWAL
Tony Z WhobreyAustraliaBernardo Dominic PROPOSAL
Misaki M FigeroaItalyIvan Magalhaes PROPOSAL
Ricardo V AlbaresArgentinaStephen Shaw NEW
Francesco U KolmetzAustraliaIvan Magalhaes NEGOTIATION
Mujtaba D BologniaIndiaStephen Shaw QUALIFIED
Leja U NestleBrazilElwin Sharvill NEW
Misaki A RoysterFranceAsiya Javayant PROPOSAL
Greenwood B PoquetteGermanyBernardo Dominic NEW
Jones B PoquetteSpainOnyama Limba UNQUALIFIED
Chavez I CaudyCanadaXuxue Feng RENEWAL
Isabel J IturbideBrazilIoni Bowcher NEGOTIATION
Frozen Columns
Name
Salvatore V Ferencz
Ivar B Amigon
Leja I Malet
Sinclair L Tollner
Maisha Y Glick
Wickens J Butt
Nicolas P Iturbide
Kaitlin S Nestle
Costa A Flosi
Aika Y Iturbide
Octavia U Campain
Chavez W Royster
Murillo R Saylors
Chavez Z Sergi
Costa U Dilliard
Antonio O Briddick
Jones D Iturbide
Nicolas P Gillian
Emily K Caudy
Maisha Y Whobrey
Ricardo U Garufi
Jeanfrancois C Ferencz
Maisha N Waycott
Rodrigues X Slusarski
Juan C Gillian
Emily V Darakjy
Greenwood Y Ruta
Faith Y Doe
Sinclair K Glick
Stacey M Glick
Clifford O Schemmer
Murillo H Waycott
Alejandro O Glick
Munro Z Foller
Leon J Ostrosky
Arvin J Garufi
Cody Z Ruta
Isabel I Ruta
Deepesh W Ostrosky
Silvio I Whobrey
Ricardo F Iturbide
Juan B Gaucho
Juan D Marrier
Maria M Venere
Costa O Nicka
Greenwood R Nicka
Julie E Shinko
Salvatore M Glick
Isabel M Darakjy
Misaki Z Paprocki
IdCountryDate
1000India2026-06-18
1001United Kingdom2026-06-17
1002Russia2026-06-02
1003Brazil2026-05-31
1004Australia2026-05-27
1005Canada2026-06-21
1006Spain2026-06-11
1007Australia2026-06-06
1008Spain2026-05-26
1009Spain2026-05-29
1010France2026-06-10
1011Brazil2026-06-02
1012Germany2026-05-27
1013Japan2026-06-02
1014India2026-06-01
1015Canada2026-06-02
1016Germany2026-06-20
1017Canada2026-05-30
1018India2026-06-16
1019Argentina2026-05-28
1020France2026-06-19
1021Italy2026-05-26
1022Canada2026-06-06
1023Australia2026-06-20
1024Australia2026-06-07
1025Brazil2026-06-04
1026Australia2026-06-08
1027Canada2026-05-30
1028France2026-06-04
1029United Kingdom2026-06-21
1030India2026-06-06
1031Canada2026-06-08
1032Spain2026-06-11
1033Brazil2026-06-09
1034Argentina2026-06-20
1035Germany2026-06-07
1036India2026-06-01
1037United Kingdom2026-06-05
1038Brazil2026-05-25
1039Germany2026-06-12
1040Japan2026-06-14
1041Spain2026-05-31
1042Japan2026-05-23
1043Australia2026-05-27
1044Russia2026-06-01
1045Russia2026-06-21
1046Brazil2026-05-31
1047Spain2026-05-24
1048Argentina2026-06-18
1049Japan2026-06-05

On-Demand Data

NameIdCountryDate
Leon S Schemmer1000Spain2026-06-20
Faith O Ferencz1001Canada2026-06-19
Munro P Tollner1002United Kingdom2026-05-30
Misaki D Inouye1003France2026-06-07
Aditya O Wieser1004Argentina2026-06-01
Clifford K Saylors1005Japan2026-06-04
Munro H Caldarera1006Italy2026-06-05
Nicolas H Butt1007Canada2026-06-01
Mayumi K Whobrey1008Canada2026-06-19
Jones M Slusarski1009France2026-06-10
Isabel Q Marrier1010Brazil2026-05-25
Greenwood N Waycott1011Russia2026-06-06
Maria G Nestle1012Italy2026-05-27
Izzy W Sergi1013Germany2026-06-15
Johnson Q Sergi1014Australia2026-06-11
Emily F Amigon1015Australia2026-06-17
Tony K Flosi1016Canada2026-06-16
Ricardo N Dilliard1017Russia2026-06-05
Costa X Rulapaugh1018Japan2026-06-06
Arvin W Inouye1019France2026-06-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem D MorascaCanadaAsiya Javayant RENEWAL
Aditya S MarrierArgentinaStephen Shaw QUALIFIED
Munro E OstroskyGermanyAmy Elsner RENEWAL
David D PoquetteSpainAmy Elsner NEW
Kadeem O StensethArgentinaIoni Bowcher UNQUALIFIED
Wickens O GlickRussiaElwin Sharvill QUALIFIED
Maisha M AmigonSpainElwin Sharvill NEW
Jeanfrancois S KuskoIndiaStephen Shaw RENEWAL
Emily Z SlusarskiBrazilAnna Fali QUALIFIED
Maisha F MaletIndiaIoni Bowcher UNQUALIFIED
Stacey V SchemmerFranceXuxue Feng PROPOSAL
Aditya G SlusarskiJapanXuxue Feng QUALIFIED
Izzy F VenereJapanXuxue Feng NEGOTIATION
Juan H CaldareraItalyAsiya Javayant NEW
Maisha Z VenereIndiaAmy Elsner UNQUALIFIED
Clifford D MarrierGermanyIvan Magalhaes RENEWAL
Emily Y CaudyUnited KingdomAmy Elsner PROPOSAL
Aruna K SaylorsUnited KingdomIvan Magalhaes PROPOSAL
Wickens W MaletItalyOnyama Limba RENEWAL
Aika X AmigonGermanyAsiya Javayant RENEWAL
Jefferson H ChuiItalyAmy Elsner QUALIFIED
Adams B KolmetzGermanyAsiya Javayant QUALIFIED
Alejandro M KolmetzIndiaAnna Fali QUALIFIED
Arvin G FlosiGermanyAnna Fali RENEWAL
Morrow I OldroydAustraliaElwin Sharvill QUALIFIED
Emily K MacleadSpainXuxue Feng QUALIFIED
Francesco C PaprockiIndiaIoni Bowcher RENEWAL
Julie C NestleCanadaBernardo Dominic QUALIFIED
Silvio C DilliardBrazilIoni Bowcher RENEWAL
Jones J RoysterBrazilIvan Magalhaes UNQUALIFIED
Greenwood S GauchoIndiaStephen Shaw UNQUALIFIED
Aditya O FlosiIndiaXuxue Feng RENEWAL
Adams B VenereSpainBernardo Dominic RENEWAL
Juan S AlbaresGermanyOnyama Limba PROPOSAL
Arvin B StockhamFranceIvan Magalhaes QUALIFIED
James A VocelkaIndiaAnna Fali PROPOSAL
Rodrigues I RutaGermanyAmy Elsner UNQUALIFIED
Jones F SergiRussiaOnyama Limba QUALIFIED
Aditya M DoeRussiaElwin Sharvill UNQUALIFIED
Nicolas I DoeItalyAmy Elsner 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.