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
Jennifer X ChuiItalyElwin Sharvill QUALIFIED
Morrow Z RulapaughIndiaAnna Fali QUALIFIED
Aruna Y KuskoCanadaXuxue Feng QUALIFIED
Aditya R KuskoUnited KingdomXuxue Feng QUALIFIED
Kadeem C ChuiAustraliaXuxue Feng RENEWAL
Rodrigues P DilliardBrazilAsiya Javayant QUALIFIED
Costa Y VocelkaFranceOnyama Limba QUALIFIED
Antonio U GlickBrazilStephen Shaw NEGOTIATION
Juan B InouyeCanadaOnyama Limba NEGOTIATION
Kaitlin V OldroydBrazilStephen Shaw UNQUALIFIED
Maisha G GillianIndiaOnyama Limba QUALIFIED
Salvatore M CaudyRussiaOnyama Limba PROPOSAL
Octavia I MaletRussiaStephen Shaw PROPOSAL
Munro K SaylorsGermanyXuxue Feng NEGOTIATION
Juan X CaudyRussiaOnyama Limba NEW
Stacey E ButtFranceAnna Fali UNQUALIFIED
Leja I MarrierItalyBernardo Dominic NEGOTIATION
Faith X MacleadAustraliaAmy Elsner RENEWAL
Adams R CampainIndiaXuxue Feng NEW
Alejandro K DarakjyJapanIoni Bowcher QUALIFIED
Mujtaba Q DarakjyFranceOnyama Limba PROPOSAL
Stacey I PerinIndiaAmy Elsner NEW
Chavez R WaycottCanadaStephen Shaw NEGOTIATION
Arvin L FigeroaUnited KingdomAnna Fali RENEWAL
Silvio E ButtGermanyXuxue Feng NEW
Francesco F NestleCanadaAmy Elsner RENEWAL
Misaki S KolmetzRussiaElwin Sharvill QUALIFIED
Aika C CaudyArgentinaBernardo Dominic RENEWAL
Murillo L BowleyItalyOnyama Limba RENEWAL
Johnson C DoeBrazilStephen Shaw UNQUALIFIED
Emily J StensethGermanyStephen Shaw NEGOTIATION
Aruna Y KolmetzUnited KingdomAmy Elsner UNQUALIFIED
Adams M KuskoGermanyStephen Shaw UNQUALIFIED
Maria F CaldareraIndiaElwin Sharvill NEW
Maria O DilliardCanadaStephen Shaw RENEWAL
Aruna T FollerBrazilBernardo Dominic QUALIFIED
Tony Z SergiCanadaXuxue Feng NEW
Octavia V SaylorsRussiaAnna Fali PROPOSAL
Jeanfrancois C SaylorsArgentinaStephen Shaw NEGOTIATION
Alejandro M KuskoCanadaElwin Sharvill RENEWAL
Aruna S PoquetteArgentinaBernardo Dominic PROPOSAL
Maria X SchemmerAustraliaElwin Sharvill NEGOTIATION
Greenwood G CampainItalyStephen Shaw PROPOSAL
Morrow U MorascaBrazilAmy Elsner UNQUALIFIED
Morrow S StockhamArgentinaElwin Sharvill PROPOSAL
James J DoeIndiaOnyama Limba RENEWAL
Jeanfrancois K StockhamCanadaAsiya Javayant RENEWAL
Emily O InouyeGermanyBernardo Dominic UNQUALIFIED
Leja X NestleFranceBernardo Dominic NEGOTIATION
Ashley A WieserUnited KingdomAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria O ButtBrazilXuxue Feng PROPOSAL
Izzy J VenereUnited KingdomIoni Bowcher QUALIFIED
Deepesh X VenereBrazilElwin Sharvill UNQUALIFIED
Claire X ChuiBrazilIoni Bowcher RENEWAL
Aditya F KolmetzAustraliaBernardo Dominic RENEWAL
Alejandro U NestleArgentinaBernardo Dominic RENEWAL
Stacey T OstroskyAustraliaXuxue Feng QUALIFIED
Francesco W RutaArgentinaIvan Magalhaes QUALIFIED
Izzy B InouyeGermanyStephen Shaw RENEWAL
Isabel O NickaGermanyElwin Sharvill NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie T WieserBrazil2026-06-02Printing Dimensions RENEWAL14Ivan Magalhaes
1001Aruna M SlusarskiIndia2026-06-15Chemel, James L Cpa PROPOSAL82Stephen Shaw
1002Morrow I BologniaRussia2026-06-11King, Christopher A Esq RENEWAL59Asiya Javayant
1003Costa E BologniaGermany2026-06-22Chanay, Jeffrey A Esq RENEWAL57Stephen Shaw
1004Leon G KuskoItaly2026-05-30Truhlar And Truhlar Attys RENEWAL17Xuxue Feng
1005Maisha X CaudyIndia2026-06-27Printing Dimensions NEGOTIATION10Amy Elsner
1006Leon W CaldareraIndia2026-06-06Feltz Printing Service RENEWAL11Amy Elsner
1007Octavia P DarakjyFrance2026-06-18Dorl, James J Esq PROPOSAL13Onyama Limba
1008Julie F RimJapan2026-06-26Morlong Associates RENEWAL60Elwin Sharvill
1009Jefferson O MaletArgentina2026-06-25Dorl, James J Esq NEW6Ioni Bowcher
1010Ricardo J SaylorsIndia2026-06-18Chanay, Jeffrey A Esq NEW88Amy Elsner
1011Murillo H OldroydItaly2026-06-07Dorl, James J Esq NEGOTIATION88Ivan Magalhaes
1012Leja T CampainCanada2026-06-21Buckley Miller Wright NEGOTIATION67Anna Fali
1013Deepesh C PerinUnited Kingdom2026-06-06Commercial Press UNQUALIFIED80Amy Elsner
1014Tony S SaylorsGermany2026-06-01Printing Dimensions NEGOTIATION17Amy Elsner
1015Kaitlin A IturbideArgentina2026-06-12Rousseaux, Michael Esq QUALIFIED19Asiya Javayant
1016Jefferson E RimIndia2026-06-02Commercial Press NEGOTIATION87Onyama Limba
1017Morrow E VocelkaArgentina2026-06-01King, Christopher A Esq NEW96Amy Elsner
1018Cody G GlickCanada2026-06-09Chemel, James L Cpa UNQUALIFIED65Ivan Magalhaes
1019Kadeem U PaprockiBrazil2026-06-27Truhlar And Truhlar Attys PROPOSAL66Stephen Shaw
1020Leja Y ChuiAustralia2026-06-25Commercial Press RENEWAL78Elwin Sharvill
1021David O PoquetteGermany2026-06-27Commercial Press NEGOTIATION92Elwin Sharvill
1022Aditya F OldroydAustralia2026-06-24Chanay, Jeffrey A Esq PROPOSAL74Xuxue Feng
1023Alejandro S RoysterFrance2026-06-27King, Christopher A Esq PROPOSAL9Stephen Shaw
1024Chavez Q InouyeItaly2026-06-11Chanay, Jeffrey A Esq QUALIFIED92Ivan Magalhaes
1025James Z RutaFrance2026-06-21Chanay, Jeffrey A Esq PROPOSAL19Elwin Sharvill
1026James Z FerenczArgentina2026-06-15Rousseaux, Michael Esq RENEWAL99Bernardo Dominic
1027Salvatore Q MorascaRussia2026-06-26Rousseaux, Michael Esq UNQUALIFIED71Bernardo Dominic
1028Octavia K RimSpain2026-06-07Feltz Printing Service PROPOSAL83Anna Fali
1029Arvin Q MorascaBrazil2026-06-07Printing Dimensions PROPOSAL38Bernardo Dominic
1030Leja Z BologniaGermany2026-06-04Dorl, James J Esq RENEWAL47Stephen Shaw
1031Johnson V FlosiJapan2026-06-03Chanay, Jeffrey A Esq UNQUALIFIED42Ivan Magalhaes
1032Kadeem O AlbaresItaly2026-06-23Morlong Associates QUALIFIED65Ivan Magalhaes
1033Leja K CaudyJapan2026-05-31Chapman, Ross E Esq QUALIFIED37Xuxue Feng
1034David E MorascaFrance2026-05-29Buckley Miller Wright NEW32Amy Elsner
1035Faith S PaprockiBrazil2026-06-23Rangoni Of Florence UNQUALIFIED27Xuxue Feng
1036Aika N OstroskyBrazil2026-06-04King, Christopher A Esq UNQUALIFIED66Ivan Magalhaes
1037Kadeem N FigeroaSpain2026-06-11Commercial Press QUALIFIED27Anna Fali
1038Izzy Q RoysterItaly2026-06-15Truhlar And Truhlar Attys NEGOTIATION51Asiya Javayant
1039Costa L RimAustralia2026-06-26King, Christopher A Esq PROPOSAL99Ioni Bowcher
1040Octavia T PerinIndia2026-06-01Chanay, Jeffrey A Esq NEW8Anna Fali
1041Francesco I MacleadBrazil2026-06-16Feiner Bros UNQUALIFIED64Ivan Magalhaes
1042Jefferson O AlbaresArgentina2026-06-08Truhlar And Truhlar Attys QUALIFIED1Xuxue Feng
1043Leja K MacleadFrance2026-06-01Truhlar And Truhlar Attys UNQUALIFIED97Stephen Shaw
1044Claire U PerinUnited Kingdom2026-06-14Morlong Associates RENEWAL46Asiya Javayant
1045Mayumi U BriddickJapan2026-06-16Rangoni Of Florence QUALIFIED13Elwin Sharvill
1046Emily R BowleyJapan2026-06-11Rangoni Of Florence PROPOSAL15Anna Fali
1047David O VenereArgentina2026-06-22Rousseaux, Michael Esq UNQUALIFIED60Xuxue Feng
1048Greenwood I MarrierCanada2026-06-24King, Christopher A Esq QUALIFIED79Bernardo Dominic
1049Nicolas T FerenczRussia2026-06-16Chemel, James L Cpa QUALIFIED12Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Adams X CaudyRussiaAmy Elsner UNQUALIFIED
Aruna P FigeroaAustraliaStephen Shaw UNQUALIFIED
James V KolmetzGermanyIoni Bowcher PROPOSAL
Aditya W MarrierArgentinaBernardo Dominic QUALIFIED
Nicolas B SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Jeanfrancois Z RulapaughArgentinaAsiya Javayant NEW
Costa B SchemmerGermanyXuxue Feng RENEWAL
Francesco P CaldareraBrazilElwin Sharvill NEGOTIATION
Ricardo C KolmetzIndiaXuxue Feng QUALIFIED
Cody U SchemmerAustraliaXuxue Feng PROPOSAL
Mujtaba N KolmetzRussiaIoni Bowcher RENEWAL
Claire F MaletGermanyXuxue Feng NEW
Aruna S RoysterBrazilStephen Shaw RENEWAL
Ashley W FigeroaIndiaXuxue Feng RENEWAL
David E OldroydGermanyOnyama Limba PROPOSAL
Nicolas Q OstroskyGermanyAnna Fali QUALIFIED
Adams B KuskoJapanStephen Shaw NEW
Aika Q DilliardFranceOnyama Limba QUALIFIED
Smith A ChuiSpainElwin Sharvill NEGOTIATION
Ricardo X TollnerSpainAnna Fali UNQUALIFIED
Jefferson T MacleadRussiaIvan Magalhaes NEGOTIATION
Isabel W BologniaItalyIoni Bowcher UNQUALIFIED
Chavez J NestleRussiaIoni Bowcher QUALIFIED
Aruna A MacleadIndiaStephen Shaw NEGOTIATION
Maisha I MorascaCanadaElwin Sharvill PROPOSAL
Aditya G FollerCanadaIvan Magalhaes NEW
Izzy T BriddickUnited KingdomAnna Fali NEGOTIATION
Smith H SchemmerArgentinaBernardo Dominic QUALIFIED
Greenwood I DarakjyGermanyXuxue Feng NEGOTIATION
Jeanfrancois T PerinCanadaIoni Bowcher NEGOTIATION
Francesco I KolmetzBrazilIoni Bowcher NEGOTIATION
Ashley J WhobreyCanadaStephen Shaw QUALIFIED
Munro A InouyeBrazilAmy Elsner NEGOTIATION
Clifford B WieserAustraliaXuxue Feng NEGOTIATION
Antonio A GlickRussiaIvan Magalhaes NEW
Emily Y RoysterGermanyStephen Shaw RENEWAL
Johnson Q PaprockiIndiaAsiya Javayant NEGOTIATION
Isabel N NestleRussiaIvan Magalhaes PROPOSAL
Murillo X MorascaArgentinaAnna Fali NEGOTIATION
Kadeem N SlusarskiRussiaElwin Sharvill NEGOTIATION
Leon I SergiBrazilElwin Sharvill NEW
Johnson L RutaIndiaElwin Sharvill RENEWAL
Julie J GillianItalyIoni Bowcher NEW
Tony N KuskoRussiaAmy Elsner RENEWAL
Antonio M MorascaAustraliaIvan Magalhaes RENEWAL
Munro N BologniaBrazilXuxue Feng UNQUALIFIED
Antonio U CaldareraBrazilIoni Bowcher PROPOSAL
Julie L MorascaUnited KingdomAmy Elsner NEW
Munro U SlusarskiCanadaIoni Bowcher UNQUALIFIED
Jefferson S RoysterItalyXuxue Feng QUALIFIED
Frozen Columns
Name
Maisha A Whobrey
Ivar R Paprocki
Silvio Y Saylors
Emily Z Venere
Kaitlin N Royster
Murillo Y Doe
Munro H Vocelka
Costa X Bolognia
Jeanfrancois D Glick
Adams Y Maclead
Sinclair J Wieser
Antonio U Ostrosky
Nicolas S Nestle
Jefferson Y Venere
Nicolas A Bowley
Jones K Amigon
Rodrigues G Amigon
Francesco K Rulapaugh
Sinclair G Foller
Aika C Bowley
Claire K Sergi
Nicolas J Oldroyd
Deepesh D Glick
Jennifer F Campain
Ricardo Y Albares
Wickens C Albares
Morrow A Garufi
Costa P Wieser
Ricardo E Morasca
Adams P Stenseth
Izzy U Poquette
Costa M Ferencz
Octavia X Rim
Aruna M Wieser
Octavia S Bowley
Aika L Kolmetz
Leja J Maclead
Johnson K Kolmetz
Adams B Bowley
Francesco D Oldroyd
Cody E Malet
Ivar G Gaucho
Ashley M Butt
Jefferson S Venere
Aika Y Caldarera
Emily A Rulapaugh
Jefferson O Briddick
Salvatore G Stenseth
Jones E Gaucho
Tony F Waycott
IdCountryDate
1000Brazil2026-06-03
1001Japan2026-06-23
1002Germany2026-06-07
1003Brazil2026-06-12
1004Japan2026-06-04
1005Russia2026-06-03
1006Japan2026-06-19
1007Argentina2026-06-11
1008Russia2026-06-05
1009Australia2026-05-29
1010Germany2026-06-24
1011Spain2026-06-18
1012Italy2026-06-03
1013Australia2026-06-11
1014Brazil2026-05-29
1015United Kingdom2026-06-10
1016Italy2026-06-08
1017Argentina2026-06-15
1018Italy2026-06-06
1019France2026-06-25
1020Brazil2026-06-24
1021Spain2026-05-29
1022Spain2026-06-25
1023Brazil2026-06-20
1024Brazil2026-06-21
1025Spain2026-05-29
1026United Kingdom2026-06-13
1027Canada2026-06-15
1028Brazil2026-06-11
1029Germany2026-06-19
1030Argentina2026-06-11
1031Canada2026-06-25
1032Japan2026-06-12
1033Italy2026-06-19
1034Italy2026-05-30
1035Brazil2026-06-07
1036Italy2026-06-18
1037Canada2026-06-26
1038Japan2026-05-29
1039Spain2026-06-14
1040Brazil2026-06-19
1041India2026-06-21
1042Brazil2026-06-07
1043Russia2026-06-06
1044Argentina2026-06-12
1045Argentina2026-05-30
1046India2026-06-18
1047Brazil2026-06-21
1048Germany2026-05-31
1049India2026-06-02

