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 StockhamRussiaAnna Fali UNQUALIFIED
Greenwood L RulapaughFranceBernardo Dominic UNQUALIFIED
Jennifer S CampainAustraliaOnyama Limba UNQUALIFIED
Silvio K OstroskyCanadaAmy Elsner PROPOSAL
Leja R VocelkaItalyAnna Fali PROPOSAL
Octavia Y MaletArgentinaIoni Bowcher UNQUALIFIED
Misaki M MaletUnited KingdomXuxue Feng RENEWAL
Jeanfrancois Y KolmetzArgentinaXuxue Feng NEW
Leon X PerinCanadaStephen Shaw NEGOTIATION
Misaki K GauchoItalyIoni Bowcher NEGOTIATION
Adams C FlosiGermanyAsiya Javayant RENEWAL
Kadeem F RoysterGermanyAmy Elsner PROPOSAL
Maria O SergiCanadaIoni Bowcher RENEWAL
Ivar J RutaUnited KingdomAnna Fali QUALIFIED
Juan K NickaCanadaStephen Shaw NEW
Munro P WhobreyAustraliaIvan Magalhaes QUALIFIED
Maria X KolmetzFranceBernardo Dominic QUALIFIED
Isabel A AlbaresFranceIvan Magalhaes UNQUALIFIED
Munro D DarakjyAustraliaAmy Elsner RENEWAL
Tony T WhobreyGermanyIvan Magalhaes RENEWAL
Chavez U KolmetzBrazilIvan Magalhaes RENEWAL
Antonio D BologniaFranceElwin Sharvill QUALIFIED
David X OstroskyJapanElwin Sharvill NEW
Maria T InouyeAustraliaIvan Magalhaes NEGOTIATION
Faith K VenereFranceIvan Magalhaes NEW
Mayumi H VenereCanadaAnna Fali NEGOTIATION
Ivar G FigeroaCanadaIvan Magalhaes PROPOSAL
Kaitlin A RoysterUnited KingdomStephen Shaw NEW
Salvatore Y MacleadAustraliaElwin Sharvill NEGOTIATION
Murillo Y SaylorsItalyXuxue Feng QUALIFIED
Deepesh C AlbaresAustraliaIoni Bowcher RENEWAL
Claire W TollnerItalyIoni Bowcher NEW
Wickens B SergiCanadaBernardo Dominic PROPOSAL
Maisha Z WieserArgentinaAmy Elsner NEW
Leja O MaletBrazilIvan Magalhaes PROPOSAL
Adams O SaylorsCanadaAmy Elsner PROPOSAL
Antonio K FlosiBrazilStephen Shaw PROPOSAL
Maria U GlickAustraliaBernardo Dominic RENEWAL
Alejandro L CampainArgentinaStephen Shaw UNQUALIFIED
Ivar R CaldareraFranceAmy Elsner NEW
Claire D PaprockiCanadaXuxue Feng PROPOSAL
Munro Y OstroskyFranceAsiya Javayant NEW
Izzy K StockhamAustraliaOnyama Limba PROPOSAL
Kadeem H InouyeBrazilBernardo Dominic NEGOTIATION
Clifford A RulapaughSpainAsiya Javayant RENEWAL
Alejandro J FerenczUnited KingdomAmy Elsner RENEWAL
Maisha F TollnerFranceBernardo Dominic QUALIFIED
Cody Q GarufiBrazilIoni Bowcher NEW
Silvio R RulapaughArgentinaStephen Shaw NEW
Leon H SlusarskiArgentinaElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Izzy X SergiAustraliaAsiya Javayant NEGOTIATION
Maisha A SlusarskiIndiaAsiya Javayant NEW
Clifford E NickaRussiaStephen Shaw NEW
James F CampainFranceAnna Fali NEGOTIATION
Jennifer S PaprockiBrazilOnyama Limba UNQUALIFIED
Ivar R RulapaughSpainIvan Magalhaes NEGOTIATION
Munro T ButtAustraliaStephen Shaw UNQUALIFIED
Jennifer A MaletRussiaXuxue Feng RENEWAL
Clifford X FlosiJapanIoni Bowcher NEW
Octavia M PaprockiGermanyXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba S AmigonFrance2026-04-19Morlong Associates NEGOTIATION80Amy Elsner
1001Munro T DarakjyCanada2026-04-24Rousseaux, Michael Esq PROPOSAL87Ivan Magalhaes
1002Salvatore N RutaRussia2026-04-17Chanay, Jeffrey A Esq NEW76Onyama Limba
1003Ricardo C AmigonBrazil2026-04-19Rousseaux, Michael Esq NEW40Xuxue Feng
1004Ashley Y BriddickItaly2026-04-23Printing Dimensions PROPOSAL74Onyama Limba
1005Emily U DarakjyRussia2026-05-07Truhlar And Truhlar Attys QUALIFIED44Anna Fali
1006Leon X BowleyArgentina2026-04-11Printing Dimensions UNQUALIFIED7Elwin Sharvill
1007Johnson G TollnerGermany2026-04-25Morlong Associates UNQUALIFIED10Ioni Bowcher
1008Chavez D RimFrance2026-04-12Chemel, James L Cpa NEW29Xuxue Feng
1009Julie E ButtJapan2026-04-09Chemel, James L Cpa RENEWAL34Anna Fali
1010Deepesh R MorascaFrance2026-04-13Buckley Miller Wright PROPOSAL25Ioni Bowcher
1011Faith I VenereJapan2026-04-09Truhlar And Truhlar Attys RENEWAL5Onyama Limba
1012Jefferson B FlosiIndia2026-05-06Dorl, James J Esq NEGOTIATION54Amy Elsner
1013Octavia Z SergiGermany2026-04-27Chemel, James L Cpa RENEWAL9Elwin Sharvill
1014Aditya E IturbideCanada2026-04-11Chemel, James L Cpa PROPOSAL4Stephen Shaw
1015Izzy B OstroskyCanada2026-05-06Benton, John B Jr RENEWAL3Asiya Javayant
1016Jones U RutaArgentina2026-04-28Chapman, Ross E Esq PROPOSAL96Stephen Shaw
1017Cody T InouyeSpain2026-04-19Chapman, Ross E Esq QUALIFIED9Elwin Sharvill
1018Sinclair R MaletSpain2026-04-11Rousseaux, Michael Esq NEGOTIATION56Onyama Limba
1019Stacey M IturbideFrance2026-05-08Commercial Press NEGOTIATION49Anna Fali
1020Adams J VocelkaSpain2026-04-30Chanay, Jeffrey A Esq RENEWAL55Xuxue Feng
1021Ivar L FlosiIndia2026-04-29Feiner Bros NEGOTIATION23Ivan Magalhaes
1022Mujtaba V SlusarskiAustralia2026-04-29Buckley Miller Wright UNQUALIFIED61Amy Elsner
1023Jennifer T ButtCanada2026-04-18Commercial Press PROPOSAL90Onyama Limba
1024Faith R MaletItaly2026-04-23Chanay, Jeffrey A Esq NEW79Ivan Magalhaes
1025Aruna M PerinSpain2026-04-10Feiner Bros UNQUALIFIED15Amy Elsner
1026Stacey T BriddickFrance2026-04-23Chapman, Ross E Esq NEGOTIATION92Amy Elsner
1027Isabel W IturbideGermany2026-04-22Chemel, James L Cpa PROPOSAL23Ivan Magalhaes
1028Jeanfrancois X KolmetzBrazil2026-05-07Morlong Associates UNQUALIFIED68Asiya Javayant
1029Izzy B TollnerBrazil2026-04-13Printing Dimensions NEW3Onyama Limba
1030Cody W FlosiBrazil2026-05-02Rousseaux, Michael Esq NEGOTIATION29Asiya Javayant
1031Aika X VenereUnited Kingdom2026-04-10Truhlar And Truhlar Attys UNQUALIFIED94Amy Elsner
1032Misaki E MaletIndia2026-04-17Benton, John B Jr PROPOSAL52Xuxue Feng
1033Murillo Z SaylorsFrance2026-04-12King, Christopher A Esq UNQUALIFIED73Onyama Limba
1034Darci G KuskoCanada2026-04-22Feiner Bros RENEWAL69Amy Elsner
1035Claire P DoeJapan2026-05-01Benton, John B Jr NEGOTIATION21Xuxue Feng
1036Maisha C ShinkoAustralia2026-05-02Dorl, James J Esq UNQUALIFIED24Ivan Magalhaes
1037Misaki I ShinkoRussia2026-04-24Benton, John B Jr RENEWAL57Xuxue Feng
1038Greenwood Z GauchoAustralia2026-04-26Benton, John B Jr NEW57Elwin Sharvill
1039Misaki N GauchoSpain2026-04-13Chapman, Ross E Esq UNQUALIFIED2Amy Elsner
1040Tony C GauchoArgentina2026-05-01King, Christopher A Esq QUALIFIED5Asiya Javayant
1041Salvatore P BriddickIndia2026-04-20Morlong Associates QUALIFIED62Anna Fali
1042Francesco L MorascaSpain2026-05-01King, Christopher A Esq PROPOSAL68Ivan Magalhaes
1043Izzy L FerenczUnited Kingdom2026-04-15Feltz Printing Service UNQUALIFIED11Asiya Javayant
1044Alejandro T VocelkaCanada2026-05-07Dorl, James J Esq PROPOSAL24Onyama Limba
1045Kadeem J FerenczIndia2026-04-27Rousseaux, Michael Esq NEW87Stephen Shaw
1046Mujtaba U OldroydIndia2026-04-09Rangoni Of Florence PROPOSAL0Asiya Javayant
1047Morrow M MaletFrance2026-05-06Truhlar And Truhlar Attys RENEWAL44Asiya Javayant
1048Kadeem T TollnerGermany2026-05-04Rangoni Of Florence QUALIFIED73Asiya Javayant
1049Deepesh Y StockhamCanada2026-04-28Chapman, Ross E Esq UNQUALIFIED73Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Stacey I BriddickRussiaAsiya Javayant RENEWAL
Nicolas M KuskoIndiaIoni Bowcher NEW
Misaki W BowleyFranceIoni Bowcher UNQUALIFIED
Julie M ShinkoBrazilAsiya Javayant QUALIFIED
Deepesh K CampainArgentinaXuxue Feng NEW
Munro F FollerArgentinaAnna Fali NEGOTIATION
Morrow B DilliardFranceIoni Bowcher PROPOSAL
Wickens J CaudyIndiaXuxue Feng NEW
Maisha R CaldareraArgentinaOnyama Limba RENEWAL
Francesco P DarakjyUnited KingdomBernardo Dominic NEGOTIATION
Chavez I BologniaCanadaIvan Magalhaes NEGOTIATION
James G OldroydUnited KingdomElwin Sharvill NEW
Rodrigues Z PaprockiGermanyOnyama Limba PROPOSAL
Jones C IturbideUnited KingdomStephen Shaw RENEWAL
Morrow G GarufiCanadaElwin Sharvill QUALIFIED
Jefferson R ShinkoFranceAnna Fali UNQUALIFIED
Johnson F NickaCanadaAnna Fali NEW
Kadeem X SchemmerArgentinaBernardo Dominic NEW
Arvin G MacleadUnited KingdomIoni Bowcher UNQUALIFIED
Isabel Z CampainRussiaIvan Magalhaes UNQUALIFIED
Misaki I DarakjyAustraliaStephen Shaw QUALIFIED
Ivar P DoeJapanStephen Shaw PROPOSAL
Darci L OstroskyUnited KingdomAsiya Javayant NEGOTIATION
Smith Z GlickCanadaAnna Fali PROPOSAL
Ricardo M GlickSpainBernardo Dominic NEW
Sinclair A StensethBrazilBernardo Dominic NEW
Darci W AlbaresFranceIoni Bowcher QUALIFIED
Adams P BriddickUnited KingdomAmy Elsner PROPOSAL
Ricardo H WaycottAustraliaXuxue Feng UNQUALIFIED
Munro R MorascaGermanyIvan Magalhaes UNQUALIFIED
Jeanfrancois L KolmetzUnited KingdomIoni Bowcher QUALIFIED
Mujtaba W MaletAustraliaIoni Bowcher QUALIFIED
Claire M DilliardAustraliaIoni Bowcher NEW
Francesco I StockhamAustraliaXuxue Feng PROPOSAL
Deepesh I DoeAustraliaElwin Sharvill RENEWAL
Aditya D ChuiGermanyBernardo Dominic PROPOSAL
Jeanfrancois O SchemmerBrazilElwin Sharvill QUALIFIED
Octavia V ChuiRussiaOnyama Limba UNQUALIFIED
Mayumi M NickaBrazilIoni Bowcher PROPOSAL
Jones G KolmetzArgentinaOnyama Limba NEGOTIATION
Chavez Y TollnerUnited KingdomIvan Magalhaes NEGOTIATION
Leon K MarrierJapanElwin Sharvill NEW
Leja C FollerIndiaXuxue Feng PROPOSAL
Jennifer V ButtAustraliaAnna Fali PROPOSAL
Silvio G MaletBrazilIoni Bowcher QUALIFIED
Cody H SergiSpainIoni Bowcher NEW
Stacey R FlosiUnited KingdomAnna Fali NEGOTIATION
Leja X SlusarskiItalyIoni Bowcher NEW
Rodrigues R DoeAustraliaAmy Elsner NEGOTIATION
Nicolas L GauchoSpainStephen Shaw NEGOTIATION
Frozen Columns
Name
Jennifer C Iturbide
Nicolas L Maclead
Octavia S Waycott
Adams B Iturbide
Jones N Iturbide
Cody C Gillian
Tony S Kolmetz
Adams L Dilliard
Antonio J Nestle
Arvin X Campain
Octavia Y Venere
Maisha Z Perin
Rodrigues N Caldarera
Sinclair K Campain
Smith V Schemmer
Adams T Malet
Kaitlin C Rulapaugh
Darci G Ostrosky
Sinclair T Malet
Ashley J Caudy
Murillo O Darakjy
Johnson E Nicka
Ashley O Malet
Aika F Malet
Costa C Amigon
Leon J Dilliard
Clifford X Figeroa
Murillo V Rulapaugh
Silvio O Stockham
Jones P Inouye
Cody G Figeroa
Johnson Q Perin
James Z Slusarski
Ricardo Q Butt
Jennifer Z Nestle
Darci U Campain
Murillo I Ferencz
Isabel D Inouye
Faith K Stockham
Julie D Marrier
Ricardo Z Whobrey
Alejandro N Venere
Rodrigues T Gaucho
Octavia U Glick
Misaki L Sergi
Kadeem S Whobrey
Salvatore X Nestle
Cody V Ferencz
Juan C Schemmer
Isabel X Flosi
IdCountryDate
1000Brazil2026-04-28
1001Japan2026-04-28
1002United Kingdom2026-04-11
1003India2026-04-14
1004Brazil2026-04-20
1005United Kingdom2026-04-24
1006France2026-04-21
1007India2026-04-10
1008France2026-04-14
1009Japan2026-04-25
1010Italy2026-04-21
1011Australia2026-05-03
1012Canada2026-04-13
1013France2026-05-01
1014Canada2026-04-16
1015India2026-04-11
1016Spain2026-04-23
1017India2026-04-20
1018Russia2026-04-30
1019Brazil2026-05-03
1020Italy2026-04-20
1021France2026-04-13
1022Argentina2026-05-08
1023Spain2026-04-21
1024Argentina2026-04-23
1025Italy2026-04-11
1026Russia2026-05-06
1027Germany2026-05-04
1028Germany2026-04-25
1029Brazil2026-05-06
1030Brazil2026-04-19
1031Russia2026-05-01
1032Argentina2026-05-01
1033Russia2026-04-24
1034Brazil2026-05-08
1035Spain2026-05-05
1036Brazil2026-04-17
1037Germany2026-04-10
1038Russia2026-04-10
1039Japan2026-05-07
1040Japan2026-04-12
1041Canada2026-05-07
1042Canada2026-04-10
1043France2026-04-18
1044Germany2026-04-12
1045Spain2026-04-30
1046Italy2026-04-28
1047France2026-04-29
1048Italy2026-04-17
1049Argentina2026-05-01

