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
Rodrigues X VocelkaAustraliaAsiya Javayant QUALIFIED
James W BologniaItalyAnna Fali NEGOTIATION
Jennifer N RoysterJapanStephen Shaw UNQUALIFIED
Emily I MaletRussiaXuxue Feng QUALIFIED
Maisha T GillianArgentinaIoni Bowcher UNQUALIFIED
Darci D IturbideBrazilBernardo Dominic RENEWAL
Francesco D FerenczFranceAsiya Javayant QUALIFIED
Murillo T WieserFranceXuxue Feng PROPOSAL
Adams E FigeroaSpainXuxue Feng NEW
Kadeem F CaudyUnited KingdomOnyama Limba UNQUALIFIED
Aruna F NestleRussiaBernardo Dominic NEW
Leon D SlusarskiItalyAnna Fali UNQUALIFIED
David J InouyeGermanyIvan Magalhaes PROPOSAL
Arvin D OldroydRussiaElwin Sharvill PROPOSAL
Leja H AmigonBrazilBernardo Dominic PROPOSAL
Claire N TollnerSpainAmy Elsner RENEWAL
Izzy L DoeItalyBernardo Dominic UNQUALIFIED
Octavia Y TollnerGermanyIoni Bowcher RENEWAL
Adams M GauchoUnited KingdomAsiya Javayant UNQUALIFIED
Sinclair L VenereFranceOnyama Limba PROPOSAL
Jones T RoysterRussiaXuxue Feng RENEWAL
Arvin F KuskoUnited KingdomElwin Sharvill RENEWAL
Faith I GillianIndiaOnyama Limba NEGOTIATION
Jones Y BologniaBrazilAsiya Javayant PROPOSAL
Emily G OldroydCanadaAnna Fali PROPOSAL
Isabel D VocelkaSpainXuxue Feng PROPOSAL
Arvin O NestleBrazilIoni Bowcher NEGOTIATION
Faith I SergiArgentinaAmy Elsner NEW
Munro K GillianFranceStephen Shaw NEW
Jones Y GauchoAustraliaIvan Magalhaes NEGOTIATION
Faith E MaletBrazilOnyama Limba RENEWAL
Faith E FollerJapanBernardo Dominic UNQUALIFIED
Kaitlin S WhobreyCanadaAsiya Javayant QUALIFIED
Alejandro B SergiSpainIvan Magalhaes PROPOSAL
Izzy B RulapaughFranceXuxue Feng UNQUALIFIED
Clifford G StockhamItalyXuxue Feng RENEWAL
Faith Z StockhamItalyAmy Elsner PROPOSAL
Francesco P SaylorsAustraliaStephen Shaw RENEWAL
Jennifer B MaletArgentinaAmy Elsner PROPOSAL
Salvatore N NickaGermanyElwin Sharvill PROPOSAL
Kaitlin W VenereAustraliaAnna Fali NEGOTIATION
Greenwood R SergiCanadaOnyama Limba NEW
Claire Q RoysterSpainStephen Shaw UNQUALIFIED
Leja P CaldareraJapanIvan Magalhaes NEGOTIATION
Leja V BowleyArgentinaElwin Sharvill PROPOSAL
Aruna Y FollerFranceAnna Fali QUALIFIED
Kadeem J VenereAustraliaIvan Magalhaes NEGOTIATION
Jennifer W WhobreyJapanAnna Fali NEGOTIATION
Mujtaba G OldroydJapanIoni Bowcher RENEWAL
Ashley F DilliardCanadaBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Arvin A KuskoUnited KingdomIoni Bowcher UNQUALIFIED
Smith M CaudySpainAmy Elsner NEGOTIATION
Greenwood G AmigonItalyElwin Sharvill UNQUALIFIED
Murillo O BowleyItalyAsiya Javayant UNQUALIFIED
Leon W StensethIndiaAmy Elsner NEGOTIATION
Octavia T WaycottIndiaElwin Sharvill QUALIFIED
Alejandro J RulapaughJapanAmy Elsner NEW
Ivar Y WaycottFranceStephen Shaw RENEWAL
Clifford O DarakjyItalyXuxue Feng PROPOSAL
Claire O VocelkaSpainAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja W TollnerCanada2026-04-29Rousseaux, Michael Esq RENEWAL40Ioni Bowcher
1001Julie Q SaylorsArgentina2026-04-12Rangoni Of Florence QUALIFIED3Asiya Javayant
1002Ricardo J MarrierAustralia2026-05-04Benton, John B Jr UNQUALIFIED13Onyama Limba
1003Isabel O AlbaresItaly2026-04-12Rangoni Of Florence NEGOTIATION31Stephen Shaw
1004Stacey J GlickFrance2026-04-26Rangoni Of Florence PROPOSAL93Asiya Javayant
1005Juan F SaylorsFrance2026-04-29Rangoni Of Florence PROPOSAL7Bernardo Dominic
1006Morrow V WaycottFrance2026-05-03Morlong Associates PROPOSAL77Anna Fali
1007Claire P ButtRussia2026-04-15Chemel, James L Cpa UNQUALIFIED73Bernardo Dominic
1008Chavez N CampainIndia2026-04-19Dorl, James J Esq NEGOTIATION4Stephen Shaw
1009Johnson T DoeGermany2026-05-04Chemel, James L Cpa QUALIFIED49Ivan Magalhaes
1010Aika V ButtSpain2026-04-23Printing Dimensions QUALIFIED3Ioni Bowcher
1011Ashley K DarakjyItaly2026-04-13Feltz Printing Service NEW63Onyama Limba
1012Leja V ChuiGermany2026-05-06Chapman, Ross E Esq PROPOSAL42Amy Elsner
1013Johnson P PoquetteFrance2026-04-27Feiner Bros UNQUALIFIED98Asiya Javayant
1014Antonio J NestleJapan2026-05-01Printing Dimensions NEGOTIATION3Bernardo Dominic
1015Arvin J WaycottJapan2026-04-25Feltz Printing Service NEGOTIATION30Asiya Javayant
1016Leja Z RimCanada2026-05-06Printing Dimensions RENEWAL0Ivan Magalhaes
1017Juan J WhobreyJapan2026-04-24Rousseaux, Michael Esq NEW68Onyama Limba
1018Aditya N ButtAustralia2026-04-30Commercial Press RENEWAL64Stephen Shaw
1019Julie U PaprockiBrazil2026-04-25Chemel, James L Cpa QUALIFIED79Ioni Bowcher
1020Deepesh H TollnerSpain2026-04-27Morlong Associates PROPOSAL9Bernardo Dominic
1021Chavez D SaylorsBrazil2026-04-19Feltz Printing Service UNQUALIFIED68Onyama Limba
1022Munro G VenereRussia2026-04-30Benton, John B Jr NEW41Bernardo Dominic
1023Ricardo B RoysterGermany2026-04-20Chemel, James L Cpa NEW30Onyama Limba
1024Jones S CaudyRussia2026-04-20King, Christopher A Esq NEGOTIATION55Asiya Javayant
1025Juan N MarrierBrazil2026-04-21King, Christopher A Esq NEGOTIATION24Xuxue Feng
1026Munro V KuskoGermany2026-05-07Benton, John B Jr PROPOSAL28Onyama Limba
1027David I MacleadSpain2026-04-23Printing Dimensions QUALIFIED47Asiya Javayant
1028Aika E FlosiAustralia2026-04-12Feltz Printing Service NEW91Ioni Bowcher
1029Adams P SchemmerRussia2026-04-16Feiner Bros RENEWAL72Ivan Magalhaes
1030Misaki O ShinkoUnited Kingdom2026-05-08Rousseaux, Michael Esq NEGOTIATION78Asiya Javayant
1031Munro N CampainRussia2026-05-07Chanay, Jeffrey A Esq QUALIFIED51Stephen Shaw
1032Kadeem L GillianIndia2026-05-04Feltz Printing Service NEW31Stephen Shaw
1033Johnson I VenereRussia2026-04-12Chapman, Ross E Esq UNQUALIFIED28Onyama Limba
1034Antonio W SchemmerGermany2026-04-19Buckley Miller Wright NEW18Ioni Bowcher
1035Ivar F PerinUnited Kingdom2026-04-19Buckley Miller Wright UNQUALIFIED91Stephen Shaw
1036Octavia W WaycottRussia2026-04-20Buckley Miller Wright NEW13Amy Elsner
1037Aika H ChuiRussia2026-04-18Feiner Bros NEGOTIATION99Amy Elsner
1038Kaitlin I NickaFrance2026-05-03Printing Dimensions QUALIFIED54Amy Elsner
1039Morrow M GarufiItaly2026-04-15Benton, John B Jr NEGOTIATION68Xuxue Feng
1040Kadeem R VocelkaAustralia2026-05-06Commercial Press NEGOTIATION49Elwin Sharvill
1041Darci M WhobreyUnited Kingdom2026-05-05Commercial Press QUALIFIED22Amy Elsner
1042Francesco T PaprockiSpain2026-04-20Feltz Printing Service QUALIFIED1Ivan Magalhaes
1043Adams Z GarufiArgentina2026-04-26Benton, John B Jr UNQUALIFIED24Bernardo Dominic
1044Morrow M ShinkoItaly2026-04-28Rousseaux, Michael Esq NEW8Elwin Sharvill
1045Emily X CaudyGermany2026-05-05Feltz Printing Service UNQUALIFIED87Onyama Limba
1046Ivar U CaudyRussia2026-05-03King, Christopher A Esq NEGOTIATION46Elwin Sharvill
1047Ivar V RulapaughGermany2026-04-18Dorl, James J Esq PROPOSAL89Elwin Sharvill
1048Johnson B RutaItaly2026-04-12Commercial Press QUALIFIED66Stephen Shaw
1049Munro U MorascaSpain2026-04-17Rousseaux, Michael Esq RENEWAL24Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Leon V SlusarskiGermanyStephen Shaw NEGOTIATION
Julie H MaletJapanBernardo Dominic QUALIFIED
Francesco B StensethCanadaElwin Sharvill RENEWAL
Aika Y RoysterArgentinaOnyama Limba PROPOSAL
Darci W FollerAustraliaBernardo Dominic NEGOTIATION
Salvatore W RimCanadaIvan Magalhaes NEGOTIATION
Deepesh Z MarrierJapanAnna Fali QUALIFIED
Julie J VenereRussiaStephen Shaw RENEWAL
Maria K GauchoUnited KingdomIoni Bowcher PROPOSAL
Isabel L GauchoCanadaAnna Fali QUALIFIED
Cody F SlusarskiUnited KingdomAnna Fali NEW
Ivar U RimCanadaIoni Bowcher QUALIFIED
Murillo B MaletBrazilAsiya Javayant UNQUALIFIED
Aruna H CaldareraGermanyXuxue Feng QUALIFIED
Morrow G BologniaSpainIvan Magalhaes PROPOSAL
Munro D RimBrazilAmy Elsner NEGOTIATION
Mujtaba S RulapaughRussiaElwin Sharvill PROPOSAL
Mujtaba S RutaItalyAsiya Javayant UNQUALIFIED
Tony R BologniaBrazilIoni Bowcher PROPOSAL
Ashley E StockhamJapanOnyama Limba NEW
Alejandro J AmigonItalyOnyama Limba QUALIFIED
Greenwood W WhobreyIndiaBernardo Dominic NEW
Ashley L WaycottItalyXuxue Feng QUALIFIED
Mujtaba Y VenereBrazilAmy Elsner NEGOTIATION
Jones I MaletArgentinaAmy Elsner UNQUALIFIED
Antonio R OldroydAustraliaAmy Elsner RENEWAL
Chavez X RimRussiaIvan Magalhaes QUALIFIED
Adams Z PoquetteJapanAnna Fali QUALIFIED
Clifford L SaylorsItalyAnna Fali PROPOSAL
Chavez R FlosiItalyIoni Bowcher NEGOTIATION
Jefferson Y IturbideArgentinaElwin Sharvill QUALIFIED
Francesco G WaycottUnited KingdomElwin Sharvill QUALIFIED
Misaki B OstroskyBrazilOnyama Limba NEGOTIATION
Darci U AmigonCanadaAmy Elsner NEGOTIATION
Munro I NestleSpainAmy Elsner RENEWAL
Arvin V ButtSpainIoni Bowcher RENEWAL
Jennifer J BriddickJapanAmy Elsner UNQUALIFIED
Morrow Y WhobreyFranceElwin Sharvill RENEWAL
Murillo H NickaArgentinaAnna Fali PROPOSAL
Sinclair I PerinGermanyAmy Elsner NEW
Smith V CampainItalyElwin Sharvill QUALIFIED
Rodrigues X WhobreyArgentinaStephen Shaw PROPOSAL
James V BologniaAustraliaAsiya Javayant NEW
David Q WieserJapanAnna Fali PROPOSAL
Rodrigues F BowleyRussiaAmy Elsner QUALIFIED
Misaki Z AlbaresRussiaAnna Fali QUALIFIED
Chavez G FlosiGermanyIvan Magalhaes NEW
Antonio G FollerAustraliaAnna Fali PROPOSAL
Clifford U MorascaCanadaStephen Shaw NEGOTIATION
Cody C WhobreyBrazilAnna Fali QUALIFIED
Frozen Columns
Name
Greenwood L Poquette
Julie L Iturbide
Tony F Oldroyd
Alejandro Q Ferencz
Jones G Amigon
Alejandro G Kusko
Ivar Q Ferencz
Greenwood U Shinko
Ricardo V Stockham
Ashley E Butt
Morrow J Darakjy
Deepesh K Albares
Ricardo G Gillian
Ricardo V Morasca
Wickens Z Stenseth
Clifford K Nicka
Octavia R Rim
Jones F Schemmer
Jennifer U Ruta
Cody C Perin
James Y Schemmer
Antonio B Ostrosky
Kaitlin C Kusko
Isabel T Vocelka
Octavia Z Doe
Kadeem G Ruta
Johnson Z Ruta
Maisha N Foller
Octavia F Marrier
Silvio K Morasca
Tony P Chui
Silvio H Marrier
Aditya U Malet
Mayumi V Wieser
Jennifer U Royster
Leja O Rulapaugh
Morrow Q Iturbide
Wickens V Ferencz
Deepesh B Dilliard
Octavia O Iturbide
Wickens N Sergi
Sinclair G Nicka
Octavia X Rim
Sinclair O Nicka
Antonio L Wieser
Aruna T Iturbide
Octavia D Doe
Alejandro X Venere
Murillo E Bolognia
Leja U Figeroa
IdCountryDate
1000Brazil2026-05-08
1001Australia2026-04-20
1002Russia2026-04-29
1003Russia2026-04-21
1004Japan2026-05-02
1005Canada2026-04-24
1006Canada2026-04-23
1007Argentina2026-04-27
1008Italy2026-04-20
1009India2026-04-15
1010France2026-04-14
1011France2026-04-18
1012Canada2026-04-30
1013France2026-04-29
1014Japan2026-04-18
1015Italy2026-04-27
1016Argentina2026-05-04
1017Germany2026-05-04
1018Spain2026-05-08
1019Brazil2026-05-07
1020United Kingdom2026-04-20
1021Russia2026-04-18
1022Italy2026-05-01
1023Spain2026-04-23
1024Argentina2026-05-01
1025Germany2026-04-24
1026France2026-04-15
1027United Kingdom2026-05-01
1028Japan2026-05-06
1029Italy2026-05-06
1030Argentina2026-04-28
1031France2026-04-16
1032India2026-05-03
1033Russia2026-04-14
1034United Kingdom2026-04-17
1035India2026-05-05
1036Japan2026-05-04
1037Germany2026-05-05
1038Spain2026-05-07
1039Japan2026-05-09
1040Australia2026-04-16
1041Argentina2026-04-19
1042Argentina2026-04-25
1043Italy2026-05-10
1044Russia2026-05-07
1045Australia2026-05-09
1046Argentina2026-04-22
1047Brazil2026-04-12
1048Russia2026-04-29
1049Spain2026-05-07

