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
Mayumi Q WaycottAustraliaXuxue Feng NEW
David C AlbaresUnited KingdomOnyama Limba UNQUALIFIED
Ashley I IturbideIndiaAsiya Javayant QUALIFIED
Wickens A IturbideAustraliaIoni Bowcher NEGOTIATION
Aditya P RimFranceIoni Bowcher NEGOTIATION
Sinclair O TollnerIndiaStephen Shaw NEW
Emily C RoysterBrazilXuxue Feng NEW
Isabel F ButtIndiaIoni Bowcher NEGOTIATION
Ricardo P CaldareraJapanBernardo Dominic UNQUALIFIED
Isabel K FigeroaBrazilBernardo Dominic UNQUALIFIED
Tony L ShinkoItalyBernardo Dominic NEGOTIATION
Alejandro Z DoeFranceAsiya Javayant QUALIFIED
Darci T PerinArgentinaAmy Elsner UNQUALIFIED
Juan N GillianIndiaAmy Elsner NEGOTIATION
Salvatore E BologniaBrazilAmy Elsner UNQUALIFIED
Rodrigues A RoysterGermanyStephen Shaw QUALIFIED
Faith U DilliardItalyOnyama Limba NEGOTIATION
Murillo Q SergiCanadaBernardo Dominic UNQUALIFIED
Sinclair E DoeUnited KingdomAsiya Javayant UNQUALIFIED
Ashley H AlbaresRussiaXuxue Feng PROPOSAL
Salvatore J VenereIndiaIoni Bowcher QUALIFIED
Leja N FigeroaCanadaOnyama Limba UNQUALIFIED
Ivar I InouyeItalyOnyama Limba NEGOTIATION
Morrow S SergiJapanOnyama Limba RENEWAL
Isabel Q MaletUnited KingdomIoni Bowcher NEGOTIATION
Ivar I FollerUnited KingdomAsiya Javayant UNQUALIFIED
Murillo N WhobreyRussiaAmy Elsner NEW
Julie P StockhamSpainBernardo Dominic UNQUALIFIED
Greenwood X SlusarskiJapanIvan Magalhaes PROPOSAL
David J ChuiItalyIoni Bowcher QUALIFIED
Misaki U WhobreyAustraliaAsiya Javayant QUALIFIED
Arvin Y SlusarskiItalyAmy Elsner RENEWAL
Stacey W GillianAustraliaElwin Sharvill PROPOSAL
Aruna C FigeroaJapanXuxue Feng NEW
Emily B DoeBrazilIoni Bowcher NEW
Maisha L GillianAustraliaIvan Magalhaes RENEWAL
Mayumi S BriddickJapanElwin Sharvill PROPOSAL
Chavez K RutaRussiaAsiya Javayant NEGOTIATION
Wickens I CaldareraJapanOnyama Limba NEGOTIATION
Jones T AlbaresGermanyAnna Fali UNQUALIFIED
Emily F DarakjyItalyElwin Sharvill RENEWAL
Alejandro T RutaBrazilIvan Magalhaes NEGOTIATION
Leon V SaylorsCanadaXuxue Feng QUALIFIED
Julie U AmigonJapanAmy Elsner NEGOTIATION
Leon G BologniaUnited KingdomAmy Elsner RENEWAL
Smith G ShinkoCanadaAnna Fali RENEWAL
Kadeem P MaletIndiaIvan Magalhaes PROPOSAL
Rodrigues U SaylorsJapanIvan Magalhaes QUALIFIED
Leja T RutaUnited KingdomOnyama Limba NEGOTIATION
Mayumi R DarakjyBrazilAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Mayumi M GarufiArgentinaAmy Elsner RENEWAL
Jefferson V DilliardBrazilAnna Fali NEGOTIATION
Silvio G InouyeBrazilOnyama Limba QUALIFIED
Jefferson Q FlosiFranceElwin Sharvill PROPOSAL
Kadeem H RimArgentinaAsiya Javayant QUALIFIED
Kaitlin W OstroskyFranceAnna Fali NEW
Isabel D SaylorsUnited KingdomAnna Fali QUALIFIED
Claire N FollerSpainBernardo Dominic NEW
Wickens X SaylorsSpainStephen Shaw RENEWAL
Maisha F InouyeBrazilOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria Q PoquetteAustralia2026-04-11Rousseaux, Michael Esq UNQUALIFIED21Xuxue Feng
1001Leja C MaletIndia2026-04-15Feiner Bros UNQUALIFIED12Onyama Limba
1002Murillo E NestleUnited Kingdom2026-04-16King, Christopher A Esq QUALIFIED5Anna Fali
1003Mayumi L SergiSpain2026-04-08Buckley Miller Wright NEW72Anna Fali
1004Jeanfrancois A VenereSpain2026-04-02Feiner Bros PROPOSAL77Bernardo Dominic
1005Leon D SlusarskiBrazil2026-04-21Rangoni Of Florence UNQUALIFIED80Xuxue Feng
1006Claire D DilliardAustralia2026-04-05Truhlar And Truhlar Attys RENEWAL88Amy Elsner
1007Mujtaba U CaudyCanada2026-04-03Feiner Bros QUALIFIED14Bernardo Dominic
1008Leon B AmigonSpain2026-03-24Feiner Bros QUALIFIED43Stephen Shaw
1009Jennifer D WieserCanada2026-04-14Benton, John B Jr NEGOTIATION57Amy Elsner
1010Francesco L FollerGermany2026-04-15Feltz Printing Service QUALIFIED14Ioni Bowcher
1011Leja V StockhamRussia2026-04-12Chapman, Ross E Esq PROPOSAL46Amy Elsner
1012Aika I AlbaresUnited Kingdom2026-04-10Chapman, Ross E Esq RENEWAL62Onyama Limba
1013Kaitlin J BriddickFrance2026-04-12Chemel, James L Cpa NEGOTIATION81Asiya Javayant
1014Stacey W RoysterItaly2026-04-05Commercial Press NEW69Ivan Magalhaes
1015Jones J RimSpain2026-04-19Truhlar And Truhlar Attys QUALIFIED39Bernardo Dominic
1016Leja F SergiGermany2026-04-15Commercial Press QUALIFIED5Ivan Magalhaes
1017Claire A WieserAustralia2026-04-01Dorl, James J Esq QUALIFIED98Ivan Magalhaes
1018Julie G DilliardArgentina2026-04-15Benton, John B Jr UNQUALIFIED69Ioni Bowcher
1019Octavia B WaycottAustralia2026-04-05Buckley Miller Wright NEW36Asiya Javayant
1020Darci N FlosiFrance2026-04-05Dorl, James J Esq QUALIFIED52Ivan Magalhaes
1021James D GillianBrazil2026-04-13Truhlar And Truhlar Attys PROPOSAL25Stephen Shaw
1022Aruna L VenereCanada2026-04-04Rangoni Of Florence PROPOSAL28Stephen Shaw
1023Maisha S StockhamIndia2026-04-19Printing Dimensions UNQUALIFIED70Onyama Limba
1024Misaki V NestleItaly2026-04-16Feiner Bros NEGOTIATION38Ioni Bowcher
1025Adams R BologniaGermany2026-04-10Chanay, Jeffrey A Esq UNQUALIFIED7Amy Elsner
1026Nicolas R GillianIndia2026-03-29Morlong Associates UNQUALIFIED58Xuxue Feng
1027Jones Q WhobreySpain2026-04-01Feltz Printing Service PROPOSAL93Ioni Bowcher
1028Octavia S GauchoJapan2026-04-18King, Christopher A Esq NEGOTIATION34Stephen Shaw
1029Smith C MacleadCanada2026-04-21Truhlar And Truhlar Attys RENEWAL24Asiya Javayant
1030Murillo E MaletJapan2026-03-28Rousseaux, Michael Esq NEW75Ioni Bowcher
1031Mayumi V RoysterArgentina2026-03-31Chanay, Jeffrey A Esq UNQUALIFIED63Onyama Limba
1032Mujtaba W RoysterGermany2026-04-02Chapman, Ross E Esq NEW2Stephen Shaw
1033Isabel A VocelkaAustralia2026-04-20Truhlar And Truhlar Attys UNQUALIFIED48Bernardo Dominic
1034Kadeem Y GlickAustralia2026-03-28Benton, John B Jr QUALIFIED71Anna Fali
1035Julie D FerenczIndia2026-03-29Chemel, James L Cpa RENEWAL52Elwin Sharvill
1036Clifford J SergiBrazil2026-04-18King, Christopher A Esq RENEWAL93Amy Elsner
1037Mujtaba J NickaGermany2026-04-18King, Christopher A Esq PROPOSAL36Ioni Bowcher
1038Salvatore Q SlusarskiSpain2026-04-07Benton, John B Jr NEW70Bernardo Dominic
1039Claire E MorascaArgentina2026-04-20Commercial Press PROPOSAL39Amy Elsner
1040Deepesh H VenereArgentina2026-03-30Feltz Printing Service UNQUALIFIED84Anna Fali
1041Morrow A VocelkaBrazil2026-04-10Morlong Associates PROPOSAL39Ioni Bowcher
1042Costa Z TollnerUnited Kingdom2026-03-27Feltz Printing Service NEW6Ivan Magalhaes
1043Claire D FigeroaItaly2026-03-26Printing Dimensions PROPOSAL3Asiya Javayant
1044Misaki L RutaCanada2026-03-29Chapman, Ross E Esq PROPOSAL48Amy Elsner
1045Johnson J OldroydCanada2026-04-09Chapman, Ross E Esq PROPOSAL33Xuxue Feng
1046Claire Y SaylorsFrance2026-04-22Rousseaux, Michael Esq QUALIFIED89Anna Fali
1047Deepesh B WaycottCanada2026-04-02Rangoni Of Florence PROPOSAL72Onyama Limba
1048Izzy A SchemmerAustralia2026-03-29Feltz Printing Service NEGOTIATION91Stephen Shaw
1049Deepesh P MaletItaly2026-04-14Dorl, James J Esq NEGOTIATION84Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Darci C AmigonCanadaIoni Bowcher QUALIFIED
Jones N GarufiUnited KingdomIoni Bowcher NEGOTIATION
Deepesh T GlickUnited KingdomIoni Bowcher NEW
Aika W WieserUnited KingdomStephen Shaw QUALIFIED
Claire O InouyeArgentinaIoni Bowcher QUALIFIED
Aruna N MorascaGermanyOnyama Limba NEGOTIATION
Jefferson J MorascaAustraliaIoni Bowcher PROPOSAL
Tony L FollerSpainAmy Elsner QUALIFIED
Alejandro K GauchoIndiaAnna Fali PROPOSAL
Adams U RoysterUnited KingdomBernardo Dominic UNQUALIFIED
Tony T RutaSpainIvan Magalhaes QUALIFIED
Salvatore L BriddickFranceAsiya Javayant PROPOSAL
Nicolas Y PerinRussiaStephen Shaw NEGOTIATION
Greenwood P KuskoItalyAnna Fali NEW
Jefferson Q VocelkaSpainAsiya Javayant NEW
Leja W FerenczCanadaAmy Elsner RENEWAL
Johnson I PaprockiFranceAsiya Javayant NEGOTIATION
Alejandro B KolmetzFranceAnna Fali RENEWAL
David H DarakjyBrazilAmy Elsner UNQUALIFIED
Aditya R CaudyJapanAsiya Javayant PROPOSAL
Tony J NestleRussiaAmy Elsner NEGOTIATION
Kaitlin K TollnerIndiaAsiya Javayant RENEWAL
Costa W TollnerItalyAmy Elsner PROPOSAL
Mujtaba M CampainArgentinaBernardo Dominic RENEWAL
Jeanfrancois A PoquetteArgentinaOnyama Limba NEW
Ivar A SchemmerRussiaAmy Elsner RENEWAL
Juan K StockhamSpainElwin Sharvill QUALIFIED
Chavez G GarufiGermanyAnna Fali UNQUALIFIED
Faith N SergiIndiaBernardo Dominic UNQUALIFIED
Julie J NickaArgentinaOnyama Limba QUALIFIED
Misaki X AmigonSpainAmy Elsner NEW
Stacey P RoysterItalyIoni Bowcher NEW
Stacey O KuskoAustraliaAnna Fali NEW
James C ShinkoJapanOnyama Limba NEGOTIATION
Tony H BriddickSpainIoni Bowcher PROPOSAL
Deepesh C PoquetteIndiaIoni Bowcher QUALIFIED
Jones K WieserArgentinaBernardo Dominic RENEWAL
Salvatore K MorascaGermanyXuxue Feng RENEWAL
Claire W ChuiGermanyBernardo Dominic NEW
Munro Y SchemmerRussiaBernardo Dominic QUALIFIED
Leja O RoysterAustraliaAsiya Javayant NEW
Leja X PerinJapanElwin Sharvill NEW
Juan F PerinGermanyOnyama Limba UNQUALIFIED
Greenwood K RimBrazilAsiya Javayant PROPOSAL
Faith B ChuiCanadaAsiya Javayant PROPOSAL
Costa F RimGermanyIvan Magalhaes RENEWAL
Nicolas M AmigonSpainBernardo Dominic PROPOSAL
David G MacleadArgentinaIvan Magalhaes UNQUALIFIED
Costa M ChuiUnited KingdomIvan Magalhaes NEW
Chavez H KolmetzIndiaElwin Sharvill RENEWAL
Frozen Columns
Name
Johnson X Maclead
Julie H Royster
Johnson W Darakjy
Emily Z Rim
Misaki S Kolmetz
Darci J Amigon
Aditya A Malet
Aditya E Malet
Tony O Chui
Jones A Ferencz
Nicolas M Ostrosky
Jennifer T Venere
Stacey U Oldroyd
Jeanfrancois Z Tollner
Salvatore R Kusko
Emily Q Vocelka
Mayumi Q Iturbide
Jennifer W Amigon
Ivar K Gillian
Leja H Paprocki
Sinclair Z Flosi
Alejandro G Rulapaugh
Kaitlin X Kolmetz
Claire I Morasca
Mayumi I Albares
Maisha O Malet
Jefferson X Caudy
Leon C Shinko
Emily Q Flosi
Arvin T Iturbide
Jennifer J Poquette
Julie T Gillian
Sinclair U Whobrey
Octavia E Gillian
Rodrigues D Butt
Johnson D Gaucho
Munro K Slusarski
Smith X Iturbide
Jeanfrancois Q Inouye
Ivar U Slusarski
Mayumi W Ruta
Darci A Nestle
Silvio M Ferencz
Leon J Foller
Kadeem D Bolognia
Tony O Iturbide
Octavia P Albares
Ricardo N Glick
Cody C Campain
Ricardo B Ostrosky
IdCountryDate
1000Russia2026-04-13
1001France2026-04-11
1002Japan2026-04-13
1003Germany2026-03-29
1004United Kingdom2026-04-22
1005Japan2026-04-10
1006Spain2026-04-06
1007Spain2026-04-04
1008Japan2026-03-29
1009United Kingdom2026-04-14
1010Germany2026-03-24
1011France2026-03-26
1012United Kingdom2026-04-14
1013India2026-04-05
1014Germany2026-04-11
1015Canada2026-04-05
1016Russia2026-04-03
1017Germany2026-04-15
1018Canada2026-04-18
1019India2026-04-08
1020Spain2026-04-06
1021Germany2026-04-07
1022Japan2026-04-09
1023Germany2026-04-20
1024Germany2026-04-04
1025Italy2026-04-09
1026Canada2026-03-24
1027France2026-03-29
1028Russia2026-03-25
1029United Kingdom2026-04-06
1030Brazil2026-04-09
1031Spain2026-04-14
1032Russia2026-03-30
1033Italy2026-04-18
1034Spain2026-03-25
1035Spain2026-04-20
1036Japan2026-04-03
1037France2026-04-11
1038Argentina2026-04-16
1039Japan2026-04-08
1040Germany2026-04-19
1041United Kingdom2026-04-04
1042India2026-04-19
1043United Kingdom2026-04-11
1044Germany2026-04-04
1045Brazil2026-03-25
1046United Kingdom2026-04-14
1047Spain2026-03-25
1048Italy2026-04-17
1049Italy2026-03-24

