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
David U SlusarskiRussiaIvan Magalhaes NEGOTIATION
Wickens P ChuiItalyIoni Bowcher QUALIFIED
Kaitlin Y VocelkaJapanStephen Shaw RENEWAL
Jefferson J FigeroaCanadaAsiya Javayant NEGOTIATION
Silvio O MaletUnited KingdomAmy Elsner NEW
Francesco A CaudyUnited KingdomIoni Bowcher NEGOTIATION
David L WhobreyRussiaStephen Shaw NEW
Mayumi V OstroskyRussiaIvan Magalhaes NEW
Maisha J DilliardAustraliaAmy Elsner QUALIFIED
Adams D BowleyRussiaElwin Sharvill UNQUALIFIED
Sinclair H RulapaughRussiaAsiya Javayant NEW
Johnson R DilliardAustraliaElwin Sharvill NEW
Jennifer N MaletFranceStephen Shaw UNQUALIFIED
Claire E GarufiJapanAnna Fali UNQUALIFIED
Maria Z OstroskyJapanBernardo Dominic UNQUALIFIED
Chavez H SlusarskiBrazilStephen Shaw PROPOSAL
Jeanfrancois Q GillianJapanStephen Shaw RENEWAL
Mujtaba R FlosiSpainBernardo Dominic NEGOTIATION
Izzy D FollerSpainStephen Shaw QUALIFIED
Sinclair K OstroskyRussiaIoni Bowcher QUALIFIED
Claire N RulapaughRussiaIvan Magalhaes QUALIFIED
Wickens M FlosiCanadaElwin Sharvill NEW
Maisha Z PerinRussiaXuxue Feng QUALIFIED
Chavez G OldroydRussiaIoni Bowcher PROPOSAL
Stacey W KolmetzJapanAsiya Javayant RENEWAL
Leon U KolmetzArgentinaStephen Shaw RENEWAL
Silvio P RoysterUnited KingdomStephen Shaw NEGOTIATION
Claire K TollnerIndiaAnna Fali QUALIFIED
Faith O FollerAustraliaStephen Shaw PROPOSAL
Clifford T RulapaughAustraliaOnyama Limba RENEWAL
Clifford O BowleyItalyElwin Sharvill NEGOTIATION
Clifford M CaudyUnited KingdomElwin Sharvill UNQUALIFIED
Misaki V DoeBrazilAsiya Javayant UNQUALIFIED
Alejandro W CaudyIndiaXuxue Feng UNQUALIFIED
Clifford S SaylorsCanadaAsiya Javayant UNQUALIFIED
Smith K AmigonSpainStephen Shaw QUALIFIED
Ivar T PaprockiItalyAnna Fali RENEWAL
Maria U CaudyItalyAnna Fali QUALIFIED
Munro Y MaletGermanyOnyama Limba PROPOSAL
Leon M FollerJapanIvan Magalhaes QUALIFIED
Kadeem Y BologniaFranceXuxue Feng QUALIFIED
Nicolas I OldroydIndiaAnna Fali PROPOSAL
Izzy L KolmetzCanadaAmy Elsner NEW
Mayumi E GillianFranceXuxue Feng UNQUALIFIED
Kadeem N MorascaRussiaAmy Elsner UNQUALIFIED
Isabel F BologniaGermanyBernardo Dominic QUALIFIED
Johnson B PaprockiJapanElwin Sharvill RENEWAL
Francesco F OstroskyRussiaBernardo Dominic RENEWAL
Alejandro H FerenczItalyIoni Bowcher QUALIFIED
Alejandro C OstroskyFranceIvan Magalhaes UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kaitlin Z ShinkoSpainIvan Magalhaes NEGOTIATION
Isabel B DoeGermanyIoni Bowcher NEW
Mayumi S FlosiFranceIvan Magalhaes NEGOTIATION
Emily L SlusarskiJapanXuxue Feng RENEWAL
Johnson U WaycottFranceAmy Elsner RENEWAL
Murillo A BologniaJapanBernardo Dominic PROPOSAL
Tony G MaletBrazilAsiya Javayant NEGOTIATION
Deepesh Q KolmetzGermanyXuxue Feng UNQUALIFIED
Faith E PoquetteIndiaIoni Bowcher NEGOTIATION
David Q CaudyIndiaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James I RimCanada2026-04-12Benton, John B Jr PROPOSAL97Xuxue Feng
1001David I IturbideArgentina2026-05-02Chapman, Ross E Esq PROPOSAL49Onyama Limba
1002Deepesh H MarrierArgentina2026-05-04Dorl, James J Esq PROPOSAL84Anna Fali
1003Rodrigues A InouyeFrance2026-04-24Feltz Printing Service PROPOSAL27Onyama Limba
1004Maria F SergiAustralia2026-04-13Morlong Associates RENEWAL23Ioni Bowcher
1005Leja Z StockhamRussia2026-05-01King, Christopher A Esq QUALIFIED73Anna Fali
1006Aika S AmigonCanada2026-04-08Rangoni Of Florence RENEWAL64Onyama Limba
1007Alejandro N BologniaAustralia2026-04-10Feltz Printing Service PROPOSAL84Amy Elsner
1008Munro Z SlusarskiBrazil2026-04-17Feltz Printing Service NEW11Stephen Shaw
1009Francesco S ChuiArgentina2026-04-24Dorl, James J Esq PROPOSAL61Elwin Sharvill
1010Murillo R MorascaBrazil2026-04-16Feiner Bros NEGOTIATION5Onyama Limba
1011Darci Y CampainJapan2026-04-30Benton, John B Jr PROPOSAL32Bernardo Dominic
1012Emily Z GlickRussia2026-04-12Rangoni Of Florence RENEWAL77Stephen Shaw
1013Jeanfrancois K MaletFrance2026-04-06Dorl, James J Esq RENEWAL93Anna Fali
1014Tony N AlbaresRussia2026-05-04Buckley Miller Wright NEGOTIATION59Ivan Magalhaes
1015Stacey C PaprockiJapan2026-04-26Feiner Bros NEGOTIATION63Bernardo Dominic
1016Smith O SchemmerIndia2026-04-17Commercial Press PROPOSAL59Onyama Limba
1017Greenwood K BriddickFrance2026-04-28Truhlar And Truhlar Attys UNQUALIFIED5Bernardo Dominic
1018Maria A CampainBrazil2026-04-21Feltz Printing Service PROPOSAL24Stephen Shaw
1019James F NestleItaly2026-04-26King, Christopher A Esq QUALIFIED52Asiya Javayant
1020Claire F SaylorsAustralia2026-04-14Chapman, Ross E Esq RENEWAL9Amy Elsner
1021Salvatore F MaletIndia2026-04-15Feltz Printing Service NEW75Onyama Limba
1022Francesco N GarufiUnited Kingdom2026-04-20Printing Dimensions RENEWAL37Elwin Sharvill
1023Wickens H RimGermany2026-04-12Feiner Bros RENEWAL77Ivan Magalhaes
1024Leja H RutaItaly2026-04-15Chapman, Ross E Esq QUALIFIED49Anna Fali
1025Juan R NestleIndia2026-04-06Truhlar And Truhlar Attys PROPOSAL64Elwin Sharvill
1026Emily T NestleCanada2026-04-05Feiner Bros QUALIFIED96Stephen Shaw
1027Kadeem U RulapaughSpain2026-04-06Benton, John B Jr PROPOSAL23Stephen Shaw
1028Kaitlin L CampainRussia2026-04-16Chapman, Ross E Esq UNQUALIFIED64Stephen Shaw
1029Claire K WhobreyFrance2026-04-09Feltz Printing Service QUALIFIED57Amy Elsner
1030Salvatore G BowleyItaly2026-05-03Feiner Bros NEGOTIATION35Onyama Limba
1031Aditya M WaycottUnited Kingdom2026-04-19Printing Dimensions NEW49Onyama Limba
1032Aruna Z DilliardJapan2026-04-26Chemel, James L Cpa QUALIFIED38Stephen Shaw
1033Jennifer G BologniaIndia2026-04-15Chapman, Ross E Esq NEGOTIATION54Elwin Sharvill
1034Ashley D FigeroaItaly2026-04-09Printing Dimensions QUALIFIED8Onyama Limba
1035Clifford R BriddickGermany2026-04-11Buckley Miller Wright PROPOSAL95Ioni Bowcher
1036Jeanfrancois A MacleadAustralia2026-04-08Chanay, Jeffrey A Esq UNQUALIFIED85Stephen Shaw
1037Aditya J DoeFrance2026-05-01Rangoni Of Florence NEGOTIATION34Amy Elsner
1038Murillo G OldroydArgentina2026-04-13Chapman, Ross E Esq QUALIFIED83Amy Elsner
1039Deepesh C ButtSpain2026-04-26Chapman, Ross E Esq UNQUALIFIED14Asiya Javayant
1040Silvio M MaletSpain2026-04-24Printing Dimensions QUALIFIED89Amy Elsner
1041Mujtaba J IturbideBrazil2026-04-22Commercial Press QUALIFIED42Anna Fali
1042Johnson X IturbideUnited Kingdom2026-04-18Dorl, James J Esq PROPOSAL87Onyama Limba
1043Misaki M PaprockiRussia2026-04-20Rangoni Of Florence QUALIFIED83Stephen Shaw
1044Salvatore B KuskoGermany2026-04-15Feltz Printing Service UNQUALIFIED87Anna Fali
1045Johnson B BologniaRussia2026-04-24Morlong Associates RENEWAL89Asiya Javayant
1046Morrow E GillianUnited Kingdom2026-04-22King, Christopher A Esq NEW34Ioni Bowcher
1047Maisha X MaletFrance2026-04-16Printing Dimensions NEW91Bernardo Dominic
1048Jeanfrancois T SergiIndia2026-04-14Chanay, Jeffrey A Esq RENEWAL4Amy Elsner
1049James X CaudyGermany2026-04-28Feiner Bros UNQUALIFIED68Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Nicolas G IturbideFranceIvan Magalhaes QUALIFIED
Kadeem A FollerArgentinaAmy Elsner PROPOSAL
Mayumi Z PoquetteItalyOnyama Limba NEGOTIATION
Mujtaba L SergiArgentinaXuxue Feng QUALIFIED
Smith O OstroskyArgentinaAnna Fali QUALIFIED
Kaitlin U InouyeUnited KingdomStephen Shaw NEW
Octavia B VenereArgentinaIoni Bowcher PROPOSAL
Silvio W IturbideIndiaXuxue Feng UNQUALIFIED
Cody B TollnerArgentinaIvan Magalhaes PROPOSAL
Octavia U WhobreyJapanElwin Sharvill RENEWAL
Francesco F OstroskyUnited KingdomStephen Shaw PROPOSAL
Maria Q StensethUnited KingdomXuxue Feng NEGOTIATION
Ricardo S ShinkoItalyAmy Elsner NEW
Aruna R BowleyRussiaStephen Shaw NEW
Ricardo V MaletItalyElwin Sharvill QUALIFIED
Alejandro J GauchoArgentinaStephen Shaw UNQUALIFIED
Cody Y NickaFranceAmy Elsner NEW
Sinclair W GarufiJapanIvan Magalhaes QUALIFIED
Arvin O NickaSpainXuxue Feng RENEWAL
Claire V OldroydBrazilOnyama Limba NEW
Ricardo K ShinkoUnited KingdomOnyama Limba NEGOTIATION
Jones O BologniaGermanyIvan Magalhaes NEW
Cody C GlickFranceIvan Magalhaes NEGOTIATION
Ashley F InouyeItalyBernardo Dominic UNQUALIFIED
Aditya Y SergiItalyStephen Shaw RENEWAL
Izzy Y MaletGermanyAnna Fali PROPOSAL
Stacey N BriddickGermanyXuxue Feng QUALIFIED
Francesco F NestleItalyStephen Shaw NEW
Mujtaba K RulapaughBrazilAmy Elsner RENEWAL
Alejandro G BriddickSpainBernardo Dominic PROPOSAL
Mayumi G VenereRussiaAmy Elsner UNQUALIFIED
Isabel A WieserRussiaIoni Bowcher NEGOTIATION
Rodrigues Y OstroskyCanadaStephen Shaw PROPOSAL
Tony S AmigonSpainBernardo Dominic NEGOTIATION
Alejandro C StockhamSpainIoni Bowcher UNQUALIFIED
Leja B MaletSpainAnna Fali NEGOTIATION
Mujtaba Z VocelkaGermanyBernardo Dominic NEW
Mayumi O FigeroaItalyStephen Shaw NEGOTIATION
Cody D KuskoRussiaIoni Bowcher NEW
Juan C BologniaRussiaIvan Magalhaes NEGOTIATION
Costa H MarrierFranceIoni Bowcher UNQUALIFIED
Antonio Y FlosiIndiaIoni Bowcher QUALIFIED
Emily N AlbaresAustraliaOnyama Limba UNQUALIFIED
David T MaletBrazilElwin Sharvill UNQUALIFIED
Chavez Y RutaArgentinaElwin Sharvill NEW
Faith I OstroskyJapanXuxue Feng QUALIFIED
James K TollnerGermanyIvan Magalhaes PROPOSAL
Antonio I WhobreyUnited KingdomAmy Elsner UNQUALIFIED
Mayumi V PaprockiGermanyXuxue Feng NEW
Ivar A MorascaGermanyAnna Fali UNQUALIFIED
Frozen Columns
Name
Deepesh F Kusko
Kadeem Z Doe
Maisha P Campain
Murillo H Amigon
Octavia Z Inouye
James Z Stenseth
Faith G Malet
Silvio H Wieser
Chavez H Stenseth
Rodrigues B Dilliard
Morrow Q Oldroyd
Ashley A Doe
James U Wieser
Darci S Rulapaugh
Johnson E Kusko
Antonio F Stockham
Nicolas M Albares
David Z Saylors
Aditya V Marrier
Deepesh C Malet
Kaitlin V Briddick
Costa K Ostrosky
Salvatore O Vocelka
Wickens X Rulapaugh
Alejandro V Foller
Maria F Ostrosky
Jefferson O Bowley
Izzy Y Perin
Aruna I Nestle
Stacey R Perin
Claire E Vocelka
Faith Y Malet
David G Caudy
Jennifer P Kolmetz
Aika O Figeroa
Rodrigues X Marrier
Rodrigues L Waycott
Cody P Briddick
Leja W Butt
Jefferson I Campain
Murillo T Sergi
Mayumi B Garufi
Kaitlin E Whobrey
Aika V Caudy
David G Wieser
Mayumi Y Inouye
Arvin B Inouye
Emily G Garufi
Ivar H Bowley
Deepesh K Dilliard
IdCountryDate
1000Russia2026-05-01
1001Germany2026-04-27
1002Italy2026-04-28
1003Spain2026-04-07
1004India2026-04-29
1005Australia2026-04-08
1006Italy2026-05-01
1007Argentina2026-04-13
1008United Kingdom2026-04-12
1009Brazil2026-04-30
1010India2026-04-15
1011Spain2026-04-14
1012Spain2026-04-24
1013United Kingdom2026-04-23
1014France2026-05-01
1015Australia2026-04-07
1016Canada2026-04-19
1017Russia2026-04-16
1018France2026-04-14
1019Japan2026-04-20
1020Brazil2026-04-17
1021Canada2026-04-05
1022Brazil2026-04-11
1023Russia2026-04-12
1024Japan2026-04-17
1025United Kingdom2026-05-04
1026Japan2026-04-05
1027Italy2026-04-15
1028Japan2026-04-25
1029Canada2026-04-20
1030Japan2026-05-01
1031Italy2026-04-09
1032Russia2026-04-14
1033France2026-04-19
1034France2026-04-14
1035India2026-04-21
1036Italy2026-04-15
1037Brazil2026-04-26
1038Italy2026-04-30
1039Australia2026-04-08
1040Australia2026-05-04
1041Argentina2026-04-26
1042Russia2026-04-28
1043India2026-04-27
1044Canada2026-04-15
1045Australia2026-04-28
1046Australia2026-04-10
1047Spain2026-04-27
1048Australia2026-04-07
1049Spain2026-04-11

