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
Kadeem K KolmetzUnited KingdomAmy Elsner UNQUALIFIED
Misaki D DarakjyIndiaElwin Sharvill QUALIFIED
Nicolas W StockhamGermanyIoni Bowcher PROPOSAL
Maisha S ShinkoIndiaStephen Shaw RENEWAL
Clifford U KolmetzSpainBernardo Dominic NEW
Maria K DoeJapanAsiya Javayant NEGOTIATION
Misaki K StensethRussiaXuxue Feng NEGOTIATION
Alejandro L CampainJapanAsiya Javayant QUALIFIED
Leon F VocelkaIndiaIoni Bowcher NEGOTIATION
Leon Z VenereFranceIvan Magalhaes NEGOTIATION
James X FollerGermanyBernardo Dominic PROPOSAL
Antonio X WieserBrazilXuxue Feng QUALIFIED
Claire B GillianArgentinaIvan Magalhaes NEGOTIATION
Darci O StensethIndiaOnyama Limba QUALIFIED
Leon G MacleadGermanyElwin Sharvill QUALIFIED
Misaki O GillianFranceAmy Elsner UNQUALIFIED
Leja P OldroydUnited KingdomIoni Bowcher PROPOSAL
Tony B GauchoUnited KingdomAsiya Javayant UNQUALIFIED
Munro Z OldroydIndiaStephen Shaw NEGOTIATION
Misaki A RutaBrazilAmy Elsner NEW
Jefferson Z KolmetzFranceBernardo Dominic NEGOTIATION
Kaitlin A MaletIndiaAsiya Javayant NEGOTIATION
Deepesh E MaletAustraliaOnyama Limba NEW
Antonio U CaldareraItalyIoni Bowcher QUALIFIED
Chavez N WieserGermanyIvan Magalhaes NEW
Arvin P OldroydAustraliaIvan Magalhaes UNQUALIFIED
James S CampainArgentinaIoni Bowcher PROPOSAL
Smith X OstroskyJapanOnyama Limba QUALIFIED
Aditya S MarrierAustraliaIoni Bowcher NEGOTIATION
Aruna I DoeGermanyAmy Elsner RENEWAL
Ashley C MacleadIndiaIoni Bowcher NEGOTIATION
Arvin R SergiUnited KingdomAsiya Javayant UNQUALIFIED
Chavez R SchemmerArgentinaAmy Elsner NEGOTIATION
Costa Z OstroskyUnited KingdomAmy Elsner NEGOTIATION
Greenwood V VenereFranceXuxue Feng NEW
Octavia D RulapaughJapanStephen Shaw QUALIFIED
Francesco K AlbaresArgentinaElwin Sharvill RENEWAL
Leja F OstroskyCanadaAsiya Javayant PROPOSAL
Octavia F PerinIndiaIoni Bowcher NEW
Maria L ShinkoCanadaOnyama Limba UNQUALIFIED
Costa I OstroskyFranceXuxue Feng NEGOTIATION
Nicolas A SchemmerJapanIoni Bowcher NEGOTIATION
Ricardo S CaldareraAustraliaIoni Bowcher QUALIFIED
Mayumi Y StockhamRussiaAnna Fali RENEWAL
Kadeem K WhobreySpainIoni Bowcher QUALIFIED
Clifford Q IturbideIndiaIoni Bowcher PROPOSAL
Kadeem U OldroydArgentinaElwin Sharvill NEW
Wickens U DarakjyRussiaAmy Elsner PROPOSAL
Aika D ShinkoAustraliaElwin Sharvill RENEWAL
Salvatore W BowleyArgentinaElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Adams C GarufiUnited KingdomAmy Elsner UNQUALIFIED
Deepesh T ShinkoUnited KingdomElwin Sharvill QUALIFIED
Jennifer L MarrierBrazilElwin Sharvill NEW
Jones Z FlosiSpainAsiya Javayant NEW
James F SaylorsGermanyAsiya Javayant NEGOTIATION
Greenwood Q GauchoGermanyStephen Shaw RENEWAL
Mayumi D SchemmerArgentinaAnna Fali PROPOSAL
Francesco M NestleArgentinaAmy Elsner NEGOTIATION
Mayumi P OldroydArgentinaOnyama Limba PROPOSAL
Greenwood Z OldroydCanadaBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey E AmigonAustralia2026-06-05Chapman, Ross E Esq PROPOSAL12Ioni Bowcher
1001Arvin K RoysterCanada2026-06-03Printing Dimensions RENEWAL29Ivan Magalhaes
1002James N CampainGermany2026-05-22Feltz Printing Service UNQUALIFIED27Ioni Bowcher
1003Ashley U IturbideBrazil2026-06-03Truhlar And Truhlar Attys PROPOSAL38Amy Elsner
1004Aditya I ButtBrazil2026-05-31Morlong Associates PROPOSAL88Elwin Sharvill
1005Leja F ChuiJapan2026-05-25King, Christopher A Esq RENEWAL34Elwin Sharvill
1006Tony Q MarrierAustralia2026-05-16Feltz Printing Service QUALIFIED94Ioni Bowcher
1007Claire Q GarufiUnited Kingdom2026-05-22Chanay, Jeffrey A Esq NEW16Asiya Javayant
1008Arvin G CaldareraFrance2026-05-23Chapman, Ross E Esq RENEWAL1Xuxue Feng
1009Aika C DarakjyArgentina2026-05-24King, Christopher A Esq NEGOTIATION79Bernardo Dominic
1010Antonio V SaylorsArgentina2026-05-26Truhlar And Truhlar Attys NEW27Asiya Javayant
1011Julie O SchemmerRussia2026-05-14Morlong Associates UNQUALIFIED60Ioni Bowcher
1012Johnson J RimBrazil2026-06-03Feltz Printing Service QUALIFIED65Amy Elsner
1013Darci G ChuiGermany2026-05-28Benton, John B Jr PROPOSAL22Onyama Limba
1014Wickens H FigeroaArgentina2026-05-12Truhlar And Truhlar Attys RENEWAL72Bernardo Dominic
1015Mujtaba C CaudyItaly2026-05-12Rangoni Of Florence QUALIFIED36Xuxue Feng
1016Salvatore Q BriddickGermany2026-06-05Rangoni Of Florence PROPOSAL64Amy Elsner
1017Deepesh W PoquetteUnited Kingdom2026-05-29Buckley Miller Wright QUALIFIED2Amy Elsner
1018Julie Z RutaBrazil2026-05-13Printing Dimensions RENEWAL38Bernardo Dominic
1019Alejandro O WieserBrazil2026-05-29Benton, John B Jr QUALIFIED23Asiya Javayant
1020Misaki O MaletJapan2026-05-10Dorl, James J Esq RENEWAL42Elwin Sharvill
1021Emily Q RoysterCanada2026-06-04King, Christopher A Esq UNQUALIFIED85Amy Elsner
1022Faith V GillianUnited Kingdom2026-05-20Dorl, James J Esq PROPOSAL49Onyama Limba
1023Aika H PaprockiCanada2026-05-10Printing Dimensions RENEWAL65Amy Elsner
1024Leja N WaycottArgentina2026-05-13Feltz Printing Service UNQUALIFIED10Stephen Shaw
1025Jefferson E FlosiCanada2026-06-06Chapman, Ross E Esq PROPOSAL4Ioni Bowcher
1026Leja M ChuiSpain2026-05-29Feiner Bros PROPOSAL28Bernardo Dominic
1027Nicolas Q RoysterCanada2026-05-14Feltz Printing Service NEGOTIATION89Ioni Bowcher
1028Juan A SlusarskiIndia2026-05-16Chemel, James L Cpa QUALIFIED18Stephen Shaw
1029Murillo F BriddickGermany2026-05-28Benton, John B Jr NEW72Elwin Sharvill
1030Munro M OldroydAustralia2026-05-30Rangoni Of Florence RENEWAL13Xuxue Feng
1031Deepesh F RoysterRussia2026-05-29Dorl, James J Esq RENEWAL86Xuxue Feng
1032Rodrigues J RoysterIndia2026-05-30Feiner Bros NEGOTIATION5Ioni Bowcher
1033Costa E KuskoJapan2026-05-19Rangoni Of Florence QUALIFIED86Ioni Bowcher
1034Jeanfrancois O StockhamArgentina2026-05-12Commercial Press RENEWAL17Xuxue Feng
1035Cody K SergiBrazil2026-05-17Rangoni Of Florence NEW43Elwin Sharvill
1036Ricardo A BowleyJapan2026-05-27Buckley Miller Wright NEGOTIATION50Asiya Javayant
1037Izzy C MaletCanada2026-05-21Buckley Miller Wright PROPOSAL24Anna Fali
1038Adams D RutaCanada2026-05-18Buckley Miller Wright PROPOSAL7Bernardo Dominic
1039Johnson C FerenczSpain2026-05-10Commercial Press NEGOTIATION11Stephen Shaw
1040Mayumi O RulapaughBrazil2026-05-20Rangoni Of Florence QUALIFIED35Amy Elsner
1041Jennifer L DilliardSpain2026-05-25Feltz Printing Service RENEWAL13Ioni Bowcher
1042Antonio A SchemmerUnited Kingdom2026-05-22Buckley Miller Wright NEW8Ioni Bowcher
1043Stacey A PerinUnited Kingdom2026-06-02Rousseaux, Michael Esq QUALIFIED75Onyama Limba
1044James X RutaAustralia2026-05-16Printing Dimensions PROPOSAL1Bernardo Dominic
1045Silvio N FigeroaAustralia2026-05-22Benton, John B Jr RENEWAL64Stephen Shaw
1046Aditya P KuskoAustralia2026-06-02Chanay, Jeffrey A Esq QUALIFIED77Asiya Javayant
1047Isabel C ButtJapan2026-05-22King, Christopher A Esq UNQUALIFIED53Stephen Shaw
1048Octavia Y SergiUnited Kingdom2026-05-30King, Christopher A Esq RENEWAL25Bernardo Dominic
1049Murillo D BriddickGermany2026-06-02Dorl, James J Esq QUALIFIED76Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Clifford M ChuiBrazilStephen Shaw PROPOSAL
Stacey K PaprockiBrazilStephen Shaw RENEWAL
Jeanfrancois E PoquetteRussiaIoni Bowcher RENEWAL
Francesco F NickaArgentinaAmy Elsner RENEWAL
Jones E VenereJapanElwin Sharvill UNQUALIFIED
Claire F DoeArgentinaAmy Elsner NEW
Costa Q SaylorsJapanOnyama Limba RENEWAL
Ashley E SergiRussiaStephen Shaw RENEWAL
Aika G IturbideAustraliaElwin Sharvill UNQUALIFIED
David G KuskoArgentinaIoni Bowcher NEW
Claire Z GillianIndiaElwin Sharvill NEW
Salvatore W GillianUnited KingdomXuxue Feng RENEWAL
Aruna D GarufiSpainStephen Shaw RENEWAL
Jeanfrancois J MacleadItalyIvan Magalhaes UNQUALIFIED
Juan P SaylorsSpainAmy Elsner QUALIFIED
Alejandro D DarakjyFranceIvan Magalhaes NEGOTIATION
Aruna O BriddickGermanyBernardo Dominic UNQUALIFIED
Aditya F FlosiIndiaAmy Elsner PROPOSAL
Stacey P KolmetzGermanyIoni Bowcher NEGOTIATION
Clifford V KolmetzAustraliaAnna Fali NEGOTIATION
Murillo I VocelkaFranceBernardo Dominic UNQUALIFIED
Misaki B BriddickJapanIoni Bowcher PROPOSAL
Stacey S WhobreyCanadaAsiya Javayant UNQUALIFIED
Adams G ShinkoAustraliaIvan Magalhaes UNQUALIFIED
Julie G ChuiSpainStephen Shaw QUALIFIED
Aika X StensethGermanyIoni Bowcher NEGOTIATION
Smith I ShinkoItalyAmy Elsner NEW
Alejandro S AmigonAustraliaAnna Fali PROPOSAL
Francesco V MaletJapanOnyama Limba QUALIFIED
Cody U StensethIndiaIoni Bowcher NEW
Emily E VocelkaUnited KingdomIvan Magalhaes PROPOSAL
Munro T MaletUnited KingdomElwin Sharvill NEW
Mayumi I RimRussiaIoni Bowcher NEGOTIATION
Maria W BowleyItalyElwin Sharvill PROPOSAL
Antonio M SchemmerItalyAsiya Javayant NEGOTIATION
Misaki W MacleadJapanAmy Elsner NEW
Mujtaba A TollnerGermanyAnna Fali NEGOTIATION
Aruna T WaycottIndiaXuxue Feng PROPOSAL
Silvio E SaylorsIndiaXuxue Feng NEGOTIATION
Johnson O TollnerFranceIoni Bowcher UNQUALIFIED
Greenwood P AlbaresJapanElwin Sharvill NEGOTIATION
Maisha W GillianIndiaStephen Shaw PROPOSAL
Deepesh X DoeCanadaIvan Magalhaes NEW
Arvin Q RimArgentinaAmy Elsner NEGOTIATION
Arvin Z ButtBrazilOnyama Limba RENEWAL
Octavia F SchemmerAustraliaAsiya Javayant PROPOSAL
Izzy L RutaIndiaIoni Bowcher NEW
Emily R OldroydIndiaAmy Elsner UNQUALIFIED
Rodrigues J OldroydJapanIvan Magalhaes QUALIFIED
Jones N WieserFranceBernardo Dominic NEW
Frozen Columns
Name
Tony E Schemmer
Misaki V Briddick
Tony W Gillian
David Z Glick
Arvin V Tollner
Mujtaba D Wieser
Salvatore I Rim
Rodrigues G Amigon
Maria M Kolmetz
Arvin K Royster
Aditya Y Bowley
Darci X Bowley
Smith H Schemmer
Faith D Glick
Juan R Figeroa
Silvio V Caudy
David R Ruta
Kaitlin Q Caldarera
Maisha L Oldroyd
Maria G Paprocki
Antonio C Ruta
Chavez U Venere
Jefferson E Inouye
Alejandro F Stenseth
Juan X Figeroa
James A Stockham
Mujtaba D Bowley
Morrow W Sergi
Jones M Butt
Murillo S Nicka
Emily L Oldroyd
Rodrigues N Glick
Smith J Butt
Munro A Albares
Salvatore K Garufi
Leja S Wieser
Tony G Caldarera
Misaki S Bowley
Francesco Q Kolmetz
Juan N Ferencz
Juan V Whobrey
Tony R Malet
Wickens F Caudy
James U Nestle
David I Iturbide
Aika Y Wieser
Cody Q Oldroyd
Nicolas C Darakjy
Salvatore N Stockham
Francesco P Poquette
IdCountryDate
1000Canada2026-06-02
1001Russia2026-05-24
1002Italy2026-05-11
1003Brazil2026-05-17
1004Italy2026-05-27
1005Spain2026-06-05
1006Brazil2026-05-31
1007Australia2026-06-08
1008Russia2026-05-14
1009Japan2026-05-17
1010India2026-05-14
1011Canada2026-06-04
1012India2026-06-05
1013Russia2026-05-15
1014France2026-05-18
1015Spain2026-05-18
1016United Kingdom2026-05-24
1017Canada2026-05-18
1018United Kingdom2026-05-18
1019Brazil2026-05-23
1020Germany2026-06-02
1021United Kingdom2026-05-18
1022Russia2026-06-06
1023Canada2026-05-14
1024Canada2026-06-01
1025Spain2026-05-23
1026Canada2026-05-24
1027France2026-05-24
1028Argentina2026-05-25
1029Argentina2026-05-13
1030Japan2026-05-13
1031Italy2026-05-22
1032United Kingdom2026-05-26
1033Brazil2026-05-22
1034Russia2026-05-10
1035India2026-06-03
1036Germany2026-05-27
1037Spain2026-05-10
1038France2026-05-12
1039France2026-05-16
1040Italy2026-05-28
1041Brazil2026-05-22
1042Spain2026-05-27
1043Brazil2026-05-26
1044Italy2026-06-02
1045Japan2026-06-03
1046India2026-05-15
1047India2026-05-14
1048Argentina2026-06-08
1049Argentina2026-05-11

On-Demand Data

NameIdCountryDate
Misaki J Nestle1000Japan2026-05-12
Clifford P Stockham1001India2026-05-21
Ashley Z Ruta1002Brazil2026-05-14
Isabel K Rulapaugh1003Japan2026-05-15
Munro K Caudy1004Japan2026-05-28
Morrow O Schemmer1005India2026-06-04
Arvin D Marrier1006United Kingdom2026-05-10
Cody L Maclead1007United Kingdom2026-05-19
Izzy X Vocelka1008Germany2026-06-07
Leon I Iturbide1009Germany2026-06-07
Juan W Briddick1010Japan2026-05-19
Ashley G Morasca1011India2026-06-03
Alejandro U Stenseth1012Canada2026-06-01
Aditya T Malet1013Canada2026-06-08
Izzy R Rulapaugh1014India2026-06-03
Claire U Inouye1015France2026-05-21
David W Marrier1016Brazil2026-05-28
Morrow I Kolmetz1017United Kingdom2026-05-27
Munro Y Figeroa1018Canada2026-05-17
Aruna G Marrier1019Italy2026-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar Q ShinkoAustraliaAmy Elsner PROPOSAL
Johnson I WieserSpainAnna Fali UNQUALIFIED
Arvin H WhobreyJapanIvan Magalhaes NEW
Maisha K PaprockiFranceElwin Sharvill UNQUALIFIED
Chavez C GlickGermanyIvan Magalhaes PROPOSAL
Jefferson T OldroydGermanyOnyama Limba UNQUALIFIED
Isabel Q RimRussiaElwin Sharvill QUALIFIED
Ashley E SchemmerItalyAnna Fali RENEWAL
Ashley S FlosiRussiaOnyama Limba RENEWAL
Johnson R DoeJapanIvan Magalhaes RENEWAL
Julie L KuskoFranceAnna Fali QUALIFIED
Maisha U PoquetteFranceBernardo Dominic RENEWAL
Smith A FollerAustraliaIvan Magalhaes QUALIFIED
James W RutaIndiaIoni Bowcher QUALIFIED
Leon K DilliardBrazilElwin Sharvill NEGOTIATION
Leon Z DarakjyArgentinaXuxue Feng NEW
Alejandro Z RimAustraliaBernardo Dominic RENEWAL
Tony X OstroskyIndiaStephen Shaw UNQUALIFIED
Aruna T WieserFranceAnna Fali QUALIFIED
Aditya Q RutaRussiaXuxue Feng UNQUALIFIED
James W CaldareraArgentinaElwin Sharvill QUALIFIED
Cody Q FigeroaUnited KingdomStephen Shaw PROPOSAL
Morrow V StensethItalyStephen Shaw NEW
Ashley G GauchoCanadaAnna Fali NEGOTIATION
Darci E SlusarskiAustraliaAsiya Javayant RENEWAL
Leja J DarakjyItalyXuxue Feng NEGOTIATION
Sinclair S DoeSpainElwin Sharvill UNQUALIFIED
Rodrigues C IturbideAustraliaIvan Magalhaes NEW
Jennifer Z OstroskyJapanOnyama Limba UNQUALIFIED
Ashley G WieserArgentinaBernardo Dominic PROPOSAL
Isabel W SergiArgentinaIvan Magalhaes NEW
Deepesh R BologniaBrazilBernardo Dominic PROPOSAL
Isabel O PerinUnited KingdomXuxue Feng UNQUALIFIED
Leon U VocelkaArgentinaAnna Fali RENEWAL
Julie L KuskoArgentinaAsiya Javayant QUALIFIED
Chavez B MarrierSpainXuxue Feng NEW
Adams F MacleadItalyBernardo Dominic UNQUALIFIED
Chavez Z MorascaJapanAsiya Javayant UNQUALIFIED
Stacey S PerinItalyBernardo Dominic UNQUALIFIED
Chavez N VocelkaSpainIoni Bowcher 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.