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
Morrow S ChuiCanadaBernardo Dominic RENEWAL
Alejandro R IturbideCanadaStephen Shaw RENEWAL
Costa N RulapaughFranceAsiya Javayant UNQUALIFIED
Leon M ChuiGermanyOnyama Limba PROPOSAL
Johnson H OldroydAustraliaAmy Elsner PROPOSAL
Tony Q IturbideUnited KingdomElwin Sharvill UNQUALIFIED
Isabel W CaldareraArgentinaOnyama Limba PROPOSAL
Emily B OldroydAustraliaStephen Shaw RENEWAL
Leon L ShinkoUnited KingdomXuxue Feng RENEWAL
Greenwood A OstroskyRussiaStephen Shaw UNQUALIFIED
Octavia D ChuiArgentinaOnyama Limba PROPOSAL
Greenwood T ButtArgentinaAmy Elsner NEGOTIATION
Leon D MaletCanadaOnyama Limba RENEWAL
Faith A StockhamItalyOnyama Limba PROPOSAL
Juan N OldroydCanadaAsiya Javayant UNQUALIFIED
Silvio P FlosiJapanAsiya Javayant QUALIFIED
Chavez M DarakjyArgentinaIvan Magalhaes NEW
Aditya O CaldareraJapanAnna Fali RENEWAL
Johnson M ChuiFranceStephen Shaw RENEWAL
Aruna Q FigeroaAustraliaXuxue Feng NEGOTIATION
Kaitlin V MorascaAustraliaAsiya Javayant QUALIFIED
Octavia F RoysterGermanyAsiya Javayant NEW
Smith V RutaGermanyStephen Shaw QUALIFIED
Johnson F FlosiSpainAsiya Javayant PROPOSAL
Kaitlin S RoysterItalyStephen Shaw RENEWAL
Munro I MaletUnited KingdomAnna Fali QUALIFIED
Francesco M MaletAustraliaStephen Shaw PROPOSAL
Francesco Y CaldareraUnited KingdomOnyama Limba RENEWAL
Greenwood M CampainSpainIvan Magalhaes UNQUALIFIED
Mujtaba N MaletRussiaAnna Fali QUALIFIED
Wickens M FollerGermanyElwin Sharvill UNQUALIFIED
Jefferson E NickaItalyXuxue Feng UNQUALIFIED
Maria T RutaGermanyXuxue Feng PROPOSAL
David K VocelkaAustraliaAmy Elsner NEW
Salvatore A GarufiSpainIoni Bowcher UNQUALIFIED
Cody H ChuiRussiaElwin Sharvill RENEWAL
Alejandro O OstroskyItalyStephen Shaw PROPOSAL
Munro P FollerSpainBernardo Dominic UNQUALIFIED
Octavia C SergiGermanyBernardo Dominic UNQUALIFIED
Jennifer C BologniaArgentinaStephen Shaw NEGOTIATION
Kadeem C RimArgentinaOnyama Limba RENEWAL
Salvatore I DarakjyIndiaIoni Bowcher RENEWAL
Silvio O KolmetzCanadaStephen Shaw UNQUALIFIED
Julie O FerenczAustraliaBernardo Dominic PROPOSAL
Faith Q GauchoGermanyXuxue Feng NEW
Kaitlin V OldroydItalyAnna Fali UNQUALIFIED
Aditya C RimJapanElwin Sharvill QUALIFIED
Antonio S TollnerArgentinaIvan Magalhaes RENEWAL
Izzy P FollerItalyElwin Sharvill NEGOTIATION
Salvatore P FollerGermanyElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Julie P SaylorsGermanyStephen Shaw PROPOSAL
Deepesh N BriddickItalyElwin Sharvill PROPOSAL
Chavez D VocelkaGermanyElwin Sharvill RENEWAL
Antonio U CampainRussiaIvan Magalhaes RENEWAL
Sinclair W OstroskySpainStephen Shaw PROPOSAL
David O DoeJapanIoni Bowcher NEGOTIATION
Francesco Q VenereJapanAmy Elsner QUALIFIED
Izzy D WhobreyJapanStephen Shaw RENEWAL
Greenwood O PaprockiBrazilBernardo Dominic PROPOSAL
Rodrigues L NestleBrazilIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem Y FigeroaRussia2026-02-02Morlong Associates PROPOSAL19Onyama Limba
1001David J ShinkoFrance2026-02-28Feiner Bros RENEWAL63Bernardo Dominic
1002Murillo F AlbaresUnited Kingdom2026-02-12Chanay, Jeffrey A Esq NEGOTIATION78Ivan Magalhaes
1003Salvatore L KolmetzJapan2026-02-16Chanay, Jeffrey A Esq RENEWAL27Bernardo Dominic
1004Jeanfrancois S GlickFrance2026-02-22Chemel, James L Cpa PROPOSAL99Asiya Javayant
1005Isabel Z TollnerJapan2026-02-02Morlong Associates PROPOSAL22Onyama Limba
1006Clifford A IturbideSpain2026-02-08Commercial Press NEGOTIATION21Ivan Magalhaes
1007Kadeem G DoeJapan2026-01-31King, Christopher A Esq QUALIFIED99Asiya Javayant
1008Faith U OldroydJapan2026-02-02Chemel, James L Cpa PROPOSAL3Elwin Sharvill
1009Kadeem U CampainBrazil2026-02-08Chanay, Jeffrey A Esq NEW61Onyama Limba
1010Jeanfrancois X SaylorsJapan2026-01-30Benton, John B Jr UNQUALIFIED79Amy Elsner
1011Julie X GarufiArgentina2026-02-18Dorl, James J Esq QUALIFIED2Xuxue Feng
1012Costa C FigeroaUnited Kingdom2026-02-15Feltz Printing Service NEW19Amy Elsner
1013Claire W WieserIndia2026-02-16Morlong Associates NEGOTIATION63Ioni Bowcher
1014Aika S TollnerItaly2026-02-08Feiner Bros QUALIFIED38Bernardo Dominic
1015Darci V StockhamFrance2026-02-21Buckley Miller Wright NEW65Amy Elsner
1016Greenwood J AlbaresJapan2026-02-23Chanay, Jeffrey A Esq NEW62Xuxue Feng
1017Julie E GlickRussia2026-02-21Rousseaux, Michael Esq NEGOTIATION4Stephen Shaw
1018Arvin X FlosiAustralia2026-02-01Chemel, James L Cpa NEGOTIATION35Ivan Magalhaes
1019Izzy Y WaycottFrance2026-02-07Rousseaux, Michael Esq QUALIFIED30Elwin Sharvill
1020Aika D VocelkaBrazil2026-02-20Benton, John B Jr NEGOTIATION14Elwin Sharvill
1021Greenwood Y ShinkoFrance2026-02-24Truhlar And Truhlar Attys NEGOTIATION61Asiya Javayant
1022Greenwood W WieserItaly2026-02-08Benton, John B Jr QUALIFIED21Bernardo Dominic
1023Smith N CampainJapan2026-02-09Rangoni Of Florence QUALIFIED41Onyama Limba
1024James N DilliardGermany2026-02-17Feiner Bros PROPOSAL28Elwin Sharvill
1025Jennifer H SlusarskiItaly2026-02-19Chapman, Ross E Esq NEGOTIATION17Onyama Limba
1026Wickens X RutaSpain2026-02-14King, Christopher A Esq RENEWAL48Xuxue Feng
1027Chavez F SlusarskiCanada2026-02-18Rousseaux, Michael Esq RENEWAL57Amy Elsner
1028Maisha P SergiUnited Kingdom2026-02-05Chemel, James L Cpa QUALIFIED36Ioni Bowcher
1029Stacey X NickaCanada2026-02-20Truhlar And Truhlar Attys RENEWAL94Ioni Bowcher
1030Murillo H WaycottArgentina2026-02-04Benton, John B Jr PROPOSAL97Stephen Shaw
1031Murillo J DilliardBrazil2026-02-12Rangoni Of Florence UNQUALIFIED8Ivan Magalhaes
1032Arvin Z MorascaFrance2026-02-04Feiner Bros UNQUALIFIED34Bernardo Dominic
1033Tony P IturbideAustralia2026-02-14Rangoni Of Florence QUALIFIED34Elwin Sharvill
1034Izzy P MaletSpain2026-02-21Dorl, James J Esq PROPOSAL23Stephen Shaw
1035Jeanfrancois E SergiFrance2026-01-31Benton, John B Jr RENEWAL42Ivan Magalhaes
1036Leja J NestleItaly2026-02-09Truhlar And Truhlar Attys QUALIFIED92Anna Fali
1037Maisha N CaudyJapan2026-02-10Rousseaux, Michael Esq PROPOSAL74Asiya Javayant
1038Salvatore P ShinkoUnited Kingdom2026-02-25Feltz Printing Service NEW1Stephen Shaw
1039Clifford U GarufiJapan2026-02-09Feiner Bros UNQUALIFIED34Elwin Sharvill
1040Claire Z SergiRussia2026-02-21Rangoni Of Florence NEGOTIATION46Stephen Shaw
1041Jeanfrancois M MarrierArgentina2026-02-01Feiner Bros QUALIFIED77Stephen Shaw
1042Adams O CaldareraBrazil2026-02-19Rousseaux, Michael Esq NEGOTIATION60Onyama Limba
1043Salvatore D FigeroaBrazil2026-02-23King, Christopher A Esq NEGOTIATION58Asiya Javayant
1044Misaki M BriddickJapan2026-02-19Truhlar And Truhlar Attys PROPOSAL8Xuxue Feng
1045Leja Z GlickUnited Kingdom2026-02-02King, Christopher A Esq NEW94Bernardo Dominic
1046Sinclair B SergiUnited Kingdom2026-02-09Buckley Miller Wright RENEWAL29Amy Elsner
1047Salvatore Z BowleyCanada2026-02-03Printing Dimensions NEW66Onyama Limba
1048Aika Z DarakjyItaly2026-02-20Commercial Press QUALIFIED75Bernardo Dominic
1049Ricardo S DarakjyBrazil2026-02-23Chemel, James L Cpa NEGOTIATION47Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Deepesh D GillianGermanyAnna Fali QUALIFIED
Wickens G DilliardItalyIvan Magalhaes QUALIFIED
Leja A GarufiUnited KingdomAnna Fali PROPOSAL
Ivar S CampainCanadaIvan Magalhaes RENEWAL
Ivar B KuskoUnited KingdomStephen Shaw UNQUALIFIED
Emily T PaprockiGermanyAmy Elsner UNQUALIFIED
Antonio F KolmetzRussiaElwin Sharvill NEW
Emily M RimArgentinaElwin Sharvill RENEWAL
Salvatore R MorascaCanadaAmy Elsner QUALIFIED
Faith E NestleBrazilElwin Sharvill QUALIFIED
Izzy H BologniaCanadaOnyama Limba QUALIFIED
Munro O CaudyGermanyStephen Shaw UNQUALIFIED
Greenwood L CampainRussiaBernardo Dominic UNQUALIFIED
James A AmigonFranceAnna Fali RENEWAL
Munro Z RoysterJapanBernardo Dominic PROPOSAL
Salvatore G SergiCanadaIoni Bowcher QUALIFIED
Jennifer A VocelkaRussiaOnyama Limba NEGOTIATION
Wickens R PaprockiAustraliaIvan Magalhaes RENEWAL
Morrow X InouyeRussiaIoni Bowcher QUALIFIED
Octavia X WieserAustraliaIvan Magalhaes RENEWAL
Aruna F CaudyItalyStephen Shaw PROPOSAL
Izzy G KuskoJapanIvan Magalhaes NEGOTIATION
Aruna R GarufiUnited KingdomElwin Sharvill PROPOSAL
Rodrigues O SergiIndiaIvan Magalhaes PROPOSAL
Wickens T StockhamBrazilIoni Bowcher PROPOSAL
Morrow D RoysterIndiaIvan Magalhaes NEGOTIATION
Stacey U OldroydGermanyAnna Fali NEW
Leja H AmigonJapanIvan Magalhaes QUALIFIED
Salvatore A WieserAustraliaStephen Shaw NEW
Aruna S AmigonJapanAsiya Javayant UNQUALIFIED
Salvatore G SlusarskiJapanElwin Sharvill NEGOTIATION
Mujtaba V CampainSpainIvan Magalhaes PROPOSAL
Wickens E CampainIndiaXuxue Feng NEGOTIATION
Izzy K CaldareraIndiaAmy Elsner NEGOTIATION
Kaitlin U MorascaFranceAmy Elsner UNQUALIFIED
Darci V BowleyJapanStephen Shaw NEGOTIATION
Nicolas K OstroskyUnited KingdomBernardo Dominic RENEWAL
Misaki C NickaItalyElwin Sharvill PROPOSAL
Jennifer D BologniaFranceIvan Magalhaes NEW
Kadeem Y WaycottRussiaStephen Shaw NEGOTIATION
Salvatore J FerenczGermanyXuxue Feng RENEWAL
Julie W PoquetteJapanBernardo Dominic NEGOTIATION
Costa G GarufiIndiaAnna Fali NEW
Sinclair P KolmetzIndiaBernardo Dominic NEW
Maisha C MacleadRussiaElwin Sharvill PROPOSAL
Juan B RimUnited KingdomAmy Elsner UNQUALIFIED
Costa V AmigonGermanyIvan Magalhaes RENEWAL
Maisha I OldroydRussiaBernardo Dominic QUALIFIED
Aika T MorascaBrazilElwin Sharvill UNQUALIFIED
Darci F MorascaJapanXuxue Feng QUALIFIED
Frozen Columns
Name
Costa A Shinko
Ashley V Campain
Francesco R Slusarski
Clifford L Saylors
Claire H Wieser
Costa S Chui
Johnson B Caldarera
Costa B Malet
Octavia S Schemmer
Mayumi X Iturbide
Wickens B Stenseth
Leja V Morasca
Silvio R Perin
Aruna G Amigon
Silvio L Foller
Darci J Butt
Costa R Rulapaugh
Emily M Maclead
Tony B Caldarera
Emily K Paprocki
Jeanfrancois O Waycott
Munro W Bolognia
Misaki L Dilliard
Munro U Venere
Munro J Ferencz
Leja C Paprocki
Octavia Z Shinko
David J Paprocki
Emily E Royster
Tony G Butt
Francesco K Figeroa
Mayumi W Gillian
Morrow F Royster
Tony J Stockham
Leja J Ruta
Clifford E Albares
Clifford Q Butt
Antonio E Kolmetz
David X Briddick
Adams A Slusarski
Julie K Ruta
Kadeem F Kolmetz
Salvatore C Ferencz
Mujtaba Z Vocelka
Arvin L Foller
Leja B Schemmer
Sinclair Z Butt
Claire I Briddick
Sinclair R Malet
Darci Z Venere
IdCountryDate
1000Russia2026-02-20
1001Russia2026-02-20
1002Russia2026-02-17
1003Japan2026-02-18
1004United Kingdom2026-02-07
1005Germany2026-02-27
1006United Kingdom2026-02-20
1007Canada2026-02-11
1008Germany2026-02-21
1009France2026-02-24
1010Canada2026-02-05
1011Canada2026-02-23
1012Canada2026-01-31
1013Japan2026-02-17
1014Russia2026-02-12
1015Spain2026-02-22
1016Germany2026-02-23
1017Brazil2026-02-21
1018Brazil2026-02-16
1019Spain2026-02-25
1020France2026-02-27
1021Italy2026-02-24
1022Australia2026-02-07
1023Argentina2026-02-13
1024Italy2026-02-25
1025Argentina2026-02-26
1026Japan2026-02-26
1027United Kingdom2026-02-14
1028Japan2026-02-02
1029United Kingdom2026-02-14
1030Argentina2026-02-05
1031United Kingdom2026-02-28
1032Australia2026-02-28
1033Japan2026-02-21
1034India2026-02-12
1035Italy2026-02-08
1036France2026-02-17
1037Germany2026-02-08
1038Spain2026-02-06
1039Spain2026-02-28
1040Germany2026-02-12
1041Germany2026-02-23
1042Canada2026-02-13
1043France2026-02-13
1044Argentina2026-02-16
1045Australia2026-02-19
1046France2026-02-10
1047India2026-02-05
1048Australia2026-02-12
1049Italy2026-02-18

