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
Greenwood Q MorascaCanadaAsiya Javayant PROPOSAL
Clifford Z RutaArgentinaIvan Magalhaes QUALIFIED
Jennifer I SergiRussiaAmy Elsner QUALIFIED
Octavia O OstroskyRussiaBernardo Dominic PROPOSAL
Deepesh X StensethIndiaAmy Elsner RENEWAL
Arvin O BologniaIndiaStephen Shaw PROPOSAL
Juan H NickaBrazilBernardo Dominic NEGOTIATION
Francesco B VenereAustraliaBernardo Dominic QUALIFIED
Leon Y WieserIndiaAnna Fali UNQUALIFIED
Juan L MaletSpainOnyama Limba UNQUALIFIED
David V StensethGermanyIvan Magalhaes NEGOTIATION
David Q RimUnited KingdomXuxue Feng RENEWAL
Chavez L AlbaresBrazilStephen Shaw RENEWAL
Chavez M RimSpainStephen Shaw UNQUALIFIED
Tony T IturbideAustraliaXuxue Feng RENEWAL
Silvio E OldroydFranceAsiya Javayant PROPOSAL
Kaitlin G OstroskyBrazilIoni Bowcher RENEWAL
Alejandro V GlickIndiaAsiya Javayant NEW
Ashley I DilliardItalyAsiya Javayant NEGOTIATION
Salvatore E FigeroaBrazilAmy Elsner NEW
Murillo N BologniaGermanyStephen Shaw PROPOSAL
Jones W ButtBrazilBernardo Dominic NEGOTIATION
Adams C BologniaBrazilXuxue Feng QUALIFIED
Nicolas Z SlusarskiItalyAmy Elsner PROPOSAL
Ricardo D MaletArgentinaXuxue Feng UNQUALIFIED
Jones Z ShinkoIndiaAnna Fali NEGOTIATION
Salvatore R StensethCanadaAnna Fali RENEWAL
Johnson Z ButtJapanXuxue Feng NEW
Wickens V VocelkaIndiaXuxue Feng QUALIFIED
Nicolas R FigeroaFranceBernardo Dominic NEW
Wickens B PaprockiJapanAsiya Javayant PROPOSAL
Jeanfrancois E NestleSpainBernardo Dominic RENEWAL
Juan C FerenczFranceIvan Magalhaes PROPOSAL
Ashley P ButtCanadaStephen Shaw RENEWAL
Wickens O MarrierIndiaIvan Magalhaes QUALIFIED
Tony Z WaycottRussiaStephen Shaw QUALIFIED
Costa L GlickCanadaIvan Magalhaes QUALIFIED
Chavez T MaletItalyIvan Magalhaes UNQUALIFIED
David V CaudySpainXuxue Feng PROPOSAL
Leon W NestleCanadaElwin Sharvill UNQUALIFIED
Juan S KuskoJapanAsiya Javayant RENEWAL
Faith Y CaudyIndiaBernardo Dominic NEGOTIATION
Faith C SchemmerItalyElwin Sharvill QUALIFIED
Deepesh L SergiArgentinaElwin Sharvill PROPOSAL
Cody N BologniaSpainXuxue Feng UNQUALIFIED
Silvio D RulapaughJapanOnyama Limba QUALIFIED
Salvatore N KuskoFranceIoni Bowcher PROPOSAL
Ivar W ButtFranceElwin Sharvill NEGOTIATION
Rodrigues G GarufiUnited KingdomIoni Bowcher QUALIFIED
Nicolas U OldroydRussiaIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Salvatore K OstroskySpainStephen Shaw RENEWAL
Jeanfrancois Z RoysterIndiaStephen Shaw QUALIFIED
Stacey R WaycottCanadaElwin Sharvill NEGOTIATION
Deepesh V FlosiUnited KingdomStephen Shaw QUALIFIED
David R ChuiJapanAnna Fali RENEWAL
Mayumi R SchemmerItalyBernardo Dominic RENEWAL
Morrow E RutaRussiaStephen Shaw PROPOSAL
Leon H FollerFranceAsiya Javayant PROPOSAL
Smith L MarrierAustraliaAnna Fali QUALIFIED
David R PoquetteAustraliaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin O RulapaughSpain2026-06-16Feiner Bros NEW13Xuxue Feng
1001Munro J RoysterArgentina2026-06-08Printing Dimensions PROPOSAL73Asiya Javayant
1002Cody I GauchoBrazil2026-06-13Printing Dimensions RENEWAL76Anna Fali
1003Leon B AlbaresRussia2026-05-25Buckley Miller Wright NEW98Anna Fali
1004Murillo W FerenczJapan2026-06-09Rangoni Of Florence UNQUALIFIED0Amy Elsner
1005Aruna Z KuskoJapan2026-06-01Rousseaux, Michael Esq QUALIFIED95Xuxue Feng
1006Kadeem I InouyeArgentina2026-06-06Chemel, James L Cpa QUALIFIED49Ivan Magalhaes
1007Julie J MaletItaly2026-06-19Rousseaux, Michael Esq NEGOTIATION84Xuxue Feng
1008Smith K KuskoArgentina2026-05-31Buckley Miller Wright RENEWAL1Xuxue Feng
1009Arvin Y MorascaFrance2026-05-27Commercial Press PROPOSAL37Bernardo Dominic
1010Alejandro F GillianIndia2026-06-10Chanay, Jeffrey A Esq NEW9Anna Fali
1011Arvin K MorascaSpain2026-06-21Chanay, Jeffrey A Esq PROPOSAL20Ivan Magalhaes
1012Maisha C FollerCanada2026-06-13Feltz Printing Service RENEWAL51Xuxue Feng
1013Mayumi P BologniaCanada2026-06-07Rousseaux, Michael Esq NEGOTIATION74Anna Fali
1014Darci N NestleCanada2026-05-29Rousseaux, Michael Esq RENEWAL33Bernardo Dominic
1015Kaitlin E MaletItaly2026-06-01Commercial Press RENEWAL77Amy Elsner
1016Alejandro N OstroskyRussia2026-06-13Morlong Associates NEGOTIATION84Asiya Javayant
1017Smith O MarrierSpain2026-05-29King, Christopher A Esq QUALIFIED10Ivan Magalhaes
1018Ricardo Y SchemmerBrazil2026-06-04Chemel, James L Cpa NEGOTIATION20Ivan Magalhaes
1019Jennifer A MacleadArgentina2026-06-21Morlong Associates NEW16Bernardo Dominic
1020Juan N RutaFrance2026-06-08Rousseaux, Michael Esq RENEWAL84Amy Elsner
1021Nicolas A OldroydArgentina2026-05-24Truhlar And Truhlar Attys NEGOTIATION11Xuxue Feng
1022Aika M MaletRussia2026-06-22Printing Dimensions QUALIFIED55Ioni Bowcher
1023Tony C RimRussia2026-06-07Truhlar And Truhlar Attys PROPOSAL68Ivan Magalhaes
1024Arvin N BowleyFrance2026-06-16Dorl, James J Esq NEGOTIATION76Onyama Limba
1025Silvio O VenereIndia2026-06-09Chapman, Ross E Esq UNQUALIFIED1Xuxue Feng
1026Maria Q SaylorsBrazil2026-06-15Rousseaux, Michael Esq PROPOSAL80Stephen Shaw
1027Isabel R FollerSpain2026-05-25Buckley Miller Wright NEGOTIATION32Asiya Javayant
1028Rodrigues D BologniaItaly2026-06-03Benton, John B Jr UNQUALIFIED57Amy Elsner
1029Octavia U PoquetteBrazil2026-06-19Commercial Press UNQUALIFIED85Ivan Magalhaes
1030Costa A BologniaAustralia2026-05-29Chapman, Ross E Esq UNQUALIFIED88Amy Elsner
1031Izzy V PerinFrance2026-06-13Morlong Associates PROPOSAL99Elwin Sharvill
1032Tony F SaylorsCanada2026-06-18Rousseaux, Michael Esq RENEWAL44Amy Elsner
1033Mujtaba K DoeRussia2026-06-04Commercial Press QUALIFIED74Elwin Sharvill
1034Aika V CaldareraCanada2026-05-27Morlong Associates PROPOSAL4Ioni Bowcher
1035Aika C FlosiItaly2026-06-09Printing Dimensions NEGOTIATION73Xuxue Feng
1036Aditya K DilliardUnited Kingdom2026-06-02Chapman, Ross E Esq NEW37Asiya Javayant
1037Aika K KolmetzJapan2026-06-02Benton, John B Jr RENEWAL75Anna Fali
1038Morrow S NickaFrance2026-06-04Feltz Printing Service NEGOTIATION33Asiya Javayant
1039Salvatore F BowleyJapan2026-06-18Chapman, Ross E Esq UNQUALIFIED15Bernardo Dominic
1040Wickens C RutaCanada2026-06-13Chanay, Jeffrey A Esq UNQUALIFIED85Amy Elsner
1041Wickens I BologniaItaly2026-06-04Feiner Bros NEGOTIATION11Onyama Limba
1042Adams W BologniaItaly2026-05-31Rangoni Of Florence RENEWAL94Onyama Limba
1043Wickens D DilliardRussia2026-06-22Printing Dimensions NEW78Onyama Limba
1044Cody H FigeroaItaly2026-06-02Feiner Bros PROPOSAL71Ioni Bowcher
1045Stacey J RimRussia2026-06-04Feltz Printing Service QUALIFIED22Anna Fali
1046Deepesh Q StockhamItaly2026-06-21Feiner Bros NEGOTIATION78Stephen Shaw
1047Cody Y NickaJapan2026-06-07Printing Dimensions NEGOTIATION1Onyama Limba
1048Antonio A KolmetzJapan2026-06-20Feltz Printing Service NEGOTIATION56Ioni Bowcher
1049Arvin P SaylorsUnited Kingdom2026-06-22Feiner Bros PROPOSAL52Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Aruna P MarrierGermanyIvan Magalhaes NEGOTIATION
Smith A SchemmerAustraliaBernardo Dominic UNQUALIFIED
Claire Q AlbaresCanadaBernardo Dominic QUALIFIED
Aika O AmigonGermanyElwin Sharvill UNQUALIFIED
Claire E CaldareraGermanyXuxue Feng QUALIFIED
Faith R ButtRussiaStephen Shaw QUALIFIED
Mujtaba C VocelkaCanadaStephen Shaw NEGOTIATION
Silvio G VocelkaFranceIoni Bowcher PROPOSAL
Mujtaba D WhobreyCanadaElwin Sharvill RENEWAL
Wickens Y VocelkaBrazilOnyama Limba NEW
Clifford N FlosiBrazilAnna Fali UNQUALIFIED
Salvatore B RimFranceAnna Fali PROPOSAL
Greenwood A MaletCanadaAnna Fali NEW
Ashley L VenereIndiaOnyama Limba UNQUALIFIED
Morrow I SergiItalyAmy Elsner RENEWAL
Mujtaba Q SergiIndiaIvan Magalhaes NEGOTIATION
Maria V PaprockiRussiaAmy Elsner QUALIFIED
Izzy L SergiItalyStephen Shaw PROPOSAL
Ricardo O IturbideGermanyXuxue Feng QUALIFIED
Jefferson X RoysterAustraliaIvan Magalhaes NEGOTIATION
Jennifer V NestleIndiaIvan Magalhaes RENEWAL
Kaitlin Y IturbideCanadaElwin Sharvill RENEWAL
Mayumi K AlbaresItalyAsiya Javayant RENEWAL
Juan C PoquetteFranceAmy Elsner UNQUALIFIED
Juan H NestleCanadaAnna Fali NEGOTIATION
Alejandro Q KuskoUnited KingdomAnna Fali NEGOTIATION
Ashley S MarrierSpainBernardo Dominic PROPOSAL
Juan Q SergiJapanXuxue Feng NEGOTIATION
Darci Z VocelkaBrazilXuxue Feng QUALIFIED
Maisha J BriddickArgentinaBernardo Dominic NEW
Mujtaba K GauchoSpainIvan Magalhaes QUALIFIED
Nicolas M RulapaughBrazilElwin Sharvill UNQUALIFIED
Sinclair A CaudyAustraliaBernardo Dominic NEGOTIATION
Deepesh H SergiJapanOnyama Limba PROPOSAL
Maria E WieserSpainIoni Bowcher PROPOSAL
Chavez L GarufiRussiaAsiya Javayant NEW
Clifford G FollerSpainXuxue Feng NEW
Greenwood N NestleBrazilAnna Fali QUALIFIED
Johnson N CampainItalyBernardo Dominic NEGOTIATION
Faith R SlusarskiFranceAsiya Javayant RENEWAL
Munro D FerenczBrazilAsiya Javayant NEW
Ricardo G AmigonItalyIvan Magalhaes UNQUALIFIED
Silvio K GlickFranceBernardo Dominic NEW
Wickens R SaylorsGermanyAmy Elsner UNQUALIFIED
Deepesh D FlosiFranceElwin Sharvill RENEWAL
Leon Z FollerGermanyAnna Fali UNQUALIFIED
Mujtaba D MaletCanadaAnna Fali RENEWAL
Adams P SergiGermanyOnyama Limba NEGOTIATION
Jeanfrancois P PerinArgentinaStephen Shaw UNQUALIFIED
Izzy X AmigonJapanOnyama Limba PROPOSAL
Frozen Columns
Name
Morrow X Inouye
Clifford Q Inouye
Antonio T Shinko
Kaitlin R Amigon
Smith E Malet
Sinclair M Doe
Misaki B Doe
Smith A Bowley
Aika P Sergi
Wickens P Ostrosky
Nicolas K Butt
Greenwood A Tollner
Mujtaba S Campain
Johnson V Inouye
Claire K Rulapaugh
Julie M Inouye
Costa G Saylors
Jefferson F Paprocki
Chavez B Albares
Julie R Ruta
Adams L Gillian
Sinclair V Sergi
Jennifer Y Oldroyd
Stacey S Paprocki
Adams K Waycott
Smith W Stenseth
Mujtaba Z Venere
Clifford W Ruta
Darci U Schemmer
Mayumi Z Stockham
Johnson R Perin
Murillo S Poquette
Jones J Schemmer
James K Glick
Rodrigues C Nestle
Munro T Paprocki
Antonio L Darakjy
Faith O Rulapaugh
Isabel U Garufi
Jefferson V Briddick
Maria P Marrier
Aika M Briddick
Adams J Glick
Jefferson S Ferencz
James O Bolognia
Clifford Q Iturbide
Antonio A Perin
Ricardo X Bowley
Maria T Stockham
Deepesh D Poquette
IdCountryDate
1000Russia2026-06-02
1001Germany2026-06-03
1002Japan2026-06-15
1003Spain2026-06-06
1004India2026-06-13
1005Argentina2026-06-21
1006Brazil2026-05-27
1007Canada2026-06-05
1008Australia2026-06-10
1009Spain2026-06-02
1010Russia2026-05-29
1011Italy2026-06-09
1012Canada2026-05-28
1013Italy2026-06-19
1014Russia2026-05-31
1015Japan2026-05-30
1016United Kingdom2026-05-30
1017United Kingdom2026-05-30
1018United Kingdom2026-06-05
1019Brazil2026-05-26
1020Australia2026-05-29
1021Australia2026-06-17
1022Japan2026-06-16
1023India2026-06-03
1024India2026-06-16
1025Argentina2026-06-08
1026Spain2026-05-25
1027Argentina2026-06-09
1028Spain2026-06-01
1029Argentina2026-06-21
1030Canada2026-06-07
1031Australia2026-06-03
1032Australia2026-06-12
1033Russia2026-06-12
1034Japan2026-06-03
1035Spain2026-06-09
1036India2026-06-17
1037Spain2026-06-06
1038Spain2026-05-25
1039Japan2026-06-18
1040Australia2026-06-03
1041Brazil2026-05-28
1042Canada2026-06-04
1043Argentina2026-06-11
1044Canada2026-05-25
1045Spain2026-06-18
1046United Kingdom2026-06-07
1047Spain2026-06-02
1048Spain2026-06-15
1049United Kingdom2026-06-18

