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
Costa G FigeroaAustraliaIoni Bowcher UNQUALIFIED
Darci C CampainJapanOnyama Limba NEW
Rodrigues R BriddickFranceXuxue Feng QUALIFIED
Mayumi N GauchoSpainAsiya Javayant NEW
Wickens S ButtArgentinaBernardo Dominic RENEWAL
Aika L CaldareraCanadaElwin Sharvill PROPOSAL
Murillo T PerinJapanStephen Shaw NEGOTIATION
Ricardo E TollnerArgentinaAsiya Javayant PROPOSAL
Deepesh Y RimArgentinaBernardo Dominic NEW
Greenwood T BriddickBrazilIvan Magalhaes RENEWAL
Smith E CampainItalyBernardo Dominic NEGOTIATION
Cody U DarakjyAustraliaStephen Shaw QUALIFIED
Francesco A KuskoIndiaXuxue Feng QUALIFIED
Salvatore B AmigonUnited KingdomIoni Bowcher NEW
Rodrigues L GillianArgentinaIoni Bowcher NEGOTIATION
Leja B PoquetteAustraliaIvan Magalhaes NEW
Maria A GillianItalyIvan Magalhaes NEGOTIATION
Isabel C MaletItalyElwin Sharvill NEGOTIATION
Clifford I OldroydBrazilOnyama Limba RENEWAL
Johnson K BriddickRussiaBernardo Dominic NEGOTIATION
Jeanfrancois T MarrierCanadaIoni Bowcher NEW
Greenwood C IturbideBrazilAsiya Javayant RENEWAL
Maria K ShinkoIndiaIoni Bowcher PROPOSAL
Rodrigues A PoquetteArgentinaAsiya Javayant NEGOTIATION
Smith R MarrierIndiaIvan Magalhaes NEGOTIATION
Costa S WhobreyJapanAnna Fali RENEWAL
Octavia S CampainItalyAnna Fali PROPOSAL
Adams S SaylorsRussiaAsiya Javayant NEGOTIATION
Izzy M ButtBrazilAmy Elsner NEW
James P KolmetzRussiaXuxue Feng NEW
Greenwood L GauchoAustraliaAsiya Javayant RENEWAL
Darci J OldroydCanadaOnyama Limba RENEWAL
Adams L MarrierBrazilIoni Bowcher PROPOSAL
Misaki T SlusarskiUnited KingdomAnna Fali RENEWAL
Silvio X WieserAustraliaElwin Sharvill QUALIFIED
Smith T InouyeRussiaBernardo Dominic QUALIFIED
Murillo W InouyeFranceAnna Fali NEGOTIATION
Rodrigues R ShinkoAustraliaStephen Shaw NEGOTIATION
Leja D MacleadRussiaXuxue Feng UNQUALIFIED
Alejandro L FlosiUnited KingdomAnna Fali RENEWAL
Ricardo P SergiFranceStephen Shaw RENEWAL
Isabel S FollerCanadaBernardo Dominic UNQUALIFIED
Greenwood O SchemmerFranceElwin Sharvill PROPOSAL
Tony U BologniaCanadaIoni Bowcher UNQUALIFIED
Murillo O KuskoUnited KingdomAnna Fali UNQUALIFIED
Jefferson M OldroydIndiaIvan Magalhaes PROPOSAL
Aika F BowleyAustraliaElwin Sharvill QUALIFIED
Adams Q OldroydSpainOnyama Limba QUALIFIED
Munro E MacleadSpainStephen Shaw PROPOSAL
Murillo J AmigonArgentinaIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Maria D FollerBrazilOnyama Limba RENEWAL
Mayumi N SchemmerArgentinaStephen Shaw NEGOTIATION
Jennifer W RutaBrazilAnna Fali QUALIFIED
Tony M AmigonGermanyStephen Shaw RENEWAL
Leon X MacleadGermanyBernardo Dominic NEGOTIATION
Salvatore I CampainFranceAnna Fali PROPOSAL
Kadeem A AmigonItalyIoni Bowcher NEW
Kadeem S BriddickRussiaXuxue Feng QUALIFIED
Aditya M RimAustraliaXuxue Feng NEGOTIATION
Mujtaba D AmigonArgentinaAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel N PerinIndia2026-06-06Feltz Printing Service UNQUALIFIED72Amy Elsner
1001Nicolas L CampainArgentina2026-06-08Commercial Press UNQUALIFIED98Stephen Shaw
1002Kadeem R WieserJapan2026-06-18Printing Dimensions NEGOTIATION49Onyama Limba
1003Silvio L WaycottSpain2026-06-05Feltz Printing Service RENEWAL25Ioni Bowcher
1004Leja I PerinArgentina2026-06-11Dorl, James J Esq PROPOSAL95Onyama Limba
1005Johnson K FigeroaSpain2026-05-29Morlong Associates NEW46Asiya Javayant
1006Rodrigues G CaudyItaly2026-05-22Rousseaux, Michael Esq UNQUALIFIED9Asiya Javayant
1007Cody V RulapaughItaly2026-06-07Commercial Press RENEWAL3Onyama Limba
1008Aditya K GlickIndia2026-05-24Feltz Printing Service UNQUALIFIED50Onyama Limba
1009Clifford U PerinRussia2026-06-17Buckley Miller Wright NEGOTIATION24Stephen Shaw
1010Kaitlin N PoquetteIndia2026-06-11Chapman, Ross E Esq RENEWAL67Ioni Bowcher
1011Ashley L WaycottUnited Kingdom2026-06-09Chapman, Ross E Esq NEGOTIATION35Onyama Limba
1012Darci F TollnerJapan2026-06-18Buckley Miller Wright PROPOSAL19Xuxue Feng
1013Johnson H MorascaCanada2026-06-09King, Christopher A Esq NEGOTIATION59Bernardo Dominic
1014Aruna I WieserRussia2026-06-15Truhlar And Truhlar Attys NEGOTIATION57Ioni Bowcher
1015Izzy P OldroydUnited Kingdom2026-06-15Chanay, Jeffrey A Esq NEGOTIATION20Stephen Shaw
1016Sinclair B GlickUnited Kingdom2026-06-17King, Christopher A Esq PROPOSAL27Anna Fali
1017Julie G MarrierAustralia2026-06-19Feiner Bros NEW13Ioni Bowcher
1018Ricardo N MacleadArgentina2026-06-20Rousseaux, Michael Esq QUALIFIED99Amy Elsner
1019Izzy N VenereSpain2026-06-12Chanay, Jeffrey A Esq NEGOTIATION1Stephen Shaw
1020Nicolas T GillianGermany2026-06-18Rangoni Of Florence RENEWAL71Ioni Bowcher
1021Kaitlin D SergiUnited Kingdom2026-06-04Truhlar And Truhlar Attys NEW27Xuxue Feng
1022Murillo O DilliardUnited Kingdom2026-06-13Truhlar And Truhlar Attys NEGOTIATION9Ivan Magalhaes
1023Darci N OldroydIndia2026-06-16Chemel, James L Cpa QUALIFIED72Elwin Sharvill
1024Isabel P AlbaresRussia2026-06-10Feltz Printing Service QUALIFIED34Xuxue Feng
1025Smith Z SergiBrazil2026-05-30Benton, John B Jr NEW84Ioni Bowcher
1026Ricardo H PoquetteUnited Kingdom2026-06-02Feiner Bros RENEWAL6Ivan Magalhaes
1027Misaki T OldroydSpain2026-05-24Benton, John B Jr QUALIFIED42Onyama Limba
1028Jefferson Q NestleSpain2026-06-01Rousseaux, Michael Esq QUALIFIED31Ivan Magalhaes
1029Clifford M ButtCanada2026-06-15Morlong Associates NEW29Asiya Javayant
1030Antonio R VenereRussia2026-05-28Feltz Printing Service UNQUALIFIED73Xuxue Feng
1031Kadeem N RutaArgentina2026-06-18King, Christopher A Esq NEW2Bernardo Dominic
1032Antonio J MarrierUnited Kingdom2026-06-08Benton, John B Jr QUALIFIED10Elwin Sharvill
1033Johnson G ButtGermany2026-06-12King, Christopher A Esq UNQUALIFIED2Asiya Javayant
1034Nicolas X SaylorsJapan2026-06-12King, Christopher A Esq UNQUALIFIED34Stephen Shaw
1035Maisha C WieserBrazil2026-06-04Buckley Miller Wright UNQUALIFIED8Ioni Bowcher
1036Deepesh I AmigonJapan2026-06-08Printing Dimensions UNQUALIFIED71Xuxue Feng
1037Morrow L DarakjyCanada2026-06-17Benton, John B Jr QUALIFIED94Stephen Shaw
1038Smith O DilliardBrazil2026-06-02Feltz Printing Service NEW71Amy Elsner
1039Chavez W OldroydItaly2026-06-04Morlong Associates NEGOTIATION9Bernardo Dominic
1040Costa X GauchoSpain2026-06-11Feltz Printing Service PROPOSAL94Amy Elsner
1041Wickens Z OldroydRussia2026-06-19Chemel, James L Cpa RENEWAL11Ioni Bowcher
1042Wickens U StockhamFrance2026-06-11Feiner Bros QUALIFIED84Elwin Sharvill
1043David F FerenczBrazil2026-06-14Chemel, James L Cpa PROPOSAL37Bernardo Dominic
1044Leon A TollnerFrance2026-06-16Truhlar And Truhlar Attys QUALIFIED4Asiya Javayant
1045Greenwood Y MorascaUnited Kingdom2026-06-06Printing Dimensions UNQUALIFIED57Anna Fali
1046Jeanfrancois N DarakjyRussia2026-06-19Truhlar And Truhlar Attys NEW10Amy Elsner
1047Salvatore N NestleJapan2026-06-10Rangoni Of Florence QUALIFIED26Onyama Limba
1048Maria T DilliardJapan2026-06-11Printing Dimensions QUALIFIED1Anna Fali
1049Alejandro W RulapaughJapan2026-05-29Chapman, Ross E Esq QUALIFIED89Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Izzy K RutaIndiaIvan Magalhaes RENEWAL
Nicolas M AlbaresJapanAnna Fali NEW
Nicolas J RoysterGermanyAmy Elsner NEW
Claire Z AlbaresItalyAmy Elsner QUALIFIED
James D TollnerFranceAsiya Javayant NEW
Munro J IturbideArgentinaAmy Elsner RENEWAL
Ricardo U MaletItalyIvan Magalhaes QUALIFIED
Mayumi I RimCanadaStephen Shaw UNQUALIFIED
Stacey Q GillianSpainBernardo Dominic PROPOSAL
Chavez P DoeJapanAmy Elsner QUALIFIED
Murillo Y ChuiSpainStephen Shaw UNQUALIFIED
Costa K VenereFranceIoni Bowcher QUALIFIED
Adams P VocelkaSpainAmy Elsner PROPOSAL
Alejandro O StockhamRussiaElwin Sharvill NEGOTIATION
Jones M MacleadJapanAmy Elsner PROPOSAL
Salvatore J DoeItalyAnna Fali UNQUALIFIED
Isabel A BologniaFranceOnyama Limba NEW
Aika F NestleJapanAsiya Javayant UNQUALIFIED
Alejandro U DarakjyBrazilBernardo Dominic RENEWAL
Smith U BriddickAustraliaAsiya Javayant QUALIFIED
Jefferson E BologniaBrazilIvan Magalhaes NEGOTIATION
Maria X MarrierArgentinaElwin Sharvill UNQUALIFIED
Isabel A CaudyAustraliaStephen Shaw RENEWAL
Isabel H FollerJapanAsiya Javayant NEGOTIATION
Rodrigues W InouyeSpainAnna Fali NEW
Faith I FlosiBrazilOnyama Limba PROPOSAL
Faith K RimUnited KingdomOnyama Limba UNQUALIFIED
Darci Z BriddickJapanStephen Shaw UNQUALIFIED
Julie C AmigonCanadaAnna Fali NEW
Alejandro G MaletBrazilBernardo Dominic QUALIFIED
Aruna I VenereIndiaOnyama Limba NEW
Clifford L BriddickItalyStephen Shaw UNQUALIFIED
Rodrigues B DoeBrazilStephen Shaw PROPOSAL
Francesco J RutaJapanIoni Bowcher QUALIFIED
Maisha I MacleadCanadaAsiya Javayant RENEWAL
Munro C RulapaughBrazilElwin Sharvill QUALIFIED
Johnson L MaletAustraliaAsiya Javayant UNQUALIFIED
Adams S MarrierCanadaElwin Sharvill PROPOSAL
Murillo I RoysterBrazilElwin Sharvill NEGOTIATION
Deepesh A WieserArgentinaAmy Elsner QUALIFIED
Kadeem S FerenczSpainOnyama Limba PROPOSAL
Isabel H NickaCanadaElwin Sharvill PROPOSAL
Tony H SaylorsBrazilOnyama Limba NEGOTIATION
Morrow A TollnerFranceXuxue Feng PROPOSAL
Jefferson B BriddickItalyAmy Elsner NEGOTIATION
Nicolas U RoysterFranceAsiya Javayant NEGOTIATION
Jones U MaletAustraliaStephen Shaw NEW
Munro P WieserItalyIoni Bowcher NEW
Morrow D MaletBrazilAnna Fali UNQUALIFIED
Wickens E VenereGermanyElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Leon I Wieser
Maria X Slusarski
Sinclair W Royster
David N Rim
Murillo O Marrier
Ashley U Chui
Jones A Malet
Juan L Rim
Munro Q Sergi
Greenwood F Ruta
Aika V Garufi
Leon M Gaucho
Silvio A Malet
Maria G Schemmer
Aika B Nicka
Deepesh O Waycott
Juan W Kolmetz
Aditya W Kolmetz
Izzy D Nestle
Jeanfrancois B Nestle
Munro M Chui
Ivar F Campain
Salvatore R Shinko
Greenwood C Wieser
David D Morasca
Julie N Royster
Mayumi S Vocelka
Rodrigues R Vocelka
Sinclair A Rim
Silvio P Amigon
Juan Q Perin
Murillo B Royster
Isabel N Ostrosky
Clifford J Kolmetz
Kaitlin P Oldroyd
Leon K Poquette
Leon W Butt
Julie D Sergi
Kaitlin Q Nestle
Jeanfrancois G Iturbide
Juan O Glick
Deepesh R Stenseth
Murillo U Shinko
Jeanfrancois I Briddick
Salvatore O Slusarski
Leja T Darakjy
Antonio B Figeroa
Jeanfrancois P Nestle
James G Slusarski
Alejandro P Nestle
IdCountryDate
1000Australia2026-06-14
1001Brazil2026-06-12
1002Italy2026-05-25
1003Italy2026-05-26
1004Argentina2026-05-22
1005Germany2026-06-19
1006France2026-05-25
1007United Kingdom2026-05-23
1008France2026-06-18
1009Japan2026-06-08
1010Argentina2026-06-19
1011Spain2026-06-02
1012Australia2026-06-08
1013Australia2026-06-19
1014Japan2026-05-24
1015Brazil2026-05-31
1016India2026-05-31
1017India2026-06-03
1018Germany2026-06-17
1019France2026-06-09
1020Australia2026-06-09
1021Spain2026-06-11
1022Russia2026-06-16
1023Brazil2026-05-27
1024United Kingdom2026-06-11
1025Japan2026-05-27
1026Germany2026-06-10
1027France2026-06-13
1028Germany2026-05-29
1029United Kingdom2026-05-26
1030Argentina2026-06-13
1031Brazil2026-06-02
1032Brazil2026-05-27
1033United Kingdom2026-06-10
1034Italy2026-06-19
1035India2026-06-20
1036Canada2026-06-12
1037Spain2026-05-24
1038Russia2026-06-03
1039France2026-06-01
1040Spain2026-06-12
1041Japan2026-05-31
1042United Kingdom2026-05-25
1043Russia2026-05-31
1044Australia2026-06-03
1045Russia2026-06-05
1046Germany2026-06-15
1047Italy2026-06-20
1048Japan2026-06-11
1049Japan2026-05-23

