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
James A FerenczAustraliaBernardo Dominic QUALIFIED
Faith S MorascaIndiaIoni Bowcher NEW
Isabel Z BologniaItalyBernardo Dominic QUALIFIED
Mujtaba Q MacleadUnited KingdomElwin Sharvill UNQUALIFIED
Aika D OstroskyRussiaIoni Bowcher QUALIFIED
Francesco E CampainJapanBernardo Dominic NEGOTIATION
Claire S DilliardBrazilIoni Bowcher QUALIFIED
James U ChuiRussiaIvan Magalhaes QUALIFIED
Johnson Q KolmetzAustraliaAsiya Javayant PROPOSAL
Tony P NestleArgentinaBernardo Dominic RENEWAL
Adams L ChuiAustraliaBernardo Dominic NEGOTIATION
Isabel N CampainFranceIvan Magalhaes NEGOTIATION
Cody T OstroskyCanadaXuxue Feng NEW
Deepesh M BologniaItalyIoni Bowcher RENEWAL
Francesco X OstroskyCanadaStephen Shaw PROPOSAL
Emily M PaprockiSpainBernardo Dominic PROPOSAL
Isabel I BriddickGermanyStephen Shaw PROPOSAL
Johnson M NickaArgentinaElwin Sharvill PROPOSAL
Morrow L MorascaJapanElwin Sharvill RENEWAL
Stacey A RoysterCanadaXuxue Feng QUALIFIED
Leja D FlosiFranceXuxue Feng NEGOTIATION
Claire L MarrierItalyXuxue Feng QUALIFIED
Mayumi H TollnerGermanyOnyama Limba PROPOSAL
Rodrigues N FerenczBrazilBernardo Dominic UNQUALIFIED
Maisha N StockhamRussiaAnna Fali NEW
Jeanfrancois N SlusarskiCanadaIvan Magalhaes NEW
Sinclair I RoysterFranceXuxue Feng UNQUALIFIED
Jennifer M SergiArgentinaIvan Magalhaes QUALIFIED
Kaitlin A GillianGermanyXuxue Feng UNQUALIFIED
Arvin V ButtIndiaXuxue Feng PROPOSAL
Smith U StockhamBrazilOnyama Limba UNQUALIFIED
Isabel K WieserFranceAmy Elsner UNQUALIFIED
Silvio F GarufiCanadaIoni Bowcher NEGOTIATION
Greenwood I VenereAustraliaBernardo Dominic RENEWAL
Kaitlin X PaprockiArgentinaOnyama Limba NEW
Stacey U InouyeItalyBernardo Dominic PROPOSAL
Izzy E MaletItalyBernardo Dominic PROPOSAL
Ricardo R StockhamItalyAnna Fali RENEWAL
Aruna Y DilliardJapanBernardo Dominic NEGOTIATION
Sinclair B StensethArgentinaAmy Elsner QUALIFIED
Antonio I FollerRussiaXuxue Feng UNQUALIFIED
Ashley T CampainSpainAnna Fali RENEWAL
Leon J CampainJapanIvan Magalhaes RENEWAL
Jeanfrancois G KolmetzUnited KingdomOnyama Limba RENEWAL
Emily Y RulapaughFranceXuxue Feng NEGOTIATION
Alejandro J MaletFranceAnna Fali PROPOSAL
Julie S StensethRussiaIvan Magalhaes NEGOTIATION
Antonio D AmigonArgentinaAsiya Javayant PROPOSAL
Mujtaba F MarrierSpainElwin Sharvill NEW
Mujtaba I KuskoAustraliaIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Chavez G DoeUnited KingdomElwin Sharvill UNQUALIFIED
Tony I RulapaughSpainOnyama Limba NEW
Stacey Y MaletItalyAnna Fali PROPOSAL
Antonio U WieserUnited KingdomElwin Sharvill UNQUALIFIED
Kaitlin Y RulapaughAustraliaElwin Sharvill NEGOTIATION
Juan I AlbaresCanadaElwin Sharvill UNQUALIFIED
Silvio Z OldroydIndiaElwin Sharvill NEW
Arvin U OstroskyGermanyXuxue Feng NEGOTIATION
Munro X RulapaughCanadaOnyama Limba NEGOTIATION
Octavia Z ShinkoJapanIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro Z MaletAustralia2026-03-08Benton, John B Jr UNQUALIFIED54Onyama Limba
1001Smith D MarrierItaly2026-03-12Chanay, Jeffrey A Esq PROPOSAL63Elwin Sharvill
1002Maria Q PerinAustralia2026-03-01Rousseaux, Michael Esq NEGOTIATION54Amy Elsner
1003Maria L SergiItaly2026-03-15Truhlar And Truhlar Attys QUALIFIED0Elwin Sharvill
1004Emily E BowleyFrance2026-02-19King, Christopher A Esq NEW31Asiya Javayant
1005Maisha H OstroskyFrance2026-02-16Commercial Press QUALIFIED9Anna Fali
1006Ivar J PerinItaly2026-02-22King, Christopher A Esq RENEWAL90Asiya Javayant
1007Adams I FerenczGermany2026-02-23Buckley Miller Wright PROPOSAL90Anna Fali
1008David N SaylorsIndia2026-03-01Feltz Printing Service QUALIFIED16Anna Fali
1009Morrow F FigeroaFrance2026-02-15Chemel, James L Cpa UNQUALIFIED36Elwin Sharvill
1010Faith Q VenereRussia2026-03-09King, Christopher A Esq QUALIFIED63Onyama Limba
1011Aika A MaletArgentina2026-03-13Truhlar And Truhlar Attys RENEWAL99Xuxue Feng
1012Clifford P ButtGermany2026-02-28Chemel, James L Cpa NEGOTIATION68Ivan Magalhaes
1013Jeanfrancois S StensethJapan2026-03-06Buckley Miller Wright RENEWAL29Onyama Limba
1014Greenwood W MorascaItaly2026-02-20Chanay, Jeffrey A Esq NEGOTIATION51Xuxue Feng
1015Antonio I DoeIndia2026-03-03Chanay, Jeffrey A Esq RENEWAL58Ivan Magalhaes
1016Izzy D DoeJapan2026-03-06Buckley Miller Wright NEW96Stephen Shaw
1017Rodrigues C OstroskyJapan2026-03-08Chapman, Ross E Esq UNQUALIFIED36Ioni Bowcher
1018Octavia N SaylorsGermany2026-03-07Chapman, Ross E Esq PROPOSAL32Elwin Sharvill
1019Smith E StockhamGermany2026-02-18Benton, John B Jr RENEWAL3Amy Elsner
1020Murillo Y IturbideSpain2026-03-02Feiner Bros RENEWAL13Anna Fali
1021Izzy R ButtItaly2026-02-26Feltz Printing Service NEGOTIATION44Bernardo Dominic
1022Costa Y OldroydJapan2026-02-24Rousseaux, Michael Esq NEW1Amy Elsner
1023Costa N ChuiAustralia2026-02-22Feltz Printing Service UNQUALIFIED67Amy Elsner
1024Izzy J VenereFrance2026-03-14Morlong Associates QUALIFIED81Elwin Sharvill
1025David H CaldareraGermany2026-03-01Truhlar And Truhlar Attys QUALIFIED13Elwin Sharvill
1026Nicolas V RoysterFrance2026-02-16Chapman, Ross E Esq PROPOSAL69Asiya Javayant
1027Antonio Z VenereBrazil2026-03-14Dorl, James J Esq NEW51Elwin Sharvill
1028David D GlickBrazil2026-02-14Rangoni Of Florence PROPOSAL27Elwin Sharvill
1029Arvin S MacleadJapan2026-03-09Chemel, James L Cpa RENEWAL8Ioni Bowcher
1030Silvio B NickaIndia2026-03-10Rousseaux, Michael Esq QUALIFIED7Ioni Bowcher
1031Ivar E PaprockiJapan2026-03-01Rousseaux, Michael Esq PROPOSAL72Ioni Bowcher
1032Alejandro S PaprockiGermany2026-03-10Benton, John B Jr NEW58Anna Fali
1033Kaitlin Y GlickUnited Kingdom2026-03-10Feltz Printing Service RENEWAL95Onyama Limba
1034Johnson R KuskoCanada2026-03-11Printing Dimensions NEW83Asiya Javayant
1035Misaki F RoysterBrazil2026-03-08Chemel, James L Cpa NEW76Xuxue Feng
1036Claire O PerinFrance2026-03-10Benton, John B Jr NEW97Ioni Bowcher
1037Julie J OldroydItaly2026-03-08King, Christopher A Esq UNQUALIFIED49Ioni Bowcher
1038Johnson X SlusarskiGermany2026-03-11Chanay, Jeffrey A Esq RENEWAL65Stephen Shaw
1039Costa M BowleyJapan2026-02-15Commercial Press RENEWAL99Asiya Javayant
1040Deepesh G OstroskyArgentina2026-02-14Feiner Bros NEGOTIATION86Bernardo Dominic
1041Deepesh L RimUnited Kingdom2026-03-11Rousseaux, Michael Esq RENEWAL81Stephen Shaw
1042Emily J RoysterIndia2026-02-17Morlong Associates NEW11Ivan Magalhaes
1043Ivar C KuskoFrance2026-03-06Printing Dimensions NEGOTIATION77Onyama Limba
1044Deepesh L MorascaArgentina2026-03-05Chapman, Ross E Esq PROPOSAL49Amy Elsner
1045Stacey W GarufiIndia2026-02-19Chapman, Ross E Esq RENEWAL9Bernardo Dominic
1046Kaitlin O RoysterUnited Kingdom2026-03-02Commercial Press NEW69Bernardo Dominic
1047Darci Z OstroskyFrance2026-02-22Printing Dimensions QUALIFIED19Stephen Shaw
1048Tony G MaletAustralia2026-03-05Rousseaux, Michael Esq NEGOTIATION3Stephen Shaw
1049Tony S FigeroaIndia2026-02-23Rangoni Of Florence RENEWAL3Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Leja X OldroydSpainAnna Fali RENEWAL
Julie Z FigeroaFranceOnyama Limba RENEWAL
Darci Z BriddickUnited KingdomIvan Magalhaes RENEWAL
Aditya Q OstroskyItalyAnna Fali PROPOSAL
Ivar Y RimUnited KingdomAsiya Javayant RENEWAL
Johnson K AmigonBrazilBernardo Dominic PROPOSAL
Alejandro J RulapaughBrazilElwin Sharvill QUALIFIED
Rodrigues V GillianArgentinaXuxue Feng RENEWAL
Aika R SchemmerCanadaAmy Elsner UNQUALIFIED
Ricardo W AlbaresAustraliaElwin Sharvill NEW
Isabel L ShinkoUnited KingdomOnyama Limba RENEWAL
Aika O FigeroaUnited KingdomAmy Elsner NEW
Ashley T FerenczGermanyAmy Elsner QUALIFIED
Aruna I AmigonArgentinaOnyama Limba NEGOTIATION
Ricardo I SaylorsUnited KingdomStephen Shaw UNQUALIFIED
Ashley C PerinUnited KingdomStephen Shaw UNQUALIFIED
Aika A SergiSpainAsiya Javayant RENEWAL
Stacey F DarakjyJapanOnyama Limba NEW
Salvatore O WieserGermanyXuxue Feng NEGOTIATION
Juan E GauchoUnited KingdomBernardo Dominic PROPOSAL
Deepesh C NickaJapanOnyama Limba QUALIFIED
Kaitlin H GlickJapanAsiya Javayant NEW
Ricardo R StensethCanadaIvan Magalhaes NEGOTIATION
Kaitlin F BologniaUnited KingdomElwin Sharvill NEW
Silvio E CampainBrazilIoni Bowcher PROPOSAL
Ricardo K IturbideUnited KingdomXuxue Feng NEW
Antonio T BowleyJapanAmy Elsner PROPOSAL
Francesco H AmigonFranceBernardo Dominic UNQUALIFIED
Izzy W MacleadAustraliaAmy Elsner NEW
Leja X ChuiAustraliaIvan Magalhaes UNQUALIFIED
Murillo U OstroskyIndiaIoni Bowcher PROPOSAL
Kadeem V BriddickAustraliaAmy Elsner NEGOTIATION
Mujtaba O KolmetzItalyIvan Magalhaes UNQUALIFIED
Kaitlin L NestleIndiaBernardo Dominic NEW
Francesco A BowleyIndiaXuxue Feng PROPOSAL
Antonio N IturbideIndiaXuxue Feng QUALIFIED
Ashley L NickaSpainOnyama Limba RENEWAL
Julie K MaletAustraliaOnyama Limba PROPOSAL
Stacey F RimRussiaOnyama Limba RENEWAL
David P KuskoBrazilIvan Magalhaes RENEWAL
Maria P VocelkaGermanyElwin Sharvill QUALIFIED
Morrow P FerenczArgentinaBernardo Dominic NEW
Salvatore Q VocelkaGermanyAmy Elsner RENEWAL
Leja I CaldareraArgentinaOnyama Limba NEGOTIATION
Cody K BowleyItalyXuxue Feng UNQUALIFIED
Aruna V SergiCanadaIvan Magalhaes QUALIFIED
Nicolas I PoquetteUnited KingdomAmy Elsner RENEWAL
Costa Q OstroskyBrazilOnyama Limba QUALIFIED
Isabel U GarufiGermanyOnyama Limba PROPOSAL
Mayumi M DilliardIndiaOnyama Limba QUALIFIED
Frozen Columns
Name
Kadeem Z Amigon
Cody Z Caldarera
Nicolas R Bolognia
Murillo P Maclead
Cody U Shinko
Johnson O Ostrosky
Rodrigues S Iturbide
Antonio R Figeroa
Kadeem B Doe
Costa D Figeroa
Sinclair C Gaucho
Adams G Wieser
Emily B Slusarski
Tony G Slusarski
Maria L Iturbide
Sinclair U Amigon
Jefferson G Paprocki
James V Butt
Jones L Tollner
Jennifer C Poquette
Misaki Z Briddick
Alejandro U Malet
Jeanfrancois M Poquette
Ricardo N Marrier
Sinclair X Ostrosky
Kaitlin E Paprocki
Emily X Poquette
Aika D Slusarski
Greenwood X Bolognia
Leja U Whobrey
Cody V Sergi
Leja X Royster
James G Flosi
Mujtaba D Caudy
Darci T Saylors
Munro H Nestle
Clifford O Waycott
Arvin Z Slusarski
Johnson I Malet
Ashley P Darakjy
Ricardo B Nicka
Francesco S Malet
Alejandro J Royster
Ricardo N Flosi
Chavez T Doe
Izzy G Foller
James B Gaucho
Clifford O Wieser
Rodrigues W Amigon
Morrow O Royster
IdCountryDate
1000Brazil2026-02-19
1001Canada2026-03-02
1002India2026-03-05
1003Italy2026-02-18
1004Argentina2026-03-10
1005Spain2026-02-15
1006Canada2026-02-18
1007United Kingdom2026-02-16
1008Spain2026-03-07
1009France2026-02-19
1010United Kingdom2026-03-04
1011Brazil2026-03-08
1012Spain2026-02-21
1013Brazil2026-02-26
1014Italy2026-03-01
1015India2026-03-05
1016India2026-02-27
1017India2026-02-25
1018United Kingdom2026-03-06
1019Australia2026-02-21
1020Canada2026-03-14
1021Australia2026-02-21
1022Canada2026-02-28
1023United Kingdom2026-02-21
1024Brazil2026-03-15
1025United Kingdom2026-02-17
1026India2026-02-27
1027Italy2026-02-23
1028Argentina2026-03-05
1029Argentina2026-03-06
1030Australia2026-02-17
1031Japan2026-02-16
1032Russia2026-03-04
1033Australia2026-02-24
1034France2026-03-01
1035Brazil2026-02-26
1036Germany2026-02-26
1037Canada2026-02-18
1038Japan2026-03-10
1039Canada2026-02-20
1040Argentina2026-03-10
1041Spain2026-03-07
1042Argentina2026-03-10
1043Russia2026-03-08
1044Japan2026-02-21
1045Russia2026-03-14
1046Canada2026-03-10
1047Brazil2026-03-08
1048Italy2026-03-05
1049Japan2026-03-03

