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
Murillo O BologniaUnited KingdomAsiya Javayant PROPOSAL
Mayumi K InouyeItalyStephen Shaw RENEWAL
Ashley R NestleBrazilAnna Fali NEGOTIATION
Leja O MacleadRussiaElwin Sharvill PROPOSAL
Ivar E StensethGermanyAsiya Javayant RENEWAL
Smith P PoquetteIndiaElwin Sharvill PROPOSAL
Clifford K GillianGermanyOnyama Limba QUALIFIED
Leja T StockhamBrazilAnna Fali UNQUALIFIED
Clifford T GillianIndiaOnyama Limba PROPOSAL
Ivar G RimCanadaXuxue Feng PROPOSAL
James Y FigeroaFranceIoni Bowcher RENEWAL
Leon W StensethAustraliaOnyama Limba UNQUALIFIED
Cody S FerenczCanadaIvan Magalhaes UNQUALIFIED
David W CaudyItalyIvan Magalhaes NEW
Octavia B MaletRussiaXuxue Feng QUALIFIED
Izzy P NestleUnited KingdomBernardo Dominic NEGOTIATION
Silvio E TollnerFranceAsiya Javayant PROPOSAL
Sinclair V InouyeArgentinaAmy Elsner PROPOSAL
Wickens Y SchemmerRussiaElwin Sharvill UNQUALIFIED
Murillo W WhobreyIndiaBernardo Dominic QUALIFIED
Munro P StensethItalyBernardo Dominic NEGOTIATION
Izzy G AmigonBrazilAsiya Javayant NEGOTIATION
Jennifer U NestleBrazilAnna Fali NEW
Leon V DarakjyUnited KingdomXuxue Feng QUALIFIED
Johnson V MacleadRussiaOnyama Limba PROPOSAL
James F StockhamUnited KingdomAsiya Javayant RENEWAL
Leja A RutaJapanXuxue Feng PROPOSAL
Faith V DoeUnited KingdomIvan Magalhaes NEGOTIATION
Aika U ChuiIndiaIoni Bowcher UNQUALIFIED
Stacey Y FerenczIndiaIoni Bowcher QUALIFIED
Smith D WhobreyFranceAmy Elsner RENEWAL
Rodrigues K CaldareraSpainAsiya Javayant UNQUALIFIED
Silvio H CaudyArgentinaAsiya Javayant QUALIFIED
Francesco G GillianFranceIvan Magalhaes PROPOSAL
Jones C RutaRussiaAnna Fali UNQUALIFIED
Francesco L GarufiAustraliaIvan Magalhaes PROPOSAL
Chavez U SaylorsSpainXuxue Feng RENEWAL
Leja T DilliardJapanIoni Bowcher NEGOTIATION
Julie Q FerenczArgentinaAmy Elsner RENEWAL
Aditya P NestleUnited KingdomStephen Shaw UNQUALIFIED
Munro I BologniaAustraliaAsiya Javayant NEW
Nicolas V PaprockiIndiaElwin Sharvill PROPOSAL
Nicolas X ChuiItalyOnyama Limba UNQUALIFIED
Chavez F SchemmerBrazilIoni Bowcher NEW
Maisha G CaudyItalyStephen Shaw NEW
Leja A OldroydJapanElwin Sharvill NEGOTIATION
Leon N ShinkoJapanAmy Elsner NEW
Stacey Q RulapaughRussiaIvan Magalhaes RENEWAL
Kaitlin M FigeroaItalyIoni Bowcher RENEWAL
Aika W MorascaArgentinaIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Johnson Z MarrierArgentinaOnyama Limba NEGOTIATION
Stacey L RoysterRussiaAnna Fali PROPOSAL
Costa V StockhamFranceAsiya Javayant NEW
Faith A RulapaughGermanyStephen Shaw RENEWAL
Maisha I AlbaresGermanyStephen Shaw QUALIFIED
Stacey D GauchoJapanIoni Bowcher RENEWAL
Jeanfrancois O MarrierJapanStephen Shaw NEGOTIATION
David F SchemmerBrazilStephen Shaw NEGOTIATION
Smith L BriddickCanadaXuxue Feng PROPOSAL
Antonio Q CampainSpainAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David N BologniaRussia2026-05-15Benton, John B Jr PROPOSAL16Ioni Bowcher
1001Jeanfrancois F InouyeUnited Kingdom2026-05-23Feltz Printing Service QUALIFIED94Amy Elsner
1002Mayumi N KuskoItaly2026-06-12Buckley Miller Wright NEW11Elwin Sharvill
1003Faith C FigeroaArgentina2026-05-28Feltz Printing Service QUALIFIED61Stephen Shaw
1004Jones L AmigonFrance2026-05-17Truhlar And Truhlar Attys NEGOTIATION77Onyama Limba
1005Mujtaba V MaletCanada2026-05-30King, Christopher A Esq QUALIFIED61Stephen Shaw
1006Deepesh Z OldroydFrance2026-05-15Printing Dimensions NEGOTIATION34Amy Elsner
1007Adams D ChuiGermany2026-06-05Commercial Press PROPOSAL40Asiya Javayant
1008Chavez C ShinkoSpain2026-05-23Chanay, Jeffrey A Esq RENEWAL47Ioni Bowcher
1009Maisha F BriddickGermany2026-06-03Feltz Printing Service RENEWAL47Bernardo Dominic
1010Adams D OstroskyCanada2026-06-08Feiner Bros RENEWAL94Amy Elsner
1011Aditya Y ButtUnited Kingdom2026-06-09Buckley Miller Wright UNQUALIFIED41Ivan Magalhaes
1012Ashley D GillianUnited Kingdom2026-06-01Rousseaux, Michael Esq NEGOTIATION52Stephen Shaw
1013Mayumi P GauchoUnited Kingdom2026-05-16Benton, John B Jr NEW46Ioni Bowcher
1014Deepesh A FlosiIndia2026-06-02Feiner Bros PROPOSAL95Ioni Bowcher
1015Kaitlin X WieserRussia2026-05-21Morlong Associates QUALIFIED93Amy Elsner
1016Mujtaba T SaylorsUnited Kingdom2026-05-24Feltz Printing Service RENEWAL21Onyama Limba
1017Maria O KolmetzIndia2026-05-22Feiner Bros NEW22Bernardo Dominic
1018Jennifer X DilliardIndia2026-06-04Chemel, James L Cpa NEW93Ivan Magalhaes
1019Wickens T IturbideItaly2026-05-22Printing Dimensions QUALIFIED52Stephen Shaw
1020Stacey D AmigonSpain2026-05-28Morlong Associates NEW24Ivan Magalhaes
1021Stacey B FigeroaItaly2026-05-19Truhlar And Truhlar Attys QUALIFIED17Ioni Bowcher
1022Cody Z StockhamCanada2026-06-06King, Christopher A Esq NEW22Ivan Magalhaes
1023Arvin S PaprockiRussia2026-06-08Printing Dimensions RENEWAL99Stephen Shaw
1024Wickens T RulapaughBrazil2026-05-21Rangoni Of Florence NEW25Xuxue Feng
1025Chavez V CaldareraArgentina2026-06-07Rangoni Of Florence QUALIFIED71Ivan Magalhaes
1026Darci D VenereBrazil2026-06-12Feiner Bros NEW77Ivan Magalhaes
1027Mujtaba X VocelkaFrance2026-06-05Morlong Associates RENEWAL44Onyama Limba
1028Clifford H SaylorsIndia2026-05-14Dorl, James J Esq NEW40Bernardo Dominic
1029Izzy S RulapaughJapan2026-05-26Chapman, Ross E Esq NEGOTIATION50Amy Elsner
1030Aruna F DilliardCanada2026-06-10Rousseaux, Michael Esq NEGOTIATION9Asiya Javayant
1031Darci X OldroydCanada2026-05-20Feltz Printing Service RENEWAL65Ivan Magalhaes
1032Stacey X NickaIndia2026-05-23Rangoni Of Florence NEW33Stephen Shaw
1033Maria O FlosiFrance2026-05-14Chapman, Ross E Esq QUALIFIED77Ivan Magalhaes
1034Cody V BowleySpain2026-06-12Dorl, James J Esq NEW23Bernardo Dominic
1035Claire X WaycottUnited Kingdom2026-05-17King, Christopher A Esq PROPOSAL86Anna Fali
1036Clifford G WaycottItaly2026-05-16Printing Dimensions QUALIFIED1Onyama Limba
1037Tony V MorascaCanada2026-05-27Benton, John B Jr QUALIFIED4Ioni Bowcher
1038Maisha Z MaletCanada2026-05-23Feltz Printing Service NEGOTIATION11Anna Fali
1039Jefferson B WaycottUnited Kingdom2026-05-26Feltz Printing Service NEW29Amy Elsner
1040Clifford X VocelkaSpain2026-05-16King, Christopher A Esq QUALIFIED97Elwin Sharvill
1041Stacey E RutaBrazil2026-05-26Commercial Press NEW98Onyama Limba
1042Jones I PerinRussia2026-05-21Commercial Press NEW50Amy Elsner
1043Clifford L StensethBrazil2026-06-08Rousseaux, Michael Esq PROPOSAL93Bernardo Dominic
1044Jennifer Y DarakjyUnited Kingdom2026-06-04Buckley Miller Wright UNQUALIFIED58Stephen Shaw
1045Kadeem H GarufiItaly2026-06-03Chanay, Jeffrey A Esq NEW58Ivan Magalhaes
1046Ashley A NickaItaly2026-05-28Rousseaux, Michael Esq PROPOSAL87Ioni Bowcher
1047Alejandro D IturbideBrazil2026-05-19Rangoni Of Florence NEW37Onyama Limba
1048Salvatore X RulapaughCanada2026-05-25Chanay, Jeffrey A Esq NEW99Bernardo Dominic
1049Faith H RutaItaly2026-06-09Truhlar And Truhlar Attys UNQUALIFIED61Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aika S PerinSpainAmy Elsner RENEWAL
Aika A RutaJapanIvan Magalhaes PROPOSAL
Aruna V SlusarskiArgentinaIvan Magalhaes PROPOSAL
Maisha M StensethCanadaElwin Sharvill QUALIFIED
Smith U DarakjyArgentinaAsiya Javayant UNQUALIFIED
Izzy H ShinkoRussiaElwin Sharvill NEGOTIATION
Munro I PaprockiRussiaStephen Shaw PROPOSAL
Darci W DarakjyGermanyOnyama Limba QUALIFIED
Nicolas F KuskoGermanyAnna Fali UNQUALIFIED
Aika R CaudyUnited KingdomAnna Fali PROPOSAL
Morrow V DilliardArgentinaIoni Bowcher QUALIFIED
Ivar I MaletFranceStephen Shaw NEW
Clifford W GauchoFranceStephen Shaw NEW
David Y RulapaughItalyAmy Elsner PROPOSAL
Ashley C WaycottItalyIvan Magalhaes PROPOSAL
Ivar U NestleItalyElwin Sharvill UNQUALIFIED
Murillo Q VenereCanadaXuxue Feng NEW
Greenwood Q NestleIndiaStephen Shaw UNQUALIFIED
Greenwood M VenereArgentinaBernardo Dominic QUALIFIED
Jeanfrancois F CaudyItalyAmy Elsner UNQUALIFIED
Jeanfrancois H PerinUnited KingdomElwin Sharvill NEW
Arvin W RimCanadaAsiya Javayant QUALIFIED
Tony X NickaAustraliaStephen Shaw NEGOTIATION
Octavia U VenereAustraliaIvan Magalhaes UNQUALIFIED
Aditya S MorascaFranceStephen Shaw NEGOTIATION
Maria E ShinkoAustraliaAsiya Javayant QUALIFIED
Emily Z CampainUnited KingdomAnna Fali UNQUALIFIED
Murillo C PerinIndiaIvan Magalhaes QUALIFIED
Tony C StensethArgentinaStephen Shaw PROPOSAL
Aditya D ShinkoSpainIoni Bowcher RENEWAL
Mujtaba F AmigonItalyAnna Fali RENEWAL
Rodrigues I ShinkoSpainOnyama Limba UNQUALIFIED
Alejandro O WhobreyAustraliaStephen Shaw NEGOTIATION
Emily V CaudyArgentinaOnyama Limba NEW
Johnson Z PaprockiArgentinaAnna Fali UNQUALIFIED
Smith T BowleyFranceIvan Magalhaes RENEWAL
Jeanfrancois E AlbaresAustraliaIvan Magalhaes UNQUALIFIED
Claire U SlusarskiArgentinaAnna Fali NEW
Salvatore E OldroydUnited KingdomOnyama Limba NEGOTIATION
Jennifer V WhobreyJapanIoni Bowcher QUALIFIED
Julie K OstroskyBrazilAmy Elsner UNQUALIFIED
Jeanfrancois P RulapaughFranceBernardo Dominic UNQUALIFIED
Murillo P SergiCanadaAnna Fali UNQUALIFIED
Wickens D OldroydUnited KingdomBernardo Dominic RENEWAL
Antonio W IturbideItalyIoni Bowcher RENEWAL
Aditya O WhobreyBrazilElwin Sharvill UNQUALIFIED
Smith C ChuiItalyIoni Bowcher NEW
Nicolas S RulapaughUnited KingdomAmy Elsner NEGOTIATION
Ashley M BriddickArgentinaStephen Shaw QUALIFIED
Alejandro Y FollerSpainIoni Bowcher QUALIFIED
Frozen Columns
Name
Aditya C Poquette
Claire Q Rulapaugh
Greenwood M Oldroyd
Wickens L Bowley
Aruna C Rulapaugh
Arvin R Poquette
Arvin C Bowley
Kaitlin E Caudy
Darci B Tollner
Deepesh M Whobrey
Stacey O Amigon
Misaki M Bolognia
Jennifer D Perin
Murillo U Bolognia
Leja I Glick
Smith E Vocelka
David T Kusko
Darci G Glick
Tony Q Caldarera
Johnson B Amigon
Munro M Vocelka
Isabel N Marrier
Ashley E Malet
Clifford M Oldroyd
Morrow T Ostrosky
Silvio B Tollner
Mayumi A Venere
Aika C Darakjy
Kaitlin L Royster
Izzy P Waycott
Alejandro W Butt
Alejandro X Bolognia
Leja Y Venere
Clifford I Schemmer
Claire G Stenseth
Alejandro T Royster
Clifford S Saylors
Johnson R Shinko
Adams R Bolognia
Ivar J Oldroyd
Alejandro H Bowley
James U Poquette
Jennifer U Garufi
Chavez A Tollner
Greenwood W Amigon
Johnson G Dilliard
Wickens F Slusarski
Arvin Y Amigon
Mujtaba Z Ruta
Rodrigues E Dilliard
IdCountryDate
1000France2026-06-11
1001India2026-05-20
1002India2026-05-20
1003Italy2026-06-08
1004Russia2026-05-19
1005Canada2026-05-21
1006France2026-05-15
1007Brazil2026-05-22
1008Russia2026-05-29
1009Russia2026-06-03
1010Germany2026-05-24
1011Australia2026-05-17
1012France2026-05-21
1013Argentina2026-06-11
1014Germany2026-06-03
1015Italy2026-06-01
1016Japan2026-05-24
1017Japan2026-06-12
1018Canada2026-06-12
1019Italy2026-06-06
1020United Kingdom2026-06-05
1021Spain2026-05-28
1022Brazil2026-06-12
1023Russia2026-06-04
1024Italy2026-05-22
1025Japan2026-05-21
1026Argentina2026-06-07
1027United Kingdom2026-06-02
1028Spain2026-06-01
1029Germany2026-06-12
1030Australia2026-06-05
1031Japan2026-05-23
1032Italy2026-05-29
1033India2026-06-11
1034Japan2026-05-19
1035France2026-05-19
1036United Kingdom2026-05-29
1037Brazil2026-06-02
1038Japan2026-06-08
1039Argentina2026-05-18
1040Germany2026-06-02
1041United Kingdom2026-06-09
1042France2026-06-09
1043India2026-06-05
1044Argentina2026-06-01
1045Germany2026-06-11
1046Spain2026-05-15
1047Italy2026-05-16
1048France2026-06-05
1049Japan2026-06-09

