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
Faith B GillianItalyIoni Bowcher QUALIFIED
Chavez O BologniaSpainXuxue Feng NEGOTIATION
Aruna U SergiIndiaStephen Shaw UNQUALIFIED
Clifford H GauchoGermanyOnyama Limba QUALIFIED
Francesco W OstroskyItalyAmy Elsner NEW
Maisha B SchemmerBrazilIoni Bowcher NEGOTIATION
Misaki J FerenczFranceAsiya Javayant PROPOSAL
Maisha P InouyeArgentinaXuxue Feng PROPOSAL
Clifford T PaprockiItalyIvan Magalhaes PROPOSAL
Nicolas K MacleadBrazilElwin Sharvill NEGOTIATION
Octavia Q CampainGermanyXuxue Feng QUALIFIED
Silvio Y DilliardFranceAmy Elsner QUALIFIED
James P RoysterArgentinaIoni Bowcher RENEWAL
Sinclair N VocelkaSpainIvan Magalhaes NEGOTIATION
Maisha K RutaItalyAsiya Javayant NEGOTIATION
James J FerenczBrazilIoni Bowcher QUALIFIED
Jennifer X AmigonCanadaIoni Bowcher NEGOTIATION
Claire F TollnerCanadaOnyama Limba NEGOTIATION
Mujtaba Q MarrierBrazilIvan Magalhaes QUALIFIED
Sinclair V RutaGermanyStephen Shaw NEGOTIATION
Leja P GarufiSpainIvan Magalhaes PROPOSAL
Jeanfrancois Y TollnerJapanElwin Sharvill NEGOTIATION
Stacey Y NickaSpainIvan Magalhaes QUALIFIED
Juan I WaycottRussiaElwin Sharvill UNQUALIFIED
Jennifer E RoysterAustraliaIvan Magalhaes UNQUALIFIED
Deepesh L GillianUnited KingdomAsiya Javayant NEW
Aditya S WieserAustraliaAmy Elsner PROPOSAL
Leja F CaldareraAustraliaAmy Elsner NEGOTIATION
Julie D GarufiUnited KingdomAmy Elsner RENEWAL
Leon G GillianCanadaOnyama Limba RENEWAL
Smith D DoeRussiaIoni Bowcher PROPOSAL
Deepesh W BriddickFranceElwin Sharvill NEGOTIATION
Maisha N DarakjyIndiaIoni Bowcher PROPOSAL
Greenwood E MacleadGermanyAsiya Javayant QUALIFIED
Chavez K AmigonUnited KingdomOnyama Limba RENEWAL
Mujtaba V FlosiIndiaStephen Shaw RENEWAL
Misaki Q MaletBrazilAsiya Javayant NEW
Aruna S MacleadIndiaAmy Elsner RENEWAL
Stacey M IturbideArgentinaIvan Magalhaes RENEWAL
Claire E PaprockiArgentinaAsiya Javayant PROPOSAL
Kadeem K GillianIndiaAnna Fali UNQUALIFIED
Faith W KolmetzAustraliaIoni Bowcher QUALIFIED
Clifford G OldroydIndiaIvan Magalhaes PROPOSAL
Mujtaba W FollerIndiaOnyama Limba NEW
Aika O MarrierItalyAsiya Javayant QUALIFIED
Aditya D FollerBrazilOnyama Limba NEGOTIATION
Leon G WieserJapanStephen Shaw NEGOTIATION
David P OldroydAustraliaIoni Bowcher NEGOTIATION
Salvatore G VocelkaSpainXuxue Feng NEGOTIATION
Ashley S BologniaUnited KingdomIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Emily T PerinCanadaStephen Shaw UNQUALIFIED
Isabel X GarufiArgentinaXuxue Feng PROPOSAL
Mayumi B MacleadAustraliaAsiya Javayant RENEWAL
Rodrigues W DarakjyGermanyAnna Fali RENEWAL
Salvatore X MacleadFranceOnyama Limba NEW
Kadeem L GauchoArgentinaBernardo Dominic UNQUALIFIED
Mujtaba U DilliardJapanAmy Elsner UNQUALIFIED
Aruna J SaylorsRussiaAnna Fali UNQUALIFIED
Darci T RutaIndiaAnna Fali QUALIFIED
Kaitlin Y IturbideJapanOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James K DarakjyItaly2026-02-01Benton, John B Jr RENEWAL80Anna Fali
1001Munro D InouyeFrance2026-01-30Chanay, Jeffrey A Esq UNQUALIFIED35Ioni Bowcher
1002Mujtaba L MaletGermany2026-02-09King, Christopher A Esq QUALIFIED35Anna Fali
1003Kaitlin D SergiFrance2026-02-01Benton, John B Jr RENEWAL49Anna Fali
1004Izzy J KolmetzFrance2026-01-18Chapman, Ross E Esq RENEWAL19Stephen Shaw
1005Jones Q WieserItaly2026-01-23Chemel, James L Cpa NEGOTIATION26Bernardo Dominic
1006Maisha B WhobreyCanada2026-02-15Buckley Miller Wright PROPOSAL80Ioni Bowcher
1007Murillo N KolmetzItaly2026-02-05Truhlar And Truhlar Attys UNQUALIFIED79Onyama Limba
1008Antonio T FerenczRussia2026-02-03Chapman, Ross E Esq QUALIFIED30Ioni Bowcher
1009Costa Y InouyeArgentina2026-02-11Benton, John B Jr UNQUALIFIED49Ioni Bowcher
1010Salvatore B FollerRussia2026-01-22Printing Dimensions QUALIFIED31Xuxue Feng
1011Aditya M AmigonJapan2026-01-24Benton, John B Jr NEGOTIATION48Stephen Shaw
1012Cody U StensethJapan2026-02-03Morlong Associates NEGOTIATION20Ioni Bowcher
1013Mujtaba Z MaletFrance2026-02-07Chanay, Jeffrey A Esq PROPOSAL60Ioni Bowcher
1014Julie R GillianSpain2026-01-26Rousseaux, Michael Esq NEW36Bernardo Dominic
1015Alejandro I PaprockiRussia2026-02-05Chanay, Jeffrey A Esq NEGOTIATION66Xuxue Feng
1016Octavia R MarrierCanada2026-02-07Chemel, James L Cpa RENEWAL29Bernardo Dominic
1017Francesco E ButtBrazil2026-02-11Buckley Miller Wright RENEWAL9Ivan Magalhaes
1018Aruna S SergiItaly2026-01-19Dorl, James J Esq NEGOTIATION60Onyama Limba
1019Ashley S RoysterCanada2026-01-20Commercial Press PROPOSAL31Ivan Magalhaes
1020Johnson Y PerinArgentina2026-01-28Feltz Printing Service UNQUALIFIED35Anna Fali
1021Smith W CampainItaly2026-02-10Printing Dimensions QUALIFIED62Amy Elsner
1022Wickens P DilliardFrance2026-01-31Chapman, Ross E Esq NEW65Onyama Limba
1023Smith N BologniaArgentina2026-02-15Printing Dimensions QUALIFIED81Amy Elsner
1024Jennifer B FollerJapan2026-01-25Benton, John B Jr NEGOTIATION94Elwin Sharvill
1025Julie W MaletGermany2026-01-24Truhlar And Truhlar Attys UNQUALIFIED87Asiya Javayant
1026Ashley P SaylorsBrazil2026-02-03Feiner Bros QUALIFIED43Ivan Magalhaes
1027Juan X VocelkaGermany2026-01-30Truhlar And Truhlar Attys QUALIFIED11Bernardo Dominic
1028Leja D GauchoSpain2026-02-06Benton, John B Jr QUALIFIED44Stephen Shaw
1029Murillo K KuskoFrance2026-01-19Printing Dimensions QUALIFIED65Ivan Magalhaes
1030Salvatore Q MaletAustralia2026-02-07Chemel, James L Cpa NEW2Anna Fali
1031Wickens L FigeroaArgentina2026-01-31Rangoni Of Florence UNQUALIFIED33Stephen Shaw
1032Nicolas R ShinkoIndia2026-02-03Printing Dimensions UNQUALIFIED80Xuxue Feng
1033Leja K WhobreyFrance2026-01-23Printing Dimensions NEW74Anna Fali
1034Tony Q FerenczSpain2026-02-05Feltz Printing Service QUALIFIED91Amy Elsner
1035Izzy D StensethArgentina2026-02-09Buckley Miller Wright NEW35Onyama Limba
1036Clifford T PaprockiArgentina2026-01-23Buckley Miller Wright NEW60Bernardo Dominic
1037Mujtaba F CaudyAustralia2026-01-25Buckley Miller Wright RENEWAL66Anna Fali
1038Kadeem I BriddickGermany2026-01-25Rousseaux, Michael Esq NEW74Onyama Limba
1039Chavez A MorascaGermany2026-02-07Rangoni Of Florence NEGOTIATION67Stephen Shaw
1040Cody J SaylorsFrance2026-02-02Morlong Associates NEGOTIATION35Elwin Sharvill
1041Mujtaba S StockhamCanada2026-02-14Chanay, Jeffrey A Esq RENEWAL70Elwin Sharvill
1042James T StensethUnited Kingdom2026-01-28Buckley Miller Wright NEGOTIATION86Elwin Sharvill
1043Kadeem Y SchemmerJapan2026-01-27Rangoni Of Florence UNQUALIFIED81Elwin Sharvill
1044Stacey A MarrierBrazil2026-01-26Printing Dimensions PROPOSAL10Xuxue Feng
1045Octavia H NickaJapan2026-02-13Chanay, Jeffrey A Esq NEGOTIATION56Xuxue Feng
1046Julie X ButtFrance2026-02-01Chanay, Jeffrey A Esq RENEWAL63Asiya Javayant
1047Aruna Q PerinArgentina2026-01-29Chemel, James L Cpa QUALIFIED49Amy Elsner
1048Kadeem R SchemmerGermany2026-01-21Benton, John B Jr NEW94Xuxue Feng
1049Kadeem V NickaItaly2026-02-12Feiner Bros QUALIFIED91Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Emily M FollerAustraliaIvan Magalhaes QUALIFIED
Ashley Y VenereFranceBernardo Dominic NEW
James T SergiArgentinaAmy Elsner PROPOSAL
Claire V GauchoIndiaAnna Fali PROPOSAL
Kaitlin J MacleadJapanAmy Elsner PROPOSAL
Sinclair I StensethItalyElwin Sharvill NEW
Francesco F AmigonUnited KingdomIvan Magalhaes QUALIFIED
Chavez B GauchoUnited KingdomXuxue Feng PROPOSAL
Nicolas Y VenereJapanIoni Bowcher RENEWAL
Sinclair B SlusarskiJapanOnyama Limba PROPOSAL
Jefferson H VenereRussiaIvan Magalhaes UNQUALIFIED
Silvio L RutaAustraliaIoni Bowcher NEW
Murillo Z WieserJapanBernardo Dominic NEGOTIATION
Aruna B MarrierFranceAnna Fali NEW
Cody T RutaCanadaElwin Sharvill NEW
Ivar U PoquetteGermanyXuxue Feng QUALIFIED
Cody B GauchoJapanBernardo Dominic QUALIFIED
Wickens M GarufiCanadaElwin Sharvill UNQUALIFIED
Jones S VenereItalyElwin Sharvill RENEWAL
Silvio Y PerinSpainXuxue Feng UNQUALIFIED
Emily G BriddickFranceXuxue Feng NEW
Leon H OldroydItalyIvan Magalhaes PROPOSAL
Kadeem P MaletCanadaIoni Bowcher RENEWAL
Antonio Q PerinGermanyIvan Magalhaes RENEWAL
Arvin N FigeroaItalyAsiya Javayant NEW
Maria G MaletCanadaIoni Bowcher NEW
Leja F OstroskyUnited KingdomOnyama Limba NEGOTIATION
Wickens D VenereCanadaAmy Elsner QUALIFIED
Chavez J MaletCanadaOnyama Limba UNQUALIFIED
Ashley B PerinJapanStephen Shaw NEGOTIATION
Johnson M StensethUnited KingdomStephen Shaw UNQUALIFIED
Tony P FollerCanadaBernardo Dominic RENEWAL
Stacey Y VenereJapanIoni Bowcher NEGOTIATION
Aruna R PerinJapanAnna Fali QUALIFIED
Salvatore E CaldareraIndiaElwin Sharvill NEGOTIATION
Silvio F KuskoUnited KingdomStephen Shaw UNQUALIFIED
Arvin R AlbaresBrazilIoni Bowcher PROPOSAL
Mujtaba V MorascaUnited KingdomBernardo Dominic QUALIFIED
Isabel Z SlusarskiAustraliaIoni Bowcher UNQUALIFIED
Jennifer F AmigonSpainXuxue Feng UNQUALIFIED
Mayumi S DoeUnited KingdomBernardo Dominic UNQUALIFIED
Jefferson B InouyeArgentinaAsiya Javayant UNQUALIFIED
Izzy H RutaGermanyStephen Shaw PROPOSAL
Cody W DarakjyGermanyOnyama Limba PROPOSAL
David G BriddickItalyElwin Sharvill NEW
Juan L WieserGermanyAmy Elsner PROPOSAL
Nicolas T PoquetteRussiaIoni Bowcher NEW
Jennifer S GillianFranceBernardo Dominic PROPOSAL
Jeanfrancois F FollerJapanIvan Magalhaes UNQUALIFIED
Smith I StockhamGermanyBernardo Dominic RENEWAL
Frozen Columns
Name
Isabel L Iturbide
Cody H Royster
Jennifer Y Perin
Mayumi K Shinko
Mujtaba E Ruta
Tony O Doe
Mujtaba I Gaucho
James J Gaucho
Izzy F Marrier
Johnson O Perin
Greenwood X Sergi
Juan G Maclead
Sinclair H Flosi
Antonio Y Butt
Rodrigues N Bowley
Darci R Maclead
Rodrigues F Shinko
Stacey M Vocelka
Faith I Stenseth
Kaitlin Y Iturbide
Leja H Oldroyd
Tony B Amigon
Leon N Morasca
Jones V Malet
Octavia C Nicka
Julie F Wieser
Claire W Schemmer
Aditya Q Foller
Claire W Glick
David I Kolmetz
Arvin L Ostrosky
Jennifer W Oldroyd
Rodrigues S Whobrey
Sinclair V Kolmetz
Jones W Waycott
Darci Z Caudy
Clifford O Wieser
Jennifer D Caudy
Arvin G Slusarski
Leon X Albares
Murillo G Figeroa
Cody Z Schemmer
Antonio E Darakjy
Jennifer E Doe
Alejandro V Maclead
Nicolas S Inouye
Mujtaba S Rim
Kadeem N Stockham
Tony D Butt
Greenwood Y Waycott
IdCountryDate
1000India2026-02-15
1001Japan2026-01-29
1002Germany2026-02-16
1003Brazil2026-02-15
1004Japan2026-02-03
1005India2026-02-15
1006Brazil2026-01-19
1007India2026-01-18
1008Australia2026-01-18
1009Australia2026-02-14
1010Japan2026-02-10
1011Argentina2026-02-11
1012France2026-01-30
1013Italy2026-02-02
1014Germany2026-02-06
1015Australia2026-02-11
1016India2026-02-14
1017Australia2026-01-28
1018Argentina2026-02-01
1019Spain2026-02-01
1020Brazil2026-01-29
1021Germany2026-01-27
1022Spain2026-02-01
1023Russia2026-02-12
1024United Kingdom2026-01-27
1025Russia2026-02-10
1026Russia2026-02-07
1027France2026-01-23
1028Canada2026-02-07
1029Brazil2026-01-20
1030United Kingdom2026-01-25
1031Russia2026-02-01
1032Argentina2026-01-28
1033France2026-02-09
1034Japan2026-02-06
1035Argentina2026-02-16
1036Germany2026-01-23
1037France2026-01-20
1038United Kingdom2026-01-27
1039Argentina2026-01-18
1040Italy2026-02-03
1041Japan2026-01-21
1042Argentina2026-02-02
1043India2026-02-01
1044France2026-02-07
1045India2026-02-10
1046Brazil2026-01-20
1047Brazil2026-01-27
1048Japan2026-02-08
1049India2026-02-06

