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
Clifford V BriddickUnited KingdomXuxue Feng PROPOSAL
Ricardo Q OstroskyUnited KingdomBernardo Dominic NEW
Kadeem X FollerRussiaIvan Magalhaes PROPOSAL
Juan B IturbideIndiaStephen Shaw RENEWAL
Adams G GlickItalyOnyama Limba NEW
Smith A FollerGermanyStephen Shaw RENEWAL
Mujtaba J ChuiArgentinaIoni Bowcher NEGOTIATION
Stacey Z OstroskyIndiaAnna Fali QUALIFIED
Jones L StensethRussiaOnyama Limba UNQUALIFIED
Ricardo V NickaGermanyXuxue Feng PROPOSAL
Tony Y InouyeJapanStephen Shaw QUALIFIED
Ivar Q VenereItalyOnyama Limba PROPOSAL
Isabel W DilliardSpainXuxue Feng RENEWAL
Arvin B StensethRussiaAnna Fali PROPOSAL
Maisha L MorascaRussiaAnna Fali UNQUALIFIED
Jones R SergiArgentinaAsiya Javayant RENEWAL
Misaki S WhobreyRussiaAsiya Javayant NEW
Leja D ButtBrazilElwin Sharvill NEGOTIATION
Wickens P KuskoAustraliaBernardo Dominic NEGOTIATION
Nicolas V ButtAustraliaIoni Bowcher NEW
Chavez G RoysterRussiaAnna Fali PROPOSAL
Wickens R VenereBrazilAsiya Javayant QUALIFIED
Jennifer C MaletIndiaXuxue Feng RENEWAL
Cody J FlosiArgentinaOnyama Limba NEW
Aditya M MaletFranceIvan Magalhaes UNQUALIFIED
Mayumi D TollnerFranceAsiya Javayant UNQUALIFIED
Wickens F SlusarskiArgentinaIvan Magalhaes RENEWAL
Octavia X MorascaCanadaAnna Fali NEGOTIATION
Adams C MacleadItalyStephen Shaw PROPOSAL
Salvatore L PaprockiBrazilBernardo Dominic RENEWAL
Leon Y NickaFranceBernardo Dominic UNQUALIFIED
Ivar R ShinkoGermanyElwin Sharvill NEGOTIATION
Jeanfrancois P DilliardArgentinaAmy Elsner UNQUALIFIED
Faith Q KuskoAustraliaXuxue Feng UNQUALIFIED
Kaitlin U SchemmerIndiaBernardo Dominic NEW
Emily N OldroydUnited KingdomBernardo Dominic RENEWAL
Wickens A CampainCanadaOnyama Limba NEW
Jeanfrancois Y OldroydIndiaAsiya Javayant NEGOTIATION
Jefferson U StockhamCanadaBernardo Dominic PROPOSAL
Silvio Q RoysterCanadaIoni Bowcher NEW
Claire B PoquetteUnited KingdomAmy Elsner NEW
Emily L MorascaItalyAmy Elsner RENEWAL
Tony E WieserAustraliaOnyama Limba PROPOSAL
Adams W BriddickIndiaStephen Shaw RENEWAL
Clifford N InouyeCanadaBernardo Dominic NEW
Johnson C RulapaughJapanOnyama Limba UNQUALIFIED
Ricardo A WhobreyCanadaIoni Bowcher UNQUALIFIED
Aditya D WaycottUnited KingdomIvan Magalhaes RENEWAL
Juan P MacleadJapanIoni Bowcher QUALIFIED
Antonio Q InouyeSpainAnna Fali NEW
Horizontal
NameCountryRepresentativeStatus
Maria F IturbideJapanOnyama Limba UNQUALIFIED
Cody L KolmetzUnited KingdomAmy Elsner NEGOTIATION
Izzy C KolmetzSpainStephen Shaw NEGOTIATION
Leja H RutaJapanAnna Fali RENEWAL
Aruna K MaletFranceXuxue Feng RENEWAL
Smith Z NickaRussiaBernardo Dominic NEW
Maria U WhobreyArgentinaElwin Sharvill NEGOTIATION
Maisha X FigeroaBrazilStephen Shaw PROPOSAL
Arvin Z DilliardArgentinaElwin Sharvill UNQUALIFIED
Mujtaba L SergiUnited KingdomElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki P DoeArgentina2026-03-29Chapman, Ross E Esq PROPOSAL32Anna Fali
1001Ashley Y MarrierRussia2026-03-22Printing Dimensions UNQUALIFIED56Asiya Javayant
1002Emily S BowleySpain2026-04-19Truhlar And Truhlar Attys RENEWAL52Asiya Javayant
1003Faith W FigeroaUnited Kingdom2026-03-31Printing Dimensions NEW4Amy Elsner
1004Aika I DarakjyCanada2026-04-06King, Christopher A Esq UNQUALIFIED44Ivan Magalhaes
1005Antonio W GillianFrance2026-03-28Morlong Associates RENEWAL19Asiya Javayant
1006Faith F WhobreyCanada2026-04-02Chapman, Ross E Esq RENEWAL61Anna Fali
1007Wickens K SaylorsSpain2026-03-24Rangoni Of Florence UNQUALIFIED62Ivan Magalhaes
1008Adams O SaylorsRussia2026-04-07Chanay, Jeffrey A Esq QUALIFIED56Onyama Limba
1009Cody S GarufiJapan2026-03-24Morlong Associates NEW56Ivan Magalhaes
1010Darci L RimBrazil2026-03-27Dorl, James J Esq NEGOTIATION89Amy Elsner
1011Jefferson C DilliardArgentina2026-04-01Buckley Miller Wright PROPOSAL99Ivan Magalhaes
1012James H NickaGermany2026-03-31Chanay, Jeffrey A Esq QUALIFIED58Amy Elsner
1013Ricardo F AmigonAustralia2026-03-27Morlong Associates NEGOTIATION48Anna Fali
1014Leja D WhobreyIndia2026-03-31Rangoni Of Florence NEGOTIATION31Xuxue Feng
1015Maria M CaudyArgentina2026-04-03Benton, John B Jr NEGOTIATION70Asiya Javayant
1016Mayumi L FlosiBrazil2026-04-14Rousseaux, Michael Esq RENEWAL13Onyama Limba
1017Julie X BologniaJapan2026-04-17Rangoni Of Florence PROPOSAL19Xuxue Feng
1018Leon U DilliardIndia2026-04-04Rangoni Of Florence QUALIFIED43Bernardo Dominic
1019Aruna A MaletArgentina2026-04-02Commercial Press NEW71Stephen Shaw
1020Tony M CaudyCanada2026-04-06Feltz Printing Service UNQUALIFIED98Stephen Shaw
1021Arvin P BologniaIndia2026-03-30Printing Dimensions NEGOTIATION41Amy Elsner
1022Clifford P StensethJapan2026-03-29Chanay, Jeffrey A Esq QUALIFIED75Bernardo Dominic
1023Murillo V RulapaughJapan2026-04-08Commercial Press NEW9Asiya Javayant
1024David S MarrierCanada2026-03-26Rangoni Of Florence UNQUALIFIED43Onyama Limba
1025Francesco F TollnerCanada2026-03-28Dorl, James J Esq NEW58Elwin Sharvill
1026Greenwood I ButtGermany2026-03-24Rangoni Of Florence NEW97Ivan Magalhaes
1027Juan T DarakjySpain2026-04-10Truhlar And Truhlar Attys NEGOTIATION70Ioni Bowcher
1028Maria S SergiIndia2026-03-28Chapman, Ross E Esq NEGOTIATION69Xuxue Feng
1029Tony B FerenczAustralia2026-03-29Rousseaux, Michael Esq PROPOSAL62Xuxue Feng
1030Murillo T BowleyRussia2026-04-10Truhlar And Truhlar Attys NEGOTIATION84Amy Elsner
1031Aditya E SlusarskiUnited Kingdom2026-03-28King, Christopher A Esq RENEWAL18Xuxue Feng
1032Aruna X CaudyItaly2026-04-18Morlong Associates UNQUALIFIED24Asiya Javayant
1033Leon F DilliardSpain2026-04-12Rousseaux, Michael Esq UNQUALIFIED69Amy Elsner
1034Claire A SaylorsJapan2026-04-10Rangoni Of Florence NEGOTIATION92Elwin Sharvill
1035Arvin M MorascaFrance2026-03-25Commercial Press RENEWAL75Ioni Bowcher
1036Cody T RoysterGermany2026-03-27Dorl, James J Esq RENEWAL44Onyama Limba
1037David S OldroydBrazil2026-04-07Buckley Miller Wright QUALIFIED93Ivan Magalhaes
1038Cody C KuskoCanada2026-03-29Feiner Bros NEW53Xuxue Feng
1039Ricardo V StockhamBrazil2026-04-02Printing Dimensions QUALIFIED72Ivan Magalhaes
1040Mujtaba L StensethAustralia2026-04-18Chemel, James L Cpa NEW52Amy Elsner
1041James F MaletIndia2026-04-16Rousseaux, Michael Esq NEW66Bernardo Dominic
1042Faith R OldroydGermany2026-04-04King, Christopher A Esq NEGOTIATION58Stephen Shaw
1043Costa X CaldareraGermany2026-04-03Rangoni Of Florence QUALIFIED76Ioni Bowcher
1044Rodrigues J WieserGermany2026-03-21Truhlar And Truhlar Attys UNQUALIFIED54Ioni Bowcher
1045Tony P MarrierFrance2026-04-11Chanay, Jeffrey A Esq RENEWAL19Anna Fali
1046Maisha F StockhamGermany2026-04-12Feiner Bros UNQUALIFIED11Stephen Shaw
1047Faith P MacleadItaly2026-04-04Feiner Bros NEW93Ivan Magalhaes
1048Julie V VenereRussia2026-04-05Commercial Press UNQUALIFIED26Ivan Magalhaes
1049Aruna H PaprockiJapan2026-04-03Morlong Associates NEW78Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Wickens A ShinkoIndiaIvan Magalhaes NEW
Sinclair K MaletItalyBernardo Dominic UNQUALIFIED
Maria M DilliardBrazilIvan Magalhaes QUALIFIED
Greenwood J WaycottRussiaXuxue Feng PROPOSAL
Jefferson D IturbideSpainAsiya Javayant RENEWAL
Chavez S ButtUnited KingdomAnna Fali NEGOTIATION
Mujtaba V CaudyCanadaStephen Shaw RENEWAL
Cody A CampainAustraliaAmy Elsner UNQUALIFIED
Ricardo H FigeroaItalyIoni Bowcher NEGOTIATION
Stacey Y ShinkoIndiaElwin Sharvill UNQUALIFIED
Isabel T NickaFranceStephen Shaw UNQUALIFIED
Darci M DoeBrazilBernardo Dominic QUALIFIED
Salvatore D ButtItalyStephen Shaw UNQUALIFIED
James J CaldareraAustraliaAsiya Javayant UNQUALIFIED
Clifford H BowleyFranceAnna Fali PROPOSAL
Misaki D BriddickJapanIoni Bowcher NEGOTIATION
Emily B StockhamItalyXuxue Feng UNQUALIFIED
Nicolas W DarakjyArgentinaStephen Shaw RENEWAL
Claire O VenereBrazilAsiya Javayant PROPOSAL
Maria C SchemmerBrazilBernardo Dominic QUALIFIED
Francesco L WieserItalyBernardo Dominic RENEWAL
Adams C FerenczBrazilAnna Fali NEW
Costa I StockhamUnited KingdomBernardo Dominic NEW
Kaitlin G MaletItalyXuxue Feng RENEWAL
Adams B WaycottSpainStephen Shaw QUALIFIED
Antonio A VenereFranceStephen Shaw RENEWAL
Leon Z MaletSpainBernardo Dominic UNQUALIFIED
Isabel H KuskoIndiaElwin Sharvill RENEWAL
Mujtaba Z ButtCanadaXuxue Feng QUALIFIED
Munro K WaycottUnited KingdomXuxue Feng NEW
Morrow C RulapaughRussiaBernardo Dominic PROPOSAL
Alejandro W RoysterRussiaIoni Bowcher PROPOSAL
Deepesh W PoquetteAustraliaIoni Bowcher RENEWAL
Sinclair N AmigonIndiaAsiya Javayant QUALIFIED
Ivar H MacleadCanadaAnna Fali QUALIFIED
Arvin V NickaRussiaElwin Sharvill RENEWAL
Johnson N DilliardItalyBernardo Dominic NEGOTIATION
Stacey B VocelkaAustraliaOnyama Limba PROPOSAL
Rodrigues H SaylorsSpainAnna Fali NEGOTIATION
Wickens H MarrierAustraliaIoni Bowcher NEW
Aruna Y RulapaughRussiaElwin Sharvill UNQUALIFIED
Leja N WaycottBrazilBernardo Dominic NEGOTIATION
Leon G WieserGermanyStephen Shaw RENEWAL
Aditya X NickaGermanyAsiya Javayant PROPOSAL
Chavez Y FlosiArgentinaStephen Shaw QUALIFIED
Kadeem E NestleIndiaOnyama Limba QUALIFIED
Munro B MarrierJapanIvan Magalhaes UNQUALIFIED
Chavez M DarakjyRussiaAsiya Javayant UNQUALIFIED
Adams D DoeGermanyAnna Fali UNQUALIFIED
Adams P SaylorsIndiaIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Mayumi Y Whobrey
Clifford Q Inouye
Julie X Foller
Claire V Garufi
Kadeem P Whobrey
Claire W Waycott
Kadeem J Ferencz
Jeanfrancois J Shinko
Johnson W Briddick
Izzy Z Bolognia
Alejandro L Schemmer
Greenwood L Malet
Jeanfrancois O Venere
Emily O Garufi
Emily N Iturbide
Kadeem Q Butt
Kaitlin I Campain
Maria E Chui
Antonio P Nicka
Isabel U Glick
Juan A Chui
Maria F Malet
Mujtaba Y Waycott
Cody C Rim
Maisha J Malet
Kaitlin C Flosi
Antonio A Darakjy
Kadeem L Rulapaugh
Izzy G Venere
Ricardo Z Rulapaugh
Juan H Bowley
Tony J Figeroa
Leon C Butt
Tony N Caudy
Chavez M Garufi
Morrow G Ferencz
Misaki F Saylors
Juan P Darakjy
David D Gaucho
Mayumi D Poquette
Deepesh B Butt
Aika K Vocelka
Rodrigues J Malet
Antonio H Kolmetz
Arvin W Marrier
Kaitlin M Inouye
Jennifer D Dilliard
Octavia Z Glick
Johnson V Ferencz
Claire M Whobrey
IdCountryDate
1000Canada2026-04-15
1001Canada2026-04-01
1002India2026-04-07
1003United Kingdom2026-03-23
1004Canada2026-03-24
1005Australia2026-04-02
1006India2026-04-09
1007Australia2026-04-06
1008Japan2026-03-26
1009Italy2026-03-29
1010Germany2026-04-16
1011Spain2026-03-21
1012Canada2026-03-22
1013Japan2026-03-25
1014Japan2026-04-06
1015Canada2026-04-02
1016Argentina2026-04-10
1017Argentina2026-03-28
1018Australia2026-04-15
1019Spain2026-04-13
1020India2026-04-07
1021Spain2026-04-03
1022Russia2026-04-06
1023Australia2026-04-03
1024Canada2026-04-16
1025France2026-03-24
1026Russia2026-03-31
1027Australia2026-04-10
1028Russia2026-04-18
1029United Kingdom2026-04-07
1030Germany2026-03-22
1031United Kingdom2026-04-08
1032Japan2026-03-22
1033France2026-04-18
1034Canada2026-04-05
1035Argentina2026-04-10
1036Australia2026-04-12
1037Japan2026-04-19
1038Australia2026-04-17
1039Argentina2026-04-04
1040Brazil2026-04-13
1041Brazil2026-04-08
1042Brazil2026-03-26
1043Argentina2026-03-29
1044Germany2026-03-25
1045Russia2026-03-31
1046Italy2026-03-28
1047Russia2026-03-26
1048Australia2026-04-06
1049Japan2026-03-24

On-Demand Data

NameIdCountryDate
Aditya H Paprocki1000Argentina2026-04-11
Deepesh N Malet1001Spain2026-03-26
Claire D Inouye1002Argentina2026-04-17
Kaitlin F Ruta1003Germany2026-03-29
Antonio U Saylors1004India2026-03-31
Jeanfrancois C Rim1005India2026-03-28
Ashley P Bowley1006India2026-04-05
Mujtaba P Butt1007Australia2026-04-14
Sinclair P Slusarski1008United Kingdom2026-04-18
Chavez A Paprocki1009Canada2026-03-24
Johnson R Ruta1010United Kingdom2026-04-04
Jennifer T Oldroyd1011Argentina2026-04-06
Arvin G Maclead1012Japan2026-03-30
Aditya U Chui1013Australia2026-03-29
Darci Y Slusarski1014India2026-03-27
Juan T Stenseth1015Germany2026-04-11
Cody Q Perin1016Russia2026-03-21
Antonio K Nicka1017Japan2026-04-18
Claire D Paprocki1018Canada2026-04-06
Jefferson C Venere1019Italy2026-04-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody W DilliardBrazilXuxue Feng PROPOSAL
Jennifer G DoeSpainAmy Elsner NEW
Francesco Z StockhamSpainStephen Shaw RENEWAL
Salvatore Q NestleBrazilIoni Bowcher PROPOSAL
Adams U StensethCanadaAnna Fali NEGOTIATION
Aditya K FigeroaCanadaIoni Bowcher PROPOSAL
Aika Y IturbideAustraliaIoni Bowcher PROPOSAL
Mujtaba V OstroskyIndiaAsiya Javayant NEW
Ashley Y FerenczBrazilOnyama Limba UNQUALIFIED
Leja Z AmigonItalyBernardo Dominic RENEWAL
Aditya J CaldareraBrazilAsiya Javayant NEW
Leja H BologniaBrazilAnna Fali RENEWAL
James K RoysterUnited KingdomBernardo Dominic NEGOTIATION
Izzy G RutaFranceIvan Magalhaes NEGOTIATION
Claire F RoysterItalyAsiya Javayant QUALIFIED
Maisha Z NestleItalyXuxue Feng PROPOSAL
Alejandro M KolmetzFranceAsiya Javayant UNQUALIFIED
Maisha L SergiRussiaStephen Shaw RENEWAL
Aditya T ButtAustraliaElwin Sharvill QUALIFIED
Ricardo H CaudyCanadaXuxue Feng UNQUALIFIED
Chavez U NickaSpainStephen Shaw PROPOSAL
Rodrigues X PaprockiItalyIoni Bowcher RENEWAL
David R GauchoSpainBernardo Dominic RENEWAL
David N GillianFranceIoni Bowcher NEGOTIATION
Deepesh Q PerinUnited KingdomOnyama Limba PROPOSAL
Aika T AlbaresRussiaStephen Shaw RENEWAL
Murillo P WhobreyArgentinaOnyama Limba PROPOSAL
Clifford J BriddickArgentinaAmy Elsner UNQUALIFIED
Darci O GarufiArgentinaAsiya Javayant NEW
Rodrigues R InouyeBrazilBernardo Dominic NEGOTIATION
Isabel D RutaGermanyXuxue Feng QUALIFIED
Arvin E CampainUnited KingdomAnna Fali NEGOTIATION
Ricardo L NickaCanadaElwin Sharvill UNQUALIFIED
Alejandro E DoeItalyAnna Fali RENEWAL
Tony A SchemmerCanadaElwin Sharvill NEGOTIATION
Mayumi P DarakjyArgentinaAnna Fali QUALIFIED
David E RulapaughCanadaIvan Magalhaes NEGOTIATION
Ivar J VocelkaSpainAmy Elsner NEGOTIATION
Claire E StensethUnited KingdomStephen Shaw NEW
Faith N PaprockiIndiaStephen Shaw UNQUALIFIED

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