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 F VenereGermanyAsiya Javayant NEGOTIATION
Kaitlin E IturbideCanadaAsiya Javayant UNQUALIFIED
Francesco A PerinSpainIoni Bowcher PROPOSAL
Ivar S MorascaJapanAmy Elsner NEGOTIATION
Jennifer N PaprockiIndiaStephen Shaw NEGOTIATION
Kadeem M GlickBrazilAsiya Javayant RENEWAL
Silvio Y SergiAustraliaBernardo Dominic RENEWAL
Kaitlin N MaletAustraliaOnyama Limba PROPOSAL
Johnson Y RoysterUnited KingdomBernardo Dominic PROPOSAL
Morrow C GarufiIndiaAnna Fali NEW
Arvin W MaletFranceElwin Sharvill NEW
Morrow T KolmetzGermanyXuxue Feng NEW
Kadeem L KolmetzArgentinaIvan Magalhaes NEGOTIATION
Mayumi X OstroskyUnited KingdomStephen Shaw UNQUALIFIED
Francesco W ShinkoItalyIoni Bowcher NEW
Arvin G BriddickItalyOnyama Limba RENEWAL
Jefferson F DarakjyItalyAmy Elsner NEGOTIATION
Misaki M AmigonRussiaIoni Bowcher PROPOSAL
Juan F SchemmerFranceBernardo Dominic NEGOTIATION
Mujtaba K DilliardUnited KingdomAnna Fali QUALIFIED
Jefferson S KuskoSpainAsiya Javayant NEW
Sinclair Q ButtJapanAnna Fali NEGOTIATION
Tony J CaudyUnited KingdomBernardo Dominic NEGOTIATION
Arvin F DilliardItalyOnyama Limba RENEWAL
Misaki A DarakjyFranceStephen Shaw UNQUALIFIED
Julie O BologniaJapanAmy Elsner NEGOTIATION
Stacey K MaletRussiaElwin Sharvill UNQUALIFIED
Adams P ShinkoSpainIvan Magalhaes NEW
Munro X AlbaresArgentinaXuxue Feng QUALIFIED
Aika F FollerItalyIvan Magalhaes NEW
Adams G CampainJapanStephen Shaw PROPOSAL
Leja H PoquetteSpainAsiya Javayant NEW
Kadeem P WaycottIndiaBernardo Dominic UNQUALIFIED
Greenwood M NickaItalyElwin Sharvill QUALIFIED
Adams C GauchoAustraliaIvan Magalhaes UNQUALIFIED
Ivar V MaletArgentinaOnyama Limba PROPOSAL
Aruna B VocelkaRussiaAnna Fali UNQUALIFIED
Nicolas W TollnerFranceIoni Bowcher NEW
Greenwood D SergiItalyAmy Elsner NEGOTIATION
Mayumi P SlusarskiItalyXuxue Feng RENEWAL
Mayumi D RulapaughBrazilXuxue Feng RENEWAL
Jefferson Y BologniaBrazilAsiya Javayant NEW
Johnson U DilliardFranceElwin Sharvill PROPOSAL
Nicolas U SergiUnited KingdomElwin Sharvill QUALIFIED
Greenwood S AlbaresArgentinaAsiya Javayant NEGOTIATION
Leon L DoeArgentinaIvan Magalhaes QUALIFIED
Nicolas H SlusarskiItalyElwin Sharvill NEW
James Z ButtArgentinaAnna Fali QUALIFIED
Emily O AlbaresArgentinaAnna Fali NEW
Adams W ShinkoIndiaAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Julie X ButtIndiaAmy Elsner RENEWAL
Arvin I CampainCanadaIoni Bowcher NEGOTIATION
Octavia U PaprockiSpainAsiya Javayant NEW
Adams S BowleyUnited KingdomIvan Magalhaes QUALIFIED
Smith D GarufiRussiaElwin Sharvill QUALIFIED
Octavia P SlusarskiBrazilAmy Elsner UNQUALIFIED
Antonio F FollerSpainIoni Bowcher RENEWAL
Antonio N DarakjyGermanyElwin Sharvill RENEWAL
Clifford W DoeSpainElwin Sharvill UNQUALIFIED
Silvio S IturbideIndiaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith P PoquetteArgentina2026-02-17Truhlar And Truhlar Attys PROPOSAL88Xuxue Feng
1001Sinclair Y SlusarskiRussia2026-01-30Dorl, James J Esq QUALIFIED14Xuxue Feng
1002Morrow M AlbaresUnited Kingdom2026-02-06Buckley Miller Wright NEW17Xuxue Feng
1003Munro G PaprockiAustralia2026-02-15Feltz Printing Service PROPOSAL86Stephen Shaw
1004Izzy H WhobreyFrance2026-02-03Feiner Bros QUALIFIED51Ioni Bowcher
1005Darci E SchemmerJapan2026-01-21Chanay, Jeffrey A Esq UNQUALIFIED33Onyama Limba
1006Mayumi U MarrierArgentina2026-02-01Chanay, Jeffrey A Esq UNQUALIFIED59Stephen Shaw
1007Misaki N DarakjyRussia2026-01-31Feiner Bros RENEWAL88Asiya Javayant
1008Deepesh Z NickaSpain2026-02-08Rangoni Of Florence UNQUALIFIED84Ioni Bowcher
1009Aditya C DarakjyFrance2026-02-02Printing Dimensions QUALIFIED82Ivan Magalhaes
1010Isabel A GillianUnited Kingdom2026-01-21Chanay, Jeffrey A Esq RENEWAL45Ioni Bowcher
1011Costa C FlosiUnited Kingdom2026-01-20Rangoni Of Florence PROPOSAL35Stephen Shaw
1012Sinclair O SaylorsSpain2026-01-21Commercial Press NEW54Amy Elsner
1013David U ButtAustralia2026-02-14Chapman, Ross E Esq NEW86Xuxue Feng
1014Izzy X DilliardGermany2026-02-03King, Christopher A Esq QUALIFIED26Ioni Bowcher
1015Chavez I DilliardFrance2026-01-22Chanay, Jeffrey A Esq PROPOSAL42Ioni Bowcher
1016Ashley C FerenczFrance2026-02-14King, Christopher A Esq UNQUALIFIED0Bernardo Dominic
1017Faith U KuskoAustralia2026-01-27Commercial Press NEGOTIATION47Asiya Javayant
1018Tony O WieserCanada2026-02-15Buckley Miller Wright NEGOTIATION18Bernardo Dominic
1019Misaki A WieserCanada2026-01-31Buckley Miller Wright QUALIFIED24Xuxue Feng
1020David S FigeroaArgentina2026-02-12Dorl, James J Esq QUALIFIED61Bernardo Dominic
1021Juan G RoysterJapan2026-02-06Truhlar And Truhlar Attys PROPOSAL61Anna Fali
1022Kadeem N RulapaughBrazil2026-01-27Dorl, James J Esq UNQUALIFIED22Xuxue Feng
1023Leja Q BologniaRussia2026-01-25Chanay, Jeffrey A Esq UNQUALIFIED3Xuxue Feng
1024Isabel H MaletArgentina2026-02-04Morlong Associates NEW92Ioni Bowcher
1025Aika G WaycottIndia2026-02-17Rangoni Of Florence UNQUALIFIED99Xuxue Feng
1026Silvio J RulapaughItaly2026-01-25Feiner Bros NEGOTIATION2Onyama Limba
1027Morrow Q SlusarskiFrance2026-02-12Morlong Associates QUALIFIED87Anna Fali
1028Julie M CaudyUnited Kingdom2026-01-30Rousseaux, Michael Esq RENEWAL73Onyama Limba
1029Chavez J CaudyIndia2026-02-09Feiner Bros NEW12Ioni Bowcher
1030Maisha U DilliardBrazil2026-01-25Chemel, James L Cpa QUALIFIED84Onyama Limba
1031Costa Y BowleyRussia2026-01-24Feltz Printing Service NEGOTIATION88Anna Fali
1032Aditya U FlosiIndia2026-01-22Feltz Printing Service NEW10Onyama Limba
1033Aika B KuskoIndia2026-01-25Dorl, James J Esq NEW5Asiya Javayant
1034Salvatore F NickaItaly2026-01-20Rousseaux, Michael Esq PROPOSAL98Stephen Shaw
1035Leon X RulapaughItaly2026-02-14Benton, John B Jr NEW31Asiya Javayant
1036Tony Q ShinkoItaly2026-02-15Benton, John B Jr NEGOTIATION78Stephen Shaw
1037Sinclair F SlusarskiCanada2026-02-02Truhlar And Truhlar Attys QUALIFIED56Asiya Javayant
1038Alejandro S FerenczSpain2026-02-15Printing Dimensions NEGOTIATION38Stephen Shaw
1039Murillo X AlbaresItaly2026-02-14Benton, John B Jr NEGOTIATION81Xuxue Feng
1040Izzy P CaldareraSpain2026-01-29Rousseaux, Michael Esq UNQUALIFIED3Ivan Magalhaes
1041Jones E AmigonRussia2026-01-25Rousseaux, Michael Esq UNQUALIFIED88Xuxue Feng
1042Isabel B ChuiGermany2026-02-07Rangoni Of Florence UNQUALIFIED74Stephen Shaw
1043Leon V MarrierSpain2026-02-02Chapman, Ross E Esq RENEWAL54Ioni Bowcher
1044Emily X NickaAustralia2026-02-05Dorl, James J Esq NEW75Ioni Bowcher
1045Alejandro P PerinArgentina2026-01-25Chanay, Jeffrey A Esq UNQUALIFIED93Onyama Limba
1046Greenwood A VenereBrazil2026-02-03Buckley Miller Wright NEGOTIATION47Xuxue Feng
1047Maisha X TollnerBrazil2026-01-24King, Christopher A Esq QUALIFIED85Ioni Bowcher
1048Kadeem L StockhamArgentina2026-02-17Dorl, James J Esq RENEWAL81Asiya Javayant
1049Antonio Q VenereArgentina2026-02-13Dorl, James J Esq NEW33Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Leja J TollnerIndiaAmy Elsner RENEWAL
Mujtaba S CampainAustraliaAnna Fali RENEWAL
Ivar H TollnerRussiaIvan Magalhaes PROPOSAL
Clifford Q DarakjyAustraliaAmy Elsner NEW
Munro T BowleySpainBernardo Dominic NEW
Ricardo C KolmetzUnited KingdomIvan Magalhaes NEGOTIATION
Adams W MacleadSpainStephen Shaw NEW
Tony B BologniaUnited KingdomXuxue Feng QUALIFIED
Aika T ButtUnited KingdomAnna Fali NEW
Leon U PoquetteAustraliaAnna Fali NEGOTIATION
Antonio J WieserIndiaAmy Elsner NEGOTIATION
Arvin H SchemmerGermanyIoni Bowcher PROPOSAL
Deepesh N FerenczItalyAmy Elsner UNQUALIFIED
Mujtaba R WieserFranceIoni Bowcher QUALIFIED
Johnson I ShinkoAustraliaXuxue Feng UNQUALIFIED
Jennifer T GauchoGermanyOnyama Limba NEW
Jeanfrancois C DarakjyAustraliaIvan Magalhaes NEW
Leon E PaprockiGermanyAnna Fali NEGOTIATION
Misaki T StockhamFranceBernardo Dominic QUALIFIED
Mujtaba X PerinUnited KingdomIoni Bowcher QUALIFIED
Octavia N SergiItalyStephen Shaw RENEWAL
Murillo S NickaRussiaIoni Bowcher QUALIFIED
Jefferson X RutaGermanyIvan Magalhaes NEGOTIATION
Sinclair U PaprockiAustraliaIvan Magalhaes QUALIFIED
Morrow F GauchoArgentinaOnyama Limba RENEWAL
Salvatore I MarrierCanadaXuxue Feng UNQUALIFIED
Clifford C AmigonFranceElwin Sharvill UNQUALIFIED
Wickens Y FollerAustraliaBernardo Dominic QUALIFIED
Aruna M RoysterIndiaElwin Sharvill QUALIFIED
Aditya N KolmetzRussiaXuxue Feng RENEWAL
Mujtaba O PoquetteJapanStephen Shaw PROPOSAL
Darci L MaletGermanyAsiya Javayant QUALIFIED
Costa X GarufiAustraliaAmy Elsner NEW
James O RoysterAustraliaIvan Magalhaes RENEWAL
Ricardo I PerinUnited KingdomOnyama Limba NEGOTIATION
James U SaylorsAustraliaIoni Bowcher QUALIFIED
Deepesh C NickaJapanAsiya Javayant UNQUALIFIED
Kadeem P FerenczCanadaAnna Fali PROPOSAL
Kadeem A RimRussiaStephen Shaw UNQUALIFIED
Greenwood T TollnerBrazilAnna Fali NEW
Octavia J FlosiFranceIvan Magalhaes NEW
Misaki G CaldareraUnited KingdomBernardo Dominic NEGOTIATION
Salvatore L PaprockiSpainXuxue Feng RENEWAL
Juan V AlbaresUnited KingdomAsiya Javayant NEW
Mujtaba Q IturbideUnited KingdomBernardo Dominic PROPOSAL
Octavia G BriddickGermanyXuxue Feng QUALIFIED
Sinclair H GillianUnited KingdomIoni Bowcher UNQUALIFIED
Kaitlin Z RimFranceXuxue Feng QUALIFIED
Murillo L KolmetzBrazilAnna Fali NEW
Murillo R GillianJapanElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Maisha U Schemmer
Ricardo D Rim
Deepesh H Schemmer
Mujtaba U Inouye
Ivar R Morasca
Ricardo Y Nicka
Ricardo G Wieser
Izzy O Flosi
Mujtaba R Stockham
Mujtaba I Marrier
Jennifer B Paprocki
Darci K Figeroa
Alejandro F Ruta
Aruna L Schemmer
Greenwood J Stenseth
Jones M Chui
Wickens X Venere
Emily K Inouye
Kadeem G Albares
Arvin U Caldarera
Izzy G Oldroyd
Francesco R Darakjy
Maria Y Maclead
Tony J Slusarski
Julie C Shinko
Nicolas I Perin
Salvatore Q Rulapaugh
Morrow J Royster
Costa P Caudy
Maria J Butt
Izzy D Foller
Izzy H Nestle
David A Slusarski
Mayumi O Amigon
Misaki K Foller
Kadeem C Briddick
Tony L Venere
Deepesh G Flosi
Julie G Stenseth
Smith Q Venere
Juan V Schemmer
Deepesh H Venere
Aditya T Ostrosky
Arvin W Briddick
Deepesh A Ruta
Tony A Inouye
David I Caudy
Cody O Figeroa
Maria X Bolognia
Mayumi U Nestle
IdCountryDate
1000Japan2026-02-09
1001Brazil2026-01-21
1002Russia2026-02-05
1003Japan2026-01-31
1004Russia2026-01-27
1005United Kingdom2026-01-24
1006France2026-02-11
1007Spain2026-02-01
1008Germany2026-01-26
1009France2026-01-30
1010France2026-02-13
1011Germany2026-01-27
1012Argentina2026-01-29
1013Brazil2026-02-11
1014Canada2026-01-26
1015Canada2026-01-21
1016United Kingdom2026-01-23
1017Canada2026-02-18
1018Australia2026-02-13
1019Russia2026-02-15
1020Canada2026-01-20
1021Australia2026-02-05
1022United Kingdom2026-02-18
1023Italy2026-02-08
1024Russia2026-01-20
1025Japan2026-02-18
1026France2026-02-09
1027Brazil2026-02-18
1028Canada2026-02-04
1029Canada2026-02-02
1030Spain2026-01-29
1031Japan2026-01-20
1032France2026-01-22
1033Russia2026-02-01
1034Russia2026-02-10
1035Italy2026-02-06
1036Brazil2026-02-05
1037France2026-02-03
1038Canada2026-02-11
1039Brazil2026-02-13
1040United Kingdom2026-01-30
1041Argentina2026-02-03
1042India2026-02-14
1043Argentina2026-01-31
1044Brazil2026-01-25
1045Canada2026-02-04
1046Italy2026-01-21
1047France2026-01-20
1048Russia2026-02-07
1049Germany2026-01-26

