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 L SlusarskiRussiaAsiya Javayant QUALIFIED
Clifford Z FollerIndiaAmy Elsner QUALIFIED
Claire P SergiIndiaXuxue Feng NEGOTIATION
David Q RutaArgentinaBernardo Dominic UNQUALIFIED
Salvatore Y ShinkoFranceBernardo Dominic UNQUALIFIED
Stacey J RutaSpainXuxue Feng PROPOSAL
Mayumi R SaylorsAustraliaBernardo Dominic NEW
Emily H SlusarskiJapanOnyama Limba UNQUALIFIED
Ivar Y WaycottJapanAsiya Javayant NEW
Octavia Z DilliardFranceXuxue Feng QUALIFIED
David N WhobreyItalyAsiya Javayant QUALIFIED
Kaitlin N SergiSpainStephen Shaw NEW
Aruna D BriddickCanadaAsiya Javayant NEW
Antonio H AmigonBrazilOnyama Limba RENEWAL
Juan M SaylorsUnited KingdomXuxue Feng UNQUALIFIED
Arvin V WhobreyArgentinaOnyama Limba NEW
Silvio I MacleadGermanyOnyama Limba RENEWAL
Deepesh V DoeBrazilXuxue Feng NEW
Misaki K FollerGermanyAnna Fali PROPOSAL
Maisha N GarufiCanadaXuxue Feng RENEWAL
Emily J DoeJapanAnna Fali PROPOSAL
Ivar C WhobreyUnited KingdomIvan Magalhaes RENEWAL
Costa D ChuiIndiaAmy Elsner PROPOSAL
Salvatore O NickaArgentinaAnna Fali UNQUALIFIED
Izzy K DoeUnited KingdomIoni Bowcher PROPOSAL
Tony A DoeRussiaAmy Elsner NEGOTIATION
Sinclair O MacleadJapanAsiya Javayant RENEWAL
Izzy S ShinkoBrazilIvan Magalhaes PROPOSAL
Tony I CampainIndiaXuxue Feng QUALIFIED
Aruna O BriddickSpainBernardo Dominic NEGOTIATION
Salvatore U CaldareraCanadaAnna Fali QUALIFIED
Ivar R GarufiArgentinaAnna Fali NEGOTIATION
Octavia D RoysterSpainBernardo Dominic NEW
Ricardo E DarakjyGermanyIoni Bowcher RENEWAL
Ivar D GillianCanadaBernardo Dominic UNQUALIFIED
Julie Y RutaGermanyOnyama Limba PROPOSAL
Kadeem O RimIndiaBernardo Dominic UNQUALIFIED
Greenwood I ChuiArgentinaBernardo Dominic UNQUALIFIED
Antonio I PerinFranceOnyama Limba PROPOSAL
Kaitlin Z ShinkoFranceAnna Fali RENEWAL
Cody R MorascaCanadaXuxue Feng UNQUALIFIED
Julie A StockhamItalyIvan Magalhaes RENEWAL
Johnson L CaudyArgentinaIoni Bowcher RENEWAL
Misaki U AmigonJapanStephen Shaw NEGOTIATION
Tony H MarrierGermanyXuxue Feng RENEWAL
Leja U GarufiCanadaElwin Sharvill RENEWAL
Juan Z AlbaresRussiaAnna Fali NEW
Smith Z GarufiCanadaBernardo Dominic UNQUALIFIED
Misaki Q WhobreyCanadaAnna Fali UNQUALIFIED
Kadeem W GarufiSpainBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Wickens Q WieserCanadaBernardo Dominic RENEWAL
Arvin V RulapaughCanadaAmy Elsner NEGOTIATION
Smith U GlickCanadaAnna Fali NEGOTIATION
Salvatore D BowleyRussiaOnyama Limba QUALIFIED
Darci D WieserFranceIoni Bowcher NEGOTIATION
Francesco L RimArgentinaBernardo Dominic QUALIFIED
Smith Y FerenczFranceAnna Fali RENEWAL
Octavia Z ShinkoIndiaBernardo Dominic PROPOSAL
Stacey R CaldareraIndiaIvan Magalhaes QUALIFIED
Jones Z FollerArgentinaStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie A RulapaughJapan2026-06-09Rousseaux, Michael Esq UNQUALIFIED37Onyama Limba
1001Claire K BowleySpain2026-05-30Dorl, James J Esq QUALIFIED0Elwin Sharvill
1002Kaitlin Y CaudyArgentina2026-06-04Chemel, James L Cpa NEW18Onyama Limba
1003James B CaudyBrazil2026-06-01Rousseaux, Michael Esq NEW64Ioni Bowcher
1004Silvio U KuskoBrazil2026-05-31Benton, John B Jr RENEWAL31Onyama Limba
1005Rodrigues O FollerIndia2026-05-29Commercial Press UNQUALIFIED81Bernardo Dominic
1006Munro S StockhamArgentina2026-05-29Dorl, James J Esq QUALIFIED77Ioni Bowcher
1007Stacey J ButtJapan2026-05-25Feiner Bros RENEWAL36Ivan Magalhaes
1008Deepesh X KolmetzSpain2026-06-10Commercial Press PROPOSAL16Amy Elsner
1009Johnson A ChuiFrance2026-06-09Feiner Bros QUALIFIED95Onyama Limba
1010Rodrigues U GlickSpain2026-06-06Rousseaux, Michael Esq PROPOSAL31Xuxue Feng
1011Deepesh K SaylorsUnited Kingdom2026-06-17Chapman, Ross E Esq UNQUALIFIED51Elwin Sharvill
1012Costa D FollerGermany2026-05-30Chemel, James L Cpa RENEWAL99Amy Elsner
1013Jennifer Y ShinkoAustralia2026-06-12Dorl, James J Esq PROPOSAL42Ivan Magalhaes
1014Aruna Z StockhamItaly2026-06-17King, Christopher A Esq QUALIFIED11Elwin Sharvill
1015Clifford O SchemmerRussia2026-06-07Morlong Associates QUALIFIED77Amy Elsner
1016Jeanfrancois O DilliardFrance2026-06-12Printing Dimensions PROPOSAL21Stephen Shaw
1017Adams B RutaRussia2026-06-04Chemel, James L Cpa NEW78Ioni Bowcher
1018Alejandro U WhobreyGermany2026-05-23Rousseaux, Michael Esq QUALIFIED85Ioni Bowcher
1019Misaki B PaprockiItaly2026-06-15Feiner Bros NEW74Xuxue Feng
1020Silvio S CampainItaly2026-06-16Chemel, James L Cpa PROPOSAL0Ioni Bowcher
1021Arvin B WaycottArgentina2026-06-02Dorl, James J Esq PROPOSAL4Ivan Magalhaes
1022Darci D TollnerFrance2026-06-10Benton, John B Jr UNQUALIFIED17Amy Elsner
1023Mujtaba A IturbideFrance2026-06-05Morlong Associates QUALIFIED25Stephen Shaw
1024Ashley E RulapaughIndia2026-06-11Chapman, Ross E Esq NEGOTIATION14Ioni Bowcher
1025Munro J MaletJapan2026-06-12Truhlar And Truhlar Attys NEGOTIATION30Stephen Shaw
1026Ashley G RimGermany2026-06-08Truhlar And Truhlar Attys PROPOSAL24Xuxue Feng
1027Johnson W CaldareraCanada2026-06-13Rangoni Of Florence RENEWAL69Bernardo Dominic
1028Julie U SaylorsGermany2026-06-15Rangoni Of Florence NEGOTIATION10Amy Elsner
1029Chavez T FigeroaAustralia2026-06-16Commercial Press RENEWAL96Anna Fali
1030Mujtaba W FlosiSpain2026-06-12Commercial Press UNQUALIFIED68Amy Elsner
1031Greenwood C PoquetteFrance2026-05-29Dorl, James J Esq NEGOTIATION79Ivan Magalhaes
1032Sinclair I VocelkaItaly2026-05-22Rangoni Of Florence PROPOSAL82Ivan Magalhaes
1033Kaitlin N AlbaresArgentina2026-06-15King, Christopher A Esq NEW23Elwin Sharvill
1034Morrow Z NickaUnited Kingdom2026-06-16Feltz Printing Service PROPOSAL54Ivan Magalhaes
1035Johnson A MaletIndia2026-06-16Truhlar And Truhlar Attys RENEWAL72Anna Fali
1036Sinclair Z SaylorsRussia2026-06-01Chemel, James L Cpa QUALIFIED4Elwin Sharvill
1037Jennifer O InouyeCanada2026-06-08Buckley Miller Wright PROPOSAL58Xuxue Feng
1038Adams F DarakjyItaly2026-06-14Feltz Printing Service RENEWAL21Elwin Sharvill
1039Isabel W VocelkaArgentina2026-05-22Chapman, Ross E Esq PROPOSAL13Onyama Limba
1040Misaki J PoquetteArgentina2026-06-10Rangoni Of Florence RENEWAL74Anna Fali
1041Aditya R MorascaAustralia2026-06-07Truhlar And Truhlar Attys RENEWAL0Bernardo Dominic
1042Clifford U MaletJapan2026-05-26Rousseaux, Michael Esq UNQUALIFIED11Ioni Bowcher
1043Deepesh I FigeroaBrazil2026-06-20Benton, John B Jr NEW28Amy Elsner
1044Johnson V BowleyArgentina2026-06-19Chanay, Jeffrey A Esq RENEWAL76Elwin Sharvill
1045Stacey X KolmetzFrance2026-06-04Printing Dimensions UNQUALIFIED24Bernardo Dominic
1046Chavez P CampainUnited Kingdom2026-06-04Printing Dimensions PROPOSAL93Stephen Shaw
1047Aruna W OstroskyItaly2026-05-23Commercial Press RENEWAL76Bernardo Dominic
1048Aditya Y DilliardGermany2026-06-02Printing Dimensions QUALIFIED86Ivan Magalhaes
1049Salvatore J InouyeRussia2026-05-29Feiner Bros NEGOTIATION65Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Cody U GarufiFranceAnna Fali PROPOSAL
Jones Y PerinAustraliaIoni Bowcher QUALIFIED
Jefferson L BriddickItalyXuxue Feng UNQUALIFIED
Misaki L SergiFranceIoni Bowcher QUALIFIED
Maria J ButtSpainOnyama Limba RENEWAL
Clifford S ShinkoSpainXuxue Feng UNQUALIFIED
Mujtaba P WieserFranceAsiya Javayant UNQUALIFIED
Octavia C MarrierBrazilAnna Fali PROPOSAL
Octavia L MarrierSpainStephen Shaw PROPOSAL
Jennifer M GarufiItalyAnna Fali NEW
Rodrigues U WieserArgentinaAnna Fali UNQUALIFIED
Adams P SchemmerUnited KingdomAsiya Javayant QUALIFIED
Misaki X DoeArgentinaOnyama Limba PROPOSAL
Kadeem K ShinkoIndiaStephen Shaw PROPOSAL
Smith A PoquetteGermanyIvan Magalhaes UNQUALIFIED
Misaki M FigeroaAustraliaAsiya Javayant UNQUALIFIED
Misaki A SaylorsJapanXuxue Feng QUALIFIED
Sinclair O VocelkaArgentinaAmy Elsner NEGOTIATION
Costa O RimJapanIvan Magalhaes QUALIFIED
Faith P RutaGermanyAsiya Javayant PROPOSAL
Sinclair Z NickaItalyIvan Magalhaes UNQUALIFIED
Julie U KolmetzGermanyXuxue Feng QUALIFIED
Maisha C BowleySpainBernardo Dominic RENEWAL
Jennifer J FollerUnited KingdomXuxue Feng QUALIFIED
Francesco U FollerItalyAsiya Javayant QUALIFIED
Silvio M IturbideRussiaBernardo Dominic PROPOSAL
Jennifer V MorascaGermanyAmy Elsner NEW
Murillo V FollerSpainElwin Sharvill QUALIFIED
James Q StensethCanadaIoni Bowcher NEGOTIATION
Jeanfrancois A AmigonAustraliaAmy Elsner PROPOSAL
Rodrigues X NickaAustraliaBernardo Dominic UNQUALIFIED
Sinclair E SergiAustraliaBernardo Dominic UNQUALIFIED
James J KolmetzSpainIvan Magalhaes NEGOTIATION
Clifford G GauchoUnited KingdomAmy Elsner RENEWAL
Clifford E NestleGermanyStephen Shaw QUALIFIED
Murillo B TollnerItalyXuxue Feng RENEWAL
Claire U KolmetzJapanElwin Sharvill NEW
Maisha F CampainGermanyIvan Magalhaes PROPOSAL
Clifford L RutaFranceAnna Fali PROPOSAL
Silvio B KolmetzCanadaIoni Bowcher PROPOSAL
Sinclair U SlusarskiAustraliaOnyama Limba RENEWAL
Chavez A AmigonRussiaStephen Shaw UNQUALIFIED
David B AmigonItalyBernardo Dominic RENEWAL
Leon P DilliardCanadaOnyama Limba QUALIFIED
Claire M FerenczFranceAnna Fali UNQUALIFIED
Silvio G FollerIndiaAnna Fali PROPOSAL
David E RoysterAustraliaBernardo Dominic NEGOTIATION
Nicolas V NickaIndiaOnyama Limba RENEWAL
Maria X WieserIndiaXuxue Feng PROPOSAL
Izzy C SchemmerJapanAnna Fali NEW
Frozen Columns
Name
Jones B Morasca
Leon S Paprocki
Sinclair O Oldroyd
Ashley N Doe
Murillo J Glick
Aditya J Perin
Jefferson R Rim
Leon G Schemmer
Sinclair M Stockham
Wickens M Kusko
Adams K Stenseth
Morrow K Doe
Aditya T Marrier
Nicolas W Caldarera
Mayumi C Oldroyd
Deepesh H Saylors
Rodrigues C Malet
Maria Z Bolognia
Ashley M Waycott
Leja P Saylors
David U Schemmer
Isabel Q Figeroa
Ashley O Garufi
Deepesh T Briddick
Jeanfrancois U Ferencz
David R Bowley
Stacey N Malet
Salvatore J Slusarski
Tony L Saylors
James L Poquette
Julie G Kusko
Deepesh Q Ferencz
Clifford S Perin
Alejandro N Figeroa
Leja N Ruta
Jones N Gaucho
Smith E Campain
Arvin T Sergi
Arvin C Paprocki
Isabel T Campain
Leja Z Amigon
Munro E Marrier
Julie I Morasca
Misaki E Doe
Emily N Marrier
Darci I Nestle
Mayumi P Paprocki
Smith P Caudy
Maisha K Bolognia
Alejandro W Vocelka
IdCountryDate
1000United Kingdom2026-05-23
1001France2026-06-19
1002Russia2026-06-20
1003Spain2026-05-30
1004Spain2026-05-24
1005Italy2026-06-14
1006Argentina2026-06-17
1007Brazil2026-06-09
1008Spain2026-06-01
1009Argentina2026-06-17
1010France2026-06-14
1011India2026-06-03
1012France2026-05-26
1013Russia2026-05-30
1014India2026-06-20
1015Spain2026-06-02
1016Germany2026-06-13
1017Germany2026-06-01
1018Japan2026-06-08
1019Russia2026-05-23
1020Russia2026-05-26
1021Australia2026-06-01
1022Germany2026-05-26
1023Brazil2026-06-17
1024India2026-06-08
1025Italy2026-06-18
1026Japan2026-06-08
1027Spain2026-06-18
1028United Kingdom2026-05-26
1029Australia2026-06-17
1030Spain2026-05-25
1031France2026-06-19
1032France2026-06-15
1033Italy2026-06-08
1034Canada2026-06-11
1035Germany2026-06-19
1036Russia2026-05-28
1037Russia2026-06-16
1038Germany2026-06-18
1039India2026-06-11
1040United Kingdom2026-05-27
1041Spain2026-06-15
1042Japan2026-06-06
1043Japan2026-05-25
1044India2026-05-22
1045Australia2026-06-17
1046United Kingdom2026-06-04
1047Spain2026-06-10
1048Argentina2026-06-06
1049Canada2026-06-08