On-Demand Data

NameIdCountryDate
Octavia S Doe1000United Kingdom2026-04-18
Emily J Rim1001Japan2026-05-07
Ricardo E Ostrosky1002Brazil2026-04-27
Leon K Malet1003Italy2026-04-19
Salvatore D Foller1004Germany2026-04-15
Chavez C Schemmer1005United Kingdom2026-04-15
Antonio T Gaucho1006France2026-04-20
Leon B Waycott1007France2026-05-01
Octavia V Kolmetz1008United Kingdom2026-04-13
James H Poquette1009Russia2026-04-29
Maisha Z Rulapaugh1010India2026-04-11
Kaitlin K Albares1011Italy2026-04-29
Munro T Foller1012Russia2026-04-29
Tony U Vocelka1013Italy2026-04-16
Misaki O Rulapaugh1014Canada2026-04-11
Tony K Rim1015Italy2026-05-08
Maria M Saylors1016Australia2026-04-12
Wickens T Vocelka1017Japan2026-04-21
David U Rim1018United Kingdom2026-05-03
Aruna E Venere1019Argentina2026-05-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily Z NestleArgentinaIoni Bowcher NEW
Deepesh A DarakjyIndiaElwin Sharvill UNQUALIFIED
Alejandro K SaylorsIndiaBernardo Dominic NEGOTIATION
Sinclair G OstroskyArgentinaIvan Magalhaes PROPOSAL
Costa D KolmetzJapanAsiya Javayant RENEWAL
Mujtaba H MaletRussiaAnna Fali UNQUALIFIED
Mayumi O NestleCanadaStephen Shaw UNQUALIFIED
Clifford G WaycottCanadaStephen Shaw RENEWAL
Nicolas R RulapaughIndiaBernardo Dominic PROPOSAL
Aditya L NickaUnited KingdomXuxue Feng QUALIFIED
Adams D NestleRussiaElwin Sharvill NEGOTIATION
Nicolas R RulapaughBrazilIvan Magalhaes NEGOTIATION
Julie L GillianRussiaElwin Sharvill PROPOSAL
Rodrigues N NickaSpainAsiya Javayant NEGOTIATION
Ivar V VenereFranceIoni Bowcher PROPOSAL
Arvin Y AlbaresFranceIoni Bowcher NEW
Isabel X MorascaAustraliaIoni Bowcher UNQUALIFIED
Kaitlin P MaletRussiaOnyama Limba UNQUALIFIED
Sinclair Z MorascaGermanyIvan Magalhaes NEGOTIATION
Ashley U DoeUnited KingdomIvan Magalhaes QUALIFIED
Aruna I SaylorsBrazilAsiya Javayant NEGOTIATION
Chavez B StensethJapanAsiya Javayant NEGOTIATION
Aditya F CaudyJapanIoni Bowcher NEGOTIATION
Leon O DoeCanadaOnyama Limba NEGOTIATION
Izzy Y FollerSpainAsiya Javayant NEGOTIATION
Kadeem V SaylorsAustraliaIoni Bowcher NEW
Maria Z GarufiBrazilXuxue Feng PROPOSAL
Cody I GillianItalyAsiya Javayant UNQUALIFIED
Jennifer A StensethJapanIoni Bowcher RENEWAL
Nicolas A RimArgentinaBernardo Dominic NEW
Tony H WhobreyUnited KingdomElwin Sharvill RENEWAL
Silvio P DarakjyFranceIoni Bowcher NEW
Darci R FlosiFranceBernardo Dominic QUALIFIED
Aditya O FollerFranceOnyama Limba QUALIFIED
Kadeem H BowleyRussiaAsiya Javayant NEW
Wickens G GlickSpainAnna Fali NEW
Izzy Q GauchoUnited KingdomBernardo Dominic NEW
Antonio W KolmetzItalyXuxue Feng NEGOTIATION
Maisha K FerenczSpainIoni Bowcher UNQUALIFIED
Wickens G RimSpainBernardo Dominic 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.