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
Jeanfrancois N StockhamCanadaOnyama Limba PROPOSAL
Mujtaba V DilliardArgentinaElwin Sharvill NEW
Aika G ShinkoCanadaXuxue Feng RENEWAL
Juan U RulapaughFranceXuxue Feng NEW
Julie W GarufiArgentinaIvan Magalhaes RENEWAL
Nicolas A DoeBrazilBernardo Dominic PROPOSAL
David O FollerIndiaElwin Sharvill NEW
Arvin Y ChuiAustraliaBernardo Dominic RENEWAL
Kaitlin V MacleadArgentinaAmy Elsner NEW
Arvin J CaldareraUnited KingdomIoni Bowcher RENEWAL
Wickens W DoeFranceAsiya Javayant UNQUALIFIED
Adams F SergiArgentinaXuxue Feng NEW
Misaki N FerenczUnited KingdomIvan Magalhaes UNQUALIFIED
Leon T KolmetzUnited KingdomOnyama Limba NEW
Ashley Y FollerArgentinaElwin Sharvill PROPOSAL
Maria X WieserCanadaIvan Magalhaes NEW
Rodrigues Z FollerBrazilIoni Bowcher PROPOSAL
Leon B OstroskyJapanXuxue Feng NEW
Emily Z CaldareraArgentinaElwin Sharvill NEW
Salvatore H GillianIndiaStephen Shaw PROPOSAL
Maria H SchemmerFranceOnyama Limba PROPOSAL
Nicolas V MaletBrazilAsiya Javayant UNQUALIFIED
Octavia B SchemmerItalyXuxue Feng NEW
Deepesh F PerinJapanElwin Sharvill QUALIFIED
Stacey Q MacleadRussiaStephen Shaw PROPOSAL
Johnson C GauchoIndiaStephen Shaw NEW
Jennifer P FigeroaSpainAnna Fali UNQUALIFIED
Kadeem B FerenczSpainIoni Bowcher UNQUALIFIED
Wickens G NickaBrazilOnyama Limba RENEWAL
Smith I AlbaresRussiaOnyama Limba NEW
Misaki X WhobreyFranceAmy Elsner NEGOTIATION
Jeanfrancois S PaprockiGermanyAnna Fali RENEWAL
Johnson L SaylorsJapanStephen Shaw RENEWAL
Julie K ButtJapanXuxue Feng NEGOTIATION
Maria P ShinkoBrazilAnna Fali NEW
Tony E MarrierAustraliaElwin Sharvill QUALIFIED
Kaitlin B BologniaGermanyXuxue Feng NEGOTIATION
Antonio B RimJapanElwin Sharvill RENEWAL
Murillo E RutaItalyAmy Elsner QUALIFIED
Claire C AmigonRussiaAsiya Javayant NEW
Maria Z GillianCanadaAmy Elsner UNQUALIFIED
James R PerinSpainXuxue Feng UNQUALIFIED
Smith L AlbaresIndiaAsiya Javayant UNQUALIFIED
Claire U PerinArgentinaXuxue Feng PROPOSAL
Jones B RimCanadaElwin Sharvill UNQUALIFIED
Aika W StockhamGermanyAmy Elsner PROPOSAL
Adams O FlosiSpainAnna Fali NEW
Aruna W IturbideIndiaAnna Fali NEGOTIATION
Ricardo L BriddickArgentinaXuxue Feng RENEWAL
Jefferson I FollerCanadaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Juan P GillianBrazilBernardo Dominic RENEWAL
Murillo Z RutaSpainIoni Bowcher NEW
Salvatore J BologniaAustraliaIvan Magalhaes NEW
Darci U BriddickFranceOnyama Limba UNQUALIFIED
Greenwood T PoquetteUnited KingdomBernardo Dominic QUALIFIED
Izzy D MarrierBrazilAmy Elsner RENEWAL
Kadeem A WieserIndiaElwin Sharvill NEW
Cody D SergiUnited KingdomStephen Shaw QUALIFIED
Arvin F AlbaresIndiaIoni Bowcher NEGOTIATION
Sinclair R BowleyFranceIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore O ShinkoUnited Kingdom2026-04-29Feiner Bros RENEWAL45Ivan Magalhaes
1001Stacey H PaprockiGermany2026-04-14Buckley Miller Wright PROPOSAL40Stephen Shaw
1002Jefferson S PoquetteUnited Kingdom2026-04-01Rangoni Of Florence UNQUALIFIED10Asiya Javayant
1003Greenwood C SchemmerUnited Kingdom2026-04-14Chanay, Jeffrey A Esq UNQUALIFIED11Amy Elsner
1004Adams D WaycottJapan2026-04-11Dorl, James J Esq UNQUALIFIED36Xuxue Feng
1005Greenwood E RulapaughRussia2026-04-09King, Christopher A Esq PROPOSAL49Xuxue Feng
1006Aruna R RimGermany2026-04-18Printing Dimensions NEW40Ioni Bowcher
1007David T BologniaArgentina2026-04-08King, Christopher A Esq UNQUALIFIED24Anna Fali
1008Chavez S FerenczJapan2026-04-20Rangoni Of Florence NEW59Ivan Magalhaes
1009Misaki O MaletBrazil2026-04-12Buckley Miller Wright UNQUALIFIED50Ioni Bowcher
1010Ricardo Y BriddickFrance2026-04-08Benton, John B Jr PROPOSAL83Stephen Shaw
1011Juan Q PerinUnited Kingdom2026-04-04Benton, John B Jr QUALIFIED17Ioni Bowcher
1012Adams T GillianGermany2026-04-21Buckley Miller Wright UNQUALIFIED84Ivan Magalhaes
1013Julie W BowleyGermany2026-04-14Chapman, Ross E Esq PROPOSAL49Elwin Sharvill
1014Octavia P SaylorsBrazil2026-04-03Printing Dimensions NEGOTIATION64Onyama Limba
1015Clifford Z DarakjyFrance2026-04-29Feltz Printing Service NEW70Ivan Magalhaes
1016Sinclair X FigeroaRussia2026-04-25Printing Dimensions QUALIFIED94Stephen Shaw
1017Alejandro C MaletGermany2026-04-18Benton, John B Jr RENEWAL47Ivan Magalhaes
1018David D StensethRussia2026-04-02Buckley Miller Wright NEGOTIATION24Ivan Magalhaes
1019Antonio V RutaSpain2026-04-14Morlong Associates RENEWAL80Ivan Magalhaes
1020Smith L BowleyFrance2026-04-01Commercial Press UNQUALIFIED37Bernardo Dominic
1021Johnson W KuskoJapan2026-04-28Feiner Bros RENEWAL61Stephen Shaw
1022Jeanfrancois A AlbaresRussia2026-04-03Feiner Bros NEW60Ivan Magalhaes
1023Kadeem G OstroskySpain2026-04-13Commercial Press NEW79Ioni Bowcher
1024Maria Z RulapaughIndia2026-04-10King, Christopher A Esq UNQUALIFIED82Asiya Javayant
1025Kadeem L PoquetteIndia2026-04-10Feiner Bros NEGOTIATION80Ioni Bowcher
1026Isabel S MarrierUnited Kingdom2026-04-13Commercial Press QUALIFIED32Amy Elsner
1027Francesco R InouyeUnited Kingdom2026-04-20Rousseaux, Michael Esq NEW14Xuxue Feng
1028Leon T CaldareraBrazil2026-04-21King, Christopher A Esq RENEWAL63Onyama Limba
1029Isabel A FlosiUnited Kingdom2026-04-15Rousseaux, Michael Esq NEW26Stephen Shaw
1030James J NickaAustralia2026-04-30Chanay, Jeffrey A Esq RENEWAL79Xuxue Feng
1031Morrow M GlickJapan2026-04-28Chemel, James L Cpa UNQUALIFIED98Bernardo Dominic
1032Maisha J GarufiArgentina2026-04-05Rangoni Of Florence NEGOTIATION82Xuxue Feng
1033Nicolas D MacleadIndia2026-04-04Morlong Associates PROPOSAL32Ivan Magalhaes
1034Stacey E RoysterArgentina2026-04-17Feiner Bros PROPOSAL8Asiya Javayant
1035Morrow E FlosiSpain2026-04-25Chapman, Ross E Esq NEW21Asiya Javayant
1036Sinclair S SaylorsSpain2026-04-25Rangoni Of Florence NEW76Onyama Limba
1037Leon B FlosiBrazil2026-04-11Rousseaux, Michael Esq RENEWAL74Elwin Sharvill
1038David S SaylorsAustralia2026-04-04Chemel, James L Cpa NEW9Bernardo Dominic
1039Aruna A NestleItaly2026-04-26King, Christopher A Esq NEGOTIATION14Amy Elsner
1040Greenwood G IturbideUnited Kingdom2026-04-14Rangoni Of Florence QUALIFIED82Onyama Limba
1041Murillo Q DarakjyRussia2026-04-30Morlong Associates RENEWAL24Bernardo Dominic
1042Tony T GillianAustralia2026-04-01Rousseaux, Michael Esq QUALIFIED49Amy Elsner
1043Deepesh Z MorascaSpain2026-04-30Rousseaux, Michael Esq UNQUALIFIED17Ioni Bowcher
1044Antonio D GarufiJapan2026-04-04Buckley Miller Wright PROPOSAL0Anna Fali
1045Silvio X InouyeFrance2026-04-03Commercial Press RENEWAL42Elwin Sharvill
1046Julie H CampainGermany2026-04-19Dorl, James J Esq UNQUALIFIED67Anna Fali
1047Octavia L BriddickBrazil2026-04-27Morlong Associates RENEWAL77Xuxue Feng
1048Costa W FollerSpain2026-04-05Chemel, James L Cpa QUALIFIED43Stephen Shaw
1049Juan T OldroydRussia2026-04-07Chanay, Jeffrey A Esq PROPOSAL26Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Arvin K RoysterRussiaAmy Elsner RENEWAL
Claire H FollerFranceOnyama Limba NEW
Chavez V InouyeGermanyIoni Bowcher NEW
Nicolas Q RulapaughUnited KingdomElwin Sharvill UNQUALIFIED
Cody O MacleadRussiaXuxue Feng RENEWAL
Antonio E CaldareraRussiaXuxue Feng NEGOTIATION
Antonio M GillianJapanIoni Bowcher NEW
David Y BriddickGermanyIvan Magalhaes NEW
Maria Q VocelkaBrazilAsiya Javayant PROPOSAL
Misaki F DilliardArgentinaAmy Elsner NEW
Izzy T DoeIndiaBernardo Dominic PROPOSAL
Antonio A RimArgentinaAnna Fali QUALIFIED
Tony W MaletCanadaElwin Sharvill RENEWAL
Claire O NestleIndiaAnna Fali NEW
Jennifer M GarufiGermanyOnyama Limba NEGOTIATION
Mayumi C CampainCanadaXuxue Feng UNQUALIFIED
Mayumi W OldroydUnited KingdomIvan Magalhaes UNQUALIFIED
Johnson R DilliardJapanXuxue Feng UNQUALIFIED
Greenwood N RimBrazilIoni Bowcher PROPOSAL
Jones C BriddickJapanOnyama Limba PROPOSAL
Misaki Y CaldareraFranceStephen Shaw NEGOTIATION
Mayumi N GillianGermanyAsiya Javayant QUALIFIED
Misaki T GlickItalyOnyama Limba PROPOSAL
Julie B PoquetteCanadaAnna Fali NEGOTIATION
David H GlickFranceAmy Elsner NEGOTIATION
Greenwood Z GlickItalyAsiya Javayant PROPOSAL
Jennifer I OldroydGermanyIvan Magalhaes NEW
Silvio H IturbideSpainAnna Fali NEW
Aruna X IturbideJapanAsiya Javayant RENEWAL
Aika D DoeRussiaIvan Magalhaes UNQUALIFIED
Rodrigues G InouyeFranceElwin Sharvill RENEWAL
Francesco P FlosiRussiaIvan Magalhaes QUALIFIED
Maisha D AmigonGermanyOnyama Limba NEGOTIATION
Arvin E SlusarskiUnited KingdomOnyama Limba NEGOTIATION
Aditya I IturbideAustraliaStephen Shaw NEGOTIATION
Aruna U RimGermanyAsiya Javayant NEW
Leja H DilliardSpainBernardo Dominic UNQUALIFIED
Rodrigues J KuskoItalyStephen Shaw NEW
Sinclair G WieserUnited KingdomStephen Shaw RENEWAL
Morrow D ButtRussiaStephen Shaw RENEWAL
Juan W PaprockiCanadaOnyama Limba NEGOTIATION
Francesco N VocelkaGermanyIoni Bowcher NEW
Deepesh Y RoysterRussiaElwin Sharvill NEGOTIATION
Izzy W IturbideBrazilOnyama Limba NEGOTIATION
Antonio U PoquetteAustraliaAsiya Javayant NEGOTIATION
Ivar X OstroskyGermanyBernardo Dominic NEGOTIATION
Octavia U MorascaIndiaOnyama Limba UNQUALIFIED
Isabel O BowleyFranceOnyama Limba PROPOSAL
Mayumi V ShinkoFranceIvan Magalhaes NEW
Juan D RoysterItalyAmy Elsner UNQUALIFIED
Frozen Columns
Name
Aika Y Gaucho
Tony T Nestle
Chavez A Garufi
Alejandro Q Campain
Chavez M Kolmetz
Sinclair X Chui
Leon C Dilliard
David N Chui
Sinclair K Malet
Emily C Poquette
Jeanfrancois J Figeroa
Chavez I Nestle
Costa S Oldroyd
Smith K Ruta
Clifford Q Gillian
Claire P Waycott
Adams H Gaucho
Antonio X Albares
Wickens Z Caldarera
Leon B Paprocki
Misaki B Paprocki
Aditya O Shinko
Jefferson T Shinko
Rodrigues O Ferencz
Adams R Stockham
Stacey U Waycott
Rodrigues P Chui
Stacey N Tollner
Cody Y Stenseth
Izzy M Nicka
Cody B Poquette
Nicolas F Rulapaugh
Ashley Z Malet
Leja I Inouye
Kadeem Q Malet
Faith I Perin
Faith P Maclead
Clifford H Briddick
Stacey N Royster
Mayumi C Wieser
Kaitlin Q Oldroyd
Emily R Marrier
Greenwood Z Royster
Julie D Shinko
Misaki I Paprocki
Smith I Butt
David T Shinko
Darci N Caudy
Misaki E Slusarski
Arvin W Amigon
IdCountryDate
1000France2026-04-21
1001India2026-04-16
1002Spain2026-04-28
1003France2026-04-22
1004Germany2026-04-03
1005Russia2026-04-10
1006Argentina2026-04-26
1007Canada2026-04-09
1008Japan2026-04-21
1009Brazil2026-04-26
1010Russia2026-04-24
1011Brazil2026-04-14
1012India2026-04-11
1013France2026-04-16
1014Japan2026-04-25
1015Germany2026-04-14
1016Argentina2026-04-24
1017Spain2026-04-28
1018Italy2026-04-17
1019Germany2026-04-20
1020Japan2026-04-29
1021France2026-04-02
1022Germany2026-04-04
1023India2026-04-04
1024Germany2026-04-04
1025Japan2026-04-26
1026Australia2026-04-22
1027Germany2026-04-05
1028United Kingdom2026-04-07
1029Canada2026-04-15
1030Germany2026-04-18
1031Germany2026-04-24
1032Russia2026-04-22
1033France2026-04-15
1034France2026-04-07
1035Argentina2026-04-12
1036Argentina2026-04-17
1037Australia2026-04-20
1038Russia2026-04-02
1039Argentina2026-04-20
1040Germany2026-04-19
1041Australia2026-04-07
1042United Kingdom2026-04-25
1043Italy2026-04-15
1044Japan2026-04-13
1045United Kingdom2026-04-10
1046India2026-04-04
1047Canada2026-04-14
1048Argentina2026-04-03
1049Canada2026-04-24

