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
Aruna W StockhamGermanyAmy Elsner RENEWAL
Kaitlin S WaycottCanadaXuxue Feng NEGOTIATION
Sinclair W PerinItalyIoni Bowcher PROPOSAL
Costa P NestleItalyIvan Magalhaes QUALIFIED
Antonio Y KolmetzAustraliaAnna Fali NEW
Jefferson O BriddickFranceAnna Fali NEGOTIATION
Cody J OldroydGermanyAsiya Javayant QUALIFIED
Leja U ShinkoRussiaStephen Shaw UNQUALIFIED
Rodrigues G ChuiUnited KingdomOnyama Limba NEGOTIATION
Tony Z BowleySpainBernardo Dominic UNQUALIFIED
Darci M SchemmerAustraliaOnyama Limba NEGOTIATION
Arvin P RoysterArgentinaAmy Elsner RENEWAL
Silvio H RutaCanadaIoni Bowcher NEGOTIATION
Clifford O RimIndiaXuxue Feng QUALIFIED
Ivar F WhobreyCanadaBernardo Dominic PROPOSAL
Deepesh D FerenczFranceBernardo Dominic RENEWAL
Arvin S ButtBrazilAsiya Javayant PROPOSAL
Munro C GlickUnited KingdomIvan Magalhaes NEW
Aika J BowleyItalyIoni Bowcher NEGOTIATION
Jefferson Q StockhamCanadaOnyama Limba PROPOSAL
Jennifer D MaletUnited KingdomOnyama Limba NEW
Adams H OldroydFranceAmy Elsner NEW
Maisha N FigeroaAustraliaXuxue Feng UNQUALIFIED
Smith W AlbaresUnited KingdomStephen Shaw NEGOTIATION
Jones X IturbideJapanStephen Shaw UNQUALIFIED
Maisha R RulapaughGermanyElwin Sharvill NEW
Misaki X BologniaItalyAmy Elsner PROPOSAL
Clifford L MaletGermanyAsiya Javayant UNQUALIFIED
Kadeem K KuskoGermanyIvan Magalhaes NEGOTIATION
Stacey T MorascaCanadaStephen Shaw UNQUALIFIED
Jeanfrancois I GlickAustraliaIoni Bowcher UNQUALIFIED
Jones V ShinkoAustraliaBernardo Dominic UNQUALIFIED
Maria X TollnerUnited KingdomAsiya Javayant RENEWAL
Clifford Q FollerIndiaBernardo Dominic RENEWAL
Aruna V CaldareraGermanyIvan Magalhaes PROPOSAL
Smith A AmigonSpainIvan Magalhaes QUALIFIED
Octavia O SaylorsItalyBernardo Dominic NEGOTIATION
James Z IturbideGermanyBernardo Dominic QUALIFIED
Kadeem N CaudyCanadaAsiya Javayant QUALIFIED
Francesco P WhobreyGermanyIoni Bowcher NEGOTIATION
Alejandro M WhobreyFranceElwin Sharvill UNQUALIFIED
Ricardo Y InouyeUnited KingdomAnna Fali RENEWAL
Ivar K GlickCanadaAnna Fali NEW
David X RulapaughSpainXuxue Feng QUALIFIED
Jennifer M WieserCanadaOnyama Limba UNQUALIFIED
Sinclair Q GarufiArgentinaAnna Fali NEGOTIATION
Izzy F GlickArgentinaIvan Magalhaes RENEWAL
Johnson M BologniaRussiaElwin Sharvill NEW
Stacey L GarufiGermanyElwin Sharvill NEW
Juan G KolmetzGermanyAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Mujtaba Q MaletCanadaIvan Magalhaes NEW
Emily A StensethAustraliaXuxue Feng QUALIFIED
Rodrigues E IturbideAustraliaXuxue Feng NEGOTIATION
Maisha Y PoquetteBrazilOnyama Limba RENEWAL
Leja B SaylorsBrazilXuxue Feng UNQUALIFIED
Silvio X FerenczItalyStephen Shaw UNQUALIFIED
Alejandro R VenereItalyAnna Fali PROPOSAL
Salvatore Q InouyeItalyAnna Fali PROPOSAL
Alejandro C KolmetzUnited KingdomElwin Sharvill RENEWAL
Greenwood V FigeroaGermanyAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily B KuskoArgentina2026-02-04Printing Dimensions UNQUALIFIED24Anna Fali
1001Arvin Q GlickArgentina2026-02-20Printing Dimensions RENEWAL73Onyama Limba
1002Aruna Z AmigonSpain2026-02-26Buckley Miller Wright NEGOTIATION54Anna Fali
1003Jeanfrancois T StensethIndia2026-02-22Truhlar And Truhlar Attys NEW72Ivan Magalhaes
1004Greenwood F CaudySpain2026-03-02Truhlar And Truhlar Attys NEGOTIATION98Elwin Sharvill
1005Emily P GauchoUnited Kingdom2026-02-18Chanay, Jeffrey A Esq RENEWAL90Ioni Bowcher
1006Chavez Y WaycottUnited Kingdom2026-02-13Chapman, Ross E Esq RENEWAL6Bernardo Dominic
1007Nicolas K KolmetzGermany2026-02-15Rangoni Of Florence PROPOSAL43Onyama Limba
1008Morrow H FlosiItaly2026-03-03Rangoni Of Florence UNQUALIFIED24Asiya Javayant
1009Smith J RoysterCanada2026-02-19King, Christopher A Esq RENEWAL49Amy Elsner
1010Morrow B AmigonItaly2026-02-18Truhlar And Truhlar Attys UNQUALIFIED96Xuxue Feng
1011Izzy C MaletRussia2026-03-01Chanay, Jeffrey A Esq NEW61Bernardo Dominic
1012Jeanfrancois D MacleadArgentina2026-02-12Morlong Associates RENEWAL55Anna Fali
1013Ashley O StensethUnited Kingdom2026-02-26Buckley Miller Wright PROPOSAL15Asiya Javayant
1014Leon P RoysterCanada2026-02-24Truhlar And Truhlar Attys NEGOTIATION27Ivan Magalhaes
1015Ivar X MorascaIndia2026-02-18Rousseaux, Michael Esq NEW47Xuxue Feng
1016Jones D RimJapan2026-02-06Commercial Press UNQUALIFIED67Bernardo Dominic
1017Emily Z KuskoBrazil2026-02-14King, Christopher A Esq RENEWAL25Elwin Sharvill
1018Aruna A PoquetteArgentina2026-02-11Feiner Bros NEGOTIATION29Onyama Limba
1019Ivar P PoquetteJapan2026-02-28Benton, John B Jr UNQUALIFIED71Onyama Limba
1020Rodrigues W ShinkoBrazil2026-02-17Buckley Miller Wright QUALIFIED7Xuxue Feng
1021Leon B KuskoFrance2026-02-10Rangoni Of Florence PROPOSAL96Amy Elsner
1022Greenwood J InouyeRussia2026-02-15Buckley Miller Wright NEGOTIATION41Bernardo Dominic
1023Misaki L PerinIndia2026-03-02Printing Dimensions PROPOSAL21Amy Elsner
1024Misaki H StockhamGermany2026-02-13Printing Dimensions PROPOSAL26Ivan Magalhaes
1025Chavez I MaletUnited Kingdom2026-02-20Feltz Printing Service PROPOSAL12Xuxue Feng
1026Greenwood H FerenczRussia2026-02-18Feiner Bros UNQUALIFIED11Xuxue Feng
1027Francesco M ChuiSpain2026-02-24King, Christopher A Esq NEGOTIATION92Onyama Limba
1028Chavez H WieserUnited Kingdom2026-02-13Commercial Press QUALIFIED51Amy Elsner
1029Salvatore A SaylorsAustralia2026-02-19Printing Dimensions PROPOSAL46Bernardo Dominic
1030Adams D StockhamUnited Kingdom2026-02-28Chanay, Jeffrey A Esq QUALIFIED14Bernardo Dominic
1031Misaki B WaycottGermany2026-02-15Rangoni Of Florence NEW91Ioni Bowcher
1032Julie L IturbideGermany2026-02-20Commercial Press NEGOTIATION14Onyama Limba
1033Octavia N GauchoCanada2026-02-25Chemel, James L Cpa NEGOTIATION42Anna Fali
1034Silvio D RoysterAustralia2026-02-17Rangoni Of Florence UNQUALIFIED73Ioni Bowcher
1035Antonio A MorascaJapan2026-02-23King, Christopher A Esq UNQUALIFIED38Bernardo Dominic
1036Tony Q ButtJapan2026-02-25Feltz Printing Service UNQUALIFIED98Ivan Magalhaes
1037Ivar C FollerIndia2026-02-05Chanay, Jeffrey A Esq PROPOSAL13Elwin Sharvill
1038Aika Z BologniaIndia2026-02-17Benton, John B Jr NEGOTIATION98Xuxue Feng
1039Claire S StensethAustralia2026-02-14King, Christopher A Esq NEW17Elwin Sharvill
1040James B MarrierIndia2026-03-03Feltz Printing Service QUALIFIED4Anna Fali
1041Salvatore H WieserIndia2026-02-08Dorl, James J Esq NEW85Stephen Shaw
1042Cody P MaletUnited Kingdom2026-02-22Rangoni Of Florence NEW76Ivan Magalhaes
1043Maisha J CaldareraRussia2026-02-20Morlong Associates NEGOTIATION63Xuxue Feng
1044James G WieserGermany2026-02-11Feiner Bros QUALIFIED14Ioni Bowcher
1045Chavez N RoysterGermany2026-02-07Morlong Associates UNQUALIFIED99Amy Elsner
1046Morrow I GlickArgentina2026-02-14Feltz Printing Service NEW45Anna Fali
1047Arvin R NestleAustralia2026-02-16Commercial Press RENEWAL50Bernardo Dominic
1048Claire S AlbaresItaly2026-02-25Chemel, James L Cpa UNQUALIFIED14Onyama Limba
1049Antonio S MarrierAustralia2026-02-22Feltz Printing Service QUALIFIED76Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Nicolas J AlbaresCanadaIvan Magalhaes QUALIFIED
James V WhobreyAustraliaElwin Sharvill NEGOTIATION
Johnson H StockhamRussiaAsiya Javayant UNQUALIFIED
Morrow J OldroydJapanIvan Magalhaes RENEWAL
Munro J BowleyItalyAmy Elsner NEGOTIATION
Arvin X KolmetzRussiaElwin Sharvill RENEWAL
Alejandro E RulapaughItalyXuxue Feng NEW
Antonio N KolmetzArgentinaAmy Elsner PROPOSAL
Ivar J TollnerCanadaXuxue Feng NEGOTIATION
Juan U RulapaughRussiaAsiya Javayant QUALIFIED
Arvin T StensethIndiaAmy Elsner NEW
Costa P FlosiUnited KingdomIvan Magalhaes QUALIFIED
Isabel U GauchoJapanIvan Magalhaes NEW
Chavez L NickaCanadaBernardo Dominic QUALIFIED
Octavia M MaletArgentinaAnna Fali NEGOTIATION
Arvin V VocelkaUnited KingdomElwin Sharvill UNQUALIFIED
Jefferson K StockhamBrazilAnna Fali NEGOTIATION
Leja R NestleItalyElwin Sharvill QUALIFIED
David B VenereGermanyElwin Sharvill NEGOTIATION
Morrow N RutaCanadaOnyama Limba QUALIFIED
Johnson Q ShinkoGermanyXuxue Feng NEW
Aditya M ButtUnited KingdomXuxue Feng RENEWAL
Ivar A GauchoRussiaXuxue Feng RENEWAL
Wickens C DoeArgentinaIoni Bowcher PROPOSAL
Francesco X OstroskyBrazilOnyama Limba QUALIFIED
Aruna L StensethSpainAsiya Javayant UNQUALIFIED
Deepesh V SlusarskiAustraliaElwin Sharvill QUALIFIED
Stacey L FollerIndiaOnyama Limba RENEWAL
Arvin X ButtRussiaAsiya Javayant PROPOSAL
Munro R DarakjyJapanAsiya Javayant RENEWAL
Greenwood G InouyeFranceIvan Magalhaes NEW
Izzy G InouyeRussiaAsiya Javayant QUALIFIED
Aditya C BriddickFranceBernardo Dominic NEW
Octavia L ChuiAustraliaIoni Bowcher NEGOTIATION
David Y StockhamRussiaOnyama Limba RENEWAL
Mayumi H MaletSpainElwin Sharvill NEW
Kaitlin A SchemmerCanadaAmy Elsner UNQUALIFIED
Cody M FlosiFranceElwin Sharvill UNQUALIFIED
Octavia R BologniaBrazilIvan Magalhaes QUALIFIED
Greenwood X FlosiCanadaStephen Shaw PROPOSAL
Ashley L MaletItalyAnna Fali QUALIFIED
Jones Q CaudySpainAsiya Javayant NEGOTIATION
Jefferson H FollerRussiaXuxue Feng RENEWAL
Greenwood Y CaudyFranceOnyama Limba QUALIFIED
Cody M RoysterBrazilIoni Bowcher NEW
Adams Q RulapaughUnited KingdomElwin Sharvill NEW
Alejandro V ShinkoItalyBernardo Dominic PROPOSAL
Salvatore I WieserIndiaAmy Elsner UNQUALIFIED
Kadeem I ShinkoSpainOnyama Limba QUALIFIED
Kadeem U GarufiItalyBernardo Dominic NEGOTIATION
Frozen Columns
Name
Claire W Gaucho
Francesco G Doe
Aditya C Dilliard
Tony J Stockham
Johnson W Gaucho
Mayumi H Marrier
Ricardo J Bolognia
Silvio B Bowley
Maria W Tollner
Alejandro H Nicka
Claire R Butt
Aika J Foller
Ivar D Flosi
Ivar P Dilliard
Sinclair H Oldroyd
Ivar F Gillian
Juan F Schemmer
Kaitlin O Ostrosky
Leon J Figeroa
Johnson D Amigon
Kadeem H Ostrosky
Adams P Butt
Munro A Ruta
Jennifer F Nestle
Isabel I Caudy
Misaki Z Oldroyd
Emily L Maclead
Jennifer K Sergi
Morrow D Figeroa
Sinclair Z Ostrosky
Leja B Flosi
Stacey G Rulapaugh
Leon V Slusarski
David P Kolmetz
Julie M Kusko
Salvatore M Dilliard
Jennifer C Chui
Costa A Slusarski
Greenwood P Vocelka
Alejandro N Tollner
Murillo D Nicka
Ashley I Oldroyd
Nicolas Z Sergi
Murillo P Wieser
Arvin J Flosi
Tony E Venere
Juan P Morasca
Smith O Butt
Mayumi B Garufi
Jones W Poquette
IdCountryDate
1000India2026-02-08
1001Russia2026-03-01
1002Australia2026-02-27
1003Australia2026-03-03
1004Japan2026-02-03
1005Germany2026-03-04
1006Canada2026-02-09
1007Russia2026-03-01
1008Brazil2026-02-04
1009France2026-02-11
1010Germany2026-02-25
1011Germany2026-02-26
1012Argentina2026-02-11
1013Japan2026-03-03
1014France2026-02-26
1015France2026-02-22
1016Spain2026-02-11
1017Argentina2026-02-09
1018Brazil2026-02-12
1019Spain2026-02-25
1020France2026-02-12
1021India2026-02-07
1022Argentina2026-02-13
1023Germany2026-02-11
1024Germany2026-03-04
1025Germany2026-02-23
1026Argentina2026-02-20
1027Germany2026-02-23
1028United Kingdom2026-02-15
1029Germany2026-02-03
1030Spain2026-02-20
1031Germany2026-03-04
1032Canada2026-03-03
1033Australia2026-03-04
1034India2026-02-21
1035Japan2026-02-15
1036France2026-03-02
1037Argentina2026-03-01
1038Spain2026-03-01
1039Japan2026-02-03
1040Brazil2026-02-05
1041India2026-03-03
1042United Kingdom2026-02-11
1043Spain2026-03-04
1044Japan2026-02-08
1045Canada2026-02-16
1046Argentina2026-02-20
1047Japan2026-02-26
1048France2026-02-27
1049Spain2026-02-04

