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
Aditya G GlickIndiaBernardo Dominic UNQUALIFIED
Jefferson Y WieserItalyAsiya Javayant PROPOSAL
Octavia R FlosiCanadaAmy Elsner UNQUALIFIED
Leon X FollerSpainIoni Bowcher UNQUALIFIED
Aditya Y SlusarskiGermanyStephen Shaw PROPOSAL
Claire A CaudyAustraliaStephen Shaw UNQUALIFIED
Aika B PaprockiJapanOnyama Limba PROPOSAL
Ivar J KuskoIndiaStephen Shaw RENEWAL
Johnson D CaldareraFranceAmy Elsner QUALIFIED
Faith S WieserIndiaAsiya Javayant PROPOSAL
Aditya X KolmetzGermanyAsiya Javayant NEW
Jennifer G InouyeSpainXuxue Feng NEGOTIATION
David P FlosiUnited KingdomIoni Bowcher NEW
Chavez T MacleadArgentinaAsiya Javayant PROPOSAL
Darci S MacleadBrazilAnna Fali RENEWAL
Cody P WhobreyJapanAnna Fali PROPOSAL
Leja C AlbaresIndiaElwin Sharvill QUALIFIED
Darci V GarufiArgentinaXuxue Feng UNQUALIFIED
Faith I FigeroaItalyBernardo Dominic NEW
Mayumi B DarakjyBrazilIoni Bowcher NEGOTIATION
Salvatore G AlbaresUnited KingdomAsiya Javayant PROPOSAL
Aruna U OstroskySpainStephen Shaw UNQUALIFIED
Misaki O BriddickBrazilIoni Bowcher UNQUALIFIED
Leon M DoeSpainOnyama Limba RENEWAL
Aruna R VenereCanadaXuxue Feng QUALIFIED
Kadeem L MaletAustraliaIvan Magalhaes QUALIFIED
Tony V NestleIndiaOnyama Limba NEW
Aruna P SlusarskiArgentinaAmy Elsner NEW
David M KolmetzFranceIvan Magalhaes NEW
Julie J ShinkoGermanyStephen Shaw QUALIFIED
Maria U RutaItalyAnna Fali RENEWAL
Cody C RutaSpainAnna Fali NEGOTIATION
Octavia K PoquetteJapanStephen Shaw NEW
Ashley J DoeUnited KingdomElwin Sharvill PROPOSAL
Costa R SaylorsUnited KingdomAmy Elsner NEW
Clifford T GlickGermanyAmy Elsner QUALIFIED
Morrow S TollnerFranceXuxue Feng PROPOSAL
Arvin W FigeroaBrazilAsiya Javayant NEW
Misaki P SergiGermanyAmy Elsner NEW
Mujtaba D PerinGermanyBernardo Dominic NEGOTIATION
Tony G CaldareraArgentinaAmy Elsner NEW
Jefferson H SaylorsFranceAnna Fali QUALIFIED
Jefferson W CampainArgentinaStephen Shaw UNQUALIFIED
Deepesh V GarufiItalyAsiya Javayant NEW
Aditya E KolmetzArgentinaOnyama Limba RENEWAL
Nicolas E RutaArgentinaAsiya Javayant NEGOTIATION
Antonio U PoquetteItalyIvan Magalhaes NEW
Adams O CaldareraBrazilOnyama Limba RENEWAL
Chavez B MorascaItalyElwin Sharvill QUALIFIED
Costa F CampainJapanStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco Z DilliardFranceIoni Bowcher QUALIFIED
Adams V BriddickIndiaOnyama Limba UNQUALIFIED
Kaitlin S OstroskyGermanyStephen Shaw UNQUALIFIED
Leon Y MaletGermanyAsiya Javayant NEGOTIATION
Deepesh D RulapaughGermanyXuxue Feng PROPOSAL
Kadeem C ShinkoArgentinaAsiya Javayant NEW
Wickens X OstroskyItalyBernardo Dominic RENEWAL
Greenwood A ButtItalyIoni Bowcher NEGOTIATION
Maisha V FerenczArgentinaBernardo Dominic QUALIFIED
Deepesh R WhobreyIndiaAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie Z StockhamIndia2026-05-14King, Christopher A Esq RENEWAL36Ivan Magalhaes
1001Emily E MaletSpain2026-06-01Truhlar And Truhlar Attys NEGOTIATION85Xuxue Feng
1002Jones H MarrierAustralia2026-06-02Chemel, James L Cpa PROPOSAL50Elwin Sharvill
1003Morrow V AlbaresRussia2026-05-29Benton, John B Jr NEW10Bernardo Dominic
1004Maisha I DoeRussia2026-05-22Dorl, James J Esq PROPOSAL31Amy Elsner
1005Cody L OldroydAustralia2026-06-05Morlong Associates NEW28Elwin Sharvill
1006Rodrigues N GlickItaly2026-06-03Feltz Printing Service NEGOTIATION97Anna Fali
1007Wickens K PaprockiGermany2026-06-07Commercial Press NEGOTIATION89Asiya Javayant
1008Mayumi J SchemmerBrazil2026-05-22Commercial Press RENEWAL5Amy Elsner
1009James L SlusarskiUnited Kingdom2026-05-29Morlong Associates PROPOSAL36Stephen Shaw
1010Francesco K StensethAustralia2026-05-22Feltz Printing Service PROPOSAL32Anna Fali
1011Tony J MorascaIndia2026-05-19Feltz Printing Service PROPOSAL44Amy Elsner
1012Leja N MorascaRussia2026-06-03Morlong Associates NEGOTIATION52Ioni Bowcher
1013Kaitlin K CaudyCanada2026-05-18Commercial Press NEGOTIATION96Amy Elsner
1014Mayumi L CampainItaly2026-06-03Morlong Associates NEW14Anna Fali
1015Leja J RimBrazil2026-05-24Morlong Associates QUALIFIED29Ioni Bowcher
1016Misaki R BriddickGermany2026-05-24Benton, John B Jr NEGOTIATION22Ioni Bowcher
1017Costa B SaylorsJapan2026-05-27Buckley Miller Wright NEW63Amy Elsner
1018Juan F BologniaSpain2026-05-18Chanay, Jeffrey A Esq NEW95Xuxue Feng
1019Greenwood T BologniaUnited Kingdom2026-05-24Feltz Printing Service NEGOTIATION61Xuxue Feng
1020Antonio J FlosiRussia2026-06-01Dorl, James J Esq QUALIFIED1Bernardo Dominic
1021Faith Y VocelkaJapan2026-05-13Feiner Bros QUALIFIED24Onyama Limba
1022David D BowleyUnited Kingdom2026-05-26Commercial Press UNQUALIFIED63Asiya Javayant
1023Claire T TollnerItaly2026-06-01Dorl, James J Esq RENEWAL15Bernardo Dominic
1024Nicolas A MaletAustralia2026-06-05Feiner Bros NEW60Stephen Shaw
1025Clifford Q RulapaughBrazil2026-06-02Chanay, Jeffrey A Esq NEGOTIATION26Xuxue Feng
1026Maisha N SchemmerItaly2026-06-07Printing Dimensions QUALIFIED94Bernardo Dominic
1027Jennifer Z MaletArgentina2026-05-31King, Christopher A Esq NEW56Xuxue Feng
1028Rodrigues U FerenczJapan2026-05-24King, Christopher A Esq UNQUALIFIED5Anna Fali
1029Leja N BowleyUnited Kingdom2026-06-09Rousseaux, Michael Esq NEW16Xuxue Feng
1030Johnson H BriddickGermany2026-05-27Chemel, James L Cpa PROPOSAL84Anna Fali
1031Ashley U BriddickArgentina2026-05-28Truhlar And Truhlar Attys PROPOSAL15Asiya Javayant
1032Mujtaba J BriddickRussia2026-05-26Dorl, James J Esq PROPOSAL19Ioni Bowcher
1033Morrow U ChuiAustralia2026-05-18Buckley Miller Wright RENEWAL58Bernardo Dominic
1034Adams N DilliardAustralia2026-06-08Morlong Associates NEGOTIATION11Asiya Javayant
1035Kadeem S WaycottBrazil2026-05-22Chemel, James L Cpa QUALIFIED45Stephen Shaw
1036Misaki W PoquetteUnited Kingdom2026-05-29Truhlar And Truhlar Attys UNQUALIFIED96Asiya Javayant
1037Rodrigues C RimRussia2026-05-25Buckley Miller Wright NEGOTIATION96Onyama Limba
1038Munro Y PoquetteBrazil2026-06-02King, Christopher A Esq QUALIFIED80Bernardo Dominic
1039Rodrigues F DarakjyCanada2026-05-25Truhlar And Truhlar Attys PROPOSAL76Bernardo Dominic
1040Sinclair Z VenereGermany2026-05-22Chapman, Ross E Esq NEW98Elwin Sharvill
1041Darci E KolmetzArgentina2026-06-03Buckley Miller Wright NEW46Stephen Shaw
1042Mujtaba S VenereRussia2026-05-11Benton, John B Jr PROPOSAL30Xuxue Feng
1043Maria N RutaJapan2026-05-12Commercial Press PROPOSAL91Asiya Javayant
1044Smith B FigeroaCanada2026-05-26Dorl, James J Esq PROPOSAL30Onyama Limba
1045Jennifer C ShinkoItaly2026-05-16Truhlar And Truhlar Attys PROPOSAL76Xuxue Feng
1046Sinclair G TollnerBrazil2026-05-31Buckley Miller Wright PROPOSAL94Xuxue Feng
1047Maisha F SchemmerAustralia2026-05-29Benton, John B Jr UNQUALIFIED35Stephen Shaw
1048Deepesh V RutaRussia2026-06-09Chanay, Jeffrey A Esq UNQUALIFIED76Onyama Limba
1049Maisha K MaletItaly2026-05-18Truhlar And Truhlar Attys PROPOSAL14Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Aika Y FollerUnited KingdomOnyama Limba NEGOTIATION
Nicolas Y OstroskySpainXuxue Feng NEGOTIATION
Mujtaba E SchemmerFranceBernardo Dominic UNQUALIFIED
Wickens Z PerinAustraliaAnna Fali RENEWAL
Alejandro U WieserUnited KingdomAmy Elsner NEW
Antonio D BowleySpainAmy Elsner PROPOSAL
Ivar O RulapaughJapanOnyama Limba QUALIFIED
Octavia O FigeroaItalyBernardo Dominic QUALIFIED
Aruna M GarufiFranceOnyama Limba UNQUALIFIED
Maria L RutaCanadaStephen Shaw RENEWAL
Aika I MacleadArgentinaAsiya Javayant PROPOSAL
Ashley S VenereFranceBernardo Dominic UNQUALIFIED
Claire K RulapaughUnited KingdomAmy Elsner RENEWAL
Jones A BologniaRussiaAnna Fali RENEWAL
Morrow I ButtAustraliaStephen Shaw UNQUALIFIED
Maria M SergiGermanyOnyama Limba RENEWAL
Leja F ChuiItalyAmy Elsner RENEWAL
Claire G GillianBrazilAmy Elsner UNQUALIFIED
Munro N BowleyGermanyAsiya Javayant NEW
Jefferson L FollerFranceIvan Magalhaes QUALIFIED
Kaitlin A GarufiItalyBernardo Dominic RENEWAL
Mujtaba T MaletUnited KingdomAsiya Javayant PROPOSAL
Claire J MorascaFranceAnna Fali NEGOTIATION
Aika I VenereFranceElwin Sharvill QUALIFIED
Alejandro U WieserUnited KingdomOnyama Limba NEW
Mayumi F GlickSpainAnna Fali UNQUALIFIED
Chavez H RoysterItalyOnyama Limba NEW
Kaitlin I GauchoSpainAsiya Javayant QUALIFIED
Clifford R GillianBrazilXuxue Feng NEGOTIATION
Murillo X MaletRussiaIoni Bowcher UNQUALIFIED
Stacey W TollnerJapanIoni Bowcher QUALIFIED
Aruna L FerenczCanadaStephen Shaw RENEWAL
Morrow D ButtAustraliaOnyama Limba UNQUALIFIED
Aika G KuskoSpainAmy Elsner RENEWAL
Wickens J MacleadCanadaAsiya Javayant NEW
Maria F DilliardArgentinaXuxue Feng NEW
Faith Y IturbideSpainBernardo Dominic QUALIFIED
Stacey F CampainItalyAsiya Javayant PROPOSAL
Tony W MacleadItalyOnyama Limba NEGOTIATION
Aruna Q SergiIndiaBernardo Dominic UNQUALIFIED
Salvatore A GarufiFranceBernardo Dominic QUALIFIED
Costa F StensethFranceStephen Shaw UNQUALIFIED
Nicolas Q TollnerCanadaBernardo Dominic QUALIFIED
Arvin H OstroskyAustraliaOnyama Limba NEW
Chavez E ChuiIndiaIoni Bowcher QUALIFIED
Rodrigues G RulapaughItalyOnyama Limba PROPOSAL
Jennifer P StockhamJapanIvan Magalhaes NEW
Wickens C InouyeCanadaElwin Sharvill NEGOTIATION
Cody W GarufiRussiaStephen Shaw QUALIFIED
Juan U ChuiArgentinaIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Sinclair G Nicka
Deepesh N Gillian
Wickens U Waycott
Nicolas J Schemmer
Jennifer F Ostrosky
Aditya J Oldroyd
Emily R Nicka
Silvio P Bowley
Sinclair N Whobrey
Julie V Dilliard
Morrow O Slusarski
Ashley G Amigon
Maisha H Malet
Jeanfrancois O Nicka
Emily P Rulapaugh
Izzy F Bolognia
Deepesh H Slusarski
Ivar V Chui
Silvio Y Venere
Costa I Bolognia
Aditya G Ferencz
Octavia J Shinko
Izzy K Malet
Murillo T Schemmer
Munro G Chui
Leon F Malet
Ricardo H Waycott
Nicolas N Campain
Aditya I Caudy
Claire E Iturbide
Juan D Vocelka
Salvatore Z Gillian
Maria F Ruta
Aditya E Ferencz
Adams E Glick
Arvin G Oldroyd
Greenwood Q Rulapaugh
James S Darakjy
Jones F Briddick
Ricardo W Foller
Francesco V Marrier
Maisha A Royster
Stacey U Doe
Ivar F Gaucho
Izzy M Foller
Jefferson D Vocelka
Francesco O Ostrosky
Smith U Morasca
Misaki V Bowley
Salvatore C Figeroa
IdCountryDate
1000France2026-05-17
1001Russia2026-05-30
1002Brazil2026-05-20
1003Italy2026-05-12
1004Japan2026-05-27
1005India2026-05-18
1006Russia2026-05-23
1007Japan2026-05-15
1008India2026-05-25
1009Russia2026-05-16
1010Brazil2026-05-30
1011Argentina2026-06-03
1012Brazil2026-06-03
1013Spain2026-05-16
1014Argentina2026-05-19
1015India2026-06-02
1016Canada2026-05-11
1017India2026-05-28
1018United Kingdom2026-05-11
1019France2026-05-19
1020Germany2026-05-21
1021France2026-06-06
1022Japan2026-05-15
1023Russia2026-05-28
1024United Kingdom2026-05-18
1025Germany2026-05-30
1026India2026-05-28
1027Russia2026-05-13
1028Italy2026-06-02
1029United Kingdom2026-05-17
1030Japan2026-05-15
1031Australia2026-05-30
1032Germany2026-06-02
1033United Kingdom2026-05-25
1034India2026-06-01
1035Canada2026-06-01
1036Argentina2026-05-20
1037Canada2026-05-31
1038India2026-06-09
1039Australia2026-05-25
1040Brazil2026-05-25
1041France2026-06-04
1042Canada2026-05-12
1043France2026-05-20
1044Australia2026-05-29
1045Japan2026-05-31
1046Japan2026-05-15
1047India2026-06-04
1048Australia2026-05-16
1049Australia2026-05-11

