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
Chavez K NestleSpainBernardo Dominic NEGOTIATION
Johnson B BologniaItalyAnna Fali PROPOSAL
Cody W TollnerSpainElwin Sharvill PROPOSAL
Alejandro E MaletJapanBernardo Dominic UNQUALIFIED
Juan O KolmetzSpainAmy Elsner QUALIFIED
Leja S PerinFranceAsiya Javayant NEGOTIATION
Francesco J GauchoFranceElwin Sharvill RENEWAL
Chavez A RoysterBrazilOnyama Limba QUALIFIED
Juan E SaylorsFranceIvan Magalhaes UNQUALIFIED
Johnson R FerenczBrazilIoni Bowcher NEGOTIATION
Rodrigues K NickaFranceIvan Magalhaes UNQUALIFIED
Arvin W CampainIndiaAnna Fali NEW
Clifford A PerinAustraliaXuxue Feng NEW
Aika C MorascaJapanIoni Bowcher NEW
Kaitlin T WieserSpainElwin Sharvill QUALIFIED
Clifford X SaylorsRussiaAsiya Javayant QUALIFIED
Francesco K RulapaughFranceStephen Shaw PROPOSAL
Chavez W NickaIndiaAsiya Javayant PROPOSAL
David U PoquetteGermanyXuxue Feng NEGOTIATION
Cody U PaprockiAustraliaStephen Shaw NEGOTIATION
Leon L FollerBrazilIvan Magalhaes QUALIFIED
Francesco C PoquetteUnited KingdomOnyama Limba NEGOTIATION
Ivar P StensethArgentinaXuxue Feng NEW
Smith X IturbideFranceXuxue Feng QUALIFIED
Isabel U OstroskyIndiaIoni Bowcher NEGOTIATION
Alejandro F MaletCanadaElwin Sharvill UNQUALIFIED
Jeanfrancois Y SlusarskiSpainAsiya Javayant PROPOSAL
Maria F NickaUnited KingdomStephen Shaw NEGOTIATION
Arvin A CaudyAustraliaBernardo Dominic RENEWAL
Munro X InouyeBrazilAmy Elsner PROPOSAL
Smith Z MaletRussiaAsiya Javayant QUALIFIED
Stacey N FollerIndiaXuxue Feng UNQUALIFIED
Claire N BriddickJapanOnyama Limba QUALIFIED
Rodrigues J InouyeJapanElwin Sharvill NEGOTIATION
Jefferson Z CaldareraCanadaAmy Elsner RENEWAL
Johnson V OldroydGermanyAsiya Javayant RENEWAL
Greenwood U GarufiSpainElwin Sharvill RENEWAL
Aika U SchemmerGermanyAnna Fali NEGOTIATION
Mujtaba J KuskoCanadaBernardo Dominic NEGOTIATION
Izzy B GauchoIndiaXuxue Feng RENEWAL
Julie C RulapaughArgentinaStephen Shaw UNQUALIFIED
Maisha V IturbideBrazilIvan Magalhaes NEGOTIATION
Aika M ChuiBrazilIvan Magalhaes NEW
Sinclair A StensethJapanIvan Magalhaes UNQUALIFIED
Ivar P RoysterUnited KingdomAsiya Javayant QUALIFIED
Jones J VocelkaCanadaOnyama Limba PROPOSAL
Ricardo K VenereArgentinaAnna Fali NEGOTIATION
Francesco H GarufiJapanAsiya Javayant RENEWAL
Jones N PaprockiBrazilIvan Magalhaes NEW
Octavia H BologniaRussiaOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Stacey Q MorascaSpainElwin Sharvill QUALIFIED
Maria L GauchoFranceBernardo Dominic QUALIFIED
Deepesh A StensethItalyOnyama Limba NEW
Faith Z PoquetteArgentinaXuxue Feng RENEWAL
Silvio C StensethBrazilBernardo Dominic NEGOTIATION
Ashley K SaylorsItalyAnna Fali PROPOSAL
Kaitlin N DoeCanadaAnna Fali QUALIFIED
Cody C OldroydBrazilOnyama Limba UNQUALIFIED
Maisha B FollerSpainIoni Bowcher UNQUALIFIED
Antonio J GillianFranceIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki U ShinkoUnited Kingdom2026-06-10Dorl, James J Esq NEW66Bernardo Dominic
1001Kaitlin F IturbideGermany2026-05-29Buckley Miller Wright QUALIFIED79Amy Elsner
1002Emily I ButtRussia2026-05-18Rangoni Of Florence RENEWAL52Stephen Shaw
1003Munro A NestleBrazil2026-06-12Chanay, Jeffrey A Esq QUALIFIED36Anna Fali
1004Kadeem H CaudyUnited Kingdom2026-05-26Morlong Associates RENEWAL56Bernardo Dominic
1005Kaitlin H StensethFrance2026-06-13Feltz Printing Service NEW95Stephen Shaw
1006Chavez Y WhobreyBrazil2026-06-08Feltz Printing Service PROPOSAL99Xuxue Feng
1007Antonio M FerenczFrance2026-05-26Rousseaux, Michael Esq QUALIFIED84Asiya Javayant
1008Johnson S VenereItaly2026-06-12Buckley Miller Wright QUALIFIED89Ivan Magalhaes
1009Julie J FollerGermany2026-06-08Chanay, Jeffrey A Esq PROPOSAL60Stephen Shaw
1010Maisha R StensethIndia2026-05-18Buckley Miller Wright NEGOTIATION36Xuxue Feng
1011Cody U IturbideGermany2026-05-25Buckley Miller Wright UNQUALIFIED65Onyama Limba
1012Nicolas W PoquetteCanada2026-06-08Commercial Press RENEWAL74Asiya Javayant
1013Sinclair Z OldroydFrance2026-05-25Benton, John B Jr NEGOTIATION68Anna Fali
1014Jennifer S ButtFrance2026-05-19Dorl, James J Esq QUALIFIED71Ivan Magalhaes
1015Kaitlin D GlickGermany2026-05-27Feiner Bros NEW36Bernardo Dominic
1016Tony T OldroydCanada2026-06-06Chemel, James L Cpa NEGOTIATION28Elwin Sharvill
1017Sinclair G AlbaresCanada2026-05-29Chemel, James L Cpa RENEWAL45Xuxue Feng
1018Stacey M BowleyAustralia2026-06-12Dorl, James J Esq PROPOSAL75Amy Elsner
1019David U GarufiGermany2026-06-01Feltz Printing Service UNQUALIFIED65Ivan Magalhaes
1020Aruna A WieserAustralia2026-06-12Rousseaux, Michael Esq RENEWAL56Elwin Sharvill
1021Mayumi D IturbideUnited Kingdom2026-06-16Benton, John B Jr NEW52Asiya Javayant
1022Octavia W SchemmerArgentina2026-06-05Truhlar And Truhlar Attys UNQUALIFIED81Bernardo Dominic
1023Julie B GarufiFrance2026-05-23Benton, John B Jr UNQUALIFIED73Bernardo Dominic
1024Octavia R RimCanada2026-06-04Chapman, Ross E Esq UNQUALIFIED37Ivan Magalhaes
1025Tony S VocelkaSpain2026-05-21Chemel, James L Cpa UNQUALIFIED48Ivan Magalhaes
1026Misaki V BriddickArgentina2026-06-07Chapman, Ross E Esq PROPOSAL69Onyama Limba
1027Clifford F GlickSpain2026-05-28Feltz Printing Service QUALIFIED39Anna Fali
1028Johnson L RoysterJapan2026-05-18Printing Dimensions NEGOTIATION21Anna Fali
1029Tony Q VocelkaAustralia2026-05-20Chanay, Jeffrey A Esq NEGOTIATION49Ivan Magalhaes
1030Aika T ShinkoCanada2026-06-16Dorl, James J Esq RENEWAL21Onyama Limba
1031Leja M ChuiUnited Kingdom2026-05-30Benton, John B Jr PROPOSAL87Amy Elsner
1032Clifford D BologniaFrance2026-06-06Feltz Printing Service NEW40Onyama Limba
1033Antonio O AmigonRussia2026-06-16Rangoni Of Florence PROPOSAL11Elwin Sharvill
1034Smith R RulapaughGermany2026-06-16Printing Dimensions UNQUALIFIED59Xuxue Feng
1035Chavez J RoysterBrazil2026-06-11Rangoni Of Florence NEW36Ivan Magalhaes
1036Sinclair I RimBrazil2026-06-13Rangoni Of Florence NEW69Bernardo Dominic
1037Emily G IturbideUnited Kingdom2026-06-02Benton, John B Jr NEW22Ioni Bowcher
1038Maisha U FollerRussia2026-05-29Chanay, Jeffrey A Esq UNQUALIFIED33Stephen Shaw
1039Leja E FlosiSpain2026-05-20Morlong Associates RENEWAL86Elwin Sharvill
1040James Y TollnerFrance2026-06-12Chapman, Ross E Esq PROPOSAL12Xuxue Feng
1041Claire F InouyeJapan2026-06-05Truhlar And Truhlar Attys UNQUALIFIED54Ioni Bowcher
1042Jones T MorascaAustralia2026-05-31Benton, John B Jr NEGOTIATION74Xuxue Feng
1043Kaitlin Q TollnerSpain2026-06-13Buckley Miller Wright NEW7Stephen Shaw
1044Ivar X WieserArgentina2026-06-05Rangoni Of Florence NEW4Elwin Sharvill
1045David Y CampainItaly2026-05-27Benton, John B Jr UNQUALIFIED39Ivan Magalhaes
1046Greenwood F NestleRussia2026-06-06Chapman, Ross E Esq UNQUALIFIED40Xuxue Feng
1047Jefferson Y SchemmerItaly2026-05-28Dorl, James J Esq RENEWAL76Elwin Sharvill
1048Maisha Y OldroydSpain2026-05-24Chemel, James L Cpa PROPOSAL15Stephen Shaw
1049Darci K DilliardSpain2026-05-25Dorl, James J Esq RENEWAL55Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Maisha J StockhamItalyIoni Bowcher NEW
Francesco T ShinkoFranceIoni Bowcher RENEWAL
Jefferson L RutaArgentinaXuxue Feng NEW
Ivar M SlusarskiAustraliaAsiya Javayant UNQUALIFIED
Mujtaba T WhobreyIndiaIoni Bowcher NEGOTIATION
Ashley Y KolmetzJapanBernardo Dominic RENEWAL
Nicolas Z ChuiIndiaXuxue Feng NEW
Faith L ChuiAustraliaIvan Magalhaes UNQUALIFIED
Leon U GillianAustraliaOnyama Limba UNQUALIFIED
Tony D VenereAustraliaIoni Bowcher RENEWAL
Chavez O FlosiJapanIoni Bowcher QUALIFIED
Mujtaba I StockhamBrazilXuxue Feng QUALIFIED
Costa J WieserSpainIvan Magalhaes NEW
David U BowleyRussiaStephen Shaw RENEWAL
David R MorascaArgentinaAnna Fali QUALIFIED
Tony A TollnerSpainAnna Fali PROPOSAL
Jeanfrancois W CampainArgentinaStephen Shaw NEGOTIATION
Sinclair Y SlusarskiRussiaIoni Bowcher NEGOTIATION
Johnson G BriddickRussiaIoni Bowcher RENEWAL
Mujtaba B GillianFranceElwin Sharvill RENEWAL
Murillo T VocelkaFranceElwin Sharvill RENEWAL
Stacey G CaudySpainStephen Shaw NEW
Misaki I CaudyCanadaOnyama Limba UNQUALIFIED
Rodrigues C SaylorsBrazilElwin Sharvill UNQUALIFIED
Faith M FollerIndiaElwin Sharvill NEGOTIATION
Costa M VenereCanadaIoni Bowcher NEW
Leja H CaudyJapanBernardo Dominic NEW
Jeanfrancois U MarrierArgentinaIvan Magalhaes UNQUALIFIED
Jennifer Z GarufiFranceXuxue Feng QUALIFIED
Leja H FigeroaUnited KingdomXuxue Feng UNQUALIFIED
David A MacleadFranceAnna Fali QUALIFIED
James C BologniaArgentinaElwin Sharvill NEGOTIATION
Morrow H SaylorsItalyIvan Magalhaes RENEWAL
Ricardo H StensethFranceBernardo Dominic NEGOTIATION
James M BriddickAustraliaOnyama Limba QUALIFIED
Mujtaba J DilliardJapanIoni Bowcher NEGOTIATION
Mujtaba M ChuiGermanyAsiya Javayant UNQUALIFIED
Jeanfrancois U ButtSpainStephen Shaw NEW
Clifford K GauchoJapanAnna Fali NEW
Chavez A AlbaresCanadaAsiya Javayant NEGOTIATION
Jennifer N BriddickIndiaAnna Fali RENEWAL
Morrow Y SergiAustraliaXuxue Feng UNQUALIFIED
Nicolas D AmigonBrazilOnyama Limba QUALIFIED
Misaki B TollnerAustraliaXuxue Feng RENEWAL
Claire I MaletJapanStephen Shaw NEGOTIATION
Adams T FlosiAustraliaAsiya Javayant QUALIFIED
Maria K StensethGermanyStephen Shaw QUALIFIED
Juan D SlusarskiArgentinaXuxue Feng RENEWAL
Kadeem N CaldareraCanadaXuxue Feng NEGOTIATION
Aditya K MarrierItalyAnna Fali RENEWAL
Frozen Columns
Name
Alejandro G Garufi
Leja H Waycott
Johnson X Wieser
Darci X Paprocki
Mujtaba P Maclead
Darci N Iturbide
Ricardo O Morasca
Smith A Bolognia
Isabel L Tollner
Antonio Z Marrier
Adams L Wieser
Kaitlin N Poquette
Tony X Campain
Wickens S Stenseth
Leon R Stenseth
Leja W Perin
Leon I Shinko
Octavia J Oldroyd
Smith H Oldroyd
Johnson N Kolmetz
Wickens D Wieser
Rodrigues E Inouye
Salvatore K Perin
Morrow R Amigon
Maisha A Dilliard
Arvin Q Wieser
Ivar W Sergi
Izzy W Vocelka
Kaitlin H Foller
Arvin J Figeroa
Aditya K Doe
Morrow I Glick
Darci I Malet
Juan K Slusarski
Ivar P Amigon
Kaitlin M Doe
Salvatore Y Bowley
Munro Y Rulapaugh
Costa Y Shinko
Juan B Shinko
Ricardo O Chui
Smith W Rim
Sinclair V Chui
Octavia T Whobrey
Aika D Marrier
Misaki D Waycott
Jennifer J Glick
Smith E Iturbide
James L Rulapaugh
Ashley G Rulapaugh
IdCountryDate
1000Spain2026-05-26
1001France2026-06-01
1002Germany2026-05-28
1003Germany2026-06-07
1004Spain2026-06-12
1005Russia2026-05-18
1006Argentina2026-06-06
1007Italy2026-05-24
1008Canada2026-06-04
1009United Kingdom2026-05-29
1010Australia2026-06-12
1011Japan2026-06-05
1012Argentina2026-05-31
1013India2026-06-01
1014Italy2026-06-11
1015India2026-05-29
1016Germany2026-05-31
1017India2026-05-20
1018Canada2026-05-21
1019Italy2026-05-29
1020Brazil2026-06-08
1021United Kingdom2026-06-01
1022France2026-05-23
1023Russia2026-06-05
1024Brazil2026-06-08
1025Japan2026-05-31
1026Argentina2026-05-25
1027Germany2026-06-05
1028Italy2026-06-05
1029Spain2026-06-07
1030Japan2026-06-16
1031Canada2026-05-31
1032Spain2026-05-19
1033Germany2026-06-06
1034Russia2026-06-04
1035Russia2026-06-08
1036Canada2026-06-03
1037United Kingdom2026-06-02
1038Brazil2026-05-21
1039Canada2026-05-23
1040India2026-06-09
1041Germany2026-05-27
1042India2026-05-20
1043Italy2026-05-24
1044Russia2026-06-03
1045Australia2026-05-25
1046Germany2026-05-28
1047Russia2026-05-29
1048Canada2026-05-28
1049Japan2026-05-29

On-Demand Data

NameIdCountryDate
Darci S Whobrey1000Argentina2026-06-14
Julie J Dilliard1001United Kingdom2026-05-29
Greenwood L Doe1002India2026-06-14
Octavia X Stockham1003Canada2026-05-20
Alejandro B Shinko1004Japan2026-06-01
Maisha W Maclead1005Spain2026-06-15
David T Butt1006Spain2026-05-25
Jones X Stenseth1007Japan2026-06-16
Wickens U Caldarera1008Russia2026-06-15
Murillo Y Caldarera1009France2026-06-13
Munro J Vocelka1010Canada2026-06-09
Jeanfrancois C Oldroyd1011Russia2026-05-19
Ricardo D Gillian1012Japan2026-06-03
Arvin K Darakjy1013France2026-05-20
Maria P Darakjy1014Japan2026-06-06
Murillo S Caudy1015Australia2026-05-29
James M Caudy1016Japan2026-06-07
Greenwood V Waycott1017Russia2026-06-14
Kadeem E Whobrey1018France2026-05-18
Claire H Inouye1019Italy2026-06-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo N GillianItalyIvan Magalhaes UNQUALIFIED
Cody F BriddickFranceOnyama Limba RENEWAL
Salvatore Q WhobreyAustraliaAsiya Javayant NEW
Octavia Z MaletFranceElwin Sharvill RENEWAL
Costa V VocelkaItalyIoni Bowcher PROPOSAL
Leja C BowleyBrazilBernardo Dominic NEW
Jefferson L TollnerArgentinaStephen Shaw UNQUALIFIED
Octavia P GauchoRussiaOnyama Limba QUALIFIED
Munro Y RutaGermanyAnna Fali UNQUALIFIED
Kadeem Z RulapaughRussiaBernardo Dominic PROPOSAL
Arvin D CampainFranceXuxue Feng PROPOSAL
Jefferson C KolmetzBrazilAmy Elsner QUALIFIED
Chavez U RoysterGermanyAsiya Javayant RENEWAL
Antonio O GillianUnited KingdomAmy Elsner NEW
Octavia W NickaIndiaOnyama Limba NEGOTIATION
Clifford U DilliardArgentinaXuxue Feng NEW
Izzy K WaycottIndiaBernardo Dominic NEGOTIATION
Cody Q WaycottItalyStephen Shaw NEGOTIATION
Claire L FollerUnited KingdomBernardo Dominic NEW
Darci V CaudyBrazilIvan Magalhaes NEGOTIATION
Costa P FollerBrazilStephen Shaw UNQUALIFIED
Julie A MacleadArgentinaAsiya Javayant NEGOTIATION
Alejandro B PaprockiAustraliaAnna Fali UNQUALIFIED
Johnson U BriddickAustraliaAnna Fali RENEWAL
Darci Q OstroskyBrazilAmy Elsner UNQUALIFIED
Juan U SchemmerIndiaElwin Sharvill RENEWAL
Deepesh E OstroskyBrazilIvan Magalhaes QUALIFIED
Mayumi F GillianUnited KingdomIoni Bowcher NEW
Munro Q SlusarskiBrazilXuxue Feng QUALIFIED
James W MorascaRussiaElwin Sharvill PROPOSAL
James X CampainFranceAsiya Javayant PROPOSAL
Jennifer Q MorascaCanadaAsiya Javayant UNQUALIFIED
Clifford I BriddickIndiaIoni Bowcher QUALIFIED
Aditya C SergiBrazilIoni Bowcher RENEWAL
Ricardo G FigeroaFranceElwin Sharvill NEGOTIATION
Adams V InouyeIndiaIoni Bowcher QUALIFIED
Stacey R TollnerFranceIvan Magalhaes PROPOSAL
Izzy L PaprockiFranceBernardo Dominic RENEWAL
Izzy T SergiIndiaStephen Shaw UNQUALIFIED
Stacey E GlickJapanAnna Fali UNQUALIFIED

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