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
Silvio O MorascaJapanStephen Shaw QUALIFIED
Misaki P AlbaresAustraliaStephen Shaw NEGOTIATION
Mujtaba L AlbaresJapanAnna Fali NEW
Ashley N FlosiUnited KingdomAnna Fali UNQUALIFIED
Ashley M FerenczCanadaIoni Bowcher NEGOTIATION
Sinclair V DarakjyIndiaIvan Magalhaes NEW
Wickens H RutaRussiaIoni Bowcher PROPOSAL
Johnson H MacleadCanadaXuxue Feng RENEWAL
Julie B GlickBrazilIoni Bowcher NEGOTIATION
Jones X WieserRussiaAsiya Javayant RENEWAL
Greenwood N InouyeAustraliaAsiya Javayant NEW
Adams W NestleItalyAmy Elsner PROPOSAL
Aruna Q SergiAustraliaAsiya Javayant NEGOTIATION
Octavia W CaldareraUnited KingdomOnyama Limba RENEWAL
Octavia L GlickGermanyElwin Sharvill UNQUALIFIED
Tony G CaudyAustraliaIoni Bowcher QUALIFIED
Morrow M BriddickSpainAmy Elsner PROPOSAL
Julie M BologniaBrazilStephen Shaw QUALIFIED
Julie C MacleadBrazilIvan Magalhaes UNQUALIFIED
Salvatore Z OstroskyItalyAsiya Javayant NEW
Johnson D KuskoSpainAmy Elsner PROPOSAL
Stacey C DoeAustraliaAsiya Javayant NEW
Cody N StockhamRussiaXuxue Feng UNQUALIFIED
Ricardo J OstroskyRussiaOnyama Limba PROPOSAL
Mujtaba J WhobreyJapanBernardo Dominic RENEWAL
Emily Y VenereGermanyIvan Magalhaes NEW
Cody S PerinJapanIoni Bowcher UNQUALIFIED
Maisha W WieserArgentinaStephen Shaw PROPOSAL
Mujtaba V VocelkaRussiaOnyama Limba NEW
Aruna Q VocelkaCanadaAsiya Javayant QUALIFIED
Johnson H SchemmerArgentinaStephen Shaw NEGOTIATION
Deepesh Z FerenczRussiaStephen Shaw PROPOSAL
Sinclair Q StockhamFranceAnna Fali RENEWAL
Arvin K NestleRussiaXuxue Feng NEGOTIATION
Deepesh N RoysterAustraliaAmy Elsner NEGOTIATION
Jennifer Y BowleyJapanAmy Elsner QUALIFIED
Costa I SergiItalyAnna Fali UNQUALIFIED
Jennifer B WieserItalyIoni Bowcher QUALIFIED
Juan M GillianSpainBernardo Dominic QUALIFIED
Nicolas A BowleySpainStephen Shaw PROPOSAL
Juan S ChuiFranceAsiya Javayant NEW
Costa B RutaFranceIoni Bowcher UNQUALIFIED
Munro U WieserFranceOnyama Limba UNQUALIFIED
Salvatore F DarakjyCanadaIvan Magalhaes UNQUALIFIED
Ricardo C BowleySpainElwin Sharvill UNQUALIFIED
Ashley I WhobreyArgentinaXuxue Feng RENEWAL
Kadeem H GarufiSpainAnna Fali RENEWAL
Chavez A CaudyCanadaElwin Sharvill RENEWAL
Smith N DilliardJapanXuxue Feng PROPOSAL
Clifford Q MorascaUnited KingdomAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Adams D ButtAustraliaAnna Fali PROPOSAL
Aditya K ChuiGermanyIvan Magalhaes QUALIFIED
Jefferson L AlbaresAustraliaElwin Sharvill QUALIFIED
Jones W WieserCanadaElwin Sharvill RENEWAL
Salvatore M ChuiAustraliaIvan Magalhaes PROPOSAL
Kadeem H DarakjyGermanyIoni Bowcher UNQUALIFIED
James B BriddickIndiaIvan Magalhaes NEW
Rodrigues R DarakjyAustraliaBernardo Dominic RENEWAL
Emily W KolmetzFranceIvan Magalhaes PROPOSAL
Francesco E BowleyIndiaStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo X SlusarskiGermany2026-05-14Commercial Press NEGOTIATION56Anna Fali
1001Silvio P WieserUnited Kingdom2026-05-05Chemel, James L Cpa NEW67Ioni Bowcher
1002Cody D TollnerItaly2026-05-30Buckley Miller Wright QUALIFIED2Asiya Javayant
1003Murillo P RimArgentina2026-05-14Truhlar And Truhlar Attys PROPOSAL71Stephen Shaw
1004Isabel A RimIndia2026-05-22Morlong Associates NEGOTIATION77Asiya Javayant
1005Juan B MorascaUnited Kingdom2026-05-18Rangoni Of Florence NEW30Anna Fali
1006Aruna E StensethUnited Kingdom2026-05-14Chanay, Jeffrey A Esq NEGOTIATION43Anna Fali
1007Adams R MorascaUnited Kingdom2026-05-15King, Christopher A Esq PROPOSAL50Elwin Sharvill
1008Wickens I GarufiUnited Kingdom2026-05-19Morlong Associates NEW36Ioni Bowcher
1009Costa I MaletFrance2026-06-01Chapman, Ross E Esq RENEWAL67Ioni Bowcher
1010Aruna U MaletIndia2026-05-29Commercial Press PROPOSAL8Xuxue Feng
1011Jefferson Z StensethSpain2026-05-21Printing Dimensions NEGOTIATION16Xuxue Feng
1012Ivar I ShinkoSpain2026-05-28Rousseaux, Michael Esq NEGOTIATION34Asiya Javayant
1013Juan J FlosiCanada2026-05-14Feltz Printing Service QUALIFIED48Xuxue Feng
1014Kaitlin K PerinUnited Kingdom2026-05-03Dorl, James J Esq RENEWAL53Xuxue Feng
1015Rodrigues M AmigonRussia2026-05-09Chapman, Ross E Esq PROPOSAL26Bernardo Dominic
1016Costa A CaudyUnited Kingdom2026-05-19Rangoni Of Florence NEGOTIATION0Elwin Sharvill
1017Cody M InouyeArgentina2026-06-01Truhlar And Truhlar Attys NEGOTIATION4Stephen Shaw
1018James L FollerItaly2026-05-06King, Christopher A Esq NEW43Onyama Limba
1019Misaki H MarrierRussia2026-05-27Buckley Miller Wright PROPOSAL83Ivan Magalhaes
1020Morrow K SlusarskiCanada2026-05-12Chemel, James L Cpa UNQUALIFIED30Xuxue Feng
1021Mayumi T AmigonCanada2026-05-07Chemel, James L Cpa NEW68Bernardo Dominic
1022Tony Y GillianIndia2026-05-30Feiner Bros NEW64Stephen Shaw
1023Cody L GarufiIndia2026-05-08Morlong Associates QUALIFIED81Amy Elsner
1024Adams T KuskoArgentina2026-05-04Feiner Bros UNQUALIFIED29Bernardo Dominic
1025Faith H CaudyRussia2026-05-11Chanay, Jeffrey A Esq PROPOSAL24Onyama Limba
1026Alejandro V PerinJapan2026-05-09Chanay, Jeffrey A Esq UNQUALIFIED17Elwin Sharvill
1027Nicolas P GarufiSpain2026-05-08Benton, John B Jr QUALIFIED48Stephen Shaw
1028Morrow L NestleIndia2026-05-18Dorl, James J Esq UNQUALIFIED27Amy Elsner
1029Aditya M WaycottUnited Kingdom2026-05-30Chapman, Ross E Esq UNQUALIFIED35Ioni Bowcher
1030Darci H BriddickAustralia2026-05-09Chanay, Jeffrey A Esq QUALIFIED48Elwin Sharvill
1031Julie M NestleItaly2026-05-19Commercial Press QUALIFIED88Xuxue Feng
1032Mayumi Y PerinJapan2026-05-07Feltz Printing Service NEW40Anna Fali
1033Faith F RimGermany2026-06-01Benton, John B Jr NEGOTIATION92Ivan Magalhaes
1034Silvio I ButtRussia2026-05-21Commercial Press UNQUALIFIED67Onyama Limba
1035Antonio E StensethIndia2026-05-27Chemel, James L Cpa UNQUALIFIED40Anna Fali
1036Maisha F DoeAustralia2026-05-31Morlong Associates UNQUALIFIED5Xuxue Feng
1037Ricardo S OldroydBrazil2026-05-06Chanay, Jeffrey A Esq RENEWAL6Amy Elsner
1038Silvio S BriddickIndia2026-05-07Truhlar And Truhlar Attys PROPOSAL76Asiya Javayant
1039Ivar N KuskoArgentina2026-05-18Rousseaux, Michael Esq QUALIFIED83Bernardo Dominic
1040Morrow S FlosiSpain2026-05-11Chanay, Jeffrey A Esq NEGOTIATION45Elwin Sharvill
1041Ashley T RoysterBrazil2026-05-03King, Christopher A Esq QUALIFIED61Xuxue Feng
1042Faith J WieserGermany2026-05-19Rangoni Of Florence RENEWAL13Stephen Shaw
1043Smith I NestleSpain2026-05-14Dorl, James J Esq NEW49Ivan Magalhaes
1044Adams R ShinkoSpain2026-05-15Morlong Associates NEW56Amy Elsner
1045James O ButtBrazil2026-05-09Dorl, James J Esq NEW66Ivan Magalhaes
1046Octavia D CaldareraArgentina2026-05-31Morlong Associates UNQUALIFIED98Amy Elsner
1047Octavia I VocelkaJapan2026-05-24Feiner Bros NEW48Ioni Bowcher
1048Ricardo E SaylorsGermany2026-05-13Feltz Printing Service RENEWAL40Ivan Magalhaes
1049Aika H BologniaJapan2026-05-25Truhlar And Truhlar Attys NEGOTIATION28Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
James H FigeroaSpainIvan Magalhaes PROPOSAL
Misaki W WhobreyUnited KingdomElwin Sharvill NEGOTIATION
Jeanfrancois W RoysterRussiaAsiya Javayant NEGOTIATION
Leja U InouyeUnited KingdomXuxue Feng NEGOTIATION
Juan H StockhamBrazilXuxue Feng NEGOTIATION
Clifford S GillianArgentinaStephen Shaw PROPOSAL
Ivar K PoquetteAustraliaOnyama Limba UNQUALIFIED
Leja P FigeroaCanadaStephen Shaw RENEWAL
Claire Q BowleyJapanAmy Elsner RENEWAL
Jefferson H BologniaFranceAsiya Javayant UNQUALIFIED
Wickens X BologniaUnited KingdomAsiya Javayant QUALIFIED
Murillo E DoeRussiaAsiya Javayant NEGOTIATION
Ashley G RoysterSpainIoni Bowcher PROPOSAL
Misaki J DarakjyAustraliaOnyama Limba NEW
Maisha W FigeroaFranceStephen Shaw QUALIFIED
Antonio Q WieserJapanElwin Sharvill PROPOSAL
Chavez J FlosiAustraliaAsiya Javayant UNQUALIFIED
Stacey C MaletSpainAmy Elsner NEGOTIATION
Juan Z CampainItalyStephen Shaw RENEWAL
Sinclair H RoysterBrazilAnna Fali NEGOTIATION
Ashley D SlusarskiRussiaAsiya Javayant NEW
Antonio C FerenczAustraliaBernardo Dominic NEW
David D FerenczUnited KingdomStephen Shaw QUALIFIED
Jennifer G ShinkoUnited KingdomIoni Bowcher NEW
Wickens M InouyeFranceAsiya Javayant NEW
Stacey P GarufiArgentinaXuxue Feng RENEWAL
Mayumi N MorascaRussiaOnyama Limba UNQUALIFIED
Rodrigues Z SlusarskiIndiaAnna Fali PROPOSAL
Clifford Q RulapaughCanadaOnyama Limba NEW
Salvatore K MaletJapanStephen Shaw PROPOSAL
James C PoquetteAustraliaIoni Bowcher UNQUALIFIED
Deepesh D MacleadFranceAnna Fali NEGOTIATION
Antonio S SergiSpainXuxue Feng QUALIFIED
Maisha E ShinkoUnited KingdomXuxue Feng QUALIFIED
Isabel I GarufiSpainAmy Elsner RENEWAL
Rodrigues A RutaGermanyAmy Elsner UNQUALIFIED
Silvio P RimItalyXuxue Feng NEW
Deepesh C OldroydSpainStephen Shaw QUALIFIED
Chavez T KolmetzCanadaBernardo Dominic RENEWAL
Isabel W AlbaresJapanOnyama Limba QUALIFIED
Rodrigues D VocelkaRussiaOnyama Limba PROPOSAL
Mujtaba K GillianItalyElwin Sharvill PROPOSAL
Sinclair M ChuiRussiaXuxue Feng PROPOSAL
Adams I StockhamFranceXuxue Feng UNQUALIFIED
Emily O WhobreyFranceAsiya Javayant RENEWAL
Aika T FigeroaItalyOnyama Limba PROPOSAL
Emily J SlusarskiFranceAnna Fali PROPOSAL
Greenwood Z InouyeAustraliaXuxue Feng QUALIFIED
Kadeem D DarakjyRussiaAmy Elsner QUALIFIED
Juan K GauchoAustraliaBernardo Dominic QUALIFIED
Frozen Columns
Name
Nicolas B Poquette
Darci K Bolognia
Juan G Malet
Costa E Whobrey
Alejandro I Chui
Faith A Darakjy
Ricardo G Amigon
Silvio I Nestle
Ricardo Q Iturbide
Ivar W Butt
Rodrigues X Schemmer
Murillo L Rim
James F Chui
Stacey M Kusko
Aika X Stockham
Aruna Q Maclead
Francesco Y Flosi
Misaki G Malet
Emily R Malet
Chavez Q Stenseth
Aika M Flosi
Aditya L Albares
Murillo C Ferencz
Sinclair J Rulapaugh
Julie X Nicka
Isabel T Glick
Adams K Nestle
Jones S Wieser
Jefferson A Rulapaugh
Morrow G Rim
Jefferson I Flosi
Greenwood E Glick
Nicolas D Maclead
Arvin D Amigon
Izzy K Garufi
Faith M Kolmetz
Jones D Briddick
Stacey J Nestle
Mayumi U Ostrosky
Octavia D Marrier
Greenwood A Waycott
Smith C Chui
Mujtaba B Morasca
Izzy C Caudy
Aditya Q Darakjy
Claire B Oldroyd
Wickens V Stockham
Johnson N Glick
Leja E Chui
Jeanfrancois B Campain
IdCountryDate
1000Spain2026-05-05
1001Brazil2026-05-20
1002Germany2026-05-13
1003Russia2026-05-03
1004Spain2026-05-20
1005Argentina2026-05-08
1006France2026-05-29
1007Canada2026-05-21
1008Canada2026-05-21
1009Argentina2026-05-30
1010France2026-05-13
1011Canada2026-05-14
1012Spain2026-05-04
1013Canada2026-05-31
1014Australia2026-05-31
1015United Kingdom2026-05-20
1016France2026-05-25
1017Spain2026-05-16
1018Australia2026-05-29
1019Germany2026-05-04
1020Japan2026-05-07
1021Argentina2026-05-07
1022Germany2026-05-25
1023Canada2026-05-20
1024Italy2026-06-01
1025Germany2026-05-23
1026Russia2026-06-01
1027India2026-05-30
1028Brazil2026-05-13
1029Australia2026-05-20
1030France2026-05-20
1031Canada2026-05-21
1032Canada2026-05-03
1033France2026-05-19
1034Japan2026-05-31
1035France2026-05-12
1036France2026-06-01
1037Brazil2026-05-15
1038United Kingdom2026-05-04
1039Japan2026-05-23
1040United Kingdom2026-05-20
1041Germany2026-05-20
1042Argentina2026-05-14
1043France2026-05-24
1044Australia2026-05-24
1045Russia2026-05-13
1046United Kingdom2026-05-10
1047Brazil2026-05-11
1048Australia2026-05-26
1049Argentina2026-05-13

