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 C ShinkoSpainBernardo Dominic QUALIFIED
Salvatore S FlosiIndiaAsiya Javayant NEW
Claire W FigeroaBrazilElwin Sharvill NEW
Francesco L MaletCanadaBernardo Dominic RENEWAL
Ivar S DilliardJapanIvan Magalhaes NEW
Claire R CampainBrazilElwin Sharvill UNQUALIFIED
Johnson I BriddickFranceIvan Magalhaes NEGOTIATION
Adams X WaycottFranceAmy Elsner QUALIFIED
Morrow E CaldareraUnited KingdomAsiya Javayant PROPOSAL
Jefferson J BologniaBrazilIoni Bowcher NEGOTIATION
Julie Y MarrierAustraliaBernardo Dominic RENEWAL
Murillo O KuskoArgentinaIvan Magalhaes NEW
Ashley A StensethRussiaAsiya Javayant NEW
Darci P TollnerItalyStephen Shaw NEW
Faith C MarrierArgentinaAmy Elsner UNQUALIFIED
Ivar H VenereRussiaIvan Magalhaes RENEWAL
David G ButtRussiaIvan Magalhaes NEGOTIATION
Arvin A VocelkaJapanIoni Bowcher UNQUALIFIED
James B PoquetteItalyStephen Shaw RENEWAL
Rodrigues A CaudyJapanAmy Elsner UNQUALIFIED
Johnson Y StockhamItalyAnna Fali RENEWAL
Leja G WaycottCanadaAmy Elsner QUALIFIED
Emily U MarrierGermanyStephen Shaw PROPOSAL
Deepesh Q DilliardBrazilOnyama Limba NEGOTIATION
Antonio E ButtUnited KingdomAmy Elsner RENEWAL
Maria N GlickFranceAsiya Javayant QUALIFIED
Jefferson J RoysterArgentinaXuxue Feng UNQUALIFIED
Clifford H RoysterItalyXuxue Feng PROPOSAL
Jones P RutaArgentinaIvan Magalhaes RENEWAL
Clifford C KuskoFranceElwin Sharvill RENEWAL
Silvio K SergiAustraliaBernardo Dominic QUALIFIED
Faith J FollerJapanStephen Shaw NEW
Nicolas S IturbideBrazilAmy Elsner UNQUALIFIED
Octavia Q MaletItalyIvan Magalhaes NEGOTIATION
Jefferson D InouyeRussiaStephen Shaw PROPOSAL
Ricardo C CaldareraRussiaIvan Magalhaes UNQUALIFIED
Stacey B GlickIndiaXuxue Feng NEGOTIATION
Maria L VenereRussiaXuxue Feng UNQUALIFIED
Arvin B OldroydUnited KingdomStephen Shaw NEGOTIATION
Maria T NickaIndiaIoni Bowcher UNQUALIFIED
Darci M GlickUnited KingdomXuxue Feng RENEWAL
Juan O RutaFranceAmy Elsner NEGOTIATION
Costa G DarakjyArgentinaXuxue Feng NEGOTIATION
Arvin G PerinAustraliaIvan Magalhaes RENEWAL
Kadeem A AmigonSpainXuxue Feng QUALIFIED
Ashley A SlusarskiSpainStephen Shaw NEW
Darci D StockhamItalyAsiya Javayant NEGOTIATION
Munro O FerenczAustraliaAmy Elsner QUALIFIED
Stacey I DoeRussiaElwin Sharvill NEGOTIATION
David L CaudyAustraliaAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Nicolas X OstroskyRussiaAsiya Javayant NEGOTIATION
Antonio L SaylorsBrazilElwin Sharvill PROPOSAL
Francesco D PoquetteCanadaIvan Magalhaes QUALIFIED
Jeanfrancois E GauchoSpainBernardo Dominic PROPOSAL
Arvin B FlosiUnited KingdomAsiya Javayant UNQUALIFIED
Rodrigues L FollerCanadaOnyama Limba QUALIFIED
Faith F VocelkaArgentinaAsiya Javayant NEW
Maisha T OstroskyBrazilAnna Fali UNQUALIFIED
Claire P VenereIndiaIvan Magalhaes RENEWAL
Octavia Y FigeroaUnited KingdomStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci H SchemmerCanada2026-05-26Dorl, James J Esq QUALIFIED63Ioni Bowcher
1001Leon L IturbideUnited Kingdom2026-06-11Chapman, Ross E Esq QUALIFIED19Ivan Magalhaes
1002James V VenereRussia2026-06-13Dorl, James J Esq RENEWAL52Asiya Javayant
1003Silvio W RoysterAustralia2026-05-27Chemel, James L Cpa RENEWAL58Stephen Shaw
1004Smith T AlbaresJapan2026-06-06Chanay, Jeffrey A Esq QUALIFIED93Stephen Shaw
1005Ashley X RoysterGermany2026-06-23Printing Dimensions RENEWAL70Amy Elsner
1006Alejandro D ChuiArgentina2026-06-11Feiner Bros PROPOSAL47Xuxue Feng
1007Julie N SergiUnited Kingdom2026-06-01Chemel, James L Cpa NEGOTIATION23Onyama Limba
1008Jefferson G PoquetteFrance2026-06-01Chemel, James L Cpa RENEWAL0Xuxue Feng
1009Adams V IturbideSpain2026-06-21Feltz Printing Service UNQUALIFIED45Asiya Javayant
1010Maisha A CaldareraArgentina2026-06-12Feiner Bros NEGOTIATION93Xuxue Feng
1011Ivar D ShinkoGermany2026-06-18Printing Dimensions PROPOSAL92Ioni Bowcher
1012Silvio T DilliardGermany2026-05-29Chanay, Jeffrey A Esq NEGOTIATION22Stephen Shaw
1013Antonio N TollnerItaly2026-06-07Buckley Miller Wright UNQUALIFIED95Amy Elsner
1014Morrow K GillianSpain2026-06-05Truhlar And Truhlar Attys PROPOSAL1Onyama Limba
1015Mayumi B RutaJapan2026-05-28Benton, John B Jr UNQUALIFIED22Ivan Magalhaes
1016Misaki U ShinkoAustralia2026-06-02Benton, John B Jr QUALIFIED71Elwin Sharvill
1017David O DilliardRussia2026-05-27Feltz Printing Service PROPOSAL68Ioni Bowcher
1018Arvin J RulapaughRussia2026-05-30Morlong Associates NEW92Ioni Bowcher
1019Claire J ButtIndia2026-06-19Feltz Printing Service PROPOSAL50Onyama Limba
1020Greenwood B BologniaJapan2026-05-30Feltz Printing Service UNQUALIFIED28Ivan Magalhaes
1021Jennifer T PerinArgentina2026-06-03Morlong Associates UNQUALIFIED4Stephen Shaw
1022Adams H FlosiCanada2026-06-12Benton, John B Jr UNQUALIFIED72Ioni Bowcher
1023Smith S ShinkoCanada2026-05-29Feltz Printing Service QUALIFIED16Anna Fali
1024Greenwood H SlusarskiBrazil2026-06-04Morlong Associates QUALIFIED69Amy Elsner
1025Jeanfrancois E CampainGermany2026-05-25Printing Dimensions QUALIFIED32Elwin Sharvill
1026Rodrigues L AmigonCanada2026-05-27King, Christopher A Esq PROPOSAL37Onyama Limba
1027Leja I WhobreySpain2026-06-09Truhlar And Truhlar Attys RENEWAL26Bernardo Dominic
1028Stacey P ButtCanada2026-06-18Rousseaux, Michael Esq PROPOSAL92Amy Elsner
1029Antonio Q CaldareraItaly2026-06-23Printing Dimensions NEGOTIATION17Xuxue Feng
1030Emily P SlusarskiCanada2026-06-21Rangoni Of Florence PROPOSAL8Ivan Magalhaes
1031Antonio W SergiIndia2026-06-04Feltz Printing Service UNQUALIFIED29Stephen Shaw
1032Silvio T AlbaresAustralia2026-06-16Feiner Bros QUALIFIED71Stephen Shaw
1033Maisha Q InouyeAustralia2026-06-07Rangoni Of Florence RENEWAL13Elwin Sharvill
1034Smith F GillianAustralia2026-06-06Dorl, James J Esq NEGOTIATION63Stephen Shaw
1035Mayumi M TollnerRussia2026-06-08King, Christopher A Esq UNQUALIFIED83Onyama Limba
1036Darci K WieserBrazil2026-05-26Chemel, James L Cpa PROPOSAL78Bernardo Dominic
1037Jones G VenereItaly2026-06-17Benton, John B Jr NEW48Amy Elsner
1038Faith U CampainBrazil2026-06-06Morlong Associates NEGOTIATION17Bernardo Dominic
1039Leja R PoquetteIndia2026-05-31Chapman, Ross E Esq PROPOSAL79Xuxue Feng
1040Salvatore Q CaudyAustralia2026-06-15Rangoni Of Florence UNQUALIFIED60Elwin Sharvill
1041Kaitlin X IturbideCanada2026-06-01Benton, John B Jr RENEWAL65Amy Elsner
1042Jeanfrancois L StensethCanada2026-06-11Buckley Miller Wright QUALIFIED33Stephen Shaw
1043Jefferson T IturbideArgentina2026-06-17Chanay, Jeffrey A Esq NEW94Onyama Limba
1044Stacey O PerinRussia2026-06-09Feiner Bros QUALIFIED65Xuxue Feng
1045Octavia P StockhamFrance2026-05-26Feltz Printing Service NEW46Onyama Limba
1046Deepesh A GillianBrazil2026-06-02Commercial Press NEGOTIATION41Onyama Limba
1047Adams X GauchoFrance2026-05-26Rangoni Of Florence NEW66Ioni Bowcher
1048Maria S RulapaughCanada2026-06-09Commercial Press PROPOSAL8Ioni Bowcher
1049Faith W CaldareraFrance2026-05-26Morlong Associates NEW70Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois X OldroydIndiaAsiya Javayant UNQUALIFIED
Johnson M BologniaFranceIvan Magalhaes NEW
Aditya F PoquetteBrazilElwin Sharvill QUALIFIED
Jefferson G WieserFranceElwin Sharvill NEW
Aruna I OldroydJapanIvan Magalhaes UNQUALIFIED
Silvio I GauchoJapanAnna Fali UNQUALIFIED
Antonio T MaletArgentinaOnyama Limba RENEWAL
David Z AlbaresBrazilAsiya Javayant NEGOTIATION
Maria T GlickJapanAnna Fali PROPOSAL
Faith W OstroskyIndiaIvan Magalhaes QUALIFIED
Jefferson T TollnerArgentinaIoni Bowcher PROPOSAL
Ricardo S KolmetzIndiaAnna Fali RENEWAL
Jeanfrancois U GlickBrazilAnna Fali UNQUALIFIED
Octavia X TollnerIndiaAmy Elsner RENEWAL
Arvin R GlickIndiaAnna Fali NEGOTIATION
Salvatore W SaylorsGermanyStephen Shaw PROPOSAL
Maisha R GlickUnited KingdomAmy Elsner RENEWAL
Ricardo J BologniaAustraliaAmy Elsner QUALIFIED
Jefferson E ChuiSpainIoni Bowcher PROPOSAL
Jennifer B GlickRussiaElwin Sharvill QUALIFIED
Jefferson M BriddickSpainAmy Elsner QUALIFIED
Aruna Y GlickArgentinaXuxue Feng RENEWAL
Mujtaba H CaudyGermanyIvan Magalhaes QUALIFIED
Maisha Z PoquetteGermanyAnna Fali RENEWAL
Aika Y OstroskyRussiaAnna Fali PROPOSAL
Clifford Z GillianRussiaIoni Bowcher NEW
Cody Q SergiCanadaXuxue Feng RENEWAL
Cody J RoysterSpainElwin Sharvill PROPOSAL
Costa G RimCanadaIoni Bowcher RENEWAL
Emily E GillianRussiaOnyama Limba RENEWAL
Clifford Z WaycottSpainStephen Shaw PROPOSAL
Morrow Z RimItalyAnna Fali NEGOTIATION
Maria J MacleadAustraliaElwin Sharvill NEGOTIATION
Kaitlin W OstroskyBrazilBernardo Dominic NEW
Ivar M DilliardSpainAsiya Javayant RENEWAL
Costa J MorascaAustraliaStephen Shaw NEGOTIATION
Francesco F BowleySpainXuxue Feng UNQUALIFIED
Darci B AlbaresRussiaBernardo Dominic UNQUALIFIED
Juan M IturbideRussiaXuxue Feng NEW
Morrow P RimFranceAnna Fali UNQUALIFIED
Jennifer Q MarrierRussiaIvan Magalhaes NEW
Jones L ButtJapanAnna Fali RENEWAL
Silvio A MorascaCanadaAnna Fali QUALIFIED
Claire R BriddickFranceOnyama Limba NEGOTIATION
Rodrigues U GarufiJapanAsiya Javayant QUALIFIED
Aika W BriddickSpainIoni Bowcher QUALIFIED
Alejandro Z PerinAustraliaAsiya Javayant UNQUALIFIED
Faith M GlickRussiaAmy Elsner NEGOTIATION
Juan L VenereCanadaBernardo Dominic QUALIFIED
Leon O VocelkaGermanyAsiya Javayant RENEWAL
Frozen Columns
Name
Isabel Y Royster
Wickens P Caudy
Faith J Marrier
Rodrigues E Tollner
Emily K Stenseth
Morrow Z Garufi
Clifford X Venere
Alejandro X Sergi
Nicolas H Malet
Claire J Gaucho
Leon W Rim
Mayumi D Caudy
Sinclair S Kusko
Murillo A Doe
Aditya H Kusko
Ashley Y Whobrey
Mayumi U Stockham
Izzy O Malet
Julie Y Saylors
Izzy B Dilliard
Leja E Maclead
Mujtaba Z Slusarski
James M Ruta
Deepesh E Stenseth
David J Ferencz
Jones W Caldarera
Aditya G Caudy
Leon N Vocelka
Ivar Q Vocelka
Ricardo O Caudy
Aditya H Slusarski
Izzy D Briddick
Alejandro A Stenseth
Smith P Paprocki
Arvin A Royster
Arvin V Nicka
Jeanfrancois U Schemmer
Maisha N Ostrosky
Jones E Malet
Leja F Gillian
Jeanfrancois Y Iturbide
Juan Z Royster
Izzy C Rulapaugh
Salvatore E Inouye
Salvatore E Rulapaugh
Smith A Dilliard
Izzy V Wieser
Aditya M Rim
Ashley N Garufi
Kaitlin U Caldarera
IdCountryDate
1000Spain2026-06-23
1001Argentina2026-06-23
1002Canada2026-06-19
1003India2026-06-01
1004Italy2026-06-10
1005Brazil2026-06-06
1006Argentina2026-06-07
1007Canada2026-05-27
1008Canada2026-06-20
1009Germany2026-05-30
1010Germany2026-06-04
1011Japan2026-06-18
1012France2026-06-22
1013United Kingdom2026-06-10
1014France2026-06-02
1015Argentina2026-06-22
1016Australia2026-06-01
1017Japan2026-06-14
1018Brazil2026-06-22
1019Japan2026-06-23
1020Canada2026-06-22
1021Italy2026-06-06
1022Russia2026-06-18
1023Brazil2026-06-11
1024Brazil2026-06-03
1025Canada2026-06-17
1026Argentina2026-06-20
1027Japan2026-06-02
1028Australia2026-05-28
1029Argentina2026-06-04
1030United Kingdom2026-06-23
1031Argentina2026-06-17
1032Spain2026-06-01
1033India2026-06-09
1034France2026-06-12
1035Argentina2026-06-21
1036Argentina2026-06-19
1037France2026-06-21
1038United Kingdom2026-05-25
1039Australia2026-06-09
1040Australia2026-05-27
1041Canada2026-06-15
1042Spain2026-06-04
1043Australia2026-05-27
1044Canada2026-06-20
1045Spain2026-06-13
1046Spain2026-05-25
1047France2026-06-07
1048Germany2026-06-10
1049Argentina2026-06-22

On-Demand Data

NameIdCountryDate
Deepesh H Inouye1000Japan2026-06-22
Murillo K Stockham1001India2026-06-11
Julie B Ruta1002France2026-06-19
Darci L Caudy1003Japan2026-06-01
Jeanfrancois L Bowley1004Japan2026-06-21
Wickens P Ostrosky1005Germany2026-06-01
Jeanfrancois J Slusarski1006France2026-05-31
Jeanfrancois K Saylors1007Italy2026-06-21
Isabel Q Garufi1008Russia2026-06-01
Antonio T Gillian1009France2026-06-22
Salvatore B Amigon1010Japan2026-06-14
Jennifer B Wieser1011Russia2026-06-22
Silvio K Morasca1012Italy2026-06-14
Deepesh O Glick1013Canada2026-05-31
Salvatore K Rim1014Argentina2026-06-21
Isabel U Nicka1015France2026-06-23
Aditya T Kolmetz1016Brazil2026-06-13
James Q Ruta1017Japan2026-06-21
James R Ferencz1018Canada2026-06-14
David L Stockham1019Argentina2026-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna C PaprockiAustraliaOnyama Limba NEGOTIATION
Ricardo I IturbideArgentinaAsiya Javayant QUALIFIED
Tony F RimJapanAsiya Javayant RENEWAL
Rodrigues O BowleyBrazilAmy Elsner RENEWAL
Morrow L VocelkaIndiaIoni Bowcher QUALIFIED
Mayumi F StensethSpainIoni Bowcher NEGOTIATION
Rodrigues D KuskoArgentinaOnyama Limba RENEWAL
Alejandro K BologniaJapanBernardo Dominic NEGOTIATION
Jennifer V FlosiJapanElwin Sharvill UNQUALIFIED
Tony E MorascaItalyStephen Shaw NEW
Morrow L FigeroaItalyStephen Shaw QUALIFIED
Greenwood R MorascaAustraliaOnyama Limba NEGOTIATION
Jones T GlickRussiaOnyama Limba NEW
Francesco U NestleFranceOnyama Limba PROPOSAL
James B MaletIndiaOnyama Limba UNQUALIFIED
Arvin G CaudyGermanyOnyama Limba NEW
Silvio F StockhamIndiaAmy Elsner RENEWAL
Aika X FigeroaBrazilOnyama Limba NEW
Leja L GarufiUnited KingdomOnyama Limba PROPOSAL
Arvin K RulapaughJapanElwin Sharvill UNQUALIFIED
Darci Q NickaBrazilElwin Sharvill UNQUALIFIED
Clifford X CampainArgentinaIvan Magalhaes NEW
Jeanfrancois X GauchoAustraliaBernardo Dominic UNQUALIFIED
Kaitlin C OldroydArgentinaIvan Magalhaes UNQUALIFIED
Deepesh T AlbaresArgentinaBernardo Dominic NEGOTIATION
Ashley B WieserGermanyBernardo Dominic RENEWAL
Aruna H SaylorsArgentinaAnna Fali RENEWAL
Jefferson H FlosiSpainAmy Elsner NEGOTIATION
Deepesh X NestleUnited KingdomAmy Elsner RENEWAL
Aika K GarufiBrazilXuxue Feng UNQUALIFIED
Misaki S TollnerRussiaAmy Elsner NEGOTIATION
Wickens L BriddickArgentinaIvan Magalhaes RENEWAL
Francesco V GillianFranceAmy Elsner RENEWAL
Mayumi R SergiIndiaXuxue Feng RENEWAL
Smith D RoysterFranceAsiya Javayant NEGOTIATION
Maria R SchemmerCanadaAsiya Javayant NEW
Smith D SchemmerCanadaStephen Shaw PROPOSAL
Smith D RoysterJapanOnyama Limba NEW
Mujtaba F GlickRussiaXuxue Feng PROPOSAL
Johnson U BowleyRussiaElwin Sharvill 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.