On-Demand Data

NameIdCountryDate
Ricardo Y Kolmetz1000Russia2026-04-14
Ricardo V Vocelka1001United Kingdom2026-04-02
Sinclair V Nestle1002Spain2026-04-29
Juan U Ostrosky1003Germany2026-04-14
Clifford H Wieser1004Germany2026-04-05
Antonio C Poquette1005Argentina2026-04-24
Ivar A Malet1006Argentina2026-04-12
Aruna K Bowley1007Italy2026-04-15
Cody X Garufi1008Spain2026-04-22
Chavez F Garufi1009Argentina2026-04-05
Maisha A Vocelka1010Germany2026-04-18
Wickens L Briddick1011Australia2026-04-28
Ivar T Wieser1012Italy2026-04-11
Kadeem G Perin1013Canada2026-04-08
Sinclair M Kolmetz1014France2026-04-13
Stacey T Foller1015Japan2026-04-25
Juan U Royster1016Japan2026-04-03
Chavez Y Gaucho1017India2026-04-16
Antonio G Nestle1018Argentina2026-04-19
Murillo A Rim1019Germany2026-04-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin E BologniaRussiaIvan Magalhaes PROPOSAL
Ashley M FigeroaRussiaOnyama Limba PROPOSAL
Sinclair Q ChuiItalyIvan Magalhaes NEW
Jefferson B ShinkoBrazilOnyama Limba UNQUALIFIED
Jennifer T DoeJapanAnna Fali PROPOSAL
Morrow B WhobreyArgentinaStephen Shaw QUALIFIED
Sinclair H WaycottArgentinaAmy Elsner NEGOTIATION
Mayumi B RutaBrazilXuxue Feng QUALIFIED
Clifford G FollerUnited KingdomIvan Magalhaes NEGOTIATION
Leon P AlbaresJapanIoni Bowcher RENEWAL
Octavia F CampainFranceIoni Bowcher NEW
Silvio O CaudyJapanOnyama Limba QUALIFIED
Rodrigues K DoeGermanyAnna Fali PROPOSAL
Mujtaba S FigeroaAustraliaXuxue Feng NEW
Jones G FigeroaArgentinaElwin Sharvill RENEWAL
Aruna N WieserUnited KingdomAsiya Javayant RENEWAL
Cody H KolmetzBrazilAnna Fali QUALIFIED
Leon Y PoquetteIndiaIvan Magalhaes RENEWAL
Antonio J MarrierCanadaStephen Shaw PROPOSAL
Leja U SlusarskiBrazilStephen Shaw QUALIFIED
Leon T SaylorsArgentinaAnna Fali UNQUALIFIED
Ricardo V AmigonAustraliaAnna Fali PROPOSAL
Tony C FollerArgentinaAsiya Javayant NEGOTIATION
Chavez L GauchoSpainAmy Elsner UNQUALIFIED
Antonio R WaycottCanadaIvan Magalhaes UNQUALIFIED
Aruna Z WaycottAustraliaIvan Magalhaes NEW
Mayumi P DarakjyAustraliaStephen Shaw NEGOTIATION
Aika A MarrierCanadaIvan Magalhaes UNQUALIFIED
Clifford F ButtIndiaIvan Magalhaes RENEWAL
Salvatore R WieserAustraliaAmy Elsner RENEWAL
Francesco H IturbideCanadaIoni Bowcher QUALIFIED
Nicolas F WieserUnited KingdomIoni Bowcher PROPOSAL
Leja O AlbaresFranceIvan Magalhaes RENEWAL
Faith Q MorascaSpainElwin Sharvill RENEWAL
Costa P WieserItalyAnna Fali PROPOSAL
Rodrigues J KuskoArgentinaAmy Elsner NEGOTIATION
Maria B CaudyArgentinaStephen Shaw NEW
Silvio N SaylorsGermanyAsiya Javayant UNQUALIFIED
Maisha E MaletFranceElwin Sharvill QUALIFIED
Arvin W DilliardAustraliaBernardo Dominic 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.