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
Aditya H CampainUnited KingdomElwin Sharvill NEGOTIATION
Jefferson T OstroskyArgentinaIvan Magalhaes QUALIFIED
Ashley C GlickBrazilOnyama Limba RENEWAL
Faith C VenereUnited KingdomBernardo Dominic NEW
Wickens I IturbideSpainAnna Fali QUALIFIED
Clifford D PaprockiAustraliaAnna Fali NEGOTIATION
Salvatore U PaprockiBrazilOnyama Limba QUALIFIED
Alejandro U GillianUnited KingdomElwin Sharvill UNQUALIFIED
Tony L PerinSpainOnyama Limba PROPOSAL
Francesco S FollerIndiaIoni Bowcher QUALIFIED
Kaitlin D MorascaIndiaStephen Shaw UNQUALIFIED
Nicolas T AmigonSpainElwin Sharvill NEGOTIATION
Jones L PaprockiUnited KingdomIvan Magalhaes NEW
Ivar Q WhobreyBrazilIvan Magalhaes RENEWAL
Arvin Q MorascaIndiaElwin Sharvill RENEWAL
Antonio P IturbideIndiaIvan Magalhaes NEW
Faith M IturbideItalyIoni Bowcher PROPOSAL
Greenwood J GlickCanadaOnyama Limba RENEWAL
Cody X BologniaCanadaIoni Bowcher RENEWAL
Arvin I MacleadSpainXuxue Feng UNQUALIFIED
Emily S TollnerFranceOnyama Limba NEGOTIATION
Juan O WhobreySpainOnyama Limba UNQUALIFIED
Isabel Q MaletGermanyIvan Magalhaes UNQUALIFIED
Silvio P VocelkaUnited KingdomOnyama Limba NEGOTIATION
Munro L WaycottGermanyBernardo Dominic NEGOTIATION
Ricardo M CaudyCanadaAnna Fali NEW
Faith Y WhobreyFranceXuxue Feng PROPOSAL
Aditya Q VocelkaGermanyIvan Magalhaes NEW
Aika Y WaycottRussiaAsiya Javayant NEGOTIATION
Nicolas U StensethItalyAnna Fali NEGOTIATION
Emily X ButtIndiaIvan Magalhaes QUALIFIED
Aika V DoeCanadaXuxue Feng PROPOSAL
Julie V SergiJapanAnna Fali NEGOTIATION
Faith M BowleyBrazilOnyama Limba UNQUALIFIED
Alejandro J DarakjyGermanyOnyama Limba PROPOSAL
Silvio T PerinGermanyAsiya Javayant QUALIFIED
Jennifer V KolmetzSpainStephen Shaw PROPOSAL
Leja M OstroskyItalyIoni Bowcher NEGOTIATION
Adams A BriddickUnited KingdomElwin Sharvill PROPOSAL
Antonio F OstroskyCanadaElwin Sharvill UNQUALIFIED
Chavez I KolmetzGermanyIvan Magalhaes RENEWAL
Silvio I BologniaItalyAnna Fali UNQUALIFIED
Ivar H FollerArgentinaElwin Sharvill QUALIFIED
Julie S ButtGermanyElwin Sharvill UNQUALIFIED
Jennifer T CaudyIndiaBernardo Dominic NEW
Aika P VocelkaCanadaAnna Fali RENEWAL
Kadeem J TollnerAustraliaBernardo Dominic UNQUALIFIED
Tony U TollnerUnited KingdomAmy Elsner NEGOTIATION
Ricardo P FlosiBrazilIoni Bowcher NEGOTIATION
Claire O MarrierUnited KingdomElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria E FlosiJapanIvan Magalhaes NEGOTIATION
James E AmigonCanadaStephen Shaw QUALIFIED
Darci R VocelkaAustraliaAsiya Javayant UNQUALIFIED
Jeanfrancois V SlusarskiCanadaBernardo Dominic NEGOTIATION
Mujtaba J SlusarskiAustraliaStephen Shaw RENEWAL
Morrow N NestleAustraliaOnyama Limba RENEWAL
Ricardo A PerinUnited KingdomAmy Elsner PROPOSAL
Faith S NestleBrazilXuxue Feng QUALIFIED
Emily R NickaItalyElwin Sharvill PROPOSAL
Juan K GlickArgentinaStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez X DilliardItaly2026-06-04Truhlar And Truhlar Attys NEW2Stephen Shaw
1001Julie W WaycottRussia2026-05-16Dorl, James J Esq UNQUALIFIED13Asiya Javayant
1002Ashley N VenereFrance2026-06-04Commercial Press RENEWAL34Amy Elsner
1003Deepesh P FlosiUnited Kingdom2026-05-25Benton, John B Jr NEW22Elwin Sharvill
1004Leja C TollnerFrance2026-06-04Truhlar And Truhlar Attys PROPOSAL15Elwin Sharvill
1005Francesco Y MaletCanada2026-06-04Rousseaux, Michael Esq PROPOSAL73Xuxue Feng
1006Alejandro Z RutaIndia2026-05-16Chanay, Jeffrey A Esq UNQUALIFIED89Onyama Limba
1007Octavia E AlbaresCanada2026-05-22Chapman, Ross E Esq NEW63Ivan Magalhaes
1008Sinclair O FigeroaBrazil2026-06-02Feltz Printing Service UNQUALIFIED6Xuxue Feng
1009Octavia O SaylorsSpain2026-06-01Benton, John B Jr RENEWAL38Anna Fali
1010Kaitlin G RulapaughCanada2026-05-11Morlong Associates PROPOSAL81Stephen Shaw
1011Izzy L NickaJapan2026-05-26Buckley Miller Wright UNQUALIFIED73Anna Fali
1012Faith R KolmetzUnited Kingdom2026-06-03Chapman, Ross E Esq QUALIFIED45Asiya Javayant
1013Cody P DilliardCanada2026-05-31Feltz Printing Service NEGOTIATION94Xuxue Feng
1014Leon I AlbaresSpain2026-05-19Commercial Press NEGOTIATION69Ioni Bowcher
1015Salvatore X AlbaresIndia2026-05-30Chanay, Jeffrey A Esq UNQUALIFIED9Xuxue Feng
1016Greenwood D FlosiFrance2026-06-02Rangoni Of Florence RENEWAL69Anna Fali
1017Ricardo V NestleSpain2026-05-27Commercial Press PROPOSAL13Asiya Javayant
1018Maisha O SergiGermany2026-06-01Commercial Press RENEWAL65Anna Fali
1019Cody U SchemmerRussia2026-05-19King, Christopher A Esq RENEWAL30Amy Elsner
1020Octavia B TollnerCanada2026-06-02Buckley Miller Wright PROPOSAL18Bernardo Dominic
1021Stacey B AlbaresAustralia2026-05-24Rangoni Of Florence NEW66Ivan Magalhaes
1022Faith D CaldareraJapan2026-05-29Printing Dimensions QUALIFIED17Ivan Magalhaes
1023Julie M DilliardGermany2026-05-18Commercial Press NEGOTIATION68Onyama Limba
1024Aika H MaletIndia2026-05-15Chanay, Jeffrey A Esq NEW55Amy Elsner
1025Ricardo S FerenczFrance2026-05-07Dorl, James J Esq NEGOTIATION8Asiya Javayant
1026David W PerinBrazil2026-05-22Morlong Associates RENEWAL72Stephen Shaw
1027Jefferson H BologniaFrance2026-05-25King, Christopher A Esq UNQUALIFIED81Xuxue Feng
1028Antonio I StensethRussia2026-05-15Printing Dimensions QUALIFIED23Ivan Magalhaes
1029Silvio X GarufiCanada2026-05-10Benton, John B Jr PROPOSAL76Stephen Shaw
1030Johnson J FlosiJapan2026-05-18Feltz Printing Service UNQUALIFIED75Bernardo Dominic
1031Aika M CaudyItaly2026-05-11Rousseaux, Michael Esq PROPOSAL21Ioni Bowcher
1032Octavia B RutaJapan2026-06-02Rousseaux, Michael Esq QUALIFIED99Asiya Javayant
1033Julie Z RulapaughAustralia2026-05-25Feltz Printing Service NEGOTIATION41Bernardo Dominic
1034Ricardo Q FlosiAustralia2026-05-25Dorl, James J Esq NEGOTIATION64Elwin Sharvill
1035Clifford E GlickJapan2026-05-10King, Christopher A Esq PROPOSAL91Bernardo Dominic
1036Octavia C VenereArgentina2026-05-08Feltz Printing Service RENEWAL39Asiya Javayant
1037Octavia W BowleyItaly2026-05-15Benton, John B Jr UNQUALIFIED88Stephen Shaw
1038Kaitlin J MaletGermany2026-05-25Commercial Press NEGOTIATION70Stephen Shaw
1039Salvatore Z InouyeGermany2026-05-14Buckley Miller Wright RENEWAL72Bernardo Dominic
1040Aika E GarufiFrance2026-06-01King, Christopher A Esq NEGOTIATION8Stephen Shaw
1041Smith V BriddickJapan2026-05-17Printing Dimensions RENEWAL85Bernardo Dominic
1042Octavia T KolmetzRussia2026-05-21Buckley Miller Wright QUALIFIED43Anna Fali
1043Aditya H BowleyAustralia2026-05-18Feiner Bros RENEWAL56Anna Fali
1044Aruna Y CaudyBrazil2026-05-28Chemel, James L Cpa NEGOTIATION96Ivan Magalhaes
1045Isabel B GarufiUnited Kingdom2026-05-23Chapman, Ross E Esq PROPOSAL82Ivan Magalhaes
1046Morrow C CaudyRussia2026-05-06Chemel, James L Cpa NEW23Anna Fali
1047Mayumi V ButtRussia2026-05-10Rousseaux, Michael Esq NEGOTIATION0Elwin Sharvill
1048Aditya H KolmetzFrance2026-05-09Feiner Bros NEGOTIATION92Onyama Limba
1049Jeanfrancois Z PoquetteIndia2026-05-17Feltz Printing Service NEW17Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Francesco F MacleadJapanAnna Fali NEGOTIATION
Claire T BologniaArgentinaElwin Sharvill NEGOTIATION
Ashley O ChuiArgentinaAmy Elsner NEW
Munro P GillianRussiaIoni Bowcher QUALIFIED
Maisha W OldroydJapanBernardo Dominic NEGOTIATION
Julie M WhobreyFranceElwin Sharvill UNQUALIFIED
Chavez G WieserUnited KingdomIoni Bowcher NEGOTIATION
Darci L GillianSpainIvan Magalhaes RENEWAL
Octavia Y NickaFranceXuxue Feng NEW
Julie M GillianItalyElwin Sharvill UNQUALIFIED
James X InouyeCanadaIvan Magalhaes QUALIFIED
Jefferson K DarakjyRussiaAsiya Javayant PROPOSAL
Salvatore S DilliardAustraliaOnyama Limba PROPOSAL
Aika Y WaycottRussiaIvan Magalhaes NEW
Darci A CaudyBrazilOnyama Limba NEGOTIATION
Maisha G SaylorsAustraliaIvan Magalhaes RENEWAL
Kadeem J MacleadAustraliaIvan Magalhaes QUALIFIED
Morrow Y VenereGermanyElwin Sharvill NEGOTIATION
Faith O ShinkoRussiaOnyama Limba QUALIFIED
Leon R KuskoRussiaIoni Bowcher RENEWAL
Wickens U AlbaresGermanyAmy Elsner UNQUALIFIED
Mujtaba T MorascaGermanyIoni Bowcher QUALIFIED
Julie L RutaIndiaAsiya Javayant RENEWAL
Jennifer H KuskoItalyIoni Bowcher NEW
Deepesh J SergiJapanBernardo Dominic UNQUALIFIED
Alejandro Y GauchoItalyElwin Sharvill PROPOSAL
Leon U GillianFranceElwin Sharvill QUALIFIED
Ivar I ShinkoFranceElwin Sharvill NEGOTIATION
David R AmigonRussiaIvan Magalhaes UNQUALIFIED
Darci B VocelkaItalyAnna Fali RENEWAL
Claire E CaudyArgentinaOnyama Limba QUALIFIED
Murillo S InouyeSpainIvan Magalhaes QUALIFIED
Aditya E TollnerGermanyIoni Bowcher NEGOTIATION
Ivar G FollerAustraliaXuxue Feng RENEWAL
Jefferson K ChuiCanadaAsiya Javayant PROPOSAL
Jennifer M ChuiSpainAmy Elsner NEW
Misaki T IturbideGermanyElwin Sharvill PROPOSAL
Darci I AlbaresIndiaAsiya Javayant PROPOSAL
Salvatore N PoquetteIndiaIvan Magalhaes NEW
Salvatore G PaprockiArgentinaXuxue Feng UNQUALIFIED
Misaki V WaycottSpainBernardo Dominic NEW
Johnson I CaudySpainOnyama Limba RENEWAL
Darci G TollnerIndiaAnna Fali UNQUALIFIED
Chavez K StensethRussiaAmy Elsner PROPOSAL
Johnson M CaudyItalyOnyama Limba QUALIFIED
Chavez B BowleyJapanOnyama Limba UNQUALIFIED
Greenwood W PerinUnited KingdomStephen Shaw NEW
Stacey T StockhamAustraliaIoni Bowcher QUALIFIED
Clifford E DoeIndiaOnyama Limba QUALIFIED
Ricardo C SlusarskiAustraliaIoni Bowcher NEGOTIATION
Frozen Columns
Name
Leja J Paprocki
Stacey Z Shinko
Mayumi I Malet
Smith C Malet
Mayumi P Nicka
Murillo J Kolmetz
Silvio J Maclead
Mayumi K Kolmetz
Munro F Glick
Izzy L Saylors
Maisha G Tollner
Jeanfrancois Y Ostrosky
Ashley A Waycott
Maisha E Dilliard
Faith P Amigon
Francesco Z Inouye
Kaitlin Z Kolmetz
Murillo P Rulapaugh
Munro M Waycott
Silvio C Maclead
Salvatore F Bowley
Jefferson K Darakjy
Ivar N Morasca
Julie A Darakjy
Kadeem E Gaucho
Claire R Vocelka
Kadeem L Shinko
Nicolas C Foller
Octavia E Paprocki
Morrow F Amigon
Aika E Iturbide
Stacey P Waycott
Kaitlin G Marrier
Julie T Briddick
Silvio J Butt
Francesco E Maclead
Costa M Whobrey
Mayumi L Vocelka
Maisha M Kolmetz
Tony Z Caudy
Misaki T Bolognia
Jeanfrancois U Morasca
Jones D Albares
Morrow Z Caudy
Deepesh J Stockham
Murillo M Kolmetz
Greenwood A Ostrosky
Kadeem D Albares
Salvatore W Rim
Nicolas D Bowley
IdCountryDate
1000Russia2026-05-20
1001Germany2026-05-17
1002Argentina2026-05-15
1003United Kingdom2026-06-02
1004Canada2026-05-13
1005United Kingdom2026-05-22
1006France2026-05-21
1007Italy2026-05-22
1008India2026-05-06
1009Italy2026-05-09
1010Canada2026-06-02
1011India2026-06-03
1012Japan2026-05-09
1013Canada2026-05-30
1014France2026-06-02
1015Australia2026-05-18
1016Germany2026-05-06
1017United Kingdom2026-05-20
1018Australia2026-05-24
1019France2026-05-30
1020France2026-05-17
1021Canada2026-05-11
1022Russia2026-05-25
1023Canada2026-05-30
1024Canada2026-06-03
1025Canada2026-05-13
1026United Kingdom2026-05-07
1027Spain2026-05-17
1028France2026-05-13
1029Australia2026-05-16
1030India2026-05-29
1031United Kingdom2026-05-18
1032Spain2026-06-02
1033Spain2026-05-23
1034Japan2026-05-12
1035Brazil2026-06-04
1036Spain2026-05-10
1037United Kingdom2026-06-01
1038United Kingdom2026-05-18
1039Germany2026-06-04
1040Argentina2026-05-14
1041Australia2026-05-13
1042Italy2026-05-15
1043Germany2026-06-02
1044Australia2026-05-27
1045Spain2026-06-03
1046Argentina2026-05-13
1047France2026-05-06
1048Germany2026-05-07
1049Brazil2026-05-16

