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 P RutaFranceAnna Fali UNQUALIFIED
Aika U KolmetzCanadaAnna Fali QUALIFIED
Ivar X FlosiBrazilBernardo Dominic NEGOTIATION
Adams F MarrierJapanIoni Bowcher UNQUALIFIED
Kaitlin Z AmigonSpainBernardo Dominic RENEWAL
Maisha C ButtAustraliaAnna Fali UNQUALIFIED
Salvatore G FigeroaIndiaAnna Fali NEGOTIATION
Ricardo E SchemmerAustraliaAsiya Javayant NEW
Tony B FlosiSpainBernardo Dominic UNQUALIFIED
Smith Q RoysterIndiaXuxue Feng QUALIFIED
Julie P DarakjyJapanIvan Magalhaes UNQUALIFIED
Johnson A WhobreyBrazilAmy Elsner UNQUALIFIED
Ricardo I RulapaughFranceOnyama Limba QUALIFIED
Chavez G PerinUnited KingdomAmy Elsner NEGOTIATION
Claire F AmigonArgentinaAnna Fali QUALIFIED
Maria S AlbaresArgentinaStephen Shaw NEGOTIATION
Smith I MacleadBrazilIvan Magalhaes NEGOTIATION
Ashley O MaletItalyOnyama Limba QUALIFIED
Greenwood R ChuiItalyAnna Fali NEW
Faith G MaletJapanIvan Magalhaes UNQUALIFIED
Aika X WieserRussiaIoni Bowcher RENEWAL
Deepesh O GillianSpainOnyama Limba RENEWAL
Ivar I MaletAustraliaOnyama Limba RENEWAL
Octavia M SaylorsAustraliaIoni Bowcher RENEWAL
James B CampainJapanIvan Magalhaes PROPOSAL
Deepesh E DoeIndiaAmy Elsner NEW
Faith P GarufiRussiaAnna Fali RENEWAL
Wickens Z RoysterSpainAmy Elsner PROPOSAL
Aruna V ShinkoCanadaAnna Fali UNQUALIFIED
Adams E SergiAustraliaOnyama Limba QUALIFIED
Nicolas E MarrierSpainIoni Bowcher NEW
Jeanfrancois J FlosiSpainAnna Fali RENEWAL
Murillo F OstroskyRussiaIvan Magalhaes PROPOSAL
Deepesh Z FerenczJapanAsiya Javayant NEGOTIATION
James T DoeIndiaStephen Shaw NEGOTIATION
Stacey B DarakjyFranceAmy Elsner RENEWAL
Aika B OstroskyJapanAmy Elsner NEW
Darci I WieserAustraliaAnna Fali RENEWAL
Silvio C MaletAustraliaAnna Fali QUALIFIED
Antonio L GauchoBrazilIoni Bowcher NEW
Silvio C MarrierItalyStephen Shaw NEGOTIATION
Jennifer A RutaAustraliaAnna Fali NEGOTIATION
Maisha P MaletUnited KingdomBernardo Dominic PROPOSAL
Francesco V PaprockiGermanyElwin Sharvill NEGOTIATION
Arvin N GlickUnited KingdomAsiya Javayant UNQUALIFIED
Morrow T WieserRussiaAsiya Javayant NEW
Maisha C MacleadFranceBernardo Dominic PROPOSAL
Costa L SchemmerJapanOnyama Limba NEGOTIATION
Juan U RoysterItalyAnna Fali NEW
Antonio N DoeArgentinaAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Cody A StockhamIndiaIvan Magalhaes PROPOSAL
Leja G AmigonItalyAsiya Javayant NEGOTIATION
Alejandro K PaprockiSpainElwin Sharvill QUALIFIED
Murillo Y SergiFranceXuxue Feng RENEWAL
Ricardo M MaletArgentinaXuxue Feng QUALIFIED
Leon C PoquetteUnited KingdomAsiya Javayant QUALIFIED
Octavia Z WaycottJapanIoni Bowcher PROPOSAL
Maisha V KolmetzCanadaOnyama Limba PROPOSAL
Nicolas H BriddickUnited KingdomIvan Magalhaes RENEWAL
Darci O SlusarskiSpainAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha A ShinkoItaly2026-05-31Morlong Associates RENEWAL89Ivan Magalhaes
1001Deepesh H MorascaIndia2026-06-02King, Christopher A Esq NEGOTIATION3Elwin Sharvill
1002Leon A KuskoFrance2026-05-27Buckley Miller Wright QUALIFIED48Elwin Sharvill
1003Octavia V MorascaJapan2026-05-27Chemel, James L Cpa UNQUALIFIED56Ivan Magalhaes
1004Jones C VenereSpain2026-06-05Commercial Press RENEWAL92Ivan Magalhaes
1005Maria T ShinkoArgentina2026-05-26Printing Dimensions QUALIFIED8Amy Elsner
1006Julie X SchemmerArgentina2026-06-22Benton, John B Jr PROPOSAL33Stephen Shaw
1007Smith J PerinItaly2026-06-12Rangoni Of Florence QUALIFIED23Xuxue Feng
1008Nicolas A GillianSpain2026-06-16Chemel, James L Cpa UNQUALIFIED7Xuxue Feng
1009Aruna I OldroydArgentina2026-05-26Benton, John B Jr UNQUALIFIED90Elwin Sharvill
1010Kaitlin N BowleyJapan2026-06-11Feiner Bros NEGOTIATION75Onyama Limba
1011Alejandro I VenereUnited Kingdom2026-06-06Chemel, James L Cpa NEGOTIATION48Xuxue Feng
1012Cody B GillianRussia2026-06-18Chemel, James L Cpa NEGOTIATION13Onyama Limba
1013Munro A FlosiUnited Kingdom2026-06-11Printing Dimensions QUALIFIED13Anna Fali
1014Murillo J FollerFrance2026-05-26Chapman, Ross E Esq RENEWAL9Amy Elsner
1015Mujtaba H AlbaresIndia2026-06-18Printing Dimensions PROPOSAL3Amy Elsner
1016Nicolas I DoeRussia2026-06-02Morlong Associates NEGOTIATION34Anna Fali
1017Antonio N SlusarskiRussia2026-06-11Dorl, James J Esq NEW87Amy Elsner
1018Jennifer X RutaGermany2026-06-10Rousseaux, Michael Esq UNQUALIFIED2Ioni Bowcher
1019Claire L ButtJapan2026-05-31Buckley Miller Wright PROPOSAL71Xuxue Feng
1020Darci D FigeroaJapan2026-06-02Chemel, James L Cpa NEGOTIATION3Stephen Shaw
1021Murillo N PerinAustralia2026-06-13Dorl, James J Esq NEW73Onyama Limba
1022Emily A DoeIndia2026-06-07Dorl, James J Esq NEW25Asiya Javayant
1023Jones K TollnerArgentina2026-06-17Feiner Bros QUALIFIED20Bernardo Dominic
1024David G ButtUnited Kingdom2026-06-14Truhlar And Truhlar Attys QUALIFIED32Stephen Shaw
1025Smith G RulapaughGermany2026-06-15Morlong Associates NEGOTIATION6Xuxue Feng
1026Emily B AlbaresUnited Kingdom2026-06-19Chapman, Ross E Esq QUALIFIED66Bernardo Dominic
1027Adams I TollnerRussia2026-06-03Feltz Printing Service NEGOTIATION31Amy Elsner
1028Johnson J FigeroaIndia2026-06-22Chemel, James L Cpa QUALIFIED54Anna Fali
1029Stacey T BowleyCanada2026-06-03Chanay, Jeffrey A Esq QUALIFIED72Bernardo Dominic
1030Silvio E KolmetzIndia2026-06-17Chapman, Ross E Esq PROPOSAL35Anna Fali
1031Clifford F SergiIndia2026-06-16Buckley Miller Wright NEW9Xuxue Feng
1032Francesco E PoquetteArgentina2026-06-03King, Christopher A Esq NEW96Ioni Bowcher
1033Mujtaba G ChuiIndia2026-06-10Feltz Printing Service PROPOSAL16Amy Elsner
1034Deepesh N SlusarskiGermany2026-06-16Truhlar And Truhlar Attys UNQUALIFIED43Xuxue Feng
1035James G GauchoUnited Kingdom2026-06-18Chapman, Ross E Esq NEGOTIATION84Stephen Shaw
1036Izzy X GarufiArgentina2026-05-29Chanay, Jeffrey A Esq NEGOTIATION9Ioni Bowcher
1037Jennifer U VenereIndia2026-06-17Feiner Bros QUALIFIED81Asiya Javayant
1038Johnson S KuskoUnited Kingdom2026-06-13Benton, John B Jr QUALIFIED85Asiya Javayant
1039Maria B WaycottItaly2026-05-26Benton, John B Jr NEGOTIATION50Xuxue Feng
1040Leon G AmigonIndia2026-06-02Feiner Bros NEW92Ioni Bowcher
1041Ricardo T KuskoRussia2026-05-26Buckley Miller Wright RENEWAL77Stephen Shaw
1042James F StensethGermany2026-06-01Feiner Bros QUALIFIED41Amy Elsner
1043Faith X VocelkaUnited Kingdom2026-05-27Feltz Printing Service UNQUALIFIED97Ivan Magalhaes
1044Alejandro W GauchoAustralia2026-05-31King, Christopher A Esq RENEWAL21Stephen Shaw
1045Francesco C MacleadFrance2026-06-19Truhlar And Truhlar Attys NEGOTIATION76Stephen Shaw
1046Kadeem F WhobreySpain2026-06-14Commercial Press QUALIFIED47Elwin Sharvill
1047Kaitlin H KuskoCanada2026-06-05Feltz Printing Service NEW96Amy Elsner
1048Emily S MorascaFrance2026-05-26Chemel, James L Cpa PROPOSAL78Onyama Limba
1049Arvin U BriddickCanada2026-06-19Feiner Bros RENEWAL98Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Munro J RutaItalyAnna Fali NEW
Darci P SlusarskiRussiaBernardo Dominic UNQUALIFIED
Octavia L WieserGermanyOnyama Limba PROPOSAL
Deepesh Y MarrierRussiaAsiya Javayant NEW
Aika A WhobreyUnited KingdomIoni Bowcher NEGOTIATION
Emily W RoysterBrazilAnna Fali PROPOSAL
Darci B CaudySpainAmy Elsner QUALIFIED
Antonio C NestleRussiaAsiya Javayant NEW
Faith J SergiJapanAsiya Javayant PROPOSAL
Arvin Y KuskoRussiaAnna Fali QUALIFIED
Juan A NestleAustraliaAnna Fali NEW
Izzy J CaudyItalyAnna Fali NEW
Aruna A BriddickJapanAsiya Javayant RENEWAL
Leja O MaletCanadaAmy Elsner RENEWAL
Johnson B IturbideSpainAnna Fali PROPOSAL
Jefferson Z WieserSpainStephen Shaw PROPOSAL
Kadeem S ButtSpainOnyama Limba PROPOSAL
Antonio H FlosiArgentinaOnyama Limba NEW
Clifford P FerenczIndiaAsiya Javayant NEGOTIATION
David Q TollnerSpainXuxue Feng NEGOTIATION
Julie D TollnerAustraliaAnna Fali PROPOSAL
Nicolas N RimItalyOnyama Limba NEGOTIATION
Jefferson N CaudyBrazilIvan Magalhaes UNQUALIFIED
Izzy L StensethFranceBernardo Dominic UNQUALIFIED
Claire T MorascaAustraliaStephen Shaw QUALIFIED
Aditya Q GlickSpainAsiya Javayant PROPOSAL
Aditya O MaletFranceIoni Bowcher NEGOTIATION
Mujtaba S PerinGermanyAnna Fali UNQUALIFIED
Ricardo O MacleadUnited KingdomAsiya Javayant PROPOSAL
Costa X GillianArgentinaAmy Elsner NEGOTIATION
Arvin D MacleadRussiaBernardo Dominic PROPOSAL
Alejandro N MarrierBrazilIoni Bowcher UNQUALIFIED
Jefferson B RulapaughCanadaAnna Fali PROPOSAL
Kadeem V DoeBrazilOnyama Limba UNQUALIFIED
Munro A SergiRussiaIvan Magalhaes RENEWAL
Tony A StensethUnited KingdomAmy Elsner PROPOSAL
Mayumi T OldroydIndiaAnna Fali PROPOSAL
James D InouyeGermanyOnyama Limba NEGOTIATION
Adams M FollerArgentinaIvan Magalhaes UNQUALIFIED
Isabel H BologniaCanadaBernardo Dominic RENEWAL
Murillo X MaletSpainStephen Shaw RENEWAL
Johnson H NickaSpainAmy Elsner NEGOTIATION
Nicolas K NickaBrazilXuxue Feng PROPOSAL
Morrow R DarakjyArgentinaOnyama Limba RENEWAL
Leon F GillianAustraliaIoni Bowcher PROPOSAL
David N WaycottArgentinaStephen Shaw RENEWAL
Tony F SchemmerItalyIoni Bowcher UNQUALIFIED
Claire L SlusarskiJapanAmy Elsner PROPOSAL
Smith D StockhamFranceAmy Elsner UNQUALIFIED
Costa I BriddickGermanyAnna Fali UNQUALIFIED
Frozen Columns
Name
Arvin W Darakjy
Darci Z Sergi
Aditya G Garufi
Arvin N Shinko
Johnson T Oldroyd
James U Ostrosky
Murillo A Poquette
Tony W Tollner
Stacey L Maclead
Octavia Q Bowley
Smith K Nicka
Jefferson O Briddick
Deepesh C Bolognia
Jennifer O Stockham
Misaki N Saylors
Rodrigues H Darakjy
Julie M Whobrey
Kaitlin G Caudy
Julie V Darakjy
Cody R Nestle
Nicolas K Flosi
Misaki X Glick
Maisha E Slusarski
Jennifer H Foller
Julie P Caudy
Mujtaba U Amigon
Silvio H Caldarera
Faith H Stockham
Greenwood I Poquette
Maria C Marrier
Aruna Z Perin
Mujtaba K Maclead
Wickens P Garufi
Faith R Ruta
Claire M Maclead
Emily Q Saylors
Darci S Bolognia
Julie F Ferencz
Morrow A Maclead
Darci A Bolognia
Rodrigues C Caudy
Smith V Gaucho
Jones K Glick
Leja F Whobrey
Mayumi M Slusarski
Jennifer J Figeroa
Deepesh N Venere
Tony Z Sergi
Adams A Doe
Arvin J Gillian
IdCountryDate
1000Argentina2026-06-02
1001Argentina2026-06-07
1002Japan2026-06-05
1003United Kingdom2026-06-05
1004Spain2026-06-11
1005Japan2026-06-11
1006Russia2026-06-02
1007India2026-05-25
1008Brazil2026-06-04
1009France2026-06-01
1010Spain2026-06-21
1011Spain2026-06-19
1012Australia2026-06-07
1013United Kingdom2026-05-30
1014Canada2026-06-04
1015Russia2026-06-23
1016Canada2026-06-18
1017Argentina2026-06-08
1018Japan2026-05-26
1019Argentina2026-06-12
1020Japan2026-06-14
1021Australia2026-05-28
1022Australia2026-05-28
1023Japan2026-06-14
1024Italy2026-06-12
1025France2026-06-13
1026Australia2026-05-25
1027Canada2026-05-25
1028United Kingdom2026-06-19
1029Germany2026-06-05
1030Canada2026-05-30
1031Russia2026-06-07
1032Brazil2026-05-31
1033United Kingdom2026-06-20
1034India2026-06-16
1035Russia2026-05-25
1036Spain2026-06-21
1037Spain2026-06-16
1038Russia2026-06-01
1039India2026-06-12
1040Brazil2026-06-03
1041Argentina2026-05-29
1042Brazil2026-06-19
1043Italy2026-06-02
1044Brazil2026-06-16
1045Argentina2026-06-11
1046Japan2026-06-03
1047Brazil2026-06-12
1048Canada2026-06-04
1049Germany2026-05-25

