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
Rodrigues I PoquetteGermanyBernardo Dominic NEW
Smith Z OldroydRussiaIvan Magalhaes RENEWAL
Murillo R RutaUnited KingdomAsiya Javayant PROPOSAL
Aika B FerenczJapanIvan Magalhaes UNQUALIFIED
Misaki F AmigonCanadaIvan Magalhaes RENEWAL
Francesco A GlickArgentinaIoni Bowcher PROPOSAL
Cody Y BologniaUnited KingdomAmy Elsner RENEWAL
Aika N SergiItalyXuxue Feng QUALIFIED
Maisha M FlosiItalyAnna Fali PROPOSAL
Ricardo Z SlusarskiBrazilOnyama Limba RENEWAL
Alejandro D CaldareraItalyAsiya Javayant NEGOTIATION
Alejandro E BowleyRussiaBernardo Dominic UNQUALIFIED
Antonio E MaletUnited KingdomBernardo Dominic NEW
Mayumi P AmigonGermanyAnna Fali NEGOTIATION
Leon C WieserGermanyBernardo Dominic RENEWAL
Morrow F WhobreyUnited KingdomIvan Magalhaes UNQUALIFIED
Alejandro X WaycottUnited KingdomOnyama Limba NEW
Clifford L KolmetzRussiaIoni Bowcher PROPOSAL
Misaki Y PoquetteBrazilIoni Bowcher RENEWAL
James F MarrierRussiaIoni Bowcher NEGOTIATION
Alejandro P SlusarskiCanadaAmy Elsner QUALIFIED
Maisha C OstroskyIndiaBernardo Dominic NEGOTIATION
Leja Y CampainIndiaIvan Magalhaes QUALIFIED
Antonio E NestleIndiaStephen Shaw QUALIFIED
Cody E GarufiJapanXuxue Feng QUALIFIED
Julie Y PaprockiRussiaIoni Bowcher RENEWAL
Mayumi K FerenczCanadaAnna Fali PROPOSAL
Smith Y CaldareraRussiaBernardo Dominic NEGOTIATION
Emily H KuskoAustraliaBernardo Dominic RENEWAL
Octavia B WaycottGermanyIvan Magalhaes UNQUALIFIED
Alejandro H SaylorsAustraliaStephen Shaw RENEWAL
Clifford D FerenczUnited KingdomBernardo Dominic QUALIFIED
Aditya Z WhobreyRussiaIoni Bowcher QUALIFIED
Tony U BologniaJapanOnyama Limba NEGOTIATION
Ricardo I CaudySpainBernardo Dominic UNQUALIFIED
Arvin W GlickSpainElwin Sharvill RENEWAL
Kaitlin G ChuiSpainIoni Bowcher PROPOSAL
Nicolas O SaylorsArgentinaOnyama Limba UNQUALIFIED
Faith Y AmigonJapanIoni Bowcher PROPOSAL
David K AmigonItalyBernardo Dominic PROPOSAL
Smith J FerenczGermanyStephen Shaw PROPOSAL
Tony I InouyeAustraliaIoni Bowcher PROPOSAL
Jennifer Y BriddickItalyBernardo Dominic RENEWAL
Francesco X DarakjyArgentinaBernardo Dominic NEGOTIATION
Emily G GauchoCanadaAnna Fali RENEWAL
David A AlbaresSpainElwin Sharvill QUALIFIED
Aruna M SlusarskiGermanyOnyama Limba QUALIFIED
Mayumi N FerenczArgentinaXuxue Feng NEGOTIATION
Cody W BriddickJapanBernardo Dominic NEGOTIATION
David A ShinkoIndiaAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Deepesh X VenereUnited KingdomAnna Fali PROPOSAL
Nicolas D PoquetteArgentinaAnna Fali QUALIFIED
Mujtaba L BologniaIndiaStephen Shaw UNQUALIFIED
Faith L WhobreyIndiaIvan Magalhaes NEW
Izzy T BriddickFranceAmy Elsner PROPOSAL
Smith D FollerSpainXuxue Feng PROPOSAL
James L GauchoAustraliaAnna Fali RENEWAL
Adams G DoeItalyAnna Fali PROPOSAL
Johnson L DilliardItalyIvan Magalhaes NEW
David Q BowleyFranceBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo R NickaGermany2026-05-11Feiner Bros QUALIFIED98Elwin Sharvill
1001Leon F PerinJapan2026-05-03Rousseaux, Michael Esq NEW64Amy Elsner
1002Octavia U NickaCanada2026-04-20Feltz Printing Service UNQUALIFIED82Xuxue Feng
1003Silvio G SchemmerFrance2026-04-15Feltz Printing Service QUALIFIED97Xuxue Feng
1004Jennifer P DarakjyFrance2026-04-22Benton, John B Jr UNQUALIFIED52Xuxue Feng
1005Ricardo B SaylorsGermany2026-04-24Benton, John B Jr PROPOSAL97Bernardo Dominic
1006Francesco I MacleadBrazil2026-04-20Chanay, Jeffrey A Esq NEW40Elwin Sharvill
1007Munro N VocelkaItaly2026-04-18Chemel, James L Cpa UNQUALIFIED73Asiya Javayant
1008Alejandro R VenereUnited Kingdom2026-05-10Rangoni Of Florence PROPOSAL99Elwin Sharvill
1009Jones Z OstroskyBrazil2026-05-07Chapman, Ross E Esq NEW78Xuxue Feng
1010Darci V SchemmerRussia2026-04-30Chanay, Jeffrey A Esq QUALIFIED25Anna Fali
1011Adams H RimBrazil2026-04-15Printing Dimensions UNQUALIFIED98Anna Fali
1012Adams X CaldareraAustralia2026-04-25Truhlar And Truhlar Attys NEGOTIATION81Elwin Sharvill
1013Leja B FollerItaly2026-05-02Feiner Bros NEGOTIATION74Ivan Magalhaes
1014Clifford J MaletBrazil2026-04-23Truhlar And Truhlar Attys UNQUALIFIED11Anna Fali
1015Ashley G StensethBrazil2026-04-20Rousseaux, Michael Esq PROPOSAL18Onyama Limba
1016Deepesh T VenereAustralia2026-04-17Chanay, Jeffrey A Esq UNQUALIFIED34Ioni Bowcher
1017Chavez V MacleadRussia2026-04-18Chanay, Jeffrey A Esq NEGOTIATION28Elwin Sharvill
1018Adams P SlusarskiArgentina2026-04-15Benton, John B Jr NEGOTIATION23Ivan Magalhaes
1019Munro G KuskoRussia2026-05-01Rousseaux, Michael Esq NEGOTIATION67Stephen Shaw
1020Cody W StockhamIndia2026-04-17Feiner Bros QUALIFIED8Xuxue Feng
1021Adams X PerinFrance2026-04-15Feltz Printing Service UNQUALIFIED10Xuxue Feng
1022Kaitlin B FerenczRussia2026-05-11Printing Dimensions PROPOSAL53Ivan Magalhaes
1023Murillo S KolmetzBrazil2026-04-18Chemel, James L Cpa QUALIFIED63Ivan Magalhaes
1024Izzy R MacleadIndia2026-05-10Chapman, Ross E Esq RENEWAL76Amy Elsner
1025Octavia H MacleadJapan2026-04-26Chanay, Jeffrey A Esq UNQUALIFIED55Elwin Sharvill
1026Misaki O FollerJapan2026-05-11Buckley Miller Wright NEGOTIATION36Asiya Javayant
1027Claire S BowleyIndia2026-04-25Benton, John B Jr NEGOTIATION9Asiya Javayant
1028Adams S DilliardRussia2026-04-23Benton, John B Jr QUALIFIED50Elwin Sharvill
1029Arvin Q AlbaresArgentina2026-04-25Printing Dimensions PROPOSAL25Onyama Limba
1030Aditya S VenereJapan2026-04-29Printing Dimensions NEGOTIATION93Asiya Javayant
1031David I InouyeSpain2026-05-11Benton, John B Jr QUALIFIED67Bernardo Dominic
1032Misaki P GauchoGermany2026-04-25Rousseaux, Michael Esq RENEWAL96Ivan Magalhaes
1033Faith B SaylorsJapan2026-04-15Chemel, James L Cpa RENEWAL81Stephen Shaw
1034Sinclair E KolmetzAustralia2026-04-15Morlong Associates QUALIFIED2Bernardo Dominic
1035Cody B SlusarskiFrance2026-05-11Morlong Associates NEGOTIATION20Anna Fali
1036Adams V RulapaughAustralia2026-05-03Commercial Press RENEWAL85Amy Elsner
1037Wickens Q InouyeSpain2026-04-28Feltz Printing Service QUALIFIED83Xuxue Feng
1038Arvin I FlosiFrance2026-04-18Commercial Press PROPOSAL69Xuxue Feng
1039Wickens K ShinkoIndia2026-04-15Buckley Miller Wright PROPOSAL86Onyama Limba
1040Costa X ButtGermany2026-04-24Rangoni Of Florence PROPOSAL77Amy Elsner
1041Octavia C AlbaresFrance2026-05-05Commercial Press UNQUALIFIED60Onyama Limba
1042Ricardo B ButtItaly2026-04-14Rousseaux, Michael Esq NEGOTIATION95Ioni Bowcher
1043Kaitlin D FerenczGermany2026-04-16Printing Dimensions QUALIFIED58Xuxue Feng
1044Emily L MorascaJapan2026-04-27Chemel, James L Cpa QUALIFIED0Stephen Shaw
1045Antonio I FigeroaFrance2026-04-23King, Christopher A Esq NEW86Amy Elsner
1046Clifford B InouyeSpain2026-05-08Commercial Press NEGOTIATION74Amy Elsner
1047Silvio T InouyeAustralia2026-05-05Rangoni Of Florence RENEWAL49Amy Elsner
1048Ashley X CampainAustralia2026-04-14Feltz Printing Service UNQUALIFIED95Anna Fali
1049Emily K OldroydGermany2026-05-11Buckley Miller Wright NEW25Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Isabel G GillianGermanyIvan Magalhaes QUALIFIED
David B BriddickCanadaAsiya Javayant QUALIFIED
Kadeem A GillianItalyBernardo Dominic RENEWAL
Wickens I KuskoJapanXuxue Feng QUALIFIED
Silvio X FigeroaAustraliaAnna Fali NEGOTIATION
Aika Z TollnerJapanIvan Magalhaes RENEWAL
Arvin G RulapaughIndiaAsiya Javayant UNQUALIFIED
Alejandro I MaletArgentinaElwin Sharvill NEW
Ashley N MaletArgentinaStephen Shaw NEGOTIATION
Sinclair N GlickBrazilBernardo Dominic NEW
Ricardo L MacleadUnited KingdomAmy Elsner NEGOTIATION
Leon F PerinIndiaXuxue Feng NEGOTIATION
Nicolas R DoeIndiaIvan Magalhaes PROPOSAL
Aditya M MaletUnited KingdomOnyama Limba UNQUALIFIED
Tony J GlickJapanBernardo Dominic NEW
Isabel G NickaArgentinaIoni Bowcher UNQUALIFIED
Costa P AlbaresJapanAmy Elsner PROPOSAL
Murillo W MaletArgentinaIvan Magalhaes QUALIFIED
Izzy T FerenczGermanyAnna Fali PROPOSAL
Julie H GarufiFranceIoni Bowcher NEW
Nicolas O BowleySpainIvan Magalhaes UNQUALIFIED
Maria N NickaBrazilXuxue Feng NEGOTIATION
Kaitlin T RoysterSpainAnna Fali NEW
Chavez M SaylorsRussiaAnna Fali PROPOSAL
Ashley L DilliardFranceOnyama Limba RENEWAL
David P NickaRussiaXuxue Feng NEW
Adams K SchemmerBrazilXuxue Feng PROPOSAL
Arvin G FlosiUnited KingdomAmy Elsner NEGOTIATION
Maisha Q VocelkaGermanyAnna Fali UNQUALIFIED
Juan M WieserRussiaXuxue Feng PROPOSAL
Julie U StockhamUnited KingdomIoni Bowcher QUALIFIED
Jennifer S KuskoRussiaIvan Magalhaes NEGOTIATION
Antonio C RimJapanAsiya Javayant QUALIFIED
Sinclair Y GarufiGermanyBernardo Dominic PROPOSAL
Darci O MarrierBrazilBernardo Dominic UNQUALIFIED
Francesco W RoysterItalyIvan Magalhaes QUALIFIED
Clifford F MaletIndiaAnna Fali UNQUALIFIED
Wickens J BriddickIndiaAmy Elsner QUALIFIED
Juan I MaletJapanOnyama Limba QUALIFIED
Aditya T GillianRussiaOnyama Limba NEGOTIATION
Wickens C SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Izzy E AlbaresCanadaAmy Elsner PROPOSAL
Julie L WieserBrazilElwin Sharvill QUALIFIED
Darci H WieserRussiaAsiya Javayant UNQUALIFIED
Ivar R FigeroaArgentinaOnyama Limba UNQUALIFIED
Misaki W BologniaJapanIoni Bowcher QUALIFIED
Ashley F CampainItalyIoni Bowcher NEW
Maisha N RutaUnited KingdomBernardo Dominic PROPOSAL
David M FerenczIndiaStephen Shaw RENEWAL
Ricardo Y KuskoArgentinaAsiya Javayant RENEWAL
Frozen Columns
Name
Aruna E Ferencz
Adams A Oldroyd
Octavia S Stenseth
Silvio L Glick
Maisha S Morasca
Antonio M Waycott
James S Shinko
Greenwood Q Paprocki
Murillo U Paprocki
Murillo J Caldarera
Mayumi D Malet
Jeanfrancois R Malet
Clifford Q Stenseth
Mujtaba S Rim
Greenwood B Glick
Silvio E Foller
Ricardo L Darakjy
Kadeem A Tollner
Jefferson Q Inouye
Jones H Caldarera
Octavia S Amigon
Izzy T Garufi
Kaitlin A Rulapaugh
Francesco R Rim
Stacey V Foller
Clifford N Malet
Rodrigues J Saylors
Antonio N Tollner
Silvio A Maclead
Cody R Glick
Smith Q Briddick
Jones R Gaucho
Aditya R Sergi
Nicolas P Poquette
Mujtaba P Schemmer
Jones G Ostrosky
Kaitlin E Chui
Claire M Ferencz
Kaitlin S Rim
Leja N Morasca
Jones C Stockham
Chavez S Glick
Izzy E Saylors
Antonio D Bolognia
Kaitlin W Flosi
David C Bowley
Leon I Briddick
Julie F Nicka
Francesco A Ostrosky
Smith X Rim
IdCountryDate
1000Brazil2026-05-07
1001Canada2026-05-09
1002Australia2026-04-17
1003Germany2026-05-03
1004Argentina2026-04-15
1005Canada2026-04-13
1006France2026-04-17
1007Canada2026-05-10
1008Japan2026-05-01
1009Italy2026-05-11
1010Argentina2026-05-01
1011Germany2026-04-15
1012France2026-05-04
1013Russia2026-05-05
1014Germany2026-04-19
1015Brazil2026-04-29
1016Spain2026-05-04
1017Brazil2026-05-11
1018Germany2026-05-07
1019Japan2026-05-11
1020India2026-04-27
1021Germany2026-04-25
1022France2026-04-30
1023India2026-04-29
1024Argentina2026-05-07
1025Spain2026-04-25
1026United Kingdom2026-05-06
1027Argentina2026-05-09
1028Japan2026-05-02
1029Argentina2026-05-11
1030Brazil2026-05-03
1031Spain2026-05-03
1032Brazil2026-04-15
1033Japan2026-04-27
1034France2026-05-03
1035Russia2026-04-25
1036Italy2026-04-28
1037India2026-04-23
1038Italy2026-05-11
1039Canada2026-04-24
1040France2026-05-03
1041Russia2026-04-30
1042Germany2026-04-15
1043United Kingdom2026-04-29
1044Germany2026-04-14
1045India2026-04-24
1046France2026-04-20
1047Russia2026-04-21
1048Argentina2026-04-29
1049Canada2026-04-22

On-Demand Data

NameIdCountryDate
Aditya F Inouye1000Argentina2026-04-30
Nicolas L Kolmetz1001India2026-05-09
Jeanfrancois X Butt1002United Kingdom2026-04-30
Salvatore Z Kusko1003India2026-04-13
Ivar E Glick1004France2026-04-12
Aditya I Morasca1005France2026-04-15
Costa J Gaucho1006United Kingdom2026-04-18
Chavez D Dilliard1007Russia2026-04-27
Izzy J Morasca1008France2026-04-26
Murillo R Ferencz1009Australia2026-05-08
Greenwood Y Malet1010Japan2026-05-09
Ricardo D Albares1011United Kingdom2026-05-09
Arvin F Tollner1012Italy2026-04-18
Isabel V Glick1013Brazil2026-04-26
Jones O Malet1014Australia2026-04-12
Cody W Stenseth1015Germany2026-04-14
Emily X Gaucho1016Japan2026-04-22
Alejandro A Slusarski1017France2026-05-05
Isabel O Doe1018Australia2026-04-19
Ivar M Bowley1019Spain2026-04-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez T BowleyFranceAnna Fali PROPOSAL
Wickens T CaudyItalyOnyama Limba RENEWAL
Aika O MarrierJapanStephen Shaw NEW
Maria I GillianItalyAsiya Javayant UNQUALIFIED
Leon Q AmigonSpainStephen Shaw UNQUALIFIED
Jennifer X BriddickRussiaStephen Shaw NEW
Mujtaba P ShinkoUnited KingdomIoni Bowcher NEW
Aditya Z RimIndiaBernardo Dominic QUALIFIED
James H StockhamItalyStephen Shaw NEW
James Q FerenczGermanyAsiya Javayant NEGOTIATION
Clifford E SergiFranceOnyama Limba PROPOSAL
Murillo I CampainJapanAmy Elsner NEW
Jefferson U IturbideAustraliaIoni Bowcher UNQUALIFIED
Ivar P RoysterUnited KingdomElwin Sharvill NEGOTIATION
Ashley D PaprockiIndiaBernardo Dominic NEGOTIATION
Maisha O BowleyRussiaXuxue Feng UNQUALIFIED
Ashley A BriddickBrazilXuxue Feng QUALIFIED
Wickens Q NestleGermanyBernardo Dominic PROPOSAL
Silvio O SlusarskiCanadaAnna Fali NEW
Jones S RulapaughSpainStephen Shaw PROPOSAL
Kadeem W VocelkaIndiaAmy Elsner RENEWAL
Salvatore J SergiJapanAnna Fali UNQUALIFIED
Greenwood B DarakjyItalyIvan Magalhaes QUALIFIED
Isabel O MarrierUnited KingdomAnna Fali PROPOSAL
Emily S FerenczItalyXuxue Feng PROPOSAL
Greenwood L MaletGermanyIvan Magalhaes RENEWAL
Mujtaba F StockhamArgentinaElwin Sharvill QUALIFIED
Kaitlin N WaycottBrazilBernardo Dominic NEW
Isabel Y StensethArgentinaStephen Shaw RENEWAL
Rodrigues E NickaFranceIvan Magalhaes QUALIFIED
Leja G FollerGermanyStephen Shaw NEW
Darci N BriddickSpainXuxue Feng NEW
Deepesh T PoquetteFranceAsiya Javayant RENEWAL
Costa T StockhamBrazilAnna Fali PROPOSAL
Wickens S RutaBrazilBernardo Dominic UNQUALIFIED
Maisha G WieserSpainStephen Shaw PROPOSAL
Morrow X MarrierItalyBernardo Dominic RENEWAL
Jeanfrancois Y PerinAustraliaOnyama Limba NEGOTIATION
Tony M BriddickItalyAsiya Javayant UNQUALIFIED
Chavez V WaycottGermanyOnyama Limba 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.