On-Demand Data

NameIdCountryDate
Greenwood T Tollner1000India2026-05-08
Tony C Slusarski1001Italy2026-05-18
Adams J Venere1002Spain2026-05-15
Claire O Kusko1003India2026-05-24
Emily A Whobrey1004Canada2026-05-21
Tony H Ferencz1005India2026-05-31
Jefferson L Schemmer1006Italy2026-05-24
Darci O Inouye1007India2026-05-27
Sinclair J Iturbide1008Australia2026-05-14
Maria H Royster1009Spain2026-05-24
Maria Z Morasca1010Italy2026-05-19
Deepesh G Waycott1011Germany2026-05-29
Ricardo T Venere1012Italy2026-05-13
James E Figeroa1013Italy2026-05-06
Rodrigues B Chui1014Japan2026-05-18
Emily A Iturbide1015Italy2026-05-29
Smith A Bolognia1016Brazil2026-05-23
Murillo U Butt1017Germany2026-05-30
Arvin W Vocelka1018Italy2026-05-25
Adams C Tollner1019Japan2026-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo Q CaldareraItalyAsiya Javayant NEGOTIATION
Izzy S GlickJapanOnyama Limba QUALIFIED
Izzy F PaprockiCanadaAnna Fali NEW
James K MorascaIndiaIoni Bowcher UNQUALIFIED
Johnson F CampainGermanyAmy Elsner NEW
Faith X SergiUnited KingdomElwin Sharvill QUALIFIED
Nicolas Q PaprockiBrazilIvan Magalhaes NEGOTIATION
Deepesh I FollerRussiaBernardo Dominic NEW
Ivar T GlickArgentinaBernardo Dominic UNQUALIFIED
Aditya O ButtSpainIvan Magalhaes NEW
Leja S GillianJapanStephen Shaw UNQUALIFIED
Tony L GlickRussiaElwin Sharvill RENEWAL
Aditya Q BologniaArgentinaElwin Sharvill PROPOSAL
Ivar Z PerinCanadaXuxue Feng NEW
Aika Q AlbaresUnited KingdomAnna Fali QUALIFIED
Sinclair J BriddickJapanStephen Shaw QUALIFIED
Aika Z KolmetzAustraliaIoni Bowcher UNQUALIFIED
Jefferson Y PaprockiIndiaXuxue Feng QUALIFIED
Cody E DoeBrazilIvan Magalhaes NEGOTIATION
Julie I WaycottJapanAsiya Javayant QUALIFIED
Ivar C SaylorsSpainIvan Magalhaes PROPOSAL
Arvin Z FollerArgentinaAnna Fali NEGOTIATION
James W MacleadUnited KingdomXuxue Feng NEW
Stacey Q FlosiJapanBernardo Dominic RENEWAL
Alejandro X TollnerRussiaAnna Fali NEW
Tony O FollerArgentinaIvan Magalhaes NEW
Deepesh R MarrierJapanXuxue Feng RENEWAL
Aruna Q GarufiBrazilBernardo Dominic UNQUALIFIED
Sinclair G AlbaresArgentinaXuxue Feng PROPOSAL
Darci B CampainGermanyAmy Elsner NEW
Emily U IturbideUnited KingdomBernardo Dominic NEGOTIATION
Cody Q SaylorsCanadaAnna Fali NEW
Salvatore S MorascaSpainXuxue Feng NEGOTIATION
David B MarrierArgentinaStephen Shaw QUALIFIED
Smith D KolmetzGermanyAsiya Javayant QUALIFIED
Ivar W FlosiRussiaBernardo Dominic PROPOSAL
Juan D MarrierRussiaBernardo Dominic PROPOSAL
Jones A SlusarskiGermanyOnyama Limba QUALIFIED
Octavia R BriddickFranceXuxue Feng UNQUALIFIED
Nicolas E StensethSpainStephen Shaw 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.