On-Demand Data

NameIdCountryDate
Salvatore Q Gaucho1000Germany2026-02-24
Mujtaba F Campain1001India2026-02-27
Johnson E Perin1002Italy2026-02-26
Kadeem U Sergi1003Italy2026-02-06
Johnson U Stenseth1004Germany2026-02-11
Morrow S Perin1005Italy2026-03-01
Leon D Nicka1006Germany2026-02-25
Jones R Whobrey1007Germany2026-02-18
Ivar O Briddick1008Spain2026-02-18
Antonio Z Rim1009Russia2026-02-28
Mayumi U Poquette1010Spain2026-02-17
Jennifer K Caudy1011Argentina2026-02-19
Mujtaba M Flosi1012Italy2026-02-28
Silvio J Figeroa1013Spain2026-02-26
Smith Q Caudy1014Australia2026-02-09
Juan V Whobrey1015India2026-02-15
Munro C Caudy1016Australia2026-02-10
Claire C Malet1017Australia2026-02-28
Arvin W Marrier1018Japan2026-03-04
Darci Z Glick1019India2026-02-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh U GauchoUnited KingdomElwin Sharvill RENEWAL
Octavia C StensethSpainAsiya Javayant UNQUALIFIED
Stacey J VocelkaRussiaOnyama Limba NEGOTIATION
Stacey F MaletUnited KingdomElwin Sharvill NEW
Octavia U BologniaAustraliaElwin Sharvill PROPOSAL
Clifford F OstroskyUnited KingdomAmy Elsner UNQUALIFIED
Rodrigues M MaletItalyElwin Sharvill QUALIFIED
Greenwood C StockhamUnited KingdomXuxue Feng NEGOTIATION
Salvatore B PoquetteItalyStephen Shaw UNQUALIFIED
Kadeem K KolmetzRussiaAsiya Javayant NEW
Claire X BologniaAustraliaIoni Bowcher QUALIFIED
Arvin D NickaGermanyStephen Shaw PROPOSAL
David U GauchoItalyAsiya Javayant NEGOTIATION
Johnson A InouyeArgentinaIoni Bowcher NEGOTIATION
Tony O MacleadFranceOnyama Limba QUALIFIED
Tony U PaprockiArgentinaStephen Shaw NEGOTIATION
Kaitlin O OldroydBrazilXuxue Feng PROPOSAL
Kadeem C DilliardGermanyAsiya Javayant RENEWAL
Kadeem R BowleyArgentinaAnna Fali PROPOSAL
Maisha N ShinkoRussiaAsiya Javayant UNQUALIFIED
Isabel O SaylorsGermanyAnna Fali QUALIFIED
Costa P FerenczCanadaXuxue Feng RENEWAL
Aruna Q DoeArgentinaElwin Sharvill QUALIFIED
Leon Q OstroskyBrazilElwin Sharvill QUALIFIED
Antonio T MaletBrazilElwin Sharvill QUALIFIED
Juan I WaycottBrazilXuxue Feng UNQUALIFIED
Aika O ButtSpainAsiya Javayant NEGOTIATION
Aditya V OstroskyArgentinaAnna Fali PROPOSAL
Greenwood E DoeGermanyIoni Bowcher QUALIFIED
Misaki A FerenczJapanElwin Sharvill NEGOTIATION
Faith F MorascaRussiaXuxue Feng PROPOSAL
Antonio I RulapaughCanadaStephen Shaw RENEWAL
Izzy D DilliardItalyBernardo Dominic QUALIFIED
Alejandro C MaletArgentinaOnyama Limba RENEWAL
Tony N PoquetteCanadaOnyama Limba NEGOTIATION
Alejandro Q PaprockiGermanyXuxue Feng NEW
Jones W PoquetteJapanBernardo Dominic NEW
Aditya H MacleadSpainStephen Shaw RENEWAL
David Q RutaJapanAmy Elsner QUALIFIED
Stacey Z KolmetzArgentinaIoni Bowcher 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.