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
Izzy Q BologniaGermanyOnyama Limba NEGOTIATION
Faith E MaletArgentinaElwin Sharvill QUALIFIED
Murillo X WieserFranceStephen Shaw RENEWAL
Octavia S SchemmerSpainAsiya Javayant NEGOTIATION
Sinclair H GillianSpainBernardo Dominic RENEWAL
Greenwood J MaletGermanyIvan Magalhaes NEW
Stacey G RimBrazilAsiya Javayant QUALIFIED
Costa H SaylorsBrazilStephen Shaw PROPOSAL
Stacey X FlosiItalyIoni Bowcher NEGOTIATION
Octavia L WhobreyAustraliaElwin Sharvill PROPOSAL
Kadeem P AlbaresCanadaIoni Bowcher QUALIFIED
Murillo Y CampainArgentinaAsiya Javayant NEW
Jennifer J GauchoJapanIoni Bowcher NEGOTIATION
Adams E SchemmerFranceOnyama Limba RENEWAL
Clifford W MorascaUnited KingdomElwin Sharvill PROPOSAL
Sinclair H OstroskyBrazilAnna Fali NEGOTIATION
Rodrigues S PoquetteRussiaBernardo Dominic NEW
Greenwood U OstroskyFranceBernardo Dominic NEW
Clifford Q GauchoUnited KingdomIoni Bowcher NEW
Julie Z DoeCanadaOnyama Limba UNQUALIFIED
Emily Z AmigonGermanyBernardo Dominic PROPOSAL
Kadeem G MorascaCanadaAnna Fali RENEWAL
Jones W DarakjyFranceXuxue Feng UNQUALIFIED
Smith D OstroskyJapanAnna Fali RENEWAL
Francesco P VenereBrazilAsiya Javayant RENEWAL
Darci S AmigonRussiaStephen Shaw UNQUALIFIED
Jennifer S StockhamIndiaIoni Bowcher PROPOSAL
Leja E RutaIndiaAmy Elsner UNQUALIFIED
Leja P FigeroaGermanyOnyama Limba RENEWAL
Aruna P FollerBrazilOnyama Limba NEW
Munro O CaudyJapanAmy Elsner NEGOTIATION
Aditya F DarakjyBrazilAnna Fali UNQUALIFIED
Emily M GlickAustraliaElwin Sharvill PROPOSAL
Francesco H GillianFranceAmy Elsner RENEWAL
Ricardo S StockhamIndiaElwin Sharvill NEW
Smith Z SergiItalyBernardo Dominic UNQUALIFIED
Leon L VocelkaRussiaBernardo Dominic NEGOTIATION
Cody H FollerUnited KingdomAmy Elsner NEGOTIATION
Johnson S FigeroaArgentinaAnna Fali PROPOSAL
Ashley E CaldareraBrazilAnna Fali QUALIFIED
Francesco V VocelkaAustraliaStephen Shaw NEW
Maria U ButtIndiaIvan Magalhaes NEGOTIATION
Clifford S NickaArgentinaStephen Shaw NEGOTIATION
Izzy R PaprockiUnited KingdomStephen Shaw QUALIFIED
Jefferson K PoquetteIndiaElwin Sharvill NEW
Leja N CampainBrazilElwin Sharvill PROPOSAL
Leja B BologniaArgentinaAmy Elsner RENEWAL
Cody Y CaldareraBrazilIoni Bowcher RENEWAL
Arvin S MaletRussiaAnna Fali QUALIFIED
Rodrigues M MarrierGermanyAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Mayumi S GlickGermanyAnna Fali QUALIFIED
Nicolas V KolmetzRussiaIvan Magalhaes QUALIFIED
Deepesh M ButtJapanAsiya Javayant UNQUALIFIED
Salvatore Y InouyeItalyOnyama Limba NEW
Ashley P SergiUnited KingdomXuxue Feng QUALIFIED
Kaitlin J CampainRussiaBernardo Dominic NEGOTIATION
Morrow J SlusarskiArgentinaBernardo Dominic NEW
Aditya Q StensethSpainIoni Bowcher NEW
Misaki A ChuiArgentinaIoni Bowcher QUALIFIED
David P PoquetteAustraliaBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith J BriddickItaly2026-03-02Chapman, Ross E Esq PROPOSAL71Onyama Limba
1001Jones H TollnerArgentina2026-03-05Morlong Associates RENEWAL33Onyama Limba
1002Isabel V BriddickSpain2026-03-13Printing Dimensions NEW84Ivan Magalhaes
1003Alejandro L MaletBrazil2026-02-28Rangoni Of Florence NEW25Anna Fali
1004Antonio D GauchoFrance2026-03-17Feiner Bros NEGOTIATION4Elwin Sharvill
1005Alejandro F ShinkoIndia2026-03-01Feltz Printing Service RENEWAL36Anna Fali
1006Emily L WieserJapan2026-03-20Chanay, Jeffrey A Esq RENEWAL45Stephen Shaw
1007Clifford O CampainAustralia2026-02-28Chapman, Ross E Esq RENEWAL14Amy Elsner
1008Ivar G DoeArgentina2026-03-09Buckley Miller Wright NEW28Xuxue Feng
1009Ashley I GarufiJapan2026-03-21Feiner Bros UNQUALIFIED91Amy Elsner
1010Sinclair M StensethBrazil2026-03-14Rangoni Of Florence RENEWAL5Onyama Limba
1011Darci Z GauchoSpain2026-03-11Dorl, James J Esq RENEWAL72Ioni Bowcher
1012Jeanfrancois E NestleJapan2026-03-18Truhlar And Truhlar Attys UNQUALIFIED79Elwin Sharvill
1013Alejandro A CampainGermany2026-03-13Benton, John B Jr RENEWAL67Anna Fali
1014David C AlbaresSpain2026-02-23Rousseaux, Michael Esq RENEWAL78Xuxue Feng
1015Izzy Z NestleCanada2026-02-23Chemel, James L Cpa QUALIFIED36Xuxue Feng
1016Alejandro B CaudyArgentina2026-02-25Feiner Bros NEW56Asiya Javayant
1017Morrow I RimAustralia2026-03-12Chapman, Ross E Esq NEW49Stephen Shaw
1018Isabel L PaprockiSpain2026-03-01Printing Dimensions RENEWAL39Anna Fali
1019Aika T FlosiArgentina2026-03-04Feiner Bros QUALIFIED93Ioni Bowcher
1020Octavia E RulapaughRussia2026-03-03Chanay, Jeffrey A Esq RENEWAL72Xuxue Feng
1021Octavia K KuskoItaly2026-03-08Rousseaux, Michael Esq NEW57Ioni Bowcher
1022James A FerenczAustralia2026-03-13Chanay, Jeffrey A Esq UNQUALIFIED18Amy Elsner
1023Mujtaba S SchemmerAustralia2026-03-14Chapman, Ross E Esq QUALIFIED74Ioni Bowcher
1024Mayumi W MarrierUnited Kingdom2026-03-19Truhlar And Truhlar Attys NEW1Stephen Shaw
1025Alejandro O ChuiFrance2026-03-14Rangoni Of Florence UNQUALIFIED97Ivan Magalhaes
1026Deepesh B TollnerCanada2026-03-14Truhlar And Truhlar Attys NEW11Ivan Magalhaes
1027Murillo Y NickaItaly2026-03-07Chapman, Ross E Esq NEGOTIATION39Anna Fali
1028Morrow K TollnerArgentina2026-03-04Printing Dimensions NEW93Anna Fali
1029Jeanfrancois Y PaprockiJapan2026-02-25Truhlar And Truhlar Attys NEGOTIATION33Ioni Bowcher
1030Leja N BologniaRussia2026-02-23Dorl, James J Esq NEW74Onyama Limba
1031Costa W GarufiBrazil2026-02-27Morlong Associates UNQUALIFIED3Stephen Shaw
1032Faith B StockhamArgentina2026-02-26Rangoni Of Florence UNQUALIFIED65Ivan Magalhaes
1033Clifford H FerenczIndia2026-03-06Rangoni Of Florence NEW97Anna Fali
1034Chavez K BriddickGermany2026-03-03Chemel, James L Cpa NEGOTIATION17Amy Elsner
1035Kadeem U InouyeAustralia2026-03-03Rangoni Of Florence NEW99Stephen Shaw
1036Sinclair E GlickBrazil2026-02-23Chapman, Ross E Esq RENEWAL53Bernardo Dominic
1037Izzy N RoysterGermany2026-03-10Buckley Miller Wright RENEWAL74Amy Elsner
1038Arvin J StensethArgentina2026-03-14Buckley Miller Wright UNQUALIFIED68Amy Elsner
1039Izzy Y RutaAustralia2026-02-22Feiner Bros RENEWAL20Elwin Sharvill
1040Salvatore B SlusarskiGermany2026-03-10Morlong Associates NEW52Onyama Limba
1041Ricardo O AmigonRussia2026-02-28Chanay, Jeffrey A Esq QUALIFIED36Elwin Sharvill
1042Octavia T AlbaresFrance2026-03-19Rangoni Of Florence NEGOTIATION80Ivan Magalhaes
1043Deepesh Z OstroskyItaly2026-03-10Truhlar And Truhlar Attys NEW52Anna Fali
1044Kadeem J SergiCanada2026-03-03Printing Dimensions UNQUALIFIED15Bernardo Dominic
1045Clifford P RoysterAustralia2026-03-05Truhlar And Truhlar Attys NEGOTIATION22Bernardo Dominic
1046Sinclair T MacleadGermany2026-02-25Chanay, Jeffrey A Esq RENEWAL58Ioni Bowcher
1047David Y WhobreyFrance2026-02-24Benton, John B Jr NEGOTIATION47Amy Elsner
1048Misaki W FerenczUnited Kingdom2026-02-23Rousseaux, Michael Esq QUALIFIED32Bernardo Dominic
1049Nicolas C MacleadFrance2026-02-25Morlong Associates UNQUALIFIED49Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Claire T RulapaughSpainAnna Fali NEGOTIATION
Adams V ChuiGermanyIvan Magalhaes RENEWAL
Arvin W NickaRussiaBernardo Dominic UNQUALIFIED
Morrow B MaletUnited KingdomXuxue Feng PROPOSAL
Smith S GarufiIndiaStephen Shaw UNQUALIFIED
Arvin D WieserGermanyAnna Fali PROPOSAL
Johnson Z GillianBrazilXuxue Feng NEGOTIATION
Clifford H GlickBrazilAnna Fali QUALIFIED
Nicolas M ShinkoCanadaIvan Magalhaes UNQUALIFIED
Stacey G KuskoCanadaAnna Fali RENEWAL
Antonio X SchemmerItalyXuxue Feng PROPOSAL
Leon X SergiJapanElwin Sharvill RENEWAL
Mayumi B NestleIndiaIoni Bowcher RENEWAL
Juan W MaletRussiaOnyama Limba QUALIFIED
Octavia S VocelkaArgentinaOnyama Limba NEW
Aditya U OldroydAustraliaElwin Sharvill UNQUALIFIED
David V MorascaBrazilAmy Elsner PROPOSAL
Mujtaba Q SchemmerGermanyElwin Sharvill RENEWAL
Sinclair N PaprockiSpainIoni Bowcher NEW
Jennifer O OldroydAustraliaIvan Magalhaes NEGOTIATION
Tony S MorascaFranceXuxue Feng RENEWAL
Munro E GillianBrazilIvan Magalhaes UNQUALIFIED
Leon Q MacleadRussiaAmy Elsner UNQUALIFIED
Antonio B PoquetteRussiaAsiya Javayant NEW
Greenwood T FlosiCanadaAmy Elsner RENEWAL
Sinclair K ButtArgentinaOnyama Limba RENEWAL
Misaki F FigeroaGermanyIvan Magalhaes PROPOSAL
Ivar F ShinkoUnited KingdomXuxue Feng RENEWAL
Johnson G FlosiRussiaElwin Sharvill NEGOTIATION
Leon F NickaCanadaIvan Magalhaes NEW
Wickens E BriddickBrazilAmy Elsner UNQUALIFIED
Aditya D WieserItalyXuxue Feng NEGOTIATION
Faith Y GillianJapanIoni Bowcher UNQUALIFIED
Ivar C KolmetzArgentinaXuxue Feng NEW
James F MorascaUnited KingdomStephen Shaw RENEWAL
Tony X RoysterSpainIoni Bowcher NEGOTIATION
Julie I TollnerGermanyIoni Bowcher NEW
Munro F CampainJapanAmy Elsner NEGOTIATION
Francesco E CaldareraRussiaAmy Elsner NEW
Nicolas O ButtSpainBernardo Dominic NEW
Antonio T DilliardJapanAsiya Javayant NEGOTIATION
Kadeem B PaprockiJapanAnna Fali UNQUALIFIED
Ivar X MarrierIndiaAsiya Javayant NEW
Ivar A KuskoRussiaIvan Magalhaes RENEWAL
Julie C WhobreyGermanyBernardo Dominic UNQUALIFIED
Chavez I MacleadJapanStephen Shaw NEGOTIATION
Clifford O TollnerIndiaBernardo Dominic NEW
Ricardo I RulapaughBrazilXuxue Feng QUALIFIED
Chavez C SchemmerIndiaBernardo Dominic NEGOTIATION
Alejandro I OstroskyAustraliaStephen Shaw NEGOTIATION
Frozen Columns
Name
Adams H Venere
Nicolas O Malet
Maria D Nicka
Cody M Morasca
Rodrigues K Briddick
Misaki M Nestle
Emily M Rim
Maisha U Rulapaugh
Deepesh U Iturbide
Sinclair N Caldarera
James M Inouye
Maria W Waycott
Ivar W Briddick
Emily C Albares
Leon V Darakjy
Johnson S Sergi
Misaki W Marrier
Emily V Bowley
Misaki T Stenseth
Nicolas A Foller
Nicolas R Saylors
Francesco L Caldarera
Claire I Gaucho
Ricardo Z Ferencz
Jefferson U Perin
Adams T Maclead
David V Caudy
Juan O Saylors
Munro U Marrier
Izzy U Vocelka
Costa E Darakjy
Jennifer Z Bolognia
Jones O Iturbide
Deepesh Q Venere
Stacey A Rim
Tony W Figeroa
Stacey Y Maclead
Sinclair I Malet
Stacey N Rim
Costa T Sergi
Salvatore J Rulapaugh
Octavia K Dilliard
Julie U Whobrey
Costa L Schemmer
Jeanfrancois T Inouye
Darci Q Figeroa
Aditya C Poquette
Alejandro K Briddick
Maisha Z Wieser
Faith T Waycott
IdCountryDate
1000United Kingdom2026-03-14
1001Russia2026-03-14
1002Canada2026-03-14
1003Australia2026-03-12
1004Canada2026-03-14
1005Brazil2026-03-10
1006Germany2026-02-22
1007Australia2026-03-21
1008United Kingdom2026-03-13
1009United Kingdom2026-02-26
1010Japan2026-03-19
1011Argentina2026-03-05
1012France2026-03-05
1013Germany2026-03-17
1014Australia2026-03-08
1015Brazil2026-02-22
1016Brazil2026-03-22
1017Canada2026-03-06
1018Brazil2026-03-11
1019United Kingdom2026-03-14
1020India2026-03-07
1021Canada2026-03-20
1022Italy2026-03-12
1023India2026-03-19
1024Argentina2026-03-20
1025Australia2026-03-11
1026Russia2026-02-22
1027Spain2026-03-04
1028United Kingdom2026-03-01
1029Germany2026-03-16
1030Brazil2026-03-15
1031Argentina2026-03-01
1032Australia2026-02-26
1033Japan2026-02-28
1034France2026-03-19
1035Canada2026-03-14
1036Canada2026-03-02
1037Brazil2026-03-01
1038Germany2026-02-26
1039Canada2026-03-12
1040Germany2026-02-26
1041Germany2026-03-14
1042Germany2026-03-06
1043Argentina2026-02-26
1044Argentina2026-03-21
1045Russia2026-03-09
1046France2026-03-03
1047Argentina2026-03-22
1048France2026-03-08
1049Spain2026-03-08

