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
Claire Q SaylorsUnited KingdomAsiya Javayant NEW
Clifford X FerenczGermanyBernardo Dominic UNQUALIFIED
Adams Q FollerGermanyElwin Sharvill NEW
Mujtaba L MorascaUnited KingdomElwin Sharvill UNQUALIFIED
Greenwood D CaudyIndiaXuxue Feng RENEWAL
Claire K KuskoJapanBernardo Dominic UNQUALIFIED
Antonio K MaletItalyBernardo Dominic PROPOSAL
Claire Q CaudyUnited KingdomIoni Bowcher RENEWAL
Antonio V PaprockiUnited KingdomXuxue Feng NEGOTIATION
Leja J OldroydGermanyStephen Shaw QUALIFIED
Izzy U MorascaCanadaStephen Shaw NEGOTIATION
Rodrigues C VocelkaIndiaElwin Sharvill NEW
Kadeem S RimGermanyIoni Bowcher NEGOTIATION
Costa S CaudyItalyAsiya Javayant NEGOTIATION
Rodrigues D PoquetteUnited KingdomAmy Elsner PROPOSAL
Maisha R BologniaBrazilIoni Bowcher PROPOSAL
Mujtaba Y AmigonGermanyOnyama Limba NEGOTIATION
Morrow O MaletBrazilIoni Bowcher UNQUALIFIED
Claire D MaletSpainStephen Shaw NEGOTIATION
Izzy S FerenczArgentinaIvan Magalhaes QUALIFIED
Murillo Z DilliardAustraliaElwin Sharvill UNQUALIFIED
Ricardo T SergiAustraliaElwin Sharvill PROPOSAL
Jeanfrancois C FerenczAustraliaElwin Sharvill PROPOSAL
Salvatore U NickaArgentinaAmy Elsner NEGOTIATION
Adams R IturbideBrazilIvan Magalhaes PROPOSAL
Isabel W SergiJapanOnyama Limba NEW
Mujtaba D RoysterRussiaIoni Bowcher PROPOSAL
Maisha E StockhamGermanyElwin Sharvill RENEWAL
Ashley O GauchoBrazilIvan Magalhaes NEW
Sinclair E GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Johnson R GillianSpainAmy Elsner UNQUALIFIED
David H PaprockiBrazilXuxue Feng UNQUALIFIED
Maria K RutaUnited KingdomStephen Shaw RENEWAL
Maria J PoquetteAustraliaIoni Bowcher NEW
Ivar L VenereUnited KingdomBernardo Dominic PROPOSAL
Jones X FlosiJapanIvan Magalhaes RENEWAL
Ivar E FlosiSpainAsiya Javayant QUALIFIED
Aditya Q InouyeFranceOnyama Limba NEGOTIATION
Adams H RimUnited KingdomBernardo Dominic QUALIFIED
Salvatore E RutaRussiaBernardo Dominic PROPOSAL
Rodrigues X KuskoUnited KingdomAsiya Javayant RENEWAL
Jeanfrancois Z WieserAustraliaStephen Shaw QUALIFIED
Misaki C SlusarskiFranceAsiya Javayant RENEWAL
Stacey O AlbaresCanadaAmy Elsner UNQUALIFIED
Kaitlin W OldroydIndiaAnna Fali NEW
Izzy U NestleItalyXuxue Feng NEGOTIATION
Arvin U CampainSpainAsiya Javayant NEW
Jones S VocelkaRussiaBernardo Dominic UNQUALIFIED
Salvatore N CaldareraSpainIvan Magalhaes NEW
David G MaletItalyAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria P RutaAustraliaOnyama Limba RENEWAL
Mayumi J ButtIndiaAmy Elsner QUALIFIED
Silvio I MaletIndiaOnyama Limba QUALIFIED
Wickens M GlickSpainBernardo Dominic NEGOTIATION
Julie F ButtJapanIvan Magalhaes RENEWAL
Wickens A BriddickAustraliaAmy Elsner PROPOSAL
Leon X CaldareraItalyAnna Fali RENEWAL
Silvio D CampainSpainStephen Shaw UNQUALIFIED
Misaki I PerinBrazilOnyama Limba PROPOSAL
Arvin V VocelkaJapanAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio M FigeroaCanada2026-06-04Benton, John B Jr QUALIFIED64Ivan Magalhaes
1001Costa U MarrierAustralia2026-05-29Chanay, Jeffrey A Esq NEGOTIATION47Amy Elsner
1002Costa O MacleadJapan2026-06-10Rousseaux, Michael Esq RENEWAL88Asiya Javayant
1003Izzy Y WhobreyGermany2026-06-03Morlong Associates QUALIFIED79Ioni Bowcher
1004Maria G PerinBrazil2026-06-14Feltz Printing Service QUALIFIED20Ioni Bowcher
1005Wickens C DilliardIndia2026-05-27Commercial Press UNQUALIFIED53Stephen Shaw
1006Misaki E WaycottArgentina2026-06-11Chapman, Ross E Esq UNQUALIFIED53Stephen Shaw
1007Adams J InouyeRussia2026-06-01Benton, John B Jr NEGOTIATION42Onyama Limba
1008Arvin W StockhamCanada2026-06-09Morlong Associates QUALIFIED52Amy Elsner
1009Jefferson R VocelkaBrazil2026-06-18Feltz Printing Service PROPOSAL79Amy Elsner
1010Murillo N KuskoCanada2026-06-03Chapman, Ross E Esq UNQUALIFIED43Onyama Limba
1011Aika Q KuskoGermany2026-05-27Chapman, Ross E Esq NEGOTIATION49Ivan Magalhaes
1012Juan M GauchoItaly2026-06-21Commercial Press PROPOSAL12Asiya Javayant
1013Misaki K CaudyGermany2026-06-17Morlong Associates UNQUALIFIED55Ioni Bowcher
1014Jefferson D OldroydUnited Kingdom2026-06-09Buckley Miller Wright NEW57Onyama Limba
1015Claire J DilliardRussia2026-06-03Dorl, James J Esq RENEWAL15Xuxue Feng
1016Kaitlin U IturbideRussia2026-06-20Dorl, James J Esq RENEWAL70Anna Fali
1017Clifford N RutaUnited Kingdom2026-06-23Printing Dimensions QUALIFIED40Ioni Bowcher
1018Juan L DilliardIndia2026-06-23Printing Dimensions RENEWAL74Stephen Shaw
1019Izzy U NestleRussia2026-06-19Rangoni Of Florence NEW4Elwin Sharvill
1020Chavez Z FerenczFrance2026-05-30Feiner Bros UNQUALIFIED37Stephen Shaw
1021Tony L ChuiBrazil2026-06-06Chemel, James L Cpa UNQUALIFIED19Asiya Javayant
1022Rodrigues W GillianGermany2026-05-30Buckley Miller Wright NEW58Ivan Magalhaes
1023Aruna N MarrierUnited Kingdom2026-05-31Truhlar And Truhlar Attys QUALIFIED46Asiya Javayant
1024Isabel H ChuiFrance2026-06-25Chapman, Ross E Esq QUALIFIED24Ivan Magalhaes
1025Silvio S FigeroaItaly2026-06-24Commercial Press NEGOTIATION22Ioni Bowcher
1026Ricardo K DoeGermany2026-06-24Feiner Bros QUALIFIED49Ioni Bowcher
1027James E PerinRussia2026-06-19Morlong Associates NEW2Ivan Magalhaes
1028Costa I OldroydBrazil2026-06-06Chemel, James L Cpa NEW90Elwin Sharvill
1029Costa I SergiIndia2026-06-10Morlong Associates RENEWAL53Ivan Magalhaes
1030Francesco K MaletItaly2026-06-18Rousseaux, Michael Esq PROPOSAL23Ioni Bowcher
1031Murillo Q AmigonRussia2026-06-24Dorl, James J Esq PROPOSAL23Onyama Limba
1032Costa Z MorascaIndia2026-06-17King, Christopher A Esq UNQUALIFIED88Asiya Javayant
1033Antonio U FollerUnited Kingdom2026-06-12Truhlar And Truhlar Attys QUALIFIED89Elwin Sharvill
1034Darci I FollerSpain2026-06-18Rousseaux, Michael Esq QUALIFIED6Amy Elsner
1035Maria R FollerJapan2026-05-30King, Christopher A Esq PROPOSAL12Anna Fali
1036Ivar R ShinkoUnited Kingdom2026-06-06Feltz Printing Service RENEWAL30Bernardo Dominic
1037Jeanfrancois Q KolmetzJapan2026-06-20Chanay, Jeffrey A Esq QUALIFIED10Ioni Bowcher
1038Costa B OldroydCanada2026-05-30Chemel, James L Cpa UNQUALIFIED96Xuxue Feng
1039Jones U BologniaBrazil2026-05-29Feltz Printing Service NEGOTIATION90Bernardo Dominic
1040Leon B FigeroaUnited Kingdom2026-06-12Feltz Printing Service UNQUALIFIED63Amy Elsner
1041Kaitlin T FlosiBrazil2026-06-07Commercial Press QUALIFIED87Ivan Magalhaes
1042Jennifer O ChuiSpain2026-06-05Printing Dimensions NEW34Anna Fali
1043Deepesh C WaycottSpain2026-06-13Feiner Bros PROPOSAL75Xuxue Feng
1044Cody D SergiGermany2026-06-11Feltz Printing Service PROPOSAL15Bernardo Dominic
1045Izzy E NickaCanada2026-06-14Chapman, Ross E Esq UNQUALIFIED75Elwin Sharvill
1046Stacey W PerinAustralia2026-06-22Printing Dimensions PROPOSAL83Elwin Sharvill
1047Smith Q GauchoBrazil2026-06-06Dorl, James J Esq RENEWAL11Stephen Shaw
1048Misaki D MarrierFrance2026-06-13Rousseaux, Michael Esq PROPOSAL65Ioni Bowcher
1049Claire P MaletCanada2026-06-23Feiner Bros UNQUALIFIED36Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Aditya A GarufiFranceBernardo Dominic NEGOTIATION
Mujtaba Y SlusarskiJapanAmy Elsner QUALIFIED
Misaki P IturbideUnited KingdomBernardo Dominic NEW
Greenwood U ChuiCanadaBernardo Dominic UNQUALIFIED
Maisha I AmigonAustraliaAsiya Javayant QUALIFIED
Antonio S DoeJapanIvan Magalhaes NEW
Deepesh C GauchoArgentinaOnyama Limba RENEWAL
Wickens J DarakjyUnited KingdomAsiya Javayant UNQUALIFIED
Stacey Z MacleadCanadaAmy Elsner QUALIFIED
Adams N KolmetzArgentinaElwin Sharvill PROPOSAL
Jeanfrancois Y RoysterArgentinaAnna Fali NEGOTIATION
Ricardo Z TollnerArgentinaAsiya Javayant NEGOTIATION
Murillo W MaletUnited KingdomIvan Magalhaes NEW
Leja N GauchoRussiaElwin Sharvill NEW
David L BowleyGermanyStephen Shaw UNQUALIFIED
Kaitlin Y DilliardFranceAsiya Javayant NEW
Nicolas K ButtIndiaElwin Sharvill NEW
Deepesh O PoquetteUnited KingdomAsiya Javayant RENEWAL
Ashley Z PoquetteCanadaElwin Sharvill PROPOSAL
Emily W MaletUnited KingdomBernardo Dominic RENEWAL
Silvio B KolmetzArgentinaIvan Magalhaes RENEWAL
Deepesh J DarakjyItalyIoni Bowcher NEW
Izzy Q PaprockiIndiaAsiya Javayant NEW
Adams A MarrierCanadaIvan Magalhaes NEW
Jeanfrancois E StockhamRussiaXuxue Feng NEGOTIATION
Maisha F MaletUnited KingdomElwin Sharvill NEW
Leja N AmigonFranceAmy Elsner PROPOSAL
Leja V GillianGermanyAmy Elsner UNQUALIFIED
Francesco F AmigonAustraliaStephen Shaw UNQUALIFIED
Claire T OstroskyBrazilAnna Fali UNQUALIFIED
Jones D PaprockiUnited KingdomOnyama Limba NEW
Kaitlin H MaletArgentinaIvan Magalhaes PROPOSAL
Ashley O FollerArgentinaAnna Fali NEGOTIATION
Stacey C FlosiItalyXuxue Feng RENEWAL
David F BologniaItalyIoni Bowcher UNQUALIFIED
Costa H WaycottJapanStephen Shaw UNQUALIFIED
David L DoeAustraliaElwin Sharvill RENEWAL
David G KuskoSpainAsiya Javayant NEGOTIATION
Isabel I AmigonBrazilStephen Shaw RENEWAL
Nicolas R StockhamGermanyAnna Fali PROPOSAL
Isabel I SchemmerUnited KingdomOnyama Limba NEW
Maisha Z RulapaughGermanyAnna Fali NEGOTIATION
Faith G RoysterArgentinaAmy Elsner QUALIFIED
Tony R PoquetteSpainBernardo Dominic QUALIFIED
Julie Y WieserUnited KingdomBernardo Dominic QUALIFIED
Maria N MacleadUnited KingdomBernardo Dominic NEW
Jeanfrancois H GlickUnited KingdomElwin Sharvill UNQUALIFIED
Rodrigues I FerenczJapanIvan Magalhaes UNQUALIFIED
Jennifer Y GarufiIndiaAmy Elsner RENEWAL
Adams N MacleadBrazilStephen Shaw NEW
Frozen Columns
Name
Mayumi B Royster
Mujtaba G Schemmer
Silvio U Paprocki
Rodrigues R Chui
Silvio W Bowley
Julie D Nicka
Chavez U Tollner
Juan W Schemmer
Ivar H Ostrosky
Smith G Kusko
Johnson A Bolognia
Juan M Slusarski
Maria X Ferencz
Costa R Sergi
Adams Q Perin
Stacey E Ruta
Chavez J Kusko
Octavia F Foller
Mayumi W Paprocki
Mujtaba M Bowley
Aika J Waycott
Claire X Waycott
Leja D Ruta
Ashley F Dilliard
Smith G Ferencz
Claire O Tollner
Sinclair L Iturbide
Deepesh X Paprocki
Smith R Flosi
Kadeem I Nestle
Jennifer S Slusarski
Jones C Rulapaugh
Izzy C Oldroyd
Johnson Q Marrier
Clifford S Garufi
Ricardo Q Oldroyd
Julie M Briddick
Adams E Maclead
Salvatore R Dilliard
Octavia Y Kolmetz
Clifford Q Stenseth
Mujtaba F Foller
Kadeem K Wieser
Tony T Slusarski
Ashley L Foller
Munro F Tollner
Kadeem O Bowley
Greenwood O Nestle
Costa Q Wieser
Faith Z Poquette
IdCountryDate
1000Australia2026-06-21
1001Germany2026-05-27
1002Russia2026-05-27
1003Japan2026-06-09
1004Germany2026-06-06
1005Russia2026-06-25
1006United Kingdom2026-05-30
1007Germany2026-06-20
1008United Kingdom2026-06-04
1009Canada2026-05-29
1010Japan2026-06-04
1011Canada2026-06-24
1012Australia2026-06-01
1013United Kingdom2026-06-17
1014France2026-06-11
1015Spain2026-06-06
1016Australia2026-06-13
1017Spain2026-06-08
1018Australia2026-06-19
1019Russia2026-06-18
1020Germany2026-05-31
1021Spain2026-05-30
1022Australia2026-06-25
1023Australia2026-06-10
1024Argentina2026-06-03
1025Japan2026-06-15
1026Germany2026-06-25
1027Japan2026-06-18
1028Spain2026-06-17
1029Brazil2026-06-04
1030Italy2026-06-06
1031Argentina2026-06-03
1032Canada2026-06-15
1033United Kingdom2026-06-13
1034Germany2026-06-11
1035France2026-05-31
1036France2026-06-07
1037Italy2026-05-31
1038India2026-06-19
1039Germany2026-06-24
1040Japan2026-06-22
1041Australia2026-06-16
1042United Kingdom2026-05-30
1043Italy2026-06-03
1044Spain2026-06-10
1045Australia2026-06-05
1046Argentina2026-06-20
1047Australia2026-06-16
1048Italy2026-06-14
1049France2026-06-15