On-Demand Data

NameIdCountryDate
Misaki I Shinko1000Australia2026-04-29
James D Oldroyd1001France2026-04-25
Arvin Y Campain1002Argentina2026-04-09
Rodrigues W Amigon1003Japan2026-04-26
Nicolas O Slusarski1004Italy2026-04-20
Clifford K Caudy1005France2026-05-03
Greenwood C Paprocki1006Russia2026-04-18
Chavez F Nicka1007Germany2026-04-13
Leon W Nicka1008India2026-04-17
Emily P Glick1009Spain2026-04-18
Kadeem X Flosi1010Italy2026-04-23
Julie Z Doe1011Spain2026-04-22
Maisha A Caudy1012Argentina2026-04-29
Mujtaba A Rulapaugh1013Russia2026-04-29
Costa G Darakjy1014Spain2026-04-20
Jefferson P Paprocki1015Japan2026-04-13
Sinclair Q Marrier1016United Kingdom2026-04-20
Juan L Kolmetz1017Italy2026-04-13
Isabel W Tollner1018Japan2026-04-06
Aditya S Bolognia1019Italy2026-04-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar I FollerItalyStephen Shaw QUALIFIED
Misaki T VenereRussiaAnna Fali UNQUALIFIED
Darci I StockhamGermanyAnna Fali UNQUALIFIED
Aika S AlbaresJapanIoni Bowcher UNQUALIFIED
Juan K NickaIndiaAsiya Javayant NEW
Jennifer Q ButtIndiaElwin Sharvill NEW
Faith B BriddickBrazilStephen Shaw NEW
Greenwood B SchemmerGermanyAnna Fali QUALIFIED
Faith M VocelkaFranceXuxue Feng NEW
Octavia L RimRussiaAnna Fali UNQUALIFIED
Deepesh K RulapaughBrazilAnna Fali NEGOTIATION
Ivar O GillianArgentinaStephen Shaw NEGOTIATION
Julie B AlbaresSpainOnyama Limba RENEWAL
Faith D VenereCanadaBernardo Dominic UNQUALIFIED
Kadeem Y OstroskyAustraliaIvan Magalhaes NEW
Cody R ButtRussiaIoni Bowcher NEGOTIATION
Ashley I FlosiGermanyIoni Bowcher NEW
Arvin I PaprockiItalyXuxue Feng UNQUALIFIED
Kadeem W MacleadAustraliaElwin Sharvill QUALIFIED
Emily D MorascaGermanyAmy Elsner UNQUALIFIED
Faith G TollnerSpainBernardo Dominic UNQUALIFIED
Maria L SlusarskiArgentinaBernardo Dominic NEW
Cody W WhobreyFranceOnyama Limba QUALIFIED
Emily K GauchoFranceXuxue Feng PROPOSAL
Jefferson E GillianArgentinaOnyama Limba PROPOSAL
Julie Z KolmetzFranceBernardo Dominic NEGOTIATION
Murillo L PerinArgentinaXuxue Feng PROPOSAL
Juan Z StensethIndiaAmy Elsner RENEWAL
Kadeem B MaletGermanyBernardo Dominic NEW
Stacey G NestleItalyIoni Bowcher QUALIFIED
Octavia B FlosiUnited KingdomXuxue Feng QUALIFIED
Misaki X StockhamRussiaStephen Shaw QUALIFIED
Darci Z GlickArgentinaElwin Sharvill RENEWAL
Leja E ButtItalyXuxue Feng QUALIFIED
Octavia Q GauchoSpainIvan Magalhaes NEW
Jones P SaylorsAustraliaIoni Bowcher NEGOTIATION
Francesco Z WaycottGermanyStephen Shaw NEW
Kaitlin W WieserItalyAsiya Javayant NEGOTIATION
Faith E KuskoRussiaAsiya Javayant NEGOTIATION
Francesco L BowleyUnited KingdomAmy Elsner 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.