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
Rodrigues N CaldareraBrazilAnna Fali QUALIFIED
Wickens W GillianIndiaAsiya Javayant QUALIFIED
Mujtaba T KolmetzItalyAmy Elsner NEGOTIATION
Kadeem Q WhobreyRussiaAsiya Javayant QUALIFIED
Munro V ButtArgentinaIoni Bowcher QUALIFIED
Ashley B KuskoAustraliaStephen Shaw PROPOSAL
Francesco V SlusarskiBrazilAnna Fali QUALIFIED
Salvatore C ShinkoBrazilAnna Fali NEW
Ricardo K BowleyBrazilXuxue Feng QUALIFIED
Cody Q RutaFranceStephen Shaw UNQUALIFIED
Costa I DoeJapanAnna Fali NEW
Smith U RoysterCanadaIoni Bowcher NEW
Munro B OldroydAustraliaStephen Shaw PROPOSAL
Leon L DoeCanadaXuxue Feng NEGOTIATION
Clifford B InouyeCanadaBernardo Dominic PROPOSAL
Adams K DilliardCanadaElwin Sharvill UNQUALIFIED
Leon J MorascaJapanXuxue Feng PROPOSAL
Jeanfrancois D CaldareraSpainAsiya Javayant UNQUALIFIED
Cody Z PaprockiGermanyOnyama Limba UNQUALIFIED
Maisha P WaycottGermanyOnyama Limba QUALIFIED
Juan D MaletArgentinaIvan Magalhaes NEGOTIATION
Chavez R SchemmerAustraliaAnna Fali RENEWAL
Claire X FlosiRussiaAsiya Javayant NEW
Mayumi G SaylorsAustraliaOnyama Limba UNQUALIFIED
Leon C GarufiAustraliaAnna Fali PROPOSAL
Mayumi U GlickCanadaAmy Elsner NEW
Antonio T MorascaUnited KingdomIvan Magalhaes NEGOTIATION
Smith Q NestleBrazilAnna Fali QUALIFIED
Ashley A NickaAustraliaStephen Shaw RENEWAL
Stacey O AlbaresBrazilStephen Shaw NEGOTIATION
Kadeem N InouyeCanadaOnyama Limba NEW
Johnson W DoeSpainAsiya Javayant PROPOSAL
Tony F PaprockiRussiaOnyama Limba QUALIFIED
Maria P KuskoFranceXuxue Feng PROPOSAL
Chavez T ShinkoCanadaXuxue Feng UNQUALIFIED
Francesco Y DilliardUnited KingdomIvan Magalhaes QUALIFIED
Murillo S OldroydRussiaStephen Shaw PROPOSAL
Rodrigues M BologniaArgentinaIvan Magalhaes RENEWAL
Octavia X PoquetteGermanyAsiya Javayant NEGOTIATION
Johnson H StensethUnited KingdomAsiya Javayant NEGOTIATION
Jeanfrancois X IturbideIndiaIoni Bowcher RENEWAL
Ivar C PerinItalyBernardo Dominic PROPOSAL
Arvin S SlusarskiBrazilStephen Shaw PROPOSAL
Mayumi B FollerCanadaOnyama Limba QUALIFIED
Antonio A SergiIndiaElwin Sharvill PROPOSAL
Jennifer G GillianCanadaBernardo Dominic NEW
Juan H FollerJapanElwin Sharvill PROPOSAL
Stacey C VenereItalyAsiya Javayant PROPOSAL
Murillo T ButtCanadaXuxue Feng RENEWAL
Salvatore U RoysterSpainOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Nicolas B WieserSpainOnyama Limba PROPOSAL
Sinclair E BriddickUnited KingdomXuxue Feng RENEWAL
Jefferson H MaletCanadaIvan Magalhaes PROPOSAL
Sinclair O MaletItalyStephen Shaw RENEWAL
Murillo S CaudyBrazilOnyama Limba NEGOTIATION
Adams L WhobreyIndiaOnyama Limba RENEWAL
Izzy J FerenczAustraliaStephen Shaw UNQUALIFIED
Alejandro Z FollerIndiaXuxue Feng NEW
Mayumi Y StensethSpainAsiya Javayant QUALIFIED
Ashley D FigeroaArgentinaAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford R KolmetzUnited Kingdom2026-05-12Morlong Associates QUALIFIED2Anna Fali
1001Chavez U OstroskyAustralia2026-05-02Chemel, James L Cpa PROPOSAL59Amy Elsner
1002David W RoysterCanada2026-05-02Benton, John B Jr UNQUALIFIED78Amy Elsner
1003Francesco H WieserRussia2026-05-03Feltz Printing Service NEGOTIATION37Stephen Shaw
1004Leon C InouyeBrazil2026-04-25Feiner Bros NEW31Elwin Sharvill
1005Deepesh M DoeBrazil2026-04-23Chemel, James L Cpa PROPOSAL24Amy Elsner
1006Jennifer R OldroydFrance2026-04-24Chanay, Jeffrey A Esq UNQUALIFIED42Stephen Shaw
1007James O VenereUnited Kingdom2026-04-16Morlong Associates NEW6Bernardo Dominic
1008Sinclair S ChuiCanada2026-05-08Buckley Miller Wright PROPOSAL82Ivan Magalhaes
1009David R MaletGermany2026-04-19Feltz Printing Service NEW30Bernardo Dominic
1010Aika Q MacleadGermany2026-05-08Rousseaux, Michael Esq PROPOSAL4Bernardo Dominic
1011Emily Q NickaSpain2026-05-12King, Christopher A Esq NEGOTIATION61Xuxue Feng
1012Juan I WaycottFrance2026-04-26King, Christopher A Esq NEW33Elwin Sharvill
1013Stacey Z NestleArgentina2026-04-26Printing Dimensions NEGOTIATION21Asiya Javayant
1014Murillo A RoysterGermany2026-04-27Morlong Associates QUALIFIED24Xuxue Feng
1015Juan F AlbaresSpain2026-04-21Morlong Associates UNQUALIFIED90Asiya Javayant
1016Rodrigues B RoysterIndia2026-04-28Feltz Printing Service RENEWAL35Xuxue Feng
1017Leja T RutaJapan2026-05-12Chanay, Jeffrey A Esq QUALIFIED20Bernardo Dominic
1018Smith B PoquetteCanada2026-04-27Buckley Miller Wright RENEWAL51Onyama Limba
1019Mayumi E BriddickGermany2026-05-09Rousseaux, Michael Esq PROPOSAL50Anna Fali
1020Izzy F RoysterGermany2026-05-12Commercial Press NEGOTIATION46Xuxue Feng
1021Jennifer Q PoquetteAustralia2026-05-10Chanay, Jeffrey A Esq RENEWAL57Xuxue Feng
1022Aditya D NickaIndia2026-04-14King, Christopher A Esq QUALIFIED74Stephen Shaw
1023Rodrigues B CampainIndia2026-04-14Chemel, James L Cpa NEW9Stephen Shaw
1024David P ShinkoUnited Kingdom2026-04-19Rousseaux, Michael Esq NEGOTIATION37Ivan Magalhaes
1025Mujtaba G OstroskyIndia2026-05-04Feiner Bros NEW82Ioni Bowcher
1026Arvin B BologniaIndia2026-04-28Chemel, James L Cpa PROPOSAL3Xuxue Feng
1027Mayumi O DilliardFrance2026-04-26King, Christopher A Esq PROPOSAL0Bernardo Dominic
1028Arvin N DilliardCanada2026-04-26Feiner Bros RENEWAL14Asiya Javayant
1029Ivar I StensethBrazil2026-04-23Truhlar And Truhlar Attys RENEWAL21Elwin Sharvill
1030Clifford C PaprockiRussia2026-04-27Chemel, James L Cpa RENEWAL49Ivan Magalhaes
1031Mayumi H FerenczFrance2026-04-28Dorl, James J Esq RENEWAL29Bernardo Dominic
1032Juan L GarufiGermany2026-05-01Dorl, James J Esq QUALIFIED70Anna Fali
1033Sinclair N RutaFrance2026-04-17Chapman, Ross E Esq QUALIFIED8Stephen Shaw
1034Munro I SlusarskiItaly2026-05-06Truhlar And Truhlar Attys NEGOTIATION77Elwin Sharvill
1035Jennifer C BologniaAustralia2026-05-01Chemel, James L Cpa NEGOTIATION23Ioni Bowcher
1036Aditya A MarrierUnited Kingdom2026-04-26Feltz Printing Service NEW88Bernardo Dominic
1037Cody D AmigonFrance2026-04-16Morlong Associates NEGOTIATION42Amy Elsner
1038James K SergiIndia2026-04-26Morlong Associates NEGOTIATION53Onyama Limba
1039Mujtaba A VenereCanada2026-05-01Feiner Bros NEGOTIATION35Xuxue Feng
1040Kadeem H GauchoCanada2026-04-27Chapman, Ross E Esq RENEWAL90Stephen Shaw
1041Maria E SergiUnited Kingdom2026-04-15Buckley Miller Wright UNQUALIFIED15Elwin Sharvill
1042David D GarufiCanada2026-05-01Chapman, Ross E Esq PROPOSAL31Onyama Limba
1043Leja J GlickJapan2026-04-17Truhlar And Truhlar Attys NEGOTIATION47Anna Fali
1044David P KolmetzItaly2026-04-18Chanay, Jeffrey A Esq RENEWAL28Amy Elsner
1045Jennifer H ShinkoAustralia2026-04-16Chemel, James L Cpa UNQUALIFIED84Anna Fali
1046Jones L PaprockiBrazil2026-04-29Chemel, James L Cpa RENEWAL36Bernardo Dominic
1047Silvio X MorascaJapan2026-05-08Chapman, Ross E Esq UNQUALIFIED75Ivan Magalhaes
1048Morrow M StockhamUnited Kingdom2026-04-19Benton, John B Jr RENEWAL12Onyama Limba
1049Alejandro I TollnerFrance2026-04-23Feiner Bros UNQUALIFIED8Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Nicolas K InouyeSpainXuxue Feng RENEWAL
Emily Z SchemmerBrazilElwin Sharvill NEGOTIATION
Jennifer G ShinkoAustraliaAnna Fali RENEWAL
Nicolas O CampainArgentinaOnyama Limba RENEWAL
Morrow I VenereCanadaBernardo Dominic UNQUALIFIED
Leon J BowleyIndiaXuxue Feng QUALIFIED
Faith E GarufiItalyXuxue Feng NEGOTIATION
Costa Z DarakjyRussiaIvan Magalhaes NEGOTIATION
Ashley W WaycottItalyBernardo Dominic QUALIFIED
James O IturbideFranceIoni Bowcher RENEWAL
Murillo T CaudySpainOnyama Limba PROPOSAL
Maisha E CampainUnited KingdomBernardo Dominic RENEWAL
Leja I CampainArgentinaStephen Shaw NEW
Juan Q SergiBrazilAnna Fali NEW
James D TollnerGermanyAsiya Javayant PROPOSAL
Adams P FollerArgentinaOnyama Limba UNQUALIFIED
Tony R WaycottCanadaXuxue Feng NEW
Leon Z ChuiItalyAmy Elsner NEW
Kadeem F RoysterArgentinaXuxue Feng RENEWAL
Maisha N MaletJapanIvan Magalhaes NEGOTIATION
Mayumi M GarufiUnited KingdomXuxue Feng RENEWAL
Deepesh V MaletFranceAsiya Javayant NEW
Aditya Q WieserUnited KingdomIvan Magalhaes NEGOTIATION
Sinclair Q DoeAustraliaAsiya Javayant RENEWAL
James K PerinJapanElwin Sharvill RENEWAL
Jennifer I GillianSpainAsiya Javayant NEGOTIATION
Ricardo O AmigonArgentinaBernardo Dominic UNQUALIFIED
Wickens V InouyeCanadaIvan Magalhaes RENEWAL
Julie T MaletSpainBernardo Dominic PROPOSAL
Leon S KolmetzGermanyBernardo Dominic NEGOTIATION
Jefferson I RoysterJapanBernardo Dominic QUALIFIED
Juan A SergiCanadaAmy Elsner NEW
Wickens V DilliardItalyAmy Elsner NEW
Aditya F SlusarskiCanadaAmy Elsner QUALIFIED
Jones F OstroskyIndiaElwin Sharvill UNQUALIFIED
Jefferson L OldroydGermanyOnyama Limba PROPOSAL
Aruna K NickaArgentinaElwin Sharvill NEW
Adams Q BologniaJapanIvan Magalhaes QUALIFIED
Ricardo T GauchoBrazilAsiya Javayant PROPOSAL
Claire Z StockhamItalyIoni Bowcher PROPOSAL
Isabel Z SaylorsBrazilElwin Sharvill QUALIFIED
Julie D BriddickSpainOnyama Limba NEW
Antonio B DarakjyIndiaIvan Magalhaes UNQUALIFIED
Adams K ButtFranceAmy Elsner UNQUALIFIED
Arvin N AmigonUnited KingdomStephen Shaw PROPOSAL
Claire X InouyeAustraliaOnyama Limba QUALIFIED
Silvio H MorascaAustraliaAsiya Javayant UNQUALIFIED
Stacey Y FerenczUnited KingdomIoni Bowcher UNQUALIFIED
Ricardo P MarrierGermanyElwin Sharvill UNQUALIFIED
Ricardo S WieserItalyElwin Sharvill NEGOTIATION
Frozen Columns
Name
Smith S Sergi
Costa D Waycott
Darci K Chui
Johnson B Oldroyd
Mayumi N Dilliard
Kaitlin P Saylors
Alejandro L Nicka
Darci A Rulapaugh
Kadeem I Chui
Francesco J Foller
Leon Z Tollner
Octavia L Paprocki
Silvio X Stenseth
Aruna G Ferencz
Jennifer N Schemmer
Octavia Y Whobrey
Adams W Ferencz
Cody Q Oldroyd
Morrow N Bowley
Emily Q Ferencz
Ricardo B Dilliard
Aruna J Kusko
Jones B Wieser
Wickens W Nestle
Jennifer P Tollner
Munro E Stenseth
Johnson O Stockham
Alejandro E Figeroa
Smith X Stenseth
Emily R Kusko
Murillo V Perin
Jones A Saylors
Johnson Z Malet
Murillo X Venere
Stacey X Whobrey
Mayumi S Inouye
Arvin Q Wieser
Mayumi E Doe
Faith A Garufi
Misaki Y Briddick
Jefferson X Amigon
Greenwood A Slusarski
Ivar U Figeroa
Smith D Nestle
Ivar E Ruta
Silvio T Perin
Tony I Albares
Adams E Glick
Rodrigues E Venere
Leja G Gaucho
IdCountryDate
1000Spain2026-05-07
1001Brazil2026-04-22
1002Argentina2026-04-13
1003India2026-04-27
1004Italy2026-05-11
1005Argentina2026-04-30
1006Spain2026-05-07
1007Canada2026-05-09
1008United Kingdom2026-05-11
1009Japan2026-04-24
1010France2026-04-27
1011Italy2026-05-10
1012Russia2026-04-29
1013Spain2026-05-10
1014Spain2026-04-20
1015France2026-05-02
1016Italy2026-04-21
1017Japan2026-05-01
1018Germany2026-05-06
1019Japan2026-04-21
1020Japan2026-05-09
1021United Kingdom2026-05-04
1022Australia2026-04-23
1023United Kingdom2026-04-27
1024Canada2026-04-21
1025Japan2026-05-12
1026Spain2026-04-15
1027Canada2026-05-12
1028Australia2026-04-22
1029Canada2026-05-10
1030Brazil2026-04-30
1031Spain2026-05-07
1032Italy2026-04-30
1033Italy2026-04-28
1034Australia2026-05-07
1035Argentina2026-04-20
1036Spain2026-05-10
1037Italy2026-04-17
1038India2026-04-18
1039Germany2026-04-15
1040France2026-05-01
1041Germany2026-04-13
1042Australia2026-05-07
1043France2026-05-12
1044Australia2026-05-12
1045Brazil2026-04-22
1046Russia2026-04-13
1047Germany2026-04-21
1048Russia2026-04-15
1049Brazil2026-05-02

