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
Francesco B CaldareraArgentinaIoni Bowcher NEGOTIATION
Francesco D ChuiItalyBernardo Dominic UNQUALIFIED
Silvio F MacleadRussiaBernardo Dominic UNQUALIFIED
Ricardo Q GarufiAustraliaBernardo Dominic PROPOSAL
Deepesh U GillianFranceIoni Bowcher NEW
Jennifer P GlickRussiaElwin Sharvill RENEWAL
Isabel E AlbaresRussiaAnna Fali RENEWAL
Octavia Y BowleyGermanyAnna Fali PROPOSAL
Aruna C StockhamBrazilOnyama Limba UNQUALIFIED
Aika X TollnerUnited KingdomElwin Sharvill NEW
Jefferson A PerinBrazilAnna Fali QUALIFIED
Chavez S ButtCanadaIvan Magalhaes RENEWAL
Jeanfrancois T KuskoCanadaAmy Elsner UNQUALIFIED
Morrow V SlusarskiGermanyAsiya Javayant QUALIFIED
Cody R StensethUnited KingdomBernardo Dominic QUALIFIED
Claire X KuskoSpainAmy Elsner RENEWAL
Isabel N SchemmerArgentinaAnna Fali UNQUALIFIED
Johnson T ChuiJapanAsiya Javayant RENEWAL
Sinclair X ChuiFranceBernardo Dominic NEGOTIATION
Isabel D RutaIndiaElwin Sharvill QUALIFIED
Tony Q KuskoArgentinaBernardo Dominic QUALIFIED
Emily R AlbaresIndiaAnna Fali RENEWAL
Francesco T RoysterItalyIoni Bowcher NEGOTIATION
Murillo A BowleyBrazilAsiya Javayant RENEWAL
Jeanfrancois E GillianFranceElwin Sharvill RENEWAL
Mujtaba Q KolmetzBrazilIoni Bowcher RENEWAL
Chavez P GlickArgentinaAsiya Javayant PROPOSAL
Rodrigues Z RulapaughJapanBernardo Dominic NEGOTIATION
Misaki K InouyeBrazilAmy Elsner RENEWAL
Tony S NestleUnited KingdomIoni Bowcher QUALIFIED
Munro P AmigonUnited KingdomAmy Elsner QUALIFIED
Antonio N VocelkaArgentinaOnyama Limba UNQUALIFIED
Ricardo W KolmetzFranceStephen Shaw NEW
James X WieserRussiaXuxue Feng NEGOTIATION
Costa W DilliardJapanElwin Sharvill QUALIFIED
Izzy Y AlbaresUnited KingdomAnna Fali PROPOSAL
Johnson Z WhobreySpainAmy Elsner UNQUALIFIED
Morrow C PaprockiIndiaAmy Elsner UNQUALIFIED
Mujtaba C WaycottGermanyIoni Bowcher RENEWAL
Jennifer D WieserGermanyIvan Magalhaes RENEWAL
Greenwood W VenereSpainAmy Elsner RENEWAL
Salvatore O ChuiJapanAsiya Javayant PROPOSAL
Aditya Y BowleyArgentinaOnyama Limba PROPOSAL
Emily B AlbaresJapanStephen Shaw PROPOSAL
Leon I StockhamRussiaStephen Shaw NEGOTIATION
Emily Z StensethBrazilBernardo Dominic NEW
Emily W NickaJapanAsiya Javayant PROPOSAL
Smith P OldroydUnited KingdomOnyama Limba QUALIFIED
Jones L SergiCanadaXuxue Feng UNQUALIFIED
Aditya M GillianSpainStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Nicolas H StensethItalyIoni Bowcher NEGOTIATION
Julie J AlbaresRussiaOnyama Limba PROPOSAL
Juan V GarufiUnited KingdomIvan Magalhaes UNQUALIFIED
Darci R OstroskyFranceBernardo Dominic NEW
Francesco X DoeBrazilXuxue Feng PROPOSAL
Nicolas A GauchoCanadaAsiya Javayant RENEWAL
Deepesh B ChuiFranceIvan Magalhaes NEGOTIATION
Alejandro C NestleFranceOnyama Limba QUALIFIED
Nicolas J FigeroaJapanAsiya Javayant RENEWAL
Mayumi K AmigonUnited KingdomAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith V SlusarskiRussia2026-06-14Chapman, Ross E Esq PROPOSAL10Amy Elsner
1001Tony S SlusarskiRussia2026-05-28Feiner Bros QUALIFIED0Onyama Limba
1002Francesco F RoysterGermany2026-06-13King, Christopher A Esq NEW36Ioni Bowcher
1003Murillo S WieserRussia2026-06-17Chapman, Ross E Esq NEW99Asiya Javayant
1004Chavez I DarakjyAustralia2026-06-12Chemel, James L Cpa QUALIFIED2Stephen Shaw
1005Juan Z MarrierIndia2026-06-05Morlong Associates QUALIFIED90Asiya Javayant
1006Rodrigues L WhobreyUnited Kingdom2026-05-26Chanay, Jeffrey A Esq QUALIFIED94Ivan Magalhaes
1007Sinclair C MaletAustralia2026-06-10Chemel, James L Cpa NEW89Asiya Javayant
1008Emily H ButtIndia2026-06-05Chanay, Jeffrey A Esq QUALIFIED26Amy Elsner
1009Darci L VenereBrazil2026-06-12Chemel, James L Cpa UNQUALIFIED30Stephen Shaw
1010Darci D FerenczIndia2026-06-11Chanay, Jeffrey A Esq NEW95Asiya Javayant
1011Johnson S FigeroaRussia2026-05-24Benton, John B Jr NEW48Asiya Javayant
1012Jeanfrancois Y MaletJapan2026-05-23Rangoni Of Florence RENEWAL51Asiya Javayant
1013Isabel W AlbaresIndia2026-05-28Rousseaux, Michael Esq QUALIFIED29Ioni Bowcher
1014Faith D IturbideArgentina2026-06-02Benton, John B Jr NEW56Anna Fali
1015Wickens H IturbideRussia2026-06-14Commercial Press QUALIFIED44Onyama Limba
1016Murillo B CaldareraFrance2026-06-07Feiner Bros NEGOTIATION84Onyama Limba
1017Cody V RoysterUnited Kingdom2026-06-13Rousseaux, Michael Esq PROPOSAL10Onyama Limba
1018Adams W WieserJapan2026-06-11Truhlar And Truhlar Attys NEW82Amy Elsner
1019Izzy G RoysterJapan2026-06-16Rousseaux, Michael Esq UNQUALIFIED97Bernardo Dominic
1020Nicolas H FollerBrazil2026-05-22Truhlar And Truhlar Attys PROPOSAL26Amy Elsner
1021Clifford H VocelkaItaly2026-06-16Dorl, James J Esq PROPOSAL29Stephen Shaw
1022Misaki N StockhamJapan2026-05-28Commercial Press NEGOTIATION85Elwin Sharvill
1023James M DarakjyFrance2026-06-01Commercial Press NEGOTIATION14Elwin Sharvill
1024Wickens F MorascaJapan2026-06-17Rangoni Of Florence PROPOSAL69Stephen Shaw
1025Antonio C RimItaly2026-06-08Feiner Bros QUALIFIED76Xuxue Feng
1026Isabel O OstroskyJapan2026-06-16Commercial Press RENEWAL81Anna Fali
1027Isabel C InouyeArgentina2026-06-14Rangoni Of Florence NEW99Anna Fali
1028Cody Y DoeArgentina2026-06-01Benton, John B Jr UNQUALIFIED9Elwin Sharvill
1029Aika R GarufiJapan2026-06-05King, Christopher A Esq QUALIFIED50Anna Fali
1030Arvin I SchemmerUnited Kingdom2026-05-30Rousseaux, Michael Esq UNQUALIFIED25Stephen Shaw
1031Johnson B MaletFrance2026-05-26Benton, John B Jr NEGOTIATION74Xuxue Feng
1032Mayumi Z RulapaughArgentina2026-05-25Chanay, Jeffrey A Esq QUALIFIED33Ivan Magalhaes
1033Clifford Y WhobreyRussia2026-06-09Chanay, Jeffrey A Esq QUALIFIED38Amy Elsner
1034Aditya Y AmigonFrance2026-06-12Commercial Press RENEWAL86Amy Elsner
1035Misaki N DilliardUnited Kingdom2026-05-28Commercial Press UNQUALIFIED54Amy Elsner
1036Jones L DoeJapan2026-06-03Feiner Bros RENEWAL53Amy Elsner
1037Johnson Y PerinBrazil2026-06-19Dorl, James J Esq PROPOSAL34Asiya Javayant
1038Greenwood M RoysterRussia2026-06-06Morlong Associates NEGOTIATION67Stephen Shaw
1039Misaki L InouyeIndia2026-06-12Printing Dimensions NEGOTIATION52Stephen Shaw
1040Juan B CampainItaly2026-06-18King, Christopher A Esq NEW71Ioni Bowcher
1041Juan G RoysterArgentina2026-06-14Commercial Press RENEWAL34Amy Elsner
1042Arvin Y SergiFrance2026-06-03Benton, John B Jr PROPOSAL43Xuxue Feng
1043Rodrigues M GarufiArgentina2026-06-09Feltz Printing Service NEGOTIATION57Stephen Shaw
1044Aika Y MorascaBrazil2026-06-18Buckley Miller Wright NEW16Stephen Shaw
1045Isabel U FigeroaIndia2026-06-09Chemel, James L Cpa NEW39Elwin Sharvill
1046Aruna K PerinSpain2026-06-16Rousseaux, Michael Esq QUALIFIED1Ivan Magalhaes
1047Arvin X PaprockiFrance2026-05-24Feltz Printing Service NEW73Anna Fali
1048Kaitlin M RutaGermany2026-06-11Morlong Associates NEW97Ioni Bowcher
1049Deepesh P BowleyJapan2026-06-14Printing Dimensions QUALIFIED23Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Antonio Y OstroskyAustraliaXuxue Feng RENEWAL
Aika L GarufiBrazilElwin Sharvill NEGOTIATION
Munro C AmigonArgentinaElwin Sharvill NEGOTIATION
Mayumi H GarufiIndiaElwin Sharvill RENEWAL
Jefferson J GarufiUnited KingdomStephen Shaw NEGOTIATION
Kaitlin O NestleUnited KingdomElwin Sharvill PROPOSAL
Misaki G RulapaughAustraliaIoni Bowcher RENEWAL
Claire R NickaIndiaOnyama Limba NEGOTIATION
Jeanfrancois A SchemmerRussiaOnyama Limba PROPOSAL
Aika I RutaGermanyIvan Magalhaes RENEWAL
Stacey A GauchoUnited KingdomBernardo Dominic QUALIFIED
Chavez G ChuiUnited KingdomOnyama Limba NEGOTIATION
Aditya Y OldroydSpainBernardo Dominic RENEWAL
Costa A WaycottBrazilStephen Shaw NEW
Mayumi K PaprockiBrazilStephen Shaw NEW
Leon M RulapaughGermanyOnyama Limba NEGOTIATION
Jefferson B ShinkoUnited KingdomStephen Shaw PROPOSAL
Isabel F KuskoJapanOnyama Limba UNQUALIFIED
Jones H OldroydIndiaElwin Sharvill RENEWAL
Jeanfrancois X StockhamItalyElwin Sharvill NEGOTIATION
Ricardo C RoysterItalyIoni Bowcher QUALIFIED
Claire G FollerIndiaAsiya Javayant PROPOSAL
Chavez Y NestleCanadaAnna Fali QUALIFIED
Ricardo N InouyeUnited KingdomAsiya Javayant NEW
Darci Y MaletUnited KingdomElwin Sharvill RENEWAL
Izzy R VenereAustraliaAmy Elsner RENEWAL
Morrow H CaudyGermanyElwin Sharvill QUALIFIED
Isabel N RulapaughFranceXuxue Feng RENEWAL
Murillo F StockhamUnited KingdomAmy Elsner NEGOTIATION
James M SlusarskiRussiaElwin Sharvill NEW
Deepesh P FlosiIndiaAnna Fali UNQUALIFIED
Costa H MarrierUnited KingdomOnyama Limba RENEWAL
Jones R VenereItalyXuxue Feng QUALIFIED
Aika W GarufiUnited KingdomStephen Shaw RENEWAL
Octavia O NickaBrazilIvan Magalhaes QUALIFIED
Juan Y PerinGermanyOnyama Limba NEW
Jeanfrancois C SaylorsRussiaBernardo Dominic NEW
Cody H NickaIndiaBernardo Dominic PROPOSAL
Darci S FollerFranceIvan Magalhaes RENEWAL
Faith R WieserAustraliaElwin Sharvill NEGOTIATION
Greenwood Q MacleadAustraliaBernardo Dominic QUALIFIED
Morrow D RulapaughIndiaOnyama Limba NEW
Morrow O MaletBrazilStephen Shaw PROPOSAL
Ivar N WieserBrazilStephen Shaw NEW
Jones I WhobreyBrazilStephen Shaw QUALIFIED
Johnson P FerenczRussiaBernardo Dominic QUALIFIED
James T PaprockiCanadaIvan Magalhaes RENEWAL
Aditya K IturbideSpainAnna Fali PROPOSAL
Aika V NestleUnited KingdomBernardo Dominic QUALIFIED
Juan W KuskoSpainXuxue Feng QUALIFIED
Frozen Columns
Name
Isabel P Bolognia
Chavez Z Malet
Deepesh M Garufi
Chavez S Briddick
Morrow S Maclead
Aruna M Doe
Faith C Stenseth
Kadeem X Rim
Sinclair V Morasca
Silvio O Iturbide
Maisha R Stockham
Jennifer I Briddick
Mayumi V Malet
Stacey S Slusarski
Cody M Perin
Tony E Perin
Ashley R Inouye
Leja A Schemmer
Francesco E Ferencz
Maria P Dilliard
Cody J Amigon
Salvatore O Bolognia
Darci O Briddick
Stacey R Caldarera
Antonio I Marrier
Sinclair O Whobrey
Murillo N Royster
Izzy V Figeroa
Cody W Doe
Adams Z Shinko
Francesco C Slusarski
Leon W Tollner
David R Wieser
Nicolas X Doe
Tony K Poquette
Juan X Caldarera
Faith Q Rim
Costa X Morasca
Jefferson Q Bolognia
Emily J Whobrey
Claire X Chui
Aditya U Figeroa
Mayumi Y Darakjy
Cody W Gaucho
Greenwood Q Stenseth
Jefferson K Stenseth
Francesco Y Waycott
Aditya R Stenseth
Greenwood R Tollner
Johnson M Albares
IdCountryDate
1000India2026-06-14
1001Canada2026-06-08
1002Argentina2026-05-27
1003India2026-05-30
1004Spain2026-06-03
1005Italy2026-06-07
1006Brazil2026-05-27
1007Germany2026-06-11
1008India2026-06-10
1009Spain2026-06-18
1010Russia2026-06-20
1011France2026-06-02
1012Japan2026-06-05
1013Germany2026-06-02
1014Canada2026-06-06
1015France2026-06-05
1016Australia2026-06-08
1017Brazil2026-05-24
1018France2026-06-17
1019Brazil2026-06-08
1020Germany2026-06-09
1021Russia2026-06-12
1022Brazil2026-06-13
1023Canada2026-06-20
1024Australia2026-06-19
1025Japan2026-06-06
1026Japan2026-05-22
1027India2026-06-16
1028Brazil2026-06-09
1029Spain2026-06-04
1030India2026-06-19
1031France2026-06-15
1032Germany2026-06-03
1033United Kingdom2026-05-25
1034Canada2026-06-08
1035Germany2026-06-05
1036Italy2026-05-28
1037France2026-06-09
1038Germany2026-06-04
1039Japan2026-06-07
1040Spain2026-06-06
1041India2026-06-19
1042Russia2026-06-05
1043Australia2026-05-26
1044India2026-05-30
1045Argentina2026-05-29
1046Italy2026-06-16
1047Canada2026-06-09
1048Brazil2026-05-23
1049Australia2026-06-06