On-Demand Data

NameIdCountryDate
Costa G Schemmer1000Australia2026-06-09
Jennifer Q Tollner1001France2026-06-01
Rodrigues G Rulapaugh1002Italy2026-06-19
Leja H Gillian1003Australia2026-06-18
Jefferson U Perin1004Argentina2026-05-28
Wickens S Royster1005Germany2026-05-26
Antonio X Flosi1006Australia2026-06-03
Wickens A Oldroyd1007Australia2026-06-04
Murillo Z Royster1008France2026-06-09
Smith G Stockham1009Italy2026-06-10
Alejandro H Ostrosky1010Japan2026-06-03
Arvin H Waycott1011India2026-06-19
Greenwood P Chui1012Japan2026-06-09
Deepesh U Kusko1013Canada2026-06-20
Arvin H Saylors1014Italy2026-05-31
Aruna V Butt1015Japan2026-06-14
Aditya T Gillian1016Australia2026-06-10
Darci O Dilliard1017Argentina2026-05-26
Faith J Maclead1018Germany2026-06-10
Misaki Y Rim1019Japan2026-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson P WhobreyIndiaOnyama Limba NEW
Jones N RoysterAustraliaElwin Sharvill RENEWAL
Kaitlin L CaudyIndiaAsiya Javayant UNQUALIFIED
Julie S RutaFranceAnna Fali NEW
Sinclair W BriddickCanadaIoni Bowcher NEW
Ashley S KuskoRussiaAmy Elsner NEW
Ashley R SlusarskiAustraliaAsiya Javayant QUALIFIED
Aika U ButtRussiaXuxue Feng UNQUALIFIED
Salvatore N KuskoFranceBernardo Dominic RENEWAL
Antonio A FollerAustraliaAnna Fali RENEWAL
Aruna G CampainSpainAsiya Javayant QUALIFIED
Mayumi V MorascaCanadaOnyama Limba UNQUALIFIED
Leja A DilliardIndiaStephen Shaw PROPOSAL
Leja D KuskoRussiaIvan Magalhaes PROPOSAL
Chavez Z RimSpainIoni Bowcher RENEWAL
Maisha X KolmetzCanadaAsiya Javayant UNQUALIFIED
Rodrigues Z CaudyAustraliaStephen Shaw NEW
Sinclair V OldroydIndiaStephen Shaw PROPOSAL
Johnson Q OstroskyBrazilIvan Magalhaes QUALIFIED
Arvin N GauchoIndiaAsiya Javayant QUALIFIED
Rodrigues A PoquetteArgentinaOnyama Limba PROPOSAL
Darci X FerenczIndiaElwin Sharvill QUALIFIED
Salvatore G RulapaughFranceIvan Magalhaes RENEWAL
Johnson I VenereItalyAmy Elsner NEGOTIATION
Isabel C CampainFranceElwin Sharvill NEW
Juan V NickaBrazilIvan Magalhaes RENEWAL
Antonio J SlusarskiSpainIvan Magalhaes NEW
Cody Z CaldareraUnited KingdomAnna Fali QUALIFIED
Mayumi V NestleIndiaBernardo Dominic NEW
James H BologniaUnited KingdomIvan Magalhaes PROPOSAL
Aika A CampainSpainAsiya Javayant PROPOSAL
Julie Q RulapaughJapanElwin Sharvill RENEWAL
Antonio H GauchoArgentinaOnyama Limba QUALIFIED
Mayumi E DarakjyCanadaAmy Elsner RENEWAL
Arvin T FigeroaSpainIoni Bowcher RENEWAL
Ivar C GauchoGermanyAsiya Javayant PROPOSAL
Murillo Q VenereArgentinaIvan Magalhaes RENEWAL
Salvatore V RimIndiaIoni Bowcher NEW
Izzy T ButtItalyStephen Shaw QUALIFIED
Alejandro B GauchoUnited KingdomIvan Magalhaes 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.