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
Wickens U GlickArgentinaStephen Shaw NEW
Deepesh O CaudyBrazilAnna Fali NEW
Murillo Q ChuiSpainAsiya Javayant UNQUALIFIED
Izzy Q SergiRussiaXuxue Feng PROPOSAL
Julie B MacleadRussiaElwin Sharvill UNQUALIFIED
Leja Q OstroskyFranceElwin Sharvill PROPOSAL
Cody D AmigonSpainAnna Fali NEW
Smith K WieserAustraliaAmy Elsner UNQUALIFIED
Kadeem J IturbideItalyAsiya Javayant QUALIFIED
Aika Q InouyeFranceElwin Sharvill NEGOTIATION
Jones N ChuiArgentinaAsiya Javayant QUALIFIED
Emily F RimCanadaIvan Magalhaes RENEWAL
Misaki P CaldareraIndiaAsiya Javayant UNQUALIFIED
Isabel N TollnerFranceAnna Fali PROPOSAL
Mayumi O StockhamIndiaAsiya Javayant PROPOSAL
Juan X TollnerGermanyBernardo Dominic QUALIFIED
Munro G GauchoIndiaElwin Sharvill QUALIFIED
Jennifer M StensethSpainOnyama Limba PROPOSAL
Kadeem L PerinSpainBernardo Dominic NEGOTIATION
Kadeem G SaylorsUnited KingdomOnyama Limba QUALIFIED
Chavez F SergiGermanyIoni Bowcher NEGOTIATION
Jones Z ButtIndiaBernardo Dominic NEW
Jeanfrancois Q PoquetteArgentinaOnyama Limba RENEWAL
Misaki Q SergiUnited KingdomOnyama Limba NEGOTIATION
Chavez Q GillianIndiaAsiya Javayant QUALIFIED
Ashley D TollnerJapanElwin Sharvill QUALIFIED
Sinclair T MaletGermanyAnna Fali PROPOSAL
Jennifer B MaletFranceIvan Magalhaes PROPOSAL
Clifford M FlosiIndiaIvan Magalhaes QUALIFIED
Sinclair N SlusarskiGermanyStephen Shaw NEW
Juan U DilliardArgentinaAnna Fali UNQUALIFIED
Aruna J PoquetteItalyXuxue Feng QUALIFIED
Salvatore U CaudyJapanIvan Magalhaes UNQUALIFIED
Johnson O SchemmerIndiaOnyama Limba NEGOTIATION
Jeanfrancois N ShinkoItalyIvan Magalhaes NEGOTIATION
Clifford A BowleyJapanAmy Elsner NEGOTIATION
Johnson M AmigonAustraliaOnyama Limba UNQUALIFIED
Isabel W StockhamGermanyOnyama Limba UNQUALIFIED
James H OstroskySpainOnyama Limba QUALIFIED
Stacey U MaletSpainElwin Sharvill NEGOTIATION
Morrow N GarufiItalyIoni Bowcher UNQUALIFIED
Aruna F ButtSpainElwin Sharvill NEGOTIATION
Nicolas Z TollnerItalyOnyama Limba PROPOSAL
Morrow L DarakjyIndiaIoni Bowcher NEGOTIATION
Misaki F GlickBrazilIvan Magalhaes NEGOTIATION
Wickens L MaletIndiaIoni Bowcher PROPOSAL
Juan V BriddickAustraliaElwin Sharvill UNQUALIFIED
Isabel O FigeroaJapanXuxue Feng UNQUALIFIED
Faith A OldroydRussiaIoni Bowcher NEGOTIATION
Ashley H FlosiBrazilOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Juan P KuskoSpainAmy Elsner QUALIFIED
James J BologniaUnited KingdomXuxue Feng NEW
Ivar O AlbaresSpainBernardo Dominic NEW
Faith D TollnerAustraliaIoni Bowcher RENEWAL
Clifford O MaletUnited KingdomBernardo Dominic PROPOSAL
Octavia X NestleArgentinaBernardo Dominic RENEWAL
Isabel M BowleyRussiaOnyama Limba NEW
Mujtaba S FerenczCanadaXuxue Feng RENEWAL
Antonio I NickaIndiaAsiya Javayant QUALIFIED
Francesco V MarrierJapanXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba M SaylorsCanada2026-04-30King, Christopher A Esq NEW45Anna Fali
1001Ashley S GillianGermany2026-04-16Morlong Associates RENEWAL83Anna Fali
1002Leon D MaletRussia2026-04-26Feltz Printing Service RENEWAL97Bernardo Dominic
1003Antonio U AlbaresCanada2026-05-02Dorl, James J Esq NEGOTIATION99Elwin Sharvill
1004Deepesh N StensethBrazil2026-04-18Truhlar And Truhlar Attys UNQUALIFIED77Bernardo Dominic
1005Kadeem Q BowleyFrance2026-05-01Chanay, Jeffrey A Esq NEW67Elwin Sharvill
1006Adams T NestleIndia2026-05-09Commercial Press RENEWAL44Elwin Sharvill
1007Mayumi E ShinkoJapan2026-05-01King, Christopher A Esq NEGOTIATION9Ivan Magalhaes
1008Adams A NickaAustralia2026-05-03King, Christopher A Esq QUALIFIED43Amy Elsner
1009Cody W RutaGermany2026-05-09Chapman, Ross E Esq UNQUALIFIED93Amy Elsner
1010Maisha C GarufiCanada2026-05-04Chapman, Ross E Esq QUALIFIED93Stephen Shaw
1011Misaki M OldroydArgentina2026-04-13Rousseaux, Michael Esq UNQUALIFIED67Onyama Limba
1012Jones I NickaCanada2026-04-12Chanay, Jeffrey A Esq PROPOSAL98Anna Fali
1013Ricardo A AmigonJapan2026-04-27Benton, John B Jr QUALIFIED36Xuxue Feng
1014Mujtaba F MaletGermany2026-05-01Rangoni Of Florence NEW15Amy Elsner
1015Aruna Y PerinJapan2026-04-22Buckley Miller Wright NEGOTIATION73Xuxue Feng
1016Costa Y OldroydAustralia2026-04-24Truhlar And Truhlar Attys NEGOTIATION44Amy Elsner
1017Deepesh R GarufiGermany2026-04-16Commercial Press QUALIFIED82Bernardo Dominic
1018Chavez G StensethItaly2026-05-11Benton, John B Jr RENEWAL1Asiya Javayant
1019Johnson L ShinkoIndia2026-04-29Commercial Press NEGOTIATION19Amy Elsner
1020Maria P WieserArgentina2026-05-07Truhlar And Truhlar Attys NEW38Amy Elsner
1021Adams T SchemmerRussia2026-05-04Printing Dimensions RENEWAL7Amy Elsner
1022Aditya T NestleArgentina2026-05-01Chemel, James L Cpa NEW14Ioni Bowcher
1023Mayumi F KolmetzCanada2026-05-01Rousseaux, Michael Esq QUALIFIED70Amy Elsner
1024Maria G SergiItaly2026-04-13Benton, John B Jr UNQUALIFIED85Onyama Limba
1025Adams T FollerGermany2026-05-09Truhlar And Truhlar Attys QUALIFIED52Elwin Sharvill
1026Arvin P MorascaArgentina2026-04-17Rousseaux, Michael Esq PROPOSAL66Amy Elsner
1027Adams P KuskoRussia2026-04-25Feiner Bros RENEWAL91Onyama Limba
1028Ashley B RulapaughCanada2026-04-23Chanay, Jeffrey A Esq QUALIFIED30Ioni Bowcher
1029Jefferson G BologniaRussia2026-05-06Feiner Bros QUALIFIED77Xuxue Feng
1030Aditya H RutaCanada2026-05-06Rangoni Of Florence NEW93Xuxue Feng
1031Leja Q StensethCanada2026-04-23Chemel, James L Cpa NEGOTIATION93Ivan Magalhaes
1032Claire Q ShinkoJapan2026-04-15Chapman, Ross E Esq NEW7Ioni Bowcher
1033David W StensethCanada2026-04-13Feiner Bros NEW32Ioni Bowcher
1034Sinclair U AmigonRussia2026-04-13Buckley Miller Wright NEGOTIATION21Bernardo Dominic
1035Chavez K FollerSpain2026-05-03Morlong Associates QUALIFIED25Xuxue Feng
1036Ivar C FigeroaItaly2026-04-26Rousseaux, Michael Esq QUALIFIED82Anna Fali
1037Arvin S SergiRussia2026-05-09Morlong Associates RENEWAL50Bernardo Dominic
1038Stacey H PoquetteBrazil2026-05-01King, Christopher A Esq RENEWAL94Ivan Magalhaes
1039Ashley L SergiAustralia2026-04-23Feltz Printing Service QUALIFIED89Asiya Javayant
1040Kaitlin E VenereIndia2026-05-02Printing Dimensions RENEWAL73Anna Fali
1041Jennifer W WieserSpain2026-05-11Chanay, Jeffrey A Esq NEGOTIATION86Amy Elsner
1042Arvin T ChuiSpain2026-04-28Rousseaux, Michael Esq RENEWAL29Amy Elsner
1043Chavez M FlosiSpain2026-05-09Chapman, Ross E Esq NEW28Bernardo Dominic
1044Julie Y SchemmerIndia2026-04-18Feiner Bros QUALIFIED62Ivan Magalhaes
1045Kaitlin D WhobreyUnited Kingdom2026-04-12Benton, John B Jr UNQUALIFIED30Amy Elsner
1046Greenwood V DarakjyUnited Kingdom2026-04-16Morlong Associates QUALIFIED99Asiya Javayant
1047Aika R IturbideArgentina2026-04-17Benton, John B Jr RENEWAL95Ioni Bowcher
1048Leon L InouyeItaly2026-05-02Feiner Bros PROPOSAL1Anna Fali
1049Murillo C BriddickCanada2026-04-14Rangoni Of Florence PROPOSAL57Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Mayumi G NestleGermanyStephen Shaw RENEWAL
Juan C FlosiItalyAmy Elsner RENEWAL
Jones C KuskoIndiaAnna Fali UNQUALIFIED
James I SaylorsItalyOnyama Limba NEGOTIATION
Ashley C MaletRussiaStephen Shaw NEGOTIATION
James W BologniaRussiaAnna Fali NEW
Greenwood A PerinItalyIvan Magalhaes NEW
Claire V VocelkaJapanElwin Sharvill UNQUALIFIED
Misaki P SchemmerAustraliaOnyama Limba RENEWAL
Stacey M RulapaughUnited KingdomAnna Fali PROPOSAL
Kaitlin F IturbideGermanyAmy Elsner RENEWAL
Leon H FlosiRussiaAmy Elsner PROPOSAL
Ricardo A FigeroaCanadaBernardo Dominic PROPOSAL
Octavia M MacleadFranceOnyama Limba NEGOTIATION
Ivar E PoquetteCanadaIoni Bowcher RENEWAL
Emily Z BowleyIndiaBernardo Dominic QUALIFIED
Octavia F MaletGermanyOnyama Limba UNQUALIFIED
Maisha T BriddickJapanXuxue Feng QUALIFIED
Kadeem K BowleyUnited KingdomXuxue Feng RENEWAL
Rodrigues G NestleGermanyXuxue Feng PROPOSAL
Aruna M GlickArgentinaIvan Magalhaes NEW
Ricardo W VocelkaItalyAsiya Javayant RENEWAL
Aditya E ChuiRussiaStephen Shaw RENEWAL
Aditya J SergiRussiaXuxue Feng UNQUALIFIED
Misaki I InouyeUnited KingdomBernardo Dominic QUALIFIED
Wickens D SchemmerItalyXuxue Feng NEGOTIATION
James Y SchemmerBrazilAnna Fali RENEWAL
Ricardo N PoquetteFranceIvan Magalhaes NEW
Maisha H VenereFranceOnyama Limba UNQUALIFIED
Silvio L FerenczJapanIvan Magalhaes NEGOTIATION
Antonio D GillianBrazilOnyama Limba NEGOTIATION
Salvatore V DarakjyIndiaIoni Bowcher QUALIFIED
James P DoeFranceIoni Bowcher PROPOSAL
Ricardo Q TollnerJapanAmy Elsner UNQUALIFIED
Maria Q OldroydJapanStephen Shaw RENEWAL
Jones W DarakjyCanadaAsiya Javayant QUALIFIED
Morrow I GauchoCanadaOnyama Limba UNQUALIFIED
Ricardo A MacleadCanadaBernardo Dominic PROPOSAL
Aruna T FigeroaFranceIoni Bowcher NEW
Claire T GlickSpainStephen Shaw PROPOSAL
Sinclair R MaletJapanBernardo Dominic UNQUALIFIED
Kadeem L AlbaresIndiaBernardo Dominic UNQUALIFIED
Octavia F PerinSpainIoni Bowcher UNQUALIFIED
Emily P PoquetteFranceIvan Magalhaes NEW
David V DilliardIndiaIoni Bowcher QUALIFIED
Nicolas L FlosiSpainElwin Sharvill NEW
Nicolas F MacleadRussiaBernardo Dominic NEGOTIATION
Alejandro I SergiUnited KingdomElwin Sharvill NEW
Antonio L DilliardArgentinaElwin Sharvill UNQUALIFIED
Jeanfrancois Y PoquetteArgentinaBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Costa M Gaucho
Francesco Q Albares
Emily E Amigon
Stacey J Bolognia
Greenwood V Darakjy
Johnson G Gaucho
Wickens Y Doe
Wickens K Oldroyd
Smith P Darakjy
Emily O Shinko
Sinclair Q Ferencz
Leon Q Briddick
Francesco O Schemmer
Adams P Paprocki
Claire F Gaucho
Isabel C Paprocki
Misaki R Sergi
Jefferson M Darakjy
Juan N Albares
Greenwood J Malet
Salvatore U Malet
David F Waycott
Cody L Morasca
Stacey K Marrier
Mayumi L Malet
Murillo L Malet
Johnson Q Nicka
Tony A Tollner
Johnson V Butt
Smith Z Campain
Julie Z Wieser
Arvin Y Butt
Misaki T Kolmetz
Deepesh Z Stenseth
Jefferson B Malet
Johnson P Malet
Johnson Q Morasca
Francesco E Slusarski
Isabel J Butt
Juan B Shinko
Faith X Waycott
Francesco T Rulapaugh
Jeanfrancois W Royster
Kadeem O Ferencz
Jeanfrancois X Whobrey
Kaitlin F Chui
Octavia B Gaucho
Ivar F Nicka
Rodrigues W Paprocki
Juan E Chui
IdCountryDate
1000France2026-05-02
1001India2026-04-20
1002Italy2026-05-06
1003Italy2026-04-12
1004India2026-04-19
1005France2026-04-17
1006Australia2026-05-10
1007Canada2026-04-18
1008Brazil2026-04-13
1009Japan2026-04-15
1010Australia2026-05-11
1011United Kingdom2026-05-08
1012Australia2026-04-17
1013Japan2026-05-05
1014United Kingdom2026-04-25
1015Argentina2026-04-20
1016United Kingdom2026-04-28
1017Australia2026-04-19
1018Germany2026-05-10
1019France2026-05-08
1020France2026-05-04
1021Japan2026-05-10
1022Spain2026-05-04
1023India2026-05-08
1024Argentina2026-05-04
1025Australia2026-04-26
1026Germany2026-04-24
1027Germany2026-04-14
1028Russia2026-04-19
1029Italy2026-04-24
1030Germany2026-04-18
1031Italy2026-05-03
1032Russia2026-04-23
1033India2026-04-21
1034Germany2026-05-10
1035Russia2026-04-17
1036Argentina2026-05-10
1037Canada2026-04-28
1038Spain2026-05-02
1039Japan2026-05-03
1040United Kingdom2026-05-01
1041United Kingdom2026-04-19
1042Argentina2026-04-15
1043Australia2026-05-05
1044Argentina2026-05-08
1045France2026-05-02
1046Canada2026-05-02
1047Argentina2026-04-29
1048Germany2026-05-07
1049United Kingdom2026-05-06