On-Demand Data

NameIdCountryDate
Mayumi B Glick1000India2026-06-12
Munro S Bolognia1001Italy2026-06-20
Tony K Doe1002Argentina2026-06-10
Aruna E Whobrey1003Italy2026-06-01
Silvio R Royster1004France2026-06-07
Chavez W Dilliard1005Canada2026-06-08
Izzy C Poquette1006Brazil2026-06-20
Murillo J Paprocki1007Spain2026-06-06
Greenwood C Poquette1008Canada2026-05-26
Nicolas U Morasca1009Spain2026-05-29
Jefferson I Nicka1010Russia2026-06-05
Kaitlin J Caldarera1011India2026-06-03
Ricardo N Butt1012Brazil2026-05-25
David P Royster1013Japan2026-06-19
Octavia X Tollner1014Australia2026-06-06
Wickens M Saylors1015Spain2026-06-08
Ashley E Gaucho1016Italy2026-06-03
Mayumi S Albares1017Italy2026-06-13
Munro C Inouye1018Italy2026-06-21
Faith X Bolognia1019Brazil2026-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez A PerinBrazilOnyama Limba PROPOSAL
Johnson D SlusarskiAustraliaAmy Elsner UNQUALIFIED
James X DilliardAustraliaIvan Magalhaes PROPOSAL
Darci S GlickArgentinaElwin Sharvill UNQUALIFIED
Salvatore L GauchoUnited KingdomAmy Elsner UNQUALIFIED
Jennifer Y PaprockiGermanyStephen Shaw UNQUALIFIED
Morrow N AlbaresFranceAmy Elsner RENEWAL
Johnson V ChuiRussiaElwin Sharvill UNQUALIFIED
Emily X KolmetzIndiaBernardo Dominic QUALIFIED
Jennifer W RulapaughJapanAmy Elsner PROPOSAL
Kaitlin L BologniaIndiaIvan Magalhaes RENEWAL
Antonio C MaletFranceOnyama Limba QUALIFIED
Chavez V InouyeGermanyOnyama Limba RENEWAL
Antonio T DoeFranceElwin Sharvill NEGOTIATION
Smith N MarrierFranceIvan Magalhaes RENEWAL
Ashley L NickaCanadaStephen Shaw NEGOTIATION
Munro F PaprockiItalyIvan Magalhaes RENEWAL
Ricardo Z FigeroaJapanStephen Shaw QUALIFIED
Jefferson C MaletSpainIoni Bowcher UNQUALIFIED
Antonio X KuskoSpainElwin Sharvill PROPOSAL
Isabel G RulapaughIndiaAnna Fali RENEWAL
Johnson Z WhobreyFranceStephen Shaw QUALIFIED
David S CampainGermanyOnyama Limba QUALIFIED
Rodrigues K CampainGermanyAmy Elsner QUALIFIED
Sinclair J DilliardBrazilAnna Fali PROPOSAL
James D CaldareraArgentinaXuxue Feng RENEWAL
Leja F OldroydSpainAsiya Javayant UNQUALIFIED
Izzy O NestleBrazilBernardo Dominic QUALIFIED
Aditya R DilliardItalyAsiya Javayant NEGOTIATION
Izzy V NestleCanadaXuxue Feng NEW
Nicolas E NestleSpainElwin Sharvill NEGOTIATION
Stacey N AmigonBrazilElwin Sharvill QUALIFIED
Morrow Z DarakjyCanadaAmy Elsner PROPOSAL
Juan S BologniaUnited KingdomIoni Bowcher QUALIFIED
Salvatore H FerenczAustraliaAnna Fali RENEWAL
Alejandro M BowleyBrazilAnna Fali PROPOSAL
Jones N InouyeJapanOnyama Limba PROPOSAL
Jennifer O CampainJapanIvan Magalhaes RENEWAL
Alejandro T ShinkoItalyAmy Elsner RENEWAL
Cody I NickaAustraliaAnna Fali NEGOTIATION

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