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
Ivar A BowleyArgentinaIvan Magalhaes QUALIFIED
Salvatore G AlbaresArgentinaXuxue Feng NEGOTIATION
Maisha K GlickRussiaBernardo Dominic NEGOTIATION
Emily O MaletBrazilXuxue Feng PROPOSAL
Claire L FerenczRussiaIvan Magalhaes NEW
Murillo I TollnerFranceAsiya Javayant UNQUALIFIED
Juan S FerenczRussiaAmy Elsner PROPOSAL
Jones H MaletBrazilOnyama Limba RENEWAL
Claire S DoeJapanAsiya Javayant RENEWAL
David F KuskoRussiaStephen Shaw QUALIFIED
Costa D FollerUnited KingdomElwin Sharvill RENEWAL
Maria I AlbaresItalyIvan Magalhaes NEW
Jefferson S MorascaSpainElwin Sharvill QUALIFIED
Faith K RoysterArgentinaAsiya Javayant UNQUALIFIED
Maisha E FlosiSpainAmy Elsner QUALIFIED
Johnson W PoquetteCanadaXuxue Feng RENEWAL
Mujtaba Y SergiSpainAmy Elsner RENEWAL
Darci F GarufiAustraliaAnna Fali NEW
Maisha W MaletAustraliaAmy Elsner QUALIFIED
Jeanfrancois N ChuiSpainIoni Bowcher NEGOTIATION
Smith X InouyeArgentinaAnna Fali RENEWAL
Ivar F FerenczGermanyAnna Fali UNQUALIFIED
Francesco X SchemmerSpainXuxue Feng NEGOTIATION
Munro D IturbideItalyAmy Elsner PROPOSAL
Aditya S InouyeUnited KingdomAsiya Javayant QUALIFIED
Smith A RulapaughIndiaIoni Bowcher NEGOTIATION
Ricardo P CampainCanadaAsiya Javayant PROPOSAL
Wickens L GlickItalyStephen Shaw NEGOTIATION
Morrow C CaudyJapanOnyama Limba NEW
Octavia Z RutaFranceXuxue Feng NEW
Jones R BriddickIndiaElwin Sharvill RENEWAL
Aditya D CaudyArgentinaXuxue Feng UNQUALIFIED
Ashley E WhobreyBrazilAnna Fali UNQUALIFIED
Murillo O PerinUnited KingdomIoni Bowcher UNQUALIFIED
Faith T SergiJapanAmy Elsner QUALIFIED
Aditya M DoeUnited KingdomAmy Elsner UNQUALIFIED
Jones E CaldareraSpainIoni Bowcher QUALIFIED
Maria T FigeroaRussiaStephen Shaw RENEWAL
Wickens C WieserSpainIvan Magalhaes RENEWAL
Misaki D GlickSpainAnna Fali NEW
Misaki A RimJapanStephen Shaw NEW
Aditya C GauchoFranceAnna Fali NEW
Ivar X AlbaresIndiaStephen Shaw RENEWAL
Izzy J NestleArgentinaElwin Sharvill NEW
Antonio H TollnerSpainStephen Shaw UNQUALIFIED
Alejandro S PerinIndiaElwin Sharvill RENEWAL
Smith I DarakjyGermanyAnna Fali QUALIFIED
Alejandro Q MaletIndiaElwin Sharvill QUALIFIED
David E FerenczItalyIoni Bowcher NEW
Kaitlin T ButtIndiaAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ashley K GauchoFranceAmy Elsner RENEWAL
Kaitlin P MaletUnited KingdomIoni Bowcher NEW
Arvin C FollerArgentinaAsiya Javayant RENEWAL
Arvin Z SergiBrazilIvan Magalhaes NEGOTIATION
Emily A VenereBrazilOnyama Limba NEGOTIATION
Ivar J WaycottJapanXuxue Feng QUALIFIED
James V MaletIndiaAmy Elsner NEW
Silvio K MacleadSpainElwin Sharvill PROPOSAL
Leja E CaudyBrazilStephen Shaw NEW
Misaki G VocelkaRussiaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria P PoquetteAustralia2026-06-07Feiner Bros NEGOTIATION25Stephen Shaw
1001Rodrigues W DarakjyFrance2026-06-12Feltz Printing Service QUALIFIED87Amy Elsner
1002Salvatore Q MacleadSpain2026-06-11King, Christopher A Esq NEW56Xuxue Feng
1003Aditya D ShinkoBrazil2026-05-18Rousseaux, Michael Esq NEGOTIATION31Bernardo Dominic
1004Arvin J WhobreyIndia2026-06-09Benton, John B Jr RENEWAL66Ivan Magalhaes
1005Mayumi Y WieserItaly2026-05-29Printing Dimensions NEGOTIATION23Elwin Sharvill
1006Leja R RutaUnited Kingdom2026-05-29Feiner Bros UNQUALIFIED31Elwin Sharvill
1007Kadeem X CampainGermany2026-06-09Morlong Associates RENEWAL53Xuxue Feng
1008Misaki G FollerIndia2026-05-24Rangoni Of Florence PROPOSAL45Amy Elsner
1009Faith J SaylorsItaly2026-05-17Dorl, James J Esq NEGOTIATION96Amy Elsner
1010Claire T FollerIndia2026-05-27Chemel, James L Cpa UNQUALIFIED1Bernardo Dominic
1011Johnson J SergiGermany2026-06-12Commercial Press UNQUALIFIED26Anna Fali
1012Chavez L DilliardCanada2026-05-17Commercial Press NEGOTIATION97Xuxue Feng
1013Ashley O DoeGermany2026-05-24Truhlar And Truhlar Attys RENEWAL43Onyama Limba
1014Johnson X GauchoItaly2026-05-30Rangoni Of Florence RENEWAL94Asiya Javayant
1015Wickens S PerinJapan2026-05-26Rangoni Of Florence NEW38Stephen Shaw
1016Emily T GarufiSpain2026-06-12Feiner Bros NEW19Stephen Shaw
1017Rodrigues R KolmetzCanada2026-06-05Morlong Associates NEW70Bernardo Dominic
1018Alejandro K PaprockiFrance2026-05-19Commercial Press NEGOTIATION53Bernardo Dominic
1019Kadeem G CaudyItaly2026-05-20Truhlar And Truhlar Attys NEGOTIATION91Stephen Shaw
1020Leon J GillianIndia2026-06-09Rousseaux, Michael Esq QUALIFIED0Elwin Sharvill
1021Greenwood Y IturbideBrazil2026-05-23Rangoni Of Florence UNQUALIFIED48Stephen Shaw
1022Aruna R StensethCanada2026-05-29Chanay, Jeffrey A Esq UNQUALIFIED61Asiya Javayant
1023Octavia F MarrierSpain2026-05-24Benton, John B Jr NEGOTIATION66Stephen Shaw
1024Francesco O WieserIndia2026-05-30Benton, John B Jr RENEWAL58Xuxue Feng
1025Greenwood C IturbideCanada2026-05-29Chemel, James L Cpa PROPOSAL3Stephen Shaw
1026Arvin O SaylorsItaly2026-06-05Chanay, Jeffrey A Esq PROPOSAL9Anna Fali
1027Maisha S GlickSpain2026-05-17Morlong Associates QUALIFIED91Xuxue Feng
1028Darci K FigeroaArgentina2026-05-22Printing Dimensions QUALIFIED50Xuxue Feng
1029Arvin T BologniaArgentina2026-05-28Benton, John B Jr RENEWAL62Onyama Limba
1030Izzy A PaprockiAustralia2026-06-03Feltz Printing Service NEGOTIATION73Elwin Sharvill
1031Darci E AlbaresRussia2026-05-19Feiner Bros PROPOSAL97Elwin Sharvill
1032Jefferson Z GillianIndia2026-05-19Morlong Associates NEGOTIATION64Amy Elsner
1033Claire A DoeJapan2026-06-03Chemel, James L Cpa RENEWAL77Xuxue Feng
1034Tony S SaylorsBrazil2026-05-23Dorl, James J Esq PROPOSAL39Ivan Magalhaes
1035Cody Q BologniaBrazil2026-06-02Chapman, Ross E Esq UNQUALIFIED48Ioni Bowcher
1036Rodrigues K MaletSpain2026-06-02King, Christopher A Esq RENEWAL12Anna Fali
1037Greenwood Q FollerRussia2026-05-27Commercial Press UNQUALIFIED96Stephen Shaw
1038James N FigeroaSpain2026-06-07Feltz Printing Service RENEWAL60Xuxue Feng
1039Greenwood F CampainArgentina2026-05-18Rangoni Of Florence NEGOTIATION12Ioni Bowcher
1040Octavia L TollnerFrance2026-05-30Chanay, Jeffrey A Esq NEW79Anna Fali
1041Ricardo J NickaBrazil2026-05-31Printing Dimensions QUALIFIED17Onyama Limba
1042Silvio M IturbideSpain2026-05-25Feiner Bros RENEWAL88Ioni Bowcher
1043Jefferson X RulapaughCanada2026-05-29Dorl, James J Esq NEGOTIATION72Xuxue Feng
1044Octavia K KolmetzIndia2026-05-23Feiner Bros QUALIFIED12Anna Fali
1045Mujtaba Y CaudyFrance2026-05-22Printing Dimensions QUALIFIED94Xuxue Feng
1046Arvin U StockhamSpain2026-05-17Buckley Miller Wright NEGOTIATION51Onyama Limba
1047Johnson P FerenczUnited Kingdom2026-06-15Chemel, James L Cpa RENEWAL79Stephen Shaw
1048Ashley N WhobreySpain2026-05-23Benton, John B Jr NEGOTIATION65Bernardo Dominic
1049Aditya G RulapaughCanada2026-06-09Rousseaux, Michael Esq RENEWAL2Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Morrow S MarrierGermanyIvan Magalhaes NEW
Leon J IturbideAustraliaAsiya Javayant NEGOTIATION
Francesco Q WieserArgentinaXuxue Feng RENEWAL
Mujtaba W StockhamUnited KingdomBernardo Dominic QUALIFIED
Aditya C VenereUnited KingdomIvan Magalhaes QUALIFIED
Clifford V BriddickArgentinaAnna Fali NEGOTIATION
Nicolas O TollnerGermanyIoni Bowcher UNQUALIFIED
Alejandro G OstroskySpainAnna Fali UNQUALIFIED
James Q GillianItalyXuxue Feng RENEWAL
Francesco I FollerAustraliaOnyama Limba NEGOTIATION
Misaki R AlbaresGermanyStephen Shaw RENEWAL
Deepesh B CaudyArgentinaXuxue Feng RENEWAL
Smith C FigeroaArgentinaStephen Shaw RENEWAL
Aruna N SlusarskiGermanyBernardo Dominic UNQUALIFIED
Ricardo F GillianCanadaIvan Magalhaes RENEWAL
Munro D GlickArgentinaElwin Sharvill QUALIFIED
Deepesh N AlbaresArgentinaStephen Shaw NEGOTIATION
Tony M SchemmerGermanyXuxue Feng RENEWAL
Cody G FerenczGermanyAnna Fali QUALIFIED
Johnson S AmigonAustraliaAnna Fali NEW
Sinclair A RimRussiaElwin Sharvill RENEWAL
Sinclair Q OldroydIndiaAsiya Javayant RENEWAL
Johnson T VenereItalyElwin Sharvill NEW
Emily U PerinArgentinaAmy Elsner RENEWAL
Rodrigues Q PaprockiSpainStephen Shaw NEW
Francesco A ShinkoSpainAmy Elsner QUALIFIED
Wickens U DarakjyCanadaXuxue Feng RENEWAL
Smith K GauchoItalyOnyama Limba NEGOTIATION
Salvatore S AlbaresAustraliaElwin Sharvill PROPOSAL
Aruna M GillianIndiaXuxue Feng PROPOSAL
Smith N TollnerIndiaAnna Fali RENEWAL
Mujtaba J FigeroaArgentinaXuxue Feng RENEWAL
Murillo M DoeAustraliaBernardo Dominic RENEWAL
Aika T WhobreyUnited KingdomBernardo Dominic RENEWAL
Aika R StensethArgentinaIoni Bowcher RENEWAL
Francesco K SaylorsJapanOnyama Limba NEW
Deepesh S CampainJapanIvan Magalhaes QUALIFIED
Wickens T StockhamJapanAnna Fali RENEWAL
Cody K CampainGermanyOnyama Limba QUALIFIED
Aditya B PerinBrazilXuxue Feng UNQUALIFIED
Murillo T GlickAustraliaAnna Fali PROPOSAL
Salvatore R KolmetzRussiaElwin Sharvill PROPOSAL
Johnson T MacleadFranceXuxue Feng QUALIFIED
Ricardo N GauchoAustraliaAmy Elsner UNQUALIFIED
Maisha F FerenczArgentinaStephen Shaw QUALIFIED
Mujtaba H MorascaBrazilBernardo Dominic PROPOSAL
Murillo N AmigonItalyIvan Magalhaes QUALIFIED
Salvatore F TollnerRussiaAmy Elsner RENEWAL
Clifford E OldroydJapanAsiya Javayant NEW
James M CaudyBrazilIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Jeanfrancois P Venere
David R Figeroa
Kaitlin P Ruta
Rodrigues H Chui
Claire L Vocelka
Rodrigues U Rim
Izzy O Stenseth
Aruna W Slusarski
James K Stockham
David L Vocelka
Aika H Ferencz
Deepesh Q Waycott
James Y Campain
Ivar V Flosi
Julie S Wieser
Ashley L Butt
David Q Flosi
Antonio N Perin
Jennifer X Malet
Maria Q Sergi
Emily J Malet
Kaitlin N Caudy
Morrow L Tollner
Maisha E Iturbide
Ivar P Perin
Maria R Ruta
Stacey J Kusko
Chavez C Whobrey
Jeanfrancois J Poquette
Ivar J Malet
Jones Z Shinko
Kaitlin B Schemmer
Rodrigues O Figeroa
Chavez Q Sergi
Jennifer N Gillian
Aika Q Ostrosky
Darci R Schemmer
Johnson L Ruta
Sinclair D Kolmetz
Mayumi X Bowley
Claire N Kusko
Nicolas T Poquette
David F Nicka
Costa E Wieser
Ricardo W Stockham
Murillo X Gaucho
Munro I Vocelka
Wickens H Caldarera
Costa U Doe
Izzy I Briddick
IdCountryDate
1000India2026-05-31
1001Canada2026-05-22
1002Australia2026-05-25
1003United Kingdom2026-05-25
1004Japan2026-06-05
1005Japan2026-06-02
1006Japan2026-06-03
1007Argentina2026-05-28
1008Germany2026-05-22
1009United Kingdom2026-05-30
1010United Kingdom2026-05-18
1011Australia2026-06-11
1012Argentina2026-05-29
1013Argentina2026-06-12
1014France2026-06-06
1015Japan2026-06-08
1016Argentina2026-05-27
1017United Kingdom2026-05-20
1018Brazil2026-05-20
1019Japan2026-06-15
1020Spain2026-06-09
1021Argentina2026-06-01
1022Brazil2026-05-26
1023Russia2026-05-26
1024Argentina2026-06-02
1025Canada2026-06-14
1026United Kingdom2026-05-22
1027Italy2026-06-15
1028Australia2026-05-24
1029India2026-05-27
1030United Kingdom2026-06-05
1031Italy2026-06-08
1032Canada2026-05-17
1033Brazil2026-05-29
1034Russia2026-05-21
1035Germany2026-05-20
1036France2026-05-26
1037Russia2026-05-18
1038Argentina2026-06-08
1039Russia2026-05-30
1040Brazil2026-06-08
1041Russia2026-06-12
1042Brazil2026-06-11
1043Brazil2026-06-13
1044Canada2026-05-21
1045India2026-06-15
1046Spain2026-06-07
1047Australia2026-06-08
1048Brazil2026-06-11
1049Japan2026-06-15

On-Demand Data

NameIdCountryDate
Alejandro Y Campain1000United Kingdom2026-06-04
Tony E Royster1001Italy2026-06-14
Deepesh G Nestle1002United Kingdom2026-06-12
Mayumi C Venere1003Australia2026-05-30
Misaki M Perin1004Russia2026-05-23
Juan O Maclead1005France2026-05-28
Jennifer K Gillian1006Canada2026-06-10
Leja Q Rulapaugh1007India2026-06-13
Julie U Malet1008United Kingdom2026-05-22
Maria P Sergi1009Germany2026-06-04
Kadeem B Malet1010Russia2026-05-31
Ivar B Rulapaugh1011Spain2026-06-03
Deepesh T Venere1012United Kingdom2026-06-15
Deepesh U Albares1013Russia2026-05-19
Leja M Campain1014Canada2026-06-04
Munro N Garufi1015Argentina2026-05-19
Francesco K Ruta1016United Kingdom2026-05-24
Jennifer I Waycott1017India2026-06-13
Ivar I Slusarski1018Spain2026-06-07
Smith S Malet1019Argentina2026-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem W StensethRussiaXuxue Feng QUALIFIED
Stacey F MorascaArgentinaStephen Shaw UNQUALIFIED
Alejandro U NestleIndiaStephen Shaw QUALIFIED
Leon L CaudyRussiaOnyama Limba NEGOTIATION
Leon S WieserIndiaXuxue Feng UNQUALIFIED
Salvatore K AlbaresSpainBernardo Dominic NEW
Jefferson J RimBrazilAmy Elsner NEW
Emily A GarufiRussiaAnna Fali PROPOSAL
Ivar S DilliardSpainBernardo Dominic PROPOSAL
Wickens U CaudyIndiaIvan Magalhaes QUALIFIED
Aditya X CaldareraJapanBernardo Dominic NEW
Greenwood S OstroskyBrazilAsiya Javayant PROPOSAL
Adams U DoeIndiaOnyama Limba QUALIFIED
Alejandro G AmigonArgentinaIoni Bowcher RENEWAL
Mayumi T GlickAustraliaOnyama Limba QUALIFIED
Emily F ShinkoUnited KingdomIvan Magalhaes RENEWAL
Deepesh R DilliardCanadaIoni Bowcher QUALIFIED
Costa U StockhamArgentinaIoni Bowcher PROPOSAL
Costa D TollnerSpainOnyama Limba UNQUALIFIED
Salvatore R StensethJapanStephen Shaw QUALIFIED
Salvatore Y CaldareraCanadaOnyama Limba UNQUALIFIED
Octavia O SlusarskiItalyOnyama Limba RENEWAL
Faith Q MaletUnited KingdomOnyama Limba QUALIFIED
Izzy B FollerArgentinaStephen Shaw RENEWAL
Aika V FollerSpainOnyama Limba NEGOTIATION
Maria E CaudyGermanyStephen Shaw PROPOSAL
Kaitlin P MacleadSpainOnyama Limba UNQUALIFIED
Mujtaba K CaudyCanadaElwin Sharvill NEW
Juan U KuskoBrazilIvan Magalhaes NEGOTIATION
Isabel R GlickJapanIvan Magalhaes PROPOSAL
Deepesh I NickaJapanElwin Sharvill UNQUALIFIED
Leja I StockhamUnited KingdomAnna Fali NEW
Morrow K FigeroaArgentinaOnyama Limba PROPOSAL
Chavez J GlickCanadaAmy Elsner UNQUALIFIED
Mujtaba J RutaAustraliaIvan Magalhaes NEW
Misaki F NickaUnited KingdomAmy Elsner UNQUALIFIED
Morrow Y GlickJapanOnyama Limba NEW
Ashley Z GlickSpainOnyama Limba UNQUALIFIED
Antonio R PerinArgentinaAmy Elsner NEW
Leja R FollerBrazilBernardo Dominic NEW

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