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
Arvin R CaudyBrazilAmy Elsner PROPOSAL
Aruna L StensethBrazilAnna Fali NEGOTIATION
Kaitlin F BowleyIndiaIoni Bowcher QUALIFIED
Kadeem Q DilliardCanadaIoni Bowcher UNQUALIFIED
Misaki U RoysterIndiaOnyama Limba NEW
Adams E PoquetteRussiaAsiya Javayant NEW
Jefferson W CaldareraFranceIoni Bowcher RENEWAL
Leon S MorascaCanadaIoni Bowcher RENEWAL
Isabel Q StockhamBrazilIoni Bowcher NEW
Jeanfrancois V ButtBrazilAmy Elsner NEGOTIATION
Emily J SaylorsGermanyAmy Elsner RENEWAL
Francesco J MacleadAustraliaXuxue Feng PROPOSAL
Munro L SergiGermanyStephen Shaw UNQUALIFIED
Murillo K VocelkaRussiaAnna Fali RENEWAL
Greenwood S OldroydAustraliaAmy Elsner QUALIFIED
Izzy P MaletItalyElwin Sharvill UNQUALIFIED
Faith Y GillianUnited KingdomIvan Magalhaes UNQUALIFIED
Emily M GillianGermanyXuxue Feng NEW
Jones K RoysterUnited KingdomOnyama Limba QUALIFIED
Leon J GillianArgentinaIoni Bowcher NEGOTIATION
Leja J IturbideSpainStephen Shaw NEW
Murillo W BriddickJapanBernardo Dominic QUALIFIED
Ivar Y NestleBrazilAsiya Javayant NEW
Aditya N InouyeUnited KingdomOnyama Limba PROPOSAL
Stacey L PoquetteRussiaAsiya Javayant PROPOSAL
Arvin L FlosiJapanAnna Fali QUALIFIED
Aruna R SchemmerSpainAnna Fali UNQUALIFIED
Octavia F NickaIndiaOnyama Limba UNQUALIFIED
Johnson I CaldareraBrazilAmy Elsner RENEWAL
Greenwood E BriddickAustraliaIvan Magalhaes QUALIFIED
Murillo B RutaBrazilBernardo Dominic QUALIFIED
Silvio U InouyeBrazilOnyama Limba PROPOSAL
Costa D NestleIndiaIvan Magalhaes QUALIFIED
David L PerinUnited KingdomAnna Fali UNQUALIFIED
Ashley P DarakjySpainIvan Magalhaes QUALIFIED
Leon H StensethUnited KingdomXuxue Feng QUALIFIED
Costa C SlusarskiRussiaIvan Magalhaes RENEWAL
Greenwood H GarufiJapanAsiya Javayant NEW
Antonio I VenereJapanAmy Elsner NEGOTIATION
Nicolas M MarrierIndiaAmy Elsner NEGOTIATION
Smith F IturbideAustraliaStephen Shaw NEGOTIATION
Jeanfrancois O WhobreyFranceIoni Bowcher RENEWAL
Isabel G GauchoGermanyElwin Sharvill RENEWAL
Clifford Q FollerBrazilOnyama Limba PROPOSAL
Munro G GauchoGermanyOnyama Limba UNQUALIFIED
Salvatore M SlusarskiCanadaStephen Shaw UNQUALIFIED
Smith W SergiSpainBernardo Dominic UNQUALIFIED
Clifford H FigeroaFranceOnyama Limba PROPOSAL
James Z MacleadJapanElwin Sharvill NEGOTIATION
Costa Q KolmetzJapanIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Mayumi K ShinkoRussiaIvan Magalhaes UNQUALIFIED
Antonio P FerenczJapanAsiya Javayant PROPOSAL
Jennifer F WieserRussiaIvan Magalhaes NEW
Claire D RoysterUnited KingdomAsiya Javayant RENEWAL
Tony Q RoysterBrazilIoni Bowcher UNQUALIFIED
Kadeem Y GauchoUnited KingdomAmy Elsner NEW
Clifford R StensethFranceIoni Bowcher NEGOTIATION
Maisha E OstroskyFranceAnna Fali QUALIFIED
Murillo A VenereIndiaIoni Bowcher PROPOSAL
Munro L FollerArgentinaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair C GillianBrazil2026-03-16Rangoni Of Florence NEW17Asiya Javayant
1001Munro U OstroskyIndia2026-03-15Rangoni Of Florence PROPOSAL23Xuxue Feng
1002Tony Q WaycottAustralia2026-03-18Rangoni Of Florence QUALIFIED25Onyama Limba
1003Claire O SlusarskiItaly2026-03-05King, Christopher A Esq QUALIFIED81Amy Elsner
1004Isabel F SlusarskiGermany2026-03-24King, Christopher A Esq NEW80Bernardo Dominic
1005James N DoeGermany2026-03-26Feltz Printing Service UNQUALIFIED46Asiya Javayant
1006Silvio O DarakjyIndia2026-03-20Truhlar And Truhlar Attys UNQUALIFIED63Elwin Sharvill
1007Isabel Q RulapaughJapan2026-03-02Chanay, Jeffrey A Esq QUALIFIED11Amy Elsner
1008Aditya A ChuiIndia2026-03-13Benton, John B Jr NEW98Ivan Magalhaes
1009Sinclair V GarufiItaly2026-03-24Chanay, Jeffrey A Esq RENEWAL58Asiya Javayant
1010Kaitlin L FlosiArgentina2026-03-22Truhlar And Truhlar Attys RENEWAL92Elwin Sharvill
1011Julie R VenereBrazil2026-03-07Chapman, Ross E Esq QUALIFIED97Anna Fali
1012Morrow K VenereFrance2026-03-10Chanay, Jeffrey A Esq NEW47Bernardo Dominic
1013Arvin Z SergiItaly2026-03-25Commercial Press PROPOSAL89Elwin Sharvill
1014James F GarufiArgentina2026-03-26Chanay, Jeffrey A Esq QUALIFIED70Elwin Sharvill
1015Silvio B NickaAustralia2026-03-12Dorl, James J Esq NEW55Amy Elsner
1016Greenwood T DilliardGermany2026-03-04Benton, John B Jr NEW35Amy Elsner
1017Silvio N WaycottItaly2026-02-26Commercial Press UNQUALIFIED94Onyama Limba
1018Deepesh W BologniaFrance2026-03-07Chapman, Ross E Esq UNQUALIFIED25Bernardo Dominic
1019Arvin P NestleGermany2026-03-05Morlong Associates RENEWAL34Asiya Javayant
1020Nicolas D OldroydFrance2026-03-04Chapman, Ross E Esq UNQUALIFIED79Bernardo Dominic
1021Izzy V WhobreyGermany2026-03-20King, Christopher A Esq PROPOSAL31Elwin Sharvill
1022Ashley J SlusarskiIndia2026-03-04Rousseaux, Michael Esq NEW18Elwin Sharvill
1023Rodrigues K SlusarskiBrazil2026-03-20Buckley Miller Wright RENEWAL79Anna Fali
1024Stacey N GauchoIndia2026-03-27King, Christopher A Esq PROPOSAL98Ioni Bowcher
1025Isabel D SlusarskiJapan2026-03-20Truhlar And Truhlar Attys QUALIFIED61Ioni Bowcher
1026Deepesh E StensethJapan2026-03-03Rangoni Of Florence NEW1Xuxue Feng
1027Jones G DilliardFrance2026-03-17Buckley Miller Wright RENEWAL2Onyama Limba
1028Smith C DarakjyJapan2026-02-26Buckley Miller Wright UNQUALIFIED22Amy Elsner
1029Johnson B SlusarskiFrance2026-03-18Truhlar And Truhlar Attys PROPOSAL7Anna Fali
1030Johnson X StensethIndia2026-02-27Feltz Printing Service UNQUALIFIED84Asiya Javayant
1031Claire B ButtCanada2026-03-03Buckley Miller Wright QUALIFIED14Elwin Sharvill
1032James N SaylorsGermany2026-03-06King, Christopher A Esq NEGOTIATION56Ioni Bowcher
1033Mayumi B VenereUnited Kingdom2026-03-12Feiner Bros NEGOTIATION46Xuxue Feng
1034Sinclair C PoquetteGermany2026-03-27Morlong Associates NEW57Elwin Sharvill
1035Smith I MacleadFrance2026-02-28Benton, John B Jr UNQUALIFIED4Xuxue Feng
1036Silvio T GlickItaly2026-03-06Chapman, Ross E Esq NEW19Ioni Bowcher
1037Maisha Q NickaItaly2026-03-01Truhlar And Truhlar Attys NEGOTIATION20Asiya Javayant
1038Misaki W RimSpain2026-03-26Chemel, James L Cpa RENEWAL19Asiya Javayant
1039Maisha L MacleadItaly2026-03-13Feltz Printing Service QUALIFIED96Xuxue Feng
1040Maria L AlbaresRussia2026-03-13Rangoni Of Florence RENEWAL25Anna Fali
1041Rodrigues I NestleUnited Kingdom2026-03-22Rangoni Of Florence UNQUALIFIED73Elwin Sharvill
1042Leja L FlosiArgentina2026-03-11Rousseaux, Michael Esq QUALIFIED52Ioni Bowcher
1043Arvin M KuskoSpain2026-03-05Rousseaux, Michael Esq QUALIFIED40Elwin Sharvill
1044Aditya F GillianJapan2026-03-09Morlong Associates NEW98Ivan Magalhaes
1045Mujtaba Z BriddickFrance2026-03-09Feltz Printing Service QUALIFIED41Amy Elsner
1046Ivar I ButtBrazil2026-03-26Truhlar And Truhlar Attys PROPOSAL66Xuxue Feng
1047Mayumi X BologniaArgentina2026-03-13Benton, John B Jr UNQUALIFIED70Elwin Sharvill
1048Maria N ShinkoSpain2026-03-03Truhlar And Truhlar Attys NEGOTIATION41Anna Fali
1049Claire P WieserGermany2026-03-14King, Christopher A Esq RENEWAL93Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Aika J VenereFranceXuxue Feng NEW
Julie O BologniaSpainIoni Bowcher NEGOTIATION
Izzy C GarufiIndiaAmy Elsner QUALIFIED
David U OstroskyArgentinaIvan Magalhaes PROPOSAL
Morrow Z WaycottFranceIoni Bowcher QUALIFIED
Morrow G MaletRussiaStephen Shaw NEGOTIATION
Johnson A ShinkoRussiaIoni Bowcher PROPOSAL
Mayumi Y GillianRussiaIoni Bowcher RENEWAL
Misaki G RimJapanIvan Magalhaes RENEWAL
Arvin T SchemmerArgentinaAnna Fali PROPOSAL
Murillo H FlosiBrazilXuxue Feng PROPOSAL
Aika J TollnerRussiaAsiya Javayant QUALIFIED
Darci Y VocelkaCanadaElwin Sharvill UNQUALIFIED
Murillo T RimSpainAnna Fali QUALIFIED
David D TollnerFranceAsiya Javayant RENEWAL
Jones O NickaBrazilElwin Sharvill NEW
Francesco Y BowleyGermanyAnna Fali NEW
Aika G NestleSpainBernardo Dominic PROPOSAL
Jefferson P RutaFranceStephen Shaw QUALIFIED
Clifford L NickaUnited KingdomAmy Elsner RENEWAL
Kadeem O GarufiUnited KingdomElwin Sharvill PROPOSAL
Johnson A ShinkoIndiaIvan Magalhaes QUALIFIED
Jefferson H DilliardIndiaOnyama Limba NEW
Izzy G VenereCanadaIoni Bowcher RENEWAL
Jefferson Q BowleySpainAnna Fali QUALIFIED
Chavez J SchemmerRussiaElwin Sharvill PROPOSAL
Aika C PerinJapanOnyama Limba NEGOTIATION
Wickens H FerenczAustraliaAsiya Javayant NEW
Leon V CaldareraIndiaAmy Elsner UNQUALIFIED
Darci I DoeFranceIoni Bowcher UNQUALIFIED
Deepesh X AlbaresJapanXuxue Feng QUALIFIED
Chavez F MarrierSpainIvan Magalhaes RENEWAL
Ashley F DarakjyArgentinaElwin Sharvill QUALIFIED
Ashley D WieserSpainAmy Elsner QUALIFIED
Ivar Q WhobreyBrazilOnyama Limba RENEWAL
Sinclair D FigeroaRussiaXuxue Feng NEGOTIATION
Juan Q IturbideArgentinaElwin Sharvill NEW
Leja F RoysterAustraliaIoni Bowcher RENEWAL
Juan A DilliardUnited KingdomBernardo Dominic RENEWAL
Deepesh P SchemmerIndiaBernardo Dominic UNQUALIFIED
Sinclair N ButtRussiaOnyama Limba NEW
Ashley I GillianAustraliaXuxue Feng NEGOTIATION
David B RoysterItalyStephen Shaw RENEWAL
Izzy A SlusarskiArgentinaAmy Elsner PROPOSAL
Johnson X OldroydArgentinaAmy Elsner RENEWAL
Isabel I RimBrazilStephen Shaw RENEWAL
Rodrigues X GarufiBrazilAnna Fali NEW
Misaki L CaldareraRussiaOnyama Limba PROPOSAL
Tony I WieserRussiaIvan Magalhaes NEW
Julie T RimAustraliaOnyama Limba RENEWAL
Frozen Columns
Name
Juan D Nestle
Adams Z Caudy
James A Campain
Juan F Foller
Deepesh L Campain
Jones B Figeroa
Morrow E Whobrey
Greenwood L Malet
Cody E Kolmetz
Munro I Malet
Darci E Wieser
Tony T Poquette
Arvin A Wieser
Jefferson P Saylors
Cody Z Malet
Kadeem J Campain
Rodrigues U Paprocki
Cody Z Caudy
Stacey N Inouye
Adams T Caudy
Aditya M Kolmetz
Deepesh Q Poquette
Alejandro Z Rim
Mujtaba A Caldarera
Faith X Figeroa
Morrow Z Rulapaugh
Adams K Malet
Jones X Malet
Kaitlin G Inouye
Misaki J Ferencz
Alejandro L Maclead
Francesco X Bowley
Costa Q Flosi
Tony A Stenseth
Maisha G Inouye
Kadeem C Campain
Greenwood H Caudy
Aika O Rim
Stacey I Waycott
Morrow J Maclead
Greenwood T Amigon
Claire P Schemmer
Aika N Marrier
Arvin S Glick
James V Vocelka
Octavia K Poquette
Aika H Perin
Morrow E Kusko
Arvin U Doe
Claire T Caudy
IdCountryDate
1000Argentina2026-02-28
1001Russia2026-03-21
1002Italy2026-03-07
1003Australia2026-02-26
1004Germany2026-03-05
1005Russia2026-03-02
1006Italy2026-03-02
1007Italy2026-03-16
1008Australia2026-02-26
1009United Kingdom2026-02-28
1010Australia2026-03-23
1011Australia2026-03-12
1012Germany2026-03-21
1013India2026-03-23
1014United Kingdom2026-03-20
1015Brazil2026-03-11
1016India2026-02-26
1017Australia2026-03-25
1018Canada2026-03-16
1019Germany2026-03-20
1020United Kingdom2026-03-27
1021Spain2026-02-26
1022France2026-03-17
1023France2026-03-05
1024Canada2026-03-02
1025India2026-03-19
1026France2026-03-11
1027Italy2026-03-03
1028Japan2026-03-25
1029Japan2026-03-19
1030Brazil2026-03-06
1031Italy2026-03-22
1032Australia2026-03-25
1033Australia2026-03-06
1034Germany2026-03-22
1035Germany2026-03-03
1036France2026-03-15
1037Japan2026-03-16
1038France2026-03-26
1039Italy2026-03-21
1040Canada2026-03-18
1041Japan2026-03-17
1042Australia2026-03-05
1043France2026-03-18
1044United Kingdom2026-03-05
1045Germany2026-03-16
1046India2026-03-22
1047France2026-03-06
1048United Kingdom2026-03-01
1049Japan2026-03-17

