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
Clifford W BologniaCanadaOnyama Limba RENEWAL
Francesco W MacleadItalyAsiya Javayant UNQUALIFIED
Nicolas S OstroskyItalyXuxue Feng NEGOTIATION
Misaki H DarakjyJapanBernardo Dominic PROPOSAL
Adams V ButtBrazilAmy Elsner NEGOTIATION
Clifford W MaletArgentinaAmy Elsner PROPOSAL
Jefferson X CaldareraBrazilBernardo Dominic RENEWAL
Isabel O WhobreySpainElwin Sharvill NEGOTIATION
David T GauchoAustraliaOnyama Limba UNQUALIFIED
Maria Z StensethArgentinaAmy Elsner RENEWAL
Clifford F VocelkaRussiaBernardo Dominic QUALIFIED
Wickens Q InouyeGermanyBernardo Dominic UNQUALIFIED
Ricardo J GarufiIndiaIoni Bowcher RENEWAL
Kaitlin N FigeroaJapanAmy Elsner UNQUALIFIED
Kaitlin F DoeFranceAsiya Javayant RENEWAL
Jefferson F BriddickAustraliaIoni Bowcher PROPOSAL
Clifford C CaudyIndiaBernardo Dominic RENEWAL
Smith X WaycottJapanIvan Magalhaes QUALIFIED
Adams K WhobreyAustraliaStephen Shaw NEGOTIATION
Deepesh X GauchoJapanAsiya Javayant PROPOSAL
Stacey Q KuskoGermanyAnna Fali NEGOTIATION
Maisha R StensethCanadaIvan Magalhaes QUALIFIED
Leja E WaycottItalyOnyama Limba PROPOSAL
Jennifer C ButtBrazilIvan Magalhaes RENEWAL
Julie B BologniaSpainXuxue Feng NEGOTIATION
Ivar S OldroydRussiaIoni Bowcher NEW
Aika G VenereRussiaXuxue Feng QUALIFIED
Silvio C ShinkoUnited KingdomStephen Shaw RENEWAL
Aruna B GauchoJapanAsiya Javayant NEGOTIATION
Arvin O FerenczRussiaStephen Shaw UNQUALIFIED
Deepesh Q BriddickCanadaIvan Magalhaes UNQUALIFIED
Jones L RulapaughGermanyAmy Elsner PROPOSAL
James L AmigonRussiaAmy Elsner NEGOTIATION
David C RoysterBrazilAsiya Javayant UNQUALIFIED
Izzy C VocelkaUnited KingdomAsiya Javayant UNQUALIFIED
Faith Q PerinArgentinaOnyama Limba RENEWAL
Ivar V BologniaRussiaIvan Magalhaes UNQUALIFIED
Morrow B NestleAustraliaBernardo Dominic NEW
Silvio G FigeroaAustraliaIvan Magalhaes NEGOTIATION
Ivar P MaletJapanElwin Sharvill PROPOSAL
Julie R KolmetzArgentinaBernardo Dominic QUALIFIED
Jones M DarakjySpainBernardo Dominic NEW
Greenwood B FerenczAustraliaAmy Elsner QUALIFIED
Faith A DarakjyUnited KingdomOnyama Limba QUALIFIED
Johnson M MaletAustraliaElwin Sharvill PROPOSAL
James D FigeroaGermanyXuxue Feng QUALIFIED
Jeanfrancois R RutaCanadaIvan Magalhaes NEW
Cody T SchemmerJapanOnyama Limba PROPOSAL
Julie N AlbaresItalyAnna Fali PROPOSAL
Claire I StensethUnited KingdomXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Ricardo V NestleUnited KingdomAnna Fali QUALIFIED
Octavia M OldroydRussiaIvan Magalhaes UNQUALIFIED
Cody N FerenczBrazilAsiya Javayant NEGOTIATION
Deepesh B StockhamAustraliaIoni Bowcher RENEWAL
Izzy C TollnerFranceIvan Magalhaes NEGOTIATION
Jeanfrancois A MarrierBrazilIoni Bowcher UNQUALIFIED
Johnson V InouyeItalyBernardo Dominic NEW
Clifford F PaprockiFranceBernardo Dominic UNQUALIFIED
Murillo S DoeArgentinaXuxue Feng UNQUALIFIED
Claire K MaletGermanyAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams D KolmetzIndia2026-04-04Feltz Printing Service NEW3Stephen Shaw
1001Aruna Z DoeAustralia2026-03-29Feltz Printing Service QUALIFIED69Ivan Magalhaes
1002Stacey G SchemmerFrance2026-04-06Chapman, Ross E Esq UNQUALIFIED14Stephen Shaw
1003Wickens L InouyeFrance2026-04-15Dorl, James J Esq UNQUALIFIED96Anna Fali
1004Nicolas N WaycottFrance2026-04-14Feiner Bros UNQUALIFIED47Stephen Shaw
1005Leja E OstroskySpain2026-04-15Feltz Printing Service UNQUALIFIED7Onyama Limba
1006Salvatore D ButtUnited Kingdom2026-04-19Rangoni Of Florence QUALIFIED39Amy Elsner
1007Leon J SergiIndia2026-04-11Truhlar And Truhlar Attys RENEWAL30Elwin Sharvill
1008Chavez W MorascaSpain2026-03-25Dorl, James J Esq UNQUALIFIED41Ioni Bowcher
1009Smith H CaudyIndia2026-04-09Commercial Press RENEWAL18Asiya Javayant
1010Morrow X KuskoFrance2026-03-26Truhlar And Truhlar Attys NEW33Xuxue Feng
1011Mujtaba M GarufiIndia2026-04-05Rousseaux, Michael Esq PROPOSAL20Stephen Shaw
1012Deepesh L PerinBrazil2026-04-01Feiner Bros NEW54Stephen Shaw
1013Morrow A KuskoArgentina2026-04-17Rousseaux, Michael Esq NEW1Xuxue Feng
1014Chavez I RutaGermany2026-03-28Printing Dimensions NEGOTIATION31Anna Fali
1015Aditya N AlbaresRussia2026-04-16Buckley Miller Wright NEGOTIATION8Stephen Shaw
1016Claire V FollerJapan2026-04-15Rousseaux, Michael Esq PROPOSAL5Amy Elsner
1017Tony P AlbaresCanada2026-04-01Rousseaux, Michael Esq NEW78Xuxue Feng
1018Maisha E FerenczJapan2026-04-18Chapman, Ross E Esq QUALIFIED97Xuxue Feng
1019Darci X VenereCanada2026-04-12Printing Dimensions NEW22Elwin Sharvill
1020Mayumi U ShinkoBrazil2026-04-19Benton, John B Jr QUALIFIED33Stephen Shaw
1021Leon H RulapaughAustralia2026-04-23Printing Dimensions NEW49Ioni Bowcher
1022Misaki E CaldareraBrazil2026-04-11Rousseaux, Michael Esq UNQUALIFIED74Bernardo Dominic
1023Smith S FlosiArgentina2026-04-08Truhlar And Truhlar Attys QUALIFIED8Onyama Limba
1024Arvin F ChuiBrazil2026-04-20Buckley Miller Wright PROPOSAL47Ioni Bowcher
1025Aruna E StensethArgentina2026-03-31Buckley Miller Wright UNQUALIFIED45Elwin Sharvill
1026Francesco W NestleBrazil2026-04-20Chapman, Ross E Esq PROPOSAL6Elwin Sharvill
1027Salvatore M TollnerSpain2026-04-11Dorl, James J Esq RENEWAL55Xuxue Feng
1028Maisha V FigeroaIndia2026-04-10Chanay, Jeffrey A Esq QUALIFIED75Bernardo Dominic
1029Maisha H GauchoFrance2026-04-16Rangoni Of Florence QUALIFIED66Elwin Sharvill
1030Antonio G StensethGermany2026-03-26Rousseaux, Michael Esq PROPOSAL76Onyama Limba
1031Leja R StockhamGermany2026-03-28Rangoni Of Florence NEGOTIATION49Onyama Limba
1032Misaki Z GillianArgentina2026-04-01Printing Dimensions PROPOSAL60Ivan Magalhaes
1033Deepesh S KuskoRussia2026-04-05Printing Dimensions PROPOSAL37Elwin Sharvill
1034Ashley M FollerFrance2026-04-11Rangoni Of Florence UNQUALIFIED1Elwin Sharvill
1035Chavez M FlosiUnited Kingdom2026-04-22Chapman, Ross E Esq UNQUALIFIED2Asiya Javayant
1036Juan T OldroydUnited Kingdom2026-04-22Benton, John B Jr NEGOTIATION91Stephen Shaw
1037Cody P WaycottAustralia2026-04-09Rangoni Of Florence UNQUALIFIED36Asiya Javayant
1038Costa F WhobreyIndia2026-04-06King, Christopher A Esq PROPOSAL26Amy Elsner
1039David B WieserArgentina2026-04-02Truhlar And Truhlar Attys QUALIFIED38Anna Fali
1040Morrow J CaudyJapan2026-04-06Rousseaux, Michael Esq PROPOSAL22Onyama Limba
1041Ricardo G RutaFrance2026-04-18Feiner Bros PROPOSAL62Ivan Magalhaes
1042Alejandro D NestleBrazil2026-04-11Benton, John B Jr UNQUALIFIED14Onyama Limba
1043Stacey A KuskoRussia2026-04-14Rangoni Of Florence RENEWAL83Asiya Javayant
1044Ashley F FerenczAustralia2026-03-28Feiner Bros NEW78Ioni Bowcher
1045Murillo G WhobreySpain2026-03-28Rangoni Of Florence NEGOTIATION26Bernardo Dominic
1046Sinclair K BowleyArgentina2026-03-31Chanay, Jeffrey A Esq NEW30Stephen Shaw
1047James B RutaArgentina2026-04-10Feiner Bros UNQUALIFIED32Anna Fali
1048Jones V GarufiRussia2026-04-06Rangoni Of Florence NEGOTIATION88Ivan Magalhaes
1049Isabel O PerinJapan2026-04-23Benton, John B Jr PROPOSAL26Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Leon O SchemmerArgentinaAnna Fali PROPOSAL
Aditya D DilliardAustraliaOnyama Limba NEW
Nicolas K AlbaresIndiaIvan Magalhaes NEW
Misaki K OstroskySpainOnyama Limba QUALIFIED
Tony Y DoeUnited KingdomStephen Shaw UNQUALIFIED
Leja E PoquetteAustraliaIoni Bowcher RENEWAL
Munro P FollerFranceAmy Elsner NEW
Clifford C OstroskyGermanyElwin Sharvill NEW
Ivar T PoquetteRussiaAsiya Javayant RENEWAL
Jennifer Y SergiArgentinaStephen Shaw UNQUALIFIED
Izzy V GlickAustraliaXuxue Feng UNQUALIFIED
Juan A DoeIndiaAmy Elsner NEW
Wickens K FollerCanadaStephen Shaw QUALIFIED
Faith V WhobreyUnited KingdomXuxue Feng PROPOSAL
David B RimSpainOnyama Limba NEGOTIATION
Aruna T FerenczJapanIvan Magalhaes NEW
Johnson N SchemmerArgentinaBernardo Dominic NEGOTIATION
Sinclair Y MacleadJapanAsiya Javayant UNQUALIFIED
Misaki D MaletGermanyBernardo Dominic PROPOSAL
Rodrigues U FollerGermanyBernardo Dominic NEW
Deepesh Y WieserItalyIoni Bowcher PROPOSAL
Leja X FerenczBrazilElwin Sharvill PROPOSAL
Aruna Y IturbideFranceAmy Elsner PROPOSAL
Nicolas W PoquetteUnited KingdomIvan Magalhaes NEGOTIATION
Clifford L VocelkaCanadaElwin Sharvill NEGOTIATION
David H FigeroaIndiaAmy Elsner NEGOTIATION
Mayumi D IturbideArgentinaAsiya Javayant NEGOTIATION
Darci F RulapaughAustraliaStephen Shaw NEGOTIATION
Ivar X GarufiIndiaIoni Bowcher PROPOSAL
Adams P CampainAustraliaAsiya Javayant RENEWAL
Jeanfrancois E DarakjyCanadaIvan Magalhaes NEW
Aditya F MaletFranceOnyama Limba NEGOTIATION
Adams P PaprockiGermanyXuxue Feng NEW
Wickens N MaletUnited KingdomAsiya Javayant RENEWAL
Chavez E StensethGermanyAsiya Javayant NEGOTIATION
Aika R SergiFranceOnyama Limba RENEWAL
Kaitlin B OldroydSpainIvan Magalhaes RENEWAL
David P SlusarskiUnited KingdomStephen Shaw NEW
Juan Y FlosiFranceAnna Fali QUALIFIED
Aruna H MarrierCanadaBernardo Dominic RENEWAL
Adams T InouyeArgentinaBernardo Dominic NEGOTIATION
David Z DoeItalyIoni Bowcher NEW
Nicolas C GillianCanadaBernardo Dominic NEGOTIATION
Mayumi Z FollerJapanAmy Elsner UNQUALIFIED
Jeanfrancois O OstroskyUnited KingdomBernardo Dominic PROPOSAL
Johnson J WieserIndiaBernardo Dominic UNQUALIFIED
Emily G FerenczFranceAnna Fali RENEWAL
Jefferson T StensethFranceStephen Shaw NEGOTIATION
Jefferson G RulapaughIndiaIoni Bowcher QUALIFIED
Mayumi X OldroydUnited KingdomAsiya Javayant NEW
Frozen Columns
Name
Smith L Bolognia
Costa I Rulapaugh
Mayumi L Waycott
Munro A Malet
Stacey W Waycott
Ricardo O Chui
Greenwood P Morasca
Mayumi R Malet
Jefferson F Poquette
Adams A Waycott
Isabel U Paprocki
James X Waycott
Aditya D Darakjy
Costa M Chui
Johnson I Amigon
Stacey K Royster
Johnson H Chui
Kaitlin C Caldarera
Kaitlin Z Nestle
Jefferson U Butt
Smith J Marrier
James U Morasca
Wickens P Kolmetz
Francesco S Malet
Mujtaba Y Darakjy
Cody N Darakjy
Arvin Y Caldarera
Sinclair Y Caudy
Jeanfrancois H Ostrosky
Francesco F Poquette
Morrow B Bowley
Aditya O Oldroyd
Jones K Morasca
Silvio L Wieser
Leon X Morasca
Deepesh V Figeroa
Emily R Glick
Jefferson J Ferencz
Adams W Ferencz
Ivar O Paprocki
Aika U Royster
Emily Y Malet
Izzy Z Ostrosky
Jeanfrancois Z Briddick
Maria P Dilliard
Izzy J Wieser
Johnson Z Bolognia
Mujtaba P Gillian
Ricardo B Oldroyd
Wickens S Venere
IdCountryDate
1000United Kingdom2026-04-22
1001Argentina2026-04-12
1002Argentina2026-04-05
1003Brazil2026-03-30
1004India2026-03-28
1005Italy2026-04-18
1006France2026-04-07
1007Australia2026-04-18
1008Argentina2026-04-07
1009Italy2026-04-23
1010India2026-04-23
1011Argentina2026-04-08
1012Brazil2026-04-02
1013Italy2026-03-28
1014Russia2026-04-15
1015Argentina2026-04-21
1016France2026-03-28
1017Canada2026-04-12
1018Australia2026-03-28
1019India2026-04-13
1020Argentina2026-04-04
1021Spain2026-04-20
1022Australia2026-04-07
1023Japan2026-04-20
1024India2026-04-05
1025Italy2026-04-12
1026India2026-03-25
1027France2026-04-22
1028Spain2026-04-12
1029Japan2026-04-06
1030Brazil2026-03-26
1031United Kingdom2026-03-30
1032France2026-03-26
1033Germany2026-04-10
1034Spain2026-04-15
1035Brazil2026-04-16
1036Japan2026-04-09
1037Australia2026-04-14
1038Germany2026-03-30
1039Japan2026-03-31
1040Italy2026-04-04
1041Brazil2026-03-25
1042Russia2026-04-12
1043Russia2026-04-04
1044Australia2026-04-19
1045Australia2026-04-11
1046Russia2026-03-29
1047Australia2026-04-16
1048Germany2026-04-07
1049France2026-03-30

On-Demand Data

NameIdCountryDate
Kaitlin W Nicka1000Italy2026-04-14
Kadeem B Morasca1001Brazil2026-04-20
Misaki X Butt1002Australia2026-04-08
Mujtaba X Rulapaugh1003Canada2026-04-19
Nicolas X Malet1004India2026-04-17
Deepesh W Iturbide1005India2026-04-06
Jeanfrancois A Oldroyd1006Japan2026-04-19
Jones H Glick1007United Kingdom2026-04-20
Ricardo P Royster1008Canada2026-04-12
Tony H Butt1009United Kingdom2026-04-13
Alejandro J Caudy1010Germany2026-04-22
Aditya G Marrier1011Argentina2026-03-29
Wickens Y Albares1012Russia2026-04-12
Antonio J Nicka1013Australia2026-04-19
Francesco E Doe1014Argentina2026-03-29
Aika B Royster1015Russia2026-04-22
Wickens N Dilliard1016Brazil2026-04-16
Jeanfrancois U Kolmetz1017Germany2026-04-21
Wickens R Figeroa1018Germany2026-04-02
Aruna D Maclead1019Spain2026-04-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer R WhobreyCanadaElwin Sharvill QUALIFIED
Kadeem C PaprockiCanadaAsiya Javayant RENEWAL
Stacey H GlickAustraliaIvan Magalhaes QUALIFIED
Clifford B SergiAustraliaIvan Magalhaes PROPOSAL
Isabel M BologniaAustraliaOnyama Limba RENEWAL
Salvatore P WhobreyGermanyXuxue Feng NEGOTIATION
Tony B FigeroaGermanyAnna Fali RENEWAL
Francesco P NestleIndiaAmy Elsner NEGOTIATION
Jones J SergiSpainBernardo Dominic PROPOSAL
Jeanfrancois P PaprockiJapanStephen Shaw NEGOTIATION
Smith S CaldareraIndiaStephen Shaw RENEWAL
Wickens X OldroydBrazilBernardo Dominic UNQUALIFIED
Darci B SaylorsRussiaOnyama Limba PROPOSAL
Murillo T MarrierArgentinaStephen Shaw UNQUALIFIED
Morrow E IturbideUnited KingdomAnna Fali QUALIFIED
Johnson Q RulapaughBrazilElwin Sharvill PROPOSAL
Francesco M ButtArgentinaBernardo Dominic NEW
Aditya X StockhamArgentinaAnna Fali PROPOSAL
Deepesh U ButtBrazilStephen Shaw PROPOSAL
Isabel A CaldareraArgentinaIvan Magalhaes NEGOTIATION
Leja N VenereUnited KingdomOnyama Limba NEW
Mayumi O NestleJapanElwin Sharvill NEW
Jeanfrancois Z RulapaughIndiaStephen Shaw UNQUALIFIED
Kadeem L TollnerJapanIoni Bowcher RENEWAL
Jones N KolmetzUnited KingdomAnna Fali QUALIFIED
Aditya G AlbaresCanadaAnna Fali RENEWAL
Stacey M InouyeIndiaXuxue Feng UNQUALIFIED
Maria Q StockhamItalyAmy Elsner RENEWAL
Misaki X KuskoBrazilBernardo Dominic RENEWAL
Cody K DarakjyJapanAnna Fali RENEWAL
Ashley L WhobreyFranceAnna Fali PROPOSAL
Kaitlin F AlbaresBrazilIvan Magalhaes NEW
Darci V BologniaUnited KingdomElwin Sharvill RENEWAL
Antonio F DoeBrazilAsiya Javayant RENEWAL
Munro E AmigonBrazilOnyama Limba RENEWAL
Mujtaba U VocelkaBrazilAnna Fali NEW
Jones G TollnerGermanyIoni Bowcher RENEWAL
Murillo J MaletRussiaIvan Magalhaes NEW
Aditya H BowleyFranceBernardo Dominic RENEWAL
Cody I FollerAustraliaBernardo Dominic 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.