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
Chavez T DoeUnited KingdomXuxue Feng UNQUALIFIED
Aika B GarufiUnited KingdomIvan Magalhaes RENEWAL
Costa U InouyeItalyElwin Sharvill RENEWAL
Smith V SergiJapanXuxue Feng NEW
Kaitlin N WhobreyCanadaXuxue Feng NEW
Misaki E RimIndiaBernardo Dominic RENEWAL
Tony J PoquetteBrazilXuxue Feng RENEWAL
Maisha O MacleadFranceXuxue Feng UNQUALIFIED
Morrow V BologniaGermanyElwin Sharvill UNQUALIFIED
Greenwood C SergiJapanOnyama Limba QUALIFIED
Misaki Z RimCanadaAmy Elsner RENEWAL
Kadeem U CampainRussiaXuxue Feng RENEWAL
Leon B ButtJapanAnna Fali QUALIFIED
Jeanfrancois V MaletGermanyXuxue Feng NEW
Nicolas G SergiJapanElwin Sharvill RENEWAL
Stacey W MaletBrazilAmy Elsner RENEWAL
Jones M NickaBrazilOnyama Limba NEW
Munro H SergiJapanIvan Magalhaes NEGOTIATION
Deepesh H RimSpainOnyama Limba RENEWAL
Arvin F DilliardFranceElwin Sharvill NEGOTIATION
Mayumi T AmigonItalyAnna Fali UNQUALIFIED
Smith C BowleyBrazilAsiya Javayant PROPOSAL
Nicolas X BologniaFranceAsiya Javayant NEW
Antonio Y GarufiCanadaAsiya Javayant UNQUALIFIED
Silvio H OldroydCanadaStephen Shaw NEW
Ivar I BowleyRussiaOnyama Limba NEW
Smith S SergiSpainIoni Bowcher QUALIFIED
Johnson N SergiRussiaAsiya Javayant UNQUALIFIED
Costa R IturbideItalyStephen Shaw UNQUALIFIED
Johnson E CaudyItalyAnna Fali UNQUALIFIED
Juan Z WhobreyRussiaStephen Shaw UNQUALIFIED
Sinclair L ChuiCanadaXuxue Feng UNQUALIFIED
Tony Q BologniaAustraliaAnna Fali NEW
Antonio A StockhamIndiaAnna Fali RENEWAL
Jones J StensethSpainStephen Shaw NEW
Juan C KolmetzUnited KingdomElwin Sharvill QUALIFIED
Julie H TollnerAustraliaAmy Elsner RENEWAL
Leon Q MorascaUnited KingdomAnna Fali QUALIFIED
Chavez M PerinFranceStephen Shaw QUALIFIED
Leon D DilliardRussiaIoni Bowcher RENEWAL
Ricardo R RutaFranceOnyama Limba RENEWAL
Aruna V VocelkaCanadaStephen Shaw RENEWAL
Alejandro M OldroydBrazilAsiya Javayant RENEWAL
Emily U MacleadRussiaBernardo Dominic UNQUALIFIED
Leja L TollnerSpainOnyama Limba RENEWAL
Darci M KolmetzUnited KingdomAmy Elsner PROPOSAL
Rodrigues T OstroskyArgentinaIvan Magalhaes NEGOTIATION
Smith S FollerCanadaAsiya Javayant PROPOSAL
Salvatore Z BriddickArgentinaIoni Bowcher PROPOSAL
Mayumi L SaylorsJapanOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Darci Z BowleyGermanyElwin Sharvill PROPOSAL
Juan Z GillianCanadaXuxue Feng QUALIFIED
Smith Y RutaUnited KingdomBernardo Dominic QUALIFIED
Leon S IturbideBrazilIvan Magalhaes QUALIFIED
Johnson K GarufiRussiaBernardo Dominic UNQUALIFIED
James A AlbaresIndiaAsiya Javayant NEW
Clifford M PaprockiFranceXuxue Feng RENEWAL
Claire V MaletUnited KingdomIoni Bowcher NEGOTIATION
Johnson W KolmetzGermanyElwin Sharvill NEGOTIATION
Darci K OstroskyBrazilIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily C GillianSpain2026-02-20Truhlar And Truhlar Attys NEW81Stephen Shaw
1001Julie T DarakjyRussia2026-02-18Morlong Associates NEGOTIATION26Elwin Sharvill
1002Jennifer S VocelkaGermany2026-02-23Morlong Associates NEW70Asiya Javayant
1003Aruna J CaudyGermany2026-02-15Commercial Press QUALIFIED55Xuxue Feng
1004Arvin R WhobreyIndia2026-03-14Buckley Miller Wright RENEWAL77Onyama Limba
1005James U WhobreyJapan2026-03-01Rousseaux, Michael Esq RENEWAL46Anna Fali
1006Sinclair F PaprockiBrazil2026-02-14King, Christopher A Esq NEGOTIATION59Xuxue Feng
1007Antonio C SlusarskiBrazil2026-03-09Benton, John B Jr RENEWAL62Amy Elsner
1008Cody X BriddickJapan2026-03-02Rousseaux, Michael Esq NEGOTIATION12Stephen Shaw
1009Munro M KolmetzArgentina2026-03-02Buckley Miller Wright QUALIFIED98Bernardo Dominic
1010Mayumi T ButtUnited Kingdom2026-02-14Chemel, James L Cpa NEW26Onyama Limba
1011Kadeem V DoeUnited Kingdom2026-02-24Rousseaux, Michael Esq NEW33Onyama Limba
1012Silvio A TollnerArgentina2026-03-14Commercial Press QUALIFIED83Amy Elsner
1013Mayumi L DarakjyIndia2026-02-15Chemel, James L Cpa NEW36Xuxue Feng
1014Deepesh B VenereGermany2026-02-22Buckley Miller Wright UNQUALIFIED66Onyama Limba
1015Faith Z FlosiUnited Kingdom2026-02-26Truhlar And Truhlar Attys QUALIFIED52Bernardo Dominic
1016Emily L GlickUnited Kingdom2026-02-20Chemel, James L Cpa NEW74Xuxue Feng
1017Ashley M PoquetteGermany2026-02-28Buckley Miller Wright RENEWAL44Anna Fali
1018Morrow D BowleyCanada2026-02-21Truhlar And Truhlar Attys UNQUALIFIED98Bernardo Dominic
1019Antonio C IturbideArgentina2026-03-07Rangoni Of Florence UNQUALIFIED16Stephen Shaw
1020Silvio K StockhamRussia2026-03-05Morlong Associates PROPOSAL44Anna Fali
1021Nicolas K SlusarskiCanada2026-02-17Rousseaux, Michael Esq RENEWAL55Asiya Javayant
1022Aditya V CaudyCanada2026-03-02King, Christopher A Esq NEW57Elwin Sharvill
1023Aika O CaudyFrance2026-02-14Benton, John B Jr NEGOTIATION49Asiya Javayant
1024Aika C DarakjyItaly2026-03-11Truhlar And Truhlar Attys QUALIFIED19Asiya Javayant
1025Greenwood T GlickFrance2026-02-22Rangoni Of Florence NEW31Anna Fali
1026Munro M MaletArgentina2026-02-24Commercial Press RENEWAL52Elwin Sharvill
1027Kadeem F FlosiSpain2026-03-14King, Christopher A Esq PROPOSAL61Ivan Magalhaes
1028Sinclair X MacleadBrazil2026-02-20Feltz Printing Service PROPOSAL40Xuxue Feng
1029Aika J FollerCanada2026-03-01Chapman, Ross E Esq NEW69Onyama Limba
1030Murillo X ShinkoSpain2026-02-18Chemel, James L Cpa PROPOSAL2Elwin Sharvill
1031Salvatore Z SlusarskiCanada2026-02-26Feltz Printing Service NEW37Xuxue Feng
1032Francesco V WaycottUnited Kingdom2026-03-06Commercial Press UNQUALIFIED73Elwin Sharvill
1033Morrow R RimArgentina2026-03-06Rousseaux, Michael Esq RENEWAL15Anna Fali
1034Julie S RulapaughUnited Kingdom2026-03-14Rousseaux, Michael Esq UNQUALIFIED89Stephen Shaw
1035Maisha P GlickGermany2026-03-08Printing Dimensions PROPOSAL36Ivan Magalhaes
1036Jennifer C ButtSpain2026-03-06Buckley Miller Wright PROPOSAL66Elwin Sharvill
1037Kaitlin L PaprockiGermany2026-02-16Truhlar And Truhlar Attys PROPOSAL74Ivan Magalhaes
1038Arvin G StockhamAustralia2026-03-11Buckley Miller Wright NEW53Asiya Javayant
1039Jennifer J DilliardCanada2026-03-08King, Christopher A Esq RENEWAL16Amy Elsner
1040Aditya G StockhamUnited Kingdom2026-03-01Chanay, Jeffrey A Esq NEGOTIATION5Amy Elsner
1041Faith L GauchoFrance2026-03-14Buckley Miller Wright UNQUALIFIED70Bernardo Dominic
1042Jeanfrancois R VenereIndia2026-02-21Benton, John B Jr NEW57Stephen Shaw
1043Deepesh I DoeSpain2026-02-24Rangoni Of Florence NEW18Asiya Javayant
1044Francesco S DoeFrance2026-02-15Morlong Associates NEW19Onyama Limba
1045Isabel Z PaprockiSpain2026-02-17Commercial Press RENEWAL52Ioni Bowcher
1046Octavia B DarakjySpain2026-03-15Chapman, Ross E Esq QUALIFIED72Asiya Javayant
1047Munro Y CaldareraJapan2026-02-23Feiner Bros NEGOTIATION13Ivan Magalhaes
1048Jennifer Q FigeroaCanada2026-03-15Feltz Printing Service RENEWAL42Xuxue Feng
1049Leon K RulapaughItaly2026-03-15Dorl, James J Esq UNQUALIFIED5Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Salvatore E TollnerArgentinaAnna Fali PROPOSAL
Salvatore O OstroskyRussiaAmy Elsner NEW
Ricardo K PerinUnited KingdomIvan Magalhaes NEGOTIATION
Aditya Z PerinAustraliaAsiya Javayant UNQUALIFIED
Kadeem U StensethJapanAsiya Javayant NEW
Jennifer A BowleySpainIvan Magalhaes NEW
Leon Y MarrierBrazilAsiya Javayant NEGOTIATION
Alejandro A WhobreyJapanBernardo Dominic PROPOSAL
Kaitlin G CaudyGermanyStephen Shaw UNQUALIFIED
Antonio C AlbaresBrazilElwin Sharvill UNQUALIFIED
Kadeem L PerinGermanyAnna Fali RENEWAL
Salvatore V GlickGermanyIoni Bowcher PROPOSAL
Alejandro A BriddickArgentinaAnna Fali UNQUALIFIED
Misaki L SaylorsSpainIvan Magalhaes NEGOTIATION
Isabel U BowleyFranceBernardo Dominic NEW
Silvio D GlickCanadaAsiya Javayant NEW
Octavia J BriddickGermanyAmy Elsner UNQUALIFIED
Jeanfrancois M PerinArgentinaBernardo Dominic UNQUALIFIED
David L PoquetteUnited KingdomIvan Magalhaes NEGOTIATION
Cody Z RoysterJapanAnna Fali QUALIFIED
Johnson D GillianIndiaAmy Elsner PROPOSAL
Sinclair L FigeroaFranceIvan Magalhaes NEW
Maisha I PoquetteRussiaXuxue Feng NEGOTIATION
Maria E WieserGermanyXuxue Feng NEW
Emily F VocelkaSpainIoni Bowcher NEW
David T FollerGermanyBernardo Dominic UNQUALIFIED
Julie F GillianIndiaAsiya Javayant QUALIFIED
Ricardo J FlosiIndiaIvan Magalhaes NEW
Costa O SaylorsArgentinaStephen Shaw UNQUALIFIED
Leja B SchemmerAustraliaXuxue Feng NEGOTIATION
Antonio Z MorascaGermanyElwin Sharvill NEW
Mujtaba D MacleadRussiaIoni Bowcher UNQUALIFIED
Salvatore T MaletCanadaXuxue Feng NEGOTIATION
James J WhobreyIndiaIoni Bowcher UNQUALIFIED
Jones E GillianUnited KingdomAmy Elsner QUALIFIED
Rodrigues E BologniaArgentinaAsiya Javayant QUALIFIED
Greenwood H WieserUnited KingdomAmy Elsner NEGOTIATION
Kaitlin N BowleySpainAnna Fali UNQUALIFIED
Salvatore D StockhamCanadaElwin Sharvill RENEWAL
Deepesh K GauchoSpainIvan Magalhaes PROPOSAL
Aditya S RutaBrazilElwin Sharvill NEW
Claire P OldroydGermanyAsiya Javayant NEW
Morrow X DilliardFranceStephen Shaw NEW
Emily B PoquetteArgentinaOnyama Limba NEW
Aruna B CaudyItalyElwin Sharvill PROPOSAL
Murillo E SlusarskiUnited KingdomAsiya Javayant NEGOTIATION
Johnson N OldroydBrazilStephen Shaw RENEWAL
Antonio K SergiSpainOnyama Limba UNQUALIFIED
Leon A SaylorsFranceStephen Shaw NEGOTIATION
Adams N GlickSpainXuxue Feng PROPOSAL
Frozen Columns
Name
Jefferson I Malet
Faith L Inouye
Julie B Briddick
Julie E Amigon
Adams X Marrier
Juan L Flosi
Clifford U Caldarera
Ivar C Doe
Isabel S Garufi
Adams Q Poquette
Nicolas F Sergi
Francesco W Iturbide
Antonio V Whobrey
Isabel E Morasca
Nicolas B Campain
Mayumi Q Ferencz
Deepesh Q Sergi
James H Nestle
Izzy D Schemmer
Tony F Ostrosky
Maria Y Royster
Faith G Bolognia
Kadeem W Darakjy
Nicolas P Bowley
Arvin B Caldarera
Juan N Amigon
Faith F Foller
Jefferson T Stenseth
Salvatore N Ostrosky
Faith K Flosi
Ashley J Shinko
Ricardo V Inouye
Misaki O Ostrosky
Aditya G Marrier
Munro O Gillian
Leon V Caldarera
Ricardo N Nestle
Leon H Flosi
Mujtaba Z Morasca
Maria Z Stockham
Morrow A Wieser
Costa U Garufi
Murillo B Flosi
Jeanfrancois Y Gaucho
Juan Q Poquette
Darci T Albares
Julie B Bowley
Mujtaba W Ostrosky
Clifford N Butt
Salvatore U Oldroyd
IdCountryDate
1000Australia2026-03-04
1001Italy2026-03-09
1002France2026-03-04
1003Australia2026-03-14
1004Italy2026-02-15
1005Germany2026-02-18
1006Canada2026-02-21
1007France2026-02-18
1008Canada2026-02-27
1009Australia2026-02-18
1010Argentina2026-03-15
1011Canada2026-02-25
1012Italy2026-02-22
1013France2026-03-04
1014France2026-03-01
1015Australia2026-03-10
1016Spain2026-02-19
1017Australia2026-03-14
1018France2026-03-08
1019Brazil2026-03-09
1020Italy2026-02-16
1021India2026-03-14
1022Australia2026-03-10
1023United Kingdom2026-03-07
1024Germany2026-03-13
1025Russia2026-02-21
1026Italy2026-02-25
1027Argentina2026-03-08
1028Brazil2026-02-25
1029Germany2026-02-27
1030Canada2026-03-15
1031Russia2026-03-10
1032Russia2026-02-22
1033Japan2026-02-23
1034India2026-02-26
1035Germany2026-02-19
1036Spain2026-03-08
1037India2026-02-16
1038Japan2026-02-27
1039Brazil2026-03-03
1040Brazil2026-03-08
1041Canada2026-02-19
1042Russia2026-02-22
1043Canada2026-02-17
1044India2026-02-26
1045Spain2026-03-14
1046Canada2026-03-05
1047Japan2026-03-03
1048India2026-03-07
1049Italy2026-03-08

