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
Sinclair V SlusarskiJapanOnyama Limba UNQUALIFIED
Maisha N ShinkoIndiaStephen Shaw QUALIFIED
Costa W NickaFranceIvan Magalhaes PROPOSAL
Salvatore G BriddickSpainElwin Sharvill NEW
Jefferson S ButtItalyStephen Shaw PROPOSAL
Leja Y BologniaBrazilAmy Elsner UNQUALIFIED
Isabel N BriddickGermanyElwin Sharvill QUALIFIED
Rodrigues C DilliardCanadaElwin Sharvill NEGOTIATION
Greenwood L BologniaArgentinaIoni Bowcher NEW
Ricardo G NickaArgentinaAnna Fali NEW
Alejandro G ButtArgentinaAsiya Javayant NEW
Cody K GarufiRussiaElwin Sharvill NEW
Murillo G PerinArgentinaXuxue Feng NEW
Antonio S FerenczArgentinaBernardo Dominic QUALIFIED
Kaitlin Z FigeroaItalyIoni Bowcher NEW
Murillo O MaletItalyIoni Bowcher RENEWAL
Maisha L ShinkoFranceOnyama Limba PROPOSAL
Claire D WieserItalyElwin Sharvill NEW
Jennifer P BowleyCanadaAsiya Javayant UNQUALIFIED
Maisha N RoysterBrazilIvan Magalhaes QUALIFIED
Nicolas V FlosiSpainBernardo Dominic RENEWAL
Jones U DarakjyGermanyIoni Bowcher PROPOSAL
Izzy O GauchoUnited KingdomXuxue Feng NEGOTIATION
Julie L RulapaughBrazilAmy Elsner QUALIFIED
Octavia Q GlickIndiaBernardo Dominic PROPOSAL
Salvatore V PerinUnited KingdomBernardo Dominic RENEWAL
Aditya E CaldareraGermanyAnna Fali NEGOTIATION
Morrow U IturbideBrazilBernardo Dominic RENEWAL
David R BriddickItalyAnna Fali NEGOTIATION
Izzy S DarakjyRussiaBernardo Dominic QUALIFIED
Stacey S WhobreyArgentinaAnna Fali NEW
Munro H SchemmerAustraliaIvan Magalhaes QUALIFIED
Leon C OldroydFranceIvan Magalhaes PROPOSAL
Jeanfrancois K BowleyFranceElwin Sharvill NEW
Murillo A MarrierFranceIoni Bowcher QUALIFIED
Leon R FerenczIndiaElwin Sharvill NEW
Julie O CampainUnited KingdomOnyama Limba QUALIFIED
Octavia V CampainJapanIvan Magalhaes NEW
Tony Y VocelkaUnited KingdomIoni Bowcher RENEWAL
Smith P DilliardJapanXuxue Feng QUALIFIED
Sinclair M TollnerJapanAsiya Javayant RENEWAL
Misaki W WaycottCanadaElwin Sharvill NEW
Juan L CaudyJapanAmy Elsner UNQUALIFIED
Wickens G VenereFranceOnyama Limba PROPOSAL
Mayumi L OldroydCanadaStephen Shaw NEW
Wickens V MaletGermanyOnyama Limba RENEWAL
Kaitlin T BologniaCanadaIoni Bowcher RENEWAL
Smith P KuskoSpainElwin Sharvill QUALIFIED
Jennifer V VocelkaUnited KingdomBernardo Dominic NEGOTIATION
Emily K FlosiGermanyXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Izzy W PoquetteSpainAmy Elsner PROPOSAL
Leja D ButtCanadaXuxue Feng RENEWAL
Alejandro Y MarrierUnited KingdomOnyama Limba NEW
Darci V MorascaUnited KingdomIoni Bowcher RENEWAL
Deepesh M SergiIndiaXuxue Feng NEGOTIATION
Mayumi R FigeroaFranceAmy Elsner NEGOTIATION
Stacey R GlickCanadaXuxue Feng RENEWAL
Aruna E RimFranceBernardo Dominic RENEWAL
Maria V PerinGermanyIvan Magalhaes RENEWAL
Jennifer K KolmetzAustraliaStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith V ShinkoRussia2026-05-28Printing Dimensions RENEWAL55Asiya Javayant
1001Izzy Y MaletJapan2026-05-26Truhlar And Truhlar Attys UNQUALIFIED32Ivan Magalhaes
1002Emily I TollnerJapan2026-05-29Commercial Press RENEWAL68Stephen Shaw
1003Aditya H AmigonIndia2026-05-15Benton, John B Jr PROPOSAL35Bernardo Dominic
1004Deepesh A WieserUnited Kingdom2026-06-03Rangoni Of Florence NEW49Onyama Limba
1005Ivar L OldroydRussia2026-05-08Printing Dimensions NEGOTIATION52Amy Elsner
1006Mujtaba R AlbaresRussia2026-05-24Printing Dimensions NEGOTIATION26Amy Elsner
1007Leon Z KolmetzItaly2026-05-22Dorl, James J Esq NEW67Amy Elsner
1008Maria H AlbaresUnited Kingdom2026-05-14Feltz Printing Service PROPOSAL28Stephen Shaw
1009Francesco C VocelkaArgentina2026-05-09Dorl, James J Esq PROPOSAL68Bernardo Dominic
1010Cody F BriddickCanada2026-05-18Benton, John B Jr UNQUALIFIED23Elwin Sharvill
1011Aika F WaycottRussia2026-05-09Chapman, Ross E Esq NEGOTIATION40Ioni Bowcher
1012Juan E RimCanada2026-05-06Rousseaux, Michael Esq RENEWAL12Stephen Shaw
1013Claire B FerenczSpain2026-05-27Printing Dimensions RENEWAL67Amy Elsner
1014Maisha P GillianBrazil2026-05-28Commercial Press NEW67Onyama Limba
1015Faith Y AlbaresFrance2026-05-29Chanay, Jeffrey A Esq NEW66Bernardo Dominic
1016Stacey C FerenczSpain2026-05-11Truhlar And Truhlar Attys PROPOSAL89Anna Fali
1017Kadeem P AlbaresCanada2026-05-23King, Christopher A Esq RENEWAL79Anna Fali
1018Stacey Z GlickIndia2026-05-28Chemel, James L Cpa NEW50Elwin Sharvill
1019Stacey G ChuiAustralia2026-05-28Rousseaux, Michael Esq QUALIFIED98Bernardo Dominic
1020Kaitlin W DoeAustralia2026-05-23Printing Dimensions NEW22Elwin Sharvill
1021Ivar U BologniaJapan2026-05-16King, Christopher A Esq UNQUALIFIED8Amy Elsner
1022David L RimCanada2026-05-18Chemel, James L Cpa NEW43Anna Fali
1023Aruna K ChuiCanada2026-06-02Feltz Printing Service PROPOSAL11Xuxue Feng
1024Aruna O NestleFrance2026-05-07Rangoni Of Florence QUALIFIED44Stephen Shaw
1025Alejandro W BriddickIndia2026-05-21Dorl, James J Esq PROPOSAL74Bernardo Dominic
1026James Q ShinkoJapan2026-05-11King, Christopher A Esq UNQUALIFIED15Elwin Sharvill
1027Adams Q DarakjyCanada2026-05-06King, Christopher A Esq NEGOTIATION6Ioni Bowcher
1028Costa R BologniaIndia2026-05-06Rangoni Of Florence NEW5Elwin Sharvill
1029Aditya Q TollnerCanada2026-05-16Chanay, Jeffrey A Esq NEGOTIATION6Ivan Magalhaes
1030Arvin B CaudyItaly2026-05-20Rousseaux, Michael Esq UNQUALIFIED6Xuxue Feng
1031James N RoysterRussia2026-05-20Rangoni Of Florence PROPOSAL63Amy Elsner
1032Cody W ShinkoAustralia2026-05-08Rousseaux, Michael Esq UNQUALIFIED52Ioni Bowcher
1033Silvio X TollnerJapan2026-05-17Morlong Associates RENEWAL73Xuxue Feng
1034Darci P BowleyCanada2026-05-12Benton, John B Jr NEGOTIATION25Stephen Shaw
1035Leon O FlosiBrazil2026-05-22Rangoni Of Florence UNQUALIFIED28Amy Elsner
1036Murillo H WaycottCanada2026-05-30Benton, John B Jr NEW76Stephen Shaw
1037Stacey N StensethArgentina2026-05-30Rangoni Of Florence NEW46Bernardo Dominic
1038Octavia X KolmetzRussia2026-06-01Feiner Bros UNQUALIFIED74Amy Elsner
1039Smith W SaylorsSpain2026-05-07Chemel, James L Cpa RENEWAL57Anna Fali
1040Chavez E CaldareraUnited Kingdom2026-05-23Printing Dimensions PROPOSAL55Amy Elsner
1041Clifford S InouyeRussia2026-06-03Feltz Printing Service PROPOSAL7Elwin Sharvill
1042Mujtaba A WieserJapan2026-06-01Printing Dimensions PROPOSAL45Xuxue Feng
1043Sinclair K MarrierRussia2026-05-16Rousseaux, Michael Esq NEGOTIATION93Anna Fali
1044Darci B OstroskyGermany2026-05-31Chapman, Ross E Esq UNQUALIFIED4Bernardo Dominic
1045Chavez V FollerItaly2026-05-25Truhlar And Truhlar Attys NEW23Ivan Magalhaes
1046Sinclair V SaylorsArgentina2026-05-11Feltz Printing Service UNQUALIFIED90Bernardo Dominic
1047Ashley P NestleCanada2026-05-11King, Christopher A Esq NEGOTIATION58Stephen Shaw
1048Johnson T MaletRussia2026-05-25Rangoni Of Florence UNQUALIFIED70Amy Elsner
1049Silvio K AmigonJapan2026-05-14Truhlar And Truhlar Attys NEW32Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Tony F RutaIndiaAmy Elsner PROPOSAL
Faith R WaycottIndiaAsiya Javayant NEW
Emily M SchemmerSpainIvan Magalhaes UNQUALIFIED
Jennifer P PoquetteIndiaAnna Fali UNQUALIFIED
Darci G AlbaresArgentinaStephen Shaw QUALIFIED
Kadeem O DilliardJapanAnna Fali RENEWAL
David F FollerUnited KingdomIvan Magalhaes NEGOTIATION
Mayumi Z GauchoSpainBernardo Dominic NEGOTIATION
Aditya S GauchoAustraliaAnna Fali PROPOSAL
Costa H VenereBrazilIvan Magalhaes PROPOSAL
Smith B AmigonJapanElwin Sharvill NEGOTIATION
Silvio D StockhamSpainIoni Bowcher RENEWAL
Costa L FerenczItalyXuxue Feng QUALIFIED
Maria O GlickJapanBernardo Dominic NEGOTIATION
Alejandro S WieserSpainElwin Sharvill UNQUALIFIED
Clifford S BowleyCanadaXuxue Feng UNQUALIFIED
Arvin E SaylorsSpainIoni Bowcher PROPOSAL
James D StockhamJapanAmy Elsner UNQUALIFIED
Antonio S FollerCanadaIoni Bowcher NEGOTIATION
Murillo I CampainRussiaAsiya Javayant RENEWAL
Salvatore E NestleArgentinaAnna Fali UNQUALIFIED
Alejandro B SlusarskiItalyIoni Bowcher PROPOSAL
Ashley Z VocelkaIndiaStephen Shaw PROPOSAL
Francesco C MorascaGermanyElwin Sharvill NEGOTIATION
Chavez E OstroskyGermanyOnyama Limba NEGOTIATION
Maria U GillianIndiaOnyama Limba NEGOTIATION
Jones P FerenczSpainBernardo Dominic RENEWAL
Emily R MacleadFranceStephen Shaw PROPOSAL
Morrow N ShinkoItalyOnyama Limba PROPOSAL
Alejandro L FerenczBrazilOnyama Limba UNQUALIFIED
Kadeem M MacleadGermanyIoni Bowcher NEW
Ashley J MorascaCanadaAmy Elsner PROPOSAL
Isabel X FigeroaItalyOnyama Limba RENEWAL
Jefferson I FigeroaAustraliaElwin Sharvill NEW
Arvin L PoquetteGermanyElwin Sharvill NEW
Leja P TollnerArgentinaIvan Magalhaes NEGOTIATION
Misaki U KolmetzRussiaOnyama Limba QUALIFIED
Alejandro R WieserUnited KingdomElwin Sharvill UNQUALIFIED
Murillo R CaudyAustraliaAnna Fali NEW
Aditya Q AmigonGermanyBernardo Dominic PROPOSAL
Octavia W WieserIndiaXuxue Feng UNQUALIFIED
Isabel C AmigonCanadaStephen Shaw RENEWAL
Ashley N DarakjyFranceAmy Elsner UNQUALIFIED
Johnson B BowleyUnited KingdomAnna Fali PROPOSAL
Clifford I RulapaughArgentinaAmy Elsner QUALIFIED
Tony V StensethJapanAnna Fali QUALIFIED
Arvin W MaletCanadaAmy Elsner PROPOSAL
Chavez H IturbideItalyAnna Fali QUALIFIED
Murillo M RulapaughBrazilElwin Sharvill UNQUALIFIED
Kaitlin N KolmetzRussiaBernardo Dominic RENEWAL
Frozen Columns
Name
Adams E Vocelka
Maisha C Malet
Wickens E Doe
Maisha L Marrier
Ashley K Rim
Ricardo C Stenseth
Jones B Tollner
Cody E Doe
Antonio K Wieser
Leja X Ostrosky
Jennifer M Doe
Adams K Caldarera
Ricardo Y Foller
Kadeem V Schemmer
Misaki O Wieser
Antonio G Marrier
Alejandro E Chui
Francesco U Gillian
Aditya X Wieser
Adams S Glick
Costa H Dilliard
Jeanfrancois W Amigon
Kaitlin T Caldarera
Maisha A Inouye
Cody M Marrier
Jeanfrancois N Waycott
Ivar S Flosi
Mayumi Q Marrier
Leja I Garufi
James S Flosi
Tony D Poquette
Silvio R Glick
Emily I Amigon
Wickens R Tollner
Francesco B Venere
Leja H Perin
Antonio K Royster
Aruna D Sergi
Ivar F Saylors
Rodrigues D Darakjy
Tony Q Campain
Murillo T Gillian
Mayumi D Slusarski
Faith B Whobrey
Leon L Paprocki
Jennifer D Doe
Silvio M Maclead
Izzy C Maclead
Adams W Gillian
Deepesh S Gillian
IdCountryDate
1000Argentina2026-05-15
1001Italy2026-05-23
1002France2026-06-02
1003Australia2026-05-06
1004Russia2026-06-02
1005Germany2026-05-09
1006Argentina2026-05-06
1007France2026-05-10
1008India2026-06-03
1009Argentina2026-06-04
1010Italy2026-05-19
1011Russia2026-05-11
1012India2026-06-02
1013India2026-05-06
1014Russia2026-05-17
1015Brazil2026-06-04
1016Italy2026-05-07
1017Argentina2026-05-21
1018Brazil2026-05-22
1019Spain2026-05-11
1020Russia2026-05-23
1021Spain2026-05-14
1022India2026-05-23
1023Brazil2026-05-26
1024Russia2026-05-06
1025Canada2026-05-24
1026Italy2026-06-04
1027Australia2026-05-23
1028Argentina2026-05-29
1029Italy2026-05-26
1030Brazil2026-05-24
1031Japan2026-05-21
1032Argentina2026-05-08
1033Brazil2026-05-18
1034Germany2026-05-24
1035France2026-05-09
1036Japan2026-05-15
1037India2026-05-18
1038India2026-05-08
1039France2026-05-16
1040Canada2026-05-20
1041Canada2026-05-22
1042United Kingdom2026-05-24
1043Australia2026-06-04
1044Brazil2026-05-31
1045Brazil2026-05-08
1046Italy2026-06-03
1047Canada2026-05-22
1048Japan2026-05-20
1049Brazil2026-05-25

