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
Greenwood B GarufiAustraliaBernardo Dominic UNQUALIFIED
Misaki M MaletBrazilElwin Sharvill QUALIFIED
Chavez Z MaletRussiaAmy Elsner PROPOSAL
Morrow A IturbideUnited KingdomOnyama Limba UNQUALIFIED
Mujtaba C NestleAustraliaXuxue Feng NEGOTIATION
Rodrigues N MorascaSpainXuxue Feng QUALIFIED
Clifford D FerenczJapanElwin Sharvill NEW
James G PerinArgentinaAsiya Javayant QUALIFIED
Mayumi J SlusarskiFranceXuxue Feng QUALIFIED
Kadeem J GarufiRussiaStephen Shaw NEGOTIATION
Emily A RimItalyIoni Bowcher QUALIFIED
Jennifer K StensethBrazilIoni Bowcher PROPOSAL
Deepesh N DilliardGermanyStephen Shaw UNQUALIFIED
Munro L MorascaBrazilElwin Sharvill PROPOSAL
Arvin G ButtCanadaAsiya Javayant NEW
Smith P ButtArgentinaBernardo Dominic QUALIFIED
Silvio L BologniaGermanyBernardo Dominic PROPOSAL
Ashley V PerinSpainAmy Elsner UNQUALIFIED
Deepesh V PoquetteUnited KingdomXuxue Feng PROPOSAL
Isabel P RoysterAustraliaIoni Bowcher NEW
Antonio R MarrierFranceOnyama Limba PROPOSAL
Smith A DarakjyIndiaElwin Sharvill NEGOTIATION
Alejandro P NickaAustraliaAnna Fali RENEWAL
Mujtaba I ShinkoAustraliaOnyama Limba QUALIFIED
Julie F RoysterCanadaStephen Shaw RENEWAL
James J GauchoBrazilBernardo Dominic PROPOSAL
Aditya E ButtIndiaIoni Bowcher NEGOTIATION
Mayumi G IturbideIndiaElwin Sharvill NEW
Clifford A GarufiUnited KingdomAnna Fali NEGOTIATION
Izzy E ShinkoRussiaElwin Sharvill NEW
Ricardo J StensethIndiaAsiya Javayant UNQUALIFIED
Ricardo N BriddickSpainIoni Bowcher RENEWAL
Morrow A CaldareraJapanOnyama Limba RENEWAL
Tony W BriddickIndiaOnyama Limba NEW
Aika R SaylorsCanadaIvan Magalhaes UNQUALIFIED
Wickens H NickaArgentinaStephen Shaw NEGOTIATION
Adams P GarufiUnited KingdomAsiya Javayant NEGOTIATION
Clifford I MaletAustraliaElwin Sharvill PROPOSAL
Jeanfrancois Z AlbaresBrazilAnna Fali NEGOTIATION
Mujtaba X OldroydBrazilStephen Shaw PROPOSAL
Greenwood Z MarrierSpainBernardo Dominic QUALIFIED
Leon U IturbideUnited KingdomAsiya Javayant NEW
Smith F GlickArgentinaIvan Magalhaes PROPOSAL
Cody W AmigonFranceElwin Sharvill QUALIFIED
Maisha K WaycottBrazilAmy Elsner RENEWAL
Smith B DoeCanadaIvan Magalhaes RENEWAL
Mujtaba X DoeRussiaAsiya Javayant QUALIFIED
Mujtaba G WhobreyIndiaAmy Elsner NEGOTIATION
Aruna Y OldroydItalyElwin Sharvill NEGOTIATION
Mayumi M BowleyGermanyAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Isabel Z SlusarskiBrazilAsiya Javayant QUALIFIED
Murillo J BologniaJapanElwin Sharvill UNQUALIFIED
Juan M MarrierItalyElwin Sharvill UNQUALIFIED
Jennifer K PerinAustraliaXuxue Feng RENEWAL
Jefferson D PoquetteArgentinaIvan Magalhaes RENEWAL
Costa E WieserAustraliaOnyama Limba PROPOSAL
Munro V WhobreyItalyAsiya Javayant PROPOSAL
Kaitlin I AmigonCanadaBernardo Dominic PROPOSAL
Silvio G MorascaSpainXuxue Feng QUALIFIED
Arvin N ChuiJapanStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson L AlbaresSpain2026-06-17Chemel, James L Cpa PROPOSAL48Onyama Limba
1001Arvin L OstroskyItaly2026-05-29Rousseaux, Michael Esq RENEWAL82Ivan Magalhaes
1002Arvin V ShinkoGermany2026-06-03King, Christopher A Esq NEW48Elwin Sharvill
1003Rodrigues D AmigonGermany2026-05-27Truhlar And Truhlar Attys QUALIFIED63Anna Fali
1004Jeanfrancois Y AmigonIndia2026-06-12Morlong Associates NEGOTIATION40Bernardo Dominic
1005Claire P MacleadAustralia2026-05-26Rangoni Of Florence PROPOSAL66Bernardo Dominic
1006Leon L FollerAustralia2026-06-05Feiner Bros QUALIFIED43Amy Elsner
1007Claire N FlosiFrance2026-06-12Chemel, James L Cpa NEGOTIATION67Bernardo Dominic
1008Juan U BowleyUnited Kingdom2026-06-17Buckley Miller Wright UNQUALIFIED25Xuxue Feng
1009Misaki A FerenczRussia2026-05-30Chanay, Jeffrey A Esq NEW56Anna Fali
1010Aika Q WhobreyAustralia2026-06-14King, Christopher A Esq NEW17Anna Fali
1011Darci Q MacleadAustralia2026-05-20Rousseaux, Michael Esq NEW50Asiya Javayant
1012Sinclair J StockhamAustralia2026-05-27Feiner Bros RENEWAL86Anna Fali
1013Chavez T GauchoJapan2026-06-13Rangoni Of Florence PROPOSAL38Bernardo Dominic
1014Leja L VocelkaRussia2026-06-10Feltz Printing Service NEW12Ivan Magalhaes
1015Julie N ChuiBrazil2026-06-03Chapman, Ross E Esq NEW35Amy Elsner
1016Leon R AmigonIndia2026-05-24Benton, John B Jr RENEWAL51Elwin Sharvill
1017Arvin Z RulapaughAustralia2026-05-22Printing Dimensions NEW24Onyama Limba
1018Faith A FigeroaBrazil2026-06-03Chanay, Jeffrey A Esq UNQUALIFIED73Anna Fali
1019Jones Y FlosiRussia2026-06-09Chapman, Ross E Esq NEW5Bernardo Dominic
1020Octavia B AmigonUnited Kingdom2026-06-14Morlong Associates RENEWAL23Amy Elsner
1021Johnson D RulapaughItaly2026-06-16Rangoni Of Florence QUALIFIED21Xuxue Feng
1022Jeanfrancois L RutaSpain2026-05-26King, Christopher A Esq UNQUALIFIED40Amy Elsner
1023Darci U MaletBrazil2026-06-04Truhlar And Truhlar Attys QUALIFIED29Bernardo Dominic
1024Aika R DarakjyBrazil2026-06-01Morlong Associates NEGOTIATION89Anna Fali
1025Ricardo L MarrierBrazil2026-06-11Chemel, James L Cpa NEGOTIATION73Amy Elsner
1026Arvin W RoysterGermany2026-05-20Feiner Bros NEGOTIATION27Asiya Javayant
1027Costa E OstroskyCanada2026-05-24King, Christopher A Esq PROPOSAL55Ioni Bowcher
1028Maria Y RutaItaly2026-06-14Buckley Miller Wright NEGOTIATION81Xuxue Feng
1029Munro O DilliardGermany2026-05-23Rangoni Of Florence UNQUALIFIED94Onyama Limba
1030Smith W CampainBrazil2026-06-06Chapman, Ross E Esq QUALIFIED44Xuxue Feng
1031Deepesh A BologniaBrazil2026-06-16King, Christopher A Esq PROPOSAL54Elwin Sharvill
1032Deepesh I MaletSpain2026-06-07Benton, John B Jr PROPOSAL26Amy Elsner
1033Darci Y GarufiArgentina2026-06-08Feltz Printing Service RENEWAL89Elwin Sharvill
1034Costa O OldroydIndia2026-05-21King, Christopher A Esq NEGOTIATION63Ivan Magalhaes
1035Jefferson G GauchoItaly2026-05-26Chemel, James L Cpa NEW4Amy Elsner
1036Aruna Q GlickJapan2026-05-20Truhlar And Truhlar Attys PROPOSAL15Anna Fali
1037Octavia I TollnerBrazil2026-06-03Buckley Miller Wright PROPOSAL20Onyama Limba
1038Isabel C WhobreyIndia2026-06-15Dorl, James J Esq QUALIFIED21Anna Fali
1039Ivar A GarufiUnited Kingdom2026-06-05Dorl, James J Esq PROPOSAL21Stephen Shaw
1040Murillo E StensethSpain2026-06-14Rangoni Of Florence RENEWAL37Elwin Sharvill
1041Juan V RoysterBrazil2026-06-11Truhlar And Truhlar Attys PROPOSAL39Elwin Sharvill
1042Costa Q RulapaughSpain2026-06-05Rousseaux, Michael Esq RENEWAL56Bernardo Dominic
1043Octavia C SergiCanada2026-06-15Commercial Press QUALIFIED89Anna Fali
1044Misaki E DoeAustralia2026-05-23Dorl, James J Esq RENEWAL80Onyama Limba
1045Nicolas N ChuiArgentina2026-05-21Buckley Miller Wright NEGOTIATION21Bernardo Dominic
1046Arvin R RimRussia2026-06-01Printing Dimensions PROPOSAL21Bernardo Dominic
1047Tony P VenereJapan2026-05-26Buckley Miller Wright UNQUALIFIED1Xuxue Feng
1048Cody J MorascaBrazil2026-06-10Morlong Associates NEGOTIATION98Xuxue Feng
1049Aruna J OldroydAustralia2026-05-25Morlong Associates RENEWAL32Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Aika L PaprockiItalyAmy Elsner NEGOTIATION
Ricardo B PerinItalyOnyama Limba QUALIFIED
David A GauchoCanadaAsiya Javayant QUALIFIED
Sinclair H BowleyJapanAnna Fali NEW
Francesco I PoquetteArgentinaXuxue Feng PROPOSAL
James K WieserIndiaOnyama Limba RENEWAL
Johnson M TollnerGermanyStephen Shaw NEW
Silvio V RulapaughArgentinaBernardo Dominic QUALIFIED
Salvatore I PoquetteUnited KingdomIvan Magalhaes PROPOSAL
Misaki L GlickArgentinaOnyama Limba UNQUALIFIED
Octavia V NickaSpainAmy Elsner UNQUALIFIED
Cody B DarakjySpainOnyama Limba PROPOSAL
Maisha E FollerAustraliaOnyama Limba UNQUALIFIED
Leon I FlosiRussiaIoni Bowcher NEGOTIATION
Morrow V WhobreyFranceIoni Bowcher RENEWAL
Isabel Y DilliardBrazilBernardo Dominic NEW
Greenwood M KuskoRussiaOnyama Limba NEW
Morrow P ButtFranceXuxue Feng RENEWAL
Mayumi K FollerRussiaBernardo Dominic NEW
Darci S InouyeBrazilIoni Bowcher PROPOSAL
Jefferson R SergiArgentinaBernardo Dominic UNQUALIFIED
Nicolas P SlusarskiRussiaBernardo Dominic PROPOSAL
Morrow S FigeroaSpainIoni Bowcher NEGOTIATION
Chavez X PerinArgentinaBernardo Dominic RENEWAL
Aruna E SlusarskiArgentinaXuxue Feng QUALIFIED
Ivar U MorascaCanadaAsiya Javayant RENEWAL
Jefferson L GlickIndiaXuxue Feng UNQUALIFIED
Smith S ShinkoJapanStephen Shaw NEGOTIATION
Costa P BologniaAustraliaIvan Magalhaes PROPOSAL
Ashley D CampainSpainOnyama Limba NEW
Greenwood I IturbideCanadaBernardo Dominic NEW
Jennifer H KuskoUnited KingdomXuxue Feng NEW
Misaki A VenereSpainBernardo Dominic QUALIFIED
Alejandro K CaldareraArgentinaIvan Magalhaes UNQUALIFIED
Jennifer W BriddickCanadaXuxue Feng UNQUALIFIED
Claire E MarrierJapanElwin Sharvill PROPOSAL
Deepesh Y AlbaresItalyElwin Sharvill RENEWAL
Isabel B VenereGermanyIoni Bowcher NEW
Izzy W InouyeIndiaAsiya Javayant RENEWAL
Aditya E CaldareraSpainAmy Elsner QUALIFIED
Ashley K CaldareraIndiaIvan Magalhaes RENEWAL
Deepesh O InouyeItalyIoni Bowcher UNQUALIFIED
Aditya F SlusarskiItalyBernardo Dominic NEW
Claire H CaldareraIndiaAnna Fali QUALIFIED
Silvio V MaletSpainAnna Fali NEW
Kaitlin R MorascaAustraliaBernardo Dominic RENEWAL
Kaitlin V MacleadGermanyStephen Shaw NEGOTIATION
Silvio N StensethAustraliaAnna Fali PROPOSAL
Tony H OldroydAustraliaElwin Sharvill NEGOTIATION
Wickens U SergiArgentinaBernardo Dominic RENEWAL
Frozen Columns
Name
James M Amigon
Silvio K Morasca
Kadeem G Doe
Aruna L Rulapaugh
Ashley S Royster
Alejandro K Caudy
Juan K Slusarski
Rodrigues X Maclead
Jefferson L Oldroyd
Ivar Q Wieser
Cody P Ostrosky
Darci I Chui
Misaki A Ferencz
Smith B Ruta
Leon S Dilliard
Cody S Ferencz
Stacey Q Rim
Rodrigues F Foller
Octavia P Ferencz
Francesco F Campain
Greenwood L Paprocki
Kadeem P Schemmer
Deepesh W Sergi
Antonio D Rulapaugh
Nicolas W Iturbide
Murillo W Ferencz
Mujtaba L Butt
Leon I Dilliard
Julie X Albares
Kadeem O Chui
Kaitlin J Amigon
Julie Z Slusarski
Antonio O Kusko
Arvin V Iturbide
Maria L Caldarera
Aika O Butt
Ricardo Q Campain
Octavia A Rim
Misaki H Poquette
Smith R Figeroa
Ricardo W Shinko
Jennifer F Sergi
Leon L Butt
Jeanfrancois Z Morasca
Nicolas S Caldarera
Deepesh I Morasca
Munro D Paprocki
Misaki Q Darakjy
Deepesh N Nestle
Salvatore E Stenseth
IdCountryDate
1000Australia2026-06-17
1001United Kingdom2026-05-24
1002Russia2026-06-17
1003France2026-05-19
1004Spain2026-06-04
1005Australia2026-06-13
1006Australia2026-06-13
1007Japan2026-06-13
1008Japan2026-05-21
1009Japan2026-05-19
1010Russia2026-06-05
1011Spain2026-05-29
1012Russia2026-05-28
1013India2026-06-05
1014Russia2026-05-26
1015Russia2026-06-04
1016Spain2026-05-29
1017Italy2026-05-20
1018Australia2026-06-07
1019Brazil2026-05-29
1020Brazil2026-06-13
1021Germany2026-06-05
1022Spain2026-06-01
1023Russia2026-05-28
1024Italy2026-06-02
1025United Kingdom2026-05-29
1026Russia2026-06-02
1027Germany2026-06-02
1028Canada2026-06-08
1029Argentina2026-06-11
1030Brazil2026-05-26
1031France2026-05-21
1032Brazil2026-06-15
1033Germany2026-05-23
1034Canada2026-06-04
1035United Kingdom2026-06-10
1036Spain2026-05-20
1037Russia2026-05-19
1038Italy2026-06-04
1039Japan2026-06-06
1040Russia2026-06-06
1041Italy2026-06-04
1042Germany2026-06-12
1043Italy2026-05-19
1044Japan2026-05-29
1045Russia2026-06-13
1046United Kingdom2026-06-15
1047Russia2026-06-16
1048Italy2026-05-25
1049Canada2026-05-26