On-Demand Data

NameIdCountryDate
Morrow T Bolognia1000Brazil2026-06-12
Chavez Y Kolmetz1001Germany2026-06-02
Jefferson G Paprocki1002France2026-06-20
Jones H Albares1003United Kingdom2026-06-12
Clifford U Ferencz1004Argentina2026-06-10
Arvin D Morasca1005Argentina2026-06-17
Juan G Caudy1006Italy2026-06-25
Murillo Y Nestle1007Canada2026-06-06
Ricardo S Gaucho1008Germany2026-06-11
Ivar G Glick1009Australia2026-06-23
Juan C Venere1010United Kingdom2026-06-07
Deepesh H Saylors1011Japan2026-06-01
Adams A Foller1012Australia2026-06-05
Cody Z Shinko1013Russia2026-05-31
Octavia O Glick1014Brazil2026-06-12
Darci V Darakjy1015Japan2026-06-06
Leja G Shinko1016Italy2026-06-22
Ashley G Rim1017Japan2026-05-31
Mujtaba P Paprocki1018Argentina2026-06-04
Julie M Flosi1019Argentina2026-06-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro C RulapaughSpainBernardo Dominic NEW
Francesco A RulapaughItalyAmy Elsner NEGOTIATION
Tony G DoeIndiaAnna Fali PROPOSAL
Aditya C CaldareraUnited KingdomAnna Fali NEW
Aditya F DilliardFranceAnna Fali UNQUALIFIED
Silvio G GillianRussiaXuxue Feng PROPOSAL
Munro R KuskoFranceIvan Magalhaes NEGOTIATION
Emily G MacleadItalyAsiya Javayant RENEWAL
Costa H VocelkaGermanyAmy Elsner NEGOTIATION
Stacey X MaletAustraliaOnyama Limba NEW
Stacey I MacleadGermanyAsiya Javayant PROPOSAL
Mayumi F AmigonArgentinaIoni Bowcher PROPOSAL
Aika G DarakjyIndiaAnna Fali RENEWAL
Deepesh E CaudyArgentinaStephen Shaw RENEWAL
Deepesh V DoeFranceOnyama Limba NEGOTIATION
Izzy H GauchoArgentinaIvan Magalhaes NEW
Murillo W PoquetteFranceAnna Fali RENEWAL
Darci P ShinkoSpainElwin Sharvill NEGOTIATION
Claire C FigeroaUnited KingdomBernardo Dominic NEW
Morrow M SergiSpainAnna Fali RENEWAL
Alejandro V GlickAustraliaStephen Shaw NEW
Juan B SchemmerAustraliaBernardo Dominic RENEWAL
Murillo A FlosiRussiaXuxue Feng RENEWAL
Claire J AmigonCanadaOnyama Limba QUALIFIED
Maria L StockhamGermanyStephen Shaw RENEWAL
Costa H DilliardAustraliaAsiya Javayant RENEWAL
Mayumi W CaudyItalyOnyama Limba UNQUALIFIED
Aditya P GarufiRussiaIoni Bowcher NEW
Rodrigues J WaycottJapanAnna Fali NEGOTIATION
Smith J NestleJapanIvan Magalhaes QUALIFIED
Cody L MorascaIndiaIvan Magalhaes RENEWAL
Clifford F CampainIndiaBernardo Dominic NEW
Wickens S FerenczUnited KingdomXuxue Feng NEGOTIATION
Ivar G VocelkaAustraliaIvan Magalhaes UNQUALIFIED
Wickens X MacleadArgentinaOnyama Limba UNQUALIFIED
Leon R FollerBrazilAnna Fali RENEWAL
Kaitlin Y OldroydItalyStephen Shaw PROPOSAL
Mujtaba K IturbideAustraliaAnna Fali UNQUALIFIED
James L MorascaItalyIoni Bowcher NEW
Mujtaba I FerenczGermanyElwin Sharvill PROPOSAL

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