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
Aditya B OstroskyUnited KingdomStephen Shaw RENEWAL
Faith S RoysterCanadaAnna Fali NEGOTIATION
Morrow R TollnerGermanyAnna Fali QUALIFIED
Emily Y VocelkaUnited KingdomXuxue Feng PROPOSAL
David Z RoysterIndiaIvan Magalhaes PROPOSAL
Deepesh X PaprockiCanadaAsiya Javayant RENEWAL
Cody A ButtItalyXuxue Feng NEW
Jeanfrancois S MarrierArgentinaAsiya Javayant NEW
Ashley M RoysterItalyAmy Elsner UNQUALIFIED
Kaitlin I SchemmerRussiaOnyama Limba PROPOSAL
Maria Y DilliardCanadaIoni Bowcher QUALIFIED
Aruna V CampainFranceIvan Magalhaes RENEWAL
Aika E SergiAustraliaBernardo Dominic RENEWAL
Smith K AlbaresArgentinaBernardo Dominic NEW
Jones A NickaCanadaOnyama Limba NEGOTIATION
Deepesh E WhobreyCanadaAsiya Javayant NEW
Ricardo T MarrierSpainBernardo Dominic NEW
Alejandro M MacleadCanadaXuxue Feng PROPOSAL
Leja H FerenczArgentinaAnna Fali RENEWAL
Wickens B GlickAustraliaStephen Shaw PROPOSAL
Aruna K SaylorsRussiaAmy Elsner QUALIFIED
Mayumi H NestleAustraliaAmy Elsner NEW
Clifford K AlbaresGermanyElwin Sharvill QUALIFIED
Darci A SaylorsGermanyIvan Magalhaes NEW
Jefferson K FollerFranceStephen Shaw QUALIFIED
Costa R AmigonAustraliaStephen Shaw RENEWAL
Arvin P VocelkaItalyOnyama Limba PROPOSAL
Nicolas W PaprockiFranceXuxue Feng NEGOTIATION
Silvio A SchemmerGermanyElwin Sharvill UNQUALIFIED
Silvio S SaylorsArgentinaAmy Elsner NEGOTIATION
Mayumi C PaprockiBrazilXuxue Feng UNQUALIFIED
Ashley K FigeroaJapanStephen Shaw NEGOTIATION
Aruna K NickaFranceXuxue Feng QUALIFIED
Isabel L SaylorsFranceIoni Bowcher UNQUALIFIED
Sinclair E CaldareraAustraliaElwin Sharvill QUALIFIED
Francesco X DoeSpainStephen Shaw PROPOSAL
Kadeem G BologniaFranceXuxue Feng UNQUALIFIED
Julie Z OstroskyAustraliaIoni Bowcher NEW
Silvio N WieserBrazilAnna Fali RENEWAL
Jennifer K ChuiItalyBernardo Dominic RENEWAL
Jennifer F SaylorsFranceIoni Bowcher PROPOSAL
Mujtaba M DarakjySpainAsiya Javayant PROPOSAL
Izzy F MaletCanadaIvan Magalhaes UNQUALIFIED
Emily E OstroskyIndiaIoni Bowcher NEW
Johnson Y AmigonGermanyBernardo Dominic NEGOTIATION
Costa Y SlusarskiJapanOnyama Limba NEGOTIATION
Julie Y SchemmerGermanyXuxue Feng QUALIFIED
Arvin T ChuiItalyBernardo Dominic PROPOSAL
Deepesh Y MarrierGermanyBernardo Dominic NEW
Jones B BriddickAustraliaStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Mayumi G BologniaRussiaBernardo Dominic QUALIFIED
Murillo M RimJapanAsiya Javayant QUALIFIED
Alejandro Z GarufiGermanyStephen Shaw UNQUALIFIED
Arvin S StensethBrazilAsiya Javayant NEGOTIATION
Juan N GarufiFranceAmy Elsner UNQUALIFIED
Maisha Q InouyeArgentinaOnyama Limba UNQUALIFIED
Costa L StensethAustraliaStephen Shaw NEW
Misaki V PoquetteFranceAmy Elsner RENEWAL
Munro A SergiUnited KingdomOnyama Limba UNQUALIFIED
Izzy M RulapaughIndiaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba D AmigonAustralia2026-02-03Printing Dimensions NEW11Elwin Sharvill
1001Stacey C WieserBrazil2026-02-20Printing Dimensions PROPOSAL78Amy Elsner
1002Ricardo Z SchemmerGermany2026-02-07Feiner Bros PROPOSAL53Ivan Magalhaes
1003Jefferson Z IturbideSpain2026-02-13Chemel, James L Cpa NEGOTIATION76Onyama Limba
1004Alejandro F ButtArgentina2026-02-10King, Christopher A Esq NEGOTIATION20Asiya Javayant
1005Deepesh P DoeIndia2026-02-20Rousseaux, Michael Esq NEGOTIATION68Amy Elsner
1006Kaitlin R PoquetteSpain2026-02-23Buckley Miller Wright UNQUALIFIED9Stephen Shaw
1007Isabel K PoquetteFrance2026-02-26Feiner Bros QUALIFIED25Amy Elsner
1008Darci U WaycottFrance2026-02-21Rousseaux, Michael Esq UNQUALIFIED73Ivan Magalhaes
1009Jeanfrancois N RimUnited Kingdom2026-02-13Chanay, Jeffrey A Esq QUALIFIED59Stephen Shaw
1010Murillo T OldroydAustralia2026-01-30Chanay, Jeffrey A Esq NEGOTIATION32Stephen Shaw
1011Silvio H NickaBrazil2026-02-08Benton, John B Jr PROPOSAL49Onyama Limba
1012Jefferson L SaylorsFrance2026-02-18Commercial Press NEGOTIATION14Ioni Bowcher
1013Faith J MacleadItaly2026-02-23Buckley Miller Wright UNQUALIFIED63Anna Fali
1014Francesco N BowleySpain2026-02-05Truhlar And Truhlar Attys NEGOTIATION90Ioni Bowcher
1015Maria I MarrierAustralia2026-02-25King, Christopher A Esq NEGOTIATION26Ioni Bowcher
1016Costa H DilliardBrazil2026-01-31King, Christopher A Esq RENEWAL67Asiya Javayant
1017Costa G TollnerRussia2026-02-07Feiner Bros RENEWAL42Stephen Shaw
1018Maisha H AlbaresIndia2026-02-10Printing Dimensions PROPOSAL99Amy Elsner
1019Francesco L PoquetteItaly2026-01-28Morlong Associates PROPOSAL89Ivan Magalhaes
1020Aruna I RimSpain2026-02-01Buckley Miller Wright NEW49Ivan Magalhaes
1021Maisha T MaletFrance2026-01-28Feltz Printing Service UNQUALIFIED45Bernardo Dominic
1022Nicolas V DilliardJapan2026-02-03Feiner Bros NEGOTIATION96Amy Elsner
1023Julie Q FigeroaCanada2026-02-08Buckley Miller Wright NEW33Xuxue Feng
1024Sinclair T DoeRussia2026-02-07Benton, John B Jr QUALIFIED26Asiya Javayant
1025Claire E CaudyArgentina2026-02-15Buckley Miller Wright RENEWAL68Asiya Javayant
1026Claire G PoquetteRussia2026-02-24Chemel, James L Cpa PROPOSAL42Ioni Bowcher
1027Stacey K VocelkaBrazil2026-01-28Benton, John B Jr NEW6Ivan Magalhaes
1028Leon P CampainJapan2026-02-03Rangoni Of Florence UNQUALIFIED64Asiya Javayant
1029Sinclair N SlusarskiFrance2026-02-14Commercial Press PROPOSAL87Bernardo Dominic
1030Maria Z KuskoBrazil2026-01-28Benton, John B Jr PROPOSAL85Xuxue Feng
1031Aika X MaletFrance2026-02-07Morlong Associates RENEWAL3Anna Fali
1032Maisha B BriddickGermany2026-02-05Dorl, James J Esq NEGOTIATION59Amy Elsner
1033Faith E FigeroaGermany2026-02-19Buckley Miller Wright UNQUALIFIED16Stephen Shaw
1034Arvin E RutaSpain2026-02-24King, Christopher A Esq RENEWAL82Elwin Sharvill
1035Adams Z AlbaresAustralia2026-02-23Chemel, James L Cpa NEGOTIATION72Bernardo Dominic
1036Sinclair Y ChuiUnited Kingdom2026-02-21Chanay, Jeffrey A Esq NEW69Onyama Limba
1037Ivar L DoeFrance2026-02-26Rangoni Of Florence QUALIFIED56Asiya Javayant
1038Jefferson O KuskoFrance2026-02-20Chanay, Jeffrey A Esq UNQUALIFIED69Ivan Magalhaes
1039Claire L NickaBrazil2026-02-14Feltz Printing Service QUALIFIED51Xuxue Feng
1040Johnson C DarakjyBrazil2026-02-02Dorl, James J Esq RENEWAL26Ioni Bowcher
1041Salvatore Q NickaItaly2026-02-16Feiner Bros NEGOTIATION76Ivan Magalhaes
1042Tony L StockhamFrance2026-02-03Commercial Press UNQUALIFIED61Anna Fali
1043Faith H PaprockiCanada2026-02-09Chemel, James L Cpa UNQUALIFIED22Asiya Javayant
1044Arvin L MarrierArgentina2026-01-30Buckley Miller Wright RENEWAL7Xuxue Feng
1045Aditya I CaldareraJapan2026-02-04Chemel, James L Cpa NEGOTIATION29Xuxue Feng
1046Greenwood E MarrierRussia2026-02-12Morlong Associates NEW24Anna Fali
1047James Q CaudyJapan2026-02-08Feltz Printing Service NEW59Asiya Javayant
1048Sinclair U FollerFrance2026-02-16Chapman, Ross E Esq RENEWAL71Asiya Javayant
1049Antonio N NestleIndia2026-02-10Chemel, James L Cpa PROPOSAL91Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Emily X DoeFranceAmy Elsner NEW
Aruna L NickaAustraliaIoni Bowcher PROPOSAL
Jennifer J KuskoJapanAsiya Javayant PROPOSAL
Francesco P SlusarskiAustraliaAmy Elsner PROPOSAL
Faith I OstroskySpainOnyama Limba UNQUALIFIED
Silvio X VenereBrazilIvan Magalhaes NEW
Nicolas S MaletSpainOnyama Limba NEW
Aditya J GlickArgentinaAmy Elsner UNQUALIFIED
Jennifer X StensethSpainIvan Magalhaes QUALIFIED
Tony V OstroskySpainIvan Magalhaes UNQUALIFIED
Jefferson F SaylorsFranceIoni Bowcher UNQUALIFIED
Morrow M DoeCanadaIvan Magalhaes NEGOTIATION
Costa W TollnerFranceOnyama Limba PROPOSAL
Jones X SlusarskiBrazilElwin Sharvill UNQUALIFIED
Aditya T NickaGermanyIoni Bowcher UNQUALIFIED
Maria Q NestleRussiaElwin Sharvill PROPOSAL
Aika I TollnerGermanyAnna Fali UNQUALIFIED
Leon B OstroskyIndiaElwin Sharvill RENEWAL
Kadeem W PaprockiGermanyStephen Shaw PROPOSAL
Juan B ShinkoArgentinaXuxue Feng UNQUALIFIED
Octavia A VocelkaArgentinaIoni Bowcher UNQUALIFIED
Darci N OstroskyBrazilXuxue Feng RENEWAL
Antonio H FollerRussiaBernardo Dominic UNQUALIFIED
Rodrigues A BowleyAustraliaIvan Magalhaes UNQUALIFIED
Nicolas U MacleadItalyAsiya Javayant RENEWAL
Deepesh E RimJapanIoni Bowcher NEGOTIATION
Alejandro D MacleadFranceOnyama Limba NEW
Maisha K RimIndiaBernardo Dominic RENEWAL
Arvin D StockhamGermanyXuxue Feng QUALIFIED
Ivar R StensethRussiaElwin Sharvill PROPOSAL
Francesco L RoysterBrazilXuxue Feng NEGOTIATION
Darci F AmigonGermanyAsiya Javayant QUALIFIED
Chavez N MorascaIndiaIoni Bowcher PROPOSAL
Jeanfrancois B VocelkaJapanAmy Elsner UNQUALIFIED
Aruna U SlusarskiAustraliaBernardo Dominic RENEWAL
Cody I MaletGermanyAsiya Javayant NEW
Salvatore A BriddickGermanyIoni Bowcher NEGOTIATION
Murillo Y DarakjyCanadaElwin Sharvill RENEWAL
Smith E ChuiAustraliaStephen Shaw RENEWAL
Isabel R RoysterJapanAmy Elsner NEW
Deepesh U CaudyBrazilOnyama Limba RENEWAL
Ivar S DoeFranceIvan Magalhaes NEGOTIATION
Greenwood P PaprockiRussiaElwin Sharvill RENEWAL
Faith A FerenczRussiaAsiya Javayant PROPOSAL
Jeanfrancois W TollnerBrazilAnna Fali UNQUALIFIED
Morrow W BowleyItalyIoni Bowcher QUALIFIED
Ashley E GlickRussiaXuxue Feng NEGOTIATION
Jones G NickaUnited KingdomBernardo Dominic QUALIFIED
Salvatore F WhobreyAustraliaIoni Bowcher RENEWAL
Leon E KolmetzGermanyXuxue Feng NEGOTIATION
Frozen Columns
Name
Octavia J Kolmetz
Aruna X Glick
Costa Q Kusko
Juan W Glick
Isabel R Flosi
Chavez J Marrier
Jones J Stenseth
Tony I Poquette
Rodrigues O Gaucho
Antonio X Stenseth
Tony B Bowley
Misaki B Nestle
Jones D Shinko
Ricardo P Ferencz
Alejandro B Oldroyd
Darci J Whobrey
Tony D Campain
Ricardo R Dilliard
Nicolas Y Gillian
Julie W Gillian
Emily S Briddick
Misaki J Ruta
Costa M Amigon
Stacey T Campain
James F Royster
Adams M Butt
Murillo Z Caldarera
Morrow Z Gillian
Aika N Waycott
Cody J Butt
Aditya A Bolognia
Smith I Caudy
Darci J Ruta
Jennifer C Ruta
James M Gaucho
Johnson W Nicka
Kadeem C Ruta
Murillo F Whobrey
David W Doe
Mayumi T Campain
Ivar M Gillian
Leon J Malet
Kaitlin M Nicka
Wickens K Dilliard
Ivar U Nicka
Mujtaba O Marrier
Morrow J Maclead
Jefferson O Ferencz
Antonio D Doe
Stacey X Perin
IdCountryDate
1000Japan2026-02-05
1001Germany2026-02-08
1002Brazil2026-01-31
1003Brazil2026-02-06
1004Russia2026-02-14
1005Italy2026-02-07
1006Japan2026-02-20
1007Australia2026-02-16
1008France2026-02-14
1009Spain2026-02-23
1010Brazil2026-02-05
1011France2026-02-24
1012Japan2026-02-08
1013Brazil2026-02-12
1014Canada2026-01-29
1015Argentina2026-02-21
1016Japan2026-01-28
1017France2026-02-17
1018India2026-02-13
1019Japan2026-02-15
1020France2026-02-01
1021Australia2026-02-08
1022Canada2026-02-11
1023Spain2026-02-02
1024Brazil2026-02-20
1025Australia2026-02-10
1026France2026-02-23
1027France2026-02-24
1028United Kingdom2026-02-12
1029Japan2026-02-20
1030France2026-02-13
1031Russia2026-02-05
1032Germany2026-02-23
1033Spain2026-02-13
1034India2026-02-15
1035United Kingdom2026-02-08
1036Spain2026-02-18
1037India2026-02-03
1038Brazil2026-02-14
1039Russia2026-02-07
1040Japan2026-02-13
1041Italy2026-01-29
1042Germany2026-02-12
1043Brazil2026-02-18
1044France2026-02-12
1045Germany2026-01-29
1046Japan2026-02-11
1047Italy2026-02-05
1048Germany2026-02-13
1049United Kingdom2026-02-01

On-Demand Data

NameIdCountryDate
Darci G Kusko1000France2026-02-24
Jefferson O Saylors1001India2026-02-15
Misaki E Malet1002Australia2026-01-31
Kadeem M Malet1003Australia2026-02-03
Clifford V Foller1004Canada2026-02-15
Juan H Kolmetz1005United Kingdom2026-02-24
Clifford Z Garufi1006India2026-02-01
Maisha Q Morasca1007Spain2026-02-05
Chavez S Darakjy1008Japan2026-02-19
Tony Z Rulapaugh1009France2026-02-06
Jones V Rim1010Spain2026-02-12
Maria B Shinko1011Japan2026-02-20
Misaki F Malet1012Canada2026-02-07
Stacey S Glick1013Russia2026-02-23
Jones T Tollner1014France2026-02-11
Clifford X Butt1015Germany2026-02-01
Ricardo M Waycott1016Spain2026-02-01
Smith I Amigon1017United Kingdom2026-01-31
Greenwood C Poquette1018Russia2026-02-07
Kadeem V Shinko1019Italy2026-02-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan M BriddickCanadaStephen Shaw PROPOSAL
Smith R MarrierJapanElwin Sharvill RENEWAL
Clifford T IturbideCanadaAnna Fali NEGOTIATION
Emily B AlbaresBrazilAsiya Javayant PROPOSAL
Darci N MarrierCanadaStephen Shaw PROPOSAL
Julie Y BowleyArgentinaElwin Sharvill QUALIFIED
Murillo Z RulapaughBrazilIoni Bowcher NEGOTIATION
Clifford U ChuiUnited KingdomOnyama Limba UNQUALIFIED
Aika T VocelkaRussiaAmy Elsner NEW
Misaki S NestleIndiaBernardo Dominic QUALIFIED
James E BologniaRussiaBernardo Dominic NEW
Mayumi D WhobreyFranceIvan Magalhaes UNQUALIFIED
Aika Z IturbideArgentinaElwin Sharvill UNQUALIFIED
Tony Q InouyeItalyBernardo Dominic UNQUALIFIED
Silvio T RutaSpainIvan Magalhaes NEGOTIATION
Aika A PaprockiArgentinaXuxue Feng UNQUALIFIED
Stacey B PoquetteFranceIvan Magalhaes NEGOTIATION
Murillo J VocelkaRussiaElwin Sharvill UNQUALIFIED
Faith D DilliardUnited KingdomIvan Magalhaes PROPOSAL
Misaki P WieserBrazilIvan Magalhaes QUALIFIED
Izzy I TollnerJapanAmy Elsner QUALIFIED
Leon J WieserCanadaIvan Magalhaes UNQUALIFIED
Ivar X SchemmerSpainElwin Sharvill QUALIFIED
Maria V AmigonBrazilElwin Sharvill UNQUALIFIED
Jones E ChuiAustraliaXuxue Feng QUALIFIED
Munro O OstroskyJapanOnyama Limba NEGOTIATION
Sinclair P AlbaresArgentinaIoni Bowcher QUALIFIED
Clifford W TollnerItalyIvan Magalhaes RENEWAL
Aditya E MaletCanadaXuxue Feng NEGOTIATION
Salvatore A IturbideAustraliaAsiya Javayant NEW
Chavez W FollerItalyOnyama Limba NEW
Maisha H ButtJapanIoni Bowcher UNQUALIFIED
James N NickaIndiaElwin Sharvill NEW
Chavez D BriddickCanadaAsiya Javayant NEW
Isabel I GillianSpainElwin Sharvill QUALIFIED
Julie S NickaArgentinaBernardo Dominic NEW
Morrow I DoeJapanOnyama Limba NEW
Mayumi B BriddickAustraliaIvan Magalhaes UNQUALIFIED
Claire I FlosiAustraliaAnna Fali NEGOTIATION
Munro C MorascaJapanIoni Bowcher 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.