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
Stacey G GillianItalyAmy Elsner PROPOSAL
Kadeem X BologniaArgentinaAsiya Javayant RENEWAL
Faith X TollnerUnited KingdomIoni Bowcher PROPOSAL
Leja H SaylorsGermanyIoni Bowcher NEGOTIATION
Antonio S OldroydGermanyStephen Shaw QUALIFIED
Costa W AmigonArgentinaStephen Shaw NEW
Jones N GlickGermanyAsiya Javayant QUALIFIED
Arvin V WaycottCanadaAnna Fali NEW
Mayumi P BologniaGermanyElwin Sharvill PROPOSAL
Aika H OstroskyGermanyIoni Bowcher QUALIFIED
Emily D MaletArgentinaOnyama Limba NEGOTIATION
Misaki L BriddickFranceAsiya Javayant UNQUALIFIED
Alejandro B StockhamCanadaIvan Magalhaes NEW
Aika E InouyeItalyElwin Sharvill PROPOSAL
Claire L BriddickSpainAsiya Javayant NEGOTIATION
Aruna F PoquetteUnited KingdomIvan Magalhaes QUALIFIED
Maria M SergiBrazilAsiya Javayant UNQUALIFIED
Murillo V GauchoRussiaBernardo Dominic QUALIFIED
Misaki U StensethItalyOnyama Limba RENEWAL
Isabel K IturbideUnited KingdomAsiya Javayant NEW
Adams X BologniaGermanyIvan Magalhaes RENEWAL
Jefferson H MarrierCanadaElwin Sharvill NEW
Octavia D InouyeBrazilIvan Magalhaes NEGOTIATION
Clifford J PoquetteRussiaAnna Fali QUALIFIED
Jefferson H MarrierGermanyAsiya Javayant PROPOSAL
Emily S SlusarskiFranceIoni Bowcher UNQUALIFIED
Leja D CaldareraFranceIvan Magalhaes QUALIFIED
Jones V MaletAustraliaBernardo Dominic PROPOSAL
Emily E CaudyItalyIoni Bowcher QUALIFIED
Adams B IturbideJapanStephen Shaw NEW
Costa V OldroydUnited KingdomStephen Shaw UNQUALIFIED
Morrow E DilliardArgentinaAsiya Javayant QUALIFIED
Leon Q RoysterArgentinaXuxue Feng UNQUALIFIED
Ivar Y GauchoSpainAnna Fali RENEWAL
Faith J WhobreyArgentinaOnyama Limba PROPOSAL
Johnson S SaylorsBrazilAnna Fali PROPOSAL
Deepesh C DoeUnited KingdomStephen Shaw UNQUALIFIED
Tony J SergiBrazilAnna Fali UNQUALIFIED
Aika L SlusarskiCanadaAnna Fali NEGOTIATION
Leon D BologniaRussiaBernardo Dominic NEGOTIATION
Antonio I CampainCanadaAsiya Javayant NEW
Claire G PaprockiFranceAnna Fali NEGOTIATION
Claire Q AmigonCanadaAmy Elsner NEGOTIATION
Nicolas S RulapaughAustraliaXuxue Feng RENEWAL
Octavia Y PoquetteSpainAsiya Javayant RENEWAL
Ashley X NestleSpainOnyama Limba RENEWAL
Ashley C GlickCanadaIvan Magalhaes PROPOSAL
Aditya R VocelkaGermanyIvan Magalhaes PROPOSAL
Johnson Q GarufiJapanOnyama Limba NEW
Rodrigues X MorascaGermanyIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Salvatore A SlusarskiGermanyAsiya Javayant NEW
Adams M ButtAustraliaAmy Elsner NEW
Mujtaba D AlbaresCanadaIoni Bowcher NEW
Nicolas S RutaRussiaBernardo Dominic RENEWAL
James X BowleyIndiaAsiya Javayant NEW
Chavez G FollerArgentinaXuxue Feng PROPOSAL
Darci Q FerenczArgentinaIoni Bowcher UNQUALIFIED
Alejandro T SlusarskiCanadaXuxue Feng PROPOSAL
Arvin C MaletJapanIoni Bowcher RENEWAL
Deepesh I GarufiAustraliaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin C KuskoJapan2026-05-27Dorl, James J Esq NEGOTIATION20Xuxue Feng
1001Claire H NestleSpain2026-05-28Chemel, James L Cpa NEGOTIATION9Bernardo Dominic
1002Smith M SergiAustralia2026-06-08Rangoni Of Florence NEW27Ioni Bowcher
1003Maisha U DarakjyCanada2026-06-16Dorl, James J Esq NEGOTIATION77Amy Elsner
1004Octavia B KuskoUnited Kingdom2026-06-10Dorl, James J Esq QUALIFIED47Asiya Javayant
1005Rodrigues R SchemmerIndia2026-06-06Dorl, James J Esq NEGOTIATION59Bernardo Dominic
1006Jefferson W TollnerJapan2026-06-09Chanay, Jeffrey A Esq PROPOSAL44Onyama Limba
1007Kaitlin S PoquetteGermany2026-05-31Feiner Bros QUALIFIED34Stephen Shaw
1008Murillo U MacleadIndia2026-06-06Feltz Printing Service QUALIFIED28Ivan Magalhaes
1009Ashley W VenereItaly2026-05-26Printing Dimensions QUALIFIED94Bernardo Dominic
1010Kadeem Q MaletCanada2026-06-15Morlong Associates RENEWAL20Elwin Sharvill
1011Misaki B NickaItaly2026-06-02Dorl, James J Esq UNQUALIFIED25Anna Fali
1012Alejandro Y VocelkaCanada2026-05-23Rousseaux, Michael Esq UNQUALIFIED68Ivan Magalhaes
1013Juan F MaletRussia2026-05-21Chapman, Ross E Esq NEGOTIATION72Ioni Bowcher
1014Juan D SlusarskiUnited Kingdom2026-05-29Morlong Associates RENEWAL32Stephen Shaw
1015Adams W AlbaresSpain2026-05-26Rousseaux, Michael Esq RENEWAL65Stephen Shaw
1016Jeanfrancois Q InouyeArgentina2026-05-25Dorl, James J Esq UNQUALIFIED11Xuxue Feng
1017Mujtaba O CampainCanada2026-06-08Benton, John B Jr NEGOTIATION26Amy Elsner
1018Aditya L OstroskyJapan2026-05-26Commercial Press NEW31Stephen Shaw
1019Misaki B MaletBrazil2026-05-29Feltz Printing Service QUALIFIED41Xuxue Feng
1020Kadeem O KuskoJapan2026-05-27Truhlar And Truhlar Attys PROPOSAL96Xuxue Feng
1021Arvin R TollnerCanada2026-05-30Morlong Associates RENEWAL38Asiya Javayant
1022Aika X GillianSpain2026-06-02King, Christopher A Esq NEGOTIATION59Anna Fali
1023Sinclair V WaycottSpain2026-06-01Buckley Miller Wright PROPOSAL50Asiya Javayant
1024Misaki O VocelkaJapan2026-06-02Commercial Press NEW78Amy Elsner
1025Octavia E ChuiFrance2026-06-05Morlong Associates UNQUALIFIED59Stephen Shaw
1026Jennifer R MorascaRussia2026-05-21Rousseaux, Michael Esq RENEWAL95Ivan Magalhaes
1027Smith R AlbaresSpain2026-05-28Dorl, James J Esq NEW22Anna Fali
1028Costa X InouyeRussia2026-06-02Feltz Printing Service RENEWAL99Onyama Limba
1029Costa Y MacleadAustralia2026-06-10Benton, John B Jr QUALIFIED92Onyama Limba
1030Cody Z VenereUnited Kingdom2026-06-14King, Christopher A Esq RENEWAL95Xuxue Feng
1031Misaki V DilliardCanada2026-06-08Commercial Press QUALIFIED97Stephen Shaw
1032Maisha S MaletIndia2026-06-09Printing Dimensions RENEWAL62Xuxue Feng
1033Misaki A OldroydJapan2026-05-31Rangoni Of Florence UNQUALIFIED67Onyama Limba
1034Murillo E GlickJapan2026-06-04King, Christopher A Esq NEGOTIATION78Asiya Javayant
1035Smith K BologniaGermany2026-05-30Rangoni Of Florence NEGOTIATION30Stephen Shaw
1036Munro V WhobreyIndia2026-06-01Dorl, James J Esq RENEWAL45Stephen Shaw
1037Rodrigues P WhobreySpain2026-05-29Rangoni Of Florence NEW37Stephen Shaw
1038Cody J RimCanada2026-06-01Feiner Bros QUALIFIED40Elwin Sharvill
1039Wickens C VocelkaFrance2026-06-16Chapman, Ross E Esq NEW43Elwin Sharvill
1040Mayumi R NickaUnited Kingdom2026-05-28Chanay, Jeffrey A Esq PROPOSAL58Onyama Limba
1041Greenwood U SlusarskiIndia2026-05-27Chapman, Ross E Esq UNQUALIFIED52Onyama Limba
1042Ivar L CaldareraRussia2026-05-28Dorl, James J Esq QUALIFIED40Elwin Sharvill
1043Johnson K FollerIndia2026-05-31Chanay, Jeffrey A Esq NEGOTIATION60Xuxue Feng
1044James R StensethArgentina2026-05-31Dorl, James J Esq PROPOSAL24Xuxue Feng
1045Costa M IturbideSpain2026-05-22Rangoni Of Florence UNQUALIFIED12Onyama Limba
1046Izzy M MaletItaly2026-06-15Chanay, Jeffrey A Esq NEW43Asiya Javayant
1047Leja A VocelkaRussia2026-05-26Truhlar And Truhlar Attys QUALIFIED31Amy Elsner
1048Smith T PoquetteRussia2026-06-11King, Christopher A Esq PROPOSAL60Elwin Sharvill
1049Salvatore Z WaycottSpain2026-05-26Feltz Printing Service NEGOTIATION98Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Arvin G MorascaUnited KingdomOnyama Limba PROPOSAL
Leon S PerinArgentinaIoni Bowcher NEW
Costa N WaycottIndiaXuxue Feng NEW
Salvatore H WhobreyCanadaIvan Magalhaes NEW
Smith O RulapaughItalyXuxue Feng QUALIFIED
Leja Q FollerCanadaIvan Magalhaes PROPOSAL
Aditya H WaycottBrazilBernardo Dominic QUALIFIED
Alejandro U ShinkoItalyElwin Sharvill UNQUALIFIED
Claire M FlosiBrazilElwin Sharvill RENEWAL
Ivar J RulapaughItalyOnyama Limba NEW
Antonio J MaletSpainElwin Sharvill UNQUALIFIED
Cody X DilliardArgentinaAsiya Javayant UNQUALIFIED
Kadeem J SaylorsAustraliaStephen Shaw NEGOTIATION
Ivar V RoysterFranceAmy Elsner QUALIFIED
Ashley J ShinkoSpainElwin Sharvill NEGOTIATION
Greenwood T SergiUnited KingdomIoni Bowcher RENEWAL
Jeanfrancois C GlickSpainOnyama Limba PROPOSAL
Aruna A BowleyFranceAmy Elsner NEGOTIATION
Johnson F RimAustraliaAnna Fali NEW
Kaitlin Q BriddickUnited KingdomIoni Bowcher RENEWAL
James Z PoquetteJapanAmy Elsner NEGOTIATION
Tony N PoquetteJapanElwin Sharvill UNQUALIFIED
Morrow G PerinSpainBernardo Dominic UNQUALIFIED
Faith P DilliardCanadaOnyama Limba UNQUALIFIED
Aika S GillianArgentinaIvan Magalhaes PROPOSAL
Alejandro G RoysterSpainXuxue Feng QUALIFIED
Isabel W MarrierCanadaBernardo Dominic QUALIFIED
Morrow R SlusarskiIndiaXuxue Feng UNQUALIFIED
Nicolas P SchemmerUnited KingdomBernardo Dominic QUALIFIED
Misaki W PaprockiAustraliaXuxue Feng QUALIFIED
Murillo X StensethAustraliaIoni Bowcher PROPOSAL
Maria A PaprockiFranceIoni Bowcher PROPOSAL
Chavez V FigeroaJapanElwin Sharvill UNQUALIFIED
Isabel E RutaGermanyIoni Bowcher QUALIFIED
Tony M AmigonRussiaElwin Sharvill PROPOSAL
Francesco Z BriddickBrazilStephen Shaw PROPOSAL
Misaki T FerenczSpainBernardo Dominic PROPOSAL
Jennifer B ShinkoSpainIoni Bowcher NEGOTIATION
Stacey F PerinJapanOnyama Limba NEW
Costa C SergiItalyAmy Elsner PROPOSAL
Kadeem Y BowleyCanadaAnna Fali RENEWAL
Morrow R PerinRussiaElwin Sharvill UNQUALIFIED
Cody C FerenczGermanyAnna Fali RENEWAL
Mayumi F CaudyIndiaElwin Sharvill PROPOSAL
Emily Z SlusarskiArgentinaXuxue Feng UNQUALIFIED
Kaitlin Q CaldareraGermanyAmy Elsner RENEWAL
Murillo P BologniaItalyXuxue Feng RENEWAL
Murillo D BologniaRussiaAmy Elsner UNQUALIFIED
Leon R AlbaresJapanIoni Bowcher RENEWAL
Munro A StockhamSpainIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Silvio D Poquette
Maisha Q Stockham
Jefferson U Doe
Maria P Albares
Isabel Q Malet
Rodrigues B Perin
Arvin Q Ruta
Ivar I Oldroyd
Greenwood U Inouye
Jennifer Z Malet
Antonio Y Figeroa
James D Briddick
Jefferson B Amigon
Aditya C Ruta
Rodrigues E Ruta
Mayumi W Royster
Arvin C Ostrosky
Arvin E Maclead
Maria G Iturbide
Adams O Whobrey
Smith R Glick
Faith X Albares
Misaki K Amigon
Morrow Z Flosi
Deepesh U Foller
Juan M Dilliard
Munro I Inouye
Jones S Gaucho
Munro S Venere
Wickens W Bowley
Ivar R Stenseth
Antonio V Perin
Mayumi A Poquette
Juan Z Marrier
James C Rulapaugh
Maisha X Rim
Ivar G Glick
Jennifer R Dilliard
Chavez B Oldroyd
Leja I Stenseth
Chavez J Malet
Darci F Iturbide
Stacey C Albares
Ashley Y Chui
Aditya M Flosi
Deepesh K Nestle
Stacey Q Bowley
Jennifer O Saylors
Antonio P Glick
Ricardo A Royster
IdCountryDate
1000Japan2026-06-03
1001France2026-06-04
1002Canada2026-05-31
1003Japan2026-05-25
1004Germany2026-05-21
1005Italy2026-06-13
1006France2026-06-03
1007Canada2026-06-16
1008France2026-05-29
1009India2026-06-11
1010Germany2026-05-26
1011Brazil2026-06-13
1012Canada2026-06-07
1013Italy2026-06-05
1014Russia2026-05-26
1015Canada2026-06-15
1016Brazil2026-06-11
1017Italy2026-05-18
1018Argentina2026-06-06
1019India2026-06-15
1020Australia2026-05-28
1021Russia2026-05-31
1022Argentina2026-05-29
1023Canada2026-06-02
1024United Kingdom2026-06-13
1025Argentina2026-05-23
1026Russia2026-06-09
1027Canada2026-06-04
1028Canada2026-06-01
1029Brazil2026-06-08
1030Russia2026-06-07
1031France2026-05-24
1032France2026-06-01
1033India2026-06-10
1034Canada2026-05-20
1035Spain2026-06-10
1036Japan2026-06-11
1037Spain2026-06-13
1038Japan2026-05-28
1039Argentina2026-05-30
1040Russia2026-06-04
1041Canada2026-06-08
1042United Kingdom2026-06-03
1043Australia2026-06-07
1044Germany2026-05-27
1045Italy2026-05-30
1046France2026-06-06
1047Russia2026-05-30
1048Spain2026-05-18
1049Germany2026-05-26

