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
Murillo G RutaAustraliaStephen Shaw QUALIFIED
Ricardo G GillianAustraliaElwin Sharvill QUALIFIED
Leja O MacleadCanadaBernardo Dominic NEGOTIATION
Maisha R CampainRussiaIvan Magalhaes PROPOSAL
Claire Q MorascaRussiaBernardo Dominic NEW
Aruna G TollnerArgentinaOnyama Limba NEGOTIATION
Ivar C SchemmerIndiaOnyama Limba RENEWAL
Jefferson L ChuiUnited KingdomAsiya Javayant NEGOTIATION
Jennifer B MacleadBrazilAnna Fali UNQUALIFIED
Sinclair D SaylorsFranceStephen Shaw RENEWAL
Costa P RoysterCanadaBernardo Dominic UNQUALIFIED
Juan V VocelkaIndiaStephen Shaw NEGOTIATION
Jeanfrancois F CaudyJapanElwin Sharvill PROPOSAL
Nicolas L GlickItalyOnyama Limba UNQUALIFIED
Johnson F DarakjyFranceStephen Shaw PROPOSAL
Cody B OldroydGermanyOnyama Limba UNQUALIFIED
Jeanfrancois A SlusarskiArgentinaOnyama Limba NEGOTIATION
Jennifer N RutaCanadaIoni Bowcher NEGOTIATION
Julie G MorascaBrazilOnyama Limba PROPOSAL
Kaitlin M PerinIndiaStephen Shaw NEW
Arvin F RimRussiaAmy Elsner NEGOTIATION
Mujtaba V BowleyFranceAsiya Javayant NEW
Alejandro W TollnerGermanyAmy Elsner RENEWAL
Faith S NestleRussiaAnna Fali RENEWAL
Mayumi Y MaletRussiaOnyama Limba NEW
Silvio V SaylorsFranceAnna Fali NEW
James W MacleadSpainAmy Elsner RENEWAL
Kadeem A WaycottIndiaElwin Sharvill NEW
Smith L RoysterJapanOnyama Limba PROPOSAL
Darci F CampainUnited KingdomBernardo Dominic NEGOTIATION
Julie G KuskoUnited KingdomXuxue Feng UNQUALIFIED
Ashley A IturbideItalyAmy Elsner UNQUALIFIED
Ashley T NickaCanadaBernardo Dominic RENEWAL
Izzy L CaldareraItalyIoni Bowcher UNQUALIFIED
Nicolas V SlusarskiBrazilBernardo Dominic RENEWAL
Munro Q StensethCanadaStephen Shaw RENEWAL
Tony T KuskoRussiaIvan Magalhaes NEW
Morrow S CaudyFranceElwin Sharvill QUALIFIED
Juan D RutaItalyIoni Bowcher NEW
Isabel D MacleadSpainIoni Bowcher QUALIFIED
Sinclair V DarakjyJapanElwin Sharvill PROPOSAL
Stacey A NestleUnited KingdomStephen Shaw RENEWAL
Greenwood A GlickFranceAnna Fali RENEWAL
Izzy X OstroskyCanadaStephen Shaw UNQUALIFIED
Claire X IturbideCanadaIvan Magalhaes UNQUALIFIED
Tony M BowleyCanadaIvan Magalhaes RENEWAL
Aika H RulapaughRussiaAnna Fali QUALIFIED
Morrow L RulapaughUnited KingdomAmy Elsner QUALIFIED
Izzy B MorascaBrazilAnna Fali UNQUALIFIED
Aditya U StockhamCanadaIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Murillo E SaylorsRussiaAnna Fali UNQUALIFIED
Isabel R DilliardItalyAmy Elsner UNQUALIFIED
David B BowleyGermanyBernardo Dominic NEGOTIATION
Isabel P CaldareraArgentinaAmy Elsner QUALIFIED
Leon I CaudySpainIoni Bowcher NEW
Aruna L MarrierItalyAnna Fali NEGOTIATION
Mayumi W WieserIndiaElwin Sharvill NEW
Aika R FigeroaUnited KingdomXuxue Feng UNQUALIFIED
Aika M DilliardJapanIoni Bowcher RENEWAL
Jennifer G GarufiAustraliaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa T RoysterSpain2026-05-29Chanay, Jeffrey A Esq NEGOTIATION11Stephen Shaw
1001Alejandro I ChuiGermany2026-05-16Rangoni Of Florence RENEWAL85Amy Elsner
1002Francesco T MacleadRussia2026-05-18Chapman, Ross E Esq QUALIFIED90Amy Elsner
1003Smith F SlusarskiArgentina2026-05-27King, Christopher A Esq QUALIFIED35Stephen Shaw
1004Jefferson J ChuiRussia2026-05-24Chanay, Jeffrey A Esq NEW33Ivan Magalhaes
1005Misaki N OstroskyRussia2026-05-15Dorl, James J Esq UNQUALIFIED37Elwin Sharvill
1006Ricardo F DilliardCanada2026-05-22Rangoni Of Florence NEW58Amy Elsner
1007Stacey Y WhobreySpain2026-05-18Chanay, Jeffrey A Esq NEGOTIATION84Anna Fali
1008Arvin V DoeGermany2026-05-17Dorl, James J Esq NEW81Onyama Limba
1009Adams V BriddickAustralia2026-06-08Morlong Associates NEW10Amy Elsner
1010Faith G PaprockiArgentina2026-06-03Chanay, Jeffrey A Esq NEW74Asiya Javayant
1011Leon Q ChuiUnited Kingdom2026-06-01Chemel, James L Cpa QUALIFIED59Asiya Javayant
1012Mayumi M RutaBrazil2026-05-21Commercial Press NEW97Amy Elsner
1013Emily H DarakjyRussia2026-05-16Commercial Press NEW68Asiya Javayant
1014Jeanfrancois Y IturbideJapan2026-05-14Dorl, James J Esq UNQUALIFIED2Asiya Javayant
1015Jennifer H AmigonUnited Kingdom2026-06-01King, Christopher A Esq NEGOTIATION23Bernardo Dominic
1016Ashley B RutaItaly2026-05-18Truhlar And Truhlar Attys RENEWAL40Ivan Magalhaes
1017Antonio C ButtAustralia2026-05-16King, Christopher A Esq NEW45Onyama Limba
1018Chavez A DilliardIndia2026-05-12Dorl, James J Esq NEW88Ioni Bowcher
1019Mujtaba K SaylorsItaly2026-05-20Buckley Miller Wright RENEWAL56Bernardo Dominic
1020Emily S SaylorsRussia2026-05-12Commercial Press NEGOTIATION98Stephen Shaw
1021Chavez Q BowleySpain2026-05-21Dorl, James J Esq UNQUALIFIED38Asiya Javayant
1022Juan N MaletGermany2026-06-05Rousseaux, Michael Esq NEW22Onyama Limba
1023Faith R KolmetzAustralia2026-05-12Feiner Bros QUALIFIED8Bernardo Dominic
1024Mayumi P ButtSpain2026-05-26Rangoni Of Florence RENEWAL47Elwin Sharvill
1025Alejandro H MorascaUnited Kingdom2026-05-19Rangoni Of Florence NEGOTIATION29Bernardo Dominic
1026Rodrigues B WieserItaly2026-06-09Rousseaux, Michael Esq UNQUALIFIED39Amy Elsner
1027Munro A CaldareraSpain2026-05-18Benton, John B Jr RENEWAL62Anna Fali
1028Juan Y CaldareraJapan2026-06-07Truhlar And Truhlar Attys PROPOSAL71Xuxue Feng
1029Nicolas D MacleadItaly2026-05-22Morlong Associates NEGOTIATION18Bernardo Dominic
1030Ricardo L CampainAustralia2026-05-12Feltz Printing Service NEGOTIATION72Ioni Bowcher
1031Misaki Q FigeroaFrance2026-05-23Feltz Printing Service PROPOSAL88Onyama Limba
1032Johnson M GauchoBrazil2026-05-15King, Christopher A Esq QUALIFIED82Elwin Sharvill
1033James U WaycottJapan2026-06-03Rangoni Of Florence QUALIFIED15Asiya Javayant
1034Alejandro A FlosiAustralia2026-05-22Printing Dimensions NEGOTIATION41Ivan Magalhaes
1035Munro W ButtItaly2026-05-17Printing Dimensions UNQUALIFIED95Bernardo Dominic
1036Adams X PerinItaly2026-05-24Feiner Bros PROPOSAL23Bernardo Dominic
1037Isabel A SchemmerArgentina2026-05-14Feiner Bros NEGOTIATION44Amy Elsner
1038Jefferson S RutaFrance2026-06-01Morlong Associates NEW96Amy Elsner
1039Jeanfrancois G GauchoIndia2026-05-20King, Christopher A Esq RENEWAL64Stephen Shaw
1040Adams S FlosiAustralia2026-05-21Feiner Bros NEGOTIATION48Amy Elsner
1041Deepesh O FigeroaUnited Kingdom2026-06-09Rangoni Of Florence QUALIFIED66Bernardo Dominic
1042Aditya H ShinkoAustralia2026-05-13King, Christopher A Esq UNQUALIFIED24Ioni Bowcher
1043Ricardo R ButtUnited Kingdom2026-06-08Chapman, Ross E Esq PROPOSAL22Bernardo Dominic
1044Izzy W NestleIndia2026-06-07Buckley Miller Wright UNQUALIFIED77Ioni Bowcher
1045Leon E SchemmerRussia2026-06-09Chemel, James L Cpa QUALIFIED84Elwin Sharvill
1046Aruna D AmigonSpain2026-05-28Chapman, Ross E Esq PROPOSAL31Elwin Sharvill
1047Sinclair U WaycottFrance2026-05-24Benton, John B Jr RENEWAL48Amy Elsner
1048Tony T MarrierAustralia2026-06-08Chemel, James L Cpa NEGOTIATION84Xuxue Feng
1049Faith F GarufiGermany2026-06-08Morlong Associates RENEWAL40Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Morrow M ShinkoRussiaBernardo Dominic QUALIFIED
Ricardo D IturbideGermanyIoni Bowcher QUALIFIED
Greenwood Y GlickSpainStephen Shaw PROPOSAL
Cody M IturbideIndiaAsiya Javayant UNQUALIFIED
Francesco Y MaletSpainAsiya Javayant RENEWAL
Chavez I MaletSpainIoni Bowcher NEW
Faith K KolmetzCanadaIoni Bowcher UNQUALIFIED
Kadeem U AmigonArgentinaAnna Fali QUALIFIED
Chavez N DilliardJapanIvan Magalhaes QUALIFIED
Octavia T VenereAustraliaAnna Fali UNQUALIFIED
Greenwood D MaletArgentinaAnna Fali NEW
Emily L RulapaughBrazilXuxue Feng QUALIFIED
David Z NestleRussiaBernardo Dominic UNQUALIFIED
Leja N OstroskyArgentinaStephen Shaw RENEWAL
James L VocelkaUnited KingdomBernardo Dominic RENEWAL
Murillo I RimIndiaIvan Magalhaes UNQUALIFIED
Jennifer B FollerUnited KingdomElwin Sharvill NEW
Costa R ShinkoRussiaBernardo Dominic NEW
Murillo X StockhamRussiaXuxue Feng PROPOSAL
Kadeem D GarufiAustraliaIvan Magalhaes PROPOSAL
Francesco H MarrierSpainElwin Sharvill RENEWAL
Leja I MacleadJapanXuxue Feng RENEWAL
Aruna H OstroskyJapanIvan Magalhaes UNQUALIFIED
Greenwood P GillianUnited KingdomStephen Shaw QUALIFIED
Jeanfrancois V WieserRussiaStephen Shaw PROPOSAL
Aika L IturbideSpainAnna Fali NEW
Emily H GauchoSpainAnna Fali UNQUALIFIED
Sinclair M WhobreyIndiaIvan Magalhaes UNQUALIFIED
Smith T ShinkoGermanyIoni Bowcher RENEWAL
Kadeem R ShinkoSpainStephen Shaw NEW
Chavez W DarakjyRussiaIvan Magalhaes RENEWAL
Jeanfrancois H SaylorsSpainStephen Shaw NEGOTIATION
Silvio F RoysterCanadaIoni Bowcher QUALIFIED
Leon J GauchoItalyOnyama Limba QUALIFIED
David P AlbaresCanadaXuxue Feng PROPOSAL
Aika G GarufiArgentinaElwin Sharvill QUALIFIED
Wickens D BologniaCanadaIoni Bowcher UNQUALIFIED
Ivar H DoeArgentinaIvan Magalhaes NEGOTIATION
Ivar O StensethItalyXuxue Feng RENEWAL
Aika G RutaCanadaXuxue Feng RENEWAL
Faith A CaudyArgentinaXuxue Feng NEGOTIATION
Mujtaba P InouyeItalyStephen Shaw NEGOTIATION
Nicolas S WieserCanadaIvan Magalhaes NEGOTIATION
Rodrigues V OstroskyCanadaAnna Fali QUALIFIED
Greenwood U PaprockiCanadaIoni Bowcher QUALIFIED
Smith Q ShinkoAustraliaStephen Shaw RENEWAL
Salvatore D KuskoCanadaElwin Sharvill UNQUALIFIED
Sinclair P RulapaughAustraliaIoni Bowcher UNQUALIFIED
Adams T WhobreyJapanIoni Bowcher PROPOSAL
Arvin B MorascaFranceBernardo Dominic PROPOSAL
Frozen Columns
Name
David B Stenseth
Faith P Figeroa
Arvin J Malet
Cody B Wieser
Ashley Q Sergi
Munro Z Gillian
Nicolas Q Perin
Stacey M Slusarski
Nicolas D Kusko
Johnson M Nestle
Clifford T Garufi
Munro G Caudy
Misaki J Foller
Munro B Caldarera
Morrow V Ostrosky
Silvio B Ostrosky
Aditya F Malet
Izzy G Gillian
Kaitlin J Marrier
Juan V Schemmer
Chavez D Stenseth
James T Caldarera
Smith R Shinko
Juan Y Gaucho
Faith D Darakjy
Aditya I Sergi
Ashley G Stockham
Darci Q Slusarski
Wickens Q Rim
Chavez Z Rulapaugh
Ivar Q Garufi
Smith N Kusko
Ashley C Butt
Smith H Waycott
Antonio Z Campain
Misaki P Caudy
Octavia Z Venere
Nicolas F Briddick
Antonio T Kusko
David Q Albares
Julie J Wieser
Nicolas J Ferencz
Izzy P Tollner
Deepesh H Nicka
Darci R Waycott
Morrow I Vocelka
Murillo X Gillian
Ivar Y Waycott
Morrow X Schemmer
Jeanfrancois L Shinko
IdCountryDate
1000Italy2026-05-20
1001Australia2026-05-20
1002United Kingdom2026-05-14
1003Spain2026-05-12
1004Brazil2026-05-14
1005Spain2026-06-04
1006Argentina2026-05-25
1007Russia2026-06-06
1008Russia2026-05-27
1009Australia2026-05-29
1010Japan2026-05-24
1011France2026-05-16
1012United Kingdom2026-05-28
1013France2026-05-31
1014Japan2026-05-18
1015Brazil2026-05-15
1016India2026-05-17
1017France2026-05-27
1018Italy2026-05-20
1019Germany2026-05-18
1020India2026-06-04
1021Japan2026-05-22
1022Brazil2026-06-03
1023Italy2026-05-19
1024France2026-05-23
1025Brazil2026-06-07
1026Japan2026-05-19
1027Spain2026-06-05
1028India2026-05-18
1029India2026-05-13
1030Japan2026-05-14
1031France2026-05-18
1032Argentina2026-05-21
1033Australia2026-05-19
1034Brazil2026-05-18
1035France2026-05-23
1036Russia2026-05-11
1037Italy2026-05-14
1038Germany2026-05-28
1039Germany2026-05-26
1040India2026-05-14
1041Brazil2026-05-11
1042Japan2026-05-21
1043Brazil2026-05-11
1044Australia2026-05-26
1045India2026-06-09
1046Spain2026-05-15
1047India2026-05-24
1048Australia2026-05-13
1049Australia2026-06-02

On-Demand Data

NameIdCountryDate
Nicolas N Stockham1000France2026-05-28
Leja E Iturbide1001Argentina2026-05-23
Jefferson O Vocelka1002India2026-05-23
Rodrigues J Rulapaugh1003France2026-05-16
Rodrigues B Inouye1004Australia2026-05-12
Aditya Y Glick1005Canada2026-05-23
Mayumi Y Perin1006Japan2026-06-03
Nicolas Z Caudy1007Japan2026-05-28
Rodrigues B Inouye1008France2026-06-09
Aruna X Caldarera1009Brazil2026-05-17
Chavez V Vocelka1010Spain2026-05-16
Claire G Ostrosky1011India2026-05-30
Alejandro Q Bolognia1012Russia2026-05-24
Aruna Y Kusko1013Japan2026-05-14
Kaitlin J Stenseth1014Spain2026-06-01
Costa Y Inouye1015France2026-05-24
Leja Q Garufi1016Russia2026-06-04
Faith I Whobrey1017Australia2026-05-12
Jennifer T Dilliard1018France2026-05-24
Clifford T Flosi1019United Kingdom2026-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria A WaycottAustraliaBernardo Dominic RENEWAL
Faith W MorascaUnited KingdomIvan Magalhaes RENEWAL
Francesco F PaprockiRussiaBernardo Dominic RENEWAL
Mayumi U WhobreyItalyElwin Sharvill QUALIFIED
Aika T VocelkaAustraliaAmy Elsner NEGOTIATION
Maria F SchemmerAustraliaBernardo Dominic UNQUALIFIED
Wickens P CampainJapanStephen Shaw NEW
James X CaldareraSpainOnyama Limba NEGOTIATION
Juan R RoysterJapanAnna Fali NEGOTIATION
Alejandro J DoeItalyElwin Sharvill PROPOSAL
Johnson J MorascaArgentinaAnna Fali PROPOSAL
Kaitlin X CaldareraRussiaAsiya Javayant RENEWAL
Leon W TollnerItalyIvan Magalhaes PROPOSAL
Greenwood H FigeroaItalyBernardo Dominic NEGOTIATION
Silvio R FerenczJapanIoni Bowcher PROPOSAL
Darci N GillianRussiaAnna Fali NEW
Kaitlin B FlosiCanadaStephen Shaw NEW
Jeanfrancois B MaletBrazilAsiya Javayant NEGOTIATION
Faith R KuskoRussiaAnna Fali NEGOTIATION
David A BowleySpainIoni Bowcher NEGOTIATION
Aditya B StockhamAustraliaIvan Magalhaes UNQUALIFIED
Arvin T NestleRussiaStephen Shaw NEGOTIATION
Clifford V MaletArgentinaAnna Fali NEW
Mujtaba N OstroskyJapanBernardo Dominic QUALIFIED
David J VocelkaRussiaAmy Elsner PROPOSAL
David H FlosiBrazilBernardo Dominic UNQUALIFIED
Chavez V DoeItalyOnyama Limba RENEWAL
Mayumi E CaudySpainAsiya Javayant UNQUALIFIED
Emily Q OstroskyBrazilAsiya Javayant NEGOTIATION
Jennifer B MaletIndiaXuxue Feng PROPOSAL
James M AlbaresArgentinaAmy Elsner NEGOTIATION
Munro J FollerAustraliaAnna Fali UNQUALIFIED
Alejandro P SlusarskiAustraliaAmy Elsner QUALIFIED
Silvio W RoysterSpainAsiya Javayant NEGOTIATION
Maisha W SergiIndiaAsiya Javayant UNQUALIFIED
Morrow W VocelkaGermanyAsiya Javayant QUALIFIED
Francesco T GillianIndiaIvan Magalhaes QUALIFIED
Smith W DarakjyAustraliaAsiya Javayant QUALIFIED
Clifford N VenereItalyAmy Elsner RENEWAL
Salvatore W NickaGermanyIvan Magalhaes PROPOSAL

<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.