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
Smith W SchemmerAustraliaIoni Bowcher UNQUALIFIED
Izzy O ChuiIndiaIoni Bowcher RENEWAL
Izzy S SergiFranceIvan Magalhaes NEGOTIATION
Maria T CampainBrazilIvan Magalhaes NEGOTIATION
Cody T GillianAustraliaIvan Magalhaes UNQUALIFIED
Jefferson F CaudyIndiaElwin Sharvill PROPOSAL
Maisha T CampainJapanAmy Elsner QUALIFIED
Francesco V StensethRussiaAnna Fali RENEWAL
Morrow C FollerIndiaElwin Sharvill NEGOTIATION
Johnson J SchemmerIndiaAnna Fali QUALIFIED
Antonio E WaycottRussiaXuxue Feng NEW
Jeanfrancois S WieserArgentinaAsiya Javayant QUALIFIED
Munro W FerenczArgentinaBernardo Dominic NEW
Salvatore X InouyeGermanyIvan Magalhaes QUALIFIED
Nicolas O WhobreyJapanIvan Magalhaes NEGOTIATION
James I DarakjyBrazilElwin Sharvill PROPOSAL
Francesco O SchemmerAustraliaStephen Shaw NEW
Kaitlin A DoeCanadaStephen Shaw RENEWAL
Julie I GarufiBrazilStephen Shaw QUALIFIED
Nicolas X AmigonUnited KingdomIvan Magalhaes RENEWAL
Aika W OstroskyRussiaStephen Shaw NEGOTIATION
Wickens S KolmetzGermanyElwin Sharvill NEW
Munro N ButtItalyAsiya Javayant UNQUALIFIED
Silvio D FerenczIndiaAmy Elsner QUALIFIED
Mujtaba D FerenczAustraliaIoni Bowcher UNQUALIFIED
Adams I DarakjyJapanElwin Sharvill QUALIFIED
Kadeem K ChuiUnited KingdomIvan Magalhaes RENEWAL
Tony G DilliardIndiaAnna Fali PROPOSAL
Isabel Q GauchoItalyOnyama Limba UNQUALIFIED
Claire R WhobreySpainElwin Sharvill NEW
Smith C OldroydRussiaStephen Shaw NEGOTIATION
Sinclair F KolmetzAustraliaAsiya Javayant UNQUALIFIED
Ashley S GillianSpainAsiya Javayant QUALIFIED
Leja P StockhamItalyOnyama Limba NEGOTIATION
Leon E AmigonAustraliaAmy Elsner UNQUALIFIED
Aika V OstroskyBrazilOnyama Limba RENEWAL
Costa C KuskoBrazilAmy Elsner NEGOTIATION
Darci J GarufiBrazilAmy Elsner NEW
Arvin F GauchoItalyIvan Magalhaes PROPOSAL
Maria P OldroydItalyIvan Magalhaes UNQUALIFIED
Munro G BologniaAustraliaIoni Bowcher UNQUALIFIED
Wickens Y PoquetteItalyElwin Sharvill PROPOSAL
Francesco N MacleadIndiaOnyama Limba NEGOTIATION
James R DarakjyBrazilAmy Elsner NEGOTIATION
Claire Q NestleRussiaStephen Shaw NEW
Octavia I RimFranceIvan Magalhaes NEGOTIATION
Wickens R IturbideFranceIoni Bowcher NEW
James X BologniaIndiaAnna Fali RENEWAL
David G BriddickRussiaAsiya Javayant NEGOTIATION
Darci L DoeBrazilAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
David O BowleyJapanXuxue Feng QUALIFIED
Emily P GauchoFranceOnyama Limba PROPOSAL
Arvin C WhobreyFranceElwin Sharvill NEW
Wickens E PoquetteArgentinaBernardo Dominic QUALIFIED
Arvin Q BowleyAustraliaOnyama Limba RENEWAL
Rodrigues L VenereGermanyAsiya Javayant UNQUALIFIED
Silvio G OldroydSpainElwin Sharvill NEW
Mayumi W RulapaughUnited KingdomStephen Shaw NEGOTIATION
James B SchemmerSpainIoni Bowcher QUALIFIED
Octavia X OldroydAustraliaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba I OstroskyUnited Kingdom2026-06-10Benton, John B Jr NEW75Bernardo Dominic
1001Munro F MaletUnited Kingdom2026-06-09Rousseaux, Michael Esq NEGOTIATION84Onyama Limba
1002Rodrigues R TollnerSpain2026-06-08Chanay, Jeffrey A Esq PROPOSAL82Asiya Javayant
1003Stacey H SaylorsBrazil2026-06-06Printing Dimensions NEW74Anna Fali
1004Stacey Z InouyeRussia2026-05-24Chanay, Jeffrey A Esq NEGOTIATION70Onyama Limba
1005Claire F BowleyIndia2026-05-18Printing Dimensions NEW12Bernardo Dominic
1006Izzy P InouyeCanada2026-06-01Feltz Printing Service QUALIFIED0Ioni Bowcher
1007Octavia J SlusarskiRussia2026-05-22Dorl, James J Esq UNQUALIFIED77Anna Fali
1008Misaki O PoquetteIndia2026-06-08Rousseaux, Michael Esq QUALIFIED18Ioni Bowcher
1009Ivar J PerinBrazil2026-05-25Buckley Miller Wright NEW62Elwin Sharvill
1010Alejandro C BriddickSpain2026-06-02Buckley Miller Wright RENEWAL22Ioni Bowcher
1011Jefferson H KuskoGermany2026-06-08King, Christopher A Esq PROPOSAL4Elwin Sharvill
1012Adams I PaprockiIndia2026-05-26Commercial Press RENEWAL32Elwin Sharvill
1013Cody Y ChuiCanada2026-05-31Buckley Miller Wright PROPOSAL79Onyama Limba
1014Jeanfrancois S FerenczItaly2026-05-27Chapman, Ross E Esq RENEWAL6Asiya Javayant
1015Jones S IturbideGermany2026-05-21Feltz Printing Service QUALIFIED94Ioni Bowcher
1016Jennifer B StockhamJapan2026-06-08Rousseaux, Michael Esq RENEWAL65Amy Elsner
1017Maria L WieserCanada2026-05-21Chanay, Jeffrey A Esq RENEWAL72Asiya Javayant
1018Adams C StockhamGermany2026-05-24Dorl, James J Esq NEW70Ioni Bowcher
1019Jones T PoquetteCanada2026-05-27Chemel, James L Cpa NEGOTIATION52Bernardo Dominic
1020Mujtaba N CaldareraGermany2026-05-28Morlong Associates QUALIFIED41Amy Elsner
1021Deepesh O RutaArgentina2026-05-29Feiner Bros RENEWAL41Xuxue Feng
1022Misaki H OstroskyIndia2026-05-30Chapman, Ross E Esq NEW33Stephen Shaw
1023Cody W WhobreyBrazil2026-05-19Chemel, James L Cpa NEGOTIATION27Anna Fali
1024Maria B KuskoJapan2026-06-05Benton, John B Jr QUALIFIED99Amy Elsner
1025Faith P FerenczCanada2026-06-09King, Christopher A Esq NEGOTIATION26Anna Fali
1026Mujtaba N VenereGermany2026-06-12Buckley Miller Wright NEW40Ivan Magalhaes
1027Antonio Z MarrierBrazil2026-06-10King, Christopher A Esq NEGOTIATION8Elwin Sharvill
1028David G KuskoJapan2026-05-22Chemel, James L Cpa PROPOSAL4Onyama Limba
1029Adams N GillianArgentina2026-05-23Benton, John B Jr UNQUALIFIED65Bernardo Dominic
1030Aika H MacleadUnited Kingdom2026-05-24Feltz Printing Service UNQUALIFIED37Anna Fali
1031James P NestleIndia2026-06-06Dorl, James J Esq NEGOTIATION81Onyama Limba
1032Aika Z AmigonGermany2026-06-06King, Christopher A Esq UNQUALIFIED37Anna Fali
1033Octavia V GillianItaly2026-06-07Chanay, Jeffrey A Esq QUALIFIED9Amy Elsner
1034Tony A VocelkaAustralia2026-06-12King, Christopher A Esq NEW35Stephen Shaw
1035Darci N TollnerBrazil2026-06-02King, Christopher A Esq NEGOTIATION45Ivan Magalhaes
1036Cody C BowleyArgentina2026-06-02Rousseaux, Michael Esq QUALIFIED38Stephen Shaw
1037James I WaycottBrazil2026-05-22Benton, John B Jr PROPOSAL10Amy Elsner
1038Deepesh D CaldareraSpain2026-05-17Rousseaux, Michael Esq NEGOTIATION75Ioni Bowcher
1039Adams A StensethItaly2026-06-01Dorl, James J Esq RENEWAL77Elwin Sharvill
1040Kaitlin K CaldareraIndia2026-06-11Chemel, James L Cpa PROPOSAL45Bernardo Dominic
1041Juan W DarakjyItaly2026-06-01Feltz Printing Service RENEWAL70Amy Elsner
1042Clifford N SlusarskiItaly2026-05-31Chemel, James L Cpa NEW73Bernardo Dominic
1043Adams Z PoquetteCanada2026-06-12Feltz Printing Service QUALIFIED84Xuxue Feng
1044Smith I NestleFrance2026-06-12Feiner Bros NEW42Bernardo Dominic
1045Wickens A ShinkoGermany2026-05-21Feltz Printing Service RENEWAL17Asiya Javayant
1046Aditya S OldroydUnited Kingdom2026-06-10Printing Dimensions RENEWAL7Xuxue Feng
1047Murillo B NickaArgentina2026-05-25Rousseaux, Michael Esq NEGOTIATION13Asiya Javayant
1048Smith O OldroydAustralia2026-05-20Feltz Printing Service RENEWAL47Elwin Sharvill
1049Rodrigues E ChuiIndia2026-05-29Printing Dimensions QUALIFIED44Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Ricardo D AmigonCanadaIvan Magalhaes QUALIFIED
Mayumi M PaprockiBrazilIoni Bowcher PROPOSAL
Mayumi P GarufiCanadaBernardo Dominic NEW
Murillo J PoquetteGermanyXuxue Feng NEW
Misaki T RulapaughCanadaAsiya Javayant UNQUALIFIED
Faith N StensethArgentinaIoni Bowcher PROPOSAL
Isabel K PerinSpainBernardo Dominic PROPOSAL
Costa G PaprockiAustraliaIvan Magalhaes UNQUALIFIED
Jefferson E AlbaresUnited KingdomStephen Shaw UNQUALIFIED
Maisha V CampainJapanAsiya Javayant PROPOSAL
Darci W CaudyBrazilIoni Bowcher NEW
Costa T FollerArgentinaAnna Fali PROPOSAL
Ivar R GauchoFranceAnna Fali NEW
Greenwood A GarufiRussiaStephen Shaw QUALIFIED
James M RulapaughArgentinaAsiya Javayant RENEWAL
Tony S WaycottFranceAnna Fali UNQUALIFIED
Mayumi Q IturbideRussiaOnyama Limba QUALIFIED
Darci I CampainFranceXuxue Feng QUALIFIED
Aika O CaldareraUnited KingdomIoni Bowcher QUALIFIED
Mayumi U AmigonRussiaAnna Fali UNQUALIFIED
Antonio G IturbideAustraliaAsiya Javayant NEW
Aika X MorascaJapanBernardo Dominic UNQUALIFIED
Munro G RutaArgentinaAmy Elsner QUALIFIED
Deepesh F GlickFranceAmy Elsner QUALIFIED
Murillo N GillianArgentinaIvan Magalhaes UNQUALIFIED
Isabel B ChuiGermanyAsiya Javayant PROPOSAL
Wickens G ShinkoItalyIvan Magalhaes NEGOTIATION
Jeanfrancois W OstroskyAustraliaOnyama Limba PROPOSAL
Costa K OstroskyRussiaAnna Fali NEGOTIATION
David Z RoysterGermanyBernardo Dominic NEW
Darci K MaletUnited KingdomElwin Sharvill NEW
David A DoeRussiaOnyama Limba UNQUALIFIED
Adams W InouyeFranceAnna Fali QUALIFIED
Chavez R RimBrazilIvan Magalhaes NEW
Emily Z InouyeIndiaOnyama Limba NEGOTIATION
Isabel V BriddickFranceXuxue Feng NEGOTIATION
Alejandro Q KolmetzUnited KingdomAnna Fali NEW
Kadeem V DoeAustraliaAnna Fali NEGOTIATION
Jones U FerenczFranceAmy Elsner NEW
Faith L AlbaresGermanyElwin Sharvill RENEWAL
Alejandro D GillianJapanAnna Fali NEGOTIATION
Jones N TollnerAustraliaElwin Sharvill NEGOTIATION
Kaitlin J SchemmerUnited KingdomBernardo Dominic RENEWAL
Johnson L GauchoRussiaStephen Shaw RENEWAL
Mujtaba F ChuiItalyAmy Elsner RENEWAL
Aruna T FigeroaCanadaStephen Shaw QUALIFIED
Emily K AmigonAustraliaAmy Elsner PROPOSAL
Silvio O SlusarskiJapanIvan Magalhaes NEGOTIATION
Deepesh U BriddickJapanXuxue Feng QUALIFIED
Maisha B NestleFranceAmy Elsner PROPOSAL
Frozen Columns
Name
Kaitlin X Saylors
Cody F Kusko
Maisha O Campain
Maisha L Saylors
Emily A Briddick
Greenwood S Foller
Jeanfrancois O Flosi
Sinclair U Iturbide
James H Poquette
Aika I Ruta
Sinclair W Morasca
Aika V Caudy
Jefferson C Maclead
Kaitlin P Albares
Ashley J Schemmer
James U Whobrey
Kadeem C Morasca
David I Maclead
Izzy Y Glick
Leja A Ostrosky
Murillo P Ferencz
Jennifer Z Sergi
Antonio L Stockham
Alejandro Y Saylors
Kaitlin O Slusarski
Octavia X Amigon
Juan R Iturbide
Tony Y Doe
Silvio W Paprocki
Mayumi V Marrier
Adams S Ruta
Arvin A Kusko
Mayumi A Inouye
Wickens O Rulapaugh
Silvio W Nicka
Ashley A Malet
Salvatore S Kusko
Mayumi M Caudy
Kaitlin G Malet
Leon N Schemmer
Izzy V Kusko
Claire A Ruta
Silvio G Caudy
Claire G Briddick
Ricardo B Campain
Jones O Figeroa
Salvatore E Amigon
David Q Kolmetz
Claire Q Oldroyd
Antonio Q Perin
IdCountryDate
1000France2026-06-11
1001Germany2026-05-18
1002Spain2026-05-22
1003Brazil2026-06-02
1004Italy2026-06-06
1005Germany2026-05-18
1006India2026-06-08
1007Argentina2026-05-25
1008Spain2026-05-21
1009Spain2026-05-29
1010Argentina2026-05-18
1011France2026-05-31
1012Brazil2026-05-23
1013Argentina2026-06-06
1014Germany2026-06-12
1015United Kingdom2026-06-15
1016India2026-05-19
1017Japan2026-06-10
1018Japan2026-06-11
1019Italy2026-06-02
1020Germany2026-05-28
1021Germany2026-06-05
1022United Kingdom2026-06-02
1023Argentina2026-06-09
1024Japan2026-06-04
1025Brazil2026-06-06
1026India2026-06-01
1027Spain2026-05-29
1028Russia2026-06-03
1029Argentina2026-06-06
1030Japan2026-06-12
1031Brazil2026-05-20
1032United Kingdom2026-05-29
1033France2026-05-30
1034Brazil2026-05-17
1035United Kingdom2026-06-13
1036Japan2026-06-07
1037Italy2026-05-24
1038Japan2026-06-07
1039Australia2026-06-12
1040Argentina2026-05-24
1041Russia2026-06-07
1042Germany2026-06-13
1043Australia2026-05-17
1044United Kingdom2026-05-21
1045India2026-06-10
1046Canada2026-05-27
1047India2026-06-12
1048Canada2026-06-12
1049Australia2026-06-02

On-Demand Data

NameIdCountryDate
Greenwood C Marrier1000Australia2026-06-10
Octavia A Ruta1001Japan2026-05-20
Jeanfrancois K Briddick1002Brazil2026-05-31
Murillo F Gillian1003Germany2026-06-11
Morrow P Paprocki1004Argentina2026-05-30
Mayumi P Slusarski1005Argentina2026-06-05
Aditya P Darakjy1006United Kingdom2026-06-07
Adams I Gillian1007Spain2026-06-13
Johnson R Caldarera1008Argentina2026-06-14
Adams S Flosi1009Australia2026-05-19
Maisha U Butt1010Spain2026-06-09
Aditya W Wieser1011France2026-05-22
Izzy P Nestle1012Japan2026-05-20
Ashley C Morasca1013India2026-06-08
Aditya M Foller1014Australia2026-06-05
Octavia Z Kolmetz1015Russia2026-06-05
Smith U Ostrosky1016Germany2026-06-02
Silvio V Campain1017Spain2026-05-21
Wickens X Wieser1018France2026-05-21
Izzy V Malet1019Argentina2026-05-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya X CaudyCanadaAnna Fali UNQUALIFIED
Rodrigues O RoysterJapanElwin Sharvill PROPOSAL
Sinclair Y RoysterGermanyAnna Fali PROPOSAL
Cody F RulapaughCanadaBernardo Dominic UNQUALIFIED
Munro M RoysterRussiaAnna Fali QUALIFIED
Claire H PerinUnited KingdomIvan Magalhaes QUALIFIED
Morrow T NickaSpainXuxue Feng QUALIFIED
Silvio R OldroydCanadaAnna Fali RENEWAL
Munro V PoquetteSpainElwin Sharvill NEW
Jeanfrancois Z AmigonCanadaIvan Magalhaes RENEWAL
Maisha T MarrierJapanIoni Bowcher RENEWAL
Silvio V GillianArgentinaIvan Magalhaes NEW
Jennifer I DarakjyRussiaOnyama Limba UNQUALIFIED
Jennifer C KuskoIndiaOnyama Limba PROPOSAL
Jennifer W WieserAustraliaStephen Shaw PROPOSAL
Leon H SaylorsCanadaStephen Shaw RENEWAL
Octavia J GillianGermanyIvan Magalhaes NEW
Faith S AlbaresUnited KingdomElwin Sharvill UNQUALIFIED
Antonio R MarrierSpainXuxue Feng NEW
Aditya U FerenczRussiaElwin Sharvill PROPOSAL
Aditya M DilliardGermanyBernardo Dominic PROPOSAL
Julie R StensethAustraliaAnna Fali QUALIFIED
Claire Q KolmetzJapanStephen Shaw NEW
Juan V OldroydFranceAsiya Javayant PROPOSAL
Maria H MorascaJapanElwin Sharvill RENEWAL
Jeanfrancois Q CampainJapanBernardo Dominic PROPOSAL
Francesco G TollnerAustraliaXuxue Feng PROPOSAL
Nicolas A DarakjyJapanAnna Fali PROPOSAL
Octavia H SergiGermanyElwin Sharvill RENEWAL
Mayumi D GlickIndiaAsiya Javayant RENEWAL
Nicolas Y NickaBrazilStephen Shaw NEW
Ricardo V SergiIndiaAsiya Javayant QUALIFIED
Isabel T ChuiRussiaXuxue Feng RENEWAL
Deepesh K StensethFranceAnna Fali NEGOTIATION
Maisha I GillianJapanXuxue Feng NEGOTIATION
Costa N MaletArgentinaAsiya Javayant PROPOSAL
Kadeem V MorascaRussiaStephen Shaw QUALIFIED
Francesco Y KuskoFranceAsiya Javayant RENEWAL
Jennifer I BowleyBrazilAnna Fali RENEWAL
Leja Z SaylorsIndiaXuxue Feng 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.