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
Greenwood S WaycottSpainXuxue Feng NEW
Ivar Q BologniaCanadaIoni Bowcher QUALIFIED
Cody X ShinkoFranceOnyama Limba NEGOTIATION
Darci A MorascaJapanBernardo Dominic QUALIFIED
Smith B SaylorsFranceBernardo Dominic QUALIFIED
Munro M MorascaBrazilStephen Shaw UNQUALIFIED
Aditya M DarakjyCanadaElwin Sharvill PROPOSAL
Octavia Q SaylorsItalyElwin Sharvill NEGOTIATION
Juan G MacleadBrazilBernardo Dominic UNQUALIFIED
Arvin T RoysterSpainXuxue Feng RENEWAL
Smith A PaprockiArgentinaIvan Magalhaes UNQUALIFIED
Johnson O DilliardArgentinaAnna Fali QUALIFIED
Kadeem C NestleAustraliaIoni Bowcher PROPOSAL
Darci T TollnerCanadaAmy Elsner NEGOTIATION
Darci G CaldareraArgentinaBernardo Dominic NEGOTIATION
Adams W GauchoRussiaAmy Elsner QUALIFIED
Tony D OstroskyRussiaOnyama Limba UNQUALIFIED
Aika L SlusarskiAustraliaAsiya Javayant NEGOTIATION
Faith H NestleArgentinaBernardo Dominic UNQUALIFIED
Alejandro P SlusarskiUnited KingdomStephen Shaw RENEWAL
Alejandro D CaldareraAustraliaAmy Elsner UNQUALIFIED
Tony S FlosiArgentinaBernardo Dominic QUALIFIED
Darci Y RutaArgentinaAsiya Javayant UNQUALIFIED
Smith E RoysterFranceElwin Sharvill NEW
Jefferson L BologniaSpainIvan Magalhaes NEW
Salvatore K CaldareraRussiaIoni Bowcher RENEWAL
Maisha Y DoeGermanyXuxue Feng QUALIFIED
Mujtaba M GlickFranceBernardo Dominic NEW
Morrow A BowleyItalyElwin Sharvill PROPOSAL
David J PoquetteSpainAsiya Javayant NEGOTIATION
Maisha M OldroydBrazilOnyama Limba NEW
Murillo O FigeroaGermanyAsiya Javayant QUALIFIED
Salvatore O GauchoArgentinaIoni Bowcher QUALIFIED
Jeanfrancois N DarakjySpainAmy Elsner RENEWAL
Antonio M FollerSpainAnna Fali UNQUALIFIED
Ashley S VocelkaFranceIvan Magalhaes NEGOTIATION
Leja W OstroskyIndiaBernardo Dominic PROPOSAL
Johnson Y FerenczArgentinaXuxue Feng NEGOTIATION
Ivar I BriddickAustraliaIoni Bowcher QUALIFIED
Ashley X DoeAustraliaAsiya Javayant NEGOTIATION
Munro C SergiRussiaAmy Elsner RENEWAL
Emily T SchemmerGermanyBernardo Dominic NEGOTIATION
Greenwood M GillianAustraliaBernardo Dominic UNQUALIFIED
Cody C SergiIndiaElwin Sharvill QUALIFIED
Emily L AlbaresSpainBernardo Dominic NEW
Adams F InouyeRussiaOnyama Limba NEW
Jennifer O PerinFranceIoni Bowcher NEGOTIATION
Francesco K CaldareraItalyIvan Magalhaes RENEWAL
Isabel C AlbaresRussiaStephen Shaw QUALIFIED
Octavia U GauchoCanadaAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Munro K OldroydSpainBernardo Dominic PROPOSAL
Sinclair G GillianFranceIvan Magalhaes RENEWAL
Costa Y IturbideCanadaAnna Fali QUALIFIED
Juan W CaudyCanadaIvan Magalhaes NEGOTIATION
Cody Z SaylorsIndiaBernardo Dominic NEGOTIATION
Faith B AlbaresFranceAsiya Javayant QUALIFIED
Leon G OstroskyArgentinaXuxue Feng QUALIFIED
Wickens Y FollerIndiaStephen Shaw QUALIFIED
Darci C GillianAustraliaIvan Magalhaes QUALIFIED
Darci U StensethItalyBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco A DilliardFrance2026-05-12Dorl, James J Esq QUALIFIED26Elwin Sharvill
1001Jeanfrancois G GauchoIndia2026-05-27Rangoni Of Florence UNQUALIFIED28Stephen Shaw
1002Ashley H VenereBrazil2026-06-03Morlong Associates QUALIFIED47Ivan Magalhaes
1003Johnson M KuskoIndia2026-05-25Feltz Printing Service NEW47Amy Elsner
1004Adams T WieserBrazil2026-05-17Rousseaux, Michael Esq RENEWAL61Ivan Magalhaes
1005Leja O PoquetteCanada2026-05-23King, Christopher A Esq UNQUALIFIED54Asiya Javayant
1006Chavez S FerenczCanada2026-05-11Rousseaux, Michael Esq NEW25Ioni Bowcher
1007Arvin J PaprockiJapan2026-05-30King, Christopher A Esq UNQUALIFIED80Bernardo Dominic
1008Alejandro V PerinItaly2026-05-14Rangoni Of Florence RENEWAL17Amy Elsner
1009Deepesh G ChuiJapan2026-05-31Feltz Printing Service RENEWAL19Onyama Limba
1010Silvio T DarakjyJapan2026-05-13King, Christopher A Esq RENEWAL42Amy Elsner
1011Costa J RutaJapan2026-05-27Commercial Press QUALIFIED72Anna Fali
1012Arvin E AlbaresJapan2026-05-13Dorl, James J Esq QUALIFIED3Stephen Shaw
1013Stacey J CaudyAustralia2026-05-25Rangoni Of Florence PROPOSAL49Ioni Bowcher
1014Adams T RulapaughCanada2026-06-05Rousseaux, Michael Esq RENEWAL29Amy Elsner
1015Silvio P BowleyFrance2026-05-24Chemel, James L Cpa QUALIFIED35Bernardo Dominic
1016Jeanfrancois J WaycottRussia2026-05-22King, Christopher A Esq PROPOSAL2Stephen Shaw
1017Costa O FigeroaItaly2026-06-02Printing Dimensions NEGOTIATION48Xuxue Feng
1018Cody R MorascaSpain2026-05-30Chanay, Jeffrey A Esq RENEWAL7Stephen Shaw
1019Jefferson K RimBrazil2026-05-18Chanay, Jeffrey A Esq RENEWAL66Amy Elsner
1020Alejandro S SchemmerSpain2026-05-23Feltz Printing Service RENEWAL7Ivan Magalhaes
1021Stacey Q RulapaughGermany2026-05-16Truhlar And Truhlar Attys RENEWAL90Ioni Bowcher
1022Aditya W PaprockiRussia2026-06-08Chapman, Ross E Esq PROPOSAL84Bernardo Dominic
1023Smith U StensethJapan2026-05-16Rousseaux, Michael Esq RENEWAL30Xuxue Feng
1024Jones P MacleadCanada2026-05-21Rangoni Of Florence UNQUALIFIED47Ioni Bowcher
1025David K MaletCanada2026-06-07Commercial Press RENEWAL31Anna Fali
1026Alejandro N SergiRussia2026-05-13Rangoni Of Florence UNQUALIFIED63Amy Elsner
1027Ricardo G GarufiGermany2026-05-15Chemel, James L Cpa QUALIFIED19Asiya Javayant
1028Rodrigues T WhobreyIndia2026-06-08Feltz Printing Service NEGOTIATION68Ivan Magalhaes
1029Nicolas L BowleyRussia2026-05-28King, Christopher A Esq UNQUALIFIED93Xuxue Feng
1030Nicolas X ChuiGermany2026-05-17Truhlar And Truhlar Attys NEW67Asiya Javayant
1031Sinclair G GauchoArgentina2026-05-20Feiner Bros PROPOSAL95Onyama Limba
1032Aditya T RutaGermany2026-05-27Chapman, Ross E Esq QUALIFIED99Ivan Magalhaes
1033Murillo X KuskoJapan2026-05-20Dorl, James J Esq RENEWAL19Stephen Shaw
1034Jones K BologniaUnited Kingdom2026-05-13Rousseaux, Michael Esq RENEWAL17Elwin Sharvill
1035Nicolas H IturbideArgentina2026-05-11Printing Dimensions RENEWAL28Anna Fali
1036Morrow J FerenczFrance2026-06-05Dorl, James J Esq NEGOTIATION99Onyama Limba
1037Salvatore G NickaItaly2026-05-11Morlong Associates NEGOTIATION56Onyama Limba
1038Leon C OstroskyGermany2026-05-28Commercial Press PROPOSAL36Stephen Shaw
1039James N StensethGermany2026-05-25Dorl, James J Esq NEW32Stephen Shaw
1040Mayumi J SlusarskiCanada2026-06-09Morlong Associates NEW82Bernardo Dominic
1041Wickens E NickaJapan2026-05-23Feltz Printing Service QUALIFIED32Ioni Bowcher
1042Morrow R MorascaFrance2026-05-30Truhlar And Truhlar Attys PROPOSAL79Ivan Magalhaes
1043Mujtaba I StockhamCanada2026-05-18Commercial Press NEGOTIATION59Stephen Shaw
1044Tony O GauchoBrazil2026-05-25King, Christopher A Esq NEW71Stephen Shaw
1045Darci G MaletItaly2026-06-09Dorl, James J Esq UNQUALIFIED23Amy Elsner
1046Johnson J MaletJapan2026-06-06Rangoni Of Florence RENEWAL45Elwin Sharvill
1047Aditya E OstroskyIndia2026-05-11Chemel, James L Cpa NEW57Bernardo Dominic
1048Deepesh F ShinkoCanada2026-06-04Chemel, James L Cpa PROPOSAL74Amy Elsner
1049Johnson G NickaJapan2026-05-24Commercial Press NEGOTIATION51Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Sinclair O AmigonRussiaElwin Sharvill UNQUALIFIED
Clifford C ButtCanadaIvan Magalhaes NEGOTIATION
Salvatore G StockhamIndiaElwin Sharvill RENEWAL
Mayumi S PoquetteArgentinaStephen Shaw RENEWAL
Octavia S BriddickBrazilIvan Magalhaes NEW
Kadeem Z FerenczFranceXuxue Feng PROPOSAL
Stacey P GlickArgentinaAnna Fali NEGOTIATION
Claire B GillianJapanOnyama Limba PROPOSAL
Jones I StockhamBrazilElwin Sharvill NEGOTIATION
Stacey D MorascaIndiaBernardo Dominic PROPOSAL
Maisha Q SlusarskiJapanElwin Sharvill UNQUALIFIED
Greenwood G BriddickSpainXuxue Feng PROPOSAL
Jeanfrancois R ChuiJapanAsiya Javayant RENEWAL
Juan R ButtRussiaAnna Fali NEGOTIATION
Sinclair Y CampainIndiaAsiya Javayant UNQUALIFIED
Leon S ShinkoBrazilIoni Bowcher UNQUALIFIED
Leon Y RimRussiaBernardo Dominic RENEWAL
Leja H WieserSpainXuxue Feng QUALIFIED
Leja T CaudySpainAsiya Javayant PROPOSAL
Jeanfrancois W DarakjyGermanyIvan Magalhaes QUALIFIED
Francesco I CaldareraBrazilXuxue Feng UNQUALIFIED
Rodrigues U NestleCanadaAsiya Javayant UNQUALIFIED
Wickens A StockhamIndiaElwin Sharvill PROPOSAL
Aika F NestleCanadaBernardo Dominic PROPOSAL
Leja U BriddickArgentinaAmy Elsner NEW
David Q KuskoIndiaIvan Magalhaes UNQUALIFIED
Jeanfrancois L KolmetzBrazilXuxue Feng QUALIFIED
Maria N SlusarskiGermanyAmy Elsner PROPOSAL
Leon F DilliardRussiaXuxue Feng QUALIFIED
Aika R BowleyItalyAmy Elsner PROPOSAL
Misaki P MaletJapanElwin Sharvill PROPOSAL
James X CampainBrazilIvan Magalhaes PROPOSAL
Tony U KuskoIndiaIoni Bowcher NEGOTIATION
Nicolas G MorascaSpainElwin Sharvill NEW
Faith H NickaFranceBernardo Dominic PROPOSAL
Octavia R DarakjyArgentinaAmy Elsner UNQUALIFIED
Nicolas T OldroydArgentinaAmy Elsner QUALIFIED
Antonio P WhobreyItalyOnyama Limba PROPOSAL
Juan Y SergiBrazilIvan Magalhaes NEGOTIATION
Isabel S OldroydBrazilAmy Elsner NEGOTIATION
Stacey C NickaItalyXuxue Feng UNQUALIFIED
Julie B StensethGermanyIoni Bowcher QUALIFIED
Tony X StensethItalyXuxue Feng NEW
Misaki B KolmetzAustraliaAnna Fali NEGOTIATION
Johnson K DarakjyIndiaAmy Elsner UNQUALIFIED
Antonio B DoeGermanyOnyama Limba QUALIFIED
Jennifer Y TollnerArgentinaAsiya Javayant NEGOTIATION
Greenwood Y BowleyCanadaAmy Elsner PROPOSAL
Adams Q PerinArgentinaElwin Sharvill RENEWAL
Maria R InouyeCanadaElwin Sharvill QUALIFIED
Frozen Columns
Name
Jennifer G Amigon
Silvio G Malet
Deepesh P Rulapaugh
Salvatore Y Caldarera
Jeanfrancois R Caudy
Arvin S Rulapaugh
Smith Q Bowley
Rodrigues J Tollner
Silvio R Tollner
Morrow E Bowley
Deepesh C Oldroyd
Izzy X Briddick
Misaki R Stenseth
Emily O Vocelka
Aditya K Venere
Isabel E Nestle
Sinclair Y Caudy
Tony E Kusko
Clifford K Ostrosky
Sinclair Z Chui
Mujtaba E Paprocki
Morrow W Bolognia
Jeanfrancois O Marrier
Alejandro R Glick
Rodrigues M Nestle
Johnson R Albares
Isabel P Caldarera
Chavez H Amigon
Deepesh J Campain
Emily E Ruta
Morrow Q Rulapaugh
James Y Campain
Jefferson Y Oldroyd
Aruna P Albares
Antonio H Venere
Stacey H Iturbide
Isabel Q Bolognia
Mujtaba P Darakjy
Darci Y Briddick
Ivar O Sergi
Mujtaba B Kusko
Ivar Y Amigon
Arvin H Royster
Octavia L Tollner
Jeanfrancois P Glick
Arvin Y Stockham
Aruna N Paprocki
Ashley A Nestle
Isabel U Figeroa
Mayumi M Perin
IdCountryDate
1000United Kingdom2026-05-30
1001Italy2026-05-29
1002Italy2026-05-20
1003Germany2026-05-27
1004Spain2026-06-08
1005Italy2026-06-05
1006France2026-06-04
1007Russia2026-05-28
1008Spain2026-06-02
1009Russia2026-06-05
1010Australia2026-05-25
1011Italy2026-05-25
1012Australia2026-05-24
1013Japan2026-05-19
1014Spain2026-05-19
1015Canada2026-05-14
1016Canada2026-05-28
1017Germany2026-06-04
1018Spain2026-05-25
1019Germany2026-05-13
1020Spain2026-05-27
1021Australia2026-05-13
1022Russia2026-06-07
1023United Kingdom2026-05-27
1024Canada2026-05-12
1025France2026-05-29
1026Japan2026-05-20
1027Australia2026-05-22
1028Brazil2026-05-16
1029Russia2026-05-11
1030Germany2026-06-04
1031France2026-06-02
1032Canada2026-05-23
1033Argentina2026-06-08
1034Italy2026-05-16
1035United Kingdom2026-06-03
1036Russia2026-05-30
1037India2026-05-17
1038Japan2026-06-08
1039Russia2026-06-08
1040India2026-06-01
1041India2026-06-02
1042Australia2026-05-15
1043Italy2026-05-22
1044Spain2026-05-17
1045Japan2026-05-19
1046India2026-05-31
1047Japan2026-05-22
1048Australia2026-05-17
1049Brazil2026-05-21