On-Demand Data

NameIdCountryDate
Costa U Amigon1000India2026-05-22
Morrow B Bowley1001Russia2026-05-21
Darci S Wieser1002India2026-06-08
Wickens M Nestle1003Germany2026-05-16
Francesco V Malet1004Brazil2026-06-06
Jennifer U Saylors1005Japan2026-05-17
Jeanfrancois Y Nicka1006France2026-06-06
Ricardo T Gaucho1007United Kingdom2026-06-08
Greenwood R Stenseth1008Japan2026-05-30
Misaki P Butt1009Canada2026-05-21
Murillo X Caldarera1010France2026-06-05
Juan T Oldroyd1011Italy2026-05-19
Aruna B Gaucho1012Brazil2026-06-08
Darci Y Royster1013Germany2026-06-04
Ashley C Venere1014United Kingdom2026-05-21
Smith J Royster1015Brazil2026-06-04
Juan U Garufi1016France2026-06-08
Leja H Poquette1017Canada2026-06-01
Clifford J Nestle1018United Kingdom2026-05-26
Kadeem X Caudy1019United Kingdom2026-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez F RulapaughJapanElwin Sharvill RENEWAL
Adams P WieserIndiaIoni Bowcher UNQUALIFIED
Aruna L WaycottGermanyXuxue Feng RENEWAL
Ricardo X DilliardItalyXuxue Feng PROPOSAL
Greenwood X MarrierFranceAmy Elsner UNQUALIFIED
Mayumi C RutaSpainAmy Elsner UNQUALIFIED
Aruna O RoysterRussiaIvan Magalhaes RENEWAL
Mayumi X MorascaUnited KingdomStephen Shaw PROPOSAL
Darci Y RutaCanadaBernardo Dominic NEGOTIATION
Costa Y BologniaIndiaBernardo Dominic NEGOTIATION
Mujtaba D CampainGermanyAmy Elsner PROPOSAL
Tony S RimCanadaStephen Shaw NEW
James F BriddickCanadaIvan Magalhaes QUALIFIED
Francesco J RoysterGermanyAmy Elsner RENEWAL
David R PaprockiAustraliaXuxue Feng NEW
Maria F OstroskyRussiaIoni Bowcher NEGOTIATION
Cody D GauchoCanadaOnyama Limba PROPOSAL
Cody E SaylorsAustraliaIoni Bowcher UNQUALIFIED
Tony C DoeJapanOnyama Limba RENEWAL
Sinclair H CaldareraAustraliaAmy Elsner PROPOSAL
Ashley P NestleIndiaBernardo Dominic NEW
Aruna D GarufiFranceBernardo Dominic PROPOSAL
Francesco P StockhamJapanXuxue Feng NEGOTIATION
Mujtaba D AlbaresGermanyAsiya Javayant QUALIFIED
Aditya V MaletRussiaAnna Fali PROPOSAL
Clifford F CaudyBrazilIoni Bowcher RENEWAL
Munro O FlosiGermanyAsiya Javayant RENEWAL
Kaitlin Y CampainBrazilOnyama Limba NEGOTIATION
Francesco O VocelkaFranceElwin Sharvill PROPOSAL
Mujtaba F GarufiSpainElwin Sharvill RENEWAL
Faith M TollnerArgentinaElwin Sharvill PROPOSAL
Maisha W GarufiItalyAmy Elsner NEW
Juan Z SchemmerGermanyAsiya Javayant NEW
Rodrigues I StensethArgentinaIvan Magalhaes PROPOSAL
Jeanfrancois G GillianFranceAnna Fali RENEWAL
Jeanfrancois A OstroskyGermanyOnyama Limba QUALIFIED
Sinclair R KuskoFranceIvan Magalhaes QUALIFIED
Murillo G InouyeItalyElwin Sharvill PROPOSAL
Misaki Z IturbideSpainStephen Shaw UNQUALIFIED
Claire X ButtBrazilStephen Shaw 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.