On-Demand Data

NameIdCountryDate
Chavez S Malet1000Japan2026-03-11
Rodrigues M Marrier1001Germany2026-02-21
Adams P Campain1002India2026-02-28
Stacey T Caldarera1003Russia2026-03-04
Aruna S Doe1004Japan2026-03-17
Aditya S Albares1005Russia2026-03-15
Ashley W Whobrey1006Japan2026-03-01
Salvatore W Kolmetz1007Brazil2026-03-01
Julie J Morasca1008United Kingdom2026-03-02
Aruna K Caldarera1009Germany2026-03-08
James R Campain1010Argentina2026-03-21
Smith U Schemmer1011Germany2026-03-10
Antonio T Maclead1012Japan2026-03-01
Leon C Albares1013Australia2026-03-11
Misaki I Dilliard1014Canada2026-03-08
Munro J Malet1015India2026-03-19
Izzy Y Malet1016Brazil2026-03-06
Nicolas W Briddick1017Australia2026-03-09
Juan P Ruta1018Italy2026-03-13
Mujtaba A Oldroyd1019France2026-03-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy W IturbideFranceElwin Sharvill UNQUALIFIED
Julie V WhobreyUnited KingdomBernardo Dominic RENEWAL
Mujtaba H InouyeGermanyAnna Fali UNQUALIFIED
Arvin M WieserRussiaAmy Elsner NEGOTIATION
Wickens P VenereBrazilStephen Shaw UNQUALIFIED
Maisha L ButtBrazilBernardo Dominic PROPOSAL
Chavez S VocelkaFranceAmy Elsner QUALIFIED
Ivar P InouyeRussiaBernardo Dominic UNQUALIFIED
Mayumi R SaylorsBrazilXuxue Feng NEW
Deepesh I OldroydBrazilIoni Bowcher NEGOTIATION
Maria Y CaldareraCanadaStephen Shaw UNQUALIFIED
Juan Q ButtRussiaAmy Elsner RENEWAL
Jeanfrancois A GillianBrazilStephen Shaw NEW
Greenwood J MaletAustraliaOnyama Limba PROPOSAL
Smith N FigeroaJapanXuxue Feng RENEWAL
Ivar U PaprockiUnited KingdomBernardo Dominic NEGOTIATION
Deepesh J MaletItalyStephen Shaw NEW
Wickens K ShinkoSpainIvan Magalhaes RENEWAL
Rodrigues J VenereBrazilAnna Fali UNQUALIFIED
David A KuskoCanadaBernardo Dominic RENEWAL
Smith J MarrierSpainAnna Fali NEGOTIATION
Leon N StensethJapanIoni Bowcher NEGOTIATION
Smith V GlickRussiaOnyama Limba QUALIFIED
Smith R CaldareraIndiaIoni Bowcher NEGOTIATION
Cody C WhobreyGermanyElwin Sharvill PROPOSAL
Sinclair Y SlusarskiSpainIoni Bowcher UNQUALIFIED
Leon M DoeFranceStephen Shaw PROPOSAL
Juan Q DilliardBrazilAmy Elsner PROPOSAL
Nicolas N MacleadSpainIoni Bowcher RENEWAL
Juan J ButtGermanyAmy Elsner RENEWAL
Misaki A PaprockiArgentinaOnyama Limba NEW
Jennifer Y StockhamGermanyIoni Bowcher RENEWAL
Murillo Z KuskoRussiaAmy Elsner PROPOSAL
Faith Y OstroskyArgentinaStephen Shaw RENEWAL
Octavia D ShinkoIndiaIvan Magalhaes PROPOSAL
Jefferson X ChuiAustraliaAmy Elsner NEGOTIATION
Antonio Y GillianRussiaIvan Magalhaes QUALIFIED
Darci H PoquetteIndiaAnna Fali UNQUALIFIED
Costa L RutaAustraliaXuxue Feng NEW
Emily S SlusarskiFranceElwin Sharvill 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.