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
Costa W GlickFranceXuxue Feng NEW
Tony Y VocelkaIndiaElwin Sharvill UNQUALIFIED
Smith T GillianBrazilIoni Bowcher UNQUALIFIED
Kadeem N FigeroaArgentinaIoni Bowcher NEGOTIATION
Misaki T MaletCanadaAnna Fali NEGOTIATION
Misaki E ShinkoItalyStephen Shaw UNQUALIFIED
Aruna F NickaFranceAsiya Javayant QUALIFIED
Aditya V OstroskyArgentinaAmy Elsner PROPOSAL
Julie E CampainRussiaXuxue Feng UNQUALIFIED
Morrow T MaletRussiaStephen Shaw QUALIFIED
Jennifer Q NickaRussiaXuxue Feng RENEWAL
Wickens I WieserSpainStephen Shaw NEGOTIATION
Aruna X BriddickUnited KingdomAnna Fali NEW
Antonio H KuskoIndiaIvan Magalhaes NEGOTIATION
Aruna P NickaFranceAmy Elsner QUALIFIED
James O CampainFranceBernardo Dominic QUALIFIED
Ivar O AmigonGermanyIoni Bowcher NEW
Johnson D RutaBrazilAsiya Javayant NEGOTIATION
Leja Y FerenczRussiaIvan Magalhaes RENEWAL
Chavez U VenereUnited KingdomBernardo Dominic NEGOTIATION
Deepesh C RutaFranceIvan Magalhaes NEGOTIATION
Emily J RimRussiaBernardo Dominic NEGOTIATION
Mayumi F OldroydAustraliaXuxue Feng NEGOTIATION
Aruna B SergiUnited KingdomAsiya Javayant RENEWAL
Aditya I VocelkaFranceAsiya Javayant RENEWAL
Julie O DarakjyUnited KingdomXuxue Feng RENEWAL
Alejandro M StockhamIndiaAmy Elsner NEW
Aditya T ChuiItalyElwin Sharvill QUALIFIED
David O AmigonJapanIvan Magalhaes RENEWAL
Murillo X OldroydGermanyXuxue Feng QUALIFIED
Johnson V VenereUnited KingdomAsiya Javayant QUALIFIED
Leon K VocelkaGermanyIvan Magalhaes UNQUALIFIED
Misaki S SchemmerBrazilElwin Sharvill NEW
Arvin F RimUnited KingdomStephen Shaw UNQUALIFIED
Jennifer N BriddickBrazilAnna Fali NEGOTIATION
Kaitlin J GauchoIndiaXuxue Feng RENEWAL
Stacey E WieserCanadaAnna Fali NEGOTIATION
Francesco O StockhamRussiaOnyama Limba NEW
Morrow Y SergiRussiaOnyama Limba RENEWAL
Julie U SaylorsItalyAmy Elsner QUALIFIED
Maisha V OldroydFranceOnyama Limba RENEWAL
Wickens B BriddickBrazilXuxue Feng RENEWAL
Johnson A RoysterIndiaXuxue Feng QUALIFIED
Jones L MaletGermanyOnyama Limba UNQUALIFIED
Darci C FigeroaItalyXuxue Feng PROPOSAL
Claire W MorascaUnited KingdomAmy Elsner NEGOTIATION
Octavia J TollnerAustraliaAnna Fali RENEWAL
Morrow F GauchoGermanyIoni Bowcher NEW
Francesco M GauchoGermanyBernardo Dominic QUALIFIED
Antonio S WhobreyItalyAnna Fali NEW
Horizontal
NameCountryRepresentativeStatus
David A DoeIndiaBernardo Dominic RENEWAL
Leja R SergiItalyOnyama Limba PROPOSAL
Jeanfrancois G PaprockiItalyAnna Fali PROPOSAL
Adams P RutaFranceIoni Bowcher RENEWAL
Jones M FigeroaBrazilOnyama Limba PROPOSAL
Rodrigues R AlbaresBrazilStephen Shaw NEW
Costa T FerenczSpainElwin Sharvill NEW
Antonio Q RoysterItalyAsiya Javayant RENEWAL
Darci U RoysterArgentinaBernardo Dominic NEW
Kadeem B IturbideSpainAsiya Javayant UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna Z InouyeAustralia2026-03-19Buckley Miller Wright QUALIFIED45Onyama Limba
1001Kaitlin T SchemmerAustralia2026-03-04Commercial Press PROPOSAL35Bernardo Dominic
1002Jeanfrancois F ButtUnited Kingdom2026-03-12Feltz Printing Service NEGOTIATION74Ivan Magalhaes
1003Nicolas Z AmigonSpain2026-03-24Buckley Miller Wright QUALIFIED8Ivan Magalhaes
1004Izzy U ShinkoUnited Kingdom2026-02-28Truhlar And Truhlar Attys NEGOTIATION56Stephen Shaw
1005Leja F PaprockiJapan2026-02-25Buckley Miller Wright NEGOTIATION32Amy Elsner
1006Jeanfrancois E ButtCanada2026-03-23Printing Dimensions PROPOSAL89Ivan Magalhaes
1007Ashley N MarrierAustralia2026-03-06Chapman, Ross E Esq NEW19Elwin Sharvill
1008Arvin Y AmigonItaly2026-03-09Buckley Miller Wright NEW21Ioni Bowcher
1009Aika X MacleadJapan2026-03-03Feiner Bros RENEWAL35Xuxue Feng
1010Mayumi L WaycottGermany2026-03-14Rousseaux, Michael Esq RENEWAL14Stephen Shaw
1011Tony H CaudyBrazil2026-03-01Truhlar And Truhlar Attys RENEWAL27Bernardo Dominic
1012Wickens X SaylorsCanada2026-03-05Rangoni Of Florence QUALIFIED23Ivan Magalhaes
1013Salvatore L DoeIndia2026-03-24Chemel, James L Cpa QUALIFIED18Bernardo Dominic
1014Aditya T MaletBrazil2026-03-05Feiner Bros UNQUALIFIED95Onyama Limba
1015Mujtaba A GillianAustralia2026-03-07Dorl, James J Esq PROPOSAL60Xuxue Feng
1016Chavez N FollerJapan2026-03-17Chemel, James L Cpa RENEWAL9Asiya Javayant
1017Julie P PoquetteFrance2026-03-11Rangoni Of Florence NEGOTIATION22Onyama Limba
1018Deepesh W ChuiGermany2026-02-26Printing Dimensions NEW93Xuxue Feng
1019Jennifer K CaldareraJapan2026-03-01Morlong Associates PROPOSAL64Amy Elsner
1020Rodrigues U DilliardItaly2026-03-22Morlong Associates PROPOSAL44Asiya Javayant
1021Chavez D PaprockiItaly2026-03-10Commercial Press NEGOTIATION13Asiya Javayant
1022Leja M FerenczItaly2026-03-01Feiner Bros RENEWAL55Asiya Javayant
1023Chavez E OstroskyBrazil2026-03-01Truhlar And Truhlar Attys NEW72Ivan Magalhaes
1024Alejandro Q PerinAustralia2026-03-16Benton, John B Jr RENEWAL54Bernardo Dominic
1025Clifford H ChuiArgentina2026-03-21Rangoni Of Florence NEGOTIATION13Anna Fali
1026Jones X NestleIndia2026-03-25Chanay, Jeffrey A Esq QUALIFIED22Ivan Magalhaes
1027Johnson B PoquetteItaly2026-03-15Truhlar And Truhlar Attys QUALIFIED64Anna Fali
1028Wickens W BriddickItaly2026-03-07Truhlar And Truhlar Attys QUALIFIED51Onyama Limba
1029Aika P MacleadRussia2026-02-28Feltz Printing Service PROPOSAL76Bernardo Dominic
1030Faith R PoquetteAustralia2026-03-05Buckley Miller Wright RENEWAL17Elwin Sharvill
1031Leon C RoysterArgentina2026-03-20King, Christopher A Esq NEGOTIATION86Xuxue Feng
1032Maisha C BowleyItaly2026-03-16Buckley Miller Wright RENEWAL56Xuxue Feng
1033Faith X PerinItaly2026-03-02Chanay, Jeffrey A Esq QUALIFIED88Elwin Sharvill
1034Salvatore O InouyeIndia2026-03-13Dorl, James J Esq RENEWAL24Amy Elsner
1035Misaki S MaletGermany2026-03-14Benton, John B Jr PROPOSAL48Ioni Bowcher
1036Kaitlin G MacleadUnited Kingdom2026-02-26Truhlar And Truhlar Attys UNQUALIFIED61Asiya Javayant
1037Smith D MacleadFrance2026-03-04Chapman, Ross E Esq QUALIFIED35Ivan Magalhaes
1038Wickens K GlickArgentina2026-02-27Truhlar And Truhlar Attys RENEWAL97Ioni Bowcher
1039Aika I MaletItaly2026-03-14Feiner Bros NEW97Xuxue Feng
1040Greenwood H KolmetzRussia2026-03-01Benton, John B Jr NEW26Xuxue Feng
1041Octavia C KolmetzUnited Kingdom2026-03-25Chemel, James L Cpa NEGOTIATION44Xuxue Feng
1042Munro V CaldareraCanada2026-02-26Printing Dimensions NEW61Onyama Limba
1043Greenwood X OldroydJapan2026-03-03Commercial Press RENEWAL78Amy Elsner
1044Cody T FigeroaFrance2026-03-12Buckley Miller Wright PROPOSAL90Elwin Sharvill
1045Morrow J KolmetzFrance2026-03-05Chapman, Ross E Esq UNQUALIFIED77Bernardo Dominic
1046Tony I KuskoCanada2026-03-16Rousseaux, Michael Esq NEW98Asiya Javayant
1047Murillo J PerinJapan2026-02-27Rousseaux, Michael Esq PROPOSAL95Onyama Limba
1048Cody J OstroskySpain2026-03-13Chapman, Ross E Esq RENEWAL65Asiya Javayant
1049Faith Z WhobreyFrance2026-03-05Buckley Miller Wright QUALIFIED78Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Antonio J PaprockiGermanyIvan Magalhaes RENEWAL
David G IturbideSpainAnna Fali RENEWAL
Salvatore G PoquetteAustraliaStephen Shaw PROPOSAL
Jennifer M WieserFranceOnyama Limba QUALIFIED
Leon E PaprockiBrazilAnna Fali UNQUALIFIED
Alejandro W MaletArgentinaIoni Bowcher UNQUALIFIED
Izzy A ShinkoRussiaXuxue Feng PROPOSAL
James F GillianIndiaAsiya Javayant NEGOTIATION
Silvio E CampainCanadaBernardo Dominic UNQUALIFIED
Arvin J FerenczBrazilAnna Fali QUALIFIED
Jennifer Z SchemmerItalyIoni Bowcher UNQUALIFIED
Tony K IturbideBrazilStephen Shaw NEW
Octavia P DilliardCanadaXuxue Feng QUALIFIED
Julie K KolmetzUnited KingdomIoni Bowcher NEW
Isabel E DoeGermanyIoni Bowcher NEW
Costa M AlbaresSpainOnyama Limba NEGOTIATION
Deepesh O GarufiFranceBernardo Dominic NEW
Alejandro F GillianJapanStephen Shaw PROPOSAL
Rodrigues I WieserItalyStephen Shaw PROPOSAL
Murillo I PaprockiAustraliaBernardo Dominic RENEWAL
Mujtaba A BologniaSpainIvan Magalhaes UNQUALIFIED
Maria J PaprockiFranceXuxue Feng RENEWAL
Wickens K MarrierBrazilElwin Sharvill QUALIFIED
Aditya V StockhamIndiaIvan Magalhaes QUALIFIED
Julie E BologniaBrazilAsiya Javayant RENEWAL
Leon M FlosiFranceOnyama Limba PROPOSAL
Jeanfrancois U AmigonArgentinaAmy Elsner NEGOTIATION
Leon T WhobreyIndiaOnyama Limba NEGOTIATION
Murillo A MaletUnited KingdomBernardo Dominic QUALIFIED
Morrow F VocelkaGermanyAmy Elsner UNQUALIFIED
Faith R FlosiBrazilBernardo Dominic RENEWAL
Smith V AlbaresIndiaOnyama Limba PROPOSAL
Julie P SaylorsGermanyAsiya Javayant NEW
Silvio F PaprockiUnited KingdomBernardo Dominic QUALIFIED
Adams Y WaycottFranceIvan Magalhaes RENEWAL
Deepesh U GauchoSpainAnna Fali RENEWAL
Tony I WieserBrazilIoni Bowcher NEW
Aika N MacleadUnited KingdomElwin Sharvill QUALIFIED
Isabel S AmigonItalyStephen Shaw PROPOSAL
Arvin C BowleyItalyAsiya Javayant PROPOSAL
Munro C MaletIndiaIoni Bowcher NEGOTIATION
Jennifer O WaycottArgentinaAnna Fali RENEWAL
Wickens S PoquetteIndiaXuxue Feng NEW
Claire P ButtSpainAmy Elsner PROPOSAL
Kadeem S CampainItalyXuxue Feng NEW
Cody I MacleadBrazilAnna Fali NEGOTIATION
Johnson F FollerArgentinaAsiya Javayant NEW
Juan N FerenczItalyStephen Shaw RENEWAL
Stacey I ShinkoBrazilIvan Magalhaes NEW
Greenwood G FerenczGermanyAsiya Javayant NEW
Frozen Columns
Name
Nicolas D Campain
Emily M Poquette
Juan T Rulapaugh
Jeanfrancois A Foller
Francesco Q Albares
Greenwood J Malet
Costa I Ostrosky
Jefferson I Caudy
James X Dilliard
Tony R Bolognia
Alejandro K Malet
Jennifer A Nestle
Antonio T Maclead
Murillo Q Schemmer
Silvio S Rulapaugh
Sinclair G Dilliard
Rodrigues K Dilliard
Smith D Garufi
Morrow S Waycott
Isabel E Iturbide
Isabel Y Glick
Salvatore Y Morasca
Silvio A Maclead
Morrow D Caldarera
Aditya I Bowley
Aditya M Briddick
Misaki H Shinko
Leon Q Shinko
Kaitlin Q Iturbide
Johnson U Stockham
Mayumi O Amigon
Jeanfrancois M Doe
Aditya L Stockham
James G Figeroa
Leon A Ostrosky
Jefferson V Briddick
Jones M Wieser
Johnson E Foller
Sinclair Q Ostrosky
Kadeem P Gillian
Misaki T Marrier
David L Morasca
Murillo P Kusko
Clifford U Rulapaugh
Leja C Amigon
Faith D Schemmer
Arvin I Garufi
Murillo O Tollner
Nicolas S Perin
Stacey W Slusarski
IdCountryDate
1000Russia2026-03-13
1001Spain2026-03-15
1002Argentina2026-03-18
1003Japan2026-03-01
1004France2026-03-07
1005Canada2026-03-24
1006Argentina2026-03-22
1007Australia2026-03-15
1008Argentina2026-03-04
1009Spain2026-03-26
1010United Kingdom2026-03-05
1011Australia2026-03-06
1012Russia2026-03-19
1013Australia2026-03-04
1014Australia2026-03-09
1015Germany2026-03-17
1016Australia2026-02-26
1017Canada2026-02-28
1018Brazil2026-03-02
1019Germany2026-03-04
1020Spain2026-03-07
1021Japan2026-03-01
1022Australia2026-03-06
1023Spain2026-03-01
1024France2026-03-20
1025Russia2026-03-16
1026Russia2026-03-25
1027Canada2026-03-18
1028Australia2026-03-01
1029India2026-02-25
1030Brazil2026-02-26
1031India2026-03-18
1032Italy2026-03-21
1033France2026-03-18
1034Russia2026-03-22
1035Italy2026-02-27
1036India2026-03-25
1037Spain2026-03-03
1038India2026-03-09
1039Spain2026-03-12
1040France2026-03-22
1041India2026-03-17
1042Argentina2026-03-09
1043Australia2026-03-23
1044Russia2026-02-28
1045Japan2026-03-14
1046United Kingdom2026-03-21
1047Argentina2026-03-15
1048Brazil2026-02-27
1049France2026-03-23

On-Demand Data

NameIdCountryDate
Jeanfrancois B Gillian1000Spain2026-03-09
Aruna O Dilliard1001India2026-03-02
Misaki J Schemmer1002Canada2026-03-24
Jefferson H Shinko1003Australia2026-03-26
Silvio T Royster1004Germany2026-03-02
Silvio D Venere1005Spain2026-03-11
Julie C Malet1006Spain2026-03-06
Johnson F Poquette1007Brazil2026-03-01
Jones E Nestle1008France2026-03-05
Cody H Tollner1009Spain2026-03-21
Sinclair V Stockham1010Brazil2026-03-08
Silvio V Slusarski1011Canada2026-03-21
Tony B Ferencz1012Japan2026-03-10
Alejandro M Chui1013Italy2026-03-14
Misaki Q Rim1014Australia2026-03-03
Alejandro T Ferencz1015Russia2026-03-07
Julie W Slusarski1016Russia2026-03-10
Francesco T Ostrosky1017Germany2026-03-07
Costa D Ruta1018Japan2026-03-12
Greenwood K Doe1019India2026-02-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford K FollerRussiaAnna Fali QUALIFIED
Maisha S RimRussiaXuxue Feng NEGOTIATION
Isabel L StockhamArgentinaAmy Elsner NEW
Tony X PaprockiCanadaIvan Magalhaes UNQUALIFIED
Antonio G SergiFranceIvan Magalhaes RENEWAL
Leja F RulapaughRussiaAsiya Javayant NEW
Ashley H SchemmerCanadaAmy Elsner PROPOSAL
Ricardo I MacleadRussiaAmy Elsner UNQUALIFIED
Arvin L WhobreyJapanBernardo Dominic QUALIFIED
James E KolmetzRussiaAmy Elsner NEW
Greenwood V ShinkoFranceIvan Magalhaes QUALIFIED
Ivar W CaldareraItalyStephen Shaw RENEWAL
Mayumi V PaprockiItalyAmy Elsner NEW
Alejandro V MarrierGermanyStephen Shaw RENEWAL
Mujtaba R DilliardFranceAsiya Javayant NEW
Claire T ShinkoIndiaAnna Fali NEGOTIATION
Ashley I MarrierGermanyIvan Magalhaes RENEWAL
Greenwood K PaprockiBrazilStephen Shaw RENEWAL
Leja I SlusarskiBrazilIvan Magalhaes RENEWAL
Jennifer C CaldareraBrazilIvan Magalhaes NEGOTIATION
Greenwood F SaylorsAustraliaIoni Bowcher NEGOTIATION
Costa H GauchoUnited KingdomAmy Elsner UNQUALIFIED
Nicolas J RulapaughGermanyAmy Elsner PROPOSAL
Costa B BologniaIndiaIoni Bowcher RENEWAL
Maisha L RoysterUnited KingdomOnyama Limba NEW
Smith Y ButtJapanXuxue Feng UNQUALIFIED
Mayumi L InouyeSpainBernardo Dominic QUALIFIED
Ashley J DarakjyItalyAnna Fali QUALIFIED
Murillo K KuskoIndiaIvan Magalhaes QUALIFIED
Johnson H DoeJapanAnna Fali UNQUALIFIED
Kaitlin R FollerItalyAsiya Javayant NEW
Tony C MaletCanadaIvan Magalhaes UNQUALIFIED
Izzy D FollerGermanyXuxue Feng RENEWAL
Costa J IturbideGermanyStephen Shaw QUALIFIED
Mayumi K ButtArgentinaAsiya Javayant PROPOSAL
Salvatore B SergiBrazilBernardo Dominic RENEWAL
Leon I RutaJapanAsiya Javayant UNQUALIFIED
Aika P GillianRussiaIvan Magalhaes UNQUALIFIED
Deepesh J DarakjyJapanIvan Magalhaes RENEWAL
Jeanfrancois L GarufiArgentinaBernardo Dominic 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.