On-Demand Data

NameIdCountryDate
Costa K Albares1000Japan2026-02-06
Costa J Whobrey1001Argentina2026-02-12
Leja K Ferencz1002France2026-02-01
Deepesh X Royster1003Japan2026-02-16
Kaitlin H Tollner1004United Kingdom2026-02-13
Francesco N Glick1005United Kingdom2026-02-04
Julie J Figeroa1006France2026-01-26
Maria Z Flosi1007Italy2026-02-06
Aruna D Maclead1008Argentina2026-02-10
Silvio E Nicka1009India2026-02-04
Salvatore W Maclead1010Canada2026-02-10
Misaki X Stockham1011Brazil2026-02-12
Maria T Maclead1012Australia2026-01-27
Leja U Doe1013Germany2026-01-30
Octavia W Malet1014Japan2026-01-21
Kaitlin H Dilliard1015Canada2026-01-18
Chavez V Kolmetz1016Japan2026-02-09
Aditya Z Stenseth1017Brazil2026-02-09
Stacey G Tollner1018Russia2026-02-06
Julie S Royster1019India2026-01-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair N PaprockiRussiaXuxue Feng PROPOSAL
Isabel C SaylorsItalyOnyama Limba UNQUALIFIED
Arvin G GauchoGermanyAnna Fali NEGOTIATION
Ashley X BriddickRussiaIvan Magalhaes PROPOSAL
Ashley L MarrierGermanyStephen Shaw PROPOSAL
Maisha K MacleadGermanyXuxue Feng NEW
Silvio R CaudyUnited KingdomAsiya Javayant RENEWAL
Kaitlin O WieserFranceElwin Sharvill UNQUALIFIED
Greenwood Z CampainArgentinaIoni Bowcher RENEWAL
Deepesh S GillianFranceElwin Sharvill QUALIFIED
Nicolas V MarrierSpainAnna Fali PROPOSAL
Octavia F DarakjySpainOnyama Limba RENEWAL
Mayumi T GarufiRussiaAmy Elsner NEGOTIATION
Adams A SlusarskiFranceStephen Shaw RENEWAL
Kadeem N RimGermanyIvan Magalhaes UNQUALIFIED
Darci A ChuiAustraliaBernardo Dominic NEW
Alejandro P GlickRussiaAsiya Javayant PROPOSAL
Sinclair L MacleadUnited KingdomAsiya Javayant NEGOTIATION
Smith A FerenczFranceAmy Elsner QUALIFIED
Jefferson T IturbideCanadaBernardo Dominic NEGOTIATION
Aditya Q AlbaresFranceAnna Fali QUALIFIED
Nicolas O DilliardSpainStephen Shaw NEW
Kaitlin Z FollerAustraliaIoni Bowcher PROPOSAL
Ricardo V GarufiSpainOnyama Limba RENEWAL
Mayumi A NestleBrazilXuxue Feng QUALIFIED
Claire X WieserArgentinaStephen Shaw QUALIFIED
Claire C FerenczItalyBernardo Dominic PROPOSAL
Adams P BowleyItalyIoni Bowcher UNQUALIFIED
Silvio K KuskoRussiaAmy Elsner UNQUALIFIED
Emily A StockhamBrazilIvan Magalhaes QUALIFIED
Ashley H SaylorsGermanyBernardo Dominic UNQUALIFIED
Juan D PaprockiItalyIvan Magalhaes UNQUALIFIED
Costa Y TollnerUnited KingdomOnyama Limba RENEWAL
Maria W FerenczGermanyAsiya Javayant NEGOTIATION
Ivar Q SchemmerBrazilBernardo Dominic NEW
Izzy H MaletUnited KingdomIvan Magalhaes NEGOTIATION
Octavia K DilliardItalyXuxue Feng NEW
Aika W RoysterItalyXuxue Feng NEGOTIATION
Tony X SergiFranceOnyama Limba UNQUALIFIED
Ricardo E DarakjyArgentinaOnyama Limba 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.