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
Chavez S OstroskyArgentinaIvan Magalhaes PROPOSAL
Greenwood Y StensethItalyIvan Magalhaes RENEWAL
Francesco K CaldareraArgentinaIvan Magalhaes NEGOTIATION
Jeanfrancois W IturbideCanadaIoni Bowcher QUALIFIED
Stacey O RimSpainAnna Fali QUALIFIED
Munro L KuskoBrazilElwin Sharvill PROPOSAL
Arvin O NestleUnited KingdomIoni Bowcher NEGOTIATION
Rodrigues G BologniaItalyStephen Shaw NEGOTIATION
James Z RoysterAustraliaAmy Elsner RENEWAL
Leon G AlbaresArgentinaOnyama Limba QUALIFIED
Tony M DoeCanadaAsiya Javayant QUALIFIED
Mujtaba Y CaudyIndiaXuxue Feng QUALIFIED
Darci U SergiItalyAmy Elsner RENEWAL
Jennifer B AlbaresUnited KingdomAsiya Javayant RENEWAL
Cody T WhobreyCanadaIvan Magalhaes NEGOTIATION
David D NestleItalyAsiya Javayant PROPOSAL
Leon R FerenczGermanyAmy Elsner PROPOSAL
Izzy O IturbideJapanElwin Sharvill PROPOSAL
Maria S ChuiUnited KingdomAmy Elsner NEGOTIATION
Smith I VocelkaRussiaXuxue Feng NEGOTIATION
James P DarakjyIndiaAsiya Javayant RENEWAL
Isabel X CampainArgentinaAsiya Javayant RENEWAL
Maisha K AlbaresArgentinaXuxue Feng UNQUALIFIED
Emily N TollnerAustraliaAnna Fali NEW
Adams E ShinkoArgentinaElwin Sharvill PROPOSAL
Kaitlin X OstroskyUnited KingdomIvan Magalhaes NEW
Francesco E MaletFranceAsiya Javayant QUALIFIED
Mayumi R ChuiSpainXuxue Feng RENEWAL
Izzy R SlusarskiSpainElwin Sharvill UNQUALIFIED
Salvatore G CampainItalyIoni Bowcher NEGOTIATION
Jeanfrancois B CampainArgentinaBernardo Dominic NEW
Cody R FlosiGermanyXuxue Feng UNQUALIFIED
Johnson O AmigonIndiaOnyama Limba UNQUALIFIED
Ricardo C FigeroaItalyOnyama Limba QUALIFIED
Mujtaba W PoquetteArgentinaBernardo Dominic UNQUALIFIED
Jones E WieserJapanIvan Magalhaes PROPOSAL
Kadeem O VocelkaGermanyOnyama Limba PROPOSAL
Aika U GarufiBrazilElwin Sharvill RENEWAL
James V NickaAustraliaAnna Fali PROPOSAL
Izzy T SergiArgentinaElwin Sharvill NEW
James H ShinkoUnited KingdomIvan Magalhaes PROPOSAL
Jennifer E SchemmerCanadaElwin Sharvill NEW
Nicolas U GauchoUnited KingdomAmy Elsner PROPOSAL
Ricardo P BriddickUnited KingdomAmy Elsner NEGOTIATION
Jeanfrancois N KolmetzItalyIoni Bowcher PROPOSAL
Johnson N RoysterRussiaStephen Shaw QUALIFIED
Clifford C SchemmerArgentinaAsiya Javayant QUALIFIED
Murillo L StockhamFranceIvan Magalhaes NEGOTIATION
James N SergiJapanStephen Shaw NEW
Faith T FigeroaUnited KingdomOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Smith R VenereFranceIoni Bowcher NEW
Aruna C IturbideSpainIvan Magalhaes QUALIFIED
Ashley C DoeCanadaStephen Shaw QUALIFIED
Emily G PaprockiArgentinaAsiya Javayant NEW
Leja U MaletJapanXuxue Feng NEGOTIATION
Tony H GarufiSpainElwin Sharvill NEGOTIATION
Ivar E GlickRussiaBernardo Dominic UNQUALIFIED
Deepesh L CaudyRussiaAmy Elsner QUALIFIED
Tony R WhobreyCanadaXuxue Feng PROPOSAL
Deepesh G ButtUnited KingdomOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika Y OldroydSpain2026-06-02Feltz Printing Service UNQUALIFIED62Bernardo Dominic
1001Maisha S BriddickCanada2026-05-18Dorl, James J Esq QUALIFIED3Xuxue Feng
1002Deepesh S FigeroaIndia2026-05-27Benton, John B Jr PROPOSAL7Amy Elsner
1003Wickens T NestleGermany2026-06-04Benton, John B Jr RENEWAL9Ivan Magalhaes
1004Chavez K SlusarskiBrazil2026-05-27Dorl, James J Esq NEW94Anna Fali
1005Jefferson P FlosiItaly2026-06-06Morlong Associates NEGOTIATION32Amy Elsner
1006Silvio R ChuiAustralia2026-05-17Feltz Printing Service PROPOSAL80Asiya Javayant
1007Stacey T GillianGermany2026-05-23Benton, John B Jr NEW4Ioni Bowcher
1008Kaitlin Q KuskoSpain2026-05-31Feiner Bros QUALIFIED80Ioni Bowcher
1009Jennifer U DoeArgentina2026-05-15Buckley Miller Wright NEGOTIATION12Ioni Bowcher
1010Arvin L WaycottSpain2026-05-25Rangoni Of Florence UNQUALIFIED40Amy Elsner
1011Octavia B SlusarskiCanada2026-05-15Chapman, Ross E Esq UNQUALIFIED63Onyama Limba
1012Misaki M WieserRussia2026-05-30Chemel, James L Cpa RENEWAL28Bernardo Dominic
1013Ivar G WieserJapan2026-05-12King, Christopher A Esq NEGOTIATION80Onyama Limba
1014Adams G FerenczArgentina2026-06-09Rangoni Of Florence NEW75Bernardo Dominic
1015Francesco E MorascaUnited Kingdom2026-05-13Feiner Bros NEGOTIATION33Onyama Limba
1016Adams Y WieserCanada2026-05-29Chanay, Jeffrey A Esq PROPOSAL11Elwin Sharvill
1017Aruna U WieserSpain2026-05-28Rousseaux, Michael Esq NEW97Ivan Magalhaes
1018Ashley G NickaGermany2026-06-09Chemel, James L Cpa QUALIFIED38Asiya Javayant
1019Jefferson Z GillianItaly2026-05-24Morlong Associates RENEWAL16Ioni Bowcher
1020Sinclair W RulapaughSpain2026-05-29Morlong Associates UNQUALIFIED72Asiya Javayant
1021Jennifer W MacleadSpain2026-05-27Benton, John B Jr NEW47Onyama Limba
1022Darci O FlosiGermany2026-06-04Feltz Printing Service UNQUALIFIED35Amy Elsner
1023Leja J CaudyGermany2026-05-31Truhlar And Truhlar Attys NEW4Asiya Javayant
1024Leja T RutaArgentina2026-06-06Feltz Printing Service NEGOTIATION62Onyama Limba
1025Arvin H IturbideCanada2026-05-16Commercial Press PROPOSAL42Xuxue Feng
1026James V VenereUnited Kingdom2026-05-12Chemel, James L Cpa PROPOSAL43Xuxue Feng
1027Munro M OstroskyFrance2026-05-12Feltz Printing Service UNQUALIFIED92Onyama Limba
1028Antonio G BriddickArgentina2026-05-25Chapman, Ross E Esq RENEWAL68Bernardo Dominic
1029Francesco T RoysterArgentina2026-05-25Dorl, James J Esq QUALIFIED32Amy Elsner
1030Munro P KolmetzBrazil2026-05-20Dorl, James J Esq UNQUALIFIED54Onyama Limba
1031Ashley N CampainRussia2026-05-16Truhlar And Truhlar Attys QUALIFIED48Amy Elsner
1032Aditya L RutaGermany2026-05-21Buckley Miller Wright RENEWAL45Asiya Javayant
1033Deepesh B RoysterGermany2026-05-20Truhlar And Truhlar Attys NEW99Ivan Magalhaes
1034Izzy S OldroydIndia2026-05-15Chapman, Ross E Esq NEGOTIATION68Elwin Sharvill
1035Julie N ShinkoBrazil2026-05-16Rousseaux, Michael Esq NEW93Ivan Magalhaes
1036Faith F PoquetteIndia2026-06-09Chapman, Ross E Esq RENEWAL78Onyama Limba
1037Stacey U FigeroaJapan2026-05-25Buckley Miller Wright QUALIFIED79Xuxue Feng
1038Juan D RimAustralia2026-05-29Truhlar And Truhlar Attys RENEWAL93Xuxue Feng
1039Greenwood A SergiArgentina2026-05-16King, Christopher A Esq NEGOTIATION69Onyama Limba
1040James T GlickJapan2026-05-27Benton, John B Jr NEGOTIATION60Asiya Javayant
1041Mujtaba X NickaFrance2026-05-13Printing Dimensions RENEWAL58Ioni Bowcher
1042Julie K RulapaughBrazil2026-06-07Truhlar And Truhlar Attys NEW98Elwin Sharvill
1043Maria Y SchemmerRussia2026-05-19Commercial Press RENEWAL55Elwin Sharvill
1044Julie T SaylorsGermany2026-06-05Rangoni Of Florence UNQUALIFIED55Asiya Javayant
1045Faith Y BowleyGermany2026-05-28Rousseaux, Michael Esq PROPOSAL46Stephen Shaw
1046Emily B SlusarskiUnited Kingdom2026-05-22Rousseaux, Michael Esq QUALIFIED15Elwin Sharvill
1047Isabel T SchemmerBrazil2026-05-19King, Christopher A Esq RENEWAL22Ioni Bowcher
1048Emily N CampainUnited Kingdom2026-06-06King, Christopher A Esq RENEWAL54Asiya Javayant
1049Wickens E DoeBrazil2026-05-22Morlong Associates PROPOSAL21Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Deepesh P MorascaIndiaOnyama Limba PROPOSAL
Costa R BowleyRussiaElwin Sharvill NEW
Cody O VocelkaAustraliaElwin Sharvill NEGOTIATION
Aika Q RoysterIndiaOnyama Limba NEW
Jones I VenereCanadaAnna Fali RENEWAL
Arvin J DilliardBrazilAsiya Javayant NEW
Kaitlin Q PerinFranceIoni Bowcher NEGOTIATION
Salvatore H GillianBrazilAmy Elsner NEW
Octavia Y KuskoItalyXuxue Feng UNQUALIFIED
Sinclair F MorascaJapanAsiya Javayant RENEWAL
Kadeem Y IturbideCanadaAsiya Javayant RENEWAL
Jennifer D MaletRussiaStephen Shaw RENEWAL
Antonio G PaprockiSpainAmy Elsner PROPOSAL
Antonio Z ShinkoAustraliaXuxue Feng UNQUALIFIED
Nicolas C NestleCanadaAnna Fali PROPOSAL
Cody Z MarrierCanadaXuxue Feng NEW
Misaki P GillianArgentinaXuxue Feng UNQUALIFIED
Claire L CampainItalyStephen Shaw NEW
Claire C CaldareraSpainIoni Bowcher RENEWAL
Maria C GauchoUnited KingdomElwin Sharvill UNQUALIFIED
Greenwood E ShinkoCanadaBernardo Dominic NEGOTIATION
Costa I SaylorsIndiaAmy Elsner NEGOTIATION
Emily X RutaUnited KingdomAsiya Javayant QUALIFIED
Misaki L AlbaresArgentinaBernardo Dominic PROPOSAL
Ashley Z DilliardBrazilIoni Bowcher PROPOSAL
Ricardo T AmigonItalyIvan Magalhaes PROPOSAL
Cody B RulapaughArgentinaAnna Fali QUALIFIED
Arvin R RoysterFranceIvan Magalhaes UNQUALIFIED
Darci E AlbaresSpainStephen Shaw UNQUALIFIED
Johnson L GillianIndiaAnna Fali PROPOSAL
Ivar V MaletCanadaAsiya Javayant NEGOTIATION
David F PerinBrazilAnna Fali RENEWAL
Morrow G OldroydIndiaAsiya Javayant QUALIFIED
Leja A KuskoJapanBernardo Dominic NEGOTIATION
Alejandro J SergiIndiaOnyama Limba NEW
Kadeem L SaylorsSpainBernardo Dominic NEW
Aika E FigeroaFranceElwin Sharvill UNQUALIFIED
Murillo T WieserFranceOnyama Limba NEGOTIATION
Cody Z OstroskyIndiaElwin Sharvill UNQUALIFIED
Darci C PoquetteItalyAnna Fali NEGOTIATION
Costa E ChuiUnited KingdomIoni Bowcher RENEWAL
Mujtaba Z StockhamGermanyIoni Bowcher RENEWAL
Maria K RoysterItalyXuxue Feng RENEWAL
Jeanfrancois S VenereSpainIoni Bowcher PROPOSAL
Jefferson L DilliardFranceXuxue Feng UNQUALIFIED
Aditya D WaycottArgentinaOnyama Limba RENEWAL
Maria Y DoeIndiaIvan Magalhaes PROPOSAL
Silvio F MarrierJapanIvan Magalhaes UNQUALIFIED
Deepesh J MacleadAustraliaIvan Magalhaes NEW
Chavez H ChuiJapanStephen Shaw NEW
Frozen Columns
Name
Sinclair M Poquette
Kaitlin O Albares
Jones U Paprocki
Jones W Stenseth
Darci L Foller
Costa G Garufi
Deepesh Z Amigon
Tony C Poquette
Maisha A Sergi
Mayumi J Darakjy
Clifford C Butt
Maria A Kolmetz
Darci T Malet
Maisha I Shinko
Isabel L Poquette
Ricardo L Gaucho
Nicolas A Darakjy
Johnson T Malet
James U Royster
Adams K Shinko
Aruna I Kusko
Isabel K Poquette
Jones A Rulapaugh
Murillo Q Iturbide
Rodrigues V Caldarera
Emily X Tollner
Faith J Ruta
Emily A Inouye
Arvin V Foller
Costa L Caldarera
Mayumi I Foller
Sinclair Q Kusko
Ivar G Kolmetz
Ivar R Stenseth
Jefferson D Waycott
Claire V Nestle
Ricardo G Doe
Ricardo X Dilliard
Kaitlin X Flosi
Costa V Amigon
Maisha S Doe
Octavia Q Gaucho
Juan E Sergi
Morrow X Slusarski
Maria J Nicka
Rodrigues P Malet
Emily J Rim
James L Morasca
Nicolas F Vocelka
Ivar Z Bolognia
IdCountryDate
1000Italy2026-05-25
1001Australia2026-05-22
1002Japan2026-05-25
1003Germany2026-05-17
1004Japan2026-05-30
1005Spain2026-06-06
1006Italy2026-06-02
1007Russia2026-05-15
1008Spain2026-05-18
1009Brazil2026-05-29
1010France2026-06-02
1011Spain2026-06-07
1012India2026-06-08
1013Australia2026-05-28
1014Brazil2026-06-04
1015Australia2026-05-30
1016Brazil2026-06-05
1017Italy2026-06-04
1018Brazil2026-05-21
1019Argentina2026-06-06
1020Canada2026-05-27
1021India2026-05-29
1022Australia2026-05-24
1023Brazil2026-06-06
1024Germany2026-05-28
1025India2026-05-30
1026Australia2026-05-26
1027India2026-05-30
1028Russia2026-05-31
1029Brazil2026-05-25
1030Spain2026-05-15
1031United Kingdom2026-05-17
1032Australia2026-05-22
1033Germany2026-06-06
1034United Kingdom2026-05-21
1035Japan2026-05-26
1036Canada2026-05-12
1037Brazil2026-06-06
1038Brazil2026-06-06
1039United Kingdom2026-06-10
1040Italy2026-05-20
1041Russia2026-06-05
1042Japan2026-06-08
1043United Kingdom2026-05-16
1044Australia2026-05-30
1045Germany2026-05-21
1046Germany2026-05-25
1047United Kingdom2026-05-20
1048Spain2026-06-07
1049United Kingdom2026-05-19

