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
Johnson J AlbaresIndiaIvan Magalhaes QUALIFIED
Rodrigues Z VenereJapanIvan Magalhaes UNQUALIFIED
Mujtaba B AlbaresGermanyXuxue Feng PROPOSAL
Ivar J DarakjyFranceStephen Shaw PROPOSAL
Wickens N MacleadUnited KingdomAmy Elsner QUALIFIED
Mujtaba D PoquetteJapanAnna Fali UNQUALIFIED
James Z GarufiUnited KingdomAmy Elsner NEGOTIATION
Maria R FlosiBrazilXuxue Feng NEGOTIATION
Jeanfrancois T BologniaBrazilBernardo Dominic UNQUALIFIED
Chavez G SergiFranceAnna Fali QUALIFIED
Arvin X BologniaItalyIoni Bowcher UNQUALIFIED
Sinclair V AlbaresFranceElwin Sharvill NEW
Morrow N WaycottIndiaAsiya Javayant NEW
Chavez Y NestleItalyIoni Bowcher QUALIFIED
Maisha M TollnerRussiaBernardo Dominic PROPOSAL
Maisha P ShinkoBrazilAsiya Javayant UNQUALIFIED
Mujtaba V SlusarskiRussiaAmy Elsner NEW
Stacey Y WieserUnited KingdomStephen Shaw PROPOSAL
Aditya T BologniaAustraliaIvan Magalhaes NEW
Morrow D GlickIndiaStephen Shaw RENEWAL
Octavia Q RoysterBrazilAsiya Javayant UNQUALIFIED
Maria K FlosiAustraliaElwin Sharvill PROPOSAL
Antonio Q StensethBrazilAsiya Javayant QUALIFIED
David H ButtBrazilIoni Bowcher UNQUALIFIED
Johnson G PerinCanadaXuxue Feng QUALIFIED
Alejandro W StockhamSpainAnna Fali PROPOSAL
Deepesh X MorascaGermanyStephen Shaw UNQUALIFIED
Alejandro G OldroydBrazilAmy Elsner RENEWAL
Aruna Z FigeroaCanadaStephen Shaw UNQUALIFIED
Tony F SaylorsGermanyStephen Shaw NEGOTIATION
Darci A IturbideIndiaStephen Shaw UNQUALIFIED
Wickens M GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Ivar J VenereFranceStephen Shaw QUALIFIED
Kaitlin Q NickaItalyIvan Magalhaes NEW
Ricardo W InouyeIndiaAmy Elsner RENEWAL
Mujtaba K KolmetzBrazilElwin Sharvill RENEWAL
Leon I CampainGermanyAmy Elsner NEW
Jennifer J KolmetzCanadaAnna Fali NEGOTIATION
Isabel W DilliardArgentinaXuxue Feng PROPOSAL
Chavez Y BowleyRussiaStephen Shaw NEGOTIATION
Jennifer G MarrierItalyAmy Elsner RENEWAL
Greenwood F SergiCanadaAmy Elsner QUALIFIED
Nicolas R CaudyBrazilBernardo Dominic NEW
Leon H FigeroaBrazilAmy Elsner NEW
Aruna Z SlusarskiJapanIvan Magalhaes NEW
Maisha G TollnerItalyBernardo Dominic RENEWAL
Ivar G TollnerRussiaAsiya Javayant NEGOTIATION
Ricardo A StockhamAustraliaIvan Magalhaes RENEWAL
Nicolas T IturbideFranceAnna Fali QUALIFIED
Misaki E ChuiItalyOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody O MorascaBrazilBernardo Dominic RENEWAL
Jeanfrancois V FlosiArgentinaStephen Shaw NEGOTIATION
Jefferson M WaycottAustraliaAmy Elsner PROPOSAL
Sinclair P OldroydCanadaIvan Magalhaes QUALIFIED
Claire H RimGermanyAmy Elsner NEGOTIATION
Jefferson K StockhamUnited KingdomXuxue Feng QUALIFIED
Clifford I SergiFranceIvan Magalhaes NEGOTIATION
Mayumi Y BriddickRussiaIoni Bowcher UNQUALIFIED
Morrow S WaycottSpainOnyama Limba NEGOTIATION
Francesco F NickaBrazilIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar N SaylorsItaly2026-03-16Morlong Associates QUALIFIED87Anna Fali
1001Rodrigues R GarufiItaly2026-03-14Feiner Bros RENEWAL61Stephen Shaw
1002Tony Z FollerUnited Kingdom2026-03-31Commercial Press PROPOSAL52Anna Fali
1003Johnson M MaletIndia2026-04-06Chapman, Ross E Esq UNQUALIFIED17Elwin Sharvill
1004Clifford V FollerCanada2026-04-01Dorl, James J Esq NEW86Asiya Javayant
1005Jones V FlosiGermany2026-03-31Benton, John B Jr NEW74Bernardo Dominic
1006Mujtaba C ChuiArgentina2026-04-09Commercial Press RENEWAL99Anna Fali
1007Leja X MaletAustralia2026-03-22King, Christopher A Esq PROPOSAL15Ivan Magalhaes
1008Jennifer T VenereFrance2026-03-15Commercial Press UNQUALIFIED47Xuxue Feng
1009Johnson C ShinkoCanada2026-04-09Rousseaux, Michael Esq NEGOTIATION5Ivan Magalhaes
1010Munro V ButtSpain2026-04-04Printing Dimensions NEW28Xuxue Feng
1011Aruna E ButtItaly2026-03-13Benton, John B Jr NEGOTIATION12Amy Elsner
1012Darci U GarufiItaly2026-03-29King, Christopher A Esq RENEWAL64Ivan Magalhaes
1013James V MacleadIndia2026-03-26Benton, John B Jr RENEWAL86Ioni Bowcher
1014Jeanfrancois V RoysterUnited Kingdom2026-03-28Feltz Printing Service NEGOTIATION96Asiya Javayant
1015Morrow G GillianRussia2026-03-28Feltz Printing Service QUALIFIED87Bernardo Dominic
1016Smith U OldroydSpain2026-03-18Chanay, Jeffrey A Esq QUALIFIED91Asiya Javayant
1017Ivar Y PerinJapan2026-03-20Feltz Printing Service PROPOSAL44Amy Elsner
1018Deepesh L VenereUnited Kingdom2026-03-19King, Christopher A Esq PROPOSAL83Anna Fali
1019Izzy T ChuiSpain2026-03-29Morlong Associates NEW8Anna Fali
1020Jeanfrancois Y FollerGermany2026-03-18Chanay, Jeffrey A Esq UNQUALIFIED37Bernardo Dominic
1021Octavia F SergiArgentina2026-04-10Buckley Miller Wright RENEWAL52Amy Elsner
1022Arvin M RoysterCanada2026-03-28Rousseaux, Michael Esq PROPOSAL24Onyama Limba
1023Faith T AmigonJapan2026-04-08King, Christopher A Esq RENEWAL98Stephen Shaw
1024Ashley U PoquetteCanada2026-03-24Printing Dimensions NEGOTIATION28Ivan Magalhaes
1025Morrow G StensethAustralia2026-03-31Chanay, Jeffrey A Esq PROPOSAL13Amy Elsner
1026Adams Z CaldareraRussia2026-04-04Chanay, Jeffrey A Esq NEW55Anna Fali
1027Jefferson O GauchoFrance2026-03-21Commercial Press NEGOTIATION18Stephen Shaw
1028Emily A GlickRussia2026-03-18Benton, John B Jr NEW69Asiya Javayant
1029Aruna I BowleyFrance2026-03-30Truhlar And Truhlar Attys UNQUALIFIED95Stephen Shaw
1030Tony O FollerRussia2026-03-31Feiner Bros PROPOSAL78Anna Fali
1031Mayumi U OldroydBrazil2026-03-26Chemel, James L Cpa RENEWAL39Anna Fali
1032Salvatore X IturbideGermany2026-03-21Chanay, Jeffrey A Esq RENEWAL37Elwin Sharvill
1033Adams Z OstroskyItaly2026-03-31Commercial Press NEW71Ivan Magalhaes
1034Ivar D GillianSpain2026-04-02Truhlar And Truhlar Attys NEW67Stephen Shaw
1035Silvio O DarakjyGermany2026-04-03Chemel, James L Cpa PROPOSAL18Ioni Bowcher
1036Adams P FollerSpain2026-03-31Rangoni Of Florence QUALIFIED12Stephen Shaw
1037Ricardo Q GlickItaly2026-03-27Chanay, Jeffrey A Esq NEW74Elwin Sharvill
1038Cody C BriddickFrance2026-04-03Feltz Printing Service UNQUALIFIED61Ivan Magalhaes
1039Antonio H CaudySpain2026-03-25Rangoni Of Florence PROPOSAL93Ivan Magalhaes
1040Morrow P SlusarskiUnited Kingdom2026-04-07Chemel, James L Cpa PROPOSAL32Bernardo Dominic
1041Silvio Q WieserBrazil2026-03-18Buckley Miller Wright NEGOTIATION48Bernardo Dominic
1042Francesco G CaudyBrazil2026-04-02Feiner Bros QUALIFIED64Bernardo Dominic
1043Francesco M SchemmerFrance2026-03-15Dorl, James J Esq NEGOTIATION34Onyama Limba
1044Antonio I BowleyAustralia2026-03-23Chapman, Ross E Esq NEGOTIATION2Bernardo Dominic
1045Deepesh O FigeroaItaly2026-03-31Printing Dimensions PROPOSAL92Stephen Shaw
1046Salvatore E NestleIndia2026-03-21Feiner Bros QUALIFIED56Asiya Javayant
1047Smith V NestleGermany2026-03-23Truhlar And Truhlar Attys NEGOTIATION8Ioni Bowcher
1048Isabel I MaletAustralia2026-03-14Feiner Bros UNQUALIFIED12Ivan Magalhaes
1049Kadeem O AmigonIndia2026-03-22Chemel, James L Cpa UNQUALIFIED9Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Wickens R StensethRussiaIvan Magalhaes QUALIFIED
James W ShinkoUnited KingdomElwin Sharvill PROPOSAL
Cody Y RoysterAustraliaXuxue Feng UNQUALIFIED
Stacey G WhobreyAustraliaStephen Shaw UNQUALIFIED
Juan N RulapaughCanadaStephen Shaw PROPOSAL
Jones P AmigonAustraliaIoni Bowcher NEW
Silvio K KolmetzArgentinaAsiya Javayant PROPOSAL
Octavia X MarrierUnited KingdomAsiya Javayant RENEWAL
Juan D WaycottSpainIoni Bowcher RENEWAL
Juan V GauchoItalyAnna Fali NEGOTIATION
Arvin S AmigonSpainAmy Elsner PROPOSAL
Nicolas H SaylorsBrazilStephen Shaw PROPOSAL
Misaki A SaylorsIndiaAsiya Javayant PROPOSAL
Darci N PaprockiSpainOnyama Limba RENEWAL
David V AmigonRussiaIoni Bowcher QUALIFIED
Izzy F MacleadAustraliaIvan Magalhaes NEGOTIATION
Mujtaba I VocelkaSpainIvan Magalhaes NEGOTIATION
Claire A StensethIndiaOnyama Limba QUALIFIED
Arvin S GlickItalyAsiya Javayant PROPOSAL
Leja R KuskoSpainAsiya Javayant QUALIFIED
Francesco Q CaudyFranceIvan Magalhaes NEW
Leon B StensethArgentinaAmy Elsner UNQUALIFIED
David A MacleadIndiaIvan Magalhaes NEGOTIATION
Cody O SchemmerJapanAsiya Javayant QUALIFIED
Tony L WhobreyAustraliaElwin Sharvill QUALIFIED
Silvio Q ButtArgentinaAsiya Javayant RENEWAL
Salvatore Y MorascaCanadaOnyama Limba QUALIFIED
Aika J FlosiBrazilOnyama Limba PROPOSAL
Stacey L SchemmerIndiaAnna Fali UNQUALIFIED
Emily N MacleadGermanyXuxue Feng NEGOTIATION
Isabel I KolmetzSpainAmy Elsner NEW
Sinclair Q OstroskySpainAmy Elsner NEW
Isabel F GillianRussiaOnyama Limba RENEWAL
Maisha A OldroydRussiaOnyama Limba NEGOTIATION
Smith P RimItalyAnna Fali QUALIFIED
Silvio G MorascaIndiaBernardo Dominic UNQUALIFIED
Munro D ButtGermanyIvan Magalhaes QUALIFIED
Leja J SaylorsSpainAsiya Javayant NEGOTIATION
Tony E WaycottGermanyOnyama Limba NEW
Nicolas V FlosiGermanyIvan Magalhaes UNQUALIFIED
Jefferson I RimUnited KingdomXuxue Feng NEW
Wickens X CaudyItalyAnna Fali QUALIFIED
Mujtaba M BowleyIndiaBernardo Dominic NEW
Clifford P BriddickCanadaAnna Fali PROPOSAL
Jennifer Z KolmetzSpainOnyama Limba RENEWAL
Leon J PerinIndiaIoni Bowcher QUALIFIED
James A MaletUnited KingdomAsiya Javayant NEGOTIATION
Aditya T GarufiJapanOnyama Limba NEW
Leon M BologniaRussiaStephen Shaw QUALIFIED
Smith E BowleyJapanOnyama Limba UNQUALIFIED
Frozen Columns
Name
Octavia U Vocelka
Francesco B Caudy
Munro T Schemmer
Ashley T Slusarski
Munro G Royster
Mujtaba U Chui
Alejandro R Stenseth
Maisha T Tollner
Rodrigues U Flosi
Faith S Doe
Silvio I Shinko
Antonio K Waycott
Cody K Malet
Morrow Q Briddick
Antonio S Iturbide
Aika Z Whobrey
Costa V Ostrosky
Ashley I Campain
Juan G Albares
Kadeem Q Bowley
Kadeem I Shinko
Ashley C Dilliard
Chavez W Iturbide
Smith X Nicka
Leon J Amigon
Aruna N Glick
Maria L Briddick
Claire T Chui
Aika I Ferencz
Alejandro C Bolognia
Greenwood W Butt
Leon W Paprocki
Rodrigues G Briddick
Deepesh I Marrier
Rodrigues L Iturbide
Nicolas M Kusko
Smith V Campain
Leja T Perin
Juan S Tollner
Ashley A Bolognia
Wickens J Foller
Jefferson Z Wieser
Maisha B Rulapaugh
Jennifer P Wieser
Ricardo G Schemmer
Jennifer G Amigon
Johnson I Gaucho
Mayumi L Malet
Leja N Saylors
Sinclair B Wieser
IdCountryDate
1000Australia2026-03-12
1001Australia2026-03-23
1002France2026-04-10
1003Argentina2026-03-16
1004Argentina2026-03-16
1005Canada2026-03-31
1006Brazil2026-04-10
1007India2026-03-18
1008Russia2026-03-21
1009France2026-03-21
1010Russia2026-03-28
1011Canada2026-04-06
1012Argentina2026-03-24
1013Japan2026-03-24
1014Brazil2026-03-29
1015Canada2026-03-24
1016India2026-03-29
1017United Kingdom2026-03-24
1018Russia2026-03-26
1019Germany2026-03-14
1020Argentina2026-03-21
1021Russia2026-03-31
1022Brazil2026-03-22
1023Brazil2026-03-24
1024Argentina2026-04-09
1025Germany2026-04-07
1026United Kingdom2026-03-14
1027Russia2026-03-30
1028Spain2026-04-01
1029Spain2026-03-24
1030Argentina2026-03-27
1031France2026-03-14
1032India2026-04-01
1033Canada2026-04-09
1034India2026-04-08
1035United Kingdom2026-04-06
1036Italy2026-03-16
1037Argentina2026-03-12
1038Argentina2026-03-19
1039Brazil2026-03-25
1040India2026-03-20
1041France2026-03-13
1042France2026-03-27
1043Germany2026-03-21
1044Germany2026-03-16
1045Australia2026-03-28
1046Canada2026-03-23
1047Canada2026-03-14
1048Canada2026-03-31
1049Spain2026-04-04