On-Demand Data

NameIdCountryDate
Munro U Tollner1000India2026-02-17
Sinclair I Amigon1001India2026-01-30
Rodrigues J Maclead1002India2026-02-02
Rodrigues I Royster1003France2026-02-20
Morrow P Saylors1004France2026-01-31
Jennifer M Caldarera1005France2026-02-01
Johnson S Caudy1006Australia2026-02-24
Silvio Z Caldarera1007Australia2026-02-05
Aruna J Inouye1008United Kingdom2026-02-12
Emily K Campain1009Japan2026-02-15
Ricardo N Albares1010United Kingdom2026-02-16
Leja S Flosi1011Russia2026-02-05
Murillo I Doe1012Spain2026-02-06
Misaki T Schemmer1013Canada2026-02-20
Mayumi Z Stenseth1014France2026-02-17
Aika N Royster1015Argentina2026-02-24
Kaitlin W Inouye1016India2026-02-17
Darci T Butt1017India2026-02-13
Johnson J Vocelka1018Germany2026-02-15
Maria K Tollner1019Germany2026-02-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas W FigeroaBrazilAsiya Javayant QUALIFIED
Johnson L KuskoGermanyIoni Bowcher PROPOSAL
Salvatore L AmigonBrazilBernardo Dominic UNQUALIFIED
Jennifer V RimJapanOnyama Limba PROPOSAL
Nicolas N NickaItalyAmy Elsner PROPOSAL
Clifford F ChuiBrazilXuxue Feng PROPOSAL
Jeanfrancois D MarrierCanadaAmy Elsner RENEWAL
Octavia P RoysterUnited KingdomIoni Bowcher RENEWAL
Ashley A DilliardFranceAsiya Javayant NEGOTIATION
Mayumi K NickaCanadaIoni Bowcher RENEWAL
Leja H MaletItalyElwin Sharvill NEW
Maisha R DarakjyFranceAsiya Javayant NEW
Emily J RimItalyStephen Shaw NEW
Kadeem Y PerinRussiaXuxue Feng UNQUALIFIED
Maria C RoysterRussiaStephen Shaw NEGOTIATION
Octavia V NickaUnited KingdomXuxue Feng NEGOTIATION
Darci V FollerArgentinaBernardo Dominic NEW
Leja E CaudyFranceAnna Fali UNQUALIFIED
Nicolas V KolmetzSpainBernardo Dominic RENEWAL
Aika W ButtSpainAnna Fali UNQUALIFIED
Jefferson V RimIndiaIvan Magalhaes NEGOTIATION
Maisha K WieserSpainAsiya Javayant NEGOTIATION
Smith W PerinIndiaIoni Bowcher QUALIFIED
Arvin P PaprockiGermanyAnna Fali RENEWAL
Jones K IturbideIndiaBernardo Dominic RENEWAL
Munro U CaudyGermanyElwin Sharvill PROPOSAL
Maria F ChuiRussiaIoni Bowcher NEW
Jennifer W MaletRussiaBernardo Dominic NEGOTIATION
Leja P OldroydBrazilAmy Elsner QUALIFIED
Aruna M SchemmerUnited KingdomIvan Magalhaes QUALIFIED
Jones R WieserItalyIvan Magalhaes PROPOSAL
Emily S MacleadFranceBernardo Dominic UNQUALIFIED
Antonio X FigeroaItalyXuxue Feng QUALIFIED
Claire G VenereFranceOnyama Limba UNQUALIFIED
Arvin R RutaArgentinaIoni Bowcher PROPOSAL
Isabel T CaudyRussiaOnyama Limba NEGOTIATION
Jeanfrancois M RulapaughSpainOnyama Limba NEGOTIATION
Mayumi B FerenczSpainIoni Bowcher PROPOSAL
Adams I RulapaughAustraliaIoni Bowcher NEGOTIATION
Izzy J GlickSpainAsiya Javayant RENEWAL

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