On-Demand Data

NameIdCountryDate
Adams J Garufi1000Japan2026-06-05
James T Foller1001India2026-06-07
Chavez X Poquette1002United Kingdom2026-06-18
Darci F Saylors1003United Kingdom2026-06-10
Jennifer H Rulapaugh1004Argentina2026-06-03
Mujtaba Z Stockham1005Japan2026-06-04
Claire O Bowley1006Canada2026-05-31
Rodrigues N Nicka1007France2026-06-15
Kaitlin M Chui1008Japan2026-06-10
Izzy C Foller1009Spain2026-05-22
Murillo U Caudy1010Japan2026-05-26
David F Gaucho1011United Kingdom2026-05-23
Claire Z Foller1012France2026-06-06
Alejandro O Garufi1013India2026-06-11
Leon D Ruta1014United Kingdom2026-06-19
Sinclair K Whobrey1015Japan2026-06-04
Octavia Q Sergi1016Italy2026-06-09
Leon H Briddick1017Canada2026-05-26
Maisha U Butt1018United Kingdom2026-06-06
Deepesh Y Poquette1019Spain2026-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja T GlickJapanAsiya Javayant RENEWAL
Leon L RulapaughGermanyAsiya Javayant UNQUALIFIED
Deepesh O PerinJapanElwin Sharvill NEGOTIATION
James G InouyeItalyAnna Fali PROPOSAL
David T DilliardSpainIoni Bowcher PROPOSAL
Misaki T ChuiAustraliaStephen Shaw QUALIFIED
Chavez Y OstroskyBrazilElwin Sharvill NEW
Sinclair F KolmetzFranceAsiya Javayant NEGOTIATION
Leon D VenereGermanyAsiya Javayant RENEWAL
Aika H RulapaughArgentinaElwin Sharvill NEGOTIATION
Sinclair X NickaIndiaOnyama Limba PROPOSAL
Ricardo S GauchoGermanyStephen Shaw UNQUALIFIED
Wickens J SergiGermanyBernardo Dominic RENEWAL
Maisha J MorascaGermanyIvan Magalhaes NEGOTIATION
Morrow O FlosiArgentinaAmy Elsner RENEWAL
Maria O SlusarskiAustraliaStephen Shaw NEGOTIATION
Deepesh T SaylorsArgentinaAsiya Javayant RENEWAL
Leon H DarakjyBrazilElwin Sharvill NEGOTIATION
Julie Y RoysterItalyOnyama Limba NEW
Smith F RutaIndiaStephen Shaw UNQUALIFIED
Darci L PoquetteSpainAmy Elsner NEGOTIATION
Ivar H AmigonSpainOnyama Limba RENEWAL
Salvatore N PoquetteCanadaAmy Elsner QUALIFIED
Octavia P CaudySpainElwin Sharvill RENEWAL
Cody K FerenczCanadaStephen Shaw RENEWAL
James F NickaIndiaAmy Elsner UNQUALIFIED
Salvatore C KolmetzIndiaStephen Shaw PROPOSAL
Murillo X MaletSpainOnyama Limba QUALIFIED
Murillo V MaletUnited KingdomAnna Fali QUALIFIED
Jones X FerenczSpainXuxue Feng QUALIFIED
David A DilliardCanadaXuxue Feng NEW
Aika I PerinFranceOnyama Limba UNQUALIFIED
Alejandro B DarakjyRussiaAmy Elsner PROPOSAL
Claire N CaldareraJapanStephen Shaw NEGOTIATION
Nicolas P FerenczIndiaAsiya Javayant UNQUALIFIED
Jennifer P MaletBrazilAsiya Javayant RENEWAL
Ivar D FigeroaSpainIvan Magalhaes PROPOSAL
Leon F StensethIndiaElwin Sharvill QUALIFIED
Kadeem Y BologniaUnited KingdomAsiya Javayant UNQUALIFIED
Aditya D DoeItalyAnna Fali RENEWAL

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