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
Darci Z IturbideBrazilOnyama Limba QUALIFIED
Aika S OldroydItalyStephen Shaw RENEWAL
Ashley T IturbideJapanIvan Magalhaes NEW
Nicolas Z FlosiAustraliaXuxue Feng QUALIFIED
Murillo E SlusarskiRussiaStephen Shaw UNQUALIFIED
Jeanfrancois C BowleyCanadaAsiya Javayant UNQUALIFIED
Munro H MaletArgentinaAsiya Javayant RENEWAL
Aditya I InouyeItalyOnyama Limba QUALIFIED
Kadeem C StockhamGermanyElwin Sharvill PROPOSAL
Munro K SchemmerBrazilBernardo Dominic RENEWAL
Tony C RimCanadaXuxue Feng UNQUALIFIED
Maisha F DilliardGermanyElwin Sharvill QUALIFIED
Arvin K PaprockiAustraliaIvan Magalhaes NEW
Antonio A TollnerArgentinaOnyama Limba RENEWAL
Sinclair P VocelkaIndiaElwin Sharvill NEW
Munro Y CaldareraItalyStephen Shaw UNQUALIFIED
Kaitlin K CaldareraGermanyOnyama Limba NEW
Jefferson Q DilliardBrazilAnna Fali QUALIFIED
Greenwood M DoeGermanyIoni Bowcher PROPOSAL
Rodrigues V FigeroaCanadaXuxue Feng PROPOSAL
Silvio Q RulapaughSpainXuxue Feng PROPOSAL
Cody J SlusarskiCanadaStephen Shaw RENEWAL
James S PaprockiItalyIoni Bowcher RENEWAL
Chavez H AmigonGermanyIoni Bowcher PROPOSAL
Tony B SergiItalyBernardo Dominic UNQUALIFIED
David P PaprockiArgentinaOnyama Limba QUALIFIED
Maisha A PaprockiJapanStephen Shaw NEGOTIATION
Morrow W AmigonSpainAsiya Javayant UNQUALIFIED
Darci C MaletGermanyIvan Magalhaes QUALIFIED
Maria Q RimAustraliaAnna Fali QUALIFIED
Morrow P RimBrazilElwin Sharvill NEW
Munro V MarrierAustraliaXuxue Feng QUALIFIED
Aruna I RoysterAustraliaIvan Magalhaes NEW
Emily I RoysterIndiaAmy Elsner QUALIFIED
Costa Q MarrierGermanyBernardo Dominic UNQUALIFIED
Claire D ButtIndiaAsiya Javayant PROPOSAL
Arvin W WhobreyGermanyIoni Bowcher NEW
Morrow O NestleIndiaBernardo Dominic NEGOTIATION
Smith I PaprockiItalyAmy Elsner PROPOSAL
Kadeem J MacleadArgentinaIvan Magalhaes PROPOSAL
Leja I IturbideIndiaIoni Bowcher NEGOTIATION
Ivar J AlbaresJapanStephen Shaw RENEWAL
Nicolas S PoquetteJapanAmy Elsner QUALIFIED
Misaki Y FerenczSpainStephen Shaw QUALIFIED
Jefferson Q FigeroaFranceIoni Bowcher NEW
Emily N OldroydGermanyIoni Bowcher NEW
Maisha S GarufiArgentinaIvan Magalhaes UNQUALIFIED
Tony N PerinAustraliaBernardo Dominic QUALIFIED
Greenwood L BriddickJapanXuxue Feng NEW
Jeanfrancois Q GarufiIndiaIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Deepesh Z WieserRussiaAnna Fali RENEWAL
Darci O OstroskyGermanyAsiya Javayant UNQUALIFIED
Adams N SchemmerFranceAmy Elsner QUALIFIED
Octavia C SlusarskiBrazilXuxue Feng NEGOTIATION
Morrow Q VenereItalyStephen Shaw NEGOTIATION
Octavia P MaletCanadaOnyama Limba UNQUALIFIED
Mayumi M AlbaresArgentinaAsiya Javayant RENEWAL
Jeanfrancois F RimItalyIoni Bowcher NEW
Stacey G DilliardUnited KingdomAsiya Javayant QUALIFIED
David R SlusarskiArgentinaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez W StensethIndia2026-05-25Buckley Miller Wright UNQUALIFIED53Bernardo Dominic
1001Leja E SergiUnited Kingdom2026-06-10Morlong Associates RENEWAL47Ivan Magalhaes
1002Sinclair E InouyeBrazil2026-06-17Truhlar And Truhlar Attys QUALIFIED7Ioni Bowcher
1003Jennifer S SchemmerFrance2026-06-16Commercial Press PROPOSAL10Amy Elsner
1004Kaitlin K GillianArgentina2026-06-10Chanay, Jeffrey A Esq NEW76Ioni Bowcher
1005Jeanfrancois B MaletFrance2026-06-19Chapman, Ross E Esq QUALIFIED73Bernardo Dominic
1006Greenwood D DarakjyGermany2026-05-28Feiner Bros NEGOTIATION34Ioni Bowcher
1007Greenwood L MarrierFrance2026-06-20Feiner Bros PROPOSAL25Ivan Magalhaes
1008Tony R RutaBrazil2026-05-27Feltz Printing Service PROPOSAL23Stephen Shaw
1009Faith Y CampainGermany2026-06-15King, Christopher A Esq RENEWAL92Ivan Magalhaes
1010Munro K IturbideAustralia2026-06-09Benton, John B Jr NEW55Asiya Javayant
1011Darci A CaudyArgentina2026-06-13Chanay, Jeffrey A Esq NEGOTIATION48Ioni Bowcher
1012Smith Q CaldareraAustralia2026-06-09Rousseaux, Michael Esq RENEWAL54Stephen Shaw
1013Smith D WieserArgentina2026-06-14King, Christopher A Esq QUALIFIED28Onyama Limba
1014Jefferson A VocelkaJapan2026-05-30Truhlar And Truhlar Attys NEW94Stephen Shaw
1015Nicolas Y RutaItaly2026-06-18Truhlar And Truhlar Attys NEW77Stephen Shaw
1016Morrow Q TollnerSpain2026-06-05Benton, John B Jr RENEWAL59Xuxue Feng
1017Darci E PerinAustralia2026-05-23Dorl, James J Esq QUALIFIED56Asiya Javayant
1018Johnson C MacleadBrazil2026-05-31Morlong Associates NEGOTIATION47Elwin Sharvill
1019Deepesh V RulapaughArgentina2026-06-11Feiner Bros UNQUALIFIED80Elwin Sharvill
1020Aruna E PoquetteCanada2026-06-06Chapman, Ross E Esq UNQUALIFIED56Stephen Shaw
1021Francesco N TollnerFrance2026-05-30Rousseaux, Michael Esq UNQUALIFIED98Bernardo Dominic
1022Cody G ChuiFrance2026-05-22Truhlar And Truhlar Attys RENEWAL31Elwin Sharvill
1023Deepesh A IturbideAustralia2026-06-18Feltz Printing Service UNQUALIFIED30Anna Fali
1024James U ChuiFrance2026-06-18Buckley Miller Wright NEW17Anna Fali
1025Stacey Q FigeroaCanada2026-05-25Dorl, James J Esq QUALIFIED98Anna Fali
1026Johnson J SergiRussia2026-06-12Chapman, Ross E Esq PROPOSAL22Ivan Magalhaes
1027Sinclair X FigeroaArgentina2026-05-26Printing Dimensions UNQUALIFIED0Amy Elsner
1028Tony E PoquetteGermany2026-06-19Chapman, Ross E Esq NEGOTIATION54Stephen Shaw
1029Munro L InouyeFrance2026-05-27Rousseaux, Michael Esq RENEWAL5Anna Fali
1030James D PaprockiItaly2026-05-26Chapman, Ross E Esq QUALIFIED55Xuxue Feng
1031Deepesh M VenereIndia2026-06-14Feltz Printing Service PROPOSAL23Ioni Bowcher
1032Aruna S KolmetzBrazil2026-06-18King, Christopher A Esq UNQUALIFIED45Stephen Shaw
1033Izzy E VenereArgentina2026-05-28Rangoni Of Florence NEW74Bernardo Dominic
1034Mayumi V KuskoItaly2026-05-24Morlong Associates NEW80Asiya Javayant
1035Octavia W GillianUnited Kingdom2026-06-15Commercial Press QUALIFIED99Xuxue Feng
1036Tony R BologniaRussia2026-06-02Morlong Associates RENEWAL20Anna Fali
1037Deepesh Q InouyeAustralia2026-05-28Chapman, Ross E Esq QUALIFIED99Elwin Sharvill
1038Juan T OldroydCanada2026-05-22King, Christopher A Esq NEW94Stephen Shaw
1039Aruna Q StockhamJapan2026-06-14Chapman, Ross E Esq QUALIFIED14Elwin Sharvill
1040Sinclair F ChuiFrance2026-06-06Truhlar And Truhlar Attys RENEWAL95Elwin Sharvill
1041Ricardo M CaldareraGermany2026-06-14Truhlar And Truhlar Attys NEGOTIATION19Stephen Shaw
1042Emily T SlusarskiArgentina2026-05-26Dorl, James J Esq UNQUALIFIED37Amy Elsner
1043Isabel Y RimRussia2026-06-04Buckley Miller Wright NEW75Ioni Bowcher
1044Sinclair Z DarakjyItaly2026-06-08King, Christopher A Esq RENEWAL70Ivan Magalhaes
1045Stacey H StockhamAustralia2026-06-18Commercial Press UNQUALIFIED75Xuxue Feng
1046Munro I MaletFrance2026-06-13Rangoni Of Florence PROPOSAL71Asiya Javayant
1047Emily R NestleAustralia2026-06-07Truhlar And Truhlar Attys QUALIFIED64Ivan Magalhaes
1048James L BowleyFrance2026-05-25Chanay, Jeffrey A Esq RENEWAL82Anna Fali
1049Mujtaba O InouyeArgentina2026-05-27Morlong Associates QUALIFIED72Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
David S SaylorsBrazilStephen Shaw NEGOTIATION
Aruna U SaylorsArgentinaIvan Magalhaes QUALIFIED
Johnson V ChuiGermanyAsiya Javayant UNQUALIFIED
Greenwood X BologniaArgentinaAnna Fali RENEWAL
Leja E RimUnited KingdomStephen Shaw PROPOSAL
Darci A BriddickCanadaIoni Bowcher QUALIFIED
Misaki G SaylorsSpainIvan Magalhaes PROPOSAL
Jefferson V TollnerGermanyAsiya Javayant UNQUALIFIED
Claire Z SaylorsGermanyAsiya Javayant NEGOTIATION
Claire L NickaUnited KingdomAmy Elsner NEGOTIATION
Deepesh G StockhamArgentinaStephen Shaw NEGOTIATION
Octavia I StockhamRussiaAnna Fali PROPOSAL
Maisha Z RimIndiaIoni Bowcher PROPOSAL
James X AmigonAustraliaAmy Elsner NEW
Salvatore J VocelkaFranceStephen Shaw RENEWAL
Faith F TollnerUnited KingdomIoni Bowcher RENEWAL
Johnson A StockhamGermanyAnna Fali PROPOSAL
Claire J OstroskyItalyAnna Fali NEW
Cody X SchemmerAustraliaAmy Elsner NEGOTIATION
David B BowleySpainIvan Magalhaes NEW
Adams P RoysterSpainBernardo Dominic NEW
Sinclair F WaycottFranceAmy Elsner QUALIFIED
James D DarakjyItalyOnyama Limba PROPOSAL
Ivar P RimGermanyOnyama Limba RENEWAL
Salvatore C MaletJapanAsiya Javayant NEGOTIATION
Antonio H ButtArgentinaStephen Shaw PROPOSAL
Izzy U OldroydIndiaStephen Shaw QUALIFIED
Claire C MaletArgentinaAsiya Javayant UNQUALIFIED
Aruna G InouyeItalyIvan Magalhaes PROPOSAL
Wickens B KolmetzArgentinaBernardo Dominic PROPOSAL
Aditya J GarufiSpainIvan Magalhaes PROPOSAL
Leja Y InouyeRussiaElwin Sharvill QUALIFIED
Deepesh D MaletUnited KingdomOnyama Limba NEW
Kadeem K SchemmerRussiaBernardo Dominic PROPOSAL
Juan B WieserGermanyStephen Shaw QUALIFIED
Julie X FigeroaIndiaIvan Magalhaes UNQUALIFIED
Leja J DilliardIndiaIoni Bowcher QUALIFIED
Rodrigues P BriddickIndiaIoni Bowcher QUALIFIED
Julie X ShinkoJapanBernardo Dominic RENEWAL
Greenwood W GillianGermanyXuxue Feng NEGOTIATION
Stacey D VenereItalyIvan Magalhaes NEGOTIATION
Emily G CampainAustraliaAsiya Javayant QUALIFIED
Johnson M SaylorsFranceElwin Sharvill QUALIFIED
Wickens T SchemmerBrazilAmy Elsner UNQUALIFIED
Deepesh C SchemmerBrazilElwin Sharvill NEGOTIATION
Munro L MacleadGermanyAsiya Javayant PROPOSAL
Adams E SchemmerJapanIvan Magalhaes NEW
Arvin A VenereUnited KingdomBernardo Dominic QUALIFIED
Sinclair F AmigonCanadaAmy Elsner UNQUALIFIED
Claire M RimIndiaAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Ashley W Gillian
David K Caldarera
Nicolas O Darakjy
Johnson H Garufi
Maria K Campain
Murillo H Oldroyd
Rodrigues D Paprocki
Mayumi O Gaucho
Adams Q Amigon
Aditya C Campain
Kaitlin N Butt
Jeanfrancois P Saylors
Jeanfrancois Y Tollner
Octavia W Caldarera
Arvin K Malet
Wickens O Slusarski
Costa G Ostrosky
Alejandro D Bolognia
Deepesh J Iturbide
Maisha R Perin
Cody H Dilliard
Aditya G Saylors
Ricardo F Royster
Ricardo B Bolognia
Ricardo Z Bolognia
David Y Darakjy
Smith W Marrier
James J Ferencz
Greenwood F Royster
Mayumi F Butt
Jennifer V Morasca
Izzy B Royster
Jennifer K Gillian
Maria L Poquette
Mayumi P Inouye
Cody H Darakjy
Adams R Bolognia
Munro Q Dilliard
Clifford U Albares
Claire Y Darakjy
Adams I Glick
Murillo J Doe
Deepesh F Waycott
Salvatore H Bowley
Aditya M Darakjy
Juan D Waycott
Stacey N Wieser
Jennifer S Stockham
Jennifer B Bolognia
Adams C Shinko
IdCountryDate
1000Australia2026-05-27
1001Brazil2026-06-10
1002Argentina2026-06-08
1003Brazil2026-06-15
1004United Kingdom2026-06-15
1005Canada2026-05-30
1006Spain2026-05-29
1007Australia2026-05-30
1008Spain2026-06-04
1009United Kingdom2026-06-14
1010Canada2026-06-12
1011Spain2026-06-19
1012Canada2026-06-16
1013United Kingdom2026-06-11
1014Argentina2026-06-03
1015India2026-06-07
1016Canada2026-05-26
1017United Kingdom2026-05-30
1018Germany2026-05-27
1019Canada2026-05-28
1020United Kingdom2026-05-26
1021Italy2026-05-22
1022France2026-06-07
1023India2026-05-28
1024Spain2026-05-31
1025Brazil2026-06-10
1026Australia2026-06-09
1027Spain2026-05-29
1028Brazil2026-05-28
1029India2026-06-19
1030Brazil2026-05-26
1031Canada2026-06-15
1032Japan2026-05-27
1033Germany2026-05-26
1034Germany2026-06-17
1035Russia2026-06-02
1036Italy2026-06-18
1037Russia2026-06-06
1038Australia2026-06-11
1039Canada2026-06-18
1040Brazil2026-06-16
1041Spain2026-06-13
1042Italy2026-06-06
1043Spain2026-05-28
1044Russia2026-06-01
1045Italy2026-06-13
1046France2026-06-19
1047Italy2026-06-08
1048Canada2026-05-25
1049Italy2026-05-24

On-Demand Data

NameIdCountryDate
Francesco Z Perin1000Australia2026-06-04
Cody J Garufi1001Spain2026-06-18
Darci U Slusarski1002Spain2026-06-19
Jennifer M Butt1003Australia2026-06-09
Misaki K Caldarera1004Italy2026-05-30
Murillo C Figeroa1005India2026-06-04
Isabel A Rim1006India2026-06-08
Clifford V Darakjy1007Spain2026-06-15
Juan F Kusko1008Canada2026-06-17
Juan H Ferencz1009Brazil2026-06-19
Murillo Y Ferencz1010India2026-05-29
Aditya G Gillian1011Germany2026-06-16
Antonio S Figeroa1012Russia2026-05-27
James U Schemmer1013Spain2026-06-10
Jennifer K Waycott1014India2026-05-22
Clifford T Saylors1015Russia2026-06-01
Costa B Bowley1016India2026-06-17
Juan T Caudy1017Spain2026-05-26
Salvatore W Oldroyd1018Italy2026-05-26
Faith N Nicka1019Canada2026-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire Q CaudyBrazilIoni Bowcher NEGOTIATION
Jefferson L ShinkoItalyAsiya Javayant PROPOSAL
Emily L BowleyUnited KingdomXuxue Feng UNQUALIFIED
Izzy O MorascaSpainXuxue Feng RENEWAL
Aditya V CampainCanadaAmy Elsner RENEWAL
Smith G FerenczFranceAmy Elsner QUALIFIED
Emily H PaprockiJapanBernardo Dominic RENEWAL
Aika B SchemmerAustraliaAmy Elsner NEW
Leon W OstroskyCanadaIoni Bowcher UNQUALIFIED
Francesco E AmigonSpainAsiya Javayant QUALIFIED
Antonio S SlusarskiSpainIoni Bowcher RENEWAL
Antonio O BologniaCanadaAnna Fali NEGOTIATION
Juan X TollnerCanadaIoni Bowcher UNQUALIFIED
Claire L FollerSpainAnna Fali NEW
Faith N NestleArgentinaStephen Shaw UNQUALIFIED
James Z IturbideAustraliaIvan Magalhaes UNQUALIFIED
Faith I GlickIndiaAmy Elsner PROPOSAL
Isabel H OstroskyCanadaIvan Magalhaes RENEWAL
Antonio C ButtSpainAnna Fali PROPOSAL
Rodrigues D DilliardAustraliaXuxue Feng NEW
Aditya C StockhamBrazilAsiya Javayant PROPOSAL
Mayumi Q WieserItalyIvan Magalhaes PROPOSAL
Darci U MacleadFranceXuxue Feng RENEWAL
Alejandro N MorascaSpainOnyama Limba QUALIFIED
Rodrigues F GauchoFranceAsiya Javayant NEGOTIATION
Leon O CampainBrazilBernardo Dominic RENEWAL
Costa F VenereJapanIoni Bowcher UNQUALIFIED
Julie P GillianRussiaAsiya Javayant UNQUALIFIED
Salvatore L ChuiJapanStephen Shaw PROPOSAL
Wickens Q GillianBrazilIoni Bowcher UNQUALIFIED
Alejandro Z TollnerAustraliaIvan Magalhaes UNQUALIFIED
Leja L DilliardSpainStephen Shaw NEGOTIATION
Murillo Z GillianUnited KingdomAnna Fali UNQUALIFIED
Leon I SergiRussiaOnyama Limba UNQUALIFIED
Jones H GauchoArgentinaOnyama Limba QUALIFIED
David R DilliardRussiaXuxue Feng QUALIFIED
Darci K MaletBrazilAsiya Javayant NEGOTIATION
Claire M AlbaresArgentinaAnna Fali UNQUALIFIED
Salvatore I NickaGermanyAnna Fali NEW
Greenwood G MorascaRussiaIvan Magalhaes NEGOTIATION

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