On-Demand Data

NameIdCountryDate
Ricardo T Glick1000Spain2026-05-27
Leja W Nicka1001Germany2026-06-14
Octavia X Tollner1002France2026-06-01
Jeanfrancois C Ostrosky1003Argentina2026-06-17
Munro K Gaucho1004Japan2026-05-29
Antonio V Schemmer1005Spain2026-05-24
Chavez T Venere1006Argentina2026-05-29
Darci G Whobrey1007Japan2026-06-17
Faith K Ruta1008India2026-06-06
Sinclair Y Caldarera1009India2026-06-16
Alejandro Z Nestle1010Italy2026-05-22
Morrow P Marrier1011Argentina2026-06-19
Julie Z Nicka1012Brazil2026-06-02
Mayumi Q Poquette1013France2026-06-07
Alejandro M Vocelka1014Japan2026-06-01
Jennifer K Rulapaugh1015Russia2026-05-22
Aruna O Marrier1016Italy2026-06-05
Maria G Rulapaugh1017Brazil2026-06-09
Kaitlin T Perin1018Russia2026-05-30
David Y Saylors1019India2026-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio S NestleGermanyBernardo Dominic NEGOTIATION
Misaki A PerinIndiaAnna Fali RENEWAL
Jennifer I PoquetteUnited KingdomAnna Fali NEW
Smith U MaletIndiaStephen Shaw RENEWAL
Octavia H CampainArgentinaIoni Bowcher NEW
Ashley M OstroskyGermanyAmy Elsner UNQUALIFIED
Leja K AlbaresJapanElwin Sharvill NEGOTIATION
Arvin N FlosiUnited KingdomOnyama Limba UNQUALIFIED
Wickens M GarufiGermanyAnna Fali NEW
Alejandro V VocelkaBrazilBernardo Dominic NEGOTIATION
Johnson V PoquetteFranceAsiya Javayant QUALIFIED
Alejandro S MaletFranceElwin Sharvill PROPOSAL
Stacey J NestleAustraliaIoni Bowcher NEW
Cody Y TollnerArgentinaAsiya Javayant PROPOSAL
Julie H SchemmerUnited KingdomAsiya Javayant UNQUALIFIED
Greenwood G VocelkaItalyElwin Sharvill QUALIFIED
Deepesh G KuskoAustraliaAnna Fali UNQUALIFIED
Morrow V WhobreyItalyOnyama Limba RENEWAL
Kaitlin I DarakjyFranceElwin Sharvill RENEWAL
Smith T FollerGermanyAmy Elsner RENEWAL
Mayumi R WhobreyIndiaAnna Fali NEGOTIATION
Johnson Q TollnerUnited KingdomAnna Fali RENEWAL
Johnson U NestleArgentinaBernardo Dominic QUALIFIED
Cody D MarrierJapanAmy Elsner NEW
Jones E MacleadCanadaElwin Sharvill NEGOTIATION
Kaitlin B InouyeIndiaXuxue Feng NEGOTIATION
Ashley Y StockhamCanadaStephen Shaw NEGOTIATION
Izzy G KuskoSpainIoni Bowcher UNQUALIFIED
Greenwood D VocelkaSpainAmy Elsner UNQUALIFIED
Tony Z OstroskyItalyAsiya Javayant PROPOSAL
Aika W SlusarskiUnited KingdomElwin Sharvill NEGOTIATION
Costa W InouyeAustraliaOnyama Limba QUALIFIED
Octavia R OldroydGermanyElwin Sharvill QUALIFIED
Silvio H DilliardArgentinaOnyama Limba PROPOSAL
Leon U ChuiIndiaElwin Sharvill RENEWAL
Francesco M FollerJapanAmy Elsner PROPOSAL
Mayumi Q GlickSpainBernardo Dominic NEGOTIATION
Nicolas O GarufiArgentinaOnyama Limba PROPOSAL
Izzy Q VocelkaCanadaIvan Magalhaes NEW
Kadeem X ButtGermanyStephen Shaw 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.