On-Demand Data

NameIdCountryDate
Adams B Schemmer1000Australia2026-06-02
Stacey H Gaucho1001Italy2026-05-24
Rodrigues F Sergi1002Japan2026-05-10
Juan X Ostrosky1003Australia2026-05-20
Munro F Albares1004Germany2026-05-30
Johnson U Tollner1005France2026-05-08
Adams D Sergi1006Argentina2026-05-28
Jeanfrancois F Perin1007Russia2026-05-13
Aruna B Oldroyd1008India2026-05-08
Ivar K Caldarera1009Italy2026-06-04
Ricardo U Rulapaugh1010Russia2026-05-29
Murillo D Nicka1011United Kingdom2026-05-10
Tony D Doe1012Italy2026-05-20
James R Sergi1013United Kingdom2026-05-10
Tony W Chui1014Spain2026-05-24
Clifford J Nestle1015Spain2026-06-03
Silvio W Chui1016Russia2026-05-13
Aruna E Darakjy1017Australia2026-06-03
Darci H Whobrey1018Australia2026-05-13
Silvio R Caudy1019Russia2026-05-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin Q GauchoFranceBernardo Dominic QUALIFIED
Juan E RulapaughGermanyAsiya Javayant RENEWAL
Faith L KolmetzItalyIoni Bowcher QUALIFIED
Octavia I WhobreyItalyElwin Sharvill QUALIFIED
Stacey V CaldareraJapanAmy Elsner NEW
Clifford I CampainAustraliaStephen Shaw QUALIFIED
Ivar R SlusarskiItalyBernardo Dominic NEGOTIATION
Mayumi J NestleAustraliaAsiya Javayant NEGOTIATION
Jennifer H MaletIndiaElwin Sharvill QUALIFIED
Murillo I ShinkoArgentinaIoni Bowcher PROPOSAL
Deepesh B KuskoJapanXuxue Feng NEGOTIATION
Morrow X GlickArgentinaOnyama Limba UNQUALIFIED
Ricardo K VocelkaSpainIvan Magalhaes RENEWAL
Mayumi K KuskoItalyElwin Sharvill UNQUALIFIED
Izzy J GillianFranceBernardo Dominic QUALIFIED
Maisha A RoysterArgentinaBernardo Dominic QUALIFIED
Murillo R BologniaJapanAsiya Javayant RENEWAL
Mujtaba M AmigonArgentinaXuxue Feng UNQUALIFIED
Misaki Q KolmetzItalyStephen Shaw QUALIFIED
Arvin E PaprockiArgentinaStephen Shaw RENEWAL
Misaki T SergiUnited KingdomBernardo Dominic PROPOSAL
James Q NestleAustraliaAnna Fali RENEWAL
Juan Z BowleyItalyAmy Elsner NEGOTIATION
Maisha I RulapaughItalyBernardo Dominic PROPOSAL
Aruna D GauchoUnited KingdomAsiya Javayant NEW
Greenwood V GillianBrazilAsiya Javayant QUALIFIED
Stacey M VocelkaFranceOnyama Limba NEGOTIATION
Jennifer B SchemmerItalyAsiya Javayant NEGOTIATION
Sinclair Q BriddickSpainBernardo Dominic PROPOSAL
Julie A PoquetteArgentinaAnna Fali RENEWAL
Silvio Q RimRussiaStephen Shaw NEW
Mayumi Y FlosiAustraliaAnna Fali NEW
Maisha E KuskoItalyXuxue Feng NEGOTIATION
Aditya F WieserJapanElwin Sharvill RENEWAL
Jennifer H AlbaresSpainStephen Shaw RENEWAL
Arvin G PoquetteAustraliaXuxue Feng NEGOTIATION
Tony Y ShinkoJapanIoni Bowcher RENEWAL
Silvio Q GarufiUnited KingdomElwin Sharvill UNQUALIFIED
Stacey X WieserIndiaAnna Fali UNQUALIFIED
Jefferson O RutaArgentinaIvan Magalhaes NEGOTIATION

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