On-Demand Data

NameIdCountryDate
Juan J Vocelka1000Canada2026-03-04
Aika D Venere1001Japan2026-02-14
Johnson L Dilliard1002Australia2026-02-22
Aruna X Waycott1003India2026-02-19
Tony P Darakjy1004Brazil2026-02-16
Juan M Ferencz1005Brazil2026-02-28
Ivar W Morasca1006Germany2026-02-21
Ricardo Q Ostrosky1007India2026-03-11
Deepesh K Wieser1008Germany2026-03-01
Chavez A Gillian1009Russia2026-02-19
Maisha P Whobrey1010Spain2026-03-05
Stacey B Glick1011Brazil2026-03-11
Costa F Venere1012Spain2026-02-20
Maisha V Campain1013Spain2026-03-01
Munro C Whobrey1014Australia2026-03-01
Alejandro S Rim1015France2026-03-04
Ivar P Inouye1016Russia2026-02-14
Greenwood R Whobrey1017Spain2026-02-26
Wickens D Nicka1018Japan2026-03-02
Alejandro T Dilliard1019Japan2026-02-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley T MarrierGermanyBernardo Dominic PROPOSAL
Maria I WaycottIndiaOnyama Limba UNQUALIFIED
Stacey U NestleUnited KingdomStephen Shaw QUALIFIED
Murillo M NickaGermanyBernardo Dominic UNQUALIFIED
Aruna W RutaBrazilIoni Bowcher PROPOSAL
Emily M SchemmerIndiaAmy Elsner PROPOSAL
Aditya I WhobreyAustraliaOnyama Limba QUALIFIED
Wickens E KuskoIndiaIvan Magalhaes UNQUALIFIED
Antonio D MarrierRussiaBernardo Dominic QUALIFIED
Mujtaba L MaletIndiaOnyama Limba RENEWAL
Juan J NestleItalyBernardo Dominic NEW
Deepesh A WaycottJapanIvan Magalhaes PROPOSAL
Jefferson X PaprockiCanadaXuxue Feng QUALIFIED
Mayumi B BowleySpainIoni Bowcher NEGOTIATION
Costa Q PoquetteFranceElwin Sharvill RENEWAL
Ivar A RoysterArgentinaAnna Fali RENEWAL
Juan H TollnerRussiaBernardo Dominic PROPOSAL
Munro T OldroydAustraliaAsiya Javayant PROPOSAL
Mayumi F CampainUnited KingdomIvan Magalhaes NEGOTIATION
Tony W KolmetzFranceXuxue Feng UNQUALIFIED
Deepesh D NickaFranceElwin Sharvill QUALIFIED
Darci F FollerGermanyStephen Shaw QUALIFIED
Ivar Z DoeJapanAmy Elsner UNQUALIFIED
Ricardo J FigeroaUnited KingdomIvan Magalhaes QUALIFIED
Aruna R GarufiCanadaOnyama Limba QUALIFIED
Arvin H ShinkoItalyElwin Sharvill QUALIFIED
Wickens M MaletBrazilElwin Sharvill UNQUALIFIED
Aditya E MaletAustraliaIoni Bowcher NEW
Tony S SaylorsGermanyStephen Shaw RENEWAL
Nicolas R AlbaresArgentinaBernardo Dominic UNQUALIFIED
Alejandro Y IturbideSpainAsiya Javayant RENEWAL
Adams G StensethFranceOnyama Limba RENEWAL
Isabel R MorascaFranceIoni Bowcher PROPOSAL
Jones I ChuiBrazilAmy Elsner NEGOTIATION
Nicolas R OstroskyArgentinaAnna Fali RENEWAL
Ashley R PaprockiBrazilAsiya Javayant NEW
Salvatore M FollerAustraliaIoni Bowcher RENEWAL
Salvatore M StensethUnited KingdomXuxue Feng NEGOTIATION
Sinclair H ButtArgentinaElwin Sharvill RENEWAL
Sinclair G StensethIndiaXuxue Feng 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.