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
Julie I DarakjyJapanElwin Sharvill RENEWAL
Leon N GarufiAustraliaAmy Elsner RENEWAL
Claire E IturbideItalyAsiya Javayant RENEWAL
Johnson Q StockhamFranceAnna Fali NEGOTIATION
Emily G BologniaCanadaStephen Shaw NEW
Greenwood V WhobreyGermanyAnna Fali PROPOSAL
Murillo J RulapaughSpainAmy Elsner QUALIFIED
Munro S BriddickBrazilElwin Sharvill QUALIFIED
Costa Z GauchoRussiaIoni Bowcher UNQUALIFIED
Johnson S NestleArgentinaBernardo Dominic PROPOSAL
Johnson U VocelkaJapanIvan Magalhaes NEGOTIATION
Smith P ChuiCanadaStephen Shaw NEW
Wickens P ButtArgentinaOnyama Limba UNQUALIFIED
Johnson E StensethRussiaElwin Sharvill QUALIFIED
Leja O DarakjyGermanyIvan Magalhaes QUALIFIED
James Z RimSpainXuxue Feng NEGOTIATION
Aditya Y OldroydBrazilOnyama Limba NEGOTIATION
Jefferson M VocelkaSpainAsiya Javayant PROPOSAL
Mujtaba Y GarufiItalyIvan Magalhaes QUALIFIED
Jeanfrancois G RimCanadaAmy Elsner NEW
Kadeem T GauchoIndiaBernardo Dominic PROPOSAL
Deepesh G ShinkoGermanyElwin Sharvill NEW
Munro X WieserCanadaAsiya Javayant UNQUALIFIED
Antonio P OstroskyUnited KingdomXuxue Feng QUALIFIED
Emily W VocelkaRussiaElwin Sharvill NEGOTIATION
Costa K MaletAustraliaOnyama Limba NEW
Munro M DilliardJapanElwin Sharvill UNQUALIFIED
Aika N PerinJapanXuxue Feng NEGOTIATION
Jefferson F TollnerCanadaAmy Elsner NEW
Johnson U SlusarskiJapanElwin Sharvill PROPOSAL
Isabel R SlusarskiCanadaAsiya Javayant PROPOSAL
Morrow Q RimAustraliaAnna Fali RENEWAL
Deepesh U GauchoJapanAsiya Javayant NEW
Aika L WhobreyIndiaStephen Shaw QUALIFIED
James F BowleyBrazilXuxue Feng UNQUALIFIED
Costa L InouyeArgentinaAmy Elsner NEW
James K DoeBrazilAnna Fali QUALIFIED
Costa D MacleadSpainIoni Bowcher PROPOSAL
Cody F BologniaArgentinaIvan Magalhaes UNQUALIFIED
Ashley V RutaIndiaIvan Magalhaes NEW
Mayumi L StockhamRussiaAmy Elsner QUALIFIED
Izzy K ButtCanadaBernardo Dominic NEW
Adams G RutaUnited KingdomAsiya Javayant PROPOSAL
Maria G CaldareraUnited KingdomAnna Fali NEGOTIATION
Juan D ChuiItalyAmy Elsner NEGOTIATION
Izzy R RoysterSpainAnna Fali QUALIFIED
David L InouyeIndiaOnyama Limba NEW
Cody O VenereBrazilOnyama Limba NEGOTIATION
Munro R BriddickCanadaAmy Elsner NEW
Nicolas C VocelkaBrazilBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Izzy Q MacleadRussiaIvan Magalhaes NEW
Juan N KuskoIndiaXuxue Feng NEW
Octavia R PerinArgentinaBernardo Dominic QUALIFIED
Alejandro G InouyeFranceIoni Bowcher QUALIFIED
Juan Z FollerUnited KingdomAsiya Javayant UNQUALIFIED
Greenwood A RulapaughRussiaIoni Bowcher NEGOTIATION
Alejandro M KuskoAustraliaAnna Fali NEGOTIATION
Tony N MacleadSpainIvan Magalhaes NEGOTIATION
Greenwood T NickaItalyIoni Bowcher PROPOSAL
Ivar C BowleyItalyBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo Q CaldareraRussia2026-06-12Buckley Miller Wright UNQUALIFIED13Amy Elsner
1001Mayumi C OldroydGermany2026-06-13Benton, John B Jr NEW11Xuxue Feng
1002Aika Z KolmetzIndia2026-06-16Rangoni Of Florence UNQUALIFIED17Ioni Bowcher
1003Smith F VocelkaFrance2026-06-10Chemel, James L Cpa NEW11Elwin Sharvill
1004Aditya L CampainBrazil2026-05-24King, Christopher A Esq NEGOTIATION41Amy Elsner
1005Octavia C CampainRussia2026-05-24Feltz Printing Service NEGOTIATION49Amy Elsner
1006Murillo T DilliardAustralia2026-06-08Chapman, Ross E Esq QUALIFIED89Ioni Bowcher
1007Mayumi N CampainIndia2026-06-02Rangoni Of Florence RENEWAL20Amy Elsner
1008Antonio J RutaBrazil2026-06-08Chemel, James L Cpa PROPOSAL2Ioni Bowcher
1009Alejandro S OstroskyRussia2026-06-02Feiner Bros NEGOTIATION82Bernardo Dominic
1010Maria F RulapaughJapan2026-05-22Benton, John B Jr NEGOTIATION90Stephen Shaw
1011Clifford D DilliardRussia2026-06-15Chapman, Ross E Esq RENEWAL32Stephen Shaw
1012Jeanfrancois R KolmetzIndia2026-05-30Dorl, James J Esq RENEWAL91Onyama Limba
1013Claire X MaletUnited Kingdom2026-06-17Buckley Miller Wright RENEWAL14Ivan Magalhaes
1014Octavia O ButtIndia2026-06-14Feltz Printing Service PROPOSAL68Stephen Shaw
1015Munro W MarrierAustralia2026-06-02Chapman, Ross E Esq QUALIFIED68Asiya Javayant
1016Murillo O PerinIndia2026-06-17Commercial Press UNQUALIFIED26Ioni Bowcher
1017Faith C MaletRussia2026-05-19Dorl, James J Esq NEGOTIATION62Ivan Magalhaes
1018Sinclair P FerenczJapan2026-05-21Dorl, James J Esq PROPOSAL93Bernardo Dominic
1019Salvatore U WieserCanada2026-06-02Truhlar And Truhlar Attys QUALIFIED51Ivan Magalhaes
1020Leja G FollerBrazil2026-06-02Rousseaux, Michael Esq RENEWAL2Onyama Limba
1021Ricardo K MarrierRussia2026-06-16Truhlar And Truhlar Attys QUALIFIED83Ioni Bowcher
1022Antonio Y FlosiUnited Kingdom2026-06-04Morlong Associates NEW76Bernardo Dominic
1023Jeanfrancois G ShinkoArgentina2026-06-13Chemel, James L Cpa UNQUALIFIED69Asiya Javayant
1024Rodrigues I CampainIndia2026-05-23Printing Dimensions PROPOSAL75Xuxue Feng
1025Jeanfrancois N SergiUnited Kingdom2026-06-15Chanay, Jeffrey A Esq NEW55Onyama Limba
1026Maisha S InouyeBrazil2026-05-21Truhlar And Truhlar Attys UNQUALIFIED18Xuxue Feng
1027Arvin E OldroydUnited Kingdom2026-06-07Benton, John B Jr NEW80Anna Fali
1028Isabel A ButtJapan2026-05-24Morlong Associates QUALIFIED69Amy Elsner
1029Smith S ChuiBrazil2026-06-02Dorl, James J Esq UNQUALIFIED78Xuxue Feng
1030Stacey A WaycottAustralia2026-06-05Rousseaux, Michael Esq NEW6Xuxue Feng
1031Ivar C AmigonBrazil2026-06-09Chanay, Jeffrey A Esq UNQUALIFIED12Amy Elsner
1032Faith F BriddickGermany2026-06-16Commercial Press UNQUALIFIED22Asiya Javayant
1033Jennifer N PerinArgentina2026-06-11Benton, John B Jr QUALIFIED88Stephen Shaw
1034Aika Y TollnerAustralia2026-05-25Feltz Printing Service PROPOSAL8Ivan Magalhaes
1035Claire N KuskoRussia2026-06-06Chapman, Ross E Esq NEW43Elwin Sharvill
1036Aruna A SaylorsSpain2026-06-07Printing Dimensions NEGOTIATION71Asiya Javayant
1037Maria S SaylorsUnited Kingdom2026-05-27King, Christopher A Esq PROPOSAL14Xuxue Feng
1038Wickens J BologniaArgentina2026-06-15Feiner Bros RENEWAL8Xuxue Feng
1039Kaitlin B RoysterFrance2026-05-27Dorl, James J Esq RENEWAL38Elwin Sharvill
1040Aika B ButtGermany2026-05-19Feltz Printing Service PROPOSAL5Amy Elsner
1041Silvio N GauchoAustralia2026-05-22Benton, John B Jr QUALIFIED37Asiya Javayant
1042Maria E OldroydFrance2026-05-29Printing Dimensions RENEWAL65Bernardo Dominic
1043Maisha A DarakjyArgentina2026-05-19Truhlar And Truhlar Attys PROPOSAL77Bernardo Dominic
1044Johnson K FerenczArgentina2026-06-17Chanay, Jeffrey A Esq NEW27Stephen Shaw
1045Jeanfrancois B KuskoArgentina2026-05-20Truhlar And Truhlar Attys NEGOTIATION28Ioni Bowcher
1046Chavez D MacleadSpain2026-06-04Buckley Miller Wright PROPOSAL18Anna Fali
1047Arvin E SergiFrance2026-05-31King, Christopher A Esq NEW14Stephen Shaw
1048Munro O IturbideRussia2026-05-29Buckley Miller Wright PROPOSAL22Bernardo Dominic
1049Jefferson J PerinGermany2026-05-21Buckley Miller Wright UNQUALIFIED32Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois H FigeroaSpainStephen Shaw NEGOTIATION
Aruna Z GauchoArgentinaXuxue Feng RENEWAL
Cody D WaycottFranceBernardo Dominic QUALIFIED
James X PerinFranceAnna Fali QUALIFIED
Jeanfrancois D FlosiAustraliaOnyama Limba NEW
Ivar L TollnerCanadaIvan Magalhaes QUALIFIED
Morrow X RutaAustraliaOnyama Limba NEGOTIATION
Aditya D PoquetteSpainBernardo Dominic UNQUALIFIED
Octavia E KuskoSpainIoni Bowcher NEGOTIATION
Jefferson H IturbideArgentinaOnyama Limba PROPOSAL
Juan Q NickaSpainStephen Shaw RENEWAL
Maisha P CaudyArgentinaIvan Magalhaes NEGOTIATION
Clifford C WhobreyFranceElwin Sharvill PROPOSAL
Aika H WhobreyFranceAsiya Javayant UNQUALIFIED
Ricardo V FigeroaCanadaBernardo Dominic NEW
Maisha E ChuiFranceStephen Shaw PROPOSAL
Francesco G WaycottFranceOnyama Limba PROPOSAL
Costa L SchemmerAustraliaAnna Fali NEGOTIATION
Maria G FollerRussiaBernardo Dominic NEGOTIATION
Jennifer B DoeGermanyXuxue Feng NEGOTIATION
Tony Q ShinkoIndiaXuxue Feng PROPOSAL
Munro I FlosiIndiaXuxue Feng NEGOTIATION
Misaki Y RimJapanAsiya Javayant NEW
Clifford J NestleJapanBernardo Dominic QUALIFIED
Ivar O SchemmerRussiaAnna Fali NEW
Sinclair P BowleyJapanAmy Elsner QUALIFIED
Costa K StockhamItalyIvan Magalhaes RENEWAL
Silvio S VocelkaUnited KingdomIoni Bowcher UNQUALIFIED
Kaitlin M CaudyJapanOnyama Limba NEW
Ivar V CaudyArgentinaXuxue Feng UNQUALIFIED
Sinclair E OldroydAustraliaAsiya Javayant RENEWAL
Jones J AlbaresAustraliaXuxue Feng NEW
David I PaprockiItalyAnna Fali UNQUALIFIED
Emily K StockhamAustraliaIvan Magalhaes PROPOSAL
Aruna E IturbideIndiaBernardo Dominic PROPOSAL
Chavez E SlusarskiArgentinaElwin Sharvill QUALIFIED
Octavia U KolmetzItalyAsiya Javayant NEW
Kaitlin C WaycottUnited KingdomElwin Sharvill QUALIFIED
Emily H IturbideItalyAmy Elsner UNQUALIFIED
Cody Y MaletSpainBernardo Dominic UNQUALIFIED
Jones L PaprockiBrazilAnna Fali PROPOSAL
Aruna K NestleAustraliaAsiya Javayant NEGOTIATION
Claire I KolmetzIndiaAmy Elsner NEW
Nicolas C NestleFranceBernardo Dominic NEW
Ivar I MaletSpainIvan Magalhaes UNQUALIFIED
Nicolas M CaudyJapanElwin Sharvill UNQUALIFIED
Adams P ChuiUnited KingdomAsiya Javayant QUALIFIED
Alejandro C FollerJapanOnyama Limba NEGOTIATION
Jones C DarakjyItalyIvan Magalhaes PROPOSAL
Adams O MorascaBrazilAsiya Javayant PROPOSAL
Frozen Columns
Name
Misaki M Kusko
Misaki T Kolmetz
Jennifer D Kusko
Jennifer P Malet
Jones G Caldarera
Rodrigues R Briddick
Cody C Iturbide
Rodrigues W Vocelka
Octavia E Amigon
Chavez T Whobrey
Octavia J Gillian
Mayumi V Nicka
Morrow D Inouye
Juan G Maclead
Aruna B Bowley
Francesco E Amigon
Stacey O Glick
Claire I Gaucho
Tony Y Flosi
Wickens G Rulapaugh
Greenwood I Rulapaugh
Morrow D Paprocki
Johnson H Sergi
Ashley G Shinko
Maisha G Bolognia
Stacey A Maclead
Claire O Dilliard
Cody W Butt
Johnson Z Briddick
Ivar V Kusko
Cody J Garufi
Jones V Poquette
Johnson H Inouye
Jones F Schemmer
Nicolas T Perin
Ivar W Rulapaugh
Alejandro X Rim
Darci I Vocelka
Izzy J Gaucho
Greenwood Z Flosi
Aruna Y Nestle
Ivar R Amigon
Jones R Doe
Stacey X Bolognia
Antonio M Malet
Maisha H Campain
Munro D Figeroa
Murillo I Wieser
Aditya R Stenseth
Ashley X Vocelka
IdCountryDate
1000India2026-06-01
1001Australia2026-05-22
1002United Kingdom2026-06-15
1003Brazil2026-05-26
1004Japan2026-05-28
1005Russia2026-06-05
1006Brazil2026-06-02
1007France2026-05-29
1008Spain2026-05-22
1009France2026-06-06
1010Australia2026-06-06
1011Argentina2026-05-29
1012Canada2026-06-06
1013Japan2026-06-13
1014Italy2026-05-23
1015United Kingdom2026-05-30
1016France2026-05-28
1017Germany2026-06-05
1018Germany2026-05-25
1019Canada2026-05-22
1020Argentina2026-05-28
1021Italy2026-06-04
1022India2026-06-16
1023Australia2026-06-07
1024Italy2026-06-04
1025Argentina2026-06-17
1026India2026-06-09
1027Spain2026-05-24
1028Italy2026-06-06
1029United Kingdom2026-05-27
1030Germany2026-05-23
1031Argentina2026-05-21
1032United Kingdom2026-06-08
1033Argentina2026-06-12
1034Russia2026-05-29
1035France2026-06-17
1036Italy2026-05-23
1037Italy2026-05-19
1038Russia2026-05-21
1039Australia2026-06-02
1040Russia2026-05-27
1041Brazil2026-05-24
1042Brazil2026-05-23
1043Canada2026-05-31
1044France2026-06-13
1045India2026-06-11
1046Spain2026-06-13
1047Brazil2026-06-17
1048Germany2026-06-09
1049France2026-06-05

On-Demand Data

NameIdCountryDate
Isabel R Nestle1000United Kingdom2026-06-10
Jennifer C Rim1001Brazil2026-06-02
Isabel U Vocelka1002Canada2026-06-12
Claire W Nestle1003Canada2026-05-27
Aditya Y Glick1004Argentina2026-06-06
Antonio K Kolmetz1005France2026-06-16
Nicolas I Waycott1006France2026-05-25
Leon U Bolognia1007Russia2026-05-20
Jennifer D Caudy1008Spain2026-05-31
Francesco R Venere1009Japan2026-05-23
Salvatore I Kusko1010Australia2026-06-03
Cody Y Flosi1011Spain2026-06-04
Alejandro M Schemmer1012Italy2026-05-21
Aruna W Venere1013France2026-06-10
Aruna H Ruta1014Russia2026-05-19
Aruna D Tollner1015France2026-05-19
Kadeem P Gillian1016Russia2026-06-04
Sinclair X Maclead1017Spain2026-05-22
Kadeem T Gillian1018Spain2026-06-09
Cody N Caldarera1019Brazil2026-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens W OldroydSpainIvan Magalhaes NEW
Morrow P BriddickUnited KingdomIvan Magalhaes PROPOSAL
Aika S AmigonSpainXuxue Feng QUALIFIED
Octavia D GlickAustraliaXuxue Feng RENEWAL
David E PerinJapanIvan Magalhaes RENEWAL
Johnson E WhobreyCanadaAsiya Javayant UNQUALIFIED
Darci E FollerItalyAsiya Javayant NEW
Tony C RoysterArgentinaIoni Bowcher NEGOTIATION
Juan R MarrierFranceAnna Fali RENEWAL
Ashley L MaletRussiaXuxue Feng QUALIFIED
Francesco T SchemmerSpainAsiya Javayant UNQUALIFIED
Jennifer V KuskoRussiaIvan Magalhaes PROPOSAL
Jones A PaprockiItalyXuxue Feng RENEWAL
Johnson S AlbaresJapanXuxue Feng NEGOTIATION
Leon P BriddickSpainAnna Fali QUALIFIED
Leon A WhobreyUnited KingdomElwin Sharvill UNQUALIFIED
Arvin L GarufiItalyAnna Fali RENEWAL
Jones Q CampainBrazilXuxue Feng PROPOSAL
Misaki B BriddickGermanyStephen Shaw NEW
Arvin Y RimGermanyAmy Elsner NEW
Chavez L ButtSpainAnna Fali RENEWAL
Faith C FerenczIndiaOnyama Limba NEW
Cody B InouyeItalyAmy Elsner NEW
Juan O PoquetteItalyAnna Fali QUALIFIED
Munro Y OldroydBrazilBernardo Dominic UNQUALIFIED
Wickens L CaudyAustraliaXuxue Feng RENEWAL
Arvin Y DoeFranceStephen Shaw NEW
Mayumi Z GillianIndiaIvan Magalhaes RENEWAL
Jones Q WhobreyGermanyAnna Fali UNQUALIFIED
Maisha X GlickIndiaIoni Bowcher NEW
Darci R VocelkaAustraliaAnna Fali UNQUALIFIED
Faith O KolmetzUnited KingdomBernardo Dominic RENEWAL
Juan N NickaCanadaIvan Magalhaes UNQUALIFIED
Mujtaba L KuskoFranceStephen Shaw NEGOTIATION
Nicolas W OldroydAustraliaStephen Shaw PROPOSAL
Morrow A MaletCanadaAmy Elsner RENEWAL
Jefferson N GarufiSpainXuxue Feng RENEWAL
Salvatore X CaldareraArgentinaIvan Magalhaes QUALIFIED
Smith I KuskoGermanyElwin Sharvill NEW
David O SchemmerCanadaAnna Fali UNQUALIFIED

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