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
Kaitlin U MaletAustraliaIvan Magalhaes UNQUALIFIED
Wickens V PoquetteJapanAsiya Javayant UNQUALIFIED
Adams J MaletUnited KingdomXuxue Feng UNQUALIFIED
Kaitlin R OldroydItalyIoni Bowcher NEGOTIATION
Darci H RoysterUnited KingdomIvan Magalhaes NEW
Smith Q FlosiGermanyStephen Shaw QUALIFIED
Jeanfrancois D CaldareraGermanyElwin Sharvill PROPOSAL
Arvin C VenereCanadaIoni Bowcher QUALIFIED
Mayumi T RulapaughCanadaXuxue Feng RENEWAL
Kadeem B BowleyFranceOnyama Limba RENEWAL
Tony Y GillianRussiaAnna Fali NEGOTIATION
Salvatore L WieserRussiaIoni Bowcher UNQUALIFIED
Johnson Z FollerIndiaOnyama Limba PROPOSAL
Alejandro L GauchoSpainOnyama Limba PROPOSAL
Darci D VenereFranceOnyama Limba UNQUALIFIED
Leon P GarufiAustraliaAmy Elsner QUALIFIED
Mujtaba X IturbideUnited KingdomStephen Shaw QUALIFIED
Maria Y BowleyJapanStephen Shaw UNQUALIFIED
Ricardo M GarufiBrazilElwin Sharvill UNQUALIFIED
Darci W StockhamAustraliaBernardo Dominic RENEWAL
Stacey U OldroydJapanIvan Magalhaes QUALIFIED
Smith Z FollerFranceIvan Magalhaes QUALIFIED
Jeanfrancois D FollerIndiaStephen Shaw RENEWAL
Jefferson X RimIndiaIoni Bowcher NEW
Costa H WhobreyIndiaIoni Bowcher QUALIFIED
Wickens S RoysterAustraliaAsiya Javayant PROPOSAL
Ashley J IturbideItalyIoni Bowcher RENEWAL
Nicolas I MacleadArgentinaBernardo Dominic QUALIFIED
Greenwood X KolmetzRussiaAnna Fali QUALIFIED
Wickens V DilliardRussiaIoni Bowcher QUALIFIED
Ashley O PoquetteUnited KingdomOnyama Limba QUALIFIED
Antonio M BologniaJapanAnna Fali QUALIFIED
Claire F MacleadRussiaBernardo Dominic PROPOSAL
Alejandro D MaletAustraliaAnna Fali NEW
David N GauchoItalyAsiya Javayant NEW
Arvin Q MacleadJapanAmy Elsner NEW
Julie C WaycottIndiaOnyama Limba NEW
Ivar L KolmetzJapanOnyama Limba PROPOSAL
Francesco Z GillianFranceXuxue Feng NEW
Sinclair E StensethBrazilAsiya Javayant NEGOTIATION
Faith N NestleRussiaBernardo Dominic UNQUALIFIED
Aika V RutaBrazilIoni Bowcher NEGOTIATION
Darci O CaldareraArgentinaXuxue Feng UNQUALIFIED
Leja P MorascaIndiaXuxue Feng RENEWAL
Jeanfrancois X DoeGermanyXuxue Feng QUALIFIED
Sinclair Z ShinkoCanadaAnna Fali PROPOSAL
Nicolas V GillianUnited KingdomStephen Shaw PROPOSAL
Izzy Z FlosiArgentinaAmy Elsner NEW
Costa O MarrierRussiaAnna Fali QUALIFIED
Jeanfrancois K SchemmerItalyElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Antonio Q SergiJapanElwin Sharvill PROPOSAL
Maisha Q MarrierIndiaIvan Magalhaes NEGOTIATION
Smith N PoquetteCanadaIvan Magalhaes UNQUALIFIED
Juan X GarufiIndiaAnna Fali NEW
Munro Q RulapaughCanadaStephen Shaw UNQUALIFIED
Octavia V ChuiBrazilIvan Magalhaes NEGOTIATION
Johnson A PaprockiSpainOnyama Limba PROPOSAL
Faith Z CaldareraSpainStephen Shaw UNQUALIFIED
Kadeem A CampainUnited KingdomIvan Magalhaes UNQUALIFIED
Chavez R ChuiJapanElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie E FigeroaSpain2026-03-01King, Christopher A Esq RENEWAL75Xuxue Feng
1001Leja C FollerRussia2026-02-24Rousseaux, Michael Esq UNQUALIFIED91Stephen Shaw
1002Faith R AmigonJapan2026-03-06Printing Dimensions NEW74Stephen Shaw
1003Darci N GlickSpain2026-03-04Feiner Bros PROPOSAL39Ivan Magalhaes
1004Kadeem C DoeGermany2026-02-09Morlong Associates RENEWAL26Onyama Limba
1005Ricardo U DilliardUnited Kingdom2026-02-28Feltz Printing Service UNQUALIFIED52Bernardo Dominic
1006Misaki M ShinkoJapan2026-03-03Buckley Miller Wright PROPOSAL87Onyama Limba
1007Jefferson L CampainCanada2026-02-25Chapman, Ross E Esq UNQUALIFIED97Ivan Magalhaes
1008Leja O SaylorsFrance2026-02-25Feiner Bros NEGOTIATION75Onyama Limba
1009Morrow H BowleySpain2026-02-23King, Christopher A Esq RENEWAL73Ioni Bowcher
1010Darci Y RulapaughAustralia2026-02-21Chapman, Ross E Esq NEGOTIATION73Stephen Shaw
1011Aika E AlbaresIndia2026-02-18Commercial Press QUALIFIED57Elwin Sharvill
1012Ashley I ButtGermany2026-02-16King, Christopher A Esq UNQUALIFIED93Asiya Javayant
1013Mujtaba F VocelkaRussia2026-02-14Feiner Bros NEW84Stephen Shaw
1014Silvio J SlusarskiArgentina2026-02-20Feltz Printing Service NEGOTIATION8Anna Fali
1015Wickens S AmigonGermany2026-02-11King, Christopher A Esq UNQUALIFIED18Xuxue Feng
1016Rodrigues M RulapaughRussia2026-02-25Chemel, James L Cpa NEGOTIATION6Anna Fali
1017Jeanfrancois U OstroskySpain2026-03-02Rangoni Of Florence QUALIFIED73Onyama Limba
1018Murillo K GlickUnited Kingdom2026-02-27Morlong Associates RENEWAL70Bernardo Dominic
1019Juan I BologniaArgentina2026-02-13Morlong Associates NEW45Anna Fali
1020Salvatore R BriddickSpain2026-02-21Rangoni Of Florence NEW58Ioni Bowcher
1021Aika L GarufiBrazil2026-02-16Chemel, James L Cpa NEGOTIATION2Ivan Magalhaes
1022Ricardo S RimJapan2026-02-10Feltz Printing Service NEGOTIATION22Xuxue Feng
1023Antonio V SaylorsIndia2026-02-25King, Christopher A Esq RENEWAL45Bernardo Dominic
1024Nicolas Y StensethJapan2026-02-11Rangoni Of Florence PROPOSAL64Anna Fali
1025Jennifer Y WaycottItaly2026-03-01Chapman, Ross E Esq NEGOTIATION40Xuxue Feng
1026Wickens G BriddickRussia2026-02-24Commercial Press PROPOSAL84Onyama Limba
1027Costa J BologniaFrance2026-02-19Commercial Press RENEWAL49Stephen Shaw
1028Mayumi C CampainBrazil2026-03-08Printing Dimensions RENEWAL32Bernardo Dominic
1029Silvio F GlickCanada2026-02-12Printing Dimensions QUALIFIED70Elwin Sharvill
1030Murillo G VocelkaGermany2026-03-06King, Christopher A Esq NEW93Bernardo Dominic
1031Adams X KuskoSpain2026-02-28Dorl, James J Esq NEGOTIATION43Ivan Magalhaes
1032Wickens N SaylorsArgentina2026-03-08Commercial Press RENEWAL26Xuxue Feng
1033Octavia O GauchoUnited Kingdom2026-02-08King, Christopher A Esq QUALIFIED82Bernardo Dominic
1034Aruna S VenereGermany2026-03-01Rangoni Of Florence NEW93Elwin Sharvill
1035Adams I SaylorsBrazil2026-02-18Dorl, James J Esq RENEWAL59Ioni Bowcher
1036Aruna P WhobreyFrance2026-02-17Feiner Bros PROPOSAL0Amy Elsner
1037Aika V VocelkaSpain2026-02-07Printing Dimensions UNQUALIFIED81Ivan Magalhaes
1038Clifford A StockhamArgentina2026-02-22Feiner Bros PROPOSAL91Bernardo Dominic
1039Leon E BologniaBrazil2026-02-18Feltz Printing Service PROPOSAL97Ivan Magalhaes
1040Maria Y TollnerAustralia2026-02-19Chanay, Jeffrey A Esq RENEWAL48Amy Elsner
1041Isabel W KuskoIndia2026-02-09Chemel, James L Cpa RENEWAL55Amy Elsner
1042Kaitlin Y GlickCanada2026-03-05King, Christopher A Esq NEGOTIATION75Asiya Javayant
1043Leja S FollerCanada2026-02-27Rousseaux, Michael Esq UNQUALIFIED74Anna Fali
1044Stacey V DarakjySpain2026-02-07Commercial Press NEGOTIATION90Ioni Bowcher
1045Clifford J MacleadGermany2026-02-14Feiner Bros QUALIFIED56Ivan Magalhaes
1046Arvin M MacleadCanada2026-02-07Chanay, Jeffrey A Esq NEW53Asiya Javayant
1047James N DoeRussia2026-03-06King, Christopher A Esq NEGOTIATION34Ioni Bowcher
1048Maria T NestleBrazil2026-02-21Feiner Bros UNQUALIFIED43Onyama Limba
1049Juan A PerinCanada2026-03-07Printing Dimensions NEW3Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Leon O VocelkaGermanyElwin Sharvill NEGOTIATION
Isabel S NestleIndiaElwin Sharvill NEGOTIATION
Mayumi I PoquetteFranceIoni Bowcher UNQUALIFIED
Ricardo L DoeSpainStephen Shaw NEW
Greenwood Y AlbaresRussiaBernardo Dominic NEGOTIATION
Kaitlin Q StensethGermanyIvan Magalhaes NEW
James A NestleIndiaXuxue Feng RENEWAL
Kaitlin Z BologniaSpainAsiya Javayant RENEWAL
Leon T MarrierJapanAmy Elsner NEW
Izzy N WhobreyUnited KingdomOnyama Limba UNQUALIFIED
Antonio F VenereItalyIoni Bowcher NEW
Jennifer I KolmetzAustraliaAsiya Javayant UNQUALIFIED
Wickens R RulapaughGermanyXuxue Feng PROPOSAL
Rodrigues G CampainIndiaIvan Magalhaes QUALIFIED
Costa F CaldareraIndiaStephen Shaw NEGOTIATION
Smith G GlickCanadaBernardo Dominic RENEWAL
Emily D CaldareraItalyElwin Sharvill PROPOSAL
Adams B NickaJapanIoni Bowcher PROPOSAL
Chavez L CaudyAustraliaStephen Shaw RENEWAL
Kadeem U WhobreyAustraliaIvan Magalhaes NEGOTIATION
Rodrigues S MacleadBrazilIoni Bowcher NEW
Chavez Q StockhamArgentinaBernardo Dominic UNQUALIFIED
Ricardo Y FerenczGermanyAmy Elsner QUALIFIED
David V NickaCanadaOnyama Limba QUALIFIED
Izzy M DarakjyIndiaAmy Elsner NEGOTIATION
Smith N GillianFranceIvan Magalhaes NEGOTIATION
Arvin P TollnerAustraliaAmy Elsner PROPOSAL
Johnson H KolmetzUnited KingdomAmy Elsner PROPOSAL
Chavez W VocelkaRussiaElwin Sharvill RENEWAL
Murillo G NickaJapanIoni Bowcher QUALIFIED
Mujtaba F InouyeAustraliaIoni Bowcher QUALIFIED
Cody G SchemmerItalyXuxue Feng NEGOTIATION
Leja J CaudyFranceIoni Bowcher NEW
Kadeem C SaylorsRussiaStephen Shaw NEW
Jones E WaycottGermanyAsiya Javayant QUALIFIED
Misaki F BowleyIndiaAmy Elsner NEGOTIATION
Darci Y MarrierBrazilXuxue Feng RENEWAL
Cody M BologniaJapanBernardo Dominic NEGOTIATION
Jefferson H MarrierCanadaXuxue Feng UNQUALIFIED
Mujtaba Q NickaGermanyBernardo Dominic QUALIFIED
Silvio M ChuiAustraliaXuxue Feng NEW
Alejandro V VenereUnited KingdomAmy Elsner NEW
Jeanfrancois O OldroydJapanIvan Magalhaes NEGOTIATION
Aika P RulapaughRussiaAmy Elsner NEW
Adams J MaletCanadaBernardo Dominic RENEWAL
Cody V KolmetzCanadaAnna Fali NEW
Jeanfrancois V MarrierFranceElwin Sharvill NEW
Munro S FigeroaCanadaAmy Elsner UNQUALIFIED
Jones H DilliardIndiaElwin Sharvill QUALIFIED
Antonio X StensethSpainBernardo Dominic QUALIFIED
Frozen Columns
Name
Salvatore M Nestle
Adams I Stockham
Nicolas U Sergi
Johnson X Malet
Ashley B Amigon
Mayumi J Ruta
Misaki E Tollner
Mayumi I Briddick
Jefferson G Saylors
Misaki G Slusarski
Deepesh A Stockham
James S Poquette
Misaki S Rulapaugh
Aruna G Gillian
Aika X Dilliard
Munro X Garufi
Faith N Doe
Johnson O Bowley
Aika I Vocelka
Chavez N Oldroyd
Ricardo W Ostrosky
Wickens K Gaucho
Silvio L Bolognia
Smith R Amigon
Aruna K Saylors
Juan R Schemmer
Emily N Marrier
Wickens J Waycott
Mujtaba D Ruta
Kadeem Y Rulapaugh
Smith X Foller
Arvin B Malet
David P Whobrey
Morrow C Caudy
Mayumi O Malet
Aditya L Shinko
Antonio F Flosi
Ashley X Dilliard
Kaitlin Q Schemmer
Juan R Whobrey
Stacey P Nestle
Kadeem Y Darakjy
Arvin H Marrier
David H Caldarera
Antonio G Doe
Jennifer L Vocelka
Octavia T Gillian
Ricardo F Kusko
Cody X Bolognia
Stacey Y Royster
IdCountryDate
1000Brazil2026-03-04
1001Italy2026-02-21
1002Italy2026-02-22
1003France2026-02-12
1004Canada2026-03-08
1005Brazil2026-02-10
1006United Kingdom2026-02-17
1007Australia2026-02-14
1008India2026-02-14
1009Japan2026-02-18
1010Japan2026-02-23
1011Japan2026-02-22
1012Germany2026-02-13
1013United Kingdom2026-03-02
1014Italy2026-02-28
1015Italy2026-02-18
1016Spain2026-02-17
1017United Kingdom2026-02-13
1018Argentina2026-02-25
1019Australia2026-03-05
1020Australia2026-02-21
1021Germany2026-03-05
1022India2026-02-14
1023Spain2026-02-17
1024United Kingdom2026-02-12
1025United Kingdom2026-02-25
1026Brazil2026-02-07
1027Germany2026-02-11
1028Australia2026-03-08
1029Spain2026-02-09
1030Spain2026-03-08
1031Japan2026-02-11
1032Argentina2026-02-07
1033Russia2026-02-13
1034Australia2026-03-04
1035India2026-02-23
1036Germany2026-03-01
1037Japan2026-02-09
1038France2026-02-10
1039France2026-02-26
1040Australia2026-02-27
1041Spain2026-02-10
1042Japan2026-02-26
1043Italy2026-02-23
1044Germany2026-03-01
1045Australia2026-02-10
1046Germany2026-03-06
1047Russia2026-03-08
1048Germany2026-02-20
1049Italy2026-02-21

On-Demand Data

NameIdCountryDate
Julie Z Bolognia1000Spain2026-02-28
Octavia D Amigon1001United Kingdom2026-03-04
Emily I Stenseth1002Argentina2026-03-06
Cody U Shinko1003Japan2026-03-04
Octavia U Iturbide1004Brazil2026-02-23
Chavez T Nestle1005Japan2026-02-22
Emily M Slusarski1006Italy2026-02-21
Arvin V Malet1007Brazil2026-02-17
Jones D Nestle1008Australia2026-03-01
Cody H Chui1009France2026-02-08
Misaki Q Iturbide1010Russia2026-03-05
Jeanfrancois T Royster1011Russia2026-02-22
Tony N Maclead1012Canada2026-02-18
Izzy O Wieser1013Russia2026-03-07
Aruna C Flosi1014Australia2026-02-20
Julie Q Rim1015Argentina2026-02-12
Alejandro N Garufi1016Australia2026-02-19
Sinclair S Oldroyd1017Germany2026-03-06
Deepesh Q Bolognia1018Brazil2026-03-04
Johnson R Vocelka1019Brazil2026-02-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie M IturbideSpainElwin Sharvill UNQUALIFIED
Ivar P FollerJapanXuxue Feng NEGOTIATION
Aika Y NestleGermanyIoni Bowcher NEGOTIATION
Faith H NestleAustraliaIvan Magalhaes NEGOTIATION
Adams A WaycottFranceXuxue Feng UNQUALIFIED
Greenwood F StensethUnited KingdomBernardo Dominic PROPOSAL
Wickens E ShinkoArgentinaXuxue Feng NEGOTIATION
Cody U BowleyGermanyAmy Elsner NEGOTIATION
Wickens L DoeFranceOnyama Limba NEW
Munro S FlosiJapanXuxue Feng PROPOSAL
Munro V MarrierFranceXuxue Feng RENEWAL
Claire B BologniaCanadaAnna Fali PROPOSAL
Murillo T RoysterAustraliaBernardo Dominic QUALIFIED
Jefferson B StensethRussiaAmy Elsner RENEWAL
Ashley V BologniaAustraliaStephen Shaw PROPOSAL
Deepesh N OstroskyRussiaElwin Sharvill UNQUALIFIED
Sinclair X CampainBrazilIvan Magalhaes NEW
Murillo U IturbideCanadaXuxue Feng PROPOSAL
Johnson A OstroskyUnited KingdomXuxue Feng NEW
Aditya N CampainCanadaXuxue Feng NEGOTIATION
Munro C ButtAustraliaStephen Shaw PROPOSAL
Adams M TollnerCanadaAnna Fali UNQUALIFIED
Maisha J FerenczArgentinaElwin Sharvill NEGOTIATION
Emily A BologniaArgentinaIoni Bowcher UNQUALIFIED
Silvio I RutaRussiaAnna Fali PROPOSAL
Silvio T SchemmerAustraliaIoni Bowcher PROPOSAL
Maisha U CampainItalyAsiya Javayant PROPOSAL
Smith Q DarakjyJapanIvan Magalhaes NEW
Emily U DarakjyJapanIvan Magalhaes NEGOTIATION
Salvatore C TollnerRussiaIvan Magalhaes NEGOTIATION
Chavez V DoeJapanIoni Bowcher QUALIFIED
Murillo M SlusarskiItalyBernardo Dominic QUALIFIED
Johnson C PaprockiSpainAnna Fali QUALIFIED
Chavez H WieserItalyAsiya Javayant RENEWAL
Jeanfrancois F DilliardFranceOnyama Limba RENEWAL
Jeanfrancois Z AmigonCanadaIoni Bowcher RENEWAL
Rodrigues J WhobreyBrazilIvan Magalhaes UNQUALIFIED
Darci T AmigonBrazilAsiya Javayant PROPOSAL
Aika E FlosiItalyStephen Shaw NEGOTIATION
Costa H TollnerArgentinaAmy Elsner 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.