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 D BologniaFranceIvan Magalhaes PROPOSAL
Aruna Z KolmetzJapanAsiya Javayant QUALIFIED
Misaki F BriddickJapanElwin Sharvill PROPOSAL
Morrow W AlbaresIndiaStephen Shaw PROPOSAL
Aditya J WaycottSpainStephen Shaw NEGOTIATION
Arvin B RoysterIndiaIvan Magalhaes NEW
Sinclair A StockhamGermanyStephen Shaw QUALIFIED
Aditya Q CampainSpainAnna Fali NEW
Clifford H ButtGermanyStephen Shaw PROPOSAL
Cody Y MarrierRussiaElwin Sharvill NEGOTIATION
Leja G RulapaughItalyAmy Elsner RENEWAL
Mujtaba I StensethBrazilIvan Magalhaes QUALIFIED
Misaki Y InouyeUnited KingdomAnna Fali NEW
Juan R NestleAustraliaXuxue Feng NEW
Jones Q MaletItalyIvan Magalhaes RENEWAL
Francesco H MarrierRussiaXuxue Feng NEGOTIATION
Jones Y WhobreySpainAsiya Javayant RENEWAL
Adams B KolmetzUnited KingdomStephen Shaw QUALIFIED
Mujtaba I DarakjyBrazilAmy Elsner QUALIFIED
Misaki F ChuiAustraliaIvan Magalhaes NEW
Stacey S FollerIndiaElwin Sharvill NEW
Stacey Q CampainUnited KingdomStephen Shaw NEW
Alejandro H MarrierArgentinaXuxue Feng PROPOSAL
Maisha B WhobreyUnited KingdomOnyama Limba NEW
Emily O OldroydBrazilOnyama Limba NEGOTIATION
Arvin U StensethAustraliaAsiya Javayant NEGOTIATION
Aika M FollerIndiaXuxue Feng NEGOTIATION
Aika U KolmetzFranceElwin Sharvill NEGOTIATION
Tony K FerenczCanadaIoni Bowcher RENEWAL
Morrow K RimUnited KingdomBernardo Dominic UNQUALIFIED
Juan E CaudySpainOnyama Limba NEGOTIATION
Antonio B CampainRussiaIoni Bowcher PROPOSAL
Juan D BowleyBrazilXuxue Feng UNQUALIFIED
Kaitlin H AlbaresUnited KingdomIoni Bowcher PROPOSAL
Clifford Z BriddickCanadaAmy Elsner NEW
Izzy P RimJapanIoni Bowcher PROPOSAL
Francesco M SlusarskiUnited KingdomStephen Shaw RENEWAL
Leja N OstroskyJapanOnyama Limba UNQUALIFIED
James A KolmetzArgentinaStephen Shaw RENEWAL
Rodrigues N WieserCanadaAsiya Javayant RENEWAL
Francesco J MorascaFranceXuxue Feng PROPOSAL
Chavez M CaudySpainIoni Bowcher NEGOTIATION
Mayumi Z GlickIndiaOnyama Limba NEGOTIATION
Wickens M StensethAustraliaAsiya Javayant UNQUALIFIED
Leja L GauchoItalyIoni Bowcher PROPOSAL
Octavia C DoeUnited KingdomIvan Magalhaes PROPOSAL
Adams C BriddickAustraliaStephen Shaw NEW
Cody J CaldareraRussiaAnna Fali UNQUALIFIED
Stacey Y OstroskyUnited KingdomXuxue Feng QUALIFIED
Stacey A GillianRussiaXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Costa N IturbideBrazilIoni Bowcher NEW
Jefferson D AmigonGermanyElwin Sharvill PROPOSAL
David M WieserCanadaXuxue Feng QUALIFIED
Alejandro B NickaAustraliaAnna Fali NEW
Ashley P KuskoItalyXuxue Feng NEW
Murillo Q PerinAustraliaAmy Elsner QUALIFIED
Jennifer T ButtItalyAmy Elsner UNQUALIFIED
Juan P AlbaresFranceAnna Fali UNQUALIFIED
Adams A DilliardJapanAmy Elsner PROPOSAL
Ivar M VenereCanadaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin O WieserSpain2026-04-18Buckley Miller Wright QUALIFIED36Ioni Bowcher
1001Ashley T MacleadItaly2026-04-11Commercial Press QUALIFIED65Stephen Shaw
1002Leja B RoysterItaly2026-04-25Chapman, Ross E Esq NEW1Elwin Sharvill
1003Munro R GlickSpain2026-04-28Benton, John B Jr UNQUALIFIED2Bernardo Dominic
1004Nicolas Y AmigonItaly2026-04-28Benton, John B Jr RENEWAL64Ioni Bowcher
1005Wickens Z AlbaresArgentina2026-04-15Chemel, James L Cpa UNQUALIFIED56Stephen Shaw
1006Kaitlin R PerinIndia2026-05-05Buckley Miller Wright PROPOSAL13Asiya Javayant
1007Nicolas Q OstroskyGermany2026-04-08Benton, John B Jr QUALIFIED24Ioni Bowcher
1008Francesco J RutaCanada2026-04-18Chapman, Ross E Esq PROPOSAL52Stephen Shaw
1009Ivar T StensethRussia2026-04-19Chapman, Ross E Esq QUALIFIED87Bernardo Dominic
1010Emily U SlusarskiRussia2026-04-12Chemel, James L Cpa QUALIFIED29Onyama Limba
1011Nicolas Y ShinkoItaly2026-05-03Buckley Miller Wright QUALIFIED40Xuxue Feng
1012Kaitlin P DilliardRussia2026-04-22Chapman, Ross E Esq NEW37Elwin Sharvill
1013Tony K BologniaJapan2026-04-11Feiner Bros UNQUALIFIED29Xuxue Feng
1014Salvatore Q RutaJapan2026-04-28Printing Dimensions NEGOTIATION59Anna Fali
1015Octavia X ChuiBrazil2026-04-11Benton, John B Jr NEW88Ioni Bowcher
1016Jeanfrancois O VenereIndia2026-04-09Rangoni Of Florence PROPOSAL38Amy Elsner
1017Jefferson X CaldareraRussia2026-04-21Benton, John B Jr RENEWAL76Ivan Magalhaes
1018James K CaldareraSpain2026-04-27Morlong Associates PROPOSAL54Bernardo Dominic
1019Emily F SchemmerJapan2026-04-13Printing Dimensions NEGOTIATION32Ivan Magalhaes
1020Arvin K VocelkaIndia2026-05-01Dorl, James J Esq UNQUALIFIED73Ioni Bowcher
1021Leja V RimFrance2026-04-13Dorl, James J Esq RENEWAL11Xuxue Feng
1022Johnson D CaldareraGermany2026-04-24Benton, John B Jr NEGOTIATION40Amy Elsner
1023Misaki V StockhamSpain2026-05-04Dorl, James J Esq PROPOSAL43Ioni Bowcher
1024Jefferson R ButtJapan2026-04-17Buckley Miller Wright UNQUALIFIED16Xuxue Feng
1025Ashley S KolmetzRussia2026-04-18Dorl, James J Esq NEW8Elwin Sharvill
1026Morrow I ShinkoGermany2026-04-11Rousseaux, Michael Esq NEW43Amy Elsner
1027Kadeem N BologniaGermany2026-04-09Chemel, James L Cpa NEGOTIATION58Elwin Sharvill
1028Smith S PoquetteFrance2026-04-25Chemel, James L Cpa NEGOTIATION68Anna Fali
1029Sinclair G DarakjyRussia2026-04-26Commercial Press UNQUALIFIED81Ioni Bowcher
1030Isabel T DilliardRussia2026-04-30Buckley Miller Wright PROPOSAL44Stephen Shaw
1031Leja A SchemmerGermany2026-05-06Commercial Press RENEWAL30Ioni Bowcher
1032Nicolas U GlickItaly2026-04-15Rangoni Of Florence RENEWAL60Ivan Magalhaes
1033Johnson D KolmetzJapan2026-04-22Commercial Press NEW64Ivan Magalhaes
1034Cody T RulapaughArgentina2026-04-15Benton, John B Jr QUALIFIED11Stephen Shaw
1035Julie M PoquetteGermany2026-04-21Printing Dimensions PROPOSAL74Bernardo Dominic
1036Izzy Q OldroydFrance2026-04-28Printing Dimensions UNQUALIFIED81Amy Elsner
1037Arvin E DilliardAustralia2026-04-25Rousseaux, Michael Esq RENEWAL66Onyama Limba
1038Isabel W VenereJapan2026-04-30Truhlar And Truhlar Attys NEGOTIATION97Amy Elsner
1039Greenwood C DilliardAustralia2026-04-28King, Christopher A Esq NEGOTIATION20Ivan Magalhaes
1040Mayumi U ShinkoJapan2026-04-30Morlong Associates PROPOSAL55Onyama Limba
1041Jones M GlickBrazil2026-04-15Feltz Printing Service NEGOTIATION2Onyama Limba
1042Ricardo H BriddickUnited Kingdom2026-04-11Chemel, James L Cpa NEGOTIATION85Anna Fali
1043Faith X FollerBrazil2026-05-04Chanay, Jeffrey A Esq PROPOSAL19Ivan Magalhaes
1044Alejandro R CampainGermany2026-04-13Feltz Printing Service UNQUALIFIED65Xuxue Feng
1045Jones X FerenczUnited Kingdom2026-05-03Commercial Press UNQUALIFIED78Ioni Bowcher
1046Kaitlin X WhobreyJapan2026-04-27Dorl, James J Esq RENEWAL5Asiya Javayant
1047David T DarakjyJapan2026-04-30Truhlar And Truhlar Attys UNQUALIFIED63Ioni Bowcher
1048Ivar K SergiCanada2026-04-28Rangoni Of Florence UNQUALIFIED6Anna Fali
1049Ricardo U RutaIndia2026-05-05Truhlar And Truhlar Attys UNQUALIFIED50Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Greenwood G NickaIndiaAsiya Javayant QUALIFIED
Kaitlin P WaycottIndiaBernardo Dominic NEW
Nicolas E CampainRussiaIvan Magalhaes RENEWAL
Cody X TollnerFranceAnna Fali NEW
Francesco Q ChuiUnited KingdomXuxue Feng RENEWAL
Silvio K GauchoBrazilBernardo Dominic PROPOSAL
Francesco P WaycottJapanAsiya Javayant NEW
Mujtaba G ButtRussiaBernardo Dominic PROPOSAL
Maisha L RoysterBrazilXuxue Feng QUALIFIED
Emily T RutaFranceXuxue Feng NEGOTIATION
Kadeem P SergiArgentinaStephen Shaw RENEWAL
Murillo I NickaGermanyIoni Bowcher NEGOTIATION
Clifford D MorascaBrazilAsiya Javayant RENEWAL
Maisha R AmigonUnited KingdomElwin Sharvill PROPOSAL
Murillo U BriddickItalyOnyama Limba PROPOSAL
Jennifer S SergiItalyAmy Elsner QUALIFIED
Arvin H CaldareraItalyAmy Elsner NEGOTIATION
Aika T DoeSpainXuxue Feng NEGOTIATION
Rodrigues K IturbideIndiaIoni Bowcher UNQUALIFIED
Cody U PaprockiItalyBernardo Dominic NEGOTIATION
Kadeem Z SergiUnited KingdomIoni Bowcher RENEWAL
Jefferson X CaudyCanadaBernardo Dominic UNQUALIFIED
Jefferson T DarakjyJapanBernardo Dominic QUALIFIED
Faith R RulapaughArgentinaBernardo Dominic PROPOSAL
Maria U ShinkoIndiaElwin Sharvill UNQUALIFIED
Maria W WieserItalyIvan Magalhaes RENEWAL
Ivar Q NickaJapanStephen Shaw NEW
Sinclair D IturbideRussiaAnna Fali QUALIFIED
Greenwood Z PoquetteIndiaAnna Fali RENEWAL
Jefferson X MaletItalyAnna Fali PROPOSAL
Juan T DarakjyCanadaStephen Shaw RENEWAL
Munro Q GauchoUnited KingdomElwin Sharvill UNQUALIFIED
Costa F VocelkaIndiaIvan Magalhaes NEW
Nicolas Q DoeUnited KingdomBernardo Dominic NEGOTIATION
Maisha D PoquetteJapanElwin Sharvill QUALIFIED
Chavez T VocelkaFranceAmy Elsner NEGOTIATION
Wickens E DoeIndiaAsiya Javayant NEGOTIATION
Izzy O WaycottBrazilAsiya Javayant NEW
Misaki B GauchoBrazilOnyama Limba NEW
Chavez Z GarufiRussiaIvan Magalhaes NEW
Chavez V WieserJapanIvan Magalhaes RENEWAL
Smith H FlosiFranceAnna Fali QUALIFIED
Alejandro W WhobreyBrazilOnyama Limba RENEWAL
Arvin A OstroskyAustraliaIoni Bowcher NEW
Rodrigues U FlosiIndiaXuxue Feng QUALIFIED
Salvatore H PaprockiItalyIoni Bowcher QUALIFIED
Chavez M VocelkaItalyAmy Elsner NEW
Misaki T ButtCanadaIvan Magalhaes QUALIFIED
Salvatore V MarrierAustraliaStephen Shaw QUALIFIED
Clifford S VocelkaArgentinaIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Maria T Morasca
Misaki W Stockham
Deepesh C Tollner
Faith T Malet
Kaitlin Q Darakjy
Cody K Morasca
Jeanfrancois U Dilliard
Cody Z Kusko
Jefferson X Vocelka
Leon P Darakjy
Aruna Y Caldarera
Silvio S Rulapaugh
Arvin A Ostrosky
Maria R Rulapaugh
Jefferson R Malet
Rodrigues I Glick
Salvatore D Royster
Mujtaba Z Ruta
Izzy V Gaucho
James E Briddick
Ashley J Tollner
Leon N Vocelka
Mayumi Y Gaucho
Claire T Inouye
Sinclair V Slusarski
Maria R Doe
Greenwood T Glick
Misaki X Morasca
Leon J Poquette
Juan B Gillian
Ashley T Morasca
Julie A Sergi
Claire F Wieser
Nicolas C Albares
Costa W Poquette
Chavez J Chui
Leon B Paprocki
Murillo V Nicka
Aika E Slusarski
Julie E Venere
Ivar W Ruta
Emily Y Albares
Murillo T Shinko
Leja F Foller
Claire L Briddick
Leon U Caudy
Rodrigues B Rim
Salvatore U Stenseth
Munro E Caldarera
Tony T Amigon
IdCountryDate
1000Australia2026-04-19
1001United Kingdom2026-05-06
1002Japan2026-04-15
1003India2026-04-21
1004Germany2026-04-11
1005Russia2026-04-29
1006Spain2026-04-21
1007Argentina2026-05-01
1008Canada2026-04-21
1009France2026-04-09
1010Japan2026-04-07
1011Brazil2026-04-25
1012Spain2026-04-08
1013Argentina2026-04-18
1014Australia2026-04-20
1015Australia2026-04-17
1016Argentina2026-04-16
1017Russia2026-04-22
1018Spain2026-04-08
1019Australia2026-04-08
1020Spain2026-05-01
1021Australia2026-04-28
1022Canada2026-04-14
1023Japan2026-04-25
1024France2026-04-07
1025Japan2026-05-01
1026Australia2026-04-21
1027India2026-04-23
1028United Kingdom2026-04-16
1029France2026-04-20
1030Australia2026-04-29
1031India2026-05-01
1032Canada2026-04-21
1033Argentina2026-04-21
1034Italy2026-04-11
1035Brazil2026-04-20
1036Germany2026-04-23
1037Russia2026-05-06
1038Brazil2026-04-21
1039Japan2026-05-01
1040Germany2026-04-29
1041Australia2026-04-27
1042Argentina2026-04-09
1043Germany2026-04-20
1044Australia2026-04-27
1045Japan2026-04-30
1046Argentina2026-04-20
1047Australia2026-04-10
1048Spain2026-05-03
1049India2026-05-06

On-Demand Data

NameIdCountryDate
Aika F Waycott1000Italy2026-04-13
Stacey E Ferencz1001Germany2026-04-12
Jefferson O Bowley1002Canada2026-04-22
Greenwood Q Sergi1003Russia2026-04-18
Johnson J Briddick1004United Kingdom2026-05-03
Alejandro S Ferencz1005United Kingdom2026-05-06
Maisha R Glick1006Japan2026-05-03
James L Nestle1007Spain2026-04-10
Stacey P Malet1008Spain2026-05-04
Silvio P Caudy1009India2026-04-11
Darci E Malet1010United Kingdom2026-04-13
Julie A Malet1011Germany2026-04-30
Aditya I Glick1012Australia2026-04-14
Faith N Amigon1013France2026-04-28
Morrow Q Chui1014Spain2026-04-19
Costa W Venere1015India2026-04-13
Kadeem U Wieser1016Japan2026-05-03
Wickens T Wieser1017Brazil2026-04-12
Alejandro Y Albares1018Spain2026-04-13
Nicolas F Gillian1019France2026-04-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith Y TollnerGermanyElwin Sharvill UNQUALIFIED
Costa W MacleadGermanyXuxue Feng RENEWAL
Silvio N WieserArgentinaAnna Fali PROPOSAL
Smith F AmigonAustraliaXuxue Feng NEW
Wickens H VenereIndiaAnna Fali QUALIFIED
Mujtaba D WaycottIndiaIoni Bowcher RENEWAL
Faith B ChuiIndiaIoni Bowcher UNQUALIFIED
Munro P VenereJapanAmy Elsner RENEWAL
Emily C MaletAustraliaAnna Fali NEW
Salvatore D SaylorsAustraliaIoni Bowcher NEW
Jeanfrancois S MorascaUnited KingdomIvan Magalhaes NEW
Rodrigues E FigeroaCanadaIoni Bowcher NEW
Cody D WieserItalyIoni Bowcher NEGOTIATION
Jennifer C AmigonSpainOnyama Limba NEW
Darci K SergiFranceBernardo Dominic UNQUALIFIED
Izzy X OstroskyGermanyIvan Magalhaes RENEWAL
Emily L CaldareraJapanIvan Magalhaes QUALIFIED
Jefferson T SlusarskiSpainBernardo Dominic UNQUALIFIED
Sinclair K PoquetteIndiaIvan Magalhaes UNQUALIFIED
Silvio K RoysterCanadaXuxue Feng NEGOTIATION
Ivar U IturbideItalyStephen Shaw NEW
Leja L OldroydAustraliaBernardo Dominic QUALIFIED
Leon O BologniaAustraliaIvan Magalhaes NEW
Claire E FlosiIndiaOnyama Limba RENEWAL
Ashley Q KolmetzRussiaOnyama Limba QUALIFIED
Jefferson X RulapaughFranceElwin Sharvill NEGOTIATION
Greenwood Q WhobreyJapanIvan Magalhaes QUALIFIED
David K RimArgentinaAnna Fali RENEWAL
Izzy Y SaylorsUnited KingdomAmy Elsner PROPOSAL
Wickens N PoquetteUnited KingdomIvan Magalhaes UNQUALIFIED
Alejandro U DoeBrazilIoni Bowcher RENEWAL
Costa N PerinJapanStephen Shaw PROPOSAL
Salvatore G MorascaBrazilAnna Fali NEGOTIATION
Julie V AlbaresUnited KingdomXuxue Feng NEW
Morrow L DarakjyAustraliaIoni Bowcher UNQUALIFIED
Mayumi I KuskoUnited KingdomStephen Shaw UNQUALIFIED
Silvio S KuskoIndiaIoni Bowcher QUALIFIED
Tony W GauchoFranceIvan Magalhaes NEW
Morrow H SchemmerRussiaIoni Bowcher NEW
Jones X PerinFranceAsiya Javayant QUALIFIED

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