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
Wickens K BriddickRussiaAmy Elsner QUALIFIED
Chavez R SlusarskiIndiaAsiya Javayant QUALIFIED
Tony L ButtGermanyIvan Magalhaes QUALIFIED
Juan K VenereGermanyAmy Elsner QUALIFIED
Isabel T SchemmerGermanyStephen Shaw NEGOTIATION
Kaitlin X TollnerFranceBernardo Dominic QUALIFIED
Jennifer D BriddickCanadaXuxue Feng PROPOSAL
Greenwood N SaylorsBrazilIoni Bowcher QUALIFIED
Chavez F WhobreyAustraliaAsiya Javayant PROPOSAL
Mayumi U MarrierSpainAsiya Javayant QUALIFIED
David O CampainIndiaElwin Sharvill PROPOSAL
Stacey Z WaycottItalyBernardo Dominic QUALIFIED
Johnson O SlusarskiCanadaXuxue Feng PROPOSAL
Aditya B RimSpainElwin Sharvill RENEWAL
Isabel U MaletArgentinaAsiya Javayant UNQUALIFIED
Deepesh N IturbideFranceElwin Sharvill QUALIFIED
Leja H BriddickSpainStephen Shaw NEGOTIATION
Maria E PaprockiArgentinaIvan Magalhaes UNQUALIFIED
Cody N AlbaresRussiaXuxue Feng PROPOSAL
Aika H ShinkoFranceAmy Elsner NEW
Izzy D KolmetzRussiaBernardo Dominic NEGOTIATION
Octavia O MaletAustraliaAsiya Javayant NEW
Nicolas O RutaUnited KingdomElwin Sharvill QUALIFIED
Murillo U MarrierJapanAmy Elsner PROPOSAL
Mayumi Y MaletUnited KingdomOnyama Limba QUALIFIED
Ashley F RimRussiaOnyama Limba RENEWAL
Stacey Y RoysterIndiaAmy Elsner RENEWAL
Tony M ShinkoFranceStephen Shaw RENEWAL
Jennifer J CampainGermanyStephen Shaw NEW
Ricardo S GillianUnited KingdomOnyama Limba UNQUALIFIED
Faith I TollnerGermanyXuxue Feng QUALIFIED
Nicolas G DarakjyJapanAsiya Javayant PROPOSAL
Greenwood E FlosiRussiaIoni Bowcher RENEWAL
Ivar K RoysterBrazilStephen Shaw UNQUALIFIED
Munro C FerenczCanadaAmy Elsner UNQUALIFIED
Kaitlin K BologniaBrazilBernardo Dominic NEW
Clifford I AlbaresIndiaBernardo Dominic NEW
Ivar V FollerSpainIvan Magalhaes PROPOSAL
Costa B BologniaItalyElwin Sharvill NEW
Salvatore L SergiSpainAsiya Javayant PROPOSAL
Aika C FlosiSpainIvan Magalhaes NEW
Kaitlin D AmigonAustraliaStephen Shaw NEGOTIATION
Kadeem D SergiRussiaOnyama Limba RENEWAL
Clifford U RoysterItalyAsiya Javayant NEGOTIATION
Leon W CaudyFranceAsiya Javayant QUALIFIED
Leon P IturbideUnited KingdomStephen Shaw UNQUALIFIED
Costa X CaudyFranceAnna Fali RENEWAL
Jones L RutaRussiaAmy Elsner QUALIFIED
Mayumi H MorascaCanadaElwin Sharvill NEGOTIATION
Johnson A KuskoAustraliaXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Mayumi P StensethArgentinaXuxue Feng NEW
Wickens L ShinkoJapanAsiya Javayant QUALIFIED
Claire M RulapaughIndiaIvan Magalhaes NEGOTIATION
Octavia N PaprockiIndiaElwin Sharvill RENEWAL
Tony I RimSpainAnna Fali RENEWAL
Ashley R ButtRussiaXuxue Feng UNQUALIFIED
Munro A FollerUnited KingdomOnyama Limba NEGOTIATION
Greenwood L FerenczIndiaOnyama Limba NEGOTIATION
Costa A ButtUnited KingdomAmy Elsner NEW
Silvio D ButtIndiaIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco G NickaFrance2026-04-24Feiner Bros PROPOSAL70Asiya Javayant
1001Jefferson A MaletBrazil2026-05-04Commercial Press QUALIFIED36Ioni Bowcher
1002Leja T VenereArgentina2026-05-01Chapman, Ross E Esq NEGOTIATION90Stephen Shaw
1003Chavez O CampainItaly2026-04-30Chapman, Ross E Esq NEGOTIATION44Elwin Sharvill
1004Salvatore F AlbaresAustralia2026-05-10Rousseaux, Michael Esq RENEWAL29Xuxue Feng
1005Kadeem A VocelkaItaly2026-05-15Rousseaux, Michael Esq PROPOSAL5Xuxue Feng
1006Sinclair M PoquetteItaly2026-04-29Commercial Press NEW43Stephen Shaw
1007Francesco J GlickSpain2026-04-29Rangoni Of Florence NEGOTIATION46Ioni Bowcher
1008Jefferson F KuskoRussia2026-05-19Chanay, Jeffrey A Esq NEW83Xuxue Feng
1009Octavia N StensethArgentina2026-05-17Chanay, Jeffrey A Esq NEW48Ivan Magalhaes
1010Isabel N FollerAustralia2026-05-07Rousseaux, Michael Esq UNQUALIFIED35Asiya Javayant
1011Isabel Y NickaUnited Kingdom2026-05-13Benton, John B Jr RENEWAL14Ioni Bowcher
1012Mayumi I GillianCanada2026-05-14Dorl, James J Esq NEGOTIATION99Ivan Magalhaes
1013Morrow U RimBrazil2026-05-14Buckley Miller Wright RENEWAL56Bernardo Dominic
1014Ivar K SchemmerArgentina2026-04-28Printing Dimensions UNQUALIFIED10Anna Fali
1015Ashley W GillianSpain2026-05-12Truhlar And Truhlar Attys NEGOTIATION0Ioni Bowcher
1016Jones B MaletJapan2026-05-15Chanay, Jeffrey A Esq RENEWAL13Bernardo Dominic
1017Salvatore W FigeroaRussia2026-05-02Printing Dimensions UNQUALIFIED63Stephen Shaw
1018Maria A WieserIndia2026-04-29Feiner Bros NEW24Ivan Magalhaes
1019Stacey V StockhamFrance2026-04-25Dorl, James J Esq NEGOTIATION0Bernardo Dominic
1020Faith Q KolmetzFrance2026-05-23Benton, John B Jr NEGOTIATION6Bernardo Dominic
1021Aika U AmigonRussia2026-04-26Truhlar And Truhlar Attys NEGOTIATION87Asiya Javayant
1022Ricardo B BologniaIndia2026-05-23Chapman, Ross E Esq RENEWAL72Asiya Javayant
1023Leja R VocelkaRussia2026-04-25Benton, John B Jr NEGOTIATION25Stephen Shaw
1024Juan S CampainJapan2026-04-30Chanay, Jeffrey A Esq QUALIFIED32Ivan Magalhaes
1025Julie I WieserCanada2026-05-21Dorl, James J Esq QUALIFIED70Bernardo Dominic
1026Ivar Z WaycottFrance2026-04-24Rangoni Of Florence RENEWAL42Onyama Limba
1027Leon C GlickBrazil2026-05-08Printing Dimensions UNQUALIFIED33Onyama Limba
1028Ashley T NickaFrance2026-04-29Morlong Associates NEGOTIATION45Bernardo Dominic
1029Salvatore Q GillianRussia2026-05-11Rangoni Of Florence PROPOSAL30Stephen Shaw
1030Smith U MorascaRussia2026-05-03Truhlar And Truhlar Attys PROPOSAL46Ioni Bowcher
1031Juan I OstroskyItaly2026-05-14Commercial Press QUALIFIED55Stephen Shaw
1032Arvin Z FollerItaly2026-05-06Commercial Press NEGOTIATION55Xuxue Feng
1033Jennifer O ShinkoItaly2026-05-11King, Christopher A Esq RENEWAL8Asiya Javayant
1034Adams L FlosiAustralia2026-05-13Morlong Associates UNQUALIFIED49Bernardo Dominic
1035Octavia U SchemmerAustralia2026-05-18Benton, John B Jr PROPOSAL32Asiya Javayant
1036Silvio P WieserIndia2026-05-01King, Christopher A Esq RENEWAL58Anna Fali
1037Faith A ChuiUnited Kingdom2026-04-24Chapman, Ross E Esq NEGOTIATION68Amy Elsner
1038Maisha R PerinIndia2026-05-14Truhlar And Truhlar Attys NEW99Stephen Shaw
1039Faith C MacleadItaly2026-05-16Dorl, James J Esq RENEWAL2Amy Elsner
1040Alejandro Z RulapaughBrazil2026-04-25Truhlar And Truhlar Attys PROPOSAL30Anna Fali
1041Smith D OstroskyFrance2026-05-01Commercial Press QUALIFIED9Onyama Limba
1042Ricardo B TollnerFrance2026-05-10Chanay, Jeffrey A Esq NEW14Bernardo Dominic
1043Costa G NickaCanada2026-05-09Chemel, James L Cpa RENEWAL0Amy Elsner
1044Jeanfrancois S MaletRussia2026-05-10Dorl, James J Esq QUALIFIED69Ioni Bowcher
1045Emily C OldroydJapan2026-05-19Chapman, Ross E Esq PROPOSAL91Elwin Sharvill
1046Claire F SergiBrazil2026-05-19Benton, John B Jr NEW43Stephen Shaw
1047Faith V FlosiJapan2026-04-29Chanay, Jeffrey A Esq PROPOSAL28Stephen Shaw
1048Kaitlin D FerenczSpain2026-05-20Truhlar And Truhlar Attys QUALIFIED81Asiya Javayant
1049Munro F TollnerSpain2026-04-25Chemel, James L Cpa NEGOTIATION11Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Octavia W BologniaGermanyIvan Magalhaes UNQUALIFIED
Stacey Z ChuiItalyIoni Bowcher QUALIFIED
James K SergiIndiaBernardo Dominic PROPOSAL
Rodrigues B CaudyArgentinaIvan Magalhaes RENEWAL
Chavez X RoysterGermanyStephen Shaw PROPOSAL
Ivar D RutaFranceAmy Elsner NEW
Julie T OstroskyItalyAmy Elsner PROPOSAL
Kaitlin B ChuiRussiaAnna Fali QUALIFIED
Juan G RoysterGermanyIoni Bowcher UNQUALIFIED
Jones O StensethSpainStephen Shaw RENEWAL
Jeanfrancois S GlickUnited KingdomXuxue Feng NEW
Murillo D FollerFranceIoni Bowcher RENEWAL
James I MorascaSpainXuxue Feng UNQUALIFIED
Rodrigues F FerenczAustraliaIvan Magalhaes PROPOSAL
Izzy R DarakjyRussiaOnyama Limba QUALIFIED
Izzy Q StockhamFranceAnna Fali NEW
Smith V StensethJapanAsiya Javayant QUALIFIED
James G MaletFranceBernardo Dominic QUALIFIED
Maisha F NestleAustraliaOnyama Limba PROPOSAL
Mujtaba U NickaBrazilBernardo Dominic PROPOSAL
Clifford W MorascaRussiaBernardo Dominic NEGOTIATION
Misaki Q ChuiIndiaElwin Sharvill NEW
Arvin Z ChuiAustraliaStephen Shaw UNQUALIFIED
Leon R IturbideSpainOnyama Limba UNQUALIFIED
Jefferson T NickaSpainAsiya Javayant RENEWAL
Francesco D FigeroaSpainIoni Bowcher NEW
Nicolas G CampainAustraliaStephen Shaw QUALIFIED
Julie Z GauchoRussiaAmy Elsner RENEWAL
Greenwood S PerinSpainStephen Shaw RENEWAL
Claire O VenereSpainAsiya Javayant NEGOTIATION
Emily A AlbaresCanadaOnyama Limba PROPOSAL
Nicolas U NickaArgentinaXuxue Feng NEW
Octavia D MaletArgentinaIvan Magalhaes NEGOTIATION
Julie O StensethBrazilBernardo Dominic QUALIFIED
Alejandro R GlickIndiaOnyama Limba QUALIFIED
Claire O WaycottAustraliaOnyama Limba UNQUALIFIED
Julie K PaprockiIndiaStephen Shaw NEGOTIATION
Misaki G NestleCanadaXuxue Feng NEW
Munro K SergiJapanXuxue Feng RENEWAL
David Z BologniaRussiaXuxue Feng NEGOTIATION
Ricardo K DoeSpainAsiya Javayant NEW
Mayumi O DilliardItalyAsiya Javayant NEGOTIATION
Claire Y WaycottBrazilIoni Bowcher UNQUALIFIED
Silvio L StockhamJapanIoni Bowcher UNQUALIFIED
Octavia F BriddickUnited KingdomBernardo Dominic UNQUALIFIED
Aruna Q AmigonArgentinaAmy Elsner NEGOTIATION
Darci T SergiBrazilAmy Elsner NEGOTIATION
Kadeem Z WieserIndiaXuxue Feng QUALIFIED
Francesco K InouyeBrazilAmy Elsner RENEWAL
Kaitlin H RimIndiaIoni Bowcher RENEWAL
Frozen Columns
Name
Johnson C Briddick
Rodrigues N Amigon
Tony B Stockham
Chavez R Shinko
Deepesh D Nicka
Darci U Malet
Chavez P Nicka
Ricardo D Poquette
Silvio Q Whobrey
Kaitlin O Saylors
Leon C Albares
Cody E Nestle
Costa U Tollner
Mujtaba D Nicka
Claire W Stockham
Munro Y Bowley
Faith Y Perin
Kaitlin I Wieser
David E Stockham
Morrow M Malet
Kaitlin V Campain
Chavez U Gillian
Wickens O Butt
James Y Albares
Aruna V Stenseth
Aika P Poquette
Izzy L Rim
Stacey V Gaucho
Misaki D Caldarera
Rodrigues J Caudy
Faith F Butt
Emily H Stenseth
Ashley N Rulapaugh
Francesco D Oldroyd
Costa T Kolmetz
Jennifer K Briddick
Adams W Albares
Murillo N Garufi
Darci R Flosi
Maria D Slusarski
Jennifer P Whobrey
Maria A Briddick
Kadeem A Kusko
Faith S Ferencz
Sinclair F Nestle
Kadeem R Inouye
James O Ruta
Kaitlin J Dilliard
Leon I Gillian
Jennifer P Darakjy
IdCountryDate
1000Brazil2026-04-24
1001Brazil2026-05-05
1002Spain2026-05-18
1003Russia2026-04-25
1004India2026-05-04
1005Spain2026-05-09
1006Spain2026-05-07
1007Germany2026-05-17
1008India2026-05-14
1009Japan2026-05-15
1010Russia2026-05-02
1011Germany2026-05-15
1012India2026-05-23
1013Argentina2026-05-04
1014Argentina2026-04-28
1015Canada2026-05-20
1016India2026-05-18
1017United Kingdom2026-05-12
1018Argentina2026-05-21
1019Spain2026-04-27
1020Spain2026-05-19
1021Russia2026-04-26
1022Australia2026-05-10
1023Russia2026-05-07
1024United Kingdom2026-05-11
1025France2026-05-21
1026Russia2026-05-14
1027France2026-05-17
1028France2026-05-05
1029Brazil2026-05-23
1030India2026-05-22
1031Italy2026-04-26
1032Japan2026-05-14
1033Australia2026-05-21
1034United Kingdom2026-05-12
1035Japan2026-05-12
1036Brazil2026-05-20
1037Italy2026-05-22
1038France2026-05-17
1039Russia2026-05-04
1040Australia2026-05-23
1041France2026-05-22
1042Italy2026-05-10
1043Russia2026-05-20
1044Canada2026-05-14
1045United Kingdom2026-04-28
1046Canada2026-05-13
1047Argentina2026-05-09
1048Italy2026-05-15
1049Spain2026-05-19

