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
Isabel D StockhamJapanXuxue Feng QUALIFIED
Darci K WaycottArgentinaBernardo Dominic RENEWAL
Rodrigues O WhobreyFranceStephen Shaw PROPOSAL
Ricardo Z WhobreyArgentinaOnyama Limba QUALIFIED
Deepesh C WieserSpainAsiya Javayant NEGOTIATION
Jennifer Z BriddickArgentinaXuxue Feng NEW
Stacey Z BowleyItalyElwin Sharvill RENEWAL
Antonio S GarufiArgentinaIoni Bowcher NEW
Costa N PaprockiGermanyStephen Shaw QUALIFIED
Emily H DoeBrazilAsiya Javayant NEW
Juan V RimArgentinaStephen Shaw QUALIFIED
Chavez Z OldroydItalyAsiya Javayant NEGOTIATION
Mayumi X BowleyBrazilElwin Sharvill NEW
Clifford N StensethArgentinaAmy Elsner NEGOTIATION
Mujtaba P PerinCanadaIvan Magalhaes QUALIFIED
Juan Q RutaJapanXuxue Feng NEGOTIATION
Mayumi R TollnerSpainXuxue Feng RENEWAL
Maisha V OstroskyItalyElwin Sharvill QUALIFIED
Stacey P DilliardUnited KingdomOnyama Limba NEW
Isabel G InouyeCanadaAmy Elsner QUALIFIED
Claire D FerenczRussiaIvan Magalhaes PROPOSAL
Nicolas B BowleyFranceStephen Shaw PROPOSAL
Aika X GarufiUnited KingdomXuxue Feng NEW
Clifford H StensethGermanyBernardo Dominic RENEWAL
Greenwood P CaudyRussiaIoni Bowcher PROPOSAL
Tony Q BowleyBrazilIoni Bowcher PROPOSAL
Stacey Y StockhamUnited KingdomOnyama Limba PROPOSAL
Aika P AlbaresBrazilIvan Magalhaes QUALIFIED
Emily S BowleyFranceIoni Bowcher RENEWAL
Francesco T PoquetteItalyXuxue Feng UNQUALIFIED
Ashley O RutaSpainBernardo Dominic NEGOTIATION
Nicolas R FollerJapanElwin Sharvill UNQUALIFIED
Claire M DarakjySpainStephen Shaw NEW
Misaki Y StockhamRussiaIvan Magalhaes NEGOTIATION
Darci K GauchoSpainStephen Shaw NEW
Deepesh T AmigonJapanOnyama Limba RENEWAL
Darci B NestleFranceIvan Magalhaes QUALIFIED
James T KolmetzCanadaStephen Shaw UNQUALIFIED
Leon A DoeFranceAsiya Javayant NEW
Juan Z StockhamSpainIvan Magalhaes RENEWAL
Ricardo Q IturbideJapanXuxue Feng RENEWAL
Clifford I GauchoBrazilIvan Magalhaes PROPOSAL
Claire I SlusarskiFranceXuxue Feng RENEWAL
Tony J OstroskySpainIvan Magalhaes UNQUALIFIED
Jones B CaudyArgentinaElwin Sharvill QUALIFIED
Smith D IturbideFranceIvan Magalhaes UNQUALIFIED
Silvio C BologniaJapanStephen Shaw QUALIFIED
Ivar S PaprockiGermanyAsiya Javayant NEGOTIATION
Emily N BriddickSpainOnyama Limba UNQUALIFIED
Nicolas B NickaJapanXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Costa L VenereSpainXuxue Feng NEW
Mujtaba K RulapaughUnited KingdomAsiya Javayant PROPOSAL
Ricardo K ButtArgentinaAmy Elsner RENEWAL
Silvio M ChuiBrazilOnyama Limba UNQUALIFIED
Mayumi A KolmetzGermanyAmy Elsner QUALIFIED
Murillo T GlickArgentinaBernardo Dominic QUALIFIED
Julie B BriddickSpainAsiya Javayant PROPOSAL
Alejandro A MarrierItalyBernardo Dominic NEGOTIATION
Smith B AmigonItalyAmy Elsner NEW
Smith X FlosiUnited KingdomXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie U VocelkaFrance2026-04-03Truhlar And Truhlar Attys NEGOTIATION92Anna Fali
1001Jennifer K DoeCanada2026-04-20Rangoni Of Florence NEGOTIATION37Asiya Javayant
1002Wickens F InouyeAustralia2026-04-12Buckley Miller Wright UNQUALIFIED87Xuxue Feng
1003Maisha O PerinFrance2026-04-02Rousseaux, Michael Esq NEW58Ivan Magalhaes
1004Silvio V ShinkoAustralia2026-04-12Rousseaux, Michael Esq PROPOSAL19Elwin Sharvill
1005Deepesh G ShinkoSpain2026-04-16Truhlar And Truhlar Attys NEGOTIATION30Asiya Javayant
1006Maria O StensethBrazil2026-04-12Truhlar And Truhlar Attys UNQUALIFIED97Ioni Bowcher
1007Jones W GarufiAustralia2026-04-06Feiner Bros NEW53Ivan Magalhaes
1008Morrow I BologniaGermany2026-04-21Rousseaux, Michael Esq PROPOSAL19Asiya Javayant
1009Salvatore U RulapaughUnited Kingdom2026-04-18Feltz Printing Service QUALIFIED44Elwin Sharvill
1010Sinclair L GillianRussia2026-04-25Buckley Miller Wright UNQUALIFIED47Onyama Limba
1011Sinclair Y TollnerItaly2026-04-17Feiner Bros NEGOTIATION27Stephen Shaw
1012Juan Y StensethAustralia2026-04-18Benton, John B Jr QUALIFIED23Asiya Javayant
1013Alejandro O RulapaughCanada2026-04-07Rousseaux, Michael Esq NEW97Amy Elsner
1014Maria Q AlbaresCanada2026-04-05Feiner Bros UNQUALIFIED57Xuxue Feng
1015Alejandro P CaldareraUnited Kingdom2026-04-05Buckley Miller Wright QUALIFIED89Amy Elsner
1016Morrow T KuskoGermany2026-04-06Commercial Press NEGOTIATION3Asiya Javayant
1017Aruna A MaletArgentina2026-04-26Chanay, Jeffrey A Esq PROPOSAL25Ioni Bowcher
1018Munro D BologniaIndia2026-04-11Chemel, James L Cpa RENEWAL92Ivan Magalhaes
1019Adams D StockhamFrance2026-04-19Rousseaux, Michael Esq NEGOTIATION80Bernardo Dominic
1020Stacey M RutaSpain2026-04-25Truhlar And Truhlar Attys PROPOSAL19Bernardo Dominic
1021Izzy I BologniaRussia2026-04-12Feltz Printing Service RENEWAL9Asiya Javayant
1022Claire X WaycottIndia2026-04-15Chanay, Jeffrey A Esq RENEWAL36Xuxue Feng
1023Aruna N FollerAustralia2026-04-19Chanay, Jeffrey A Esq QUALIFIED84Onyama Limba
1024Mayumi X FerenczJapan2026-04-25Rousseaux, Michael Esq UNQUALIFIED69Asiya Javayant
1025Emily P FerenczIndia2026-04-24Printing Dimensions NEW98Asiya Javayant
1026Jennifer O VocelkaItaly2026-04-30Benton, John B Jr PROPOSAL82Ioni Bowcher
1027Johnson C SaylorsRussia2026-04-12Benton, John B Jr NEGOTIATION36Amy Elsner
1028Julie D GauchoRussia2026-04-10Dorl, James J Esq QUALIFIED85Amy Elsner
1029Johnson Q NestleRussia2026-04-29Chanay, Jeffrey A Esq QUALIFIED13Elwin Sharvill
1030Leja T SergiSpain2026-04-22Chemel, James L Cpa QUALIFIED80Asiya Javayant
1031Ashley Z WhobreyGermany2026-04-29Chemel, James L Cpa NEW17Stephen Shaw
1032Deepesh E SaylorsJapan2026-04-06Truhlar And Truhlar Attys NEGOTIATION30Amy Elsner
1033Arvin K GillianJapan2026-05-01Chanay, Jeffrey A Esq RENEWAL18Anna Fali
1034Johnson W BriddickCanada2026-04-23Buckley Miller Wright RENEWAL56Onyama Limba
1035Faith P CampainBrazil2026-04-29Chanay, Jeffrey A Esq RENEWAL35Ioni Bowcher
1036Leja Z BowleyGermany2026-05-01Feiner Bros NEGOTIATION1Elwin Sharvill
1037Munro O WhobreyItaly2026-04-08King, Christopher A Esq PROPOSAL11Asiya Javayant
1038Alejandro I RutaIndia2026-04-08Printing Dimensions RENEWAL28Anna Fali
1039Leon R MacleadBrazil2026-04-27Commercial Press QUALIFIED71Amy Elsner
1040Jeanfrancois T BologniaCanada2026-04-29Chanay, Jeffrey A Esq QUALIFIED55Stephen Shaw
1041Chavez J WhobreyArgentina2026-04-20Commercial Press RENEWAL96Anna Fali
1042Leja L TollnerItaly2026-04-09Dorl, James J Esq QUALIFIED37Amy Elsner
1043Costa I PaprockiItaly2026-04-11Benton, John B Jr QUALIFIED59Ivan Magalhaes
1044Izzy R KolmetzJapan2026-04-22Rousseaux, Michael Esq NEGOTIATION71Xuxue Feng
1045Stacey F ShinkoRussia2026-04-24Truhlar And Truhlar Attys UNQUALIFIED13Asiya Javayant
1046Murillo L GauchoJapan2026-05-01Chemel, James L Cpa RENEWAL46Stephen Shaw
1047Johnson V GlickArgentina2026-04-18Benton, John B Jr QUALIFIED28Onyama Limba
1048Mujtaba N NickaArgentina2026-04-23Benton, John B Jr NEGOTIATION16Elwin Sharvill
1049Kaitlin I SchemmerJapan2026-04-16Buckley Miller Wright UNQUALIFIED43Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Ricardo I RutaIndiaStephen Shaw UNQUALIFIED
Jefferson H TollnerIndiaAmy Elsner PROPOSAL
Maisha J MaletRussiaAnna Fali UNQUALIFIED
David J StensethSpainIoni Bowcher NEW
Aruna W KolmetzBrazilAnna Fali NEGOTIATION
Izzy F SchemmerGermanyStephen Shaw UNQUALIFIED
Ashley B NestleJapanElwin Sharvill NEW
Jeanfrancois H PaprockiIndiaOnyama Limba NEW
Faith F GillianSpainElwin Sharvill PROPOSAL
Ashley Q CaldareraJapanXuxue Feng RENEWAL
James S NestleGermanyBernardo Dominic QUALIFIED
Izzy Y CampainSpainAnna Fali NEW
Claire B NestleItalyAsiya Javayant QUALIFIED
Mayumi X TollnerAustraliaAsiya Javayant UNQUALIFIED
Cody J WaycottCanadaAmy Elsner NEW
Ashley C BriddickRussiaAsiya Javayant PROPOSAL
Claire E DoeSpainElwin Sharvill NEGOTIATION
Johnson M PoquetteArgentinaIvan Magalhaes QUALIFIED
Kaitlin P SergiUnited KingdomOnyama Limba UNQUALIFIED
Octavia Y RutaGermanyBernardo Dominic UNQUALIFIED
Wickens C AmigonGermanyStephen Shaw NEW
Ivar L ShinkoBrazilAnna Fali PROPOSAL
Kaitlin G MacleadCanadaIvan Magalhaes PROPOSAL
Ashley V TollnerCanadaOnyama Limba QUALIFIED
Munro Y WieserFranceElwin Sharvill QUALIFIED
Greenwood W RimSpainAsiya Javayant NEW
Ashley X FollerUnited KingdomAnna Fali PROPOSAL
Octavia U DoeCanadaBernardo Dominic PROPOSAL
James Z InouyeAustraliaAnna Fali NEGOTIATION
Maisha T GarufiIndiaBernardo Dominic NEW
Mayumi C VenereSpainBernardo Dominic PROPOSAL
James S OstroskyItalyXuxue Feng NEGOTIATION
Silvio E MorascaCanadaAnna Fali QUALIFIED
Alejandro G PoquetteBrazilAnna Fali RENEWAL
Adams C VenereRussiaIoni Bowcher RENEWAL
Silvio C CaudyAustraliaIoni Bowcher NEW
James W CaldareraAustraliaIvan Magalhaes NEW
Izzy L PerinCanadaAmy Elsner NEGOTIATION
Ivar X GlickBrazilStephen Shaw NEW
Chavez N GarufiUnited KingdomBernardo Dominic QUALIFIED
Jennifer C MorascaUnited KingdomAmy Elsner NEW
Cody P FollerUnited KingdomOnyama Limba QUALIFIED
Johnson M ChuiUnited KingdomAmy Elsner NEGOTIATION
Emily W FigeroaUnited KingdomStephen Shaw QUALIFIED
Maria K BologniaArgentinaIvan Magalhaes UNQUALIFIED
Jones T AmigonArgentinaIoni Bowcher UNQUALIFIED
Deepesh M CaudyFranceStephen Shaw PROPOSAL
Rodrigues C RulapaughJapanIvan Magalhaes RENEWAL
Smith K CaldareraJapanElwin Sharvill RENEWAL
Aika J WaycottRussiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Costa V Marrier
Clifford G Doe
Ivar J Flosi
Maria Z Venere
Kaitlin B Amigon
Juan A Sergi
Stacey Z Gillian
Wickens Q Sergi
Costa A Dilliard
Ivar L Gaucho
Tony N Butt
Jones W Butt
Smith Z Campain
Octavia M Tollner
Antonio P Caldarera
Jefferson Z Dilliard
Faith I Nicka
Salvatore E Albares
David S Ostrosky
Darci J Inouye
Morrow S Bolognia
Mujtaba X Amigon
Alejandro M Iturbide
Costa S Doe
Emily I Stenseth
Cody U Caudy
Ivar J Shinko
Tony J Glick
Octavia Y Bowley
Jones Q Tollner
Kadeem M Doe
Francesco C Maclead
Jones U Royster
Rodrigues X Oldroyd
Antonio X Morasca
Jefferson C Shinko
Greenwood R Schemmer
Jefferson T Whobrey
Jefferson T Perin
Jefferson S Caudy
Rodrigues S Malet
Sinclair W Briddick
Stacey D Perin
Kaitlin N Paprocki
Cody E Doe
Deepesh K Campain
Smith F Waycott
Sinclair M Saylors
Isabel B Bolognia
David O Bowley
IdCountryDate
1000Russia2026-04-19
1001United Kingdom2026-04-30
1002Germany2026-04-24
1003Japan2026-04-07
1004France2026-04-28
1005Germany2026-04-17
1006Argentina2026-04-09
1007Australia2026-04-30
1008Japan2026-04-23
1009Spain2026-04-03
1010Canada2026-04-18
1011Argentina2026-04-26
1012Spain2026-04-30
1013Australia2026-04-03
1014Brazil2026-04-06
1015United Kingdom2026-04-06
1016United Kingdom2026-04-10
1017Italy2026-04-12
1018Canada2026-04-15
1019Russia2026-04-24
1020Australia2026-04-15
1021France2026-04-23
1022Spain2026-04-13
1023India2026-04-22
1024Japan2026-04-27
1025Germany2026-04-27
1026United Kingdom2026-04-21
1027Argentina2026-04-26
1028Australia2026-04-29
1029Canada2026-04-26
1030Spain2026-04-03
1031India2026-04-17
1032Argentina2026-04-09
1033Canada2026-04-08
1034Australia2026-04-20
1035Spain2026-04-07
1036Australia2026-04-02
1037Germany2026-04-07
1038Australia2026-04-21
1039United Kingdom2026-04-29
1040United Kingdom2026-04-28
1041Spain2026-05-01
1042Argentina2026-04-14
1043Brazil2026-04-26
1044Japan2026-04-24
1045Canada2026-04-15
1046Australia2026-04-30
1047Canada2026-04-28
1048United Kingdom2026-04-27
1049United Kingdom2026-04-11

