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
Salvatore H ChuiSpainIoni Bowcher QUALIFIED
Aika B BriddickGermanyIoni Bowcher NEGOTIATION
Maisha J DoeAustraliaBernardo Dominic QUALIFIED
Clifford V StensethRussiaXuxue Feng PROPOSAL
Misaki W DoeJapanAnna Fali RENEWAL
Chavez Q OstroskyUnited KingdomIvan Magalhaes NEGOTIATION
Mayumi A BowleyUnited KingdomStephen Shaw PROPOSAL
Aditya B BologniaIndiaIvan Magalhaes NEGOTIATION
Misaki K FigeroaBrazilStephen Shaw UNQUALIFIED
Darci D ButtBrazilBernardo Dominic NEGOTIATION
Aika L WaycottJapanStephen Shaw RENEWAL
Octavia H VenereUnited KingdomElwin Sharvill PROPOSAL
Emily Q RutaBrazilAnna Fali UNQUALIFIED
Aruna M VenereBrazilAnna Fali UNQUALIFIED
Tony J ButtArgentinaAsiya Javayant NEGOTIATION
Ivar X PoquetteItalyStephen Shaw NEGOTIATION
Kadeem T RimBrazilStephen Shaw QUALIFIED
Juan C AlbaresSpainOnyama Limba NEGOTIATION
Murillo L AlbaresItalyAsiya Javayant RENEWAL
Emily G VocelkaFranceStephen Shaw PROPOSAL
Octavia I FigeroaGermanyBernardo Dominic NEW
Ivar N SaylorsGermanyElwin Sharvill NEGOTIATION
Izzy W StensethItalyBernardo Dominic NEGOTIATION
Maisha N StockhamBrazilAmy Elsner NEGOTIATION
Stacey I BriddickCanadaAsiya Javayant NEW
Kadeem W MorascaCanadaAsiya Javayant NEGOTIATION
Kaitlin Y VenereFranceIoni Bowcher UNQUALIFIED
Clifford Y MorascaCanadaIvan Magalhaes UNQUALIFIED
Leja R StockhamCanadaXuxue Feng NEGOTIATION
Leon N KolmetzCanadaIoni Bowcher NEGOTIATION
Aika O CaldareraSpainAsiya Javayant RENEWAL
Isabel T SaylorsBrazilAmy Elsner NEW
Aruna D PoquetteSpainIvan Magalhaes NEGOTIATION
Jefferson K TollnerIndiaAmy Elsner NEW
Leja J StensethIndiaAsiya Javayant RENEWAL
Greenwood T KolmetzRussiaIvan Magalhaes NEW
James Q BologniaFranceXuxue Feng PROPOSAL
Juan V GarufiArgentinaAmy Elsner UNQUALIFIED
Nicolas G VenereGermanyAsiya Javayant PROPOSAL
Munro N RulapaughGermanyAsiya Javayant QUALIFIED
Claire P RulapaughSpainIvan Magalhaes RENEWAL
Silvio T DarakjyFranceAsiya Javayant PROPOSAL
Misaki I RimArgentinaAnna Fali PROPOSAL
Kaitlin C RulapaughRussiaBernardo Dominic UNQUALIFIED
Salvatore D SaylorsSpainIoni Bowcher PROPOSAL
Morrow G SchemmerCanadaAsiya Javayant PROPOSAL
Aika F GauchoJapanElwin Sharvill UNQUALIFIED
Juan V ButtAustraliaBernardo Dominic QUALIFIED
Darci L FerenczUnited KingdomIoni Bowcher PROPOSAL
Rodrigues F SergiItalyAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Adams C VenereFranceAnna Fali NEGOTIATION
Juan T BowleyItalyAnna Fali PROPOSAL
Francesco W RimCanadaXuxue Feng UNQUALIFIED
Isabel T GlickGermanyOnyama Limba QUALIFIED
Octavia C CaldareraIndiaIvan Magalhaes NEGOTIATION
Adams Y GauchoBrazilOnyama Limba UNQUALIFIED
Stacey Q CaudyAustraliaXuxue Feng UNQUALIFIED
Misaki G SlusarskiAustraliaIoni Bowcher NEW
Chavez D CaldareraSpainBernardo Dominic RENEWAL
Nicolas X OstroskyCanadaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro D StensethUnited Kingdom2026-05-12Printing Dimensions NEGOTIATION18Elwin Sharvill
1001Kadeem Z SlusarskiArgentina2026-05-12King, Christopher A Esq UNQUALIFIED65Stephen Shaw
1002Chavez T PoquetteArgentina2026-06-10Buckley Miller Wright PROPOSAL71Ivan Magalhaes
1003Mujtaba S WaycottGermany2026-06-06Buckley Miller Wright QUALIFIED5Ivan Magalhaes
1004Jefferson N BologniaFrance2026-06-08King, Christopher A Esq UNQUALIFIED10Asiya Javayant
1005Clifford W MacleadUnited Kingdom2026-05-12Printing Dimensions NEGOTIATION91Elwin Sharvill
1006Cody W CaudyArgentina2026-05-15Commercial Press PROPOSAL86Stephen Shaw
1007Ricardo J RoysterArgentina2026-05-23Buckley Miller Wright PROPOSAL17Onyama Limba
1008Costa Q InouyeAustralia2026-05-18Chemel, James L Cpa UNQUALIFIED78Stephen Shaw
1009Johnson M VenereCanada2026-05-17King, Christopher A Esq NEGOTIATION42Onyama Limba
1010Wickens J OstroskyJapan2026-05-27Commercial Press NEGOTIATION64Ivan Magalhaes
1011Adams K PoquetteFrance2026-06-01Feiner Bros NEGOTIATION85Asiya Javayant
1012Aruna S KuskoGermany2026-05-25Benton, John B Jr NEGOTIATION66Ivan Magalhaes
1013David T VocelkaSpain2026-05-26Rousseaux, Michael Esq PROPOSAL6Ioni Bowcher
1014Aditya R RutaGermany2026-05-23Feiner Bros NEW90Elwin Sharvill
1015Ivar J AlbaresRussia2026-06-09Feltz Printing Service UNQUALIFIED52Ioni Bowcher
1016Leja X GlickSpain2026-06-10Chapman, Ross E Esq PROPOSAL39Onyama Limba
1017Chavez K MorascaIndia2026-05-15Rousseaux, Michael Esq QUALIFIED6Ivan Magalhaes
1018Jones S InouyeSpain2026-05-13Rangoni Of Florence PROPOSAL80Xuxue Feng
1019Maria F RimIndia2026-05-17Benton, John B Jr NEGOTIATION17Onyama Limba
1020Misaki B MaletCanada2026-05-24Feiner Bros PROPOSAL90Amy Elsner
1021Jones Q KuskoUnited Kingdom2026-05-12Chemel, James L Cpa NEGOTIATION88Asiya Javayant
1022Aruna X RimUnited Kingdom2026-05-21Printing Dimensions NEW72Ioni Bowcher
1023Stacey C RoysterAustralia2026-06-06Rousseaux, Michael Esq UNQUALIFIED51Asiya Javayant
1024Jeanfrancois U FigeroaBrazil2026-05-20Truhlar And Truhlar Attys RENEWAL55Anna Fali
1025Rodrigues C GlickBrazil2026-05-13Chanay, Jeffrey A Esq UNQUALIFIED70Bernardo Dominic
1026Wickens G MaletRussia2026-05-13Chapman, Ross E Esq RENEWAL2Bernardo Dominic
1027James R ShinkoAustralia2026-05-12Printing Dimensions NEW48Ivan Magalhaes
1028Johnson S MorascaJapan2026-06-05Feiner Bros NEW77Bernardo Dominic
1029Sinclair I DoeAustralia2026-05-15King, Christopher A Esq NEGOTIATION82Xuxue Feng
1030Kaitlin Q VenereJapan2026-05-16Chemel, James L Cpa NEGOTIATION96Elwin Sharvill
1031Jeanfrancois V BriddickUnited Kingdom2026-05-26Rangoni Of Florence NEW21Stephen Shaw
1032Mayumi O ShinkoBrazil2026-05-29Morlong Associates RENEWAL31Bernardo Dominic
1033Silvio O StensethFrance2026-05-17Rangoni Of Florence RENEWAL33Anna Fali
1034Sinclair X BriddickBrazil2026-06-07Printing Dimensions NEGOTIATION70Ioni Bowcher
1035Misaki N SaylorsJapan2026-05-31Chapman, Ross E Esq RENEWAL10Amy Elsner
1036Mayumi V RoysterIndia2026-06-06Printing Dimensions UNQUALIFIED8Anna Fali
1037Munro O KolmetzArgentina2026-05-14Chanay, Jeffrey A Esq RENEWAL70Amy Elsner
1038Aditya M PoquetteUnited Kingdom2026-06-05Truhlar And Truhlar Attys QUALIFIED23Ivan Magalhaes
1039Aruna S MarrierCanada2026-06-07Chemel, James L Cpa QUALIFIED84Ioni Bowcher
1040Deepesh Y NestleIndia2026-05-28Buckley Miller Wright NEW91Anna Fali
1041Izzy J NestleIndia2026-06-06Printing Dimensions NEW11Amy Elsner
1042Jennifer V WieserArgentina2026-05-19Chanay, Jeffrey A Esq RENEWAL19Ivan Magalhaes
1043Greenwood B RutaBrazil2026-05-26Printing Dimensions QUALIFIED66Onyama Limba
1044Kadeem X ShinkoIndia2026-05-15Printing Dimensions PROPOSAL93Ioni Bowcher
1045Morrow R ShinkoIndia2026-06-10Feiner Bros QUALIFIED4Stephen Shaw
1046Jones L PoquetteCanada2026-06-05Printing Dimensions PROPOSAL53Ivan Magalhaes
1047Darci C GauchoIndia2026-06-01Dorl, James J Esq QUALIFIED13Onyama Limba
1048Antonio D StensethSpain2026-05-30Dorl, James J Esq PROPOSAL15Xuxue Feng
1049Mayumi O SlusarskiSpain2026-05-17Chemel, James L Cpa QUALIFIED36Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Tony E StensethCanadaAsiya Javayant NEW
Mayumi W WaycottIndiaXuxue Feng UNQUALIFIED
Sinclair I StockhamAustraliaAsiya Javayant RENEWAL
Johnson H MarrierSpainAmy Elsner NEGOTIATION
Kaitlin Z InouyeArgentinaOnyama Limba NEW
Emily V PoquetteJapanStephen Shaw NEW
Costa O MaletCanadaAsiya Javayant NEGOTIATION
Izzy R OldroydItalyStephen Shaw PROPOSAL
Arvin O VenereCanadaIoni Bowcher RENEWAL
Jefferson F MorascaFranceStephen Shaw NEGOTIATION
Arvin O MorascaArgentinaIvan Magalhaes NEGOTIATION
Alejandro C SchemmerRussiaBernardo Dominic UNQUALIFIED
Mayumi L GillianSpainXuxue Feng NEW
Greenwood B AlbaresSpainAsiya Javayant QUALIFIED
Kaitlin N RoysterAustraliaAsiya Javayant NEGOTIATION
Nicolas R RulapaughJapanAsiya Javayant NEW
Rodrigues B InouyeSpainStephen Shaw RENEWAL
Morrow T IturbideGermanyXuxue Feng NEW
Smith C CampainCanadaAsiya Javayant RENEWAL
David M TollnerGermanyElwin Sharvill NEGOTIATION
Maria D StockhamJapanIoni Bowcher QUALIFIED
Kaitlin U RutaGermanyStephen Shaw NEGOTIATION
Nicolas T MaletArgentinaXuxue Feng QUALIFIED
Smith M FerenczBrazilIoni Bowcher QUALIFIED
Faith A MorascaFranceIvan Magalhaes QUALIFIED
Misaki W FlosiBrazilAnna Fali UNQUALIFIED
Smith Y SlusarskiFranceAnna Fali RENEWAL
David W StockhamItalyAsiya Javayant QUALIFIED
Salvatore E FollerAustraliaStephen Shaw PROPOSAL
Munro K FigeroaUnited KingdomIvan Magalhaes PROPOSAL
Maria K GarufiSpainElwin Sharvill NEW
Kadeem E RimItalyIvan Magalhaes PROPOSAL
Arvin H FerenczItalyAmy Elsner RENEWAL
Murillo F BriddickFranceAsiya Javayant PROPOSAL
Maisha T WaycottFranceAsiya Javayant QUALIFIED
Greenwood S BologniaJapanAnna Fali NEW
Juan C MorascaBrazilElwin Sharvill NEW
Chavez C CaudyRussiaIvan Magalhaes PROPOSAL
Morrow U DilliardFranceStephen Shaw PROPOSAL
Wickens C BologniaJapanAmy Elsner QUALIFIED
Cody L KuskoArgentinaAnna Fali PROPOSAL
Jennifer F VenereGermanyAsiya Javayant NEW
Chavez I DilliardArgentinaXuxue Feng NEW
Sinclair Z AmigonItalyBernardo Dominic UNQUALIFIED
Leja A MacleadJapanAmy Elsner QUALIFIED
Aditya G RutaItalyAsiya Javayant UNQUALIFIED
Jeanfrancois V VocelkaJapanIvan Magalhaes NEW
Kaitlin W PoquetteUnited KingdomXuxue Feng QUALIFIED
Wickens K StockhamAustraliaAsiya Javayant RENEWAL
Misaki L WaycottGermanyOnyama Limba UNQUALIFIED
Frozen Columns
Name
Smith L Ruta
Chavez L Malet
Morrow E Wieser
Kadeem D Rulapaugh
Wickens T Paprocki
Mayumi Q Ostrosky
Isabel D Garufi
Maisha C Sergi
Tony M Ostrosky
Maria C Ostrosky
Darci J Sergi
Adams B Bolognia
Leon U Waycott
Salvatore D Maclead
Emily O Wieser
Maria C Gaucho
Claire E Darakjy
Wickens A Nestle
Ashley U Doe
Maisha Z Gaucho
Stacey W Glick
Alejandro H Ferencz
Ashley Y Amigon
Darci G Amigon
Jefferson T Rulapaugh
Maria F Wieser
Adams F Saylors
Francesco V Kolmetz
Darci F Chui
Morrow L Ostrosky
Nicolas C Figeroa
Emily Q Bolognia
Juan K Poquette
James Z Maclead
Juan Y Schemmer
Aika H Ruta
Costa I Saylors
Cody I Marrier
Silvio Z Perin
Arvin R Sergi
Antonio I Bowley
Kaitlin I Ferencz
Tony B Stenseth
Maisha X Campain
Munro X Glick
Cody N Whobrey
Stacey T Bowley
Ashley M Oldroyd
Johnson U Vocelka
Cody C Glick
IdCountryDate
1000Germany2026-05-13
1001Japan2026-05-22
1002Canada2026-06-01
1003India2026-06-02
1004Italy2026-05-14
1005India2026-05-13
1006France2026-06-01
1007Argentina2026-06-09
1008India2026-06-10
1009Spain2026-05-29
1010Australia2026-06-02
1011Brazil2026-05-31
1012Australia2026-05-31
1013Argentina2026-05-13
1014Germany2026-06-07
1015Russia2026-06-04
1016Australia2026-06-03
1017Spain2026-06-08
1018Brazil2026-06-08
1019Argentina2026-05-27
1020Argentina2026-05-21
1021France2026-05-27
1022Germany2026-05-12
1023Spain2026-05-23
1024Argentina2026-06-07
1025United Kingdom2026-05-18
1026Argentina2026-06-05
1027Italy2026-06-01
1028United Kingdom2026-05-27
1029Argentina2026-05-29
1030Brazil2026-05-14
1031United Kingdom2026-06-09
1032Argentina2026-05-12
1033Australia2026-05-13
1034Japan2026-05-14
1035India2026-05-13
1036India2026-06-07
1037India2026-05-18
1038Brazil2026-05-21
1039Brazil2026-05-18
1040Spain2026-06-04
1041France2026-06-06
1042Russia2026-05-25
1043Argentina2026-06-08
1044Japan2026-06-10
1045Canada2026-06-10
1046Italy2026-05-29
1047Brazil2026-05-30
1048Canada2026-06-04
1049Spain2026-05-19

On-Demand Data

NameIdCountryDate
Johnson C Oldroyd1000India2026-05-16
Tony V Gaucho1001India2026-05-18
Deepesh D Rim1002France2026-05-21
Nicolas O Marrier1003Spain2026-05-21
Murillo H Ostrosky1004Italy2026-05-14
Aika A Rulapaugh1005Russia2026-06-07
Ashley Z Inouye1006Argentina2026-06-09
Rodrigues E Dilliard1007Russia2026-05-31
Octavia M Shinko1008Japan2026-05-16
Juan J Foller1009Brazil2026-06-05
Aruna J Maclead1010Italy2026-05-22
Isabel D Garufi1011Japan2026-05-19
Jeanfrancois D Ostrosky1012Russia2026-05-15
Aruna R Maclead1013United Kingdom2026-06-07
Rodrigues C Tollner1014Russia2026-05-31
Deepesh V Sergi1015Argentina2026-06-01
Cody V Caldarera1016France2026-05-13
Leja J Doe1017India2026-06-01
Mujtaba I Poquette1018Japan2026-05-25
Morrow K Rulapaugh1019Germany2026-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore V WieserFranceStephen Shaw RENEWAL
Maria T GillianUnited KingdomAmy Elsner PROPOSAL
Francesco Z AmigonSpainOnyama Limba NEW
Ricardo Q MarrierUnited KingdomAmy Elsner QUALIFIED
Greenwood G IturbideSpainAnna Fali PROPOSAL
Greenwood Y RulapaughAustraliaXuxue Feng PROPOSAL
Jennifer O NickaItalyAsiya Javayant NEGOTIATION
Octavia D CaudyFranceBernardo Dominic QUALIFIED
Mujtaba P PoquetteSpainAsiya Javayant RENEWAL
Adams T MaletSpainAnna Fali RENEWAL
Mayumi I GauchoIndiaXuxue Feng QUALIFIED
Francesco Y KolmetzIndiaBernardo Dominic NEGOTIATION
Clifford H FerenczAustraliaBernardo Dominic RENEWAL
Aditya S DilliardCanadaXuxue Feng NEW
Silvio A AlbaresIndiaOnyama Limba RENEWAL
Costa S MacleadUnited KingdomStephen Shaw NEW
Silvio J MacleadGermanyIvan Magalhaes PROPOSAL
Smith H ShinkoUnited KingdomOnyama Limba NEW
Arvin Q RutaSpainOnyama Limba RENEWAL
Ashley A MaletUnited KingdomBernardo Dominic PROPOSAL
Chavez I CaudyIndiaAsiya Javayant RENEWAL
Aditya A ShinkoBrazilOnyama Limba NEGOTIATION
Juan D RimUnited KingdomAmy Elsner PROPOSAL
Mayumi L MaletIndiaAnna Fali QUALIFIED
Faith T TollnerBrazilBernardo Dominic QUALIFIED
Wickens P IturbideUnited KingdomStephen Shaw QUALIFIED
Francesco S BologniaIndiaStephen Shaw PROPOSAL
Rodrigues Q FlosiCanadaStephen Shaw PROPOSAL
Wickens U AlbaresGermanyBernardo Dominic UNQUALIFIED
Morrow F AlbaresBrazilBernardo Dominic NEGOTIATION
Cody G RimItalyAsiya Javayant UNQUALIFIED
Smith Z MaletCanadaOnyama Limba PROPOSAL
Ricardo T PoquetteFranceIvan Magalhaes NEGOTIATION
Jefferson L GarufiIndiaBernardo Dominic PROPOSAL
Julie Z GauchoFranceElwin Sharvill UNQUALIFIED
Isabel C FollerAustraliaStephen Shaw UNQUALIFIED
Isabel O VocelkaAustraliaXuxue Feng QUALIFIED
David R RoysterIndiaAsiya Javayant RENEWAL
Nicolas H VenereGermanyStephen Shaw RENEWAL
Rodrigues T RoysterSpainAnna Fali 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.