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
Adams S RutaArgentinaIvan Magalhaes UNQUALIFIED
Alejandro C BologniaUnited KingdomIoni Bowcher NEW
Antonio C StockhamItalyAmy Elsner QUALIFIED
Chavez S RoysterAustraliaIoni Bowcher UNQUALIFIED
Jennifer T FigeroaJapanXuxue Feng QUALIFIED
Emily P SergiBrazilAsiya Javayant QUALIFIED
Silvio F FlosiItalyXuxue Feng QUALIFIED
Aditya K RimArgentinaOnyama Limba NEW
Leon V PerinItalyBernardo Dominic UNQUALIFIED
Murillo E TollnerRussiaXuxue Feng QUALIFIED
Kaitlin K PaprockiCanadaIoni Bowcher PROPOSAL
Aditya Y VocelkaJapanXuxue Feng NEW
Aruna C TollnerRussiaAmy Elsner UNQUALIFIED
Costa R CaldareraGermanyAnna Fali QUALIFIED
Leja X CampainCanadaStephen Shaw NEW
Mujtaba U NickaArgentinaAmy Elsner PROPOSAL
Jones W RimUnited KingdomOnyama Limba QUALIFIED
Nicolas L NickaAustraliaStephen Shaw NEW
Jefferson U RulapaughCanadaAmy Elsner UNQUALIFIED
David O MaletIndiaXuxue Feng NEGOTIATION
Kadeem I TollnerCanadaIvan Magalhaes NEGOTIATION
Aika L RimGermanyElwin Sharvill QUALIFIED
Costa O BowleyCanadaXuxue Feng UNQUALIFIED
Ricardo D ShinkoAustraliaBernardo Dominic QUALIFIED
Claire Z MarrierItalyOnyama Limba RENEWAL
Francesco A NestleRussiaAmy Elsner PROPOSAL
James Z RutaCanadaAmy Elsner RENEWAL
Maisha Y NickaAustraliaAmy Elsner UNQUALIFIED
Salvatore W MaletIndiaIvan Magalhaes UNQUALIFIED
Darci X NickaAustraliaXuxue Feng PROPOSAL
David Z PaprockiArgentinaOnyama Limba QUALIFIED
Jones B PerinCanadaXuxue Feng NEGOTIATION
Misaki Q MacleadBrazilAsiya Javayant PROPOSAL
Alejandro E AmigonRussiaAmy Elsner RENEWAL
Maisha O CaldareraSpainOnyama Limba NEW
Rodrigues C ButtJapanAnna Fali NEGOTIATION
David R DoeBrazilAsiya Javayant NEW
Darci R GillianBrazilAnna Fali RENEWAL
Antonio B VenereBrazilAsiya Javayant QUALIFIED
Ricardo A SergiAustraliaAmy Elsner QUALIFIED
Wickens Z OldroydRussiaXuxue Feng NEW
Claire Q RulapaughFranceIoni Bowcher QUALIFIED
Greenwood X BowleyArgentinaIvan Magalhaes UNQUALIFIED
Ivar V VocelkaJapanElwin Sharvill NEW
Alejandro H OstroskyGermanyAmy Elsner UNQUALIFIED
Ashley L FerenczIndiaAmy Elsner RENEWAL
Francesco O WaycottSpainAnna Fali PROPOSAL
Sinclair D WieserArgentinaOnyama Limba NEW
James S AmigonFranceAmy Elsner PROPOSAL
Smith T StensethGermanyAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood W AlbaresIndiaElwin Sharvill PROPOSAL
Nicolas Y DarakjyUnited KingdomAmy Elsner NEW
Octavia L GauchoJapanIvan Magalhaes UNQUALIFIED
Ivar Q DoeItalyIoni Bowcher RENEWAL
Octavia J NestleArgentinaAmy Elsner PROPOSAL
Aika U KuskoSpainElwin Sharvill QUALIFIED
Rodrigues U GlickAustraliaElwin Sharvill QUALIFIED
Morrow G OldroydBrazilAsiya Javayant PROPOSAL
Jefferson N OstroskyAustraliaXuxue Feng QUALIFIED
Costa A KolmetzIndiaIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire R TollnerGermany2026-03-20Rangoni Of Florence PROPOSAL75Anna Fali
1001Wickens S GarufiBrazil2026-03-31Chapman, Ross E Esq RENEWAL39Bernardo Dominic
1002Rodrigues M SergiUnited Kingdom2026-03-29Chanay, Jeffrey A Esq UNQUALIFIED18Asiya Javayant
1003Salvatore O GarufiItaly2026-03-25Commercial Press RENEWAL70Elwin Sharvill
1004Cody E MaletItaly2026-03-16Buckley Miller Wright RENEWAL30Ivan Magalhaes
1005Cody X RoysterCanada2026-03-24Chemel, James L Cpa NEW44Ivan Magalhaes
1006Octavia N DarakjyIndia2026-03-12Rousseaux, Michael Esq PROPOSAL46Ivan Magalhaes
1007Claire X ButtRussia2026-03-26Benton, John B Jr PROPOSAL3Asiya Javayant
1008Faith I CampainUnited Kingdom2026-03-08Rangoni Of Florence QUALIFIED30Anna Fali
1009Darci Y RoysterFrance2026-03-14King, Christopher A Esq QUALIFIED20Xuxue Feng
1010Kadeem S KuskoCanada2026-03-02Truhlar And Truhlar Attys QUALIFIED51Stephen Shaw
1011Francesco Y RulapaughIndia2026-03-10Buckley Miller Wright UNQUALIFIED68Ivan Magalhaes
1012Wickens A PoquetteRussia2026-03-18Commercial Press QUALIFIED78Stephen Shaw
1013Alejandro R AmigonItaly2026-03-05Commercial Press PROPOSAL86Xuxue Feng
1014Julie X TollnerAustralia2026-03-31Feltz Printing Service QUALIFIED28Asiya Javayant
1015Cody O OstroskyAustralia2026-03-15Buckley Miller Wright RENEWAL26Elwin Sharvill
1016Tony E NickaCanada2026-03-16Printing Dimensions PROPOSAL0Xuxue Feng
1017Sinclair T WhobreyBrazil2026-03-10Rangoni Of Florence PROPOSAL17Amy Elsner
1018Wickens N DoeGermany2026-03-29Printing Dimensions NEGOTIATION7Amy Elsner
1019Claire T OstroskyFrance2026-03-07King, Christopher A Esq NEGOTIATION63Stephen Shaw
1020Deepesh P OldroydArgentina2026-03-28Buckley Miller Wright QUALIFIED38Xuxue Feng
1021Izzy I CaldareraJapan2026-03-03Truhlar And Truhlar Attys PROPOSAL23Bernardo Dominic
1022Alejandro W InouyeFrance2026-03-27Buckley Miller Wright QUALIFIED33Asiya Javayant
1023Kaitlin H RimRussia2026-03-30Dorl, James J Esq PROPOSAL92Ivan Magalhaes
1024Silvio V GillianSpain2026-03-17Chemel, James L Cpa NEW3Amy Elsner
1025Jefferson D SaylorsSpain2026-03-10Truhlar And Truhlar Attys NEW8Onyama Limba
1026Clifford D FollerSpain2026-03-17Dorl, James J Esq PROPOSAL83Asiya Javayant
1027Ricardo Y BologniaJapan2026-03-17Truhlar And Truhlar Attys NEW12Anna Fali
1028Leja N DilliardItaly2026-03-29Dorl, James J Esq NEW46Onyama Limba
1029Jennifer D VocelkaGermany2026-03-08Commercial Press PROPOSAL4Asiya Javayant
1030Emily Y VenereIndia2026-03-23Commercial Press QUALIFIED13Bernardo Dominic
1031Arvin E DarakjyGermany2026-03-09Rousseaux, Michael Esq QUALIFIED26Stephen Shaw
1032Jennifer E PoquetteIndia2026-03-30Truhlar And Truhlar Attys NEGOTIATION86Asiya Javayant
1033Rodrigues K IturbideFrance2026-03-21Chemel, James L Cpa RENEWAL48Stephen Shaw
1034Misaki B WhobreyGermany2026-03-26Rangoni Of Florence RENEWAL6Bernardo Dominic
1035Wickens J OstroskySpain2026-03-04Truhlar And Truhlar Attys RENEWAL1Bernardo Dominic
1036Claire F BologniaFrance2026-03-17Chemel, James L Cpa PROPOSAL78Xuxue Feng
1037Antonio X MacleadGermany2026-03-02Chapman, Ross E Esq UNQUALIFIED88Onyama Limba
1038Morrow F BriddickFrance2026-03-13Feiner Bros NEW2Bernardo Dominic
1039Stacey N VenereUnited Kingdom2026-03-26Chanay, Jeffrey A Esq QUALIFIED70Amy Elsner
1040Adams Y WaycottArgentina2026-03-04Feltz Printing Service PROPOSAL46Anna Fali
1041Salvatore B GillianItaly2026-03-08King, Christopher A Esq UNQUALIFIED38Xuxue Feng
1042Darci J BowleyUnited Kingdom2026-03-22Feiner Bros RENEWAL75Stephen Shaw
1043Antonio A OstroskyItaly2026-03-07King, Christopher A Esq NEGOTIATION12Onyama Limba
1044Greenwood Z RulapaughAustralia2026-03-04Benton, John B Jr PROPOSAL72Ioni Bowcher
1045Greenwood F PoquetteUnited Kingdom2026-03-24Truhlar And Truhlar Attys RENEWAL67Asiya Javayant
1046David O NestleAustralia2026-03-18Chemel, James L Cpa UNQUALIFIED74Onyama Limba
1047Faith G GarufiJapan2026-03-12Rangoni Of Florence RENEWAL48Ioni Bowcher
1048Faith A MacleadUnited Kingdom2026-03-04Rousseaux, Michael Esq NEGOTIATION22Elwin Sharvill
1049Ashley A IturbideFrance2026-03-18Feltz Printing Service QUALIFIED45Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin V PoquetteSpainElwin Sharvill UNQUALIFIED
Nicolas Y MarrierBrazilBernardo Dominic NEW
Jefferson U CampainBrazilXuxue Feng RENEWAL
Adams O MorascaGermanyAmy Elsner QUALIFIED
Julie D BriddickGermanyIvan Magalhaes UNQUALIFIED
Clifford H RimFranceXuxue Feng PROPOSAL
Faith Z KolmetzSpainAnna Fali NEW
Kadeem A PaprockiFranceAnna Fali QUALIFIED
David V OldroydUnited KingdomStephen Shaw UNQUALIFIED
Darci N BologniaIndiaAnna Fali NEGOTIATION
Chavez F SlusarskiRussiaStephen Shaw QUALIFIED
James W TollnerFranceOnyama Limba NEW
Isabel M WaycottRussiaOnyama Limba NEGOTIATION
Adams B CaudyArgentinaAnna Fali QUALIFIED
Rodrigues C ChuiCanadaIvan Magalhaes RENEWAL
Aika B KuskoCanadaBernardo Dominic PROPOSAL
Misaki W GillianAustraliaIvan Magalhaes NEGOTIATION
Deepesh N ChuiAustraliaStephen Shaw RENEWAL
Misaki S CaudyIndiaBernardo Dominic RENEWAL
David W VocelkaFranceBernardo Dominic UNQUALIFIED
Nicolas T KolmetzJapanAnna Fali PROPOSAL
Greenwood F OldroydBrazilAmy Elsner NEW
Nicolas G InouyeAustraliaAnna Fali QUALIFIED
James G CampainBrazilIvan Magalhaes PROPOSAL
Julie C FigeroaRussiaStephen Shaw NEGOTIATION
Mujtaba P DoeSpainElwin Sharvill NEGOTIATION
Maria X FlosiCanadaElwin Sharvill QUALIFIED
Tony G WaycottRussiaAmy Elsner PROPOSAL
Salvatore V OldroydFranceIoni Bowcher QUALIFIED
James N AlbaresItalyElwin Sharvill NEW
Greenwood N PerinArgentinaIoni Bowcher NEGOTIATION
Misaki O MaletRussiaAmy Elsner RENEWAL
Misaki H VocelkaRussiaXuxue Feng NEW
Alejandro B SergiAustraliaIvan Magalhaes NEW
Isabel X GillianUnited KingdomAmy Elsner UNQUALIFIED
Munro X PerinCanadaIoni Bowcher PROPOSAL
Aditya U KuskoArgentinaElwin Sharvill NEW
Sinclair M SergiItalyIoni Bowcher NEGOTIATION
Juan J PaprockiFranceXuxue Feng NEGOTIATION
Wickens G ButtUnited KingdomElwin Sharvill UNQUALIFIED
Leon F RutaBrazilIoni Bowcher RENEWAL
Nicolas L StensethGermanyStephen Shaw UNQUALIFIED
Kadeem M DarakjyAustraliaStephen Shaw PROPOSAL
Morrow O PerinIndiaAsiya Javayant QUALIFIED
Isabel K RulapaughRussiaStephen Shaw NEGOTIATION
Aditya V PoquetteRussiaBernardo Dominic UNQUALIFIED
Julie F MaletCanadaAsiya Javayant PROPOSAL
Alejandro E WieserJapanElwin Sharvill RENEWAL
Misaki Y WieserItalyBernardo Dominic NEGOTIATION
Cody Y ShinkoSpainAmy Elsner NEGOTIATION
Frozen Columns
Name
Julie U Malet
Claire H Campain
Cody U Ferencz
Ricardo S Slusarski
Darci W Malet
Kadeem T Caldarera
Johnson R Doe
Misaki G Kolmetz
Darci J Caldarera
Silvio J Butt
Wickens D Ferencz
Clifford E Dilliard
Stacey M Doe
Mujtaba I Slusarski
Darci H Amigon
Misaki J Sergi
Sinclair I Briddick
Tony B Bowley
Jennifer B Sergi
Juan D Chui
Leja H Caudy
Mujtaba F Stockham
Antonio G Royster
Emily A Marrier
Isabel N Maclead
Maisha Y Nestle
Leja Y Perin
Claire G Rulapaugh
Octavia F Slusarski
Misaki X Malet
Claire M Glick
Munro N Inouye
Chavez N Darakjy
Morrow R Schemmer
Faith K Malet
Costa Y Briddick
Ashley V Kolmetz
David Y Briddick
Sinclair H Morasca
Silvio E Sergi
Maisha Z Malet
Chavez R Nicka
Chavez E Saylors
Isabel C Gillian
Jones M Nicka
Greenwood N Gillian
Antonio O Paprocki
Jones E Ferencz
Munro T Marrier
Munro Q Rim
IdCountryDate
1000Russia2026-03-13
1001Russia2026-03-23
1002Canada2026-03-23
1003Argentina2026-03-15
1004Russia2026-03-07
1005Russia2026-03-29
1006United Kingdom2026-03-17
1007India2026-03-20
1008Italy2026-03-24
1009Spain2026-03-26
1010Italy2026-03-08
1011Japan2026-03-09
1012Australia2026-03-08
1013Canada2026-03-17
1014Spain2026-03-02
1015Argentina2026-03-17
1016Canada2026-03-26
1017Germany2026-03-29
1018Australia2026-03-13
1019India2026-03-20
1020Australia2026-03-18
1021Argentina2026-03-24
1022Germany2026-03-06
1023United Kingdom2026-03-28
1024Brazil2026-03-19
1025Brazil2026-03-27
1026Germany2026-03-27
1027Canada2026-03-18
1028Spain2026-03-28
1029Spain2026-03-13
1030Italy2026-03-18
1031Germany2026-03-05
1032Japan2026-03-21
1033Spain2026-03-15
1034Italy2026-03-14
1035Italy2026-03-26
1036United Kingdom2026-03-29
1037Germany2026-03-16
1038Spain2026-03-14
1039Italy2026-03-28
1040Canada2026-03-23
1041France2026-03-13
1042Argentina2026-03-10
1043Japan2026-03-27
1044Brazil2026-03-30
1045Argentina2026-03-10
1046Brazil2026-03-02
1047Canada2026-03-06
1048Japan2026-03-30
1049Italy2026-03-05

On-Demand Data

NameIdCountryDate
Deepesh U Morasca1000Germany2026-03-16
Ivar A Flosi1001Germany2026-03-21
Johnson G Campain1002Germany2026-03-10
Murillo B Kolmetz1003Germany2026-03-23
Rodrigues Y Bolognia1004Australia2026-03-15
Costa G Vocelka1005Brazil2026-03-30
Murillo R Slusarski1006Germany2026-03-21
Ricardo C Butt1007India2026-03-05
Stacey A Sergi1008Russia2026-03-26
Octavia I Kolmetz1009Australia2026-03-18
Aditya F Iturbide1010Canada2026-03-06
Nicolas K Stockham1011Spain2026-03-09
Jones N Paprocki1012France2026-03-16
Misaki F Darakjy1013Germany2026-03-09
Rodrigues K Tollner1014Argentina2026-03-14
Ricardo J Morasca1015United Kingdom2026-03-09
Emily A Butt1016France2026-03-02
Antonio H Flosi1017Germany2026-03-13
Wickens L Paprocki1018Spain2026-03-05
Kaitlin R Rulapaugh1019France2026-03-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh O GlickGermanyIvan Magalhaes RENEWAL
Nicolas F RoysterIndiaXuxue Feng PROPOSAL
Smith B VocelkaItalyOnyama Limba QUALIFIED
Isabel S WhobreyGermanyAmy Elsner RENEWAL
Cody U DoeUnited KingdomXuxue Feng RENEWAL
Emily Z PoquetteRussiaOnyama Limba QUALIFIED
Juan C SlusarskiFranceIoni Bowcher UNQUALIFIED
Rodrigues C SergiArgentinaXuxue Feng NEW
Johnson L WhobreyItalyElwin Sharvill PROPOSAL
Nicolas G CaldareraItalyOnyama Limba RENEWAL
Arvin Z RulapaughBrazilAsiya Javayant NEW
Jefferson Q PerinCanadaAsiya Javayant UNQUALIFIED
Claire S DilliardAustraliaOnyama Limba NEW
Juan T NestleSpainOnyama Limba NEGOTIATION
Tony H CaldareraAustraliaAmy Elsner UNQUALIFIED
Deepesh H GillianCanadaAmy Elsner QUALIFIED
Aika W FerenczGermanyIoni Bowcher RENEWAL
Kaitlin V GauchoIndiaAsiya Javayant NEW
Johnson X SaylorsItalyElwin Sharvill UNQUALIFIED
Kadeem A MarrierJapanIoni Bowcher NEW
Costa M MacleadFranceAnna Fali PROPOSAL
Faith T ShinkoJapanBernardo Dominic NEW
Claire Q AlbaresBrazilXuxue Feng NEW
Deepesh C WieserIndiaElwin Sharvill RENEWAL
Nicolas G BowleySpainBernardo Dominic RENEWAL
Julie A BologniaJapanAmy Elsner NEW
Nicolas P MacleadGermanyAmy Elsner RENEWAL
Faith M TollnerSpainElwin Sharvill UNQUALIFIED
Clifford N AlbaresUnited KingdomXuxue Feng RENEWAL
Darci S VocelkaUnited KingdomAsiya Javayant RENEWAL
Munro W RoysterUnited KingdomElwin Sharvill RENEWAL
Sinclair L TollnerIndiaStephen Shaw NEGOTIATION
Murillo T SlusarskiItalyStephen Shaw UNQUALIFIED
Sinclair J ChuiBrazilOnyama Limba PROPOSAL
Aruna L RimFranceElwin Sharvill UNQUALIFIED
Wickens H IturbideFranceOnyama Limba PROPOSAL
Aditya M InouyeRussiaIoni Bowcher NEW
James K KuskoCanadaAsiya Javayant UNQUALIFIED
Darci H WhobreyIndiaStephen Shaw NEW
Aika N PaprockiItalyXuxue Feng 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.