On-Demand Data

NameIdCountryDate
Silvio P Slusarski1000Argentina2026-05-29
Mujtaba F Albares1001Italy2026-06-09
Munro N Ferencz1002Brazil2026-05-24
Jennifer K Glick1003Canada2026-06-12
Aruna V Oldroyd1004India2026-05-21
Arvin W Iturbide1005Japan2026-06-02
Stacey K Maclead1006Argentina2026-05-20
Claire Z Ferencz1007Spain2026-05-31
Faith T Foller1008Spain2026-06-08
Adams H Albares1009Spain2026-06-13
Aika S Whobrey1010Italy2026-06-09
David T Darakjy1011Spain2026-05-27
Costa H Kusko1012Argentina2026-06-05
Mayumi O Schemmer1013United Kingdom2026-05-28
Leja R Tollner1014Spain2026-06-14
Chavez Y Whobrey1015France2026-06-03
Jefferson G Darakjy1016Australia2026-05-28
Ivar T Butt1017France2026-05-24
Faith X Albares1018Australia2026-06-17
Sinclair W Inouye1019India2026-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley X MacleadFranceOnyama Limba NEW
James F RoysterUnited KingdomIvan Magalhaes RENEWAL
Ricardo X StensethArgentinaElwin Sharvill NEGOTIATION
Tony O StockhamUnited KingdomAmy Elsner RENEWAL
Alejandro G OstroskyFranceIoni Bowcher NEW
Emily K FollerBrazilAnna Fali RENEWAL
Aditya S BologniaRussiaOnyama Limba QUALIFIED
Aruna E ButtIndiaStephen Shaw PROPOSAL
Costa F DoeArgentinaIvan Magalhaes NEGOTIATION
Rodrigues K WaycottRussiaElwin Sharvill QUALIFIED
Mayumi A FigeroaBrazilElwin Sharvill UNQUALIFIED
Jones H NickaRussiaAnna Fali UNQUALIFIED
Silvio F FerenczUnited KingdomStephen Shaw NEW
Tony S PaprockiRussiaAnna Fali QUALIFIED
Munro X BriddickFranceAsiya Javayant RENEWAL
Munro S RoysterFranceBernardo Dominic UNQUALIFIED
Emily B WieserJapanIvan Magalhaes NEGOTIATION
Murillo U SlusarskiJapanXuxue Feng RENEWAL
David I RulapaughArgentinaElwin Sharvill NEGOTIATION
Mujtaba I OldroydSpainElwin Sharvill QUALIFIED
Ivar W NestleArgentinaOnyama Limba QUALIFIED
Claire N FigeroaArgentinaAnna Fali UNQUALIFIED
David E DarakjyGermanyElwin Sharvill NEGOTIATION
Alejandro L BriddickAustraliaAmy Elsner UNQUALIFIED
Darci X NestleCanadaAnna Fali PROPOSAL
Emily S AmigonIndiaIvan Magalhaes UNQUALIFIED
Antonio T ButtSpainAnna Fali UNQUALIFIED
Alejandro P VenereIndiaAsiya Javayant RENEWAL
Clifford E VenereFranceOnyama Limba NEW
Nicolas A GarufiBrazilElwin Sharvill RENEWAL
Tony V SergiAustraliaIoni Bowcher PROPOSAL
Jefferson M KuskoAustraliaIvan Magalhaes UNQUALIFIED
Aditya Z RutaGermanyIvan Magalhaes QUALIFIED
Jennifer Z VocelkaUnited KingdomIoni Bowcher QUALIFIED
Ricardo I PerinIndiaXuxue Feng RENEWAL
Juan G WaycottArgentinaBernardo Dominic UNQUALIFIED
Claire K MaletJapanAmy Elsner RENEWAL
Stacey M AmigonUnited KingdomElwin Sharvill RENEWAL
Antonio J TollnerBrazilAsiya Javayant PROPOSAL
Leon S KolmetzIndiaElwin Sharvill 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.