On-Demand Data

NameIdCountryDate
Jeanfrancois E Perin1000Brazil2026-04-27
Claire R Caudy1001Argentina2026-04-30
Smith Q Tollner1002Japan2026-04-21
Greenwood A Doe1003Italy2026-04-25
Silvio Y Ostrosky1004France2026-04-28
Julie M Rulapaugh1005United Kingdom2026-04-27
Claire S Maclead1006Brazil2026-04-09
Ashley J Briddick1007Spain2026-04-11
Johnson E Poquette1008Brazil2026-05-03
Adams C Butt1009France2026-04-28
Jones N Ferencz1010Italy2026-05-08
Salvatore R Chui1011India2026-05-06
Stacey L Ostrosky1012Argentina2026-04-18
Stacey W Gillian1013Brazil2026-04-15
Aruna V Rulapaugh1014Russia2026-04-22
Maisha L Caldarera1015United Kingdom2026-04-24
Costa U Slusarski1016Argentina2026-04-11
Silvio Y Dilliard1017Brazil2026-05-03
Tony Z Schemmer1018Australia2026-04-14
Jefferson O Glick1019India2026-04-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon U DarakjyJapanElwin Sharvill RENEWAL
Munro T SaylorsFranceIoni Bowcher UNQUALIFIED
Nicolas Y IturbideItalyAmy Elsner NEW
Rodrigues P KolmetzCanadaAnna Fali QUALIFIED
Jeanfrancois H OldroydBrazilOnyama Limba NEW
Izzy K WhobreyArgentinaBernardo Dominic NEGOTIATION
Izzy S DilliardItalyStephen Shaw PROPOSAL
Chavez I RutaJapanIvan Magalhaes PROPOSAL
Deepesh P OstroskyGermanyBernardo Dominic NEGOTIATION
Maisha M GlickAustraliaIoni Bowcher PROPOSAL
Emily F WieserItalyIvan Magalhaes QUALIFIED
Aika F FigeroaIndiaAnna Fali NEGOTIATION
Julie I PaprockiJapanAsiya Javayant QUALIFIED
Rodrigues B PoquetteJapanIvan Magalhaes NEGOTIATION
Emily U VocelkaRussiaIvan Magalhaes NEW
Murillo Z AlbaresItalyBernardo Dominic UNQUALIFIED
Ivar Y FlosiItalyIvan Magalhaes QUALIFIED
Alejandro Z SchemmerUnited KingdomBernardo Dominic QUALIFIED
Sinclair E SergiIndiaAsiya Javayant PROPOSAL
Silvio H DilliardItalyIoni Bowcher RENEWAL
Clifford O SlusarskiFranceOnyama Limba RENEWAL
Jefferson A ShinkoUnited KingdomBernardo Dominic NEW
Murillo K StockhamItalyXuxue Feng QUALIFIED
Munro A StockhamFranceElwin Sharvill PROPOSAL
Sinclair Q PoquetteJapanXuxue Feng PROPOSAL
Stacey Q PerinCanadaElwin Sharvill RENEWAL
Izzy F SaylorsArgentinaOnyama Limba NEGOTIATION
Maisha L PerinSpainIoni Bowcher RENEWAL
Julie A FollerJapanStephen Shaw PROPOSAL
Mayumi D AlbaresJapanXuxue Feng QUALIFIED
Deepesh E DoeGermanyStephen Shaw NEGOTIATION
Sinclair G SergiSpainAmy Elsner NEGOTIATION
Jeanfrancois W CaldareraJapanIvan Magalhaes NEGOTIATION
Mujtaba A AlbaresGermanyIoni Bowcher PROPOSAL
Ashley V GillianSpainAsiya Javayant RENEWAL
Jennifer J CaudyBrazilAnna Fali RENEWAL
Morrow V OstroskyJapanAmy Elsner PROPOSAL
Isabel Z CampainGermanyIoni Bowcher UNQUALIFIED
Kadeem W GarufiSpainStephen Shaw RENEWAL
Juan S RutaFranceAsiya Javayant 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.