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
Deepesh E OldroydItalyAnna Fali UNQUALIFIED
David Q PaprockiAustraliaStephen Shaw NEW
Jones A AlbaresGermanyAsiya Javayant RENEWAL
Julie X DilliardSpainOnyama Limba RENEWAL
Leon D NickaIndiaAmy Elsner NEGOTIATION
Faith D AlbaresUnited KingdomBernardo Dominic QUALIFIED
Munro Y MacleadFranceXuxue Feng NEGOTIATION
Johnson N FlosiItalyOnyama Limba UNQUALIFIED
Ricardo C PerinFranceAnna Fali QUALIFIED
Juan S NestleUnited KingdomBernardo Dominic NEW
Mayumi B GillianBrazilAsiya Javayant NEGOTIATION
James P GlickIndiaElwin Sharvill UNQUALIFIED
Costa J MorascaAustraliaIoni Bowcher PROPOSAL
Kadeem L RulapaughUnited KingdomBernardo Dominic QUALIFIED
Mayumi V PerinUnited KingdomAnna Fali RENEWAL
Ricardo P MaletCanadaElwin Sharvill PROPOSAL
Jennifer A OstroskyJapanElwin Sharvill QUALIFIED
Johnson S OldroydItalyBernardo Dominic QUALIFIED
Maisha Z MacleadItalyElwin Sharvill RENEWAL
Kaitlin U KolmetzUnited KingdomBernardo Dominic PROPOSAL
James C WaycottGermanyXuxue Feng NEGOTIATION
Ricardo P ChuiCanadaAnna Fali NEW
Leon Z BologniaItalyAmy Elsner NEW
Emily U DoeRussiaAmy Elsner PROPOSAL
Julie C ShinkoBrazilIvan Magalhaes QUALIFIED
Leja I BriddickIndiaAsiya Javayant UNQUALIFIED
Greenwood I OstroskyAustraliaBernardo Dominic RENEWAL
David W CampainCanadaAmy Elsner NEW
Tony D DoeFranceXuxue Feng NEW
Rodrigues M StensethUnited KingdomElwin Sharvill UNQUALIFIED
Ivar B ShinkoJapanIvan Magalhaes QUALIFIED
Murillo B VenereGermanyIvan Magalhaes RENEWAL
Sinclair I SaylorsUnited KingdomStephen Shaw NEGOTIATION
Stacey Z GillianSpainIoni Bowcher RENEWAL
Ashley O ShinkoFranceOnyama Limba RENEWAL
Silvio Z MorascaCanadaIoni Bowcher NEGOTIATION
Cody X GlickJapanIvan Magalhaes NEGOTIATION
Maria F MacleadUnited KingdomIoni Bowcher QUALIFIED
Alejandro C ShinkoBrazilBernardo Dominic RENEWAL
James V TollnerBrazilAmy Elsner UNQUALIFIED
Ivar L ButtArgentinaOnyama Limba NEW
Misaki P FollerRussiaIvan Magalhaes NEW
Francesco W AlbaresIndiaAnna Fali RENEWAL
Aruna O FigeroaJapanAnna Fali QUALIFIED
Ricardo T AmigonIndiaIvan Magalhaes NEW
Aruna P FollerUnited KingdomStephen Shaw QUALIFIED
Jennifer P BriddickUnited KingdomBernardo Dominic NEW
Leja H ButtRussiaAnna Fali UNQUALIFIED
Deepesh Q TollnerBrazilBernardo Dominic PROPOSAL
Kaitlin A InouyeRussiaAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Darci O StockhamAustraliaXuxue Feng RENEWAL
Kadeem H NickaGermanyIoni Bowcher NEW
David Q AlbaresArgentinaIoni Bowcher NEGOTIATION
Ivar D SlusarskiItalyStephen Shaw QUALIFIED
Claire A DilliardRussiaElwin Sharvill QUALIFIED
Francesco J GlickAustraliaElwin Sharvill RENEWAL
Maisha U WaycottJapanStephen Shaw NEGOTIATION
Jefferson X WieserCanadaIvan Magalhaes UNQUALIFIED
Tony O InouyeFranceBernardo Dominic NEW
Emily T BowleyUnited KingdomIvan Magalhaes NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David E GillianUnited Kingdom2026-05-19Chemel, James L Cpa NEGOTIATION75Ioni Bowcher
1001Arvin M FlosiItaly2026-05-31King, Christopher A Esq NEW76Xuxue Feng
1002Jennifer F GlickCanada2026-05-27Chanay, Jeffrey A Esq UNQUALIFIED49Elwin Sharvill
1003Rodrigues M AmigonUnited Kingdom2026-05-14Chanay, Jeffrey A Esq RENEWAL28Amy Elsner
1004Murillo T OldroydRussia2026-06-05Commercial Press RENEWAL57Elwin Sharvill
1005David E StockhamJapan2026-06-07Dorl, James J Esq PROPOSAL31Onyama Limba
1006Alejandro Q StockhamBrazil2026-05-24Printing Dimensions QUALIFIED37Asiya Javayant
1007Antonio U SergiRussia2026-06-08Chemel, James L Cpa NEW14Anna Fali
1008Cody F SchemmerGermany2026-05-16Chemel, James L Cpa NEGOTIATION80Elwin Sharvill
1009Octavia N BologniaBrazil2026-05-28Rangoni Of Florence NEGOTIATION45Onyama Limba
1010Johnson R RutaItaly2026-05-28Chapman, Ross E Esq QUALIFIED2Asiya Javayant
1011Faith Y WhobreyBrazil2026-05-19Rangoni Of Florence RENEWAL70Xuxue Feng
1012Smith B InouyeCanada2026-05-28Morlong Associates NEW29Stephen Shaw
1013Isabel V DilliardBrazil2026-05-15Chemel, James L Cpa RENEWAL21Ioni Bowcher
1014Leon B GlickFrance2026-06-04Chanay, Jeffrey A Esq UNQUALIFIED41Stephen Shaw
1015Emily N KuskoJapan2026-05-19Buckley Miller Wright NEW39Xuxue Feng
1016Kadeem K ShinkoSpain2026-06-08Buckley Miller Wright NEW65Anna Fali
1017Misaki Y WhobreyFrance2026-05-12Feiner Bros PROPOSAL42Anna Fali
1018Julie C RutaGermany2026-05-15Chanay, Jeffrey A Esq NEGOTIATION1Amy Elsner
1019Murillo R ShinkoFrance2026-05-31King, Christopher A Esq NEGOTIATION94Xuxue Feng
1020Silvio A PerinJapan2026-06-07Feiner Bros UNQUALIFIED11Bernardo Dominic
1021Morrow V MacleadItaly2026-05-11Chapman, Ross E Esq PROPOSAL77Onyama Limba
1022Antonio D TollnerGermany2026-05-26Printing Dimensions NEGOTIATION89Stephen Shaw
1023Mayumi I DarakjyIndia2026-05-25Dorl, James J Esq NEW10Xuxue Feng
1024Julie L VenereCanada2026-05-20Morlong Associates NEW39Bernardo Dominic
1025Claire A StensethCanada2026-05-18Rangoni Of Florence PROPOSAL31Ivan Magalhaes
1026David I BowleyIndia2026-06-06Feiner Bros NEW99Amy Elsner
1027Greenwood C FigeroaIndia2026-05-28Truhlar And Truhlar Attys UNQUALIFIED53Asiya Javayant
1028Alejandro Z GarufiBrazil2026-05-14Buckley Miller Wright NEGOTIATION73Ivan Magalhaes
1029Aditya X PerinBrazil2026-05-22Rousseaux, Michael Esq UNQUALIFIED55Asiya Javayant
1030Antonio L DoeJapan2026-06-04Rousseaux, Michael Esq RENEWAL9Bernardo Dominic
1031Murillo B VenereGermany2026-05-21Morlong Associates QUALIFIED14Onyama Limba
1032Antonio L PaprockiAustralia2026-06-07Truhlar And Truhlar Attys PROPOSAL6Anna Fali
1033Kaitlin V VenereUnited Kingdom2026-05-12Rangoni Of Florence UNQUALIFIED0Bernardo Dominic
1034Ashley G OldroydCanada2026-05-13Commercial Press UNQUALIFIED5Xuxue Feng
1035Kadeem L KuskoIndia2026-05-22Chapman, Ross E Esq NEW5Elwin Sharvill
1036Claire Q PoquetteRussia2026-06-03Rousseaux, Michael Esq NEW92Onyama Limba
1037Smith D GauchoBrazil2026-05-13Dorl, James J Esq NEGOTIATION20Bernardo Dominic
1038Chavez R DoeItaly2026-05-25Chapman, Ross E Esq PROPOSAL52Ivan Magalhaes
1039Smith F CaudyJapan2026-05-24Morlong Associates RENEWAL83Amy Elsner
1040Murillo Q WaycottBrazil2026-05-24Chapman, Ross E Esq PROPOSAL54Onyama Limba
1041Stacey F ButtAustralia2026-05-11Printing Dimensions QUALIFIED84Ioni Bowcher
1042Sinclair Y MaletGermany2026-06-07Chemel, James L Cpa RENEWAL48Onyama Limba
1043Mujtaba B ChuiSpain2026-05-25Benton, John B Jr NEGOTIATION99Stephen Shaw
1044Tony Z RimArgentina2026-05-25Rousseaux, Michael Esq PROPOSAL51Amy Elsner
1045Francesco T SaylorsUnited Kingdom2026-05-31Truhlar And Truhlar Attys RENEWAL76Ioni Bowcher
1046Morrow O NickaUnited Kingdom2026-05-10Feiner Bros NEGOTIATION31Bernardo Dominic
1047Antonio D MacleadBrazil2026-05-16Buckley Miller Wright UNQUALIFIED98Anna Fali
1048Ivar E DoeAustralia2026-05-28Feltz Printing Service PROPOSAL83Elwin Sharvill
1049Clifford Z OstroskyArgentina2026-05-13Truhlar And Truhlar Attys QUALIFIED79Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Kadeem L KuskoSpainIvan Magalhaes RENEWAL
David Y OstroskyAustraliaXuxue Feng UNQUALIFIED
Emily G KuskoArgentinaOnyama Limba QUALIFIED
Rodrigues E BriddickBrazilAnna Fali PROPOSAL
Aditya P WieserBrazilOnyama Limba RENEWAL
Silvio J MaletItalyIvan Magalhaes RENEWAL
David J BowleyUnited KingdomIoni Bowcher PROPOSAL
Leja N GlickSpainAmy Elsner PROPOSAL
Wickens N ChuiSpainAmy Elsner NEW
Francesco O TollnerAustraliaAsiya Javayant PROPOSAL
Costa P GillianSpainIvan Magalhaes PROPOSAL
Alejandro K RimSpainStephen Shaw NEGOTIATION
Adams W SlusarskiUnited KingdomAsiya Javayant NEW
Misaki E OstroskyIndiaBernardo Dominic UNQUALIFIED
Darci O CaudySpainIvan Magalhaes PROPOSAL
Ricardo B BowleyAustraliaIoni Bowcher UNQUALIFIED
Juan L CaudyArgentinaXuxue Feng NEW
Izzy S MorascaAustraliaIoni Bowcher UNQUALIFIED
Murillo S OstroskyItalyBernardo Dominic QUALIFIED
Johnson I MarrierAustraliaStephen Shaw RENEWAL
Mujtaba H KolmetzRussiaOnyama Limba NEW
Stacey Y GauchoUnited KingdomIoni Bowcher PROPOSAL
Nicolas I SlusarskiAustraliaIvan Magalhaes NEGOTIATION
Adams N FigeroaCanadaStephen Shaw NEW
Jefferson X PerinUnited KingdomElwin Sharvill NEW
Chavez S GillianItalyBernardo Dominic QUALIFIED
Morrow Y SlusarskiCanadaAnna Fali QUALIFIED
Juan A OstroskyRussiaOnyama Limba UNQUALIFIED
Juan M DarakjyAustraliaBernardo Dominic PROPOSAL
Silvio N KolmetzAustraliaIoni Bowcher NEGOTIATION
Aruna R ShinkoGermanyXuxue Feng RENEWAL
Faith Q GauchoGermanyAmy Elsner QUALIFIED
Cody U DilliardBrazilAmy Elsner RENEWAL
Mayumi D PoquetteUnited KingdomAsiya Javayant RENEWAL
Jennifer J VenereAustraliaElwin Sharvill UNQUALIFIED
Cody K MaletBrazilIoni Bowcher RENEWAL
James D RimBrazilOnyama Limba UNQUALIFIED
Faith J CampainGermanyIvan Magalhaes NEW
Jeanfrancois C StensethSpainElwin Sharvill RENEWAL
Jones J TollnerSpainAsiya Javayant QUALIFIED
Claire J VocelkaIndiaIoni Bowcher UNQUALIFIED
Jeanfrancois A FerenczItalyAnna Fali PROPOSAL
Isabel L NestleBrazilBernardo Dominic RENEWAL
Arvin T PoquetteSpainOnyama Limba RENEWAL
Chavez U StockhamSpainXuxue Feng PROPOSAL
Misaki C RoysterRussiaIoni Bowcher NEGOTIATION
Murillo V SaylorsAustraliaStephen Shaw QUALIFIED
Antonio Z GillianArgentinaBernardo Dominic NEW
Adams S FerenczJapanElwin Sharvill UNQUALIFIED
Rodrigues F MacleadItalyStephen Shaw NEGOTIATION
Frozen Columns
Name
Kadeem T Perin
Munro M Tollner
James F Bowley
Octavia X Royster
Antonio L Butt
Antonio M Inouye
Mujtaba L Iturbide
Leja Z Campain
Aditya I Foller
Aika P Iturbide
Costa F Maclead
Mayumi B Figeroa
Ashley R Glick
Costa Y Wieser
Stacey L Whobrey
Leon O Figeroa
James U Flosi
Silvio S Flosi
Jeanfrancois B Schemmer
Leon K Marrier
David H Glick
Octavia T Caudy
Octavia C Shinko
Antonio T Amigon
Aditya V Rim
Kaitlin V Inouye
James H Garufi
Francesco T Chui
Juan T Perin
Wickens L Slusarski
Emily V Doe
Arvin W Malet
Deepesh W Butt
Aditya D Perin
Jones T Bolognia
Johnson G Wieser
Murillo P Glick
Aditya I Chui
Clifford I Kolmetz
Maisha O Oldroyd
Chavez S Albares
Greenwood P Rim
Stacey K Rim
Smith C Tollner
Nicolas S Caudy
Ivar X Butt
Jeanfrancois E Briddick
Maria L Albares
Nicolas W Oldroyd
Chavez X Bowley
IdCountryDate
1000United Kingdom2026-05-11
1001France2026-06-06
1002Russia2026-05-21
1003France2026-05-14
1004Japan2026-06-05
1005Russia2026-06-04
1006Russia2026-05-16
1007Spain2026-05-23
1008India2026-05-21
1009Germany2026-06-06
1010Spain2026-05-15
1011France2026-05-27
1012Brazil2026-05-17
1013Russia2026-05-10
1014Australia2026-05-31
1015Spain2026-06-08
1016India2026-05-13
1017Argentina2026-06-03
1018Spain2026-05-25
1019Russia2026-05-11
1020France2026-06-04
1021Japan2026-05-14
1022Brazil2026-06-06
1023Italy2026-06-04
1024Canada2026-05-11
1025India2026-05-13
1026Japan2026-06-06
1027Spain2026-05-28
1028Spain2026-06-07
1029Australia2026-06-02
1030Japan2026-05-24
1031Russia2026-06-07
1032Spain2026-05-31
1033Australia2026-05-17
1034Japan2026-05-13
1035Russia2026-05-17
1036Italy2026-05-11
1037France2026-06-06
1038India2026-05-14
1039Brazil2026-06-05
1040India2026-05-29
1041France2026-05-20
1042India2026-05-31
1043Brazil2026-05-17
1044Argentina2026-05-28
1045Canada2026-06-03
1046Australia2026-05-18
1047Germany2026-06-06
1048Argentina2026-05-13
1049Brazil2026-05-26

On-Demand Data

NameIdCountryDate
Wickens I Morasca1000Russia2026-05-10
Octavia I Nestle1001Australia2026-05-27
Isabel A Slusarski1002Russia2026-06-05
Emily P Dilliard1003Italy2026-05-23
Kadeem V Poquette1004Argentina2026-05-21
Alejandro O Oldroyd1005United Kingdom2026-05-28
Izzy K Bowley1006India2026-05-17
Cody B Venere1007Russia2026-05-13
Alejandro K Rulapaugh1008Japan2026-05-31
Antonio R Bowley1009United Kingdom2026-05-28
Kaitlin X Figeroa1010Argentina2026-05-15
Darci M Chui1011Italy2026-06-07
Deepesh Y Morasca1012Brazil2026-05-20
Alejandro Q Gillian1013Brazil2026-05-11
Antonio C Slusarski1014Argentina2026-05-16
Jefferson V Chui1015Italy2026-06-07
Cody G Bowley1016France2026-05-11
Mujtaba Q Rim1017Spain2026-05-26
Isabel W Saylors1018France2026-06-05
Jennifer C Figeroa1019France2026-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily V PerinRussiaIvan Magalhaes UNQUALIFIED
Mayumi D WieserAustraliaBernardo Dominic NEGOTIATION
Jefferson O RoysterItalyIoni Bowcher NEW
Jefferson H RimBrazilBernardo Dominic QUALIFIED
Francesco K DilliardArgentinaElwin Sharvill NEW
Jeanfrancois T CaldareraFranceXuxue Feng UNQUALIFIED
Stacey L NickaUnited KingdomStephen Shaw UNQUALIFIED
Izzy I FigeroaGermanyAmy Elsner PROPOSAL
Silvio Y BriddickSpainAsiya Javayant NEGOTIATION
Arvin K DoeGermanyBernardo Dominic NEGOTIATION
Greenwood A SlusarskiAustraliaIvan Magalhaes NEGOTIATION
Kaitlin M ShinkoAustraliaAsiya Javayant UNQUALIFIED
Claire Y CampainUnited KingdomIoni Bowcher PROPOSAL
Wickens I SergiBrazilAmy Elsner NEW
Jefferson K BologniaFranceXuxue Feng NEGOTIATION
Antonio B GlickFranceElwin Sharvill RENEWAL
Deepesh N WaycottItalyStephen Shaw UNQUALIFIED
Kadeem T CaldareraAustraliaXuxue Feng NEW
Costa T SergiSpainBernardo Dominic PROPOSAL
Maisha S WaycottFranceStephen Shaw NEW
Francesco L WieserGermanyXuxue Feng QUALIFIED
Jefferson F VocelkaItalyOnyama Limba RENEWAL
Silvio S RulapaughUnited KingdomStephen Shaw QUALIFIED
Julie G WieserBrazilAmy Elsner UNQUALIFIED
Maria N WaycottUnited KingdomAnna Fali PROPOSAL
Francesco I AlbaresRussiaAsiya Javayant NEGOTIATION
Aruna U InouyeSpainAnna Fali PROPOSAL
Nicolas W RoysterRussiaAsiya Javayant UNQUALIFIED
Claire P StockhamIndiaAsiya Javayant NEW
Maria V BowleyGermanyIvan Magalhaes UNQUALIFIED
Leon T MorascaRussiaIvan Magalhaes PROPOSAL
Aruna E WieserItalyOnyama Limba RENEWAL
Chavez A FerenczRussiaAmy Elsner QUALIFIED
Clifford E FlosiItalyStephen Shaw UNQUALIFIED
Jennifer Q IturbideRussiaAsiya Javayant UNQUALIFIED
Smith K MacleadCanadaAnna Fali QUALIFIED
Antonio Y SaylorsArgentinaAmy Elsner RENEWAL
Costa E BowleySpainAsiya Javayant NEGOTIATION
Cody O DilliardGermanyIoni Bowcher QUALIFIED
Greenwood P NestleItalyElwin Sharvill RENEWAL

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