On-Demand Data

NameIdCountryDate
Clifford S Vocelka1000Brazil2026-04-26
Emily N Briddick1001Russia2026-05-01
Murillo V Ruta1002Russia2026-04-29
Ashley X Rulapaugh1003Spain2026-05-05
Clifford R Inouye1004Spain2026-04-22
Claire W Butt1005Argentina2026-04-14
Misaki D Poquette1006Germany2026-04-23
Clifford G Amigon1007United Kingdom2026-05-04
Aditya R Waycott1008Spain2026-05-03
Adams W Wieser1009India2026-04-18
Arvin J Flosi1010Brazil2026-04-29
Mayumi X Kusko1011Japan2026-04-14
Morrow V Flosi1012Germany2026-04-23
Juan Y Royster1013France2026-05-08
Kaitlin J Ruta1014India2026-05-07
Greenwood F Slusarski1015United Kingdom2026-04-27
Aditya R Glick1016United Kingdom2026-04-17
Isabel C Waycott1017Argentina2026-05-05
Izzy Z Nicka1018Australia2026-04-17
Claire H Stockham1019Germany2026-04-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo C NestleSpainStephen Shaw NEW
Aditya C WaycottRussiaAmy Elsner NEW
Mayumi Q MorascaSpainXuxue Feng QUALIFIED
Isabel X MaletFranceElwin Sharvill RENEWAL
Murillo S SchemmerRussiaIvan Magalhaes PROPOSAL
Leon N MacleadSpainXuxue Feng NEW
Adams I GlickArgentinaAmy Elsner QUALIFIED
Mayumi P BologniaUnited KingdomIoni Bowcher UNQUALIFIED
Kaitlin S KuskoFranceAnna Fali NEGOTIATION
Aditya K OstroskyUnited KingdomIoni Bowcher PROPOSAL
Izzy Y StockhamFranceOnyama Limba NEW
Johnson D FollerRussiaAmy Elsner UNQUALIFIED
Jennifer I DarakjyGermanyAsiya Javayant QUALIFIED
Jefferson M PoquetteGermanyOnyama Limba NEGOTIATION
Claire A StockhamGermanyElwin Sharvill NEW
Juan S SergiRussiaStephen Shaw NEW
Julie Y CaldareraGermanyAsiya Javayant RENEWAL
Ashley L SlusarskiFranceAmy Elsner NEGOTIATION
Leja N FerenczBrazilElwin Sharvill NEW
Clifford W OldroydAustraliaAsiya Javayant PROPOSAL
David I DoeRussiaAmy Elsner NEGOTIATION
Darci Z ShinkoAustraliaAmy Elsner PROPOSAL
Mayumi D MaletAustraliaStephen Shaw NEGOTIATION
Clifford K OldroydFranceOnyama Limba NEGOTIATION
Ivar I ButtSpainOnyama Limba NEGOTIATION
Tony E RulapaughCanadaAsiya Javayant QUALIFIED
Jennifer S BriddickJapanAmy Elsner UNQUALIFIED
Isabel E GlickRussiaAnna Fali PROPOSAL
Silvio N GauchoGermanyBernardo Dominic PROPOSAL
Salvatore E DilliardFranceXuxue Feng RENEWAL
Ivar U FlosiBrazilAnna Fali RENEWAL
Tony P RimUnited KingdomIvan Magalhaes NEW
Maisha I FerenczFranceIvan Magalhaes UNQUALIFIED
Jeanfrancois R AlbaresItalyAsiya Javayant PROPOSAL
Rodrigues Z CaldareraItalyIvan Magalhaes RENEWAL
Alejandro M VenereFranceBernardo Dominic QUALIFIED
Alejandro H PoquetteCanadaBernardo Dominic RENEWAL
Antonio U FollerGermanyElwin Sharvill NEW
Deepesh H MorascaGermanyAsiya Javayant RENEWAL
Clifford C KuskoGermanyAmy Elsner NEW

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