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
Salvatore P DoeBrazilStephen Shaw RENEWAL
Jeanfrancois T GlickAustraliaAmy Elsner PROPOSAL
Francesco F MaletFranceOnyama Limba PROPOSAL
Silvio G PaprockiIndiaXuxue Feng RENEWAL
Claire A GarufiSpainElwin Sharvill UNQUALIFIED
Francesco K BowleyItalyIoni Bowcher UNQUALIFIED
Chavez S CaldareraArgentinaAsiya Javayant NEGOTIATION
Rodrigues B PerinSpainBernardo Dominic QUALIFIED
Rodrigues Y GauchoRussiaAmy Elsner UNQUALIFIED
Nicolas Z WhobreyGermanyBernardo Dominic RENEWAL
Faith A FerenczAustraliaXuxue Feng RENEWAL
Misaki T MaletJapanElwin Sharvill QUALIFIED
Sinclair O PerinRussiaAmy Elsner PROPOSAL
Clifford N MacleadRussiaIvan Magalhaes PROPOSAL
Stacey U FerenczSpainAnna Fali NEGOTIATION
Jeanfrancois C BologniaUnited KingdomStephen Shaw QUALIFIED
Isabel T AlbaresFranceStephen Shaw NEW
Munro S WhobreyJapanIvan Magalhaes PROPOSAL
Antonio Q WieserIndiaIoni Bowcher RENEWAL
Munro O RimFranceAsiya Javayant NEW
Sinclair Y GauchoCanadaElwin Sharvill RENEWAL
Rodrigues Y MorascaIndiaStephen Shaw NEW
Jones C AlbaresIndiaOnyama Limba UNQUALIFIED
Izzy U TollnerGermanyAmy Elsner PROPOSAL
James Z KolmetzArgentinaAnna Fali RENEWAL
Ashley H DilliardJapanIvan Magalhaes NEGOTIATION
Aika J IturbideRussiaOnyama Limba NEW
Costa S MarrierBrazilBernardo Dominic NEGOTIATION
Chavez F FlosiRussiaAsiya Javayant NEGOTIATION
Sinclair Y DoeJapanBernardo Dominic PROPOSAL
James X BowleyIndiaIoni Bowcher NEW
Silvio X FlosiFranceBernardo Dominic QUALIFIED
Silvio M OldroydFranceIoni Bowcher NEGOTIATION
Stacey H MaletItalyXuxue Feng NEW
Leon I FigeroaAustraliaXuxue Feng UNQUALIFIED
Kadeem V FerenczBrazilAsiya Javayant PROPOSAL
Mayumi X GillianCanadaAsiya Javayant NEGOTIATION
Ashley Y GauchoSpainOnyama Limba NEGOTIATION
Clifford B MacleadIndiaAsiya Javayant QUALIFIED
Isabel O CaudyBrazilIvan Magalhaes RENEWAL
Kaitlin T OstroskyJapanElwin Sharvill QUALIFIED
Jones Z NestleGermanyAsiya Javayant NEW
Jennifer J CaudyArgentinaXuxue Feng NEGOTIATION
Maria V BriddickItalyStephen Shaw PROPOSAL
Aditya Q SchemmerFranceOnyama Limba QUALIFIED
Deepesh N MaletCanadaOnyama Limba NEGOTIATION
Jeanfrancois M NickaItalyAnna Fali NEGOTIATION
Wickens V KuskoSpainAnna Fali NEGOTIATION
Francesco E KolmetzItalyStephen Shaw PROPOSAL
Salvatore E RutaItalyAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Morrow R PaprockiSpainAmy Elsner RENEWAL
Antonio R RutaBrazilAsiya Javayant NEW
Mayumi N NestleIndiaStephen Shaw NEGOTIATION
Aika H NestleFranceElwin Sharvill NEGOTIATION
Costa L GarufiJapanStephen Shaw NEGOTIATION
Adams C NestleFranceElwin Sharvill NEGOTIATION
Ivar S AmigonSpainIvan Magalhaes QUALIFIED
Jeanfrancois D NestleUnited KingdomXuxue Feng QUALIFIED
Francesco Z OldroydSpainIoni Bowcher RENEWAL
Leon P StensethFranceStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha D MacleadGermany2026-05-22Feiner Bros NEGOTIATION72Amy Elsner
1001Nicolas K StensethBrazil2026-05-27Printing Dimensions RENEWAL33Ivan Magalhaes
1002David E BriddickGermany2026-05-26Feiner Bros RENEWAL49Amy Elsner
1003Leon I PaprockiJapan2026-05-11Dorl, James J Esq NEW95Onyama Limba
1004Izzy F TollnerUnited Kingdom2026-05-13Benton, John B Jr UNQUALIFIED40Ioni Bowcher
1005Ricardo L FollerJapan2026-05-29Dorl, James J Esq NEGOTIATION82Elwin Sharvill
1006Maisha P FerenczAustralia2026-05-28Printing Dimensions RENEWAL55Xuxue Feng
1007Rodrigues J CaudyArgentina2026-05-27Rousseaux, Michael Esq NEW77Ioni Bowcher
1008Antonio C GauchoAustralia2026-05-26Commercial Press NEW66Bernardo Dominic
1009Deepesh Z SaylorsGermany2026-05-18Feltz Printing Service NEGOTIATION75Bernardo Dominic
1010Aditya I KuskoItaly2026-05-19Truhlar And Truhlar Attys RENEWAL8Ioni Bowcher
1011Kaitlin F WieserSpain2026-06-01Rangoni Of Florence UNQUALIFIED45Bernardo Dominic
1012Chavez D DoeBrazil2026-06-09Chapman, Ross E Esq PROPOSAL27Bernardo Dominic
1013Kadeem E PerinCanada2026-06-08Chemel, James L Cpa UNQUALIFIED7Asiya Javayant
1014Tony J BriddickItaly2026-06-09Benton, John B Jr NEGOTIATION37Ioni Bowcher
1015Darci L FerenczIndia2026-05-13Rousseaux, Michael Esq UNQUALIFIED83Anna Fali
1016Murillo Y OstroskyIndia2026-05-19Chemel, James L Cpa QUALIFIED75Bernardo Dominic
1017Salvatore R GillianItaly2026-05-13Buckley Miller Wright QUALIFIED87Amy Elsner
1018Maria X TollnerItaly2026-06-08Printing Dimensions UNQUALIFIED81Ioni Bowcher
1019Leon T MaletIndia2026-05-17Chanay, Jeffrey A Esq PROPOSAL65Elwin Sharvill
1020Salvatore K DilliardGermany2026-05-18Morlong Associates QUALIFIED32Anna Fali
1021Antonio P StockhamAustralia2026-05-11Rangoni Of Florence NEGOTIATION44Amy Elsner
1022Johnson C TollnerFrance2026-06-02Truhlar And Truhlar Attys NEW86Onyama Limba
1023Jones W ButtJapan2026-06-01Commercial Press PROPOSAL51Stephen Shaw
1024Ivar F MaletAustralia2026-05-13King, Christopher A Esq NEW38Bernardo Dominic
1025Tony B MaletSpain2026-05-15Chanay, Jeffrey A Esq RENEWAL32Ioni Bowcher
1026Chavez C VenereIndia2026-06-05Rangoni Of Florence QUALIFIED53Elwin Sharvill
1027Darci W CaudyBrazil2026-05-13Printing Dimensions PROPOSAL61Ioni Bowcher
1028Murillo L GillianFrance2026-05-30Truhlar And Truhlar Attys QUALIFIED96Elwin Sharvill
1029James T FerenczBrazil2026-06-08Buckley Miller Wright PROPOSAL82Amy Elsner
1030Juan R MaletIndia2026-06-08Printing Dimensions UNQUALIFIED34Xuxue Feng
1031Wickens J VocelkaIndia2026-05-24Feltz Printing Service QUALIFIED69Xuxue Feng
1032Jefferson A MacleadArgentina2026-06-04Morlong Associates UNQUALIFIED64Bernardo Dominic
1033Silvio F VenereGermany2026-05-30Rangoni Of Florence NEW17Ivan Magalhaes
1034Nicolas I VocelkaRussia2026-05-25Commercial Press NEGOTIATION26Amy Elsner
1035Wickens V OstroskyCanada2026-05-23Benton, John B Jr PROPOSAL5Elwin Sharvill
1036Ashley Y OstroskyBrazil2026-05-19Printing Dimensions NEW34Onyama Limba
1037Greenwood F IturbideArgentina2026-05-27Chanay, Jeffrey A Esq UNQUALIFIED14Ivan Magalhaes
1038Sinclair E GlickFrance2026-05-26Feltz Printing Service NEGOTIATION62Stephen Shaw
1039Aditya H WaycottUnited Kingdom2026-05-19Rousseaux, Michael Esq NEGOTIATION44Amy Elsner
1040Silvio Y MaletAustralia2026-05-15Dorl, James J Esq NEGOTIATION28Xuxue Feng
1041Aruna X MarrierIndia2026-05-28Chanay, Jeffrey A Esq NEW4Anna Fali
1042Kaitlin W FollerRussia2026-05-19Rangoni Of Florence NEW72Bernardo Dominic
1043Costa O RutaGermany2026-05-12King, Christopher A Esq RENEWAL33Anna Fali
1044Jennifer K GlickArgentina2026-06-02Rousseaux, Michael Esq RENEWAL52Bernardo Dominic
1045Nicolas U NestleItaly2026-05-20King, Christopher A Esq PROPOSAL32Stephen Shaw
1046Claire Q BowleyCanada2026-06-01Dorl, James J Esq NEGOTIATION62Bernardo Dominic
1047Misaki L BriddickArgentina2026-05-20Rousseaux, Michael Esq PROPOSAL26Anna Fali
1048Jones L PoquetteIndia2026-06-01Printing Dimensions PROPOSAL66Xuxue Feng
1049Jennifer D KolmetzSpain2026-06-05Chapman, Ross E Esq NEGOTIATION62Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Aika X BriddickSpainAsiya Javayant NEGOTIATION
Murillo B CampainUnited KingdomIoni Bowcher QUALIFIED
Isabel U OstroskyRussiaBernardo Dominic NEGOTIATION
Darci N VenereFranceElwin Sharvill QUALIFIED
Kaitlin S RutaFranceXuxue Feng PROPOSAL
Silvio B OstroskyRussiaIvan Magalhaes NEW
Julie S VocelkaArgentinaBernardo Dominic RENEWAL
Jefferson V SergiCanadaOnyama Limba UNQUALIFIED
Kaitlin S FigeroaSpainElwin Sharvill NEGOTIATION
Sinclair E PoquetteArgentinaIoni Bowcher RENEWAL
Adams J IturbideCanadaXuxue Feng QUALIFIED
James H DarakjyJapanAsiya Javayant NEGOTIATION
Antonio G SchemmerBrazilBernardo Dominic PROPOSAL
Deepesh R ButtBrazilAsiya Javayant NEW
Murillo B StensethGermanyIoni Bowcher NEW
Kaitlin D RutaCanadaIvan Magalhaes UNQUALIFIED
Maisha O MarrierRussiaOnyama Limba NEGOTIATION
Misaki X StockhamItalyIoni Bowcher NEGOTIATION
Ashley H RoysterItalyAmy Elsner PROPOSAL
Johnson S DarakjyRussiaAsiya Javayant NEGOTIATION
Jones D DoeAustraliaAmy Elsner UNQUALIFIED
Tony P ButtCanadaAnna Fali QUALIFIED
Aditya J RutaFranceElwin Sharvill NEW
Emily H InouyeAustraliaAsiya Javayant QUALIFIED
Antonio K StensethJapanAsiya Javayant NEGOTIATION
Stacey D WaycottAustraliaAsiya Javayant PROPOSAL
Jones J NickaSpainElwin Sharvill QUALIFIED
Clifford G WhobreyUnited KingdomOnyama Limba PROPOSAL
Aruna R VocelkaRussiaBernardo Dominic NEW
Deepesh V MaletFranceIoni Bowcher QUALIFIED
Jeanfrancois J SaylorsBrazilBernardo Dominic UNQUALIFIED
Octavia G DilliardSpainIoni Bowcher QUALIFIED
James Y KuskoGermanyAmy Elsner QUALIFIED
Salvatore V WieserRussiaXuxue Feng UNQUALIFIED
Deepesh Q MarrierBrazilIvan Magalhaes QUALIFIED
Leja T ShinkoUnited KingdomElwin Sharvill NEW
Izzy K CaldareraSpainBernardo Dominic PROPOSAL
Deepesh N CaudyGermanyIoni Bowcher UNQUALIFIED
Mujtaba P ShinkoSpainIoni Bowcher QUALIFIED
Wickens E MacleadGermanyXuxue Feng QUALIFIED
James X SchemmerAustraliaAmy Elsner RENEWAL
Antonio X MarrierItalyBernardo Dominic NEGOTIATION
Octavia G DoeSpainBernardo Dominic PROPOSAL
Rodrigues E BriddickItalyElwin Sharvill PROPOSAL
Wickens A RulapaughUnited KingdomElwin Sharvill NEW
Ricardo U FigeroaJapanAsiya Javayant NEW
Leon Z KuskoJapanAnna Fali PROPOSAL
Aruna V BriddickArgentinaOnyama Limba RENEWAL
Faith C GarufiArgentinaIvan Magalhaes NEGOTIATION
Cody K TollnerCanadaXuxue Feng NEGOTIATION
Frozen Columns
Name
Faith U Waycott
Stacey I Paprocki
Adams X Garufi
Ashley V Briddick
Wickens I Paprocki
Kaitlin J Sergi
Costa Z Briddick
Morrow J Kolmetz
Faith F Sergi
Salvatore P Rim
Munro N Briddick
Emily C Sergi
Costa W Kusko
Adams V Whobrey
Tony P Iturbide
Jones V Poquette
Wickens L Glick
Stacey P Poquette
Jennifer E Rim
Arvin A Dilliard
Isabel M Tollner
James C Perin
Faith B Darakjy
Murillo V Marrier
Leja U Gillian
Kaitlin S Flosi
Aruna H Oldroyd
Mayumi O Tollner
Francesco F Poquette
Antonio B Ostrosky
Munro D Chui
Stacey O Wieser
Julie O Whobrey
Salvatore F Flosi
Aika X Kusko
Nicolas W Foller
Ivar A Ostrosky
Greenwood Q Chui
Jeanfrancois G Bolognia
Darci S Venere
Johnson Q Nestle
Julie A Stenseth
Aruna U Doe
Johnson Z Iturbide
Salvatore M Royster
Antonio P Paprocki
Juan H Bolognia
Alejandro F Ostrosky
Rodrigues E Shinko
Izzy P Marrier
IdCountryDate
1000Argentina2026-05-17
1001Spain2026-06-05
1002United Kingdom2026-05-20
1003Russia2026-05-16
1004Brazil2026-05-13
1005Italy2026-05-12
1006Italy2026-06-08
1007Brazil2026-06-05
1008Germany2026-05-28
1009Spain2026-05-11
1010Germany2026-05-20
1011France2026-06-04
1012Japan2026-05-26
1013Germany2026-06-07
1014Italy2026-05-21
1015United Kingdom2026-05-27
1016Germany2026-05-15
1017United Kingdom2026-05-24
1018Russia2026-06-01
1019India2026-05-14
1020Argentina2026-05-21
1021Brazil2026-06-02
1022Australia2026-05-30
1023Italy2026-06-07
1024Australia2026-06-03
1025Canada2026-05-12
1026Germany2026-05-20
1027Japan2026-06-04
1028Brazil2026-05-23
1029Italy2026-05-28
1030France2026-06-01
1031Germany2026-05-12
1032Russia2026-05-28
1033United Kingdom2026-05-11
1034Russia2026-06-03
1035India2026-05-25
1036Italy2026-05-15
1037Russia2026-06-06
1038India2026-05-11
1039Argentina2026-05-14
1040Australia2026-06-06
1041Russia2026-05-22
1042Spain2026-06-08
1043Australia2026-05-22
1044India2026-05-13
1045Japan2026-06-01
1046Australia2026-05-19
1047Italy2026-05-23
1048United Kingdom2026-05-23
1049Germany2026-05-11