On-Demand Data

NameIdCountryDate
Darci D Figeroa1000Argentina2026-02-24
Octavia D Stockham1001Argentina2026-02-27
Deepesh X Garufi1002Japan2026-03-01
Alejandro B Flosi1003Australia2026-02-22
Johnson Y Briddick1004Italy2026-03-08
Faith D Nicka1005France2026-03-06
Johnson I Ferencz1006Spain2026-02-22
Arvin T Perin1007Argentina2026-02-23
Deepesh W Schemmer1008Argentina2026-02-25
Izzy K Ruta1009Brazil2026-03-04
Ivar U Oldroyd1010Australia2026-03-03
Maisha L Kusko1011Australia2026-03-09
Isabel X Poquette1012Russia2026-02-19
Arvin K Poquette1013Russia2026-03-14
Maria S Malet1014Brazil2026-03-09
Tony L Flosi1015Germany2026-03-07
Costa Q Royster1016United Kingdom2026-03-03
Mujtaba D Bolognia1017Canada2026-02-21
Emily B Inouye1018Brazil2026-03-02
Stacey Z Sergi1019Germany2026-03-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar X FlosiIndiaElwin Sharvill UNQUALIFIED
Antonio O ShinkoJapanXuxue Feng QUALIFIED
Morrow C FigeroaAustraliaIvan Magalhaes NEW
Murillo X OstroskyAustraliaIvan Magalhaes NEW
Maria E NestleItalyStephen Shaw QUALIFIED
Ricardo O InouyeAustraliaXuxue Feng NEW
Maisha Y OstroskyRussiaOnyama Limba NEGOTIATION
Aika O GlickBrazilAmy Elsner PROPOSAL
Maria E NestleBrazilAmy Elsner RENEWAL
Tony U DilliardIndiaAnna Fali NEW
Tony X GlickGermanyAsiya Javayant RENEWAL
Smith X InouyeCanadaAmy Elsner RENEWAL
Leja O FerenczSpainStephen Shaw RENEWAL
Rodrigues I ChuiAustraliaAsiya Javayant UNQUALIFIED
Kadeem E PerinFranceIoni Bowcher UNQUALIFIED
Jefferson G FigeroaItalyAmy Elsner RENEWAL
Darci U FerenczIndiaAsiya Javayant UNQUALIFIED
Claire X GarufiRussiaStephen Shaw NEW
Isabel O MaletBrazilAnna Fali UNQUALIFIED
Juan R WieserJapanBernardo Dominic NEW
Adams Z OldroydJapanBernardo Dominic RENEWAL
Darci M ButtRussiaAnna Fali UNQUALIFIED
Munro W KolmetzSpainBernardo Dominic UNQUALIFIED
Misaki U AmigonSpainAmy Elsner NEGOTIATION
Leon A VenereAustraliaIoni Bowcher UNQUALIFIED
Juan H AmigonItalyAsiya Javayant UNQUALIFIED
Chavez K MaletJapanAmy Elsner RENEWAL
Adams P GarufiAustraliaIoni Bowcher NEW
James T PaprockiArgentinaOnyama Limba UNQUALIFIED
Emily X FlosiBrazilOnyama Limba NEGOTIATION
Silvio F DarakjyItalyBernardo Dominic NEGOTIATION
Chavez Y VenereItalyAsiya Javayant PROPOSAL
Mayumi E FerenczJapanStephen Shaw QUALIFIED
Leon P MorascaCanadaStephen Shaw QUALIFIED
Mujtaba L PerinFranceElwin Sharvill NEW
Leja U NickaSpainBernardo Dominic NEW
Kaitlin C BowleyAustraliaOnyama Limba UNQUALIFIED
Ashley I InouyeUnited KingdomIoni Bowcher QUALIFIED
Jones O RoysterCanadaIoni Bowcher PROPOSAL
Darci B StensethIndiaIvan Magalhaes 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.