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 K StensethBrazilAsiya Javayant PROPOSAL
Leja Y OstroskyCanadaOnyama Limba UNQUALIFIED
Aika X KuskoGermanyStephen Shaw UNQUALIFIED
Mujtaba X VocelkaSpainElwin Sharvill QUALIFIED
Octavia X BriddickAustraliaIvan Magalhaes NEW
Smith T TollnerBrazilIoni Bowcher UNQUALIFIED
Deepesh E WieserBrazilAmy Elsner RENEWAL
Wickens H BowleyUnited KingdomXuxue Feng NEW
Adams E OstroskySpainOnyama Limba UNQUALIFIED
Darci T BowleyItalyOnyama Limba RENEWAL
Morrow I StensethRussiaAsiya Javayant NEGOTIATION
Claire J RulapaughAustraliaAmy Elsner RENEWAL
Antonio J BowleyRussiaOnyama Limba RENEWAL
Munro X VenereSpainStephen Shaw UNQUALIFIED
Jefferson B NestleItalyIoni Bowcher QUALIFIED
Misaki J DarakjyJapanXuxue Feng UNQUALIFIED
Rodrigues S VenereJapanIvan Magalhaes RENEWAL
Octavia O NickaRussiaAmy Elsner RENEWAL
Smith E BowleyCanadaXuxue Feng PROPOSAL
Sinclair G CaudyItalyOnyama Limba NEW
Kaitlin E RoysterGermanyIvan Magalhaes NEGOTIATION
Faith K StensethBrazilXuxue Feng NEGOTIATION
Stacey N ShinkoFranceElwin Sharvill NEW
James F KolmetzItalyStephen Shaw QUALIFIED
Stacey D KuskoAustraliaIvan Magalhaes NEGOTIATION
Munro V WaycottRussiaIvan Magalhaes NEW
David W NickaAustraliaStephen Shaw UNQUALIFIED
Ashley Q FlosiGermanyIvan Magalhaes RENEWAL
Ricardo U SergiJapanElwin Sharvill QUALIFIED
Francesco P WieserBrazilElwin Sharvill NEW
Jennifer U BriddickFranceOnyama Limba NEW
Stacey O GlickArgentinaAmy Elsner QUALIFIED
Isabel O SchemmerFranceElwin Sharvill UNQUALIFIED
Murillo Y AlbaresFranceXuxue Feng NEW
Costa J CaudyCanadaAsiya Javayant NEW
Octavia T GillianGermanyBernardo Dominic PROPOSAL
James S KuskoBrazilBernardo Dominic NEGOTIATION
Jones X VocelkaAustraliaBernardo Dominic NEGOTIATION
James H AmigonAustraliaBernardo Dominic QUALIFIED
Nicolas S WaycottRussiaIoni Bowcher PROPOSAL
Sinclair M InouyeIndiaElwin Sharvill NEGOTIATION
Deepesh X GauchoJapanIvan Magalhaes UNQUALIFIED
Salvatore X PaprockiSpainStephen Shaw NEGOTIATION
Faith N WaycottJapanIoni Bowcher QUALIFIED
Stacey W WaycottRussiaStephen Shaw RENEWAL
Stacey I DilliardIndiaOnyama Limba PROPOSAL
Silvio J RulapaughCanadaStephen Shaw RENEWAL
Kaitlin R CaudyJapanOnyama Limba QUALIFIED
Chavez Y PerinFranceOnyama Limba UNQUALIFIED
Misaki D ShinkoCanadaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Costa O MaletAustraliaAmy Elsner UNQUALIFIED
Jennifer K ButtBrazilAnna Fali UNQUALIFIED
Faith E DoeIndiaIoni Bowcher RENEWAL
Smith C StensethItalyIvan Magalhaes QUALIFIED
Misaki K PoquetteArgentinaAsiya Javayant PROPOSAL
Octavia R KuskoItalyStephen Shaw NEW
Maria D TollnerCanadaElwin Sharvill NEGOTIATION
Morrow P ButtAustraliaAnna Fali NEW
Faith P CaudySpainAnna Fali NEW
Rodrigues F OldroydCanadaIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar V WaycottFrance2026-06-12King, Christopher A Esq NEGOTIATION88Ivan Magalhaes
1001Juan C GauchoFrance2026-05-21Printing Dimensions PROPOSAL65Bernardo Dominic
1002Salvatore G AlbaresUnited Kingdom2026-06-05Truhlar And Truhlar Attys UNQUALIFIED93Stephen Shaw
1003Clifford E BologniaIndia2026-06-03Feiner Bros RENEWAL31Xuxue Feng
1004Ivar O VenereRussia2026-06-04Rousseaux, Michael Esq PROPOSAL39Bernardo Dominic
1005Greenwood O PerinUnited Kingdom2026-06-10Benton, John B Jr UNQUALIFIED37Amy Elsner
1006Izzy N BowleyAustralia2026-06-11Chanay, Jeffrey A Esq QUALIFIED50Xuxue Feng
1007Alejandro C CaldareraAustralia2026-05-21Feiner Bros UNQUALIFIED66Onyama Limba
1008Faith W CaldareraSpain2026-05-21Commercial Press NEW24Anna Fali
1009Ivar R GillianFrance2026-06-12Rousseaux, Michael Esq RENEWAL83Ivan Magalhaes
1010Alejandro S DoeFrance2026-06-12Rousseaux, Michael Esq QUALIFIED24Onyama Limba
1011Misaki L NickaJapan2026-06-04Chanay, Jeffrey A Esq UNQUALIFIED41Ivan Magalhaes
1012Jennifer J FollerUnited Kingdom2026-06-14Truhlar And Truhlar Attys PROPOSAL93Amy Elsner
1013Morrow F CaudyArgentina2026-05-19Chapman, Ross E Esq NEGOTIATION57Ivan Magalhaes
1014Cody Z CaudyIndia2026-05-31Printing Dimensions UNQUALIFIED28Onyama Limba
1015Izzy K StensethGermany2026-05-31Printing Dimensions UNQUALIFIED94Stephen Shaw
1016Jones A GauchoJapan2026-06-09Rousseaux, Michael Esq UNQUALIFIED69Ivan Magalhaes
1017Alejandro B DilliardItaly2026-06-05Rangoni Of Florence PROPOSAL54Xuxue Feng
1018Silvio H CaudyBrazil2026-05-27Feiner Bros RENEWAL55Ivan Magalhaes
1019Sinclair Q VenereItaly2026-06-13Benton, John B Jr RENEWAL96Xuxue Feng
1020Antonio V PerinAustralia2026-05-31Chanay, Jeffrey A Esq NEW57Xuxue Feng
1021Izzy H PaprockiItaly2026-06-05Truhlar And Truhlar Attys NEGOTIATION50Ioni Bowcher
1022Costa A GillianRussia2026-06-03Chapman, Ross E Esq QUALIFIED76Onyama Limba
1023Julie N DilliardArgentina2026-05-17King, Christopher A Esq UNQUALIFIED31Ivan Magalhaes
1024Ashley Z MaletJapan2026-06-06Feiner Bros QUALIFIED37Anna Fali
1025Ivar W BologniaUnited Kingdom2026-06-07Dorl, James J Esq NEW59Ioni Bowcher
1026Darci F BriddickGermany2026-06-02Chemel, James L Cpa NEGOTIATION21Ivan Magalhaes
1027Morrow F WhobreyIndia2026-06-13Buckley Miller Wright NEGOTIATION72Elwin Sharvill
1028Ivar F CampainAustralia2026-06-13Feiner Bros QUALIFIED18Ivan Magalhaes
1029Juan R GauchoFrance2026-06-05Chemel, James L Cpa PROPOSAL62Xuxue Feng
1030Sinclair L DarakjyAustralia2026-06-06King, Christopher A Esq QUALIFIED94Stephen Shaw
1031Isabel T VenereCanada2026-05-20Chapman, Ross E Esq NEW93Anna Fali
1032Salvatore H WhobreyBrazil2026-05-27Printing Dimensions NEGOTIATION64Bernardo Dominic
1033Nicolas T SergiCanada2026-05-31Chanay, Jeffrey A Esq NEW29Ioni Bowcher
1034Kaitlin M MaletArgentina2026-05-23Benton, John B Jr QUALIFIED84Asiya Javayant
1035Darci F OstroskyIndia2026-06-15Commercial Press QUALIFIED64Asiya Javayant
1036Mujtaba T SergiGermany2026-06-12Dorl, James J Esq UNQUALIFIED68Amy Elsner
1037Kadeem W NestleJapan2026-05-26Feiner Bros NEW29Amy Elsner
1038Francesco G FlosiCanada2026-05-23Morlong Associates PROPOSAL60Xuxue Feng
1039Greenwood K DilliardBrazil2026-05-26Printing Dimensions QUALIFIED53Asiya Javayant
1040James X RoysterSpain2026-05-23Benton, John B Jr PROPOSAL18Ivan Magalhaes
1041James Y MorascaAustralia2026-06-09Feltz Printing Service PROPOSAL70Xuxue Feng
1042Maria I NickaIndia2026-06-04Rangoni Of Florence NEGOTIATION72Bernardo Dominic
1043Maria I RulapaughJapan2026-06-02Dorl, James J Esq PROPOSAL37Xuxue Feng
1044Izzy W TollnerItaly2026-05-18Truhlar And Truhlar Attys NEGOTIATION60Anna Fali
1045Rodrigues B RoysterItaly2026-05-17Chapman, Ross E Esq QUALIFIED99Anna Fali
1046Kadeem A WieserGermany2026-06-03Dorl, James J Esq NEGOTIATION80Xuxue Feng
1047Sinclair G RulapaughJapan2026-05-22Chanay, Jeffrey A Esq NEGOTIATION97Xuxue Feng
1048Johnson S BowleyIndia2026-05-21King, Christopher A Esq PROPOSAL45Asiya Javayant
1049Adams M FollerItaly2026-05-30Rangoni Of Florence NEGOTIATION11Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Maisha B GlickJapanOnyama Limba QUALIFIED
Aditya Y PoquetteItalyBernardo Dominic NEW
Rodrigues T MacleadAustraliaAsiya Javayant UNQUALIFIED
Arvin R StockhamCanadaAmy Elsner NEW
Morrow O AlbaresSpainIvan Magalhaes RENEWAL
David N WaycottJapanStephen Shaw NEW
Mayumi F MacleadSpainAnna Fali UNQUALIFIED
Wickens M NickaBrazilStephen Shaw QUALIFIED
Murillo L IturbideRussiaStephen Shaw PROPOSAL
Arvin F RulapaughRussiaIoni Bowcher RENEWAL
Smith T KuskoJapanXuxue Feng QUALIFIED
Alejandro T PerinItalyAsiya Javayant PROPOSAL
Tony G BriddickJapanAsiya Javayant QUALIFIED
Clifford F BologniaUnited KingdomIvan Magalhaes PROPOSAL
Jeanfrancois F PaprockiGermanyStephen Shaw UNQUALIFIED
Munro C CaldareraAustraliaAsiya Javayant NEW
Jeanfrancois H BriddickJapanOnyama Limba NEW
Maria R SergiRussiaElwin Sharvill NEW
Kaitlin N BriddickArgentinaElwin Sharvill NEGOTIATION
Smith A InouyeGermanyIoni Bowcher UNQUALIFIED
Mayumi P SlusarskiUnited KingdomStephen Shaw RENEWAL
Smith F NestleArgentinaXuxue Feng PROPOSAL
Aditya Z PerinIndiaIoni Bowcher NEGOTIATION
Morrow K BriddickIndiaBernardo Dominic RENEWAL
Mujtaba D AlbaresGermanyOnyama Limba NEW
Claire J BowleyItalyAsiya Javayant QUALIFIED
Mujtaba F FigeroaCanadaBernardo Dominic PROPOSAL
Jefferson E FerenczGermanyAmy Elsner PROPOSAL
Clifford I RimJapanXuxue Feng RENEWAL
Jones F ChuiIndiaXuxue Feng PROPOSAL
Jefferson M TollnerFranceBernardo Dominic NEW
Silvio K WaycottIndiaAmy Elsner NEGOTIATION
Adams P MaletGermanyIvan Magalhaes NEGOTIATION
Ivar S StockhamGermanyAmy Elsner NEGOTIATION
Alejandro F WhobreyItalyElwin Sharvill NEGOTIATION
Clifford V SergiBrazilStephen Shaw NEW
Silvio B RutaSpainAmy Elsner NEGOTIATION
Stacey R FollerFranceIoni Bowcher UNQUALIFIED
Wickens H VenereGermanyIvan Magalhaes NEW
Kadeem Q PaprockiItalyAmy Elsner UNQUALIFIED
Rodrigues Z StockhamFranceElwin Sharvill NEGOTIATION
Silvio M RimSpainAsiya Javayant QUALIFIED
Darci P OldroydBrazilAnna Fali RENEWAL
Adams R CaldareraJapanIvan Magalhaes NEGOTIATION
Deepesh Q ButtRussiaXuxue Feng UNQUALIFIED
Jefferson S MaletRussiaAnna Fali NEGOTIATION
Tony A RulapaughArgentinaBernardo Dominic NEGOTIATION
Sinclair S FigeroaBrazilBernardo Dominic RENEWAL
Leja E DilliardAustraliaIvan Magalhaes RENEWAL
Jones Y TollnerFranceStephen Shaw NEW
Frozen Columns
Name
Francesco D Dilliard
Darci W Stockham
Greenwood I Maclead
Aika Q Shinko
Julie Q Vocelka
James R Slusarski
Juan P Slusarski
Leja Q Marrier
Jones B Inouye
Aditya B Amigon
Jennifer L Caudy
Jeanfrancois B Rulapaugh
James R Darakjy
Chavez T Paprocki
Costa I Campain
Izzy M Malet
Ricardo X Chui
Julie F Butt
James J Schemmer
Aika H Stenseth
Clifford B Kusko
Wickens H Nicka
Johnson Z Iturbide
Leja S Waycott
Darci G Garufi
Greenwood U Caldarera
Jefferson A Whobrey
Wickens R Nicka
Kaitlin W Vocelka
Morrow Q Oldroyd
Silvio F Stockham
Arvin C Morasca
Aruna R Kusko
Mujtaba F Rulapaugh
Stacey L Gaucho
Jefferson E Stockham
Isabel M Flosi
Morrow D Gaucho
Adams J Ostrosky
Juan I Perin
Tony X Malet
Jeanfrancois Y Glick
Leon Y Nestle
Silvio X Maclead
Darci A Whobrey
Wickens W Chui
Costa T Garufi
Ricardo P Albares
Izzy F Bolognia
Antonio F Butt
IdCountryDate
1000France2026-06-02
1001Spain2026-05-22
1002Japan2026-05-23
1003Russia2026-05-19
1004Canada2026-06-04
1005France2026-06-09
1006Germany2026-05-17
1007France2026-05-31
1008India2026-06-02
1009Argentina2026-05-26
1010France2026-05-29
1011France2026-05-30
1012France2026-05-25
1013France2026-05-21
1014Germany2026-05-24
1015India2026-06-09
1016India2026-05-20
1017Spain2026-05-20
1018Brazil2026-06-14
1019Russia2026-06-12
1020Germany2026-06-05
1021France2026-05-31
1022Japan2026-06-13
1023Australia2026-05-19
1024Spain2026-05-22
1025Spain2026-06-03
1026Canada2026-06-05
1027Australia2026-05-25
1028Germany2026-06-15
1029France2026-06-02
1030India2026-06-06
1031Argentina2026-05-17
1032Russia2026-06-15
1033Russia2026-05-21
1034Argentina2026-06-08
1035Brazil2026-05-27
1036Brazil2026-05-21
1037Italy2026-06-01
1038Italy2026-06-07
1039Canada2026-05-20
1040Brazil2026-05-21
1041Germany2026-05-26
1042Germany2026-06-11
1043Brazil2026-05-19
1044France2026-05-23
1045Spain2026-06-10
1046Canada2026-06-03
1047Brazil2026-06-10
1048Italy2026-05-31
1049France2026-05-24

