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
Mujtaba U CaudyRussiaAsiya Javayant QUALIFIED
Mujtaba O PoquetteRussiaIvan Magalhaes RENEWAL
Juan I SaylorsRussiaIoni Bowcher NEW
Nicolas Y SaylorsAustraliaAnna Fali NEW
Julie O CaudyUnited KingdomAsiya Javayant PROPOSAL
Jones J NestleArgentinaAmy Elsner RENEWAL
Mayumi E SchemmerCanadaAsiya Javayant RENEWAL
Darci Q ButtUnited KingdomStephen Shaw RENEWAL
Tony O ShinkoArgentinaOnyama Limba PROPOSAL
Octavia U NickaUnited KingdomIvan Magalhaes QUALIFIED
Aditya L RimAustraliaStephen Shaw NEGOTIATION
Costa Q GlickArgentinaOnyama Limba NEGOTIATION
Adams G PaprockiCanadaAsiya Javayant PROPOSAL
Jones J SaylorsBrazilElwin Sharvill UNQUALIFIED
Mujtaba F SchemmerJapanBernardo Dominic RENEWAL
Mayumi G MaletGermanyElwin Sharvill RENEWAL
Stacey X NickaArgentinaStephen Shaw NEGOTIATION
Ricardo L PoquetteJapanBernardo Dominic NEGOTIATION
Juan F TollnerAustraliaElwin Sharvill NEGOTIATION
Maisha W DarakjySpainOnyama Limba NEW
Francesco O OldroydRussiaIoni Bowcher NEW
Aruna H GillianBrazilIvan Magalhaes NEW
David J CaldareraJapanAsiya Javayant NEW
Francesco C StockhamItalyStephen Shaw UNQUALIFIED
Arvin B KolmetzCanadaAnna Fali QUALIFIED
David X PaprockiArgentinaOnyama Limba PROPOSAL
Aruna L RutaBrazilAsiya Javayant UNQUALIFIED
Emily Q BologniaAustraliaBernardo Dominic UNQUALIFIED
Octavia Q KuskoIndiaAnna Fali PROPOSAL
Arvin E IturbideJapanBernardo Dominic PROPOSAL
Juan N KolmetzAustraliaStephen Shaw QUALIFIED
Nicolas I NestleRussiaIvan Magalhaes QUALIFIED
Smith Q WhobreyAustraliaIoni Bowcher UNQUALIFIED
Alejandro T WieserCanadaAmy Elsner QUALIFIED
Mujtaba A PerinJapanAmy Elsner NEW
Deepesh K WieserItalyAnna Fali QUALIFIED
Antonio K VocelkaCanadaIoni Bowcher NEW
Francesco E MaletCanadaBernardo Dominic NEGOTIATION
Izzy Z BologniaUnited KingdomOnyama Limba RENEWAL
Stacey H CampainIndiaXuxue Feng UNQUALIFIED
Deepesh G DarakjyGermanyStephen Shaw NEW
Rodrigues B ShinkoArgentinaXuxue Feng NEW
Deepesh N KolmetzGermanyAnna Fali NEGOTIATION
Emily O MacleadAustraliaOnyama Limba NEGOTIATION
Leja G ShinkoIndiaXuxue Feng RENEWAL
Murillo G SlusarskiItalyIvan Magalhaes PROPOSAL
Cody V SlusarskiSpainIoni Bowcher NEW
Kaitlin R RutaAustraliaElwin Sharvill NEW
Isabel Z ButtBrazilAmy Elsner QUALIFIED
Tony O PoquetteBrazilIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin N NestleRussiaAmy Elsner PROPOSAL
Munro B PaprockiUnited KingdomIvan Magalhaes RENEWAL
Mujtaba N AmigonBrazilXuxue Feng UNQUALIFIED
Leon D SergiIndiaOnyama Limba PROPOSAL
Izzy A WaycottItalyXuxue Feng UNQUALIFIED
Tony D OldroydGermanyStephen Shaw QUALIFIED
Isabel H DarakjyItalyAnna Fali UNQUALIFIED
Salvatore T StensethArgentinaAsiya Javayant UNQUALIFIED
Rodrigues X MacleadBrazilXuxue Feng QUALIFIED
Rodrigues W MaletBrazilAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia H MacleadItaly2026-02-24Chanay, Jeffrey A Esq NEGOTIATION92Asiya Javayant
1001Jeanfrancois P TollnerUnited Kingdom2026-03-04Benton, John B Jr UNQUALIFIED99Ivan Magalhaes
1002Arvin H WieserJapan2026-02-13Truhlar And Truhlar Attys NEGOTIATION61Bernardo Dominic
1003Salvatore V RulapaughJapan2026-02-25King, Christopher A Esq UNQUALIFIED13Stephen Shaw
1004Nicolas Y DarakjyGermany2026-03-14King, Christopher A Esq NEW60Anna Fali
1005Ricardo H OldroydRussia2026-03-01Chanay, Jeffrey A Esq RENEWAL66Amy Elsner
1006Smith M FerenczArgentina2026-02-19Buckley Miller Wright UNQUALIFIED26Stephen Shaw
1007Leja M RimFrance2026-03-05Truhlar And Truhlar Attys QUALIFIED12Onyama Limba
1008Adams L AmigonArgentina2026-03-14Truhlar And Truhlar Attys NEW60Anna Fali
1009Adams D KuskoItaly2026-03-02Morlong Associates QUALIFIED13Asiya Javayant
1010Ricardo A IturbideAustralia2026-03-02Chemel, James L Cpa PROPOSAL72Stephen Shaw
1011Johnson O NestleSpain2026-03-14Commercial Press RENEWAL39Ivan Magalhaes
1012Francesco E DoeGermany2026-02-28Rangoni Of Florence UNQUALIFIED12Xuxue Feng
1013David N WhobreyRussia2026-02-16Dorl, James J Esq QUALIFIED21Amy Elsner
1014Wickens H InouyeSpain2026-03-12Dorl, James J Esq NEGOTIATION70Ivan Magalhaes
1015Stacey W FigeroaRussia2026-03-01Chanay, Jeffrey A Esq UNQUALIFIED58Xuxue Feng
1016Jeanfrancois G InouyeAustralia2026-03-07Chemel, James L Cpa UNQUALIFIED59Elwin Sharvill
1017Juan J GlickCanada2026-02-19King, Christopher A Esq RENEWAL86Anna Fali
1018Deepesh M RimGermany2026-03-02Commercial Press QUALIFIED10Amy Elsner
1019Leon Y WhobreyArgentina2026-03-08Benton, John B Jr PROPOSAL75Onyama Limba
1020Johnson F BowleyJapan2026-02-17Rangoni Of Florence PROPOSAL93Bernardo Dominic
1021Arvin Q CaldareraArgentina2026-03-02Chapman, Ross E Esq NEW0Elwin Sharvill
1022Maisha L OldroydBrazil2026-02-25Morlong Associates NEGOTIATION39Xuxue Feng
1023Greenwood B PaprockiUnited Kingdom2026-02-23Printing Dimensions NEW96Stephen Shaw
1024Ivar H WieserJapan2026-03-09King, Christopher A Esq QUALIFIED99Bernardo Dominic
1025Ricardo C MaletCanada2026-02-13Buckley Miller Wright PROPOSAL59Stephen Shaw
1026Chavez P CaldareraItaly2026-03-08Feiner Bros NEW48Anna Fali
1027Claire D BologniaSpain2026-03-01Truhlar And Truhlar Attys NEGOTIATION71Ivan Magalhaes
1028Emily V FlosiSpain2026-03-11Morlong Associates RENEWAL76Elwin Sharvill
1029Clifford N BriddickArgentina2026-02-28Printing Dimensions UNQUALIFIED13Amy Elsner
1030Nicolas B ChuiGermany2026-02-14Rousseaux, Michael Esq QUALIFIED36Xuxue Feng
1031Chavez R TollnerBrazil2026-03-09Morlong Associates NEW31Ivan Magalhaes
1032Francesco A ButtSpain2026-03-12Benton, John B Jr NEGOTIATION65Asiya Javayant
1033Salvatore V NickaSpain2026-03-04Truhlar And Truhlar Attys PROPOSAL47Stephen Shaw
1034Deepesh E NickaIndia2026-03-14Chapman, Ross E Esq QUALIFIED13Asiya Javayant
1035Mayumi V MacleadIndia2026-02-23King, Christopher A Esq PROPOSAL32Ioni Bowcher
1036Misaki H MarrierSpain2026-03-03Feiner Bros RENEWAL98Bernardo Dominic
1037James O GauchoBrazil2026-03-08Feltz Printing Service QUALIFIED69Elwin Sharvill
1038Jefferson X MarrierFrance2026-03-03Rousseaux, Michael Esq NEGOTIATION65Bernardo Dominic
1039Ivar W SchemmerAustralia2026-02-28Commercial Press UNQUALIFIED63Anna Fali
1040Kaitlin G WhobreyFrance2026-02-26Truhlar And Truhlar Attys QUALIFIED43Anna Fali
1041Chavez T VenereItaly2026-02-19Chapman, Ross E Esq RENEWAL57Xuxue Feng
1042Tony T FlosiUnited Kingdom2026-02-14Commercial Press PROPOSAL20Asiya Javayant
1043Deepesh C WieserItaly2026-02-27Printing Dimensions NEW59Xuxue Feng
1044Darci R RoysterGermany2026-03-04Commercial Press PROPOSAL25Anna Fali
1045Johnson Z OstroskyCanada2026-02-16Printing Dimensions NEGOTIATION37Xuxue Feng
1046Greenwood G DilliardIndia2026-03-06Chanay, Jeffrey A Esq QUALIFIED94Anna Fali
1047Adams I StensethJapan2026-03-14Chemel, James L Cpa RENEWAL48Ivan Magalhaes
1048Nicolas H MarrierRussia2026-02-19Benton, John B Jr PROPOSAL66Asiya Javayant
1049Silvio J PaprockiUnited Kingdom2026-03-12Truhlar And Truhlar Attys UNQUALIFIED89Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
David P WieserItalyAmy Elsner NEGOTIATION
Maria C MarrierAustraliaAsiya Javayant RENEWAL
Juan O ShinkoCanadaIvan Magalhaes PROPOSAL
Costa I KolmetzItalyXuxue Feng RENEWAL
Aditya A NestleJapanStephen Shaw QUALIFIED
Octavia T BologniaFranceAnna Fali NEW
Leja A GillianJapanStephen Shaw RENEWAL
Deepesh F NestleBrazilAsiya Javayant QUALIFIED
Octavia Z PaprockiItalyXuxue Feng PROPOSAL
Aruna S PoquetteIndiaIoni Bowcher QUALIFIED
Aditya R PoquetteBrazilAsiya Javayant NEW
Claire V NickaFranceStephen Shaw QUALIFIED
Francesco F ChuiGermanyIvan Magalhaes RENEWAL
Kaitlin L FigeroaItalyElwin Sharvill UNQUALIFIED
Aditya I TollnerAustraliaAnna Fali QUALIFIED
Ivar V FerenczFranceIoni Bowcher UNQUALIFIED
Juan S PerinRussiaAmy Elsner NEW
Silvio K MacleadFranceAmy Elsner QUALIFIED
Francesco L TollnerRussiaIvan Magalhaes UNQUALIFIED
Mayumi I FollerRussiaXuxue Feng UNQUALIFIED
Kadeem A WaycottIndiaIvan Magalhaes NEW
Murillo O SaylorsFranceOnyama Limba NEGOTIATION
Emily S DilliardCanadaElwin Sharvill QUALIFIED
Nicolas J RoysterIndiaBernardo Dominic NEW
Darci H TollnerArgentinaBernardo Dominic RENEWAL
Sinclair T VocelkaCanadaAmy Elsner NEGOTIATION
Jeanfrancois C KuskoFranceBernardo Dominic NEGOTIATION
Nicolas F KolmetzJapanBernardo Dominic RENEWAL
Salvatore O OstroskyUnited KingdomXuxue Feng QUALIFIED
Darci C RulapaughArgentinaOnyama Limba NEW
Maria Y StensethBrazilXuxue Feng QUALIFIED
Antonio I MaletSpainElwin Sharvill QUALIFIED
Juan O DarakjyItalyAsiya Javayant NEW
Jefferson I CaudyCanadaAmy Elsner NEW
Izzy X DoeAustraliaOnyama Limba RENEWAL
Greenwood R FigeroaBrazilAnna Fali PROPOSAL
David U IturbideBrazilStephen Shaw UNQUALIFIED
Aruna O GarufiUnited KingdomOnyama Limba PROPOSAL
Juan D GlickRussiaIvan Magalhaes QUALIFIED
Leja S SergiArgentinaIoni Bowcher PROPOSAL
Murillo J WaycottJapanAmy Elsner PROPOSAL
Mujtaba O FerenczSpainAsiya Javayant PROPOSAL
Nicolas B RimArgentinaAsiya Javayant UNQUALIFIED
Francesco I BowleyBrazilAsiya Javayant QUALIFIED
Jennifer R RimFranceIvan Magalhaes RENEWAL
Faith E RimJapanStephen Shaw NEW
Maisha E MaletCanadaBernardo Dominic NEGOTIATION
Julie Q TollnerItalyAmy Elsner UNQUALIFIED
Emily N RulapaughCanadaStephen Shaw RENEWAL
Tony H GarufiAustraliaBernardo Dominic QUALIFIED
Frozen Columns
Name
Deepesh O Vocelka
Silvio H Flosi
Leon R Stockham
Cody S Kolmetz
Aika Y Shinko
Mayumi W Dilliard
Jones V Malet
Ivar T Wieser
Arvin F Sergi
Alejandro D Vocelka
Antonio I Flosi
Kaitlin R Briddick
Kadeem D Tollner
Leja V Caldarera
Clifford C Marrier
Stacey Y Wieser
Ricardo O Stenseth
Ashley P Butt
Aruna P Ferencz
Aruna S Vocelka
Jefferson G Darakjy
Chavez U Venere
James N Whobrey
Cody V Gaucho
Rodrigues B Amigon
Jefferson K Glick
Adams B Butt
Sinclair D Nestle
Izzy V Figeroa
Emily Z Darakjy
Francesco C Vocelka
Kadeem F Chui
Octavia Y Stenseth
Julie P Flosi
Julie Y Saylors
Salvatore N Doe
Ashley P Gaucho
Wickens L Maclead
Ashley M Malet
Cody M Albares
Izzy Q Gaucho
Stacey M Slusarski
Nicolas L Poquette
Misaki D Darakjy
Johnson M Nestle
Mayumi I Caudy
Leon Q Amigon
Silvio H Malet
Claire V Wieser
Ivar D Bolognia
IdCountryDate
1000United Kingdom2026-03-13
1001France2026-03-05
1002Argentina2026-02-19
1003Spain2026-03-07
1004India2026-02-14
1005Spain2026-02-24
1006Japan2026-02-14
1007Germany2026-03-11
1008Canada2026-03-09
1009Italy2026-03-11
1010Russia2026-02-14
1011Argentina2026-03-08
1012Argentina2026-02-17
1013Japan2026-03-05
1014France2026-02-18
1015Germany2026-03-09
1016Australia2026-02-15
1017Brazil2026-02-19
1018Argentina2026-02-26
1019Russia2026-03-04
1020Spain2026-02-28
1021Canada2026-03-10
1022Australia2026-02-15
1023Italy2026-03-10
1024Italy2026-02-14
1025Australia2026-02-25
1026Australia2026-03-09
1027Spain2026-03-08
1028Japan2026-03-05
1029France2026-02-26
1030Japan2026-03-07
1031Germany2026-03-13
1032Australia2026-03-12
1033Russia2026-03-08
1034Brazil2026-02-15
1035Italy2026-02-26
1036Japan2026-02-18
1037Canada2026-03-12
1038Italy2026-02-22
1039Germany2026-03-12
1040Canada2026-02-13
1041Russia2026-02-22
1042Canada2026-03-14
1043India2026-03-10
1044Argentina2026-02-17
1045Russia2026-02-27
1046Japan2026-02-21
1047Canada2026-03-13
1048Argentina2026-03-02
1049Canada2026-03-09

On-Demand Data

NameIdCountryDate
Mayumi I Campain1000Germany2026-02-28
Jennifer D Gillian1001Japan2026-02-26
Ricardo C Bowley1002Germany2026-02-26
Isabel R Malet1003Brazil2026-02-21
Johnson E Inouye1004Australia2026-02-22
Alejandro L Marrier1005Canada2026-03-14
Nicolas Z Rim1006Spain2026-03-06
Ricardo D Malet1007Russia2026-03-09
Isabel V Ferencz1008Japan2026-03-08
Isabel B Gaucho1009Italy2026-03-01
Emily L Kusko1010Argentina2026-02-18
Wickens D Whobrey1011Japan2026-02-26
Wickens G Perin1012Spain2026-02-18
Ivar Y Caudy1013Australia2026-03-11
Faith I Shinko1014Brazil2026-03-13
Mujtaba U Ruta1015Italy2026-02-16
Nicolas G Poquette1016Japan2026-02-23
Cody A Paprocki1017Canada2026-03-07
Wickens H Dilliard1018Germany2026-02-22
Ricardo C Whobrey1019Russia2026-02-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco H AlbaresItalyAsiya Javayant QUALIFIED
Jennifer K BriddickAustraliaAsiya Javayant NEW
Cody W KolmetzItalyXuxue Feng PROPOSAL
James N FlosiFranceIoni Bowcher QUALIFIED
Isabel Z WaycottRussiaStephen Shaw QUALIFIED
Arvin N ShinkoCanadaXuxue Feng NEGOTIATION
Kaitlin D MaletAustraliaAnna Fali NEW
Ricardo P BologniaSpainBernardo Dominic UNQUALIFIED
Greenwood H DilliardRussiaAmy Elsner NEGOTIATION
Antonio O MaletFranceIvan Magalhaes NEW
Jennifer O FigeroaRussiaAmy Elsner NEGOTIATION
Francesco K RoysterGermanyIoni Bowcher PROPOSAL
Munro S ChuiSpainOnyama Limba NEW
Isabel E RulapaughJapanOnyama Limba QUALIFIED
Maisha P PoquetteAustraliaIoni Bowcher NEW
Maria M IturbideItalyXuxue Feng NEGOTIATION
Stacey M OldroydArgentinaElwin Sharvill NEGOTIATION
Aika G OstroskyJapanElwin Sharvill RENEWAL
Julie E StensethCanadaIvan Magalhaes RENEWAL
Morrow O AmigonUnited KingdomAnna Fali PROPOSAL
Jefferson J IturbideGermanyStephen Shaw QUALIFIED
Kadeem E MaletBrazilAmy Elsner PROPOSAL
Cody Q IturbideUnited KingdomOnyama Limba QUALIFIED
James Q RutaSpainElwin Sharvill QUALIFIED
Ashley B MaletBrazilIvan Magalhaes RENEWAL
Costa U WieserSpainIvan Magalhaes NEGOTIATION
Antonio E RutaJapanElwin Sharvill NEGOTIATION
Izzy X FigeroaAustraliaAsiya Javayant RENEWAL
Munro X RoysterAustraliaOnyama Limba QUALIFIED
Emily B NestleFranceAnna Fali QUALIFIED
Nicolas C SergiUnited KingdomStephen Shaw PROPOSAL
Tony Z WieserItalyAsiya Javayant RENEWAL
Cody T CaldareraCanadaAmy Elsner RENEWAL
Chavez M GauchoUnited KingdomStephen Shaw UNQUALIFIED
Octavia J ShinkoGermanyStephen Shaw NEW
Salvatore E SergiItalyBernardo Dominic NEW
Mayumi Y SchemmerIndiaElwin Sharvill QUALIFIED
Ivar H CaldareraIndiaAsiya Javayant UNQUALIFIED
Ashley A GauchoGermanyOnyama Limba NEW
Mayumi J VocelkaItalyXuxue Feng 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.