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
Munro N GillianSpainIvan Magalhaes UNQUALIFIED
Claire U GillianRussiaOnyama Limba QUALIFIED
Mujtaba H GillianAustraliaOnyama Limba NEW
Greenwood A DilliardFranceIvan Magalhaes QUALIFIED
Maria A RutaIndiaIoni Bowcher UNQUALIFIED
Aika H ChuiArgentinaBernardo Dominic UNQUALIFIED
Smith Q FollerArgentinaStephen Shaw NEW
Claire A BriddickCanadaIvan Magalhaes NEW
Juan R WaycottAustraliaAmy Elsner QUALIFIED
Leja L OstroskyCanadaOnyama Limba QUALIFIED
Julie Q GarufiJapanElwin Sharvill PROPOSAL
Arvin Q DoeItalyIvan Magalhaes QUALIFIED
Octavia B NestleUnited KingdomAmy Elsner RENEWAL
Salvatore T SchemmerIndiaStephen Shaw RENEWAL
Rodrigues G SchemmerBrazilIvan Magalhaes NEW
Kadeem V GlickRussiaIvan Magalhaes QUALIFIED
Kadeem V NestleAustraliaIvan Magalhaes NEGOTIATION
Cody R BologniaSpainAmy Elsner PROPOSAL
Jones R CampainArgentinaXuxue Feng PROPOSAL
Morrow F MorascaJapanAmy Elsner NEW
Maisha A CampainFranceXuxue Feng RENEWAL
Misaki T ShinkoFranceAnna Fali NEW
Julie L BriddickAustraliaElwin Sharvill NEGOTIATION
Tony N GillianRussiaXuxue Feng RENEWAL
Clifford D OldroydIndiaXuxue Feng RENEWAL
Kaitlin R ButtAustraliaElwin Sharvill QUALIFIED
Misaki Q DoeArgentinaBernardo Dominic QUALIFIED
Adams J RutaArgentinaStephen Shaw QUALIFIED
Maria S PoquetteSpainIvan Magalhaes QUALIFIED
Leon P MaletBrazilStephen Shaw PROPOSAL
Jefferson P BowleySpainIvan Magalhaes NEGOTIATION
Aika U KuskoFranceAsiya Javayant QUALIFIED
Adams H SaylorsCanadaOnyama Limba RENEWAL
Leja I RutaUnited KingdomElwin Sharvill RENEWAL
Maria X RoysterRussiaBernardo Dominic NEW
James U RimUnited KingdomAsiya Javayant PROPOSAL
Izzy G FigeroaBrazilXuxue Feng NEW
Juan H BologniaArgentinaXuxue Feng QUALIFIED
Aika I FollerJapanIvan Magalhaes PROPOSAL
Rodrigues C CampainRussiaIoni Bowcher NEW
Murillo E VocelkaGermanyIoni Bowcher QUALIFIED
Murillo A WaycottSpainAmy Elsner RENEWAL
Salvatore K SchemmerFranceXuxue Feng NEW
Smith P BologniaSpainBernardo Dominic QUALIFIED
Alejandro C BologniaBrazilAnna Fali NEGOTIATION
Leon B ButtUnited KingdomAsiya Javayant UNQUALIFIED
Greenwood C VenereSpainAmy Elsner NEW
Smith Z ButtUnited KingdomXuxue Feng PROPOSAL
Aditya K MarrierGermanyOnyama Limba RENEWAL
Costa B CaudyFranceIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Faith O DilliardSpainAsiya Javayant NEW
Ashley X BriddickFranceAsiya Javayant RENEWAL
Rodrigues A WhobreyAustraliaAmy Elsner PROPOSAL
Rodrigues O MarrierRussiaAmy Elsner UNQUALIFIED
Smith J FollerBrazilBernardo Dominic UNQUALIFIED
Octavia J ButtAustraliaXuxue Feng RENEWAL
Alejandro E ChuiArgentinaStephen Shaw RENEWAL
Jefferson C StockhamItalyIoni Bowcher UNQUALIFIED
Murillo D SaylorsFranceIoni Bowcher NEW
Francesco X GarufiSpainOnyama Limba RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony X DoeBrazil2026-05-29Chapman, Ross E Esq NEW66Elwin Sharvill
1001Izzy E OstroskyAustralia2026-06-04Truhlar And Truhlar Attys UNQUALIFIED6Bernardo Dominic
1002Juan Z AmigonCanada2026-05-09Feltz Printing Service UNQUALIFIED59Ivan Magalhaes
1003Octavia V GarufiUnited Kingdom2026-05-28Morlong Associates PROPOSAL31Bernardo Dominic
1004Silvio M ButtItaly2026-06-04King, Christopher A Esq NEW71Onyama Limba
1005Isabel M MarrierGermany2026-05-10Morlong Associates QUALIFIED26Ioni Bowcher
1006David N ButtCanada2026-05-15Printing Dimensions UNQUALIFIED39Ioni Bowcher
1007Claire K WhobreyJapan2026-05-20Chemel, James L Cpa NEGOTIATION88Amy Elsner
1008Emily M BowleyAustralia2026-05-11Buckley Miller Wright UNQUALIFIED55Anna Fali
1009Jeanfrancois J StockhamIndia2026-05-14Chemel, James L Cpa RENEWAL67Ioni Bowcher
1010Arvin R NickaAustralia2026-05-25Dorl, James J Esq NEGOTIATION88Anna Fali
1011Alejandro F CaudyRussia2026-05-08Rousseaux, Michael Esq RENEWAL94Stephen Shaw
1012Ricardo I BowleyItaly2026-06-03Benton, John B Jr QUALIFIED19Anna Fali
1013Claire P GarufiFrance2026-05-25Printing Dimensions UNQUALIFIED71Xuxue Feng
1014Aruna L DoeIndia2026-05-25Printing Dimensions QUALIFIED47Ioni Bowcher
1015Ashley B StensethFrance2026-05-16Chapman, Ross E Esq UNQUALIFIED49Bernardo Dominic
1016Rodrigues B DoeGermany2026-05-26Rangoni Of Florence PROPOSAL75Onyama Limba
1017Maisha N AmigonArgentina2026-05-21Commercial Press RENEWAL82Stephen Shaw
1018Salvatore Z DoeBrazil2026-06-02Morlong Associates RENEWAL26Anna Fali
1019Costa M OstroskyGermany2026-05-20Chemel, James L Cpa RENEWAL14Bernardo Dominic
1020Ricardo X InouyeCanada2026-06-05Feltz Printing Service QUALIFIED6Ivan Magalhaes
1021Francesco B FigeroaSpain2026-05-13Truhlar And Truhlar Attys NEW9Xuxue Feng
1022Juan Z RutaFrance2026-05-15Chapman, Ross E Esq RENEWAL95Ivan Magalhaes
1023Tony K VenereBrazil2026-05-09Buckley Miller Wright UNQUALIFIED35Xuxue Feng
1024Ivar Z NickaSpain2026-06-05Rangoni Of Florence PROPOSAL75Asiya Javayant
1025Salvatore J RoysterGermany2026-05-14Dorl, James J Esq QUALIFIED4Asiya Javayant
1026Francesco P StensethFrance2026-05-09Dorl, James J Esq PROPOSAL39Onyama Limba
1027Greenwood A SaylorsUnited Kingdom2026-05-20Chapman, Ross E Esq NEW51Anna Fali
1028Silvio C BriddickBrazil2026-05-09Feltz Printing Service UNQUALIFIED96Xuxue Feng
1029Smith I ButtRussia2026-05-08King, Christopher A Esq UNQUALIFIED68Anna Fali
1030Jefferson P VocelkaIndia2026-05-23Printing Dimensions NEGOTIATION51Amy Elsner
1031Emily D FollerFrance2026-05-24Dorl, James J Esq UNQUALIFIED19Ivan Magalhaes
1032Salvatore I InouyeBrazil2026-05-26Printing Dimensions PROPOSAL22Bernardo Dominic
1033Jennifer C CampainSpain2026-05-18Rousseaux, Michael Esq NEGOTIATION98Amy Elsner
1034Clifford W WhobreyArgentina2026-05-12Chemel, James L Cpa NEW34Bernardo Dominic
1035Munro U SaylorsItaly2026-05-21King, Christopher A Esq NEW57Anna Fali
1036Francesco F PoquetteItaly2026-06-04Rangoni Of Florence PROPOSAL6Onyama Limba
1037Stacey W TollnerBrazil2026-05-09Benton, John B Jr UNQUALIFIED19Asiya Javayant
1038Misaki B GauchoCanada2026-06-04Chapman, Ross E Esq NEW62Bernardo Dominic
1039Julie L WhobreyBrazil2026-05-31Chapman, Ross E Esq NEGOTIATION75Stephen Shaw
1040Misaki E KuskoRussia2026-05-28Morlong Associates PROPOSAL65Bernardo Dominic
1041Octavia F MaletRussia2026-05-27King, Christopher A Esq RENEWAL58Onyama Limba
1042Izzy A SergiSpain2026-05-11Feiner Bros PROPOSAL50Elwin Sharvill
1043Greenwood D RutaGermany2026-05-22Rousseaux, Michael Esq PROPOSAL37Amy Elsner
1044Salvatore A SlusarskiUnited Kingdom2026-05-23Benton, John B Jr QUALIFIED48Amy Elsner
1045Jones N FlosiSpain2026-05-25Feiner Bros NEGOTIATION37Ivan Magalhaes
1046Salvatore O FigeroaAustralia2026-06-03Chanay, Jeffrey A Esq NEGOTIATION93Ivan Magalhaes
1047Isabel F PoquetteFrance2026-05-30Buckley Miller Wright QUALIFIED61Anna Fali
1048Tony Y SchemmerGermany2026-05-23King, Christopher A Esq NEW50Ivan Magalhaes
1049Mujtaba L BowleyIndia2026-05-18Morlong Associates PROPOSAL70Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Jefferson L FerenczIndiaIoni Bowcher NEW
Ashley O BowleyJapanAnna Fali PROPOSAL
Tony J WhobreyIndiaElwin Sharvill RENEWAL
Izzy H VocelkaJapanAsiya Javayant PROPOSAL
Deepesh D SergiRussiaElwin Sharvill NEW
Johnson W FerenczBrazilAmy Elsner UNQUALIFIED
Silvio C BriddickAustraliaAnna Fali NEW
David L InouyeIndiaBernardo Dominic NEGOTIATION
Aika T InouyeAustraliaIvan Magalhaes RENEWAL
Chavez S TollnerJapanAsiya Javayant QUALIFIED
Salvatore H RutaArgentinaElwin Sharvill NEW
Misaki P InouyeUnited KingdomElwin Sharvill NEW
Sinclair X FerenczAustraliaAnna Fali NEGOTIATION
Stacey V KolmetzArgentinaOnyama Limba NEW
Leon G WieserRussiaAmy Elsner NEW
Costa O AlbaresItalyIoni Bowcher NEGOTIATION
Jefferson C PoquetteRussiaAnna Fali QUALIFIED
Ashley E WieserFranceBernardo Dominic QUALIFIED
Smith W AmigonItalyBernardo Dominic NEW
Kaitlin H PerinGermanyAnna Fali RENEWAL
Arvin I DoeBrazilOnyama Limba QUALIFIED
Jefferson W CaudyGermanyIoni Bowcher UNQUALIFIED
Smith X SergiRussiaAnna Fali PROPOSAL
Octavia U RulapaughGermanyXuxue Feng NEGOTIATION
Claire J SergiCanadaIoni Bowcher UNQUALIFIED
Aruna R MacleadItalyBernardo Dominic RENEWAL
Leja O GlickRussiaStephen Shaw NEGOTIATION
Darci C StensethIndiaStephen Shaw QUALIFIED
Munro U VenereSpainElwin Sharvill RENEWAL
Sinclair B InouyeBrazilAsiya Javayant UNQUALIFIED
Johnson X RoysterBrazilXuxue Feng NEGOTIATION
Mujtaba H PoquetteArgentinaAmy Elsner NEW
Sinclair P DoeSpainAmy Elsner RENEWAL
Jennifer E CaudyAustraliaAnna Fali NEGOTIATION
Julie I SlusarskiRussiaAnna Fali QUALIFIED
Aika O GlickArgentinaXuxue Feng PROPOSAL
Kaitlin N OldroydJapanIoni Bowcher NEW
Wickens R GauchoIndiaXuxue Feng QUALIFIED
Octavia F BriddickBrazilAsiya Javayant NEGOTIATION
Wickens B AlbaresBrazilBernardo Dominic RENEWAL
Maisha P VenereFranceIvan Magalhaes PROPOSAL
Jennifer W AlbaresFranceIoni Bowcher NEW
Julie P NickaBrazilAnna Fali NEGOTIATION
James P WhobreyUnited KingdomIvan Magalhaes NEGOTIATION
Salvatore B DilliardIndiaElwin Sharvill QUALIFIED
Mayumi E SlusarskiRussiaAmy Elsner QUALIFIED
Morrow F OstroskyAustraliaBernardo Dominic RENEWAL
Alejandro D GillianCanadaAmy Elsner NEW
Octavia H RutaArgentinaAnna Fali NEW
Faith M RimCanadaBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Leon N Waycott
Francesco F Caudy
Wickens Z Royster
Greenwood X Gillian
Darci U Bolognia
Munro Y Nestle
Faith D Marrier
Aika C Malet
James M Garufi
Mujtaba Z Royster
Ricardo J Briddick
Misaki E Sergi
Nicolas R Schemmer
Johnson F Ferencz
Rodrigues V Wieser
Stacey E Malet
James H Perin
Ivar V Campain
Misaki K Ostrosky
Octavia I Albares
Tony W Schemmer
Wickens W Glick
Chavez T Malet
Cody P Oldroyd
Aditya D Shinko
Mayumi P Perin
Darci G Campain
Chavez I Tollner
James Y Briddick
Aika E Marrier
Jeanfrancois N Butt
Costa B Wieser
Arvin V Marrier
Maisha M Caudy
Sinclair M Iturbide
Deepesh K Perin
Nicolas X Inouye
Misaki G Caudy
Morrow U Foller
Antonio O Darakjy
Wickens S Garufi
Aruna I Ostrosky
Jefferson T Doe
Faith W Kolmetz
Nicolas M Perin
Costa F Nicka
Ashley Y Rim
Kaitlin F Stockham
Kaitlin N Briddick
Aditya N Paprocki
IdCountryDate
1000Brazil2026-05-16
1001Canada2026-05-27
1002Canada2026-05-14
1003Russia2026-05-26
1004Spain2026-05-11
1005Japan2026-05-15
1006Germany2026-05-10
1007United Kingdom2026-05-17
1008Australia2026-06-04
1009Canada2026-05-18
1010Germany2026-05-08
1011Canada2026-05-14
1012Canada2026-05-21
1013Japan2026-05-28
1014France2026-05-18
1015India2026-05-18
1016Spain2026-05-24
1017France2026-05-15
1018Japan2026-05-29
1019Spain2026-05-22
1020Italy2026-05-17
1021Germany2026-05-12
1022Russia2026-06-04
1023Japan2026-05-28
1024Russia2026-06-05
1025Germany2026-05-22
1026United Kingdom2026-05-08
1027Canada2026-05-22
1028Italy2026-05-25
1029United Kingdom2026-05-08
1030Germany2026-05-10
1031Argentina2026-05-30
1032Italy2026-05-30
1033France2026-05-31
1034Germany2026-05-16
1035Canada2026-05-30
1036Canada2026-05-21
1037Spain2026-05-09
1038Russia2026-05-13
1039Germany2026-05-14
1040France2026-06-06
1041Russia2026-05-08
1042Japan2026-06-04
1043United Kingdom2026-05-09
1044Argentina2026-05-24
1045Australia2026-05-25
1046Brazil2026-05-19
1047India2026-05-08
1048France2026-05-09
1049Germany2026-06-01