On-Demand Data

NameIdCountryDate
Francesco Y Morasca1000Italy2026-05-16
Sinclair R Caudy1001France2026-06-05
Darci L Kusko1002Canada2026-05-22
Claire B Waycott1003France2026-06-07
Maria M Nicka1004Brazil2026-05-11
Adams I Nestle1005Japan2026-05-26
Darci J Maclead1006United Kingdom2026-05-30
Silvio E Amigon1007Australia2026-05-16
Aruna Z Albares1008France2026-05-12
Salvatore U Morasca1009Canada2026-06-07
Juan W Foller1010United Kingdom2026-05-17
Chavez K Foller1011Russia2026-05-27
Aruna Y Nicka1012Australia2026-05-30
Sinclair T Gaucho1013Germany2026-06-08
Isabel S Nestle1014Canada2026-05-22
Jefferson P Iturbide1015Italy2026-05-14
David M Foller1016Australia2026-05-30
Francesco Y Paprocki1017Brazil2026-06-03
Tony X Nestle1018United Kingdom2026-05-11
Nicolas F Doe1019Australia2026-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki R MaletJapanAsiya Javayant NEGOTIATION
Ivar H ButtCanadaIoni Bowcher UNQUALIFIED
James F FigeroaFranceElwin Sharvill PROPOSAL
Arvin P MorascaAustraliaAnna Fali NEGOTIATION
Morrow U RulapaughIndiaAnna Fali NEW
Leon D MaletItalyOnyama Limba UNQUALIFIED
Cody O FerenczUnited KingdomOnyama Limba QUALIFIED
Adams Y CampainRussiaStephen Shaw NEGOTIATION
Ashley M OldroydIndiaAsiya Javayant RENEWAL
David P VenereCanadaAmy Elsner UNQUALIFIED
Silvio I MarrierBrazilIoni Bowcher QUALIFIED
Smith Q GarufiBrazilAmy Elsner PROPOSAL
Maisha S MaletSpainAnna Fali NEGOTIATION
Ricardo L WieserItalyIoni Bowcher RENEWAL
Munro W MorascaIndiaIoni Bowcher NEW
Kaitlin B DoeUnited KingdomAsiya Javayant UNQUALIFIED
Cody R MacleadArgentinaAsiya Javayant RENEWAL
Jeanfrancois O ChuiCanadaElwin Sharvill NEGOTIATION
Alejandro S IturbideJapanBernardo Dominic RENEWAL
Nicolas K BowleyArgentinaAnna Fali NEGOTIATION
Mayumi D StensethJapanAnna Fali QUALIFIED
Misaki K ShinkoJapanAnna Fali NEGOTIATION
Isabel Q StensethJapanIoni Bowcher UNQUALIFIED
Stacey H OldroydIndiaAsiya Javayant RENEWAL
Kaitlin F CaudyItalyElwin Sharvill RENEWAL
Jones R GauchoGermanyBernardo Dominic NEW
Maria P FlosiSpainIoni Bowcher RENEWAL
Murillo Q OldroydSpainXuxue Feng NEGOTIATION
Wickens O SaylorsCanadaAsiya Javayant NEW
Julie T RoysterSpainAmy Elsner RENEWAL
Octavia Q AmigonArgentinaOnyama Limba NEGOTIATION
Adams H SchemmerCanadaAnna Fali PROPOSAL
Jennifer K BowleyUnited KingdomElwin Sharvill NEW
Stacey R PaprockiItalyIvan Magalhaes PROPOSAL
Kadeem E DoeRussiaStephen Shaw QUALIFIED
David G GauchoJapanAmy Elsner NEGOTIATION
Adams Q InouyeRussiaIoni Bowcher QUALIFIED
David N SchemmerCanadaOnyama Limba NEW
Julie J ButtItalyStephen Shaw PROPOSAL
Claire M PaprockiItalyIvan 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.