On-Demand Data

NameIdCountryDate
Antonio A Venere1000Argentina2026-05-27
Misaki C Caudy1001Brazil2026-06-13
Aditya H Darakjy1002France2026-05-23
Jefferson X Malet1003France2026-06-14
Silvio O Poquette1004Russia2026-06-17
Francesco N Dilliard1005Japan2026-06-01
Morrow X Darakjy1006Canada2026-06-06
Tony V Oldroyd1007Japan2026-06-08
Silvio I Campain1008Japan2026-05-26
Darci B Gillian1009Germany2026-05-24
Aika M Wieser1010Argentina2026-06-07
Chavez F Butt1011Italy2026-06-18
Arvin R Inouye1012Russia2026-06-06
Emily V Paprocki1013Canada2026-06-02
Nicolas M Doe1014Argentina2026-06-09
Darci I Ostrosky1015India2026-05-27
Octavia K Perin1016Brazil2026-05-23
Francesco N Garufi1017France2026-06-19
Kaitlin Q Ruta1018Argentina2026-06-10
Jennifer D Malet1019Argentina2026-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro M MarrierAustraliaXuxue Feng NEGOTIATION
Izzy Y InouyeSpainElwin Sharvill RENEWAL
Juan V PerinRussiaElwin Sharvill UNQUALIFIED
Salvatore P DoeCanadaIvan Magalhaes NEW
Aika K SaylorsGermanyAmy Elsner UNQUALIFIED
Juan M AlbaresArgentinaOnyama Limba NEGOTIATION
Chavez Z MorascaArgentinaAnna Fali UNQUALIFIED
Cody X PaprockiRussiaElwin Sharvill RENEWAL
Jeanfrancois T OldroydUnited KingdomBernardo Dominic UNQUALIFIED
Rodrigues Q ShinkoItalyAmy Elsner NEW
Tony V PaprockiBrazilBernardo Dominic NEW
Deepesh V DoeBrazilIoni Bowcher NEGOTIATION
Aruna J MorascaIndiaIvan Magalhaes RENEWAL
Tony F SchemmerAustraliaBernardo Dominic PROPOSAL
Rodrigues S MacleadSpainAmy Elsner QUALIFIED
Deepesh A TollnerSpainIvan Magalhaes PROPOSAL
Cody L RoysterSpainAnna Fali UNQUALIFIED
Octavia P WhobreyArgentinaAmy Elsner NEGOTIATION
Murillo J AmigonIndiaBernardo Dominic RENEWAL
Morrow V ButtIndiaXuxue Feng NEW
Johnson I FlosiRussiaStephen Shaw NEW
Smith I InouyeIndiaStephen Shaw NEGOTIATION
Jennifer Y AlbaresGermanyBernardo Dominic PROPOSAL
Greenwood P WieserJapanAnna Fali PROPOSAL
Jeanfrancois N GauchoCanadaXuxue Feng PROPOSAL
Morrow Y RimCanadaOnyama Limba NEW
Emily O RutaGermanyStephen Shaw NEGOTIATION
Octavia B StensethRussiaIoni Bowcher NEGOTIATION
Deepesh Y PoquetteCanadaStephen Shaw PROPOSAL
Aditya J CampainFranceBernardo Dominic UNQUALIFIED
Tony H RutaCanadaBernardo Dominic PROPOSAL
Munro K FigeroaGermanyIvan Magalhaes NEW
Wickens O FigeroaArgentinaIvan Magalhaes PROPOSAL
Tony K RutaGermanyIvan Magalhaes RENEWAL
Kadeem G InouyeUnited KingdomBernardo Dominic QUALIFIED
Jones R PoquetteJapanBernardo Dominic NEGOTIATION
Adams F PoquetteGermanyAnna Fali NEW
Rodrigues I CampainIndiaIvan Magalhaes NEGOTIATION
Kadeem K FerenczJapanIoni Bowcher NEW
Murillo U RimCanadaOnyama Limba 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.