On-Demand Data

NameIdCountryDate
Mujtaba K Darakjy1000Russia2026-06-11
Silvio E Dilliard1001Germany2026-06-05
Ricardo Q Schemmer1002Australia2026-05-29
Clifford P Dilliard1003India2026-05-29
Juan G Malet1004Brazil2026-05-30
Cody W Stenseth1005France2026-06-16
Misaki H Caldarera1006India2026-05-29
Aruna J Saylors1007Spain2026-05-29
Mayumi E Briddick1008India2026-06-12
Nicolas H Morasca1009Italy2026-06-12
Sinclair H Caldarera1010Japan2026-06-12
Ashley U Maclead1011Canada2026-05-27
Sinclair W Poquette1012India2026-06-21
Morrow Q Maclead1013Russia2026-05-27
Deepesh J Inouye1014United Kingdom2026-06-09
Aditya J Figeroa1015Argentina2026-06-03
James A Ferencz1016United Kingdom2026-06-08
Tony D Briddick1017Brazil2026-05-29
Maisha A Caldarera1018Russia2026-05-30
Chavez P Oldroyd1019Australia2026-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya P PaprockiBrazilElwin Sharvill UNQUALIFIED
Ivar G MaletItalyBernardo Dominic UNQUALIFIED
Juan G SchemmerArgentinaXuxue Feng NEW
Maisha T PaprockiArgentinaIvan Magalhaes QUALIFIED
Johnson T FerenczJapanStephen Shaw RENEWAL
Salvatore C CampainFranceBernardo Dominic QUALIFIED
Mujtaba P GlickFranceIvan Magalhaes UNQUALIFIED
Sinclair C BologniaItalyElwin Sharvill PROPOSAL
Murillo X CaldareraIndiaBernardo Dominic PROPOSAL
Juan Y WieserSpainBernardo Dominic QUALIFIED
Morrow J RulapaughSpainIvan Magalhaes RENEWAL
Emily W ShinkoCanadaIvan Magalhaes NEW
Jeanfrancois N InouyeJapanIoni Bowcher QUALIFIED
Ivar M MarrierArgentinaXuxue Feng NEW
Leja T PoquetteAustraliaAmy Elsner RENEWAL
Darci Y IturbideUnited KingdomIvan Magalhaes UNQUALIFIED
Aruna X MarrierBrazilBernardo Dominic NEGOTIATION
Aruna Y WaycottAustraliaIvan Magalhaes NEW
Tony K ShinkoJapanElwin Sharvill NEGOTIATION
Jefferson G FlosiCanadaAnna Fali QUALIFIED
Leja G ShinkoUnited KingdomAsiya Javayant PROPOSAL
Leja T VenereCanadaXuxue Feng NEGOTIATION
Aruna Q RulapaughRussiaBernardo Dominic RENEWAL
Leja H DarakjyRussiaAmy Elsner UNQUALIFIED
Ricardo N StensethSpainAsiya Javayant NEW
Izzy Q WieserIndiaAmy Elsner NEW
Tony Q GillianCanadaAsiya Javayant NEW
Julie O TollnerIndiaIvan Magalhaes QUALIFIED
Mujtaba K GillianJapanXuxue Feng NEGOTIATION
Kaitlin B AlbaresJapanAmy Elsner NEW
Chavez V TollnerJapanIvan Magalhaes NEGOTIATION
Jefferson J ShinkoIndiaAmy Elsner NEGOTIATION
Mayumi X FerenczItalyAsiya Javayant UNQUALIFIED
Salvatore H WieserGermanyBernardo Dominic UNQUALIFIED
Claire M RoysterRussiaAmy Elsner UNQUALIFIED
Rodrigues R GlickGermanyElwin Sharvill PROPOSAL
Octavia U AmigonJapanXuxue Feng UNQUALIFIED
Mayumi X ChuiSpainBernardo Dominic UNQUALIFIED
Greenwood R PerinRussiaStephen Shaw PROPOSAL
Arvin K MarrierAustraliaOnyama Limba 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.