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
Leja N VenereAustraliaIvan Magalhaes RENEWAL
Smith T GillianCanadaElwin Sharvill NEW
Antonio H FerenczSpainAnna Fali PROPOSAL
Alejandro M VocelkaIndiaAsiya Javayant NEW
Salvatore T GillianBrazilBernardo Dominic NEW
Claire Q SergiSpainIoni Bowcher UNQUALIFIED
Greenwood P CaldareraItalyOnyama Limba NEW
Aditya E AlbaresAustraliaIoni Bowcher NEGOTIATION
Rodrigues X RutaBrazilOnyama Limba UNQUALIFIED
Tony L FlosiGermanyAnna Fali QUALIFIED
Juan M ShinkoFranceBernardo Dominic NEW
Sinclair N SaylorsUnited KingdomAmy Elsner QUALIFIED
Maisha L BriddickFranceAsiya Javayant NEW
Murillo K MarrierRussiaAnna Fali RENEWAL
Aditya I DoeJapanXuxue Feng NEGOTIATION
Adams P MaletGermanyIvan Magalhaes RENEWAL
Faith R CaldareraFranceBernardo Dominic RENEWAL
Johnson Z WaycottFranceElwin Sharvill NEGOTIATION
Jeanfrancois E StensethAustraliaStephen Shaw PROPOSAL
Deepesh O StockhamItalyElwin Sharvill NEW
David S MorascaArgentinaBernardo Dominic NEW
Mayumi B GarufiBrazilAsiya Javayant RENEWAL
Smith F FigeroaUnited KingdomAsiya Javayant UNQUALIFIED
Leon S OldroydCanadaStephen Shaw NEW
Arvin Z AmigonBrazilElwin Sharvill UNQUALIFIED
Darci M StockhamBrazilIvan Magalhaes RENEWAL
Johnson D DarakjyRussiaOnyama Limba UNQUALIFIED
Sinclair X BriddickSpainStephen Shaw UNQUALIFIED
Leja B GlickSpainBernardo Dominic NEW
Murillo O RimCanadaAsiya Javayant NEGOTIATION
James E CaudyAustraliaAsiya Javayant UNQUALIFIED
Deepesh R VenereItalyAsiya Javayant NEGOTIATION
Isabel W ShinkoArgentinaAnna Fali RENEWAL
Salvatore J RulapaughCanadaIoni Bowcher PROPOSAL
Adams L PoquetteRussiaStephen Shaw QUALIFIED
Maria C PerinAustraliaAmy Elsner RENEWAL
Francesco T StensethCanadaIoni Bowcher QUALIFIED
Antonio I DoeSpainOnyama Limba QUALIFIED
Julie K PerinSpainAsiya Javayant NEGOTIATION
Jeanfrancois R MarrierCanadaStephen Shaw NEGOTIATION
Silvio Q BologniaUnited KingdomAnna Fali QUALIFIED
Julie E ShinkoIndiaBernardo Dominic NEW
Kadeem G TollnerAustraliaXuxue Feng QUALIFIED
Adams O WaycottCanadaBernardo Dominic PROPOSAL
Maria C StensethCanadaIvan Magalhaes RENEWAL
Smith M FigeroaItalyIoni Bowcher QUALIFIED
James T GarufiJapanStephen Shaw UNQUALIFIED
Ricardo L FollerJapanAnna Fali NEGOTIATION
Morrow J StensethJapanIoni Bowcher UNQUALIFIED
Wickens T VocelkaAustraliaXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Antonio J IturbideIndiaIvan Magalhaes NEGOTIATION
Izzy A StockhamAustraliaIvan Magalhaes RENEWAL
Costa P PerinFranceXuxue Feng NEW
Francesco U MarrierRussiaIoni Bowcher PROPOSAL
Morrow I FlosiSpainAsiya Javayant RENEWAL
Jennifer E FlosiIndiaBernardo Dominic NEGOTIATION
David K MacleadGermanyAsiya Javayant NEGOTIATION
Adams K OstroskyFranceStephen Shaw NEW
Misaki X NestleAustraliaIvan Magalhaes RENEWAL
Clifford T BologniaJapanIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith M DilliardGermany2026-06-06Feltz Printing Service RENEWAL97Bernardo Dominic
1001Isabel X MaletFrance2026-06-13Rousseaux, Michael Esq QUALIFIED84Anna Fali
1002Greenwood F BologniaAustralia2026-05-20Rousseaux, Michael Esq QUALIFIED94Onyama Limba
1003Stacey U MacleadGermany2026-05-18Rangoni Of Florence QUALIFIED99Anna Fali
1004Ashley U MorascaItaly2026-06-08Rangoni Of Florence NEGOTIATION28Xuxue Feng
1005Rodrigues S MaletUnited Kingdom2026-05-17Rousseaux, Michael Esq PROPOSAL11Xuxue Feng
1006Antonio T WhobreySpain2026-06-13Commercial Press RENEWAL33Onyama Limba
1007Munro N NestleFrance2026-06-03Morlong Associates QUALIFIED39Onyama Limba
1008Misaki T DoeIndia2026-05-26Feiner Bros UNQUALIFIED86Elwin Sharvill
1009Tony J TollnerFrance2026-05-28Chemel, James L Cpa NEW14Ivan Magalhaes
1010Murillo F StockhamSpain2026-05-22Morlong Associates RENEWAL9Stephen Shaw
1011Izzy N RulapaughFrance2026-06-10King, Christopher A Esq NEGOTIATION29Asiya Javayant
1012Clifford C ButtSpain2026-06-05Rousseaux, Michael Esq RENEWAL45Amy Elsner
1013Aika B PerinArgentina2026-05-16Feiner Bros QUALIFIED25Elwin Sharvill
1014Kaitlin K AlbaresItaly2026-06-14Truhlar And Truhlar Attys UNQUALIFIED11Amy Elsner
1015Jeanfrancois N DilliardSpain2026-06-08Benton, John B Jr NEGOTIATION0Ivan Magalhaes
1016Maria J RulapaughItaly2026-05-31Printing Dimensions NEGOTIATION0Onyama Limba
1017Misaki D VocelkaBrazil2026-05-21Chanay, Jeffrey A Esq RENEWAL68Xuxue Feng
1018James F FerenczItaly2026-06-09Morlong Associates NEW70Xuxue Feng
1019Murillo G WhobreyItaly2026-06-02Feiner Bros PROPOSAL71Bernardo Dominic
1020Octavia Q MacleadFrance2026-05-25Morlong Associates NEW94Ivan Magalhaes
1021Costa Y FollerFrance2026-05-24Chanay, Jeffrey A Esq UNQUALIFIED45Asiya Javayant
1022Maria J KolmetzGermany2026-06-05Benton, John B Jr UNQUALIFIED59Xuxue Feng
1023Jennifer A KolmetzJapan2026-05-19Feiner Bros PROPOSAL98Bernardo Dominic
1024Cody Z SlusarskiRussia2026-06-01Rousseaux, Michael Esq NEGOTIATION80Asiya Javayant
1025Kaitlin G DarakjyUnited Kingdom2026-06-11Printing Dimensions PROPOSAL51Anna Fali
1026Silvio V DoeUnited Kingdom2026-05-30Commercial Press PROPOSAL39Stephen Shaw
1027Cody C KolmetzSpain2026-05-30Commercial Press RENEWAL55Xuxue Feng
1028Smith W NickaCanada2026-06-07Benton, John B Jr UNQUALIFIED83Xuxue Feng
1029Jennifer Q CampainItaly2026-05-23Feiner Bros NEGOTIATION99Bernardo Dominic
1030Wickens D CaudyBrazil2026-05-22Chemel, James L Cpa NEW2Ivan Magalhaes
1031Ricardo D RimGermany2026-05-25Dorl, James J Esq PROPOSAL6Stephen Shaw
1032Murillo Z DarakjyRussia2026-05-19Chapman, Ross E Esq PROPOSAL59Bernardo Dominic
1033Clifford E ChuiItaly2026-05-27Rousseaux, Michael Esq UNQUALIFIED66Amy Elsner
1034Greenwood J FigeroaCanada2026-06-12Rangoni Of Florence NEGOTIATION52Ioni Bowcher
1035Jones A PerinAustralia2026-06-13Dorl, James J Esq QUALIFIED73Ivan Magalhaes
1036Silvio D ShinkoUnited Kingdom2026-06-06Feiner Bros PROPOSAL15Anna Fali
1037Rodrigues P RutaSpain2026-05-31Truhlar And Truhlar Attys UNQUALIFIED51Asiya Javayant
1038Tony H RoysterBrazil2026-05-17Commercial Press PROPOSAL14Amy Elsner
1039James K FigeroaUnited Kingdom2026-05-18Truhlar And Truhlar Attys UNQUALIFIED76Onyama Limba
1040Arvin J VocelkaJapan2026-05-20Commercial Press PROPOSAL22Stephen Shaw
1041Aika C SchemmerIndia2026-06-04Printing Dimensions RENEWAL69Xuxue Feng
1042Chavez J SchemmerGermany2026-06-11Truhlar And Truhlar Attys NEW82Stephen Shaw
1043Misaki P DoeItaly2026-05-20Chanay, Jeffrey A Esq UNQUALIFIED41Elwin Sharvill
1044Stacey K KuskoSpain2026-05-28Buckley Miller Wright PROPOSAL35Xuxue Feng
1045Misaki R PoquetteAustralia2026-06-06Buckley Miller Wright RENEWAL84Ivan Magalhaes
1046Silvio L FerenczItaly2026-05-24Chanay, Jeffrey A Esq QUALIFIED41Asiya Javayant
1047Ivar M CampainArgentina2026-05-26Dorl, James J Esq QUALIFIED46Stephen Shaw
1048Adams E RulapaughGermany2026-06-05Rangoni Of Florence QUALIFIED6Ivan Magalhaes
1049Kaitlin Q GarufiItaly2026-05-20Truhlar And Truhlar Attys NEW12Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Leja Z MacleadJapanIvan Magalhaes PROPOSAL
Stacey X MaletGermanyIoni Bowcher QUALIFIED
Clifford H WhobreyBrazilAnna Fali UNQUALIFIED
Aditya Z DarakjyItalyIvan Magalhaes RENEWAL
Costa Y OldroydArgentinaElwin Sharvill NEW
Sinclair F AlbaresSpainAsiya Javayant RENEWAL
Aditya E FlosiCanadaOnyama Limba QUALIFIED
Kadeem V RoysterIndiaStephen Shaw QUALIFIED
Kadeem P SergiAustraliaXuxue Feng NEGOTIATION
Maisha R OldroydBrazilIoni Bowcher QUALIFIED
Mujtaba X DilliardJapanElwin Sharvill UNQUALIFIED
Jeanfrancois F WieserCanadaOnyama Limba RENEWAL
Chavez W MorascaCanadaIoni Bowcher NEGOTIATION
Darci Q StockhamItalyElwin Sharvill NEGOTIATION
Misaki L TollnerBrazilAnna Fali NEW
Rodrigues B AmigonItalyAmy Elsner PROPOSAL
Misaki Z KuskoJapanIvan Magalhaes PROPOSAL
Costa L IturbideIndiaAnna Fali RENEWAL
Jennifer W SergiArgentinaAsiya Javayant RENEWAL
Aruna Y ButtUnited KingdomStephen Shaw UNQUALIFIED
Jefferson G AmigonSpainElwin Sharvill QUALIFIED
Clifford O WieserJapanIvan Magalhaes QUALIFIED
Faith H NestleRussiaStephen Shaw UNQUALIFIED
Munro Z BriddickFranceIvan Magalhaes NEGOTIATION
Nicolas Y KuskoSpainIvan Magalhaes QUALIFIED
Misaki V MacleadGermanyBernardo Dominic UNQUALIFIED
Nicolas T SergiRussiaXuxue Feng NEW
Jones X AlbaresSpainBernardo Dominic UNQUALIFIED
Maria F PoquetteFranceBernardo Dominic RENEWAL
Alejandro V CaldareraJapanStephen Shaw RENEWAL
Leja E MorascaGermanyAnna Fali NEW
Greenwood N FollerArgentinaElwin Sharvill QUALIFIED
Aruna L PoquetteCanadaElwin Sharvill UNQUALIFIED
Mayumi Z ButtSpainAsiya Javayant NEGOTIATION
Leon V FlosiSpainXuxue Feng UNQUALIFIED
Mayumi N ButtSpainIvan Magalhaes NEW
Izzy F DarakjyItalyXuxue Feng PROPOSAL
Arvin W OldroydBrazilAnna Fali UNQUALIFIED
Silvio M SaylorsItalyXuxue Feng NEGOTIATION
Isabel J ButtSpainXuxue Feng UNQUALIFIED
Emily I ChuiItalyBernardo Dominic NEGOTIATION
Murillo I RoysterRussiaIoni Bowcher QUALIFIED
Francesco U WaycottBrazilIvan Magalhaes PROPOSAL
Smith N RimSpainStephen Shaw NEGOTIATION
Juan H RimBrazilElwin Sharvill RENEWAL
Aditya T KolmetzFranceAsiya Javayant NEW
Maisha G SaylorsSpainIvan Magalhaes NEGOTIATION
Rodrigues S BowleyUnited KingdomAnna Fali RENEWAL
Deepesh G RulapaughJapanXuxue Feng NEGOTIATION
Smith I CaldareraAustraliaAsiya Javayant QUALIFIED
Frozen Columns
Name
Jefferson P Nestle
Kadeem T Stockham
Aika O Stockham
Claire N Amigon
Tony U Maclead
Aditya V Foller
Aditya Y Oldroyd
Jefferson X Maclead
Julie P Gaucho
Wickens O Campain
Maisha W Stenseth
Jennifer F Garufi
Chavez X Malet
Cody M Paprocki
Deepesh K Bowley
Greenwood R Caudy
Emily W Shinko
Deepesh V Nicka
Stacey Z Maclead
Chavez Y Poquette
Chavez X Amigon
Smith X Flosi
Kadeem L Royster
Morrow M Garufi
Julie A Kusko
Stacey O Chui
Johnson C Shinko
Ricardo V Vocelka
Munro D Rulapaugh
Murillo X Nicka
Izzy V Malet
Johnson P Darakjy
David G Paprocki
Antonio R Ferencz
Greenwood B Caldarera
Salvatore F Maclead
Deepesh K Ruta
Antonio J Waycott
Sinclair A Caudy
Leja K Sergi
Leja M Caldarera
Tony D Figeroa
Maisha L Stenseth
Izzy N Flosi
Emily C Poquette
David H Glick
Leja T Gaucho
Adams T Oldroyd
Ashley E Butt
Adams A Oldroyd
IdCountryDate
1000United Kingdom2026-06-05
1001Brazil2026-05-18
1002Japan2026-05-21
1003Russia2026-05-17
1004France2026-05-23
1005Brazil2026-05-16
1006Spain2026-06-04
1007Japan2026-05-16
1008Argentina2026-06-07
1009India2026-06-08
1010India2026-05-21
1011France2026-06-14
1012Japan2026-05-24
1013Argentina2026-05-16
1014Germany2026-06-04
1015Germany2026-06-11
1016Germany2026-06-05
1017India2026-05-25
1018Brazil2026-05-16
1019Spain2026-06-13
1020Russia2026-05-26
1021Canada2026-05-17
1022Australia2026-05-27
1023France2026-05-19
1024Argentina2026-06-09
1025Russia2026-06-12
1026India2026-06-05
1027France2026-06-09
1028Spain2026-06-04
1029United Kingdom2026-06-05
1030Argentina2026-05-29
1031Italy2026-06-07
1032Argentina2026-06-13
1033Japan2026-06-01
1034India2026-05-30
1035Canada2026-05-26
1036Russia2026-06-14
1037United Kingdom2026-06-13
1038India2026-05-26
1039Brazil2026-05-21
1040Canada2026-05-21
1041Argentina2026-05-28
1042Italy2026-05-26
1043Spain2026-05-20
1044India2026-06-12
1045Canada2026-06-03
1046United Kingdom2026-05-18
1047Argentina2026-05-28
1048Japan2026-05-31
1049France2026-05-22

On-Demand Data

NameIdCountryDate
Jeanfrancois V Schemmer1000Germany2026-06-05
Jennifer X Ostrosky1001Italy2026-06-07
David J Perin1002Germany2026-06-08
Ivar L Iturbide1003Italy2026-06-14
Jefferson O Kolmetz1004Argentina2026-05-24
Aruna E Wieser1005Brazil2026-05-23
Antonio Y Butt1006Japan2026-05-25
Jennifer K Ostrosky1007Germany2026-06-14
Murillo A Dilliard1008Spain2026-05-30
Arvin L Paprocki1009Germany2026-06-05
Isabel B Morasca1010Germany2026-05-25
Julie F Caldarera1011Germany2026-06-07
Antonio M Sergi1012Brazil2026-05-19
Darci B Foller1013Argentina2026-06-03
Alejandro J Bolognia1014Germany2026-06-06
Kadeem U Darakjy1015Spain2026-05-30
Stacey L Ostrosky1016Spain2026-05-19
Darci P Wieser1017France2026-05-24
Aruna G Campain1018Russia2026-05-16
Leja X Morasca1019France2026-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja U SlusarskiCanadaAsiya Javayant PROPOSAL
Jefferson L FollerAustraliaAnna Fali UNQUALIFIED
Misaki U MorascaArgentinaAnna Fali PROPOSAL
Arvin Z SlusarskiCanadaOnyama Limba QUALIFIED
Greenwood M FlosiFranceIoni Bowcher RENEWAL
Jefferson N GarufiIndiaAnna Fali PROPOSAL
Izzy M BowleyGermanyAnna Fali QUALIFIED
Clifford P MorascaUnited KingdomOnyama Limba NEW
Munro W IturbideAustraliaIoni Bowcher NEW
Aika W PoquetteUnited KingdomAnna Fali RENEWAL
Munro D WaycottCanadaAnna Fali NEGOTIATION
Claire Q NickaSpainOnyama Limba RENEWAL
Kaitlin Z VocelkaAustraliaIoni Bowcher UNQUALIFIED
Ashley C GauchoFranceStephen Shaw RENEWAL
Darci T StensethFranceAnna Fali NEGOTIATION
Smith J CaudyAustraliaIvan Magalhaes NEGOTIATION
Johnson Z BowleyIndiaIoni Bowcher QUALIFIED
David O FlosiFranceElwin Sharvill RENEWAL
Aruna W ChuiGermanyIvan Magalhaes UNQUALIFIED
Aika W CaldareraArgentinaAnna Fali QUALIFIED
Chavez V InouyeArgentinaAnna Fali PROPOSAL
Ivar O StockhamJapanStephen Shaw NEW
Stacey O OstroskyCanadaXuxue Feng PROPOSAL
Mujtaba S OldroydFranceAnna Fali NEGOTIATION
James V AmigonUnited KingdomElwin Sharvill QUALIFIED
Munro Q FigeroaRussiaAnna Fali QUALIFIED
Silvio K WhobreySpainAsiya Javayant QUALIFIED
Murillo K MacleadCanadaAsiya Javayant NEW
Silvio P RimFranceAmy Elsner NEGOTIATION
Antonio D BologniaGermanyIoni Bowcher UNQUALIFIED
Mayumi B StensethFranceAnna Fali QUALIFIED
Maisha P WhobreyItalyIoni Bowcher UNQUALIFIED
Munro P DilliardItalyBernardo Dominic PROPOSAL
James Y CaldareraItalyXuxue Feng RENEWAL
Misaki M FlosiBrazilElwin Sharvill PROPOSAL
Clifford U KuskoCanadaBernardo Dominic RENEWAL
Stacey W StensethGermanyIvan Magalhaes NEW
Murillo Y GillianArgentinaBernardo Dominic NEGOTIATION
Mayumi S SergiJapanAsiya Javayant UNQUALIFIED
Smith X FlosiSpainOnyama Limba NEGOTIATION

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