On-Demand Data

NameIdCountryDate
Julie E Waycott1000Spain2026-05-07
Claire A Royster1001Italy2026-04-13
Jones F Malet1002France2026-05-07
David K Waycott1003Canada2026-05-11
Francesco H Albares1004Italy2026-04-23
James A Gaucho1005United Kingdom2026-05-08
Deepesh Z Saylors1006Canada2026-04-21
Mujtaba G Tollner1007United Kingdom2026-04-21
Francesco J Iturbide1008Japan2026-04-17
Tony X Nicka1009Italy2026-04-26
Julie O Stenseth1010Spain2026-05-03
Murillo V Ostrosky1011India2026-05-03
Leon X Caudy1012Australia2026-05-03
Mayumi C Gillian1013Canada2026-04-21
Munro K Stenseth1014France2026-04-30
Greenwood K Malet1015Japan2026-05-05
James U Campain1016Brazil2026-04-23
David N Vocelka1017Canada2026-04-17
Smith Q Venere1018Spain2026-04-26
Mayumi H Butt1019Australia2026-04-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki U OldroydRussiaAnna Fali QUALIFIED
David H FerenczCanadaXuxue Feng PROPOSAL
Maisha S DarakjyGermanyIvan Magalhaes PROPOSAL
Izzy Z MaletRussiaAsiya Javayant UNQUALIFIED
Misaki Z DarakjySpainAmy Elsner QUALIFIED
Kadeem F WhobreyAustraliaAsiya Javayant RENEWAL
Ivar P ChuiUnited KingdomXuxue Feng NEGOTIATION
Leja V SchemmerRussiaBernardo Dominic QUALIFIED
Smith I BowleyArgentinaElwin Sharvill NEGOTIATION
Salvatore O TollnerItalyAnna Fali UNQUALIFIED
Jennifer V SaylorsFranceBernardo Dominic UNQUALIFIED
Jones H AlbaresBrazilAmy Elsner NEGOTIATION
Kaitlin S TollnerCanadaIvan Magalhaes UNQUALIFIED
Munro U ShinkoItalyBernardo Dominic RENEWAL
David P CaldareraRussiaStephen Shaw PROPOSAL
Deepesh K NestleRussiaAsiya Javayant QUALIFIED
Aruna M PoquetteSpainIoni Bowcher QUALIFIED
Mujtaba D TollnerUnited KingdomBernardo Dominic NEW
Darci Y FlosiUnited KingdomElwin Sharvill UNQUALIFIED
Maria N VenereSpainAmy Elsner QUALIFIED
Aika G FlosiSpainOnyama Limba UNQUALIFIED
Francesco H RutaUnited KingdomIvan Magalhaes UNQUALIFIED
Maisha Y WieserItalyIvan Magalhaes RENEWAL
Octavia Q CaudySpainXuxue Feng NEW
Nicolas H SchemmerGermanyOnyama Limba NEW
Johnson J StensethArgentinaIoni Bowcher RENEWAL
Aika X NickaAustraliaBernardo Dominic UNQUALIFIED
Wickens G SchemmerItalyStephen Shaw RENEWAL
Murillo U BriddickFranceIvan Magalhaes PROPOSAL
Salvatore P InouyeItalyIvan Magalhaes NEGOTIATION
Aditya I TollnerItalyAmy Elsner RENEWAL
Arvin F StockhamArgentinaStephen Shaw QUALIFIED
Mayumi L PoquetteJapanIoni Bowcher UNQUALIFIED
Kaitlin V MacleadIndiaXuxue Feng UNQUALIFIED
Leon S DarakjyFranceAsiya Javayant UNQUALIFIED
Isabel Y InouyeGermanyIvan Magalhaes QUALIFIED
Murillo E SaylorsIndiaIvan Magalhaes RENEWAL
Deepesh X WhobreyItalyXuxue Feng RENEWAL
Leon L DarakjyBrazilBernardo Dominic RENEWAL
Cody J BriddickSpainAmy Elsner RENEWAL

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