On-Demand Data

NameIdCountryDate
Isabel G Nestle1000Spain2026-05-11
Cody W Tollner1001United Kingdom2026-05-21
Cody L Vocelka1002India2026-05-05
Murillo G Wieser1003Spain2026-05-13
Morrow O Malet1004Japan2026-05-19
Juan Z Rulapaugh1005India2026-05-09
Alejandro I Sergi1006Brazil2026-05-22
Misaki B Kusko1007Brazil2026-05-10
Darci W Rim1008Spain2026-05-08
Mujtaba Y Oldroyd1009Brazil2026-04-29
Octavia K Bowley1010Japan2026-05-15
Darci G Gaucho1011France2026-05-04
Rodrigues U Gaucho1012United Kingdom2026-05-20
Costa O Nicka1013Japan2026-05-01
Antonio N Darakjy1014Brazil2026-05-12
Emily P Tollner1015Italy2026-04-30
Misaki M Figeroa1016Brazil2026-05-11
Greenwood Z Dilliard1017Japan2026-05-17
Julie O Flosi1018Italy2026-05-10
Munro X Kolmetz1019Russia2026-05-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie A TollnerUnited KingdomXuxue Feng QUALIFIED
Alejandro P BriddickAustraliaAsiya Javayant PROPOSAL
Octavia Y CampainAustraliaStephen Shaw UNQUALIFIED
Jennifer B RutaCanadaElwin Sharvill PROPOSAL
Deepesh O DilliardCanadaIoni Bowcher RENEWAL
Wickens S FollerGermanyIoni Bowcher PROPOSAL
Jennifer N AmigonFranceStephen Shaw UNQUALIFIED
Nicolas Y CaudyAustraliaStephen Shaw QUALIFIED
Morrow E FollerJapanXuxue Feng RENEWAL
Emily W RoysterItalyElwin Sharvill PROPOSAL
Nicolas T SlusarskiArgentinaXuxue Feng UNQUALIFIED
Kaitlin F GarufiBrazilOnyama Limba PROPOSAL
Arvin G MacleadRussiaBernardo Dominic NEGOTIATION
Octavia X RoysterIndiaOnyama Limba UNQUALIFIED
Francesco F FerenczRussiaXuxue Feng NEW
Octavia F AlbaresGermanyAnna Fali QUALIFIED
Izzy W WieserSpainStephen Shaw RENEWAL
Stacey P CampainIndiaIoni Bowcher RENEWAL
Ricardo A StensethRussiaAsiya Javayant NEW
Ricardo P GauchoCanadaAmy Elsner NEGOTIATION
Silvio O KolmetzJapanOnyama Limba NEW
Stacey Y MaletRussiaXuxue Feng NEGOTIATION
Aditya A BowleyJapanIoni Bowcher QUALIFIED
Jefferson Y NestleFranceAnna Fali NEW
Stacey J RulapaughRussiaIoni Bowcher RENEWAL
Jeanfrancois I PerinSpainIvan Magalhaes QUALIFIED
Johnson X ShinkoJapanBernardo Dominic QUALIFIED
Greenwood C TollnerItalyAsiya Javayant NEGOTIATION
Nicolas L StockhamRussiaElwin Sharvill QUALIFIED
Maisha Q FollerCanadaAsiya Javayant NEGOTIATION
Kaitlin M CaudyFranceOnyama Limba NEW
Leon R ChuiAustraliaXuxue Feng UNQUALIFIED
Smith T FigeroaGermanyIvan Magalhaes QUALIFIED
Smith U GauchoIndiaAmy Elsner NEW
Izzy H WieserRussiaIvan Magalhaes NEGOTIATION
Julie W BologniaItalyElwin Sharvill NEGOTIATION
Misaki M NestleJapanBernardo Dominic PROPOSAL
Aruna R InouyeJapanAnna Fali QUALIFIED
Aditya H PerinRussiaBernardo Dominic QUALIFIED
Johnson X RutaItalyAsiya Javayant NEW

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