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
Octavia A MaletIndiaElwin Sharvill NEGOTIATION
Darci D GillianFranceAmy Elsner NEW
Cody P ButtUnited KingdomStephen Shaw UNQUALIFIED
Munro G FigeroaAustraliaXuxue Feng PROPOSAL
Antonio N AlbaresRussiaAmy Elsner PROPOSAL
Ricardo R RimFranceAnna Fali RENEWAL
Rodrigues A MarrierRussiaAnna Fali RENEWAL
James X GlickFranceAnna Fali QUALIFIED
Jones C CaudyFranceAmy Elsner NEGOTIATION
Misaki P GlickBrazilIvan Magalhaes NEW
Silvio J TollnerArgentinaOnyama Limba NEW
Deepesh R MaletBrazilStephen Shaw QUALIFIED
Leon U PoquetteArgentinaIoni Bowcher NEGOTIATION
Costa U BowleyItalyIoni Bowcher NEGOTIATION
Faith W ChuiJapanIvan Magalhaes PROPOSAL
Isabel D KolmetzArgentinaXuxue Feng PROPOSAL
Aika I MorascaAustraliaAmy Elsner UNQUALIFIED
Clifford A DarakjyFranceAmy Elsner QUALIFIED
Clifford S WhobreyGermanyAnna Fali NEW
Maisha J PaprockiArgentinaIoni Bowcher NEW
Chavez S BowleyGermanyXuxue Feng PROPOSAL
Morrow J PaprockiRussiaAmy Elsner QUALIFIED
Silvio O WieserIndiaStephen Shaw NEGOTIATION
Mayumi S OstroskyIndiaAnna Fali UNQUALIFIED
Salvatore E VocelkaRussiaAmy Elsner UNQUALIFIED
Ricardo L StensethAustraliaAmy Elsner UNQUALIFIED
Jones P WhobreyFranceStephen Shaw NEGOTIATION
Jennifer N GauchoUnited KingdomAnna Fali RENEWAL
Nicolas J ChuiAustraliaBernardo Dominic RENEWAL
Aika H ButtCanadaStephen Shaw PROPOSAL
Juan T AlbaresGermanyElwin Sharvill QUALIFIED
Ricardo H GarufiSpainBernardo Dominic NEGOTIATION
Claire H InouyeGermanyAnna Fali NEW
Maisha L RulapaughGermanyAmy Elsner RENEWAL
Smith L StensethArgentinaElwin Sharvill RENEWAL
Emily J PerinUnited KingdomBernardo Dominic NEW
Ashley Z NickaBrazilAsiya Javayant PROPOSAL
Jeanfrancois L VenereItalyElwin Sharvill NEW
Arvin C RulapaughRussiaAsiya Javayant RENEWAL
Ricardo M CaldareraAustraliaIvan Magalhaes NEW
Jefferson A RulapaughItalyIoni Bowcher PROPOSAL
David P RutaCanadaElwin Sharvill RENEWAL
Leon T OldroydRussiaOnyama Limba QUALIFIED
Costa P RulapaughItalyAsiya Javayant NEGOTIATION
James J SergiFranceStephen Shaw RENEWAL
Octavia H StockhamCanadaStephen Shaw QUALIFIED
Jones F SchemmerUnited KingdomIvan Magalhaes NEW
Maisha B PoquetteRussiaBernardo Dominic QUALIFIED
Jones P RimBrazilBernardo Dominic NEW
Ivar X VenereGermanyElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aditya I RulapaughCanadaStephen Shaw RENEWAL
Leon T WhobreyIndiaElwin Sharvill QUALIFIED
Murillo P GauchoSpainXuxue Feng PROPOSAL
Misaki X InouyeRussiaIoni Bowcher RENEWAL
Clifford G AmigonBrazilElwin Sharvill UNQUALIFIED
Smith E AlbaresCanadaBernardo Dominic UNQUALIFIED
Salvatore Q RulapaughRussiaOnyama Limba NEW
Izzy T InouyeFranceIoni Bowcher NEW
Kaitlin N VenereItalyIvan Magalhaes QUALIFIED
Antonio I NickaCanadaStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith T SergiCanada2026-05-26Buckley Miller Wright PROPOSAL50Amy Elsner
1001Emily R FlosiRussia2026-05-27Printing Dimensions QUALIFIED56Onyama Limba
1002Chavez C OstroskyFrance2026-06-02Chapman, Ross E Esq PROPOSAL79Ioni Bowcher
1003Johnson P RutaJapan2026-05-20Chemel, James L Cpa PROPOSAL67Asiya Javayant
1004Juan B BriddickJapan2026-06-08Truhlar And Truhlar Attys UNQUALIFIED77Ioni Bowcher
1005Costa L KolmetzItaly2026-05-23Rousseaux, Michael Esq NEW64Bernardo Dominic
1006Darci H RimUnited Kingdom2026-05-26Feltz Printing Service NEGOTIATION19Ioni Bowcher
1007Tony F VocelkaArgentina2026-05-14Rangoni Of Florence NEGOTIATION3Amy Elsner
1008Aruna F BologniaFrance2026-06-08Chemel, James L Cpa RENEWAL39Xuxue Feng
1009Octavia L FollerRussia2026-06-02Truhlar And Truhlar Attys RENEWAL50Anna Fali
1010Aika H RimSpain2026-05-20Rangoni Of Florence NEGOTIATION9Ioni Bowcher
1011Morrow E SlusarskiItaly2026-06-10Chanay, Jeffrey A Esq QUALIFIED58Anna Fali
1012Kadeem X GauchoArgentina2026-05-29Rousseaux, Michael Esq QUALIFIED4Amy Elsner
1013Leja W KolmetzJapan2026-05-13Buckley Miller Wright NEW47Onyama Limba
1014Aruna Z WieserAustralia2026-06-06Chemel, James L Cpa NEW68Ivan Magalhaes
1015Nicolas E NestleRussia2026-05-23Commercial Press NEW98Xuxue Feng
1016Aika X SergiJapan2026-05-30Rangoni Of Florence UNQUALIFIED45Anna Fali
1017Morrow O FerenczAustralia2026-05-20Printing Dimensions UNQUALIFIED53Onyama Limba
1018Aika G RulapaughFrance2026-05-30Rousseaux, Michael Esq NEW54Asiya Javayant
1019Morrow B CaldareraAustralia2026-06-05Chemel, James L Cpa PROPOSAL61Ioni Bowcher
1020Munro N RutaRussia2026-05-20King, Christopher A Esq NEW31Bernardo Dominic
1021Arvin B DilliardJapan2026-05-29Benton, John B Jr QUALIFIED39Bernardo Dominic
1022Morrow H SaylorsUnited Kingdom2026-05-12Buckley Miller Wright NEGOTIATION88Asiya Javayant
1023Arvin E ChuiArgentina2026-06-01Commercial Press NEGOTIATION87Onyama Limba
1024Stacey B SchemmerBrazil2026-06-03Rousseaux, Michael Esq UNQUALIFIED80Asiya Javayant
1025Ashley R RutaCanada2026-05-15Dorl, James J Esq QUALIFIED7Stephen Shaw
1026James X StockhamItaly2026-05-23Benton, John B Jr QUALIFIED18Amy Elsner
1027Izzy D WhobreyGermany2026-05-21Rangoni Of Florence NEGOTIATION85Asiya Javayant
1028Smith F GarufiBrazil2026-06-01Chapman, Ross E Esq NEGOTIATION94Amy Elsner
1029Tony R GlickItaly2026-05-27Commercial Press PROPOSAL32Asiya Javayant
1030Cody X ChuiAustralia2026-05-16Morlong Associates QUALIFIED65Bernardo Dominic
1031Nicolas T VocelkaJapan2026-05-18Rangoni Of Florence NEGOTIATION67Amy Elsner
1032Silvio Z DilliardGermany2026-05-17Chanay, Jeffrey A Esq NEGOTIATION49Ivan Magalhaes
1033Deepesh D FlosiJapan2026-06-03Morlong Associates QUALIFIED1Onyama Limba
1034Kadeem B MarrierFrance2026-05-26King, Christopher A Esq QUALIFIED87Onyama Limba
1035Rodrigues K ButtArgentina2026-06-06King, Christopher A Esq RENEWAL8Amy Elsner
1036Misaki I RutaArgentina2026-05-28Morlong Associates PROPOSAL68Elwin Sharvill
1037Jefferson U DarakjyFrance2026-05-18Buckley Miller Wright PROPOSAL88Asiya Javayant
1038Julie E ChuiAustralia2026-05-15Printing Dimensions NEW28Asiya Javayant
1039Tony I GauchoBrazil2026-06-10Feiner Bros RENEWAL54Asiya Javayant
1040Izzy W TollnerJapan2026-05-15Chanay, Jeffrey A Esq PROPOSAL91Onyama Limba
1041Ashley E WhobreyRussia2026-05-22Chanay, Jeffrey A Esq NEW57Ivan Magalhaes
1042Ivar D SlusarskiBrazil2026-05-23Dorl, James J Esq NEGOTIATION5Amy Elsner
1043Rodrigues J TollnerGermany2026-05-21Rousseaux, Michael Esq PROPOSAL11Bernardo Dominic
1044Jefferson J FollerIndia2026-05-13Dorl, James J Esq QUALIFIED18Elwin Sharvill
1045Clifford S SergiUnited Kingdom2026-05-27Buckley Miller Wright RENEWAL35Ivan Magalhaes
1046Mayumi D StockhamRussia2026-06-10Dorl, James J Esq NEW17Asiya Javayant
1047Izzy I GillianFrance2026-05-28Benton, John B Jr NEW87Onyama Limba
1048Misaki G ChuiArgentina2026-05-23Rangoni Of Florence RENEWAL55Ioni Bowcher
1049Antonio I FerenczGermany2026-06-09Benton, John B Jr RENEWAL24Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Arvin L DarakjyAustraliaAnna Fali RENEWAL
Costa Z ButtSpainStephen Shaw PROPOSAL
Maria X ShinkoSpainIoni Bowcher NEW
Julie X GauchoIndiaBernardo Dominic QUALIFIED
Kadeem X PerinAustraliaOnyama Limba RENEWAL
Jeanfrancois Q SergiItalyElwin Sharvill QUALIFIED
Isabel G TollnerArgentinaAnna Fali UNQUALIFIED
Johnson Y NestleUnited KingdomXuxue Feng UNQUALIFIED
Smith O ButtAustraliaOnyama Limba RENEWAL
Jefferson E BriddickItalyXuxue Feng QUALIFIED
Greenwood K FlosiBrazilIoni Bowcher QUALIFIED
Jeanfrancois G DarakjyArgentinaAnna Fali NEW
Ashley L CaudyRussiaStephen Shaw QUALIFIED
Aditya P DilliardBrazilOnyama Limba QUALIFIED
Chavez Q OstroskyCanadaStephen Shaw UNQUALIFIED
Murillo R BologniaBrazilBernardo Dominic NEW
Julie X DarakjyFranceElwin Sharvill UNQUALIFIED
Silvio V KolmetzJapanIvan Magalhaes PROPOSAL
Leon N AmigonSpainElwin Sharvill PROPOSAL
Johnson O FerenczAustraliaBernardo Dominic NEGOTIATION
Izzy G GauchoRussiaAsiya Javayant UNQUALIFIED
Claire Q KuskoRussiaAmy Elsner QUALIFIED
Claire N FollerItalyAsiya Javayant NEGOTIATION
Jennifer V GlickAustraliaElwin Sharvill RENEWAL
Ashley Q CaldareraRussiaIoni Bowcher QUALIFIED
Mayumi E WaycottBrazilXuxue Feng PROPOSAL
Silvio C ChuiFranceElwin Sharvill NEGOTIATION
Juan B WieserArgentinaAmy Elsner NEW
Smith V PoquetteSpainStephen Shaw UNQUALIFIED
Tony G NestleUnited KingdomIoni Bowcher NEGOTIATION
Jefferson O WhobreyJapanOnyama Limba NEGOTIATION
Jefferson D IturbideIndiaElwin Sharvill QUALIFIED
Francesco I SergiJapanIvan Magalhaes QUALIFIED
Arvin I RimArgentinaElwin Sharvill NEGOTIATION
Kaitlin T GarufiUnited KingdomOnyama Limba UNQUALIFIED
Rodrigues X VocelkaGermanyElwin Sharvill NEW
Stacey E OldroydBrazilBernardo Dominic NEGOTIATION
Leon Y ShinkoAustraliaAsiya Javayant NEW
Mujtaba O StensethSpainXuxue Feng NEW
Costa Y SaylorsAustraliaXuxue Feng NEGOTIATION
Leon I PerinSpainAnna Fali UNQUALIFIED
Costa L KolmetzGermanyStephen Shaw UNQUALIFIED
Misaki J SaylorsArgentinaOnyama Limba NEW
Kadeem U FollerSpainAnna Fali NEGOTIATION
Octavia R KolmetzBrazilOnyama Limba RENEWAL
Alejandro G CampainFranceOnyama Limba RENEWAL
Aika J CaldareraAustraliaXuxue Feng NEGOTIATION
Rodrigues J PerinFranceAmy Elsner QUALIFIED
Jefferson O GillianItalyXuxue Feng NEGOTIATION
Ashley Z DarakjyArgentinaBernardo Dominic QUALIFIED
Frozen Columns
Name
Deepesh L Stockham
Kadeem P Perin
Kaitlin R Flosi
Aika U Malet
Julie W Gillian
James A Caldarera
Jeanfrancois J Saylors
Maria C Perin
Izzy A Campain
Sinclair N Dilliard
Smith O Kolmetz
Kaitlin S Malet
Jefferson O Campain
Maisha M Kusko
Tony U Shinko
David N Gillian
Salvatore N Ruta
Misaki X Royster
Ivar A Whobrey
Kaitlin H Darakjy
Claire C Vocelka
Aditya K Briddick
Munro B Vocelka
Cody Q Albares
Maisha T Caudy
Ashley H Nestle
Julie N Figeroa
Aruna T Stockham
Salvatore U Bolognia
James I Amigon
Chavez Q Ferencz
Chavez W Bolognia
Alejandro W Glick
Deepesh F Dilliard
Francesco Z Venere
Costa B Garufi
Stacey O Shinko
Silvio G Malet
Nicolas O Kusko
Murillo W Schemmer
Clifford E Venere
Claire L Briddick
Arvin Y Bolognia
Arvin L Campain
Arvin X Wieser
Sinclair W Albares
Isabel H Doe
Aditya K Poquette
Leja K Albares
Claire H Paprocki
IdCountryDate
1000India2026-05-16
1001Argentina2026-06-04
1002Japan2026-05-18
1003India2026-05-16
1004Spain2026-06-03
1005United Kingdom2026-05-28
1006Brazil2026-06-06
1007Germany2026-06-05
1008Spain2026-05-22
1009Russia2026-05-14
1010Japan2026-06-04
1011Italy2026-06-01
1012Argentina2026-05-30
1013Italy2026-06-01
1014United Kingdom2026-05-31
1015Germany2026-06-02
1016United Kingdom2026-05-20
1017Argentina2026-06-04
1018Brazil2026-05-29
1019Russia2026-05-15
1020United Kingdom2026-05-31
1021Australia2026-06-05
1022Russia2026-06-10
1023Germany2026-06-02
1024Japan2026-06-01
1025United Kingdom2026-05-31
1026Argentina2026-06-04
1027Brazil2026-05-24
1028Brazil2026-05-14
1029Canada2026-05-15
1030Spain2026-05-19
1031Brazil2026-06-04
1032India2026-06-03
1033Australia2026-06-04
1034Russia2026-05-25
1035Germany2026-06-10
1036Italy2026-05-31
1037Brazil2026-05-21
1038Canada2026-05-21
1039France2026-05-29
1040Japan2026-05-25
1041Russia2026-05-12
1042France2026-06-01
1043France2026-05-26
1044Germany2026-05-28
1045Japan2026-05-30
1046Australia2026-05-27
1047Australia2026-06-02
1048Canada2026-05-27
1049Italy2026-05-16

On-Demand Data

NameIdCountryDate
Adams G Campain1000Russia2026-05-13
Salvatore N Perin1001Brazil2026-05-30
Ashley O Slusarski1002Italy2026-05-23
Jones D Garufi1003India2026-06-09
Misaki P Doe1004France2026-05-30
Morrow E Ferencz1005France2026-05-20
Misaki Z Shinko1006Italy2026-05-30
Claire G Waycott1007Russia2026-05-14
Mujtaba M Paprocki1008Russia2026-05-22
Stacey E Malet1009United Kingdom2026-05-26
Salvatore J Darakjy1010Argentina2026-05-20
Julie U Butt1011Brazil2026-05-13
Maisha Z Slusarski1012Russia2026-05-25
Octavia I Poquette1013Argentina2026-06-07
Deepesh A Butt1014India2026-06-08
Stacey C Ostrosky1015Italy2026-06-03
Jones L Figeroa1016Argentina2026-05-12
Antonio W Paprocki1017Japan2026-06-09
Mujtaba T Gaucho1018Spain2026-05-23
Alejandro B Poquette1019Japan2026-05-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba G PaprockiBrazilBernardo Dominic QUALIFIED
Costa B NickaGermanyElwin Sharvill NEGOTIATION
Izzy X NickaJapanAnna Fali PROPOSAL
Johnson I ChuiBrazilElwin Sharvill NEW
Deepesh H WaycottItalyBernardo Dominic NEGOTIATION
Octavia K RutaFranceIvan Magalhaes NEGOTIATION
Octavia Z MaletAustraliaBernardo Dominic RENEWAL
Silvio J FlosiSpainElwin Sharvill NEGOTIATION
Wickens L PerinUnited KingdomStephen Shaw UNQUALIFIED
Kaitlin L GarufiFranceBernardo Dominic UNQUALIFIED
Rodrigues W AmigonIndiaIoni Bowcher NEW
Smith G SlusarskiGermanyXuxue Feng NEW
Jennifer P GauchoGermanyAsiya Javayant NEGOTIATION
Stacey Y OldroydBrazilAmy Elsner QUALIFIED
Johnson C PerinCanadaElwin Sharvill PROPOSAL
Munro C KuskoUnited KingdomXuxue Feng RENEWAL
Kaitlin J GillianJapanAnna Fali NEW
Kadeem Y BriddickGermanyIvan Magalhaes UNQUALIFIED
Misaki T WhobreyBrazilAmy Elsner PROPOSAL
Izzy J FollerCanadaXuxue Feng PROPOSAL
Maisha W RimIndiaStephen Shaw RENEWAL
Claire W CampainUnited KingdomXuxue Feng NEW
Silvio Q StensethBrazilElwin Sharvill PROPOSAL
Stacey L StockhamArgentinaIvan Magalhaes RENEWAL
Claire N VocelkaRussiaIoni Bowcher QUALIFIED
Mujtaba A MaletIndiaBernardo Dominic RENEWAL
Cody P MorascaFranceBernardo Dominic NEW
Greenwood W GauchoFranceIoni Bowcher PROPOSAL
Octavia K PerinUnited KingdomIvan Magalhaes QUALIFIED
Smith X ShinkoGermanyElwin Sharvill UNQUALIFIED
Jennifer G FollerFranceOnyama Limba NEW
Silvio I RutaAustraliaAnna Fali PROPOSAL
Maria M NickaSpainAmy Elsner NEW
Costa W FlosiItalyOnyama Limba QUALIFIED
Isabel N InouyeCanadaStephen Shaw QUALIFIED
Claire V OstroskyRussiaXuxue Feng RENEWAL
Misaki U NickaCanadaIvan Magalhaes NEGOTIATION
Tony O DoeJapanAnna Fali RENEWAL
Clifford L BowleyGermanyOnyama Limba PROPOSAL
James E SergiUnited KingdomStephen Shaw QUALIFIED

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