On-Demand Data

NameIdCountryDate
Aruna X Stockham1000Australia2026-05-12
Antonio L Kusko1001Germany2026-05-22
Izzy W Doe1002Spain2026-06-06
Jefferson Y Slusarski1003Australia2026-06-06
Izzy N Foller1004Italy2026-05-21
Johnson K Doe1005Canada2026-05-21
Smith A Schemmer1006France2026-05-29
Misaki F Ruta1007Canada2026-05-09
Mayumi I Inouye1008Spain2026-05-20
Costa C Tollner1009Australia2026-05-27
Stacey G Ostrosky1010United Kingdom2026-05-14
Stacey N Wieser1011Italy2026-05-27
Maisha W Malet1012Japan2026-05-30
Izzy Z Maclead1013Australia2026-05-26
Emily F Vocelka1014Japan2026-05-09
Misaki O Whobrey1015Canada2026-05-23
Alejandro J Vocelka1016Japan2026-05-19
Deepesh I Vocelka1017Argentina2026-05-24
Deepesh T Gaucho1018India2026-05-08
Jennifer I Rulapaugh1019Germany2026-05-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa N StockhamJapanBernardo Dominic NEW
Alejandro D MaletFranceOnyama Limba QUALIFIED
Arvin Z SergiFranceIvan Magalhaes NEW
Faith G SlusarskiAustraliaXuxue Feng RENEWAL
Munro S DilliardJapanBernardo Dominic NEW
Smith V GillianGermanyOnyama Limba NEGOTIATION
Maria H BologniaAustraliaAmy Elsner QUALIFIED
Silvio H VenereSpainAnna Fali RENEWAL
Leja K BologniaArgentinaIvan Magalhaes NEGOTIATION
Juan G RutaAustraliaAnna Fali QUALIFIED
Jefferson Q ChuiIndiaOnyama Limba UNQUALIFIED
Jefferson Q InouyeAustraliaXuxue Feng RENEWAL
Salvatore K ShinkoBrazilOnyama Limba UNQUALIFIED
Maisha K CaudySpainStephen Shaw PROPOSAL
Maisha L OstroskyItalyXuxue Feng NEGOTIATION
Ivar N SaylorsGermanyIvan Magalhaes UNQUALIFIED
Costa V WieserSpainElwin Sharvill NEGOTIATION
Darci R AmigonSpainIvan Magalhaes UNQUALIFIED
Isabel B SlusarskiSpainXuxue Feng QUALIFIED
Deepesh D FlosiRussiaIoni Bowcher UNQUALIFIED
Kadeem B DoeSpainElwin Sharvill RENEWAL
Alejandro K PaprockiUnited KingdomAnna Fali UNQUALIFIED
Leja C CaudyGermanyAmy Elsner RENEWAL
Deepesh I VocelkaRussiaIoni Bowcher UNQUALIFIED
Mayumi O InouyeRussiaAsiya Javayant NEW
Cody L MaletAustraliaStephen Shaw NEGOTIATION
Morrow F KuskoFranceStephen Shaw NEGOTIATION
Izzy I MacleadRussiaIvan Magalhaes RENEWAL
Nicolas U VenereFranceIoni Bowcher UNQUALIFIED
Nicolas I WaycottCanadaIvan Magalhaes QUALIFIED
Nicolas E SaylorsSpainXuxue Feng PROPOSAL
Kaitlin A SaylorsArgentinaIoni Bowcher PROPOSAL
Octavia S TollnerItalyAnna Fali PROPOSAL
Costa R AlbaresGermanyIvan Magalhaes NEW
Octavia Q FlosiCanadaXuxue Feng QUALIFIED
Johnson Q OstroskyBrazilAnna Fali QUALIFIED
Aika I IturbideAustraliaAsiya Javayant RENEWAL
Arvin V MorascaCanadaStephen Shaw RENEWAL
Jones Q SlusarskiGermanyIvan Magalhaes PROPOSAL
Cody R ShinkoFranceBernardo Dominic 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.