On-Demand Data

NameIdCountryDate
Morrow G Chui1000Japan2026-03-10
Isabel A Sergi1001India2026-03-09
Alejandro D Nicka1002Brazil2026-03-24
David T Caldarera1003Russia2026-03-24
Morrow P Malet1004Germany2026-03-11
Jennifer Y Paprocki1005Russia2026-03-27
Morrow E Nicka1006Germany2026-03-13
Sinclair M Wieser1007India2026-03-11
Jefferson X Tollner1008United Kingdom2026-03-22
Costa I Malet1009United Kingdom2026-03-23
Izzy F Kusko1010Russia2026-03-15
Jeanfrancois A Saylors1011United Kingdom2026-03-04
Kaitlin T Albares1012Italy2026-03-12
Leja C Morasca1013France2026-03-18
Alejandro V Kolmetz1014Spain2026-03-07
Aruna K Albares1015Germany2026-03-26
Maisha L Bolognia1016Brazil2026-02-28
Aruna N Wieser1017France2026-03-23
Silvio Z Doe1018United Kingdom2026-03-05
Johnson R Caldarera1019Spain2026-03-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer U BriddickRussiaAnna Fali NEW
Jennifer G AlbaresFranceBernardo Dominic NEW
Sinclair V MarrierIndiaAnna Fali UNQUALIFIED
Aika D MorascaSpainIoni Bowcher QUALIFIED
Maisha A MorascaSpainStephen Shaw NEGOTIATION
Ivar G FerenczRussiaOnyama Limba NEW
Salvatore U ChuiBrazilOnyama Limba PROPOSAL
Mayumi N BologniaRussiaAmy Elsner UNQUALIFIED
Faith S OldroydBrazilAnna Fali UNQUALIFIED
Stacey D OstroskyBrazilBernardo Dominic QUALIFIED
Aika G MaletBrazilAsiya Javayant UNQUALIFIED
Maria P PaprockiGermanyStephen Shaw NEW
Leja S DarakjyBrazilOnyama Limba NEW
Munro N RoysterSpainAnna Fali QUALIFIED
Emily L BriddickFranceIoni Bowcher NEGOTIATION
Darci L IturbideSpainBernardo Dominic RENEWAL
Aruna D DilliardBrazilAmy Elsner NEGOTIATION
Maria D SaylorsIndiaAnna Fali QUALIFIED
Arvin I InouyeArgentinaAnna Fali PROPOSAL
Clifford R GarufiItalyElwin Sharvill NEW
Francesco E StensethSpainIoni Bowcher QUALIFIED
Claire V CampainItalyAnna Fali UNQUALIFIED
Jennifer C OldroydItalyElwin Sharvill NEW
Jeanfrancois R AlbaresBrazilIoni Bowcher NEGOTIATION
Adams H GarufiRussiaIvan Magalhaes RENEWAL
Ricardo Z WhobreySpainElwin Sharvill QUALIFIED
Aditya Z GlickIndiaOnyama Limba NEW
Stacey H SchemmerItalyAsiya Javayant QUALIFIED
Claire C FollerJapanStephen Shaw QUALIFIED
Francesco T FigeroaFranceAsiya Javayant UNQUALIFIED
Jefferson P SaylorsBrazilXuxue Feng RENEWAL
Izzy L RulapaughFranceStephen Shaw RENEWAL
Ashley R GauchoSpainIvan Magalhaes UNQUALIFIED
Ricardo X IturbideUnited KingdomAnna Fali NEW
Chavez B IturbideItalyAsiya Javayant QUALIFIED
Wickens H AmigonArgentinaBernardo Dominic RENEWAL
Clifford O RutaArgentinaIoni Bowcher UNQUALIFIED
Jeanfrancois R NickaRussiaIvan Magalhaes UNQUALIFIED
Jones K WaycottRussiaBernardo Dominic NEGOTIATION
Jefferson N BriddickIndiaStephen Shaw 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.