On-Demand Data

NameIdCountryDate
Sinclair F Caldarera1000India2026-05-24
Greenwood G Whobrey1001France2026-06-07
Kadeem J Doe1002Australia2026-05-20
Nicolas K Caudy1003Canada2026-05-27
Rodrigues Q Amigon1004France2026-06-03
Aika T Malet1005Brazil2026-05-15
Silvio S Shinko1006Italy2026-05-30
Emily E Stenseth1007France2026-05-16
Costa W Chui1008Brazil2026-05-15
Mujtaba O Venere1009Japan2026-05-14
Leon H Flosi1010United Kingdom2026-06-10
Mayumi B Garufi1011Germany2026-05-29
Clifford W Flosi1012India2026-06-10
James B Vocelka1013Argentina2026-05-27
Stacey Y Kusko1014United Kingdom2026-06-09
Nicolas Z Figeroa1015United Kingdom2026-05-14
Francesco Z Malet1016India2026-05-18
Kadeem P Gillian1017Canada2026-05-21
Izzy Q Vocelka1018Japan2026-06-04
Julie S Nicka1019France2026-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio R DilliardBrazilAmy Elsner NEGOTIATION
Greenwood I StockhamIndiaStephen Shaw QUALIFIED
Greenwood Y CaldareraAustraliaElwin Sharvill NEW
Leja C TollnerArgentinaAnna Fali NEW
Tony S StensethAustraliaElwin Sharvill NEW
Munro C GillianRussiaAnna Fali QUALIFIED
Julie A AmigonArgentinaAmy Elsner UNQUALIFIED
Julie C RimSpainOnyama Limba QUALIFIED
Stacey D BologniaJapanAsiya Javayant RENEWAL
Darci D FerenczBrazilXuxue Feng PROPOSAL
Deepesh U RimIndiaAmy Elsner NEGOTIATION
Costa X WhobreyFranceOnyama Limba NEGOTIATION
Ricardo V FlosiJapanOnyama Limba NEGOTIATION
Smith R MaletFranceAsiya Javayant NEGOTIATION
Aika S OstroskyArgentinaElwin Sharvill UNQUALIFIED
Julie T IturbideSpainAsiya Javayant NEGOTIATION
Chavez L BriddickJapanStephen Shaw NEGOTIATION
Emily L BowleyItalyIvan Magalhaes NEW
Maria W DarakjyBrazilElwin Sharvill NEGOTIATION
Maisha O OstroskyIndiaStephen Shaw NEW
Nicolas D BologniaBrazilAnna Fali PROPOSAL
Kaitlin V BologniaRussiaIoni Bowcher NEGOTIATION
Costa V VenereAustraliaStephen Shaw RENEWAL
Adams O OldroydCanadaOnyama Limba RENEWAL
Greenwood T WieserIndiaAsiya Javayant NEW
Julie X AlbaresSpainBernardo Dominic QUALIFIED
Julie M ChuiFranceIvan Magalhaes RENEWAL
Aruna L BologniaBrazilOnyama Limba UNQUALIFIED
Francesco O WhobreyCanadaIoni Bowcher UNQUALIFIED
Mayumi S KuskoGermanyIvan Magalhaes UNQUALIFIED
Leon K RutaSpainAmy Elsner NEW
Sinclair O GillianBrazilElwin Sharvill NEGOTIATION
Wickens H InouyeArgentinaOnyama Limba QUALIFIED
Ivar F GarufiItalyBernardo Dominic RENEWAL
Deepesh Z FlosiJapanIvan Magalhaes UNQUALIFIED
Kaitlin E CaldareraItalyAsiya Javayant QUALIFIED
Maria L MaletRussiaElwin Sharvill RENEWAL
Ricardo T GillianAustraliaAmy Elsner NEW
Emily Y RimUnited KingdomIvan Magalhaes RENEWAL
Faith M BowleyJapanOnyama Limba UNQUALIFIED

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