On-Demand Data

NameIdCountryDate
Jeanfrancois J Kusko1000Russia2026-05-31
Murillo Q Vocelka1001Brazil2026-05-29
Stacey I Vocelka1002Spain2026-05-20
Johnson J Glick1003Italy2026-05-30
David K Ostrosky1004Brazil2026-06-12
Smith U Ferencz1005Russia2026-06-06
Sinclair X Dilliard1006Russia2026-05-20
Ashley N Slusarski1007Italy2026-06-11
Mujtaba G Saylors1008India2026-05-27
Juan A Venere1009Brazil2026-06-06
David D Schemmer1010Brazil2026-05-19
Faith R Waycott1011Spain2026-05-23
Faith G Nicka1012Japan2026-05-30
Johnson Q Inouye1013Japan2026-06-03
Izzy L Shinko1014Russia2026-06-06
Claire S Kusko1015Japan2026-05-19
Ashley S Royster1016Spain2026-06-03
Silvio V Perin1017France2026-06-14
Nicolas T Maclead1018Argentina2026-06-14
Kaitlin V Whobrey1019India2026-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco L VocelkaGermanyIoni Bowcher NEGOTIATION
Jones U FollerRussiaStephen Shaw PROPOSAL
Octavia S PoquetteAustraliaAsiya Javayant UNQUALIFIED
Aika N PaprockiAustraliaElwin Sharvill QUALIFIED
Claire Y SlusarskiItalyAsiya Javayant QUALIFIED
Aditya C CaudyItalyAmy Elsner QUALIFIED
Smith K VenereArgentinaXuxue Feng NEW
Arvin E OldroydBrazilAnna Fali QUALIFIED
Maisha M SlusarskiCanadaAsiya Javayant UNQUALIFIED
Smith X DilliardCanadaElwin Sharvill RENEWAL
Nicolas M PoquetteItalyAnna Fali NEGOTIATION
Isabel P RimGermanyAsiya Javayant QUALIFIED
Juan S PaprockiItalyIoni Bowcher RENEWAL
Chavez T GauchoJapanElwin Sharvill NEW
Leja E IturbideBrazilBernardo Dominic RENEWAL
Jennifer P CampainItalyXuxue Feng UNQUALIFIED
Misaki Z GarufiSpainAsiya Javayant NEW
Emily O GauchoGermanyAmy Elsner QUALIFIED
Smith M MaletArgentinaElwin Sharvill RENEWAL
Isabel K RulapaughJapanIoni Bowcher UNQUALIFIED
Juan K FlosiFranceElwin Sharvill NEW
Aruna P KuskoBrazilAnna Fali RENEWAL
Greenwood N VenereBrazilAmy Elsner RENEWAL
Ivar B GillianIndiaAsiya Javayant PROPOSAL
Alejandro K PerinAustraliaIoni Bowcher NEGOTIATION
Cody E BriddickFranceAsiya Javayant UNQUALIFIED
Aika B PoquetteArgentinaXuxue Feng NEW
Maisha B RoysterJapanAmy Elsner UNQUALIFIED
Ashley R SaylorsRussiaIvan Magalhaes UNQUALIFIED
Adams Q FigeroaGermanyIoni Bowcher RENEWAL
David A DarakjySpainElwin Sharvill UNQUALIFIED
Greenwood K RulapaughSpainElwin Sharvill UNQUALIFIED
Cody W TollnerArgentinaStephen Shaw RENEWAL
Izzy R SaylorsFranceOnyama Limba RENEWAL
Salvatore W PerinFranceIvan Magalhaes QUALIFIED
Cody K CaldareraItalyIvan Magalhaes NEW
Deepesh G PaprockiBrazilXuxue Feng NEW
Faith D ChuiCanadaAsiya Javayant NEW
David Y RulapaughAustraliaBernardo Dominic PROPOSAL
Leon A BowleyItalyIvan Magalhaes 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.