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
Ivar V VenereUnited KingdomAmy Elsner NEGOTIATION
Juan Y GarufiCanadaIvan Magalhaes NEW
Kadeem W DarakjyArgentinaBernardo Dominic UNQUALIFIED
Julie G RimItalyAsiya Javayant UNQUALIFIED
Ricardo R WhobreyFranceBernardo Dominic RENEWAL
Nicolas L RimIndiaOnyama Limba NEGOTIATION
Mayumi D SaylorsCanadaAnna Fali QUALIFIED
Aruna U ShinkoUnited KingdomXuxue Feng RENEWAL
Clifford D CaldareraIndiaStephen Shaw PROPOSAL
Morrow Y RulapaughJapanElwin Sharvill QUALIFIED
David B RoysterBrazilAsiya Javayant NEGOTIATION
Claire X PaprockiSpainOnyama Limba NEGOTIATION
Smith W BriddickBrazilStephen Shaw RENEWAL
Aruna Q OstroskyItalyBernardo Dominic NEGOTIATION
Darci O MarrierUnited KingdomAnna Fali UNQUALIFIED
Izzy V CampainItalyStephen Shaw QUALIFIED
Izzy K RoysterArgentinaStephen Shaw RENEWAL
Maisha X GarufiItalyXuxue Feng PROPOSAL
Deepesh K SlusarskiBrazilOnyama Limba PROPOSAL
Clifford R CaudyBrazilXuxue Feng NEGOTIATION
Tony R RulapaughCanadaXuxue Feng RENEWAL
Nicolas O StockhamUnited KingdomAsiya Javayant NEW
Faith A DarakjyFranceBernardo Dominic RENEWAL
Arvin K MacleadIndiaAmy Elsner PROPOSAL
Salvatore Q ChuiItalyBernardo Dominic NEW
Faith W CaldareraItalyElwin Sharvill NEW
Alejandro F OstroskyJapanIoni Bowcher NEW
Jeanfrancois V MaletGermanyElwin Sharvill NEGOTIATION
Maria D VenereFranceOnyama Limba PROPOSAL
Wickens R AlbaresIndiaStephen Shaw QUALIFIED
Ashley G TollnerIndiaAmy Elsner PROPOSAL
Octavia Q BologniaJapanStephen Shaw NEW
Johnson I CampainItalyElwin Sharvill RENEWAL
Jefferson U InouyeRussiaElwin Sharvill PROPOSAL
Leon T DilliardItalyAnna Fali NEW
Deepesh P WaycottCanadaAnna Fali NEW
Kaitlin R SlusarskiCanadaXuxue Feng UNQUALIFIED
Silvio M GillianCanadaOnyama Limba NEW
Maria M WieserFranceStephen Shaw NEW
Aika E MaletGermanyAnna Fali RENEWAL
Kaitlin V FollerFranceAsiya Javayant PROPOSAL
Claire G AlbaresArgentinaBernardo Dominic PROPOSAL
Jones Q PoquetteRussiaIvan Magalhaes NEW
Mayumi J IturbideBrazilIvan Magalhaes NEGOTIATION
Deepesh D CaldareraJapanElwin Sharvill PROPOSAL
Julie T FerenczSpainIvan Magalhaes PROPOSAL
Mujtaba J StockhamUnited KingdomAmy Elsner UNQUALIFIED
Stacey O BologniaSpainElwin Sharvill NEW
Antonio D DilliardItalyAmy Elsner QUALIFIED
Leon Y DarakjyIndiaXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aditya L TollnerJapanIvan Magalhaes UNQUALIFIED
Chavez U SaylorsBrazilAmy Elsner UNQUALIFIED
Izzy O VenereItalyIoni Bowcher UNQUALIFIED
Cody I FlosiSpainAnna Fali UNQUALIFIED
Julie L DoeArgentinaAsiya Javayant PROPOSAL
Aika S GlickIndiaAsiya Javayant RENEWAL
Ashley O StockhamUnited KingdomElwin Sharvill RENEWAL
Munro U MaletGermanyIvan Magalhaes RENEWAL
Tony T StockhamItalyIoni Bowcher NEW
Sinclair G GarufiJapanAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony M ShinkoUnited Kingdom2026-05-20Rangoni Of Florence NEGOTIATION71Stephen Shaw
1001Faith X GauchoArgentina2026-05-06King, Christopher A Esq NEGOTIATION43Asiya Javayant
1002Stacey A MacleadSpain2026-05-27Truhlar And Truhlar Attys PROPOSAL40Asiya Javayant
1003Leon L IturbideRussia2026-05-08Rangoni Of Florence NEGOTIATION56Bernardo Dominic
1004Misaki X SergiCanada2026-05-10Truhlar And Truhlar Attys QUALIFIED20Stephen Shaw
1005Faith X TollnerBrazil2026-05-22Dorl, James J Esq QUALIFIED85Onyama Limba
1006Mayumi W MacleadBrazil2026-05-26Benton, John B Jr PROPOSAL93Amy Elsner
1007Kaitlin P GauchoUnited Kingdom2026-05-16Feltz Printing Service NEW26Elwin Sharvill
1008Nicolas C IturbideBrazil2026-05-16Printing Dimensions RENEWAL47Ivan Magalhaes
1009Wickens U ShinkoGermany2026-05-26Chapman, Ross E Esq NEW46Ioni Bowcher
1010Stacey A AmigonBrazil2026-05-09Benton, John B Jr RENEWAL86Amy Elsner
1011Chavez G BologniaCanada2026-05-08Chemel, James L Cpa UNQUALIFIED78Onyama Limba
1012Octavia A MaletFrance2026-05-26Buckley Miller Wright UNQUALIFIED91Ivan Magalhaes
1013Maisha K CaudySpain2026-05-06Feltz Printing Service RENEWAL53Elwin Sharvill
1014Ashley B RoysterRussia2026-06-02Chanay, Jeffrey A Esq UNQUALIFIED87Ivan Magalhaes
1015Adams Q PerinBrazil2026-05-24Feltz Printing Service PROPOSAL80Ioni Bowcher
1016Costa S WieserIndia2026-05-18Chapman, Ross E Esq QUALIFIED29Onyama Limba
1017Clifford Z CaudyFrance2026-05-25Chemel, James L Cpa NEW1Xuxue Feng
1018Costa Z InouyeUnited Kingdom2026-05-05Printing Dimensions RENEWAL44Stephen Shaw
1019Sinclair Z WieserIndia2026-05-09Chapman, Ross E Esq NEW29Amy Elsner
1020Jefferson E FigeroaGermany2026-05-25Dorl, James J Esq QUALIFIED48Elwin Sharvill
1021Emily L NickaJapan2026-05-19Buckley Miller Wright UNQUALIFIED40Anna Fali
1022Maisha S DarakjyBrazil2026-05-27Morlong Associates QUALIFIED85Asiya Javayant
1023Cody S GarufiItaly2026-05-13Rangoni Of Florence NEGOTIATION17Asiya Javayant
1024Misaki I VenereCanada2026-05-17King, Christopher A Esq QUALIFIED11Ioni Bowcher
1025Emily E CaudySpain2026-05-05Chanay, Jeffrey A Esq NEW26Ivan Magalhaes
1026Salvatore D OldroydFrance2026-05-29Rangoni Of Florence RENEWAL10Ioni Bowcher
1027Claire X WaycottCanada2026-05-30Commercial Press NEGOTIATION28Ioni Bowcher
1028Maisha G PerinSpain2026-06-03Chanay, Jeffrey A Esq NEGOTIATION92Stephen Shaw
1029Francesco T DilliardArgentina2026-05-23Chapman, Ross E Esq NEW31Bernardo Dominic
1030Maria G DilliardArgentina2026-05-11Morlong Associates QUALIFIED77Xuxue Feng
1031Rodrigues T CampainFrance2026-05-28Chapman, Ross E Esq UNQUALIFIED75Xuxue Feng
1032Greenwood A NestleGermany2026-05-13Chemel, James L Cpa RENEWAL19Elwin Sharvill
1033Isabel L BologniaItaly2026-05-31Printing Dimensions RENEWAL11Amy Elsner
1034Antonio L SergiCanada2026-05-06Feltz Printing Service PROPOSAL25Bernardo Dominic
1035James Q ChuiGermany2026-06-03Chapman, Ross E Esq NEW89Anna Fali
1036Adams X RulapaughCanada2026-05-17Feltz Printing Service NEGOTIATION76Anna Fali
1037Rodrigues Y ButtGermany2026-05-14Feltz Printing Service QUALIFIED70Anna Fali
1038Julie D PaprockiRussia2026-05-22Feiner Bros NEW64Anna Fali
1039Aika O GillianBrazil2026-05-15Morlong Associates QUALIFIED32Stephen Shaw
1040Silvio Z SlusarskiGermany2026-05-16Morlong Associates NEGOTIATION21Stephen Shaw
1041Francesco C GillianUnited Kingdom2026-06-03Morlong Associates QUALIFIED31Ivan Magalhaes
1042Munro B BowleyFrance2026-05-27Commercial Press QUALIFIED46Amy Elsner
1043Leon I WieserCanada2026-05-29Chemel, James L Cpa NEW30Asiya Javayant
1044Mayumi T DoeFrance2026-06-01Benton, John B Jr PROPOSAL50Bernardo Dominic
1045Clifford P ButtBrazil2026-05-06Morlong Associates RENEWAL14Ivan Magalhaes
1046Maria Q SchemmerArgentina2026-05-30Morlong Associates NEW60Stephen Shaw
1047Mujtaba J OstroskyArgentina2026-05-28King, Christopher A Esq RENEWAL41Asiya Javayant
1048Costa O BowleySpain2026-05-14Morlong Associates NEW30Elwin Sharvill
1049Nicolas S RutaItaly2026-05-20Dorl, James J Esq PROPOSAL82Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jones R MacleadIndiaOnyama Limba NEGOTIATION
James G WhobreyFranceAsiya Javayant PROPOSAL
Alejandro I FerenczArgentinaIoni Bowcher NEW
Kaitlin J FollerArgentinaStephen Shaw UNQUALIFIED
Alejandro E FollerIndiaElwin Sharvill QUALIFIED
Clifford Y SergiSpainAnna Fali NEW
Morrow F MorascaIndiaOnyama Limba UNQUALIFIED
Chavez J NestleUnited KingdomXuxue Feng NEGOTIATION
Aruna D DilliardArgentinaAnna Fali RENEWAL
Isabel P SlusarskiGermanyXuxue Feng UNQUALIFIED
Aika R AlbaresArgentinaIoni Bowcher NEGOTIATION
Ashley E PoquetteIndiaAnna Fali PROPOSAL
Ricardo I GauchoGermanyIvan Magalhaes PROPOSAL
Ivar Z FollerSpainAnna Fali NEGOTIATION
Izzy F RutaAustraliaXuxue Feng QUALIFIED
Tony D AmigonIndiaAsiya Javayant PROPOSAL
Nicolas M NickaJapanAmy Elsner UNQUALIFIED
Murillo Q SergiSpainBernardo Dominic UNQUALIFIED
Johnson L FigeroaSpainAsiya Javayant NEW
Jennifer U PerinAustraliaIoni Bowcher UNQUALIFIED
Leon N StockhamFranceIoni Bowcher QUALIFIED
Izzy H ShinkoIndiaIoni Bowcher NEW
Darci F StensethRussiaIoni Bowcher UNQUALIFIED
Johnson K FollerArgentinaStephen Shaw RENEWAL
Cody Z OldroydJapanElwin Sharvill PROPOSAL
Morrow Q FlosiUnited KingdomAnna Fali NEGOTIATION
Jennifer F GarufiRussiaElwin Sharvill RENEWAL
Octavia G SaylorsCanadaAmy Elsner NEW
Munro M NickaIndiaAmy Elsner UNQUALIFIED
Jones H CaudyIndiaElwin Sharvill PROPOSAL
Isabel C SlusarskiJapanStephen Shaw QUALIFIED
Faith R BologniaAustraliaAnna Fali NEW
Maisha K SchemmerJapanStephen Shaw RENEWAL
Francesco J PoquetteItalyAnna Fali RENEWAL
Leon N MarrierSpainStephen Shaw PROPOSAL
Izzy Y StockhamRussiaIoni Bowcher QUALIFIED
Greenwood Z DoeAustraliaAsiya Javayant NEGOTIATION
Ivar L CampainSpainAmy Elsner PROPOSAL
David R IturbideRussiaIvan Magalhaes UNQUALIFIED
Mujtaba V ChuiArgentinaOnyama Limba NEGOTIATION
Mujtaba J RimItalyOnyama Limba PROPOSAL
Stacey H DarakjyItalyStephen Shaw UNQUALIFIED
Kadeem S WaycottAustraliaBernardo Dominic RENEWAL
Salvatore W StockhamGermanyStephen Shaw UNQUALIFIED
Stacey W DarakjyGermanyAsiya Javayant PROPOSAL
Salvatore G SchemmerAustraliaXuxue Feng NEGOTIATION
Greenwood R ButtItalyOnyama Limba RENEWAL
Aditya E FigeroaJapanXuxue Feng NEW
Adams L GarufiCanadaIvan Magalhaes NEW
Ivar D ChuiIndiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Jennifer A Waycott
David Y Slusarski
Ricardo L Kolmetz
David V Vocelka
Faith V Sergi
Sinclair G Nestle
Morrow V Bowley
Faith L Vocelka
Ashley U Royster
Antonio E Bowley
Wickens E Morasca
Tony C Ostrosky
Mujtaba I Vocelka
Sinclair F Briddick
Sinclair P Waycott
Misaki L Paprocki
Alejandro K Malet
Rodrigues X Inouye
Silvio P Caldarera
Leja B Poquette
Darci V Morasca
Jennifer D Malet
Mayumi P Bolognia
Faith L Whobrey
Silvio O Oldroyd
Aditya A Vocelka
Silvio N Glick
Nicolas H Campain
Claire P Saylors
Chavez G Venere
Greenwood W Paprocki
Costa S Malet
Mujtaba O Whobrey
Faith T Campain
Wickens F Caudy
Adams F Bowley
Mayumi Q Rim
James I Inouye
Arvin A Caudy
Salvatore O Saylors
Ivar H Paprocki
Ricardo G Campain
Aditya S Bolognia
Johnson H Caudy
Aditya H Perin
Alejandro X Nicka
Claire Q Briddick
David R Foller
Emily C Dilliard
Francesco U Chui
IdCountryDate
1000Spain2026-05-05
1001Germany2026-05-11
1002Japan2026-06-03
1003United Kingdom2026-05-05
1004Italy2026-05-20
1005Italy2026-05-06
1006United Kingdom2026-05-07
1007Italy2026-06-03
1008Brazil2026-05-10
1009Spain2026-05-23
1010Russia2026-05-19
1011Russia2026-05-05
1012Germany2026-06-01
1013Australia2026-06-02
1014Australia2026-05-20
1015France2026-06-03
1016Italy2026-05-26
1017Argentina2026-05-14
1018Spain2026-05-13
1019Japan2026-05-10
1020Russia2026-05-31
1021Spain2026-05-20
1022Canada2026-05-08
1023Spain2026-05-21
1024Argentina2026-05-08
1025Brazil2026-05-19
1026France2026-05-10
1027India2026-05-15
1028Canada2026-05-26
1029Canada2026-05-17
1030United Kingdom2026-06-03
1031Argentina2026-05-05
1032Brazil2026-05-15
1033Italy2026-05-30
1034India2026-05-30
1035Germany2026-05-27
1036Germany2026-06-01
1037India2026-05-29
1038Australia2026-05-17
1039France2026-05-15
1040Canada2026-05-22
1041Brazil2026-06-02
1042Argentina2026-05-26
1043United Kingdom2026-05-30
1044India2026-05-24
1045Russia2026-05-26
1046Canada2026-05-16
1047Russia2026-05-24
1048Germany2026-05-20
1049Spain2026-05-18

On-Demand Data

NameIdCountryDate
Morrow E Butt1000United Kingdom2026-05-06
Francesco N Gillian1001Brazil2026-05-05
Juan Q Dilliard1002Russia2026-05-28
Darci K Doe1003Russia2026-05-18
David N Wieser1004Spain2026-05-16
Sinclair U Gillian1005Brazil2026-05-16
Misaki O Waycott1006Spain2026-05-16
James X Ferencz1007United Kingdom2026-05-14
Greenwood Z Iturbide1008Japan2026-05-10
Maria V Ruta1009United Kingdom2026-05-25
Aditya I Butt1010Germany2026-05-26
Maria V Caldarera1011Canada2026-05-17
Ivar Y Bolognia1012Russia2026-06-02
Tony G Iturbide1013Italy2026-06-02
Murillo N Bolognia1014Japan2026-05-11
Octavia I Tollner1015Russia2026-05-16
Ricardo D Morasca1016India2026-05-05
Emily K Whobrey1017Germany2026-05-08
Mujtaba M Dilliard1018Brazil2026-05-31
Leon H Dilliard1019Japan2026-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David W FlosiAustraliaStephen Shaw PROPOSAL
Izzy G AlbaresGermanyIoni Bowcher UNQUALIFIED
Chavez U NickaArgentinaBernardo Dominic QUALIFIED
Ashley U GarufiUnited KingdomOnyama Limba NEW
Mayumi L MaletUnited KingdomAsiya Javayant RENEWAL
Francesco H MaletSpainOnyama Limba RENEWAL
Aruna S BowleyUnited KingdomElwin Sharvill NEW
Jones U PaprockiBrazilIoni Bowcher UNQUALIFIED
Munro I ButtIndiaIvan Magalhaes NEW
Mujtaba B AmigonUnited KingdomBernardo Dominic NEGOTIATION
Maria H MorascaRussiaAmy Elsner NEGOTIATION
Stacey Y OldroydBrazilIvan Magalhaes QUALIFIED
Darci X SchemmerArgentinaXuxue Feng NEW
Aditya U PerinIndiaBernardo Dominic NEGOTIATION
Julie Z FlosiCanadaXuxue Feng UNQUALIFIED
Octavia Y GarufiIndiaBernardo Dominic UNQUALIFIED
Izzy I InouyeSpainAsiya Javayant NEGOTIATION
Mujtaba P StockhamSpainAmy Elsner NEGOTIATION
Salvatore Y FigeroaGermanyAsiya Javayant QUALIFIED
Arvin E IturbideSpainAmy Elsner QUALIFIED
Costa P GlickItalyStephen Shaw UNQUALIFIED
Darci E BriddickGermanyElwin Sharvill PROPOSAL
Tony F RulapaughBrazilIoni Bowcher UNQUALIFIED
Arvin X StockhamIndiaOnyama Limba QUALIFIED
Silvio C RulapaughFranceAsiya Javayant UNQUALIFIED
Julie L FigeroaSpainIvan Magalhaes PROPOSAL
Maria R GlickUnited KingdomAmy Elsner UNQUALIFIED
Jones W WaycottCanadaBernardo Dominic QUALIFIED
Jefferson I WhobreyBrazilElwin Sharvill QUALIFIED
Smith W GauchoGermanyIvan Magalhaes RENEWAL
Salvatore Z SaylorsArgentinaOnyama Limba RENEWAL
Morrow Y PaprockiRussiaAnna Fali QUALIFIED
Faith C SergiUnited KingdomXuxue Feng NEGOTIATION
Leon X GlickRussiaBernardo Dominic NEGOTIATION
Adams E CaldareraRussiaBernardo Dominic UNQUALIFIED
Greenwood M ChuiGermanyAsiya Javayant UNQUALIFIED
Greenwood U PerinAustraliaElwin Sharvill QUALIFIED
Morrow M SaylorsGermanyOnyama Limba RENEWAL
Maisha T RutaUnited KingdomElwin Sharvill QUALIFIED
Nicolas X MarrierItalyAsiya Javayant 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.