On-Demand Data

NameIdCountryDate
Arvin A Ruta1000Germany2026-03-25
Julie Z Tollner1001Brazil2026-04-02
Darci E Ostrosky1002Australia2026-03-24
James E Albares1003India2026-04-03
Smith M Royster1004Canada2026-04-09
Emily E Saylors1005Italy2026-03-27
Kaitlin K Caudy1006India2026-04-07
Greenwood N Nicka1007India2026-03-28
Sinclair I Stockham1008Canada2026-03-25
Darci M Sergi1009France2026-03-24
Maisha X Albares1010Canada2026-04-09
Kadeem P Kusko1011Germany2026-04-01
Munro L Royster1012Spain2026-03-21
Tony T Caudy1013Argentina2026-03-25
James E Briddick1014France2026-03-27
Deepesh W Briddick1015United Kingdom2026-03-13
Silvio U Flosi1016Brazil2026-03-19
Faith H Ferencz1017Germany2026-04-10
Salvatore M Amigon1018Argentina2026-04-04
Faith M Rim1019Australia2026-03-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel M DarakjyAustraliaIvan Magalhaes UNQUALIFIED
Murillo P BologniaJapanIvan Magalhaes QUALIFIED
Mayumi J GarufiIndiaElwin Sharvill UNQUALIFIED
Costa M InouyeBrazilBernardo Dominic NEGOTIATION
Rodrigues V OstroskyCanadaIoni Bowcher RENEWAL
Francesco G MorascaIndiaIvan Magalhaes RENEWAL
Costa B DilliardRussiaXuxue Feng NEW
Ivar S MorascaItalyAmy Elsner PROPOSAL
James V StockhamSpainAmy Elsner NEW
Tony C FlosiUnited KingdomAmy Elsner UNQUALIFIED
Maria S PaprockiGermanyAmy Elsner NEGOTIATION
Maria Y DarakjyGermanyElwin Sharvill QUALIFIED
Deepesh D VenereCanadaXuxue Feng UNQUALIFIED
Julie W MorascaAustraliaIvan Magalhaes UNQUALIFIED
Aditya O VocelkaCanadaAnna Fali PROPOSAL
Aruna Q StockhamArgentinaAsiya Javayant PROPOSAL
Salvatore S WhobreyItalyIvan Magalhaes PROPOSAL
Murillo E RulapaughIndiaAmy Elsner UNQUALIFIED
Chavez W GarufiFranceAmy Elsner QUALIFIED
Alejandro X ButtBrazilElwin Sharvill NEW
James Q DarakjyFranceIoni Bowcher NEW
Izzy A GauchoAustraliaAsiya Javayant QUALIFIED
Jones K InouyeCanadaAmy Elsner NEGOTIATION
Ricardo P SchemmerIndiaStephen Shaw QUALIFIED
Nicolas I CaldareraArgentinaStephen Shaw RENEWAL
Julie H BologniaJapanAnna Fali PROPOSAL
Aditya V KuskoRussiaAmy Elsner QUALIFIED
Ashley V StensethRussiaAmy Elsner UNQUALIFIED
Clifford U WieserFranceAsiya Javayant NEGOTIATION
Cody N FlosiJapanAsiya Javayant UNQUALIFIED
Murillo G RutaRussiaAmy Elsner NEW
Munro V ButtAustraliaElwin Sharvill NEW
Cody O WaycottCanadaXuxue Feng PROPOSAL
Juan Q SergiCanadaBernardo Dominic NEW
Ivar S RutaAustraliaIoni Bowcher NEGOTIATION
Chavez T OstroskyRussiaOnyama Limba NEW
Cody X FigeroaCanadaOnyama Limba PROPOSAL
Johnson O GauchoCanadaElwin Sharvill NEGOTIATION
Francesco U MacleadUnited KingdomXuxue Feng NEW
Alejandro Z InouyeJapanStephen Shaw 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.