On-Demand Data

NameIdCountryDate
Tony J Rulapaugh1000Brazil2026-05-26
Sinclair C Ferencz1001Russia2026-06-13
Darci F Briddick1002United Kingdom2026-05-29
Greenwood R Nestle1003France2026-06-05
Tony G Rulapaugh1004Spain2026-06-02
Aika U Dilliard1005Canada2026-05-26
Maria O Sergi1006United Kingdom2026-05-17
Ricardo C Waycott1007Russia2026-05-29
Antonio T Briddick1008United Kingdom2026-05-23
Francesco N Nestle1009India2026-06-10
Morrow I Poquette1010Spain2026-06-08
Leon F Gaucho1011Spain2026-05-23
Octavia B Poquette1012Australia2026-05-29
Aika F Wieser1013India2026-06-03
Maria V Sergi1014Italy2026-05-21
Clifford P Caldarera1015Russia2026-05-26
Murillo S Stenseth1016France2026-05-30
Murillo H Stenseth1017France2026-06-08
Kaitlin P Campain1018India2026-05-31
Arvin M Iturbide1019Japan2026-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo T ChuiRussiaIoni Bowcher RENEWAL
Octavia F DilliardGermanyIoni Bowcher UNQUALIFIED
Darci C PaprockiBrazilAsiya Javayant UNQUALIFIED
Izzy M BowleyFranceIvan Magalhaes PROPOSAL
Maria Y FigeroaFranceElwin Sharvill PROPOSAL
Kaitlin G VocelkaRussiaBernardo Dominic NEW
Izzy J OldroydFranceOnyama Limba PROPOSAL
Clifford P CaldareraAustraliaOnyama Limba UNQUALIFIED
Aditya T StensethUnited KingdomBernardo Dominic RENEWAL
Chavez V DoeBrazilXuxue Feng NEGOTIATION
Stacey G OstroskyRussiaAmy Elsner NEW
Izzy W VocelkaFranceIoni Bowcher QUALIFIED
Jeanfrancois E CaldareraJapanStephen Shaw NEW
Tony R PoquetteUnited KingdomOnyama Limba PROPOSAL
Clifford A ChuiSpainIvan Magalhaes QUALIFIED
Silvio E WieserGermanyBernardo Dominic NEW
Rodrigues W BologniaGermanyAnna Fali RENEWAL
Stacey R StockhamCanadaElwin Sharvill QUALIFIED
Octavia U RoysterGermanyAnna Fali NEW
Silvio F AlbaresRussiaAnna Fali UNQUALIFIED
Adams H SchemmerAustraliaXuxue Feng QUALIFIED
Ivar C CampainBrazilIoni Bowcher RENEWAL
Ivar E NestleItalyBernardo Dominic PROPOSAL
Isabel U VenereArgentinaIvan Magalhaes PROPOSAL
Maria Z ButtSpainAmy Elsner NEW
Antonio Q TollnerCanadaElwin Sharvill RENEWAL
Adams H PoquetteCanadaAsiya Javayant UNQUALIFIED
Izzy J MaletFranceBernardo Dominic NEGOTIATION
Morrow D ShinkoIndiaAmy Elsner QUALIFIED
Aditya C PerinJapanAsiya Javayant UNQUALIFIED
James U BologniaFranceAnna Fali NEGOTIATION
Mayumi W PoquetteItalyIvan Magalhaes PROPOSAL
David T CaudyIndiaAnna Fali RENEWAL
Leon Q AlbaresArgentinaXuxue Feng UNQUALIFIED
Wickens U StockhamIndiaXuxue Feng PROPOSAL
Julie F VenereJapanXuxue Feng RENEWAL
Juan O SlusarskiCanadaIoni Bowcher RENEWAL
Jeanfrancois A WaycottFranceIvan Magalhaes PROPOSAL
Octavia O DarakjyGermanyBernardo Dominic UNQUALIFIED
Mayumi K PaprockiJapanAmy Elsner 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.