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
Izzy W SlusarskiBrazilXuxue Feng UNQUALIFIED
Nicolas P NestleGermanyIvan Magalhaes NEGOTIATION
Murillo Q NestleBrazilIvan Magalhaes NEW
Izzy Q ShinkoUnited KingdomIvan Magalhaes PROPOSAL
Ricardo E BriddickJapanOnyama Limba UNQUALIFIED
Alejandro W MacleadRussiaElwin Sharvill UNQUALIFIED
Tony E TollnerJapanAmy Elsner QUALIFIED
Ricardo U PoquetteAustraliaAnna Fali PROPOSAL
Murillo N VenereGermanyIvan Magalhaes NEGOTIATION
Isabel R GauchoUnited KingdomAsiya Javayant PROPOSAL
Deepesh M RutaAustraliaIvan Magalhaes PROPOSAL
Jefferson P FollerRussiaOnyama Limba RENEWAL
Adams J WhobreyArgentinaXuxue Feng RENEWAL
Isabel K ChuiAustraliaAnna Fali NEW
Cody S CaldareraSpainIvan Magalhaes RENEWAL
Misaki M PaprockiAustraliaAnna Fali NEGOTIATION
Mujtaba Z DoeBrazilBernardo Dominic NEGOTIATION
Munro D ShinkoAustraliaStephen Shaw UNQUALIFIED
Aika N CampainFranceOnyama Limba NEGOTIATION
Morrow V DilliardCanadaElwin Sharvill UNQUALIFIED
Jefferson Z PerinCanadaIoni Bowcher UNQUALIFIED
Isabel D NestleGermanyStephen Shaw UNQUALIFIED
Alejandro T KuskoRussiaAnna Fali QUALIFIED
Emily A MarrierSpainAsiya Javayant RENEWAL
Jefferson V ShinkoRussiaAnna Fali PROPOSAL
Aditya D GauchoArgentinaIoni Bowcher UNQUALIFIED
Adams R MaletSpainIoni Bowcher RENEWAL
Johnson H AmigonFranceAsiya Javayant NEGOTIATION
Salvatore L MaletGermanyElwin Sharvill NEW
Tony H GlickRussiaXuxue Feng RENEWAL
Jennifer U RutaItalyElwin Sharvill NEGOTIATION
Arvin P SergiBrazilIvan Magalhaes PROPOSAL
Johnson V TollnerArgentinaIoni Bowcher NEGOTIATION
Johnson E FollerUnited KingdomStephen Shaw UNQUALIFIED
Faith G KolmetzAustraliaAnna Fali NEW
Smith N GillianBrazilBernardo Dominic QUALIFIED
Munro L SergiGermanyAmy Elsner PROPOSAL
Deepesh F ShinkoUnited KingdomElwin Sharvill UNQUALIFIED
Smith Y MaletFranceAnna Fali QUALIFIED
Smith D DarakjyBrazilAmy Elsner PROPOSAL
Misaki G DilliardGermanyAnna Fali RENEWAL
Smith X CampainIndiaElwin Sharvill UNQUALIFIED
Kaitlin I FollerBrazilXuxue Feng PROPOSAL
Salvatore G CampainItalyAsiya Javayant QUALIFIED
Clifford A PoquetteSpainXuxue Feng RENEWAL
Jefferson E FollerItalyBernardo Dominic NEW
Ivar X BowleyAustraliaIoni Bowcher NEW
James P TollnerJapanXuxue Feng PROPOSAL
Clifford D NickaRussiaIvan Magalhaes NEW
Ivar I WieserBrazilOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Sinclair Y SaylorsCanadaOnyama Limba NEGOTIATION
Jefferson E BowleySpainAmy Elsner NEW
Munro Y AlbaresAustraliaAnna Fali QUALIFIED
Ashley M StockhamFranceIvan Magalhaes RENEWAL
Chavez L RimGermanyOnyama Limba RENEWAL
Arvin G AlbaresJapanStephen Shaw NEW
Jennifer N ChuiBrazilBernardo Dominic PROPOSAL
Johnson S ButtRussiaStephen Shaw NEW
Isabel Y GillianCanadaBernardo Dominic PROPOSAL
Leon G MacleadGermanyAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson Z BowleyCanada2026-02-26Rousseaux, Michael Esq NEW13Elwin Sharvill
1001Juan H GlickCanada2026-03-17Feiner Bros PROPOSAL13Elwin Sharvill
1002Antonio F FollerBrazil2026-03-06Rousseaux, Michael Esq QUALIFIED6Bernardo Dominic
1003Jefferson F PoquetteFrance2026-02-27Rousseaux, Michael Esq QUALIFIED88Anna Fali
1004Jefferson L CampainRussia2026-03-04Chemel, James L Cpa NEW29Anna Fali
1005Isabel I VocelkaItaly2026-02-25Commercial Press NEGOTIATION89Ivan Magalhaes
1006Maria S FerenczJapan2026-02-28Chanay, Jeffrey A Esq UNQUALIFIED5Ioni Bowcher
1007Mujtaba M KolmetzJapan2026-03-16Feltz Printing Service NEGOTIATION31Anna Fali
1008Deepesh R VocelkaSpain2026-03-01Chemel, James L Cpa RENEWAL88Bernardo Dominic
1009Leja F DilliardIndia2026-02-19Morlong Associates UNQUALIFIED87Amy Elsner
1010Jennifer X AlbaresFrance2026-03-14Chanay, Jeffrey A Esq PROPOSAL12Ivan Magalhaes
1011Deepesh P InouyeJapan2026-03-01Feltz Printing Service QUALIFIED26Amy Elsner
1012Ricardo W OldroydGermany2026-03-07Buckley Miller Wright UNQUALIFIED51Stephen Shaw
1013Leja N StensethItaly2026-03-04Dorl, James J Esq QUALIFIED53Xuxue Feng
1014Wickens A StockhamIndia2026-03-03Feiner Bros UNQUALIFIED15Ioni Bowcher
1015Murillo D WieserBrazil2026-03-09Dorl, James J Esq UNQUALIFIED56Ivan Magalhaes
1016Julie D CaudyJapan2026-02-18Commercial Press RENEWAL26Onyama Limba
1017Morrow J RoysterRussia2026-03-14Feltz Printing Service PROPOSAL96Bernardo Dominic
1018Smith T PoquetteIndia2026-02-19King, Christopher A Esq RENEWAL42Ioni Bowcher
1019Jeanfrancois E SlusarskiRussia2026-03-04Commercial Press RENEWAL20Amy Elsner
1020Deepesh H MaletFrance2026-03-11Commercial Press PROPOSAL95Ioni Bowcher
1021Munro V DoeBrazil2026-03-17Rangoni Of Florence QUALIFIED47Stephen Shaw
1022Ricardo S NestleBrazil2026-03-07Chemel, James L Cpa RENEWAL98Asiya Javayant
1023Mayumi Y PoquetteAustralia2026-03-14Dorl, James J Esq QUALIFIED93Xuxue Feng
1024Rodrigues B RoysterGermany2026-02-22Printing Dimensions PROPOSAL13Ioni Bowcher
1025Leja G FollerRussia2026-03-12Rangoni Of Florence RENEWAL49Onyama Limba
1026Costa J AmigonRussia2026-03-07Feiner Bros NEGOTIATION91Bernardo Dominic
1027Aditya J RutaAustralia2026-02-27Truhlar And Truhlar Attys UNQUALIFIED78Anna Fali
1028Leon D SlusarskiBrazil2026-03-03King, Christopher A Esq NEGOTIATION39Xuxue Feng
1029Jones M AmigonJapan2026-03-02Feiner Bros PROPOSAL80Stephen Shaw
1030Clifford W CaudyUnited Kingdom2026-02-23Dorl, James J Esq UNQUALIFIED31Xuxue Feng
1031Chavez N RutaIndia2026-03-05Commercial Press RENEWAL64Stephen Shaw
1032Adams T GarufiBrazil2026-03-11Buckley Miller Wright UNQUALIFIED86Onyama Limba
1033James O FerenczJapan2026-02-23Chapman, Ross E Esq UNQUALIFIED64Elwin Sharvill
1034Sinclair A DilliardRussia2026-03-05Benton, John B Jr RENEWAL98Anna Fali
1035Adams U MorascaSpain2026-03-16Truhlar And Truhlar Attys PROPOSAL1Ivan Magalhaes
1036Maria H RutaSpain2026-03-17Dorl, James J Esq UNQUALIFIED17Ivan Magalhaes
1037Maria N RulapaughSpain2026-03-14Printing Dimensions RENEWAL55Xuxue Feng
1038Johnson Y DilliardRussia2026-03-10Chanay, Jeffrey A Esq NEGOTIATION98Anna Fali
1039Arvin L GillianBrazil2026-02-24Rousseaux, Michael Esq RENEWAL72Onyama Limba
1040Sinclair U DoeBrazil2026-03-04Chapman, Ross E Esq RENEWAL60Onyama Limba
1041Adams X KuskoSpain2026-02-27Printing Dimensions RENEWAL5Onyama Limba
1042Isabel J WaycottSpain2026-03-06Dorl, James J Esq QUALIFIED30Amy Elsner
1043Juan F RulapaughSpain2026-03-05Printing Dimensions PROPOSAL63Asiya Javayant
1044Francesco N SlusarskiFrance2026-03-07Feiner Bros NEW12Onyama Limba
1045Ricardo K InouyeBrazil2026-03-11King, Christopher A Esq QUALIFIED32Bernardo Dominic
1046Leon A BologniaSpain2026-03-06Printing Dimensions NEW28Anna Fali
1047Salvatore C GlickItaly2026-02-18Feiner Bros QUALIFIED66Stephen Shaw
1048Juan R MaletItaly2026-02-23Truhlar And Truhlar Attys NEW6Amy Elsner
1049Silvio H WaycottItaly2026-02-20Commercial Press UNQUALIFIED49Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Tony Q StockhamArgentinaIoni Bowcher RENEWAL
Julie X StockhamArgentinaStephen Shaw NEW
Kadeem M MaletGermanyIvan Magalhaes QUALIFIED
Ashley I WaycottRussiaOnyama Limba UNQUALIFIED
James Q AlbaresAustraliaAnna Fali UNQUALIFIED
Sinclair J GillianSpainOnyama Limba NEW
Leon H DilliardAustraliaOnyama Limba RENEWAL
Murillo H MaletAustraliaElwin Sharvill UNQUALIFIED
Nicolas Z NickaRussiaElwin Sharvill UNQUALIFIED
Wickens C RutaItalyOnyama Limba PROPOSAL
Ivar R KolmetzBrazilIoni Bowcher RENEWAL
Ashley H StockhamBrazilStephen Shaw UNQUALIFIED
Kadeem V MacleadSpainAmy Elsner PROPOSAL
Leja K OstroskyUnited KingdomElwin Sharvill RENEWAL
Maria J FollerBrazilAsiya Javayant NEW
Aditya T RulapaughItalyAnna Fali PROPOSAL
Munro P InouyeSpainStephen Shaw NEW
Deepesh U BowleyBrazilAsiya Javayant NEGOTIATION
Johnson V SchemmerJapanStephen Shaw RENEWAL
Nicolas G FollerFranceIoni Bowcher RENEWAL
Leon Y ShinkoAustraliaAsiya Javayant RENEWAL
Jennifer Y NestleBrazilIvan Magalhaes NEW
Maisha J CaldareraRussiaXuxue Feng PROPOSAL
Aika D MaletAustraliaStephen Shaw PROPOSAL
Greenwood J AlbaresAustraliaOnyama Limba NEGOTIATION
Misaki W SlusarskiItalyAsiya Javayant RENEWAL
Tony A FigeroaJapanIvan Magalhaes PROPOSAL
David Z PoquetteIndiaAsiya Javayant PROPOSAL
Maria H PerinSpainBernardo Dominic NEGOTIATION
Arvin I WhobreyCanadaIvan Magalhaes RENEWAL
Wickens T OstroskyCanadaAsiya Javayant UNQUALIFIED
Stacey V GarufiCanadaXuxue Feng NEGOTIATION
Octavia J DarakjyItalyIoni Bowcher PROPOSAL
Octavia E GarufiItalyBernardo Dominic RENEWAL
Aika Z KolmetzFranceXuxue Feng PROPOSAL
Chavez Z CaldareraGermanyOnyama Limba UNQUALIFIED
Smith C CampainAustraliaAmy Elsner NEGOTIATION
Morrow S BowleyJapanXuxue Feng RENEWAL
Greenwood B DilliardItalyOnyama Limba NEW
Nicolas M InouyeJapanAmy Elsner QUALIFIED
Wickens I MaletJapanAsiya Javayant QUALIFIED
Cody S AlbaresCanadaAnna Fali UNQUALIFIED
Jennifer M DilliardArgentinaIvan Magalhaes UNQUALIFIED
Munro G ChuiFranceAnna Fali RENEWAL
Francesco J MarrierUnited KingdomStephen Shaw QUALIFIED
Maria D FollerAustraliaAnna Fali PROPOSAL
Mujtaba D WaycottBrazilBernardo Dominic QUALIFIED
Chavez J OldroydCanadaOnyama Limba QUALIFIED
Mayumi E MorascaItalyAnna Fali NEW
Alejandro O SergiItalyAnna Fali NEW
Frozen Columns
Name
Clifford P Gillian
Julie F Paprocki
Ricardo W Kusko
Izzy Q Doe
Jeanfrancois X Kusko
Chavez D Maclead
Salvatore Y Kusko
Costa B Malet
Arvin L Campain
Maria N Whobrey
Arvin Z Malet
Sinclair Q Caldarera
David T Nicka
Murillo L Morasca
Aika B Shinko
Sinclair I Slusarski
Salvatore F Butt
Francesco N Gaucho
Alejandro D Butt
Antonio V Foller
Aruna T Ruta
Sinclair M Caldarera
Faith J Nicka
Wickens E Briddick
Octavia W Wieser
Clifford S Iturbide
Arvin Z Ruta
Ivar G Dilliard
Misaki P Poquette
Kaitlin T Bowley
Salvatore R Garufi
Ricardo B Rulapaugh
David R Slusarski
Jefferson F Gillian
Leja U Bowley
Claire A Amigon
Kaitlin W Rulapaugh
Alejandro U Shinko
Isabel B Caudy
Costa Z Shinko
Juan I Schemmer
Morrow I Rulapaugh
Jeanfrancois H Butt
Maria G Malet
Izzy Q Nestle
Mayumi L Vocelka
Julie E Wieser
Salvatore U Paprocki
Ivar W Bolognia
Mayumi G Tollner
IdCountryDate
1000Russia2026-02-27
1001Italy2026-03-06
1002Australia2026-02-27
1003Germany2026-03-01
1004Italy2026-03-03
1005Russia2026-02-27
1006Germany2026-03-09
1007Australia2026-03-15
1008India2026-03-12
1009Argentina2026-03-01
1010Brazil2026-03-03
1011Russia2026-03-12
1012Canada2026-03-05
1013Argentina2026-02-25
1014Australia2026-02-24
1015Brazil2026-02-21
1016Italy2026-03-02
1017Germany2026-03-13
1018India2026-03-08
1019Italy2026-02-18
1020Brazil2026-02-25
1021Australia2026-02-23
1022Russia2026-03-12
1023Argentina2026-02-28
1024India2026-02-25
1025Italy2026-03-07
1026India2026-02-27
1027United Kingdom2026-02-19
1028United Kingdom2026-02-22
1029Argentina2026-03-19
1030Spain2026-02-19
1031Canada2026-03-01
1032Brazil2026-03-10
1033Argentina2026-03-11
1034Australia2026-03-05
1035Canada2026-02-21
1036Argentina2026-03-10
1037Australia2026-03-06
1038Germany2026-02-19
1039India2026-03-15
1040Argentina2026-03-13
1041France2026-03-09
1042United Kingdom2026-02-28
1043Germany2026-02-27
1044Canada2026-02-21
1045Brazil2026-03-04
1046India2026-03-06
1047Japan2026-03-02
1048Canada2026-03-03
1049Italy2026-03-11

On-Demand Data

NameIdCountryDate
Mujtaba N Shinko1000Japan2026-03-11
Chavez Z Gaucho1001Canada2026-03-16
Leja Z Waycott1002Brazil2026-03-04
Alejandro L Dilliard1003Spain2026-03-01
Greenwood I Dilliard1004France2026-03-03
Silvio C Kusko1005United Kingdom2026-03-11
Ashley L Nestle1006Argentina2026-03-09
Chavez A Whobrey1007Italy2026-03-14
Cody L Iturbide1008Canada2026-03-02
Julie W Amigon1009Italy2026-02-26
Darci O Gillian1010Italy2026-03-06
Isabel Q Whobrey1011Argentina2026-02-20
Adams D Dilliard1012Spain2026-03-15
David G Bolognia1013Japan2026-03-06
Francesco V Wieser1014Brazil2026-03-09
Arvin B Garufi1015Australia2026-03-09
James A Royster1016Australia2026-03-11
Munro O Schemmer1017Russia2026-02-20
Isabel G Caldarera1018Italy2026-03-19
Misaki T Darakjy1019France2026-02-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley S ButtJapanIvan Magalhaes RENEWAL
Ivar H WieserFranceOnyama Limba QUALIFIED
Greenwood B WieserCanadaElwin Sharvill UNQUALIFIED
Maisha C NestleUnited KingdomStephen Shaw RENEWAL
Greenwood P KolmetzUnited KingdomXuxue Feng NEGOTIATION
Kadeem Y ShinkoIndiaOnyama Limba PROPOSAL
Munro K DoeBrazilIoni Bowcher NEW
Jennifer H IturbideFranceIoni Bowcher UNQUALIFIED
Juan N SchemmerIndiaIoni Bowcher NEW
Johnson Z OstroskyItalyAsiya Javayant QUALIFIED
Rodrigues K ChuiGermanyElwin Sharvill NEGOTIATION
Costa S FerenczArgentinaIvan Magalhaes NEGOTIATION
Cody P KolmetzArgentinaBernardo Dominic NEW
Nicolas F StockhamAustraliaXuxue Feng PROPOSAL
Johnson P SaylorsCanadaIvan Magalhaes RENEWAL
Leon M MaletJapanElwin Sharvill RENEWAL
Aditya L DilliardArgentinaBernardo Dominic QUALIFIED
Clifford B ChuiIndiaBernardo Dominic NEGOTIATION
Antonio J WhobreyItalyElwin Sharvill QUALIFIED
Stacey S MarrierGermanyAmy Elsner UNQUALIFIED
Chavez C SaylorsUnited KingdomElwin Sharvill RENEWAL
Smith X CaldareraCanadaXuxue Feng NEGOTIATION
Ricardo U OldroydIndiaStephen Shaw NEW
Faith F MorascaRussiaBernardo Dominic UNQUALIFIED
Clifford O TollnerJapanBernardo Dominic UNQUALIFIED
Tony D ShinkoBrazilAnna Fali PROPOSAL
Kadeem K ShinkoCanadaIoni Bowcher QUALIFIED
Murillo B NestleSpainIvan Magalhaes RENEWAL
Leja O BriddickUnited KingdomAsiya Javayant RENEWAL
Octavia S BowleyBrazilIoni Bowcher NEW
Emily X MaletRussiaXuxue Feng RENEWAL
Jefferson B SchemmerSpainXuxue Feng NEW
Octavia S SergiSpainElwin Sharvill PROPOSAL
Nicolas Y TollnerCanadaIvan Magalhaes PROPOSAL
Stacey Y KuskoRussiaStephen Shaw NEGOTIATION
Darci B RimItalyAnna Fali NEGOTIATION
Isabel K NickaArgentinaAsiya Javayant RENEWAL
Ivar R BriddickAustraliaBernardo Dominic PROPOSAL
Aruna W SlusarskiJapanXuxue Feng QUALIFIED
Chavez V SchemmerAustraliaElwin Sharvill PROPOSAL

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