On-Demand Data

NameIdCountryDate
Emily T Sergi1000United Kingdom2026-04-10
Smith A Albares1001Italy2026-04-20
Leon G Marrier1002Brazil2026-04-27
Julie L Caudy1003United Kingdom2026-04-25
Izzy D Ruta1004Brazil2026-04-10
Silvio K Waycott1005Germany2026-04-25
David F Saylors1006Canada2026-04-07
Octavia B Stenseth1007Germany2026-04-11
Antonio W Glick1008Japan2026-04-25
Cody P Gillian1009Canada2026-04-12
Aditya O Campain1010Italy2026-04-11
Silvio D Gillian1011Spain2026-04-13
Ricardo Q Kolmetz1012Argentina2026-04-05
Munro S Stockham1013Spain2026-04-15
Sinclair N Rim1014United Kingdom2026-04-24
David E Venere1015Brazil2026-04-26
Jones D Stockham1016Russia2026-04-24
Rodrigues I Foller1017Spain2026-04-08
Aruna R Inouye1018Germany2026-04-02
Izzy T Amigon1019Russia2026-04-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones Q RoysterRussiaIvan Magalhaes UNQUALIFIED
Wickens Z MaletAustraliaIoni Bowcher NEGOTIATION
Clifford K GarufiUnited KingdomIoni Bowcher UNQUALIFIED
Rodrigues H NestleBrazilStephen Shaw RENEWAL
Cody F MarrierCanadaAmy Elsner RENEWAL
Costa Z ShinkoFranceXuxue Feng RENEWAL
Greenwood H GillianArgentinaAsiya Javayant QUALIFIED
Jeanfrancois C MaletSpainStephen Shaw UNQUALIFIED
Sinclair P BologniaAustraliaIvan Magalhaes QUALIFIED
Maisha K KolmetzUnited KingdomAmy Elsner UNQUALIFIED
Darci D PerinIndiaStephen Shaw QUALIFIED
Salvatore N SergiJapanStephen Shaw NEW
Costa W FlosiFranceStephen Shaw UNQUALIFIED
Deepesh E IturbideAustraliaOnyama Limba NEGOTIATION
Deepesh M NestleCanadaStephen Shaw RENEWAL
Smith Y DoeIndiaIoni Bowcher PROPOSAL
Stacey K GlickArgentinaElwin Sharvill PROPOSAL
Munro H RutaGermanyStephen Shaw RENEWAL
Darci W RoysterAustraliaIvan Magalhaes NEW
Silvio N MacleadRussiaAnna Fali NEW
Maisha S SlusarskiGermanyIvan Magalhaes UNQUALIFIED
James R WhobreyCanadaBernardo Dominic PROPOSAL
Antonio Q BowleyFranceAmy Elsner RENEWAL
Jones L GauchoGermanyOnyama Limba NEW
Murillo R ChuiIndiaAmy Elsner NEW
Aika V PaprockiUnited KingdomIvan Magalhaes NEW
Francesco B VenereAustraliaIvan Magalhaes NEW
Munro J VocelkaGermanyBernardo Dominic UNQUALIFIED
David H NestleItalyIvan Magalhaes NEGOTIATION
Rodrigues T RutaSpainAnna Fali NEW
David A RoysterArgentinaElwin Sharvill RENEWAL
James B MaletAustraliaIoni Bowcher QUALIFIED
Smith P GlickGermanyAsiya Javayant QUALIFIED
Ricardo X AmigonRussiaIoni Bowcher PROPOSAL
Misaki B NickaAustraliaAnna Fali QUALIFIED
Antonio D SlusarskiFranceBernardo Dominic NEGOTIATION
Smith Z NestleBrazilXuxue Feng UNQUALIFIED
Emily C SaylorsIndiaElwin Sharvill RENEWAL
Stacey D TollnerFranceIoni Bowcher PROPOSAL
Leja G NestleUnited KingdomStephen Shaw 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.