On-Demand Data

NameIdCountryDate
Murillo Y Poquette1000Spain2026-05-20
Leja B Darakjy1001Argentina2026-05-13
Johnson Q Oldroyd1002Canada2026-06-09
Munro Z Rulapaugh1003Australia2026-05-26
Maria L Chui1004United Kingdom2026-05-17
Rodrigues K Stockham1005Australia2026-06-05
Morrow N Chui1006Russia2026-06-09
Faith B Butt1007Australia2026-05-27
Leon S Bolognia1008United Kingdom2026-05-19
Leon N Rulapaugh1009Italy2026-05-24
Rodrigues L Schemmer1010Spain2026-05-30
Cody L Bowley1011France2026-05-17
Clifford Z Kolmetz1012Germany2026-05-16
Clifford V Gaucho1013India2026-06-03
Sinclair H Paprocki1014Germany2026-06-07
Sinclair U Foller1015Australia2026-05-16
Alejandro B Kolmetz1016France2026-05-21
Leja C Vocelka1017Spain2026-05-20
Sinclair T Waycott1018Australia2026-06-06
Ricardo F Stockham1019Russia2026-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David Q TollnerIndiaOnyama Limba NEGOTIATION
Johnson Z InouyeCanadaAnna Fali QUALIFIED
Antonio E CampainItalyAmy Elsner UNQUALIFIED
Cody I FollerFranceAsiya Javayant PROPOSAL
Arvin I ChuiBrazilIvan Magalhaes RENEWAL
Wickens Y DarakjyItalyElwin Sharvill NEGOTIATION
Kadeem B BriddickBrazilIvan Magalhaes RENEWAL
Misaki E FigeroaRussiaIvan Magalhaes UNQUALIFIED
Jeanfrancois G RulapaughGermanyAmy Elsner NEGOTIATION
Izzy E SergiGermanyAnna Fali PROPOSAL
Aruna B PerinFranceAmy Elsner QUALIFIED
Faith I StockhamFranceOnyama Limba QUALIFIED
Leon S SergiUnited KingdomIoni Bowcher NEGOTIATION
Ashley C KolmetzArgentinaIvan Magalhaes UNQUALIFIED
David H CaldareraAustraliaElwin Sharvill UNQUALIFIED
Aditya X TollnerGermanyAmy Elsner PROPOSAL
Maria A MacleadUnited KingdomAnna Fali RENEWAL
Stacey A PoquetteBrazilBernardo Dominic QUALIFIED
Jeanfrancois F DoeGermanyOnyama Limba RENEWAL
Isabel P OstroskyIndiaStephen Shaw UNQUALIFIED
Munro F RutaUnited KingdomXuxue Feng PROPOSAL
Izzy J ShinkoRussiaStephen Shaw NEW
Rodrigues O VocelkaAustraliaElwin Sharvill NEW
Wickens Q FigeroaCanadaIvan Magalhaes NEW
Alejandro X RoysterIndiaOnyama Limba PROPOSAL
Isabel K WaycottIndiaElwin Sharvill UNQUALIFIED
Ivar S RutaAustraliaStephen Shaw UNQUALIFIED
Clifford I KolmetzRussiaStephen Shaw QUALIFIED
Chavez D SaylorsUnited KingdomIvan Magalhaes NEGOTIATION
Jones L NickaAustraliaAnna Fali UNQUALIFIED
Cody A MacleadBrazilXuxue Feng UNQUALIFIED
Cody Q PaprockiJapanOnyama Limba RENEWAL
Jones K WhobreyJapanAnna Fali RENEWAL
James D FollerIndiaIoni Bowcher RENEWAL
Darci A WhobreyAustraliaIvan Magalhaes NEGOTIATION
Mayumi L GillianUnited KingdomAmy Elsner QUALIFIED
Ivar M DarakjyBrazilBernardo Dominic QUALIFIED
Ivar F NestleSpainOnyama Limba UNQUALIFIED
Jones N PaprockiBrazilIvan Magalhaes NEGOTIATION
Juan G VocelkaFranceAmy Elsner UNQUALIFIED

<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.