On-Demand Data

NameIdCountryDate
Aditya N Maclead1000Germany2026-05-28
Faith U Campain1001France2026-05-08
Arvin M Nicka1002Canada2026-05-17
Darci H Stockham1003Spain2026-05-27
Claire H Albares1004Italy2026-05-03
Juan W Darakjy1005Australia2026-05-31
Juan G Figeroa1006France2026-05-05
Arvin X Malet1007Argentina2026-05-28
Kaitlin A Iturbide1008United Kingdom2026-05-08
Jennifer X Morasca1009Russia2026-05-20
Sinclair M Iturbide1010Russia2026-05-21
Antonio D Inouye1011Japan2026-05-18
David L Venere1012Germany2026-05-21
Deepesh R Ostrosky1013Canada2026-05-12
Tony N Nestle1014Argentina2026-05-17
Jefferson N Garufi1015Germany2026-05-26
Maisha Q Ostrosky1016Germany2026-05-16
Ivar M Dilliard1017Australia2026-05-15
Claire N Whobrey1018Germany2026-05-07
Deepesh A Morasca1019Germany2026-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson C FollerGermanyStephen Shaw NEW
Octavia P SergiBrazilBernardo Dominic UNQUALIFIED
Murillo G KuskoRussiaXuxue Feng UNQUALIFIED
Aruna X FerenczSpainXuxue Feng PROPOSAL
Leja I InouyeAustraliaXuxue Feng NEGOTIATION
Maisha Y StensethItalyBernardo Dominic QUALIFIED
Francesco P GlickUnited KingdomIoni Bowcher QUALIFIED
Greenwood O MacleadArgentinaXuxue Feng UNQUALIFIED
Julie K RutaItalyStephen Shaw RENEWAL
Faith R ShinkoUnited KingdomBernardo Dominic RENEWAL
Jennifer M VocelkaGermanyAsiya Javayant NEGOTIATION
Mayumi Z VocelkaJapanElwin Sharvill UNQUALIFIED
Maria X FerenczIndiaAsiya Javayant NEGOTIATION
Murillo Y WhobreyFranceOnyama Limba NEW
Jones A KolmetzBrazilXuxue Feng QUALIFIED
Chavez M OldroydAustraliaStephen Shaw UNQUALIFIED
Wickens Y RimUnited KingdomIoni Bowcher NEW
Aditya L BowleyArgentinaIvan Magalhaes RENEWAL
Johnson J InouyeBrazilAnna Fali PROPOSAL
Nicolas W ChuiSpainXuxue Feng RENEWAL
Silvio G NestleRussiaOnyama Limba QUALIFIED
Tony X ChuiIndiaStephen Shaw RENEWAL
Jeanfrancois E TollnerUnited KingdomIoni Bowcher RENEWAL
Arvin J CaldareraJapanElwin Sharvill NEW
Kadeem D PoquetteRussiaAmy Elsner UNQUALIFIED
Sinclair L ShinkoSpainAmy Elsner NEGOTIATION
Aditya X MarrierAustraliaBernardo Dominic RENEWAL
Stacey P CampainRussiaAnna Fali NEGOTIATION
Smith X StensethUnited KingdomOnyama Limba RENEWAL
Adams J PerinJapanIvan Magalhaes NEGOTIATION
Kaitlin G OldroydItalyIvan Magalhaes UNQUALIFIED
Emily Z IturbideArgentinaXuxue Feng NEW
Adams O SaylorsBrazilIoni Bowcher UNQUALIFIED
Greenwood Y PoquetteIndiaElwin Sharvill NEW
Munro K RulapaughGermanyAmy Elsner UNQUALIFIED
James M RoysterAustraliaOnyama Limba UNQUALIFIED
Mayumi N FigeroaRussiaOnyama Limba NEGOTIATION
Salvatore T AlbaresGermanyAsiya Javayant QUALIFIED
Isabel F BriddickUnited KingdomAmy Elsner UNQUALIFIED
Jones X FollerItalyBernardo Dominic 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.