On-Demand Data

NameIdCountryDate
Clifford H Venere1000United Kingdom2026-05-19
Juan B Paprocki1001Japan2026-06-05
Leon U Bolognia1002France2026-05-17
James E Iturbide1003Russia2026-05-13
Ivar Q Ferencz1004Brazil2026-05-26
Leja L Dilliard1005Germany2026-05-14
Ivar U Garufi1006Japan2026-05-16
Greenwood O Chui1007United Kingdom2026-06-07
Smith Y Briddick1008Russia2026-05-27
Leja L Kusko1009Australia2026-06-01
Johnson S Tollner1010Japan2026-05-12
Alejandro K Butt1011United Kingdom2026-06-01
Arvin R Briddick1012Argentina2026-06-08
Ashley Y Rim1013Argentina2026-05-24
Francesco A Wieser1014United Kingdom2026-06-07
Juan W Vocelka1015Brazil2026-05-26
Rodrigues S Malet1016Italy2026-06-03
Adams D Stenseth1017United Kingdom2026-05-26
Adams P Morasca1018Italy2026-05-30
Cody K Shinko1019India2026-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin H SergiBrazilIvan Magalhaes NEGOTIATION
Kaitlin C VenereFranceXuxue Feng PROPOSAL
Maria T ChuiRussiaAmy Elsner NEGOTIATION
David Y GarufiAustraliaXuxue Feng UNQUALIFIED
Ricardo O FollerFranceAnna Fali QUALIFIED
Octavia Y PerinItalyXuxue Feng NEW
Munro C WhobreySpainStephen Shaw NEGOTIATION
Greenwood F InouyeAustraliaIoni Bowcher UNQUALIFIED
Adams Q CaudyIndiaElwin Sharvill QUALIFIED
Isabel L GillianFranceStephen Shaw UNQUALIFIED
Salvatore F IturbideItalyAsiya Javayant UNQUALIFIED
Arvin S CaudyGermanyAnna Fali UNQUALIFIED
Aika L WaycottBrazilIoni Bowcher UNQUALIFIED
Misaki T KuskoBrazilXuxue Feng UNQUALIFIED
Alejandro P VocelkaGermanyOnyama Limba UNQUALIFIED
Rodrigues V IturbideIndiaIoni Bowcher RENEWAL
Mayumi D SchemmerCanadaXuxue Feng QUALIFIED
Nicolas C OldroydSpainXuxue Feng RENEWAL
Arvin Z ButtCanadaStephen Shaw UNQUALIFIED
Aditya Y MaletCanadaXuxue Feng NEGOTIATION
Alejandro H MaletRussiaAnna Fali NEW
Rodrigues K KolmetzCanadaStephen Shaw NEW
Isabel F VenereSpainElwin Sharvill UNQUALIFIED
Johnson B OstroskyGermanyAnna Fali NEW
Misaki E VenereCanadaIoni Bowcher UNQUALIFIED
Rodrigues Z GlickIndiaIoni Bowcher NEGOTIATION
Deepesh V BowleyBrazilElwin Sharvill PROPOSAL
Jeanfrancois A SaylorsAustraliaIoni Bowcher RENEWAL
Morrow X PaprockiCanadaIoni Bowcher RENEWAL
Wickens Y GarufiGermanyXuxue Feng NEW
Murillo I ButtIndiaAmy Elsner PROPOSAL
Arvin V MaletJapanAmy Elsner NEW
Ricardo R OstroskyGermanyAmy Elsner NEGOTIATION
David T VocelkaJapanBernardo Dominic NEGOTIATION
Murillo F FlosiGermanyOnyama Limba UNQUALIFIED
James X OldroydJapanXuxue Feng QUALIFIED
Darci R MorascaJapanIoni Bowcher UNQUALIFIED
Deepesh L CaudyUnited KingdomBernardo Dominic NEW
Julie Y FerenczAustraliaAnna Fali QUALIFIED
Jefferson E OstroskyItalyBernardo Dominic QUALIFIED

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