On-Demand Data

NameIdCountryDate
Isabel A Poquette1000Russia2026-02-14
Emily D Stenseth1001Brazil2026-01-25
Murillo M Dilliard1002Australia2026-01-25
Morrow L Darakjy1003Australia2026-02-01
Greenwood K Maclead1004India2026-01-27
Johnson Z Maclead1005United Kingdom2026-02-16
Silvio X Glick1006Australia2026-01-20
Ashley I Perin1007India2026-01-25
Emily V Paprocki1008Canada2026-01-22
Jones T Campain1009Brazil2026-02-02
Clifford D Whobrey1010Japan2026-02-09
Isabel Y Marrier1011Spain2026-01-21
Smith Z Venere1012Italy2026-01-24
Aruna F Waycott1013Brazil2026-01-22
Ivar F Amigon1014Brazil2026-02-02
Adams P Sergi1015Germany2026-02-09
Arvin X Venere1016Italy2026-01-23
Aruna K Albares1017Japan2026-02-10
Leja L Nestle1018Brazil2026-02-08
Aditya W Bolognia1019India2026-01-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh Y PerinBrazilAnna Fali UNQUALIFIED
Adams D DarakjyArgentinaElwin Sharvill QUALIFIED
Costa A AmigonCanadaIvan Magalhaes PROPOSAL
Kaitlin R BriddickGermanyStephen Shaw NEGOTIATION
Ricardo Q WhobreyJapanBernardo Dominic PROPOSAL
Maisha Y CaudyRussiaOnyama Limba NEGOTIATION
Adams T AmigonIndiaOnyama Limba UNQUALIFIED
Sinclair T WaycottRussiaElwin Sharvill RENEWAL
Sinclair F InouyeRussiaIoni Bowcher NEGOTIATION
Emily A VocelkaSpainAsiya Javayant NEW
Adams Z RutaSpainXuxue Feng PROPOSAL
Wickens V GauchoIndiaOnyama Limba NEW
Costa G GillianUnited KingdomStephen Shaw UNQUALIFIED
Munro F AmigonJapanAnna Fali QUALIFIED
Tony I MarrierItalyElwin Sharvill NEW
Costa C OldroydBrazilBernardo Dominic NEGOTIATION
Leon V MarrierFranceIvan Magalhaes QUALIFIED
Chavez F OldroydRussiaElwin Sharvill RENEWAL
Arvin U VenereBrazilAnna Fali QUALIFIED
Mayumi U AmigonUnited KingdomElwin Sharvill NEW
Juan J BriddickSpainIoni Bowcher RENEWAL
Ricardo A CampainItalyOnyama Limba PROPOSAL
James P PaprockiArgentinaBernardo Dominic NEW
Antonio H WaycottItalyElwin Sharvill UNQUALIFIED
Morrow C RimSpainIvan Magalhaes NEW
James B ShinkoUnited KingdomBernardo Dominic NEGOTIATION
Jeanfrancois Y CampainUnited KingdomBernardo Dominic PROPOSAL
Leon K ChuiGermanyIvan Magalhaes PROPOSAL
Kadeem P OstroskyGermanyAmy Elsner NEGOTIATION
Isabel T DoeSpainElwin Sharvill RENEWAL
Aika B StensethGermanyIoni Bowcher RENEWAL
Mayumi Q PerinBrazilIoni Bowcher PROPOSAL
Maisha X MaletIndiaBernardo Dominic UNQUALIFIED
David Z InouyeUnited KingdomAnna Fali PROPOSAL
Leon W MarrierRussiaOnyama Limba NEGOTIATION
Rodrigues J WaycottBrazilStephen Shaw QUALIFIED
Emily H OstroskyBrazilElwin Sharvill NEGOTIATION
Jennifer Z KuskoBrazilElwin Sharvill QUALIFIED
Aika I SchemmerGermanyXuxue Feng UNQUALIFIED
Wickens N SaylorsUnited KingdomElwin Sharvill 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.