On-Demand Data

NameIdCountryDate
Greenwood I Paprocki1000Australia2026-04-22
Misaki C Albares1001Spain2026-04-10
Octavia K Iturbide1002Brazil2026-04-07
Maria T Dilliard1003Germany2026-04-11
Morrow V Ostrosky1004France2026-04-05
Julie W Stenseth1005Brazil2026-04-14
Antonio D Glick1006Germany2026-04-05
Murillo A Iturbide1007United Kingdom2026-04-20
Antonio L Butt1008Germany2026-04-10
Greenwood U Venere1009France2026-03-31
Murillo I Kolmetz1010Japan2026-03-31
Wickens L Chui1011Spain2026-04-10
Tony D Flosi1012France2026-04-20
Deepesh J Paprocki1013Russia2026-04-03
Nicolas Y Poquette1014India2026-04-06
Octavia Y Venere1015Germany2026-04-05
Clifford A Caldarera1016Brazil2026-04-19
Juan K Venere1017Australia2026-04-08
Maria Y Stockham1018Australia2026-03-25
Chavez S Stenseth1019France2026-04-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens J SergiUnited KingdomAmy Elsner UNQUALIFIED
Claire M BriddickJapanElwin Sharvill QUALIFIED
Rodrigues K PoquetteBrazilAmy Elsner NEGOTIATION
Alejandro Y PaprockiRussiaElwin Sharvill NEGOTIATION
Emily C CaldareraJapanAsiya Javayant QUALIFIED
Mujtaba Y AlbaresBrazilAmy Elsner NEGOTIATION
Leja N BologniaCanadaAmy Elsner PROPOSAL
Cody B IturbideAustraliaIoni Bowcher NEW
Aditya R SergiBrazilAnna Fali NEGOTIATION
Salvatore W GarufiSpainXuxue Feng UNQUALIFIED
Leon D PaprockiBrazilStephen Shaw PROPOSAL
Alejandro Q RutaSpainBernardo Dominic PROPOSAL
Leon F CampainAustraliaIoni Bowcher NEW
Ricardo F FigeroaAustraliaAnna Fali NEW
Johnson H FerenczBrazilBernardo Dominic QUALIFIED
Arvin R TollnerIndiaIoni Bowcher NEGOTIATION
Sinclair L DoeJapanAmy Elsner QUALIFIED
Mujtaba C NickaUnited KingdomAnna Fali QUALIFIED
Aruna A SergiRussiaAsiya Javayant PROPOSAL
Maisha D OldroydRussiaBernardo Dominic PROPOSAL
Murillo Z GlickCanadaElwin Sharvill NEGOTIATION
Jennifer D TollnerJapanAnna Fali NEGOTIATION
Ivar E CampainItalyIoni Bowcher UNQUALIFIED
James C MaletBrazilIoni Bowcher RENEWAL
James L TollnerJapanIoni Bowcher NEW
Antonio Z MaletIndiaAmy Elsner PROPOSAL
Silvio U GauchoIndiaXuxue Feng NEGOTIATION
Greenwood D InouyeIndiaStephen Shaw UNQUALIFIED
Emily I FollerJapanBernardo Dominic NEW
Tony E VocelkaAustraliaStephen Shaw RENEWAL
Kadeem X GillianJapanXuxue Feng PROPOSAL
Kadeem A BologniaSpainAnna Fali NEGOTIATION
Octavia L ChuiGermanyBernardo Dominic UNQUALIFIED
Salvatore F AmigonBrazilIvan Magalhaes RENEWAL
Adams V WaycottFranceElwin Sharvill PROPOSAL
Antonio X MorascaUnited KingdomXuxue Feng RENEWAL
Aika F GillianArgentinaOnyama Limba RENEWAL
Tony V KolmetzAustraliaBernardo Dominic QUALIFIED
Morrow S OstroskyArgentinaStephen Shaw QUALIFIED
Salvatore Q FlosiIndiaAnna Fali 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.