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
Antonio E MaletJapanOnyama Limba NEGOTIATION
Ricardo G KuskoUnited KingdomStephen Shaw NEGOTIATION
Francesco Z NestleArgentinaAnna Fali QUALIFIED
Munro Z MorascaItalyElwin Sharvill NEW
Izzy F WhobreyIndiaStephen Shaw QUALIFIED
Alejandro V SergiSpainIoni Bowcher NEGOTIATION
Smith I WieserIndiaAsiya Javayant NEGOTIATION
Mayumi O RutaCanadaBernardo Dominic NEW
Arvin I GarufiSpainIoni Bowcher PROPOSAL
Leja D VenereArgentinaXuxue Feng NEGOTIATION
Costa P ButtSpainElwin Sharvill QUALIFIED
David V ButtUnited KingdomAsiya Javayant RENEWAL
Maria G VenereArgentinaIoni Bowcher NEW
Emily Z SaylorsBrazilAsiya Javayant NEGOTIATION
Cody D CaldareraFranceAmy Elsner UNQUALIFIED
Isabel O StockhamJapanStephen Shaw NEW
Aditya L CaldareraBrazilAnna Fali RENEWAL
Murillo U WieserSpainBernardo Dominic UNQUALIFIED
Adams K KolmetzArgentinaStephen Shaw QUALIFIED
Leon I NestleBrazilAmy Elsner UNQUALIFIED
Mujtaba D VenereSpainIoni Bowcher NEGOTIATION
Rodrigues W GarufiAustraliaXuxue Feng PROPOSAL
Jones X GauchoFranceIvan Magalhaes QUALIFIED
Adams Z NestleCanadaElwin Sharvill QUALIFIED
Jones P DarakjyBrazilXuxue Feng RENEWAL
Aruna E CaldareraArgentinaIvan Magalhaes RENEWAL
Ivar U ChuiSpainIoni Bowcher UNQUALIFIED
Francesco M CampainItalyAmy Elsner PROPOSAL
Morrow R FlosiAustraliaBernardo Dominic PROPOSAL
Morrow O ChuiRussiaStephen Shaw QUALIFIED
Stacey U KolmetzBrazilXuxue Feng UNQUALIFIED
Chavez Y NickaArgentinaAnna Fali NEW
Alejandro Z CaudyArgentinaAsiya Javayant NEGOTIATION
Jeanfrancois L ChuiArgentinaAnna Fali RENEWAL
Misaki U GauchoAustraliaAsiya Javayant NEW
Smith I KuskoFranceIvan Magalhaes NEW
Sinclair C RoysterItalyAnna Fali RENEWAL
Mujtaba B BowleyAustraliaStephen Shaw NEGOTIATION
Munro R StensethRussiaOnyama Limba NEGOTIATION
Misaki P BowleySpainIvan Magalhaes QUALIFIED
Ivar H WhobreyIndiaXuxue Feng NEGOTIATION
Misaki L PoquetteFranceAmy Elsner PROPOSAL
Rodrigues Y SchemmerItalyOnyama Limba NEW
Mayumi V FlosiArgentinaIoni Bowcher UNQUALIFIED
Aika P StensethBrazilAsiya Javayant RENEWAL
James J CaudyItalyIoni Bowcher RENEWAL
Jefferson V RulapaughRussiaAsiya Javayant UNQUALIFIED
Munro C AlbaresRussiaIoni Bowcher NEW
Leja N CaldareraFranceIvan Magalhaes QUALIFIED
Rodrigues G CaudyAustraliaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Costa W PaprockiJapanXuxue Feng NEGOTIATION
Nicolas D BriddickJapanOnyama Limba QUALIFIED
Chavez A FlosiSpainBernardo Dominic NEW
Morrow L GlickArgentinaXuxue Feng UNQUALIFIED
Salvatore B NickaUnited KingdomElwin Sharvill PROPOSAL
Juan Y RimIndiaAmy Elsner NEW
Wickens I ShinkoSpainAsiya Javayant NEW
Jeanfrancois O AlbaresUnited KingdomXuxue Feng RENEWAL
Adams Q VenereFranceAnna Fali RENEWAL
Jefferson W PaprockiItalyBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley D ShinkoBrazil2026-03-30Rangoni Of Florence UNQUALIFIED97Elwin Sharvill
1001Costa F MorascaRussia2026-04-09Morlong Associates UNQUALIFIED43Xuxue Feng
1002Munro W MaletFrance2026-03-25Chanay, Jeffrey A Esq RENEWAL58Stephen Shaw
1003Maria E BriddickJapan2026-03-20Rangoni Of Florence NEW74Xuxue Feng
1004Leja R SergiSpain2026-03-26Truhlar And Truhlar Attys RENEWAL34Amy Elsner
1005Jefferson D GlickArgentina2026-03-31Chanay, Jeffrey A Esq UNQUALIFIED75Anna Fali
1006Mayumi C SergiBrazil2026-03-19Chapman, Ross E Esq NEGOTIATION7Onyama Limba
1007Darci A RulapaughIndia2026-03-20Chemel, James L Cpa QUALIFIED6Ivan Magalhaes
1008Aditya V BriddickBrazil2026-03-22Chanay, Jeffrey A Esq PROPOSAL64Ivan Magalhaes
1009Johnson F ShinkoGermany2026-04-01Benton, John B Jr QUALIFIED65Asiya Javayant
1010Juan F DoeJapan2026-03-21Buckley Miller Wright UNQUALIFIED50Amy Elsner
1011Jeanfrancois S NestleCanada2026-03-20Chanay, Jeffrey A Esq NEGOTIATION55Bernardo Dominic
1012Maisha Z CaudyIndia2026-04-10Buckley Miller Wright NEW84Xuxue Feng
1013Aika G NickaAustralia2026-03-27Chemel, James L Cpa NEGOTIATION99Stephen Shaw
1014Julie Q OstroskyCanada2026-03-29Chapman, Ross E Esq UNQUALIFIED15Ioni Bowcher
1015Aruna Z AmigonFrance2026-03-18Feltz Printing Service RENEWAL57Bernardo Dominic
1016Cody X AlbaresGermany2026-03-25Chapman, Ross E Esq UNQUALIFIED40Anna Fali
1017Alejandro F KuskoArgentina2026-04-03Dorl, James J Esq NEGOTIATION6Bernardo Dominic
1018Kaitlin B KolmetzCanada2026-03-31Feiner Bros NEW31Asiya Javayant
1019Misaki U ChuiIndia2026-03-18Chapman, Ross E Esq RENEWAL8Onyama Limba
1020Chavez E RulapaughSpain2026-04-14Truhlar And Truhlar Attys QUALIFIED54Anna Fali
1021Misaki S DoeArgentina2026-04-07Rousseaux, Michael Esq NEW61Stephen Shaw
1022Claire H PoquetteCanada2026-04-16Feltz Printing Service NEGOTIATION70Asiya Javayant
1023James A CampainSpain2026-03-27Chanay, Jeffrey A Esq NEGOTIATION7Ioni Bowcher
1024Jennifer J CaudyFrance2026-04-05Commercial Press UNQUALIFIED91Amy Elsner
1025Misaki Z PaprockiIndia2026-03-23Chapman, Ross E Esq NEGOTIATION37Stephen Shaw
1026Adams M DarakjyRussia2026-04-10Dorl, James J Esq PROPOSAL68Stephen Shaw
1027Ivar D NestleFrance2026-03-31King, Christopher A Esq NEW80Stephen Shaw
1028Cody G MacleadRussia2026-04-12Rangoni Of Florence PROPOSAL48Xuxue Feng
1029Silvio B VenereSpain2026-03-29Chapman, Ross E Esq NEGOTIATION84Onyama Limba
1030Deepesh A BologniaUnited Kingdom2026-04-08Dorl, James J Esq UNQUALIFIED86Elwin Sharvill
1031Emily C StensethSpain2026-03-25Chemel, James L Cpa QUALIFIED95Stephen Shaw
1032Kaitlin R BowleyFrance2026-04-12Rousseaux, Michael Esq NEGOTIATION58Amy Elsner
1033Misaki A OstroskySpain2026-03-31Buckley Miller Wright PROPOSAL34Ioni Bowcher
1034Ivar L CaudyGermany2026-03-23Feltz Printing Service PROPOSAL5Elwin Sharvill
1035Isabel M MarrierSpain2026-03-21Morlong Associates NEGOTIATION5Xuxue Feng
1036Wickens G KuskoUnited Kingdom2026-04-14King, Christopher A Esq NEGOTIATION33Ioni Bowcher
1037Aditya E InouyeAustralia2026-03-24Truhlar And Truhlar Attys RENEWAL21Anna Fali
1038Darci C RimIndia2026-03-21Rousseaux, Michael Esq NEW17Stephen Shaw
1039Alejandro Q CaldareraItaly2026-04-15Benton, John B Jr UNQUALIFIED73Asiya Javayant
1040Leja N KolmetzArgentina2026-03-24Morlong Associates NEGOTIATION84Elwin Sharvill
1041David A WaycottBrazil2026-04-03Feiner Bros RENEWAL12Asiya Javayant
1042Mujtaba G FlosiFrance2026-04-04Chanay, Jeffrey A Esq NEW88Ioni Bowcher
1043Sinclair K ShinkoAustralia2026-04-09Feiner Bros RENEWAL64Bernardo Dominic
1044Morrow V StensethIndia2026-04-03Chanay, Jeffrey A Esq PROPOSAL79Ivan Magalhaes
1045Leja T RoysterRussia2026-04-08Printing Dimensions UNQUALIFIED82Ivan Magalhaes
1046David U DoeAustralia2026-04-02Chapman, Ross E Esq UNQUALIFIED87Asiya Javayant
1047Aditya E WaycottIndia2026-03-20Commercial Press NEGOTIATION40Xuxue Feng
1048Aika B AmigonIndia2026-03-29Commercial Press QUALIFIED85Stephen Shaw
1049Silvio S AmigonCanada2026-04-10Buckley Miller Wright QUALIFIED84Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Jennifer I FlosiAustraliaIvan Magalhaes NEW
Cody F CampainUnited KingdomAsiya Javayant NEGOTIATION
Jeanfrancois S NestleGermanyXuxue Feng PROPOSAL
Stacey R SlusarskiFranceIoni Bowcher PROPOSAL
Mayumi U InouyeUnited KingdomAmy Elsner RENEWAL
Murillo T TollnerIndiaOnyama Limba QUALIFIED
Salvatore C InouyeUnited KingdomStephen Shaw NEGOTIATION
Leon Y BologniaBrazilBernardo Dominic RENEWAL
Francesco K TollnerAustraliaAnna Fali UNQUALIFIED
Cody X NickaArgentinaAmy Elsner NEGOTIATION
Maisha A DoeGermanyXuxue Feng NEGOTIATION
Greenwood X FerenczAustraliaBernardo Dominic QUALIFIED
Julie S OldroydFranceAnna Fali NEGOTIATION
Jennifer V InouyeAustraliaIvan Magalhaes RENEWAL
Maisha C MaletItalyXuxue Feng QUALIFIED
Silvio A BriddickJapanBernardo Dominic NEGOTIATION
Tony A BologniaUnited KingdomOnyama Limba UNQUALIFIED
Alejandro P BologniaGermanyAmy Elsner NEW
Ashley M BriddickUnited KingdomAnna Fali RENEWAL
Kadeem B RutaJapanAsiya Javayant QUALIFIED
Kadeem Z FollerCanadaXuxue Feng RENEWAL
Chavez R DilliardBrazilIvan Magalhaes NEW
Chavez P TollnerRussiaIoni Bowcher NEW
Greenwood Z GauchoArgentinaBernardo Dominic QUALIFIED
James V KuskoArgentinaStephen Shaw PROPOSAL
Jennifer D MacleadUnited KingdomStephen Shaw UNQUALIFIED
Jeanfrancois N DilliardGermanyXuxue Feng UNQUALIFIED
Jeanfrancois C GauchoRussiaAsiya Javayant QUALIFIED
Misaki D CampainBrazilIvan Magalhaes NEGOTIATION
Maria A CaldareraUnited KingdomXuxue Feng UNQUALIFIED
Salvatore A InouyeRussiaAmy Elsner RENEWAL
Maisha U DilliardIndiaAmy Elsner QUALIFIED
Costa E PerinArgentinaStephen Shaw PROPOSAL
Greenwood I SergiUnited KingdomAnna Fali UNQUALIFIED
Ivar K BologniaGermanyOnyama Limba UNQUALIFIED
Jeanfrancois R GlickFranceIvan Magalhaes UNQUALIFIED
Maisha B DilliardGermanyStephen Shaw NEGOTIATION
Misaki D ButtUnited KingdomStephen Shaw UNQUALIFIED
Leon O StensethFranceStephen Shaw QUALIFIED
Isabel J BriddickItalyAmy Elsner PROPOSAL
Murillo V BologniaSpainAnna Fali NEGOTIATION
Murillo M FollerSpainAnna Fali NEW
Emily M ButtJapanOnyama Limba RENEWAL
Kadeem D SaylorsJapanAnna Fali QUALIFIED
Julie S OstroskyCanadaAsiya Javayant NEGOTIATION
Isabel E MacleadGermanyXuxue Feng PROPOSAL
Jeanfrancois C SchemmerJapanIoni Bowcher QUALIFIED
Greenwood J GlickGermanyAnna Fali QUALIFIED
Misaki W BriddickGermanyAnna Fali QUALIFIED
Sinclair E AmigonRussiaAmy Elsner PROPOSAL
Frozen Columns
Name
Maria T Figeroa
Smith E Vocelka
Jones E Ferencz
Cody M Royster
Kaitlin Q Marrier
Julie M Caudy
Maria I Venere
Mujtaba B Iturbide
Wickens W Iturbide
Kaitlin E Nestle
Maria V Campain
Misaki L Waycott
Salvatore X Nestle
Jefferson Z Paprocki
Kadeem Y Royster
Maria D Vocelka
Misaki C Garufi
Munro H Stockham
Isabel K Bolognia
Chavez U Oldroyd
Leon S Schemmer
Mayumi L Caldarera
Costa X Foller
Leon A Albares
Murillo W Shinko
Maisha R Inouye
Cody S Vocelka
Isabel Z Rulapaugh
Alejandro J Marrier
Ricardo H Briddick
Claire U Chui
Aika V Rim
Alejandro J Dilliard
Octavia F Gaucho
Murillo Y Bowley
Julie Y Stenseth
Octavia Y Nicka
Alejandro X Perin
Sinclair G Marrier
Morrow Q Gillian
Mayumi H Oldroyd
Jeanfrancois L Gaucho
Darci M Paprocki
Juan K Campain
Ivar B Slusarski
Kaitlin U Schemmer
Silvio R Darakjy
Alejandro M Schemmer
Ashley D Darakjy
Aditya P Gillian
IdCountryDate
1000Brazil2026-03-29
1001Italy2026-04-07
1002United Kingdom2026-04-08
1003Russia2026-04-03
1004United Kingdom2026-04-02
1005Germany2026-03-30
1006Australia2026-04-10
1007Japan2026-03-31
1008Italy2026-03-24
1009France2026-04-05
1010Argentina2026-04-03
1011Canada2026-04-01
1012Germany2026-03-22
1013United Kingdom2026-03-26
1014Brazil2026-04-14
1015Japan2026-03-29
1016Australia2026-03-31
1017Germany2026-04-04
1018Spain2026-03-27
1019France2026-04-06
1020Spain2026-04-15
1021India2026-04-11
1022Japan2026-04-12
1023Argentina2026-04-11
1024India2026-03-19
1025Russia2026-04-05
1026Brazil2026-03-30
1027Spain2026-03-22
1028Spain2026-03-20
1029India2026-04-10
1030France2026-04-15
1031Australia2026-04-04
1032Canada2026-03-19
1033United Kingdom2026-04-13
1034Canada2026-04-14
1035Russia2026-04-08
1036United Kingdom2026-03-19
1037United Kingdom2026-04-06
1038Canada2026-03-28
1039Argentina2026-04-14
1040Russia2026-03-25
1041Canada2026-03-18
1042Germany2026-04-13
1043Spain2026-04-03
1044Germany2026-03-21
1045Japan2026-03-19
1046Canada2026-03-30
1047Canada2026-03-18
1048Brazil2026-03-18
1049Germany2026-04-06

On-Demand Data

NameIdCountryDate
Sinclair I Caldarera1000United Kingdom2026-04-13
Morrow S Poquette1001Brazil2026-04-02
Leja H Chui1002Germany2026-04-11
Isabel L Bolognia1003Japan2026-04-06
Cody Z Darakjy1004Germany2026-04-06
Jefferson L Tollner1005Argentina2026-03-24
James A Briddick1006India2026-04-05
Adams L Rim1007United Kingdom2026-03-21
Stacey T Caldarera1008Germany2026-04-07
Faith W Poquette1009Russia2026-03-18
Clifford Q Stockham1010Russia2026-03-26
Isabel H Caudy1011Russia2026-03-31
Leja Z Doe1012India2026-03-19
Ashley E Doe1013France2026-04-15
Greenwood N Vocelka1014Argentina2026-03-29
Maisha I Malet1015Brazil2026-04-13
Aditya K Slusarski1016Australia2026-03-25
Francesco L Flosi1017Australia2026-04-15
Misaki K Saylors1018Germany2026-04-01
Izzy O Ostrosky1019Canada2026-04-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens T VenereSpainOnyama Limba NEGOTIATION
Ashley D MarrierSpainOnyama Limba NEGOTIATION
Nicolas P PerinSpainElwin Sharvill QUALIFIED
Jones Y ButtRussiaXuxue Feng QUALIFIED
Isabel A DarakjyIndiaAmy Elsner UNQUALIFIED
Alejandro H SergiJapanIoni Bowcher PROPOSAL
Smith I ShinkoGermanyStephen Shaw RENEWAL
Kaitlin M SlusarskiIndiaIvan Magalhaes QUALIFIED
Faith O GauchoArgentinaBernardo Dominic QUALIFIED
Chavez Q RoysterIndiaElwin Sharvill UNQUALIFIED
Jennifer D AlbaresUnited KingdomIvan Magalhaes RENEWAL
Julie A DilliardFranceAsiya Javayant NEW
Alejandro Z SlusarskiIndiaIvan Magalhaes RENEWAL
Costa A RulapaughUnited KingdomXuxue Feng UNQUALIFIED
Ivar U OldroydArgentinaIoni Bowcher UNQUALIFIED
Rodrigues B GillianFranceBernardo Dominic NEW
Costa F FollerCanadaIvan Magalhaes NEW
Chavez V RutaArgentinaElwin Sharvill PROPOSAL
Sinclair P RutaAustraliaBernardo Dominic PROPOSAL
Deepesh X VenereSpainAsiya Javayant UNQUALIFIED
Misaki V KolmetzArgentinaAsiya Javayant NEW
David Q BriddickUnited KingdomAmy Elsner UNQUALIFIED
David L PaprockiArgentinaOnyama Limba RENEWAL
Salvatore W DoeJapanXuxue Feng QUALIFIED
Darci C RutaGermanyAsiya Javayant UNQUALIFIED
Aika V RoysterUnited KingdomIvan Magalhaes NEGOTIATION
Ivar E StockhamItalyElwin Sharvill NEGOTIATION
David W VenereIndiaElwin Sharvill RENEWAL
Claire Q GlickUnited KingdomXuxue Feng RENEWAL
Leja V PoquetteAustraliaAsiya Javayant NEW
Morrow A WhobreyAustraliaAsiya Javayant PROPOSAL
Ricardo F AmigonIndiaAsiya Javayant PROPOSAL
Ashley H GillianIndiaElwin Sharvill UNQUALIFIED
Izzy P NestleUnited KingdomIoni Bowcher NEGOTIATION
Francesco F RoysterItalyOnyama Limba QUALIFIED
Aditya Q GlickSpainOnyama Limba NEGOTIATION
Aruna V InouyeUnited KingdomAsiya Javayant NEW
Tony R MaletItalyAnna Fali NEW
Johnson D CampainCanadaIoni Bowcher UNQUALIFIED
Chavez H RimCanadaAnna Fali PROPOSAL

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