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
Ashley P VocelkaCanadaAnna Fali RENEWAL
Mujtaba Z ChuiFranceAnna Fali PROPOSAL
Maria O KolmetzSpainIvan Magalhaes UNQUALIFIED
Ricardo Q StockhamJapanAsiya Javayant RENEWAL
Aruna T StensethAustraliaOnyama Limba RENEWAL
Claire C MaletJapanXuxue Feng PROPOSAL
Deepesh R DarakjyFranceAsiya Javayant UNQUALIFIED
Greenwood J RoysterItalyXuxue Feng QUALIFIED
Jeanfrancois Z GillianRussiaAnna Fali NEGOTIATION
David W StensethSpainOnyama Limba NEW
Emily G BowleyBrazilAmy Elsner UNQUALIFIED
Nicolas E BowleyCanadaIoni Bowcher QUALIFIED
Costa J FerenczJapanBernardo Dominic NEGOTIATION
Darci U AmigonFranceAnna Fali RENEWAL
Aruna G VenereJapanElwin Sharvill QUALIFIED
Smith U FerenczGermanyAnna Fali NEGOTIATION
Julie V DarakjyBrazilOnyama Limba NEGOTIATION
Mujtaba V DilliardBrazilXuxue Feng NEW
Stacey G SlusarskiFranceElwin Sharvill QUALIFIED
Arvin O InouyeFranceIoni Bowcher RENEWAL
Morrow O GauchoFranceStephen Shaw UNQUALIFIED
Leja I BriddickRussiaIoni Bowcher QUALIFIED
Aruna B WieserGermanyAmy Elsner PROPOSAL
Octavia J WaycottJapanAmy Elsner PROPOSAL
Wickens B GillianBrazilOnyama Limba NEW
Julie Y MaletItalyIoni Bowcher QUALIFIED
Ivar U FollerAustraliaAnna Fali RENEWAL
Ricardo H KuskoFranceXuxue Feng RENEWAL
Sinclair Q OstroskyItalyAsiya Javayant NEGOTIATION
Stacey L NickaJapanIvan Magalhaes QUALIFIED
Kadeem S PoquetteCanadaIoni Bowcher NEW
Smith W OldroydGermanyXuxue Feng PROPOSAL
Clifford Q ButtAustraliaIvan Magalhaes UNQUALIFIED
Arvin W GauchoSpainStephen Shaw PROPOSAL
Ricardo E IturbideGermanyBernardo Dominic UNQUALIFIED
Misaki R WaycottAustraliaOnyama Limba NEGOTIATION
Sinclair R BriddickBrazilXuxue Feng UNQUALIFIED
Izzy L SlusarskiJapanAnna Fali UNQUALIFIED
Leja U FlosiAustraliaAnna Fali NEGOTIATION
Stacey W GarufiFranceAmy Elsner UNQUALIFIED
Rodrigues I SaylorsGermanyAnna Fali UNQUALIFIED
Murillo M WhobreyBrazilXuxue Feng NEW
Izzy F DilliardAustraliaAsiya Javayant RENEWAL
Aika Z DilliardFranceAmy Elsner UNQUALIFIED
Johnson B InouyeSpainIvan Magalhaes NEW
Wickens E KuskoFranceAnna Fali RENEWAL
Aika M PaprockiArgentinaAnna Fali RENEWAL
Jeanfrancois S KuskoGermanyElwin Sharvill NEGOTIATION
Murillo V RimRussiaStephen Shaw QUALIFIED
Salvatore S CampainFranceBernardo Dominic NEW
Horizontal
NameCountryRepresentativeStatus
Antonio C MaletSpainIoni Bowcher UNQUALIFIED
Smith U FerenczAustraliaIoni Bowcher RENEWAL
Aruna X OstroskyItalyStephen Shaw QUALIFIED
Juan H SlusarskiCanadaOnyama Limba QUALIFIED
Mujtaba O VocelkaRussiaAnna Fali NEGOTIATION
Johnson O BologniaJapanElwin Sharvill RENEWAL
Emily L PaprockiCanadaAnna Fali NEW
Salvatore W MaletBrazilBernardo Dominic UNQUALIFIED
Ricardo J VenereAustraliaOnyama Limba RENEWAL
Jennifer P IturbideJapanAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya K InouyeUnited Kingdom2026-05-24Chanay, Jeffrey A Esq PROPOSAL44Asiya Javayant
1001Johnson E SlusarskiIndia2026-05-25Buckley Miller Wright NEW91Onyama Limba
1002Cody X WieserRussia2026-05-31Benton, John B Jr QUALIFIED17Asiya Javayant
1003Jeanfrancois Y PoquetteUnited Kingdom2026-05-13Rousseaux, Michael Esq UNQUALIFIED35Bernardo Dominic
1004Aditya W MacleadItaly2026-05-29Chemel, James L Cpa QUALIFIED58Bernardo Dominic
1005Mayumi E FollerArgentina2026-05-28Chanay, Jeffrey A Esq RENEWAL65Onyama Limba
1006Jones W SergiSpain2026-05-26Printing Dimensions PROPOSAL92Bernardo Dominic
1007Salvatore S PerinItaly2026-05-15Dorl, James J Esq NEW44Amy Elsner
1008Ricardo L OldroydAustralia2026-05-09Benton, John B Jr NEW42Onyama Limba
1009Jones U MorascaRussia2026-05-09Feltz Printing Service NEW19Elwin Sharvill
1010Jennifer O SergiJapan2026-05-14King, Christopher A Esq UNQUALIFIED86Ivan Magalhaes
1011Munro I NestleJapan2026-05-22Chemel, James L Cpa NEW9Stephen Shaw
1012Izzy M DoeJapan2026-05-15Commercial Press NEW66Xuxue Feng
1013Rodrigues E FigeroaBrazil2026-05-08Feltz Printing Service QUALIFIED39Ivan Magalhaes
1014Aruna K KolmetzCanada2026-05-27Truhlar And Truhlar Attys PROPOSAL39Elwin Sharvill
1015Munro E IturbideUnited Kingdom2026-05-23Dorl, James J Esq NEGOTIATION6Amy Elsner
1016Sinclair C FigeroaAustralia2026-05-12Rangoni Of Florence UNQUALIFIED28Ioni Bowcher
1017Rodrigues M SchemmerGermany2026-05-28Buckley Miller Wright NEW2Onyama Limba
1018Kadeem C FigeroaUnited Kingdom2026-05-22Morlong Associates NEGOTIATION82Elwin Sharvill
1019Ivar W MaletItaly2026-05-05Feiner Bros RENEWAL1Stephen Shaw
1020Arvin B SlusarskiUnited Kingdom2026-05-17Benton, John B Jr RENEWAL13Elwin Sharvill
1021Claire L WieserUnited Kingdom2026-05-08Feltz Printing Service RENEWAL11Ioni Bowcher
1022James F StockhamItaly2026-05-21Chanay, Jeffrey A Esq PROPOSAL13Anna Fali
1023Cody Y CaldareraRussia2026-06-01Rousseaux, Michael Esq RENEWAL54Elwin Sharvill
1024Jefferson Z VocelkaGermany2026-05-24Rangoni Of Florence NEW31Stephen Shaw
1025Wickens G AlbaresRussia2026-06-02Benton, John B Jr RENEWAL71Anna Fali
1026Faith J SchemmerUnited Kingdom2026-05-26Benton, John B Jr UNQUALIFIED92Bernardo Dominic
1027Ivar G CampainAustralia2026-05-06Morlong Associates UNQUALIFIED74Ivan Magalhaes
1028Sinclair Q CaudyCanada2026-05-15Buckley Miller Wright QUALIFIED43Amy Elsner
1029Aditya V IturbideRussia2026-05-10Rousseaux, Michael Esq NEW95Bernardo Dominic
1030Jennifer C FlosiFrance2026-05-29Rangoni Of Florence NEW56Anna Fali
1031Adams J RulapaughRussia2026-05-16King, Christopher A Esq PROPOSAL37Stephen Shaw
1032Arvin Z OstroskyItaly2026-05-27Chapman, Ross E Esq NEW2Stephen Shaw
1033Aika W CampainArgentina2026-05-28Chanay, Jeffrey A Esq NEW90Anna Fali
1034Cody C PerinGermany2026-05-21Chemel, James L Cpa UNQUALIFIED90Anna Fali
1035Smith Q StensethGermany2026-05-17Truhlar And Truhlar Attys NEGOTIATION56Amy Elsner
1036Mayumi A InouyeIndia2026-05-09Commercial Press NEW78Stephen Shaw
1037Greenwood B DilliardSpain2026-05-29Buckley Miller Wright NEW38Elwin Sharvill
1038Cody N ButtRussia2026-05-28Printing Dimensions NEGOTIATION16Elwin Sharvill
1039Cody D KolmetzItaly2026-05-22Dorl, James J Esq RENEWAL45Onyama Limba
1040Johnson M RutaIndia2026-05-17Printing Dimensions PROPOSAL66Onyama Limba
1041Leon Y WaycottAustralia2026-06-01Truhlar And Truhlar Attys NEGOTIATION12Ivan Magalhaes
1042Kadeem I PoquetteSpain2026-05-29Rousseaux, Michael Esq NEGOTIATION29Asiya Javayant
1043Jones B ShinkoUnited Kingdom2026-05-11Printing Dimensions NEW38Amy Elsner
1044Misaki Y FerenczSpain2026-05-24Buckley Miller Wright NEGOTIATION57Asiya Javayant
1045Kadeem V TollnerGermany2026-05-28Chanay, Jeffrey A Esq PROPOSAL49Asiya Javayant
1046Chavez K RulapaughSpain2026-05-26Commercial Press RENEWAL41Ioni Bowcher
1047Clifford O CaldareraRussia2026-05-24Printing Dimensions UNQUALIFIED64Bernardo Dominic
1048Aditya G CampainJapan2026-05-13Dorl, James J Esq NEGOTIATION47Stephen Shaw
1049Octavia J GauchoSpain2026-05-08Feiner Bros RENEWAL9Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Emily J RimUnited KingdomAnna Fali RENEWAL
Leon N DarakjyItalyXuxue Feng PROPOSAL
Salvatore I SlusarskiUnited KingdomElwin Sharvill QUALIFIED
Nicolas W MorascaUnited KingdomAsiya Javayant QUALIFIED
Salvatore A CaudyIndiaXuxue Feng RENEWAL
Salvatore H MaletSpainAmy Elsner PROPOSAL
Francesco Y DoeJapanOnyama Limba NEGOTIATION
Salvatore J CampainItalyIvan Magalhaes PROPOSAL
Aruna L DilliardFranceXuxue Feng PROPOSAL
Isabel T VocelkaGermanyBernardo Dominic QUALIFIED
Johnson X FigeroaSpainXuxue Feng NEW
Chavez V GillianItalyElwin Sharvill QUALIFIED
Smith Y RulapaughUnited KingdomBernardo Dominic UNQUALIFIED
Juan W FigeroaSpainAmy Elsner PROPOSAL
Johnson P CaldareraArgentinaOnyama Limba UNQUALIFIED
Claire N ChuiRussiaAnna Fali UNQUALIFIED
Clifford A ChuiSpainIoni Bowcher UNQUALIFIED
Murillo E RoysterArgentinaIoni Bowcher NEGOTIATION
Julie E FigeroaIndiaOnyama Limba QUALIFIED
Maisha L GarufiJapanElwin Sharvill PROPOSAL
Adams Z CaudyRussiaAsiya Javayant QUALIFIED
Kadeem R WhobreyItalyAnna Fali PROPOSAL
Adams I FerenczJapanXuxue Feng UNQUALIFIED
Clifford B InouyeUnited KingdomAnna Fali NEW
Maria U BriddickArgentinaIoni Bowcher NEGOTIATION
Francesco K DilliardCanadaAsiya Javayant UNQUALIFIED
David E MaletFranceStephen Shaw RENEWAL
Kadeem W SaylorsItalyIoni Bowcher NEW
Julie M WaycottAustraliaAnna Fali NEGOTIATION
Rodrigues M SchemmerArgentinaOnyama Limba RENEWAL
Misaki H OstroskyCanadaIvan Magalhaes PROPOSAL
Arvin R ChuiRussiaStephen Shaw NEW
Arvin W MarrierAustraliaStephen Shaw NEGOTIATION
Jefferson E ShinkoBrazilStephen Shaw UNQUALIFIED
Leja N FlosiBrazilAsiya Javayant UNQUALIFIED
Arvin S DarakjyJapanXuxue Feng PROPOSAL
Greenwood B BologniaGermanyAsiya Javayant QUALIFIED
Ivar I PaprockiBrazilStephen Shaw QUALIFIED
Emily I VenereAustraliaXuxue Feng NEGOTIATION
Salvatore C IturbideBrazilElwin Sharvill NEW
Costa D ShinkoItalyElwin Sharvill NEGOTIATION
Leon Z CaldareraCanadaIoni Bowcher UNQUALIFIED
Octavia O KolmetzFranceIoni Bowcher NEGOTIATION
Darci E WaycottRussiaXuxue Feng PROPOSAL
Julie N PoquetteJapanIoni Bowcher PROPOSAL
Ivar C WaycottJapanStephen Shaw RENEWAL
Claire C WhobreyIndiaAmy Elsner PROPOSAL
Ivar M FerenczRussiaAmy Elsner PROPOSAL
Octavia B RutaItalyIoni Bowcher RENEWAL
Nicolas N OstroskyArgentinaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Aika E Ferencz
Deepesh V Ostrosky
Morrow K Sergi
Smith W Ostrosky
Chavez U Iturbide
Rodrigues Y Bolognia
Costa Q Caldarera
Mujtaba X Butt
Octavia A Iturbide
Jones F Nestle
Greenwood Q Rim
Izzy G Dilliard
Clifford Y Poquette
Alejandro W Sergi
Chavez I Venere
Cody E Kolmetz
Julie D Ostrosky
Cody K Iturbide
Chavez I Rim
Jones M Chui
Munro H Garufi
Stacey J Whobrey
Sinclair F Glick
Adams P Chui
Mayumi U Briddick
Jefferson O Nicka
Cody M Sergi
Mujtaba R Stockham
Antonio V Perin
Jennifer Q Kusko
Izzy I Figeroa
James M Vocelka
Jeanfrancois V Rim
Murillo O Inouye
Faith G Glick
Aika W Foller
Deepesh I Vocelka
Ivar V Sergi
Darci Z Waycott
Nicolas K Doe
Aruna T Wieser
Jeanfrancois R Darakjy
Salvatore I Stenseth
Francesco U Butt
Antonio Y Malet
Greenwood U Royster
Chavez J Rulapaugh
Misaki O Rim
Octavia T Nestle
Julie T Amigon
IdCountryDate
1000Brazil2026-05-10
1001Canada2026-05-16
1002Germany2026-06-02
1003Italy2026-05-17
1004Canada2026-05-22
1005Australia2026-05-04
1006United Kingdom2026-05-04
1007Germany2026-06-02
1008India2026-05-18
1009India2026-05-23
1010Argentina2026-05-12
1011Spain2026-05-25
1012France2026-05-10
1013Germany2026-05-11
1014Japan2026-05-16
1015Japan2026-05-29
1016Germany2026-05-16
1017France2026-05-12
1018Canada2026-05-22
1019United Kingdom2026-05-26
1020Germany2026-05-17
1021Australia2026-05-31
1022Spain2026-05-25
1023France2026-05-09
1024France2026-06-02
1025Russia2026-05-07
1026Germany2026-05-21
1027Spain2026-05-15
1028Russia2026-05-21
1029France2026-05-21
1030Japan2026-06-02
1031Australia2026-05-16
1032Italy2026-05-27
1033Italy2026-05-11
1034Spain2026-05-10
1035Italy2026-05-06
1036France2026-05-17
1037United Kingdom2026-06-02
1038Argentina2026-05-26
1039Germany2026-05-17
1040India2026-05-23
1041United Kingdom2026-05-29
1042Brazil2026-05-27
1043Canada2026-05-14
1044Spain2026-05-16
1045Australia2026-05-09
1046France2026-05-24
1047Spain2026-05-28
1048Russia2026-05-21
1049Italy2026-05-12

On-Demand Data

NameIdCountryDate
Leon X Vocelka1000Japan2026-05-15
David Z Nestle1001United Kingdom2026-05-13
David S Wieser1002Italy2026-05-12
Chavez F Gaucho1003Russia2026-05-04
Murillo S Caudy1004Brazil2026-05-10
Jeanfrancois G Ostrosky1005Italy2026-05-15
Izzy H Campain1006Germany2026-05-30
Antonio B Garufi1007United Kingdom2026-05-15
Jefferson F Bowley1008Argentina2026-05-10
Greenwood Y Albares1009France2026-05-22
Izzy Y Bowley1010Argentina2026-05-20
Johnson O Kusko1011Germany2026-05-23
Johnson R Whobrey1012United Kingdom2026-05-14
David T Marrier1013Argentina2026-05-11
Julie X Ruta1014Argentina2026-05-10
Ashley Y Royster1015Germany2026-05-30
Wickens A Foller1016Argentina2026-05-23
Munro W Royster1017Argentina2026-05-09
Jones Z Briddick1018India2026-05-06
Morrow B Tollner1019Australia2026-05-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy R MaletCanadaStephen Shaw PROPOSAL
Misaki C MaletItalyAsiya Javayant RENEWAL
Faith F WhobreyItalyStephen Shaw PROPOSAL
Izzy B RimRussiaElwin Sharvill NEGOTIATION
Nicolas T OldroydBrazilElwin Sharvill NEGOTIATION
Stacey R GlickAustraliaAmy Elsner NEGOTIATION
Munro B MaletItalyBernardo Dominic NEW
Munro E BriddickCanadaIoni Bowcher PROPOSAL
Juan U ShinkoFranceIvan Magalhaes RENEWAL
Faith P ButtGermanyIoni Bowcher NEGOTIATION
Sinclair J BriddickBrazilAnna Fali UNQUALIFIED
Rodrigues V CampainUnited KingdomAsiya Javayant NEGOTIATION
Greenwood O MorascaUnited KingdomXuxue Feng UNQUALIFIED
Aruna L PerinArgentinaOnyama Limba QUALIFIED
Chavez M FlosiJapanAsiya Javayant RENEWAL
Leon V PoquetteJapanXuxue Feng RENEWAL
David S GlickFranceAmy Elsner NEGOTIATION
Munro Z FerenczArgentinaAsiya Javayant PROPOSAL
Ricardo W FlosiCanadaAmy Elsner RENEWAL
Johnson M DarakjyGermanyXuxue Feng UNQUALIFIED
Arvin B DoeRussiaIoni Bowcher PROPOSAL
Mujtaba I RulapaughItalyXuxue Feng QUALIFIED
Greenwood T VocelkaItalyIoni Bowcher QUALIFIED
Murillo Z WieserItalyOnyama Limba NEW
Sinclair D GauchoGermanyStephen Shaw PROPOSAL
Misaki M MaletSpainAsiya Javayant NEW
Ivar U RoysterUnited KingdomAmy Elsner NEGOTIATION
Alejandro L BriddickArgentinaBernardo Dominic NEW
Rodrigues N OstroskyUnited KingdomElwin Sharvill RENEWAL
Silvio G MaletAustraliaIvan Magalhaes NEW
Smith C PoquetteIndiaIoni Bowcher NEW
David V FlosiSpainStephen Shaw NEW
Smith K RoysterFranceAnna Fali UNQUALIFIED
Kaitlin S MacleadJapanAsiya Javayant NEW
Morrow O GlickCanadaIvan Magalhaes NEW
Ashley F IturbideBrazilElwin Sharvill QUALIFIED
Jefferson H PaprockiSpainIvan Magalhaes UNQUALIFIED
Aika C CaudyRussiaAsiya Javayant QUALIFIED
Ricardo I RutaUnited KingdomIoni Bowcher RENEWAL
Arvin E WhobreyJapanBernardo Dominic UNQUALIFIED

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