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
Leja S PaprockiFranceBernardo Dominic PROPOSAL
Juan M FlosiAustraliaAnna Fali UNQUALIFIED
Adams Z GauchoFranceIvan Magalhaes NEW
Greenwood V FigeroaCanadaIoni Bowcher UNQUALIFIED
Jeanfrancois F VenereCanadaElwin Sharvill NEGOTIATION
Salvatore L MorascaGermanyAmy Elsner NEGOTIATION
Murillo B SlusarskiUnited KingdomIvan Magalhaes NEW
Jones C MaletItalyOnyama Limba UNQUALIFIED
Francesco Z ButtJapanAnna Fali NEGOTIATION
Mayumi R WieserJapanAnna Fali QUALIFIED
Costa T KuskoIndiaIvan Magalhaes NEW
Antonio N MorascaIndiaIvan Magalhaes NEGOTIATION
Jennifer O SaylorsFranceElwin Sharvill NEGOTIATION
Darci H AmigonIndiaElwin Sharvill QUALIFIED
Jones L ShinkoUnited KingdomIvan Magalhaes UNQUALIFIED
James I WhobreyUnited KingdomIvan Magalhaes QUALIFIED
Leja S KolmetzAustraliaAnna Fali RENEWAL
Izzy D OldroydBrazilAsiya Javayant NEW
Mayumi Q VenereBrazilStephen Shaw UNQUALIFIED
Costa P BowleyGermanyIvan Magalhaes UNQUALIFIED
Mayumi L DarakjyAustraliaAsiya Javayant UNQUALIFIED
Maisha F DoeGermanyIoni Bowcher RENEWAL
Maria N WaycottCanadaAsiya Javayant RENEWAL
Jones Y GauchoSpainStephen Shaw NEW
Mujtaba D KolmetzGermanyIvan Magalhaes QUALIFIED
Maisha U SergiFranceStephen Shaw NEW
Jeanfrancois W PerinCanadaIvan Magalhaes RENEWAL
Juan S BologniaUnited KingdomXuxue Feng QUALIFIED
Wickens R DarakjyFranceIvan Magalhaes NEGOTIATION
Maisha A StockhamArgentinaOnyama Limba QUALIFIED
Johnson R WieserAustraliaIoni Bowcher NEGOTIATION
Stacey S NickaJapanAnna Fali UNQUALIFIED
Misaki M CaldareraUnited KingdomBernardo Dominic UNQUALIFIED
Costa N WaycottRussiaIvan Magalhaes PROPOSAL
Jeanfrancois N MacleadGermanyAsiya Javayant PROPOSAL
David Y SlusarskiGermanyOnyama Limba PROPOSAL
Silvio E PoquetteSpainOnyama Limba UNQUALIFIED
Mujtaba M TollnerCanadaElwin Sharvill NEW
Deepesh Y NestleAustraliaAsiya Javayant NEW
Murillo X BologniaSpainIvan Magalhaes UNQUALIFIED
Clifford S FigeroaItalyElwin Sharvill QUALIFIED
Faith M InouyeFranceIvan Magalhaes RENEWAL
Chavez A MorascaBrazilAnna Fali UNQUALIFIED
Aruna W CaldareraCanadaIoni Bowcher PROPOSAL
Deepesh Q FollerGermanyXuxue Feng NEGOTIATION
Izzy C RimBrazilIvan Magalhaes PROPOSAL
Murillo C NestleSpainXuxue Feng QUALIFIED
Cody S BriddickJapanOnyama Limba PROPOSAL
Salvatore D DilliardSpainElwin Sharvill NEGOTIATION
Leon D DoeFranceBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Nicolas W StockhamRussiaStephen Shaw NEGOTIATION
Emily G SergiItalyIvan Magalhaes NEGOTIATION
Deepesh L GarufiArgentinaXuxue Feng RENEWAL
Munro W InouyeRussiaBernardo Dominic UNQUALIFIED
Octavia L AmigonBrazilIoni Bowcher RENEWAL
Arvin B AlbaresItalyStephen Shaw RENEWAL
Chavez H RutaUnited KingdomIoni Bowcher NEW
Deepesh W PaprockiAustraliaAmy Elsner NEW
Aditya Z SlusarskiFranceAmy Elsner QUALIFIED
Tony C StockhamSpainBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi W PerinAustralia2026-05-10Dorl, James J Esq UNQUALIFIED0Ioni Bowcher
1001Kaitlin I BriddickUnited Kingdom2026-04-30Chanay, Jeffrey A Esq PROPOSAL82Bernardo Dominic
1002Julie V PaprockiArgentina2026-05-02Commercial Press UNQUALIFIED28Amy Elsner
1003Aruna A KuskoArgentina2026-05-04Rangoni Of Florence RENEWAL11Ioni Bowcher
1004Alejandro M DarakjyRussia2026-05-06Feltz Printing Service UNQUALIFIED11Ivan Magalhaes
1005Adams H SchemmerUnited Kingdom2026-04-28Commercial Press RENEWAL12Asiya Javayant
1006James U RutaItaly2026-05-21Feltz Printing Service PROPOSAL22Ivan Magalhaes
1007Salvatore S PerinBrazil2026-05-19Printing Dimensions UNQUALIFIED81Anna Fali
1008Munro C MarrierBrazil2026-05-04Rangoni Of Florence RENEWAL77Amy Elsner
1009Stacey M ChuiUnited Kingdom2026-05-21Morlong Associates QUALIFIED91Onyama Limba
1010Leja I BowleyIndia2026-05-14Truhlar And Truhlar Attys RENEWAL88Anna Fali
1011Munro K WaycottAustralia2026-05-10Feiner Bros NEGOTIATION22Xuxue Feng
1012Johnson K MacleadIndia2026-05-04Commercial Press QUALIFIED25Anna Fali
1013Jones W DarakjyRussia2026-04-29Commercial Press QUALIFIED24Ioni Bowcher
1014Murillo K ChuiFrance2026-04-30Chanay, Jeffrey A Esq NEGOTIATION4Onyama Limba
1015Morrow C RulapaughSpain2026-04-29Rangoni Of Florence NEGOTIATION70Ivan Magalhaes
1016Adams I BowleyAustralia2026-05-19Feltz Printing Service NEGOTIATION5Bernardo Dominic
1017Jeanfrancois H AmigonFrance2026-05-05Rangoni Of Florence NEW8Elwin Sharvill
1018Jeanfrancois H DarakjyItaly2026-05-02Buckley Miller Wright QUALIFIED5Ivan Magalhaes
1019Rodrigues D OldroydBrazil2026-05-09Morlong Associates PROPOSAL52Anna Fali
1020Julie C BowleyRussia2026-05-13Feiner Bros NEW89Stephen Shaw
1021Clifford H GillianBrazil2026-05-26Chapman, Ross E Esq NEW85Stephen Shaw
1022Nicolas P MarrierRussia2026-05-08Benton, John B Jr PROPOSAL11Amy Elsner
1023Juan F CampainJapan2026-05-25Chemel, James L Cpa UNQUALIFIED20Amy Elsner
1024Misaki K PaprockiIndia2026-05-14King, Christopher A Esq UNQUALIFIED25Elwin Sharvill
1025James Z InouyeCanada2026-05-22Buckley Miller Wright UNQUALIFIED65Elwin Sharvill
1026Maisha X RimAustralia2026-05-14Rousseaux, Michael Esq RENEWAL96Onyama Limba
1027Nicolas G RimBrazil2026-05-06Truhlar And Truhlar Attys UNQUALIFIED59Anna Fali
1028Morrow V DarakjyRussia2026-05-10Chapman, Ross E Esq UNQUALIFIED62Onyama Limba
1029Kaitlin A CaudyItaly2026-05-18Feltz Printing Service NEGOTIATION85Onyama Limba
1030Julie R DarakjySpain2026-05-12Printing Dimensions NEW97Xuxue Feng
1031Jones B ButtCanada2026-05-25Feltz Printing Service RENEWAL27Bernardo Dominic
1032Misaki R MacleadJapan2026-05-03Chemel, James L Cpa NEW83Onyama Limba
1033Antonio Y IturbideItaly2026-05-23Chanay, Jeffrey A Esq PROPOSAL55Ivan Magalhaes
1034Darci W KuskoItaly2026-05-17Rousseaux, Michael Esq RENEWAL11Asiya Javayant
1035Izzy H MacleadGermany2026-05-23King, Christopher A Esq PROPOSAL30Amy Elsner
1036Ashley S FerenczAustralia2026-05-19Chapman, Ross E Esq NEW1Asiya Javayant
1037Wickens W MarrierBrazil2026-05-14Chapman, Ross E Esq UNQUALIFIED4Bernardo Dominic
1038Aditya T AmigonIndia2026-05-12Morlong Associates QUALIFIED94Elwin Sharvill
1039Rodrigues J DoeArgentina2026-05-12Chapman, Ross E Esq QUALIFIED20Xuxue Feng
1040Morrow U TollnerArgentina2026-05-22Printing Dimensions PROPOSAL50Onyama Limba
1041Silvio S VenereUnited Kingdom2026-05-12Buckley Miller Wright UNQUALIFIED17Xuxue Feng
1042Arvin G IturbideArgentina2026-05-12Dorl, James J Esq NEW3Anna Fali
1043Munro N BowleyArgentina2026-05-15Commercial Press RENEWAL12Onyama Limba
1044Greenwood Q WhobreyFrance2026-04-28Printing Dimensions RENEWAL72Elwin Sharvill
1045Ivar W OstroskyCanada2026-05-14Rangoni Of Florence PROPOSAL81Onyama Limba
1046Ashley S WhobreyAustralia2026-05-01Commercial Press RENEWAL27Anna Fali
1047Faith G IturbideFrance2026-05-02Chanay, Jeffrey A Esq NEGOTIATION50Onyama Limba
1048Murillo G FollerJapan2026-04-28Feiner Bros UNQUALIFIED68Asiya Javayant
1049Jefferson Z MaletItaly2026-05-24King, Christopher A Esq RENEWAL11Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Munro P MaletAustraliaBernardo Dominic RENEWAL
James K SergiJapanIvan Magalhaes UNQUALIFIED
Ashley G ChuiJapanBernardo Dominic NEGOTIATION
Silvio Y CampainUnited KingdomAmy Elsner NEW
Stacey L FlosiItalyAmy Elsner NEGOTIATION
Jeanfrancois J ChuiAustraliaIvan Magalhaes NEW
Rodrigues L GauchoRussiaIoni Bowcher NEGOTIATION
Alejandro X PoquetteBrazilIoni Bowcher UNQUALIFIED
Maisha S MaletFranceAnna Fali NEW
Stacey S ChuiCanadaAnna Fali NEGOTIATION
Aditya W VenereGermanyAnna Fali PROPOSAL
Mujtaba G WieserSpainStephen Shaw NEW
Nicolas H WaycottJapanElwin Sharvill RENEWAL
Ricardo C AmigonRussiaAmy Elsner PROPOSAL
Nicolas Z GillianItalyStephen Shaw UNQUALIFIED
Greenwood Q FlosiRussiaStephen Shaw UNQUALIFIED
Izzy T BriddickItalyAsiya Javayant NEGOTIATION
Aditya E CampainGermanyStephen Shaw RENEWAL
Kaitlin I SlusarskiAustraliaIvan Magalhaes RENEWAL
Munro O WieserSpainStephen Shaw NEGOTIATION
Ashley F GauchoJapanBernardo Dominic PROPOSAL
Murillo Q FlosiItalyOnyama Limba RENEWAL
Greenwood K NestleBrazilXuxue Feng NEW
Johnson S SlusarskiArgentinaXuxue Feng RENEWAL
Juan D GauchoCanadaStephen Shaw QUALIFIED
Maria U FigeroaIndiaAnna Fali UNQUALIFIED
Maria O MacleadIndiaBernardo Dominic PROPOSAL
Francesco B OstroskyUnited KingdomAnna Fali UNQUALIFIED
Johnson E AlbaresSpainOnyama Limba UNQUALIFIED
Juan F StockhamGermanyIvan Magalhaes QUALIFIED
Chavez L SchemmerGermanyXuxue Feng RENEWAL
Sinclair M PoquetteAustraliaIoni Bowcher NEW
Kaitlin Y WieserBrazilAsiya Javayant RENEWAL
Emily H BowleyRussiaStephen Shaw QUALIFIED
Darci R GillianJapanIvan Magalhaes QUALIFIED
Murillo X MacleadRussiaXuxue Feng UNQUALIFIED
Salvatore B MorascaBrazilAnna Fali NEW
Mujtaba M AmigonArgentinaAsiya Javayant NEGOTIATION
Isabel D RulapaughSpainAnna Fali QUALIFIED
Wickens W WhobreyJapanStephen Shaw QUALIFIED
Antonio S FerenczItalyIoni Bowcher NEW
James K ShinkoUnited KingdomXuxue Feng QUALIFIED
Ashley G BriddickRussiaAnna Fali UNQUALIFIED
Misaki F NickaAustraliaAsiya Javayant PROPOSAL
Kadeem F VenereSpainElwin Sharvill NEGOTIATION
Darci M VenereArgentinaBernardo Dominic RENEWAL
Salvatore Y PoquetteUnited KingdomStephen Shaw RENEWAL
David T AlbaresCanadaElwin Sharvill NEW
Jones Z FerenczGermanyIvan Magalhaes UNQUALIFIED
David X DilliardItalyIoni Bowcher QUALIFIED
Frozen Columns
Name
Claire J Nestle
James X Butt
Leja E Royster
Maisha C Butt
David E Venere
Johnson E Morasca
Tony W Albares
Aditya F Bolognia
Silvio X Schemmer
Tony D Ferencz
Arvin E Kolmetz
Johnson A Glick
Ivar K Kusko
James J Inouye
Clifford T Albares
Claire M Vocelka
Adams K Saylors
Izzy U Ostrosky
Faith L Rulapaugh
Johnson Y Wieser
Smith G Foller
Aika A Doe
Ashley O Chui
Costa X Ostrosky
Clifford I Sergi
Julie R Kusko
Alejandro B Venere
Misaki A Nestle
Maria Y Maclead
Jefferson J Stockham
Smith V Butt
Silvio S Royster
Kaitlin J Glick
Juan V Saylors
Jones S Foller
Kadeem P Stockham
Chavez S Slusarski
Arvin E Slusarski
Mujtaba I Iturbide
Faith W Albares
Mayumi S Butt
Mayumi Q Garufi
Alejandro I Saylors
Morrow C Nicka
Rodrigues I Sergi
Aditya X Chui
Mayumi K Iturbide
Leja J Caudy
Sinclair D Tollner
Francesco V Garufi
IdCountryDate
1000Brazil2026-05-12
1001Russia2026-05-09
1002Russia2026-05-04
1003Italy2026-05-26
1004Brazil2026-05-07
1005Australia2026-05-21
1006Spain2026-04-27
1007Italy2026-05-03
1008Argentina2026-04-30
1009Spain2026-05-16
1010Brazil2026-05-19
1011Italy2026-05-03
1012Canada2026-04-27
1013United Kingdom2026-04-28
1014Spain2026-04-28
1015Japan2026-05-23
1016Canada2026-05-01
1017Australia2026-05-11
1018India2026-05-06
1019France2026-05-06
1020Argentina2026-04-30
1021Spain2026-05-09
1022Brazil2026-05-04
1023France2026-04-29
1024France2026-05-13
1025India2026-05-25
1026Japan2026-05-12
1027India2026-05-01
1028Canada2026-05-13
1029United Kingdom2026-05-12
1030Italy2026-05-20
1031Australia2026-05-11
1032Italy2026-05-24
1033Germany2026-05-25
1034France2026-05-04
1035United Kingdom2026-05-25
1036Australia2026-05-23
1037Germany2026-05-23
1038United Kingdom2026-05-13
1039India2026-04-30
1040United Kingdom2026-05-06
1041Japan2026-05-22
1042Australia2026-05-18
1043Italy2026-05-07
1044India2026-05-26
1045India2026-05-09
1046Germany2026-05-14
1047France2026-05-20
1048Italy2026-05-18
1049Australia2026-05-10

On-Demand Data

NameIdCountryDate
Nicolas N Albares1000India2026-05-01
Silvio L Malet1001Germany2026-05-18
Isabel X Darakjy1002United Kingdom2026-04-28
Chavez A Caldarera1003Russia2026-05-16
Smith Y Oldroyd1004Canada2026-05-02
Alejandro A Caudy1005Canada2026-05-15
Wickens V Glick1006India2026-05-25
Emily O Flosi1007France2026-05-01
Johnson W Slusarski1008Italy2026-05-03
Jefferson H Shinko1009Australia2026-05-03
Johnson Y Perin1010Russia2026-05-20
Jefferson M Waycott1011Brazil2026-05-02
Aika M Oldroyd1012Italy2026-04-27
James A Slusarski1013Argentina2026-05-11
David J Campain1014Japan2026-05-04
Stacey Q Dilliard1015France2026-05-16
Clifford Z Wieser1016United Kingdom2026-05-16
Ricardo T Glick1017Germany2026-05-04
David K Poquette1018Brazil2026-05-08
Izzy Q Maclead1019Japan2026-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin N KuskoCanadaOnyama Limba QUALIFIED
Deepesh A CaldareraJapanStephen Shaw QUALIFIED
Leja T FerenczUnited KingdomIoni Bowcher UNQUALIFIED
Greenwood B GlickGermanyBernardo Dominic QUALIFIED
Juan V RimItalyOnyama Limba UNQUALIFIED
David U BologniaItalyXuxue Feng NEGOTIATION
Julie U RulapaughGermanyOnyama Limba QUALIFIED
Nicolas Y PerinSpainOnyama Limba PROPOSAL
Maria J DilliardCanadaBernardo Dominic NEW
Rodrigues T PaprockiRussiaAsiya Javayant RENEWAL
Leja C NestleCanadaIvan Magalhaes UNQUALIFIED
Jennifer T StensethIndiaElwin Sharvill UNQUALIFIED
Mujtaba H VocelkaUnited KingdomAmy Elsner UNQUALIFIED
Johnson E SlusarskiBrazilAnna Fali PROPOSAL
Munro U BowleyUnited KingdomAnna Fali NEW
Aditya B VocelkaFranceIvan Magalhaes PROPOSAL
Jennifer W GillianGermanyElwin Sharvill NEW
Nicolas J CaudyUnited KingdomAnna Fali RENEWAL
Ashley D KuskoFranceAnna Fali QUALIFIED
Octavia K FigeroaSpainIoni Bowcher UNQUALIFIED
Isabel K RutaGermanyStephen Shaw NEGOTIATION
Alejandro N CaudyIndiaAnna Fali NEGOTIATION
Morrow U VocelkaRussiaAnna Fali QUALIFIED
Cody K SlusarskiItalyBernardo Dominic NEW
Arvin J DoeUnited KingdomAmy Elsner NEGOTIATION
Greenwood P SchemmerFranceAmy Elsner NEGOTIATION
Julie W StockhamFranceXuxue Feng PROPOSAL
Stacey Y WieserArgentinaAnna Fali QUALIFIED
Stacey F DoeSpainElwin Sharvill NEW
Smith C SchemmerGermanyIvan Magalhaes QUALIFIED
Johnson I BriddickAustraliaIvan Magalhaes QUALIFIED
Darci G VenereIndiaElwin Sharvill UNQUALIFIED
Jones P SlusarskiCanadaAnna Fali PROPOSAL
Adams P ButtUnited KingdomIvan Magalhaes NEW
Clifford K ChuiRussiaOnyama Limba QUALIFIED
Izzy K BriddickIndiaXuxue Feng RENEWAL
Maisha D FollerArgentinaAmy Elsner QUALIFIED
Clifford D GillianCanadaElwin Sharvill QUALIFIED
Jeanfrancois E MorascaAustraliaAmy Elsner RENEWAL
Mujtaba B SlusarskiRussiaIoni Bowcher 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.