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
Kadeem U CaudyItalyIoni Bowcher UNQUALIFIED
Ivar G FerenczIndiaIoni Bowcher RENEWAL
Jones R KuskoJapanStephen Shaw QUALIFIED
Costa O BowleyGermanyStephen Shaw NEGOTIATION
Isabel G RimArgentinaElwin Sharvill PROPOSAL
Costa F ShinkoAustraliaStephen Shaw UNQUALIFIED
Johnson M CaudyGermanyOnyama Limba UNQUALIFIED
Rodrigues W RulapaughUnited KingdomOnyama Limba RENEWAL
Adams B AlbaresIndiaStephen Shaw NEGOTIATION
Salvatore G RutaRussiaXuxue Feng NEGOTIATION
David I StockhamGermanyXuxue Feng UNQUALIFIED
Emily I GillianRussiaAmy Elsner UNQUALIFIED
Leon L FigeroaRussiaIvan Magalhaes PROPOSAL
Antonio R BriddickGermanyAnna Fali UNQUALIFIED
Julie C RimSpainAmy Elsner NEGOTIATION
Chavez B FlosiUnited KingdomAsiya Javayant NEW
James H WaycottRussiaStephen Shaw QUALIFIED
Ivar L MacleadItalyAsiya Javayant NEW
Silvio B AlbaresRussiaAmy Elsner RENEWAL
Deepesh X ButtUnited KingdomOnyama Limba NEW
Juan L GlickRussiaAsiya Javayant QUALIFIED
Clifford N OldroydUnited KingdomIoni Bowcher RENEWAL
Tony C MaletGermanyIoni Bowcher NEGOTIATION
Maria N FigeroaGermanyElwin Sharvill PROPOSAL
Greenwood C FigeroaSpainOnyama Limba NEGOTIATION
Aruna K BologniaIndiaAnna Fali QUALIFIED
Jennifer W ButtAustraliaXuxue Feng NEW
Aditya H StockhamJapanBernardo Dominic UNQUALIFIED
Chavez S NickaSpainXuxue Feng UNQUALIFIED
Maisha W DarakjyIndiaOnyama Limba QUALIFIED
Isabel M ShinkoRussiaXuxue Feng RENEWAL
Clifford P DoeArgentinaXuxue Feng RENEWAL
Greenwood B FigeroaItalyStephen Shaw PROPOSAL
Cody C OldroydItalyIoni Bowcher NEW
Rodrigues R AmigonArgentinaElwin Sharvill PROPOSAL
Izzy M PoquetteFranceOnyama Limba RENEWAL
Cody D CaldareraSpainOnyama Limba NEW
Leja E CaldareraCanadaStephen Shaw NEW
Jones Q InouyeCanadaXuxue Feng QUALIFIED
Adams A RoysterUnited KingdomIoni Bowcher UNQUALIFIED
Rodrigues Z SchemmerBrazilStephen Shaw UNQUALIFIED
Leon G GauchoRussiaIvan Magalhaes RENEWAL
Smith O NickaFranceIoni Bowcher RENEWAL
Leon R WhobreyJapanStephen Shaw PROPOSAL
Smith I DilliardFranceOnyama Limba NEW
Johnson N MorascaJapanAsiya Javayant NEW
Stacey S BriddickItalyOnyama Limba NEW
Mujtaba U NestleGermanyXuxue Feng NEGOTIATION
Salvatore F GauchoJapanIvan Magalhaes NEW
Francesco S RoysterArgentinaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Jennifer X VenereItalyAmy Elsner NEW
Kaitlin M OstroskyArgentinaElwin Sharvill NEW
Arvin J DilliardItalyAnna Fali NEW
Jennifer O StockhamCanadaOnyama Limba NEGOTIATION
Arvin D FigeroaGermanyIoni Bowcher RENEWAL
David I KuskoItalyAmy Elsner RENEWAL
Julie Q SlusarskiIndiaOnyama Limba PROPOSAL
Costa R GlickBrazilAmy Elsner UNQUALIFIED
Arvin J DarakjyCanadaAmy Elsner QUALIFIED
Alejandro T MorascaCanadaIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki X RimRussia2026-06-15Buckley Miller Wright UNQUALIFIED26Ivan Magalhaes
1001Stacey F CaldareraUnited Kingdom2026-06-17Morlong Associates QUALIFIED45Bernardo Dominic
1002Aditya N GarufiSpain2026-05-25Printing Dimensions UNQUALIFIED59Ioni Bowcher
1003Silvio A VenereCanada2026-06-15Dorl, James J Esq PROPOSAL7Bernardo Dominic
1004Nicolas F MaletArgentina2026-05-25Feiner Bros UNQUALIFIED76Onyama Limba
1005Maria M KuskoFrance2026-06-03Truhlar And Truhlar Attys RENEWAL42Xuxue Feng
1006Ivar Y FlosiAustralia2026-05-28Rangoni Of Florence NEGOTIATION94Onyama Limba
1007Ashley U WhobreyGermany2026-05-29Rousseaux, Michael Esq UNQUALIFIED13Onyama Limba
1008Salvatore A AlbaresAustralia2026-06-18King, Christopher A Esq RENEWAL59Ivan Magalhaes
1009Mayumi J SaylorsJapan2026-05-26Feltz Printing Service RENEWAL79Ivan Magalhaes
1010Jefferson Z CampainIndia2026-06-06Feltz Printing Service UNQUALIFIED43Ivan Magalhaes
1011Ashley X WaycottAustralia2026-05-28Benton, John B Jr PROPOSAL53Anna Fali
1012Alejandro J MaletJapan2026-06-11Rousseaux, Michael Esq RENEWAL78Elwin Sharvill
1013Maria L DilliardArgentina2026-05-27Rangoni Of Florence UNQUALIFIED98Onyama Limba
1014Faith E PoquetteBrazil2026-06-15Commercial Press UNQUALIFIED79Ivan Magalhaes
1015Ivar Q PerinBrazil2026-05-28Feiner Bros PROPOSAL0Ivan Magalhaes
1016Munro G MacleadAustralia2026-06-11Rousseaux, Michael Esq QUALIFIED77Asiya Javayant
1017Antonio M SlusarskiUnited Kingdom2026-05-31Benton, John B Jr NEGOTIATION93Asiya Javayant
1018Jefferson W OstroskyBrazil2026-06-17Rangoni Of Florence QUALIFIED30Ivan Magalhaes
1019Alejandro L AmigonAustralia2026-06-21Feltz Printing Service RENEWAL92Amy Elsner
1020Octavia S RoysterCanada2026-05-28Truhlar And Truhlar Attys RENEWAL72Ivan Magalhaes
1021Silvio M RoysterUnited Kingdom2026-06-08Rangoni Of Florence NEGOTIATION60Bernardo Dominic
1022Faith B CampainFrance2026-06-04Benton, John B Jr PROPOSAL55Asiya Javayant
1023Ricardo J CaldareraCanada2026-06-04Dorl, James J Esq NEW36Bernardo Dominic
1024Maisha F FlosiItaly2026-05-31Dorl, James J Esq RENEWAL55Onyama Limba
1025Maria N TollnerUnited Kingdom2026-06-10King, Christopher A Esq UNQUALIFIED68Elwin Sharvill
1026Julie N SchemmerGermany2026-06-22Chanay, Jeffrey A Esq QUALIFIED66Anna Fali
1027Munro M TollnerSpain2026-06-17Printing Dimensions NEW84Amy Elsner
1028Jones Z AlbaresCanada2026-06-07Morlong Associates NEW26Xuxue Feng
1029Leon I WhobreyAustralia2026-06-21Printing Dimensions NEGOTIATION56Ioni Bowcher
1030Morrow O MacleadArgentina2026-06-03Feiner Bros UNQUALIFIED18Ivan Magalhaes
1031David S RulapaughJapan2026-06-17Morlong Associates QUALIFIED93Elwin Sharvill
1032Adams C IturbideJapan2026-06-04Morlong Associates NEGOTIATION53Anna Fali
1033Kaitlin W StensethIndia2026-06-08Dorl, James J Esq PROPOSAL8Ioni Bowcher
1034Aruna B PaprockiBrazil2026-05-30Commercial Press NEW27Amy Elsner
1035Alejandro A GlickSpain2026-06-10Benton, John B Jr NEGOTIATION63Elwin Sharvill
1036David K NickaBrazil2026-06-01Rousseaux, Michael Esq NEGOTIATION43Amy Elsner
1037Kaitlin U MaletJapan2026-06-01Benton, John B Jr NEW48Onyama Limba
1038Arvin M OstroskyBrazil2026-05-27Commercial Press UNQUALIFIED90Asiya Javayant
1039Izzy M ChuiCanada2026-06-18Chemel, James L Cpa RENEWAL41Elwin Sharvill
1040Salvatore L ShinkoItaly2026-06-02Chapman, Ross E Esq NEGOTIATION64Anna Fali
1041Aika R BriddickRussia2026-05-31Commercial Press PROPOSAL30Ivan Magalhaes
1042Mujtaba O FollerCanada2026-06-12Commercial Press NEW24Xuxue Feng
1043Nicolas G ChuiAustralia2026-06-21Morlong Associates UNQUALIFIED67Onyama Limba
1044Clifford U BowleyUnited Kingdom2026-06-07Feltz Printing Service PROPOSAL65Xuxue Feng
1045Morrow U MaletFrance2026-05-27Dorl, James J Esq RENEWAL64Bernardo Dominic
1046Claire E ChuiGermany2026-06-13King, Christopher A Esq NEGOTIATION45Ioni Bowcher
1047Adams C FollerJapan2026-06-22Truhlar And Truhlar Attys UNQUALIFIED38Ioni Bowcher
1048Aruna Y KuskoCanada2026-05-26Printing Dimensions UNQUALIFIED86Onyama Limba
1049Jefferson R TollnerCanada2026-05-30Morlong Associates NEW43Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Maisha P CaudyUnited KingdomIoni Bowcher QUALIFIED
Aika B RulapaughJapanElwin Sharvill RENEWAL
Mayumi E SergiBrazilIoni Bowcher QUALIFIED
Emily J IturbideAustraliaIvan Magalhaes NEW
Clifford W GlickIndiaStephen Shaw UNQUALIFIED
Claire O MacleadFranceIoni Bowcher NEW
Costa L RutaBrazilAnna Fali UNQUALIFIED
Alejandro M CaldareraSpainBernardo Dominic NEW
Cody A WaycottArgentinaBernardo Dominic UNQUALIFIED
Deepesh Y BowleyAustraliaBernardo Dominic PROPOSAL
Munro I CampainSpainAsiya Javayant NEW
Jeanfrancois G AmigonItalyAsiya Javayant NEGOTIATION
Nicolas R IturbideSpainOnyama Limba UNQUALIFIED
Salvatore P SchemmerItalyXuxue Feng NEGOTIATION
Kadeem G DilliardItalyXuxue Feng UNQUALIFIED
Kaitlin R MaletRussiaElwin Sharvill QUALIFIED
Arvin K SergiBrazilElwin Sharvill NEGOTIATION
Juan R CampainJapanIvan Magalhaes NEW
Mayumi G WhobreyRussiaOnyama Limba QUALIFIED
Darci L CampainBrazilBernardo Dominic RENEWAL
Maria H PaprockiItalyElwin Sharvill NEW
Cody C MorascaFranceXuxue Feng QUALIFIED
Octavia K StockhamBrazilAnna Fali PROPOSAL
Ivar S RimRussiaAmy Elsner QUALIFIED
Faith S BologniaJapanIoni Bowcher UNQUALIFIED
Jeanfrancois P ShinkoFranceAsiya Javayant PROPOSAL
Morrow W PerinArgentinaBernardo Dominic UNQUALIFIED
Darci J FlosiAustraliaAsiya Javayant UNQUALIFIED
Costa U DilliardGermanyIoni Bowcher RENEWAL
Jennifer U GillianUnited KingdomOnyama Limba NEGOTIATION
Morrow M InouyeCanadaElwin Sharvill UNQUALIFIED
Antonio T RimFranceAnna Fali QUALIFIED
Emily W BowleyUnited KingdomStephen Shaw NEGOTIATION
James K ShinkoJapanStephen Shaw PROPOSAL
Costa D StensethBrazilBernardo Dominic NEGOTIATION
Isabel R FigeroaCanadaOnyama Limba NEGOTIATION
Cody Z IturbideAustraliaOnyama Limba NEW
Aruna X GillianUnited KingdomStephen Shaw PROPOSAL
Smith J FerenczSpainElwin Sharvill NEW
Morrow H RimRussiaXuxue Feng NEGOTIATION
Mayumi D OstroskyRussiaXuxue Feng UNQUALIFIED
Smith W ShinkoIndiaElwin Sharvill QUALIFIED
Mayumi C RoysterGermanyElwin Sharvill UNQUALIFIED
Julie D InouyeCanadaBernardo Dominic QUALIFIED
Juan E OstroskyArgentinaAsiya Javayant RENEWAL
Ivar E WaycottRussiaIvan Magalhaes RENEWAL
Greenwood K CampainSpainAmy Elsner UNQUALIFIED
James B SaylorsBrazilAmy Elsner RENEWAL
Antonio H RimAustraliaBernardo Dominic QUALIFIED
Murillo J FollerRussiaIvan Magalhaes QUALIFIED
Frozen Columns
Name
Aika L Schemmer
Kaitlin U Darakjy
Mujtaba G Morasca
Mayumi I Iturbide
Jones F Morasca
Octavia S Doe
Claire W Inouye
Arvin K Gaucho
Antonio P Schemmer
Ricardo S Caudy
Deepesh F Figeroa
Wickens E Rim
Alejandro M Gaucho
Murillo W Campain
Faith A Briddick
Claire G Albares
Ashley D Albares
Octavia Q Chui
Leon J Caldarera
Salvatore T Gillian
Rodrigues E Rim
Chavez M Poquette
Deepesh M Nicka
Cody B Malet
Greenwood G Nestle
Morrow J Royster
Juan B Glick
Maisha P Sergi
Darci J Paprocki
Silvio E Kolmetz
Adams J Bolognia
Arvin N Chui
Aditya F Slusarski
Leon F Maclead
Alejandro H Slusarski
Mujtaba T Gillian
Silvio J Perin
Jeanfrancois O Darakjy
Juan M Malet
Ricardo S Gaucho
Murillo K Rulapaugh
Wickens O Paprocki
Morrow P Malet
Rodrigues Q Vocelka
Leon G Stockham
Jefferson Y Nicka
Emily X Malet
Jennifer C Nestle
Salvatore E Gillian
Chavez G Whobrey
IdCountryDate
1000United Kingdom2026-06-20
1001Argentina2026-06-21
1002Germany2026-06-22
1003Japan2026-06-07
1004India2026-05-30
1005Canada2026-06-04
1006Australia2026-06-09
1007Italy2026-06-06
1008Germany2026-05-31
1009France2026-05-30
1010Russia2026-06-12
1011Japan2026-05-25
1012Canada2026-05-29
1013Germany2026-05-25
1014Spain2026-06-15
1015Australia2026-05-28
1016Australia2026-06-21
1017France2026-06-16
1018Argentina2026-06-12
1019Canada2026-06-20
1020Canada2026-06-20
1021India2026-06-10
1022France2026-06-03
1023Russia2026-06-16
1024Italy2026-06-21
1025Japan2026-05-27
1026Brazil2026-05-27
1027Argentina2026-06-16
1028India2026-06-14
1029Spain2026-05-25
1030Japan2026-06-01
1031United Kingdom2026-05-28
1032Germany2026-05-31
1033Germany2026-06-02
1034Argentina2026-06-01
1035Germany2026-06-04
1036Russia2026-05-25
1037Canada2026-06-07
1038France2026-06-06
1039Brazil2026-06-12
1040Canada2026-05-31
1041Argentina2026-05-26
1042United Kingdom2026-05-31
1043France2026-05-30
1044Australia2026-06-07
1045Australia2026-06-07
1046Brazil2026-05-31
1047Germany2026-06-16
1048Russia2026-06-01
1049Canada2026-06-10

On-Demand Data

NameIdCountryDate
Kaitlin Q Shinko1000Russia2026-05-30
Izzy O Flosi1001United Kingdom2026-05-31
Mayumi Q Bowley1002Australia2026-05-29
James Z Nestle1003Spain2026-06-20
Salvatore M Ostrosky1004Spain2026-06-09
Wickens R Gillian1005Germany2026-06-07
Silvio X Nestle1006Italy2026-06-04
Clifford D Rim1007India2026-06-04
Kaitlin K Rulapaugh1008Argentina2026-06-20
Alejandro H Marrier1009Japan2026-05-28
Tony B Nicka1010Russia2026-06-09
Faith J Whobrey1011Canada2026-06-04
David S Nicka1012Germany2026-06-08
Salvatore C Ruta1013France2026-06-18
Faith P Kusko1014Brazil2026-06-22
Mayumi K Ruta1015Russia2026-06-18
Jennifer K Stenseth1016Spain2026-05-29
Rodrigues S Tollner1017Germany2026-06-19
Clifford E Ruta1018Canada2026-05-25
Clifford X Saylors1019India2026-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson W FerenczUnited KingdomIvan Magalhaes UNQUALIFIED
Maria H IturbideCanadaXuxue Feng PROPOSAL
Kadeem R KuskoSpainBernardo Dominic RENEWAL
David V SaylorsJapanStephen Shaw NEW
Greenwood I SergiItalyIvan Magalhaes NEW
Ricardo S CaldareraRussiaIvan Magalhaes RENEWAL
Antonio N DilliardUnited KingdomElwin Sharvill RENEWAL
Faith W BriddickGermanyOnyama Limba NEGOTIATION
Aditya R MorascaGermanyOnyama Limba QUALIFIED
Ricardo Q VocelkaArgentinaIvan Magalhaes NEGOTIATION
Morrow X FlosiGermanyIoni Bowcher RENEWAL
Stacey Q CaldareraIndiaStephen Shaw QUALIFIED
James I ButtItalyIvan Magalhaes QUALIFIED
Leja F RoysterItalyAsiya Javayant RENEWAL
Alejandro I PoquetteGermanyBernardo Dominic NEW
Sinclair R SergiRussiaXuxue Feng RENEWAL
Juan B ShinkoArgentinaAnna Fali NEW
James Z KolmetzFranceAnna Fali NEGOTIATION
Nicolas D FlosiArgentinaStephen Shaw RENEWAL
Nicolas L RimUnited KingdomXuxue Feng RENEWAL
James X AlbaresBrazilAsiya Javayant NEGOTIATION
David W AlbaresSpainStephen Shaw UNQUALIFIED
Aruna E AlbaresCanadaOnyama Limba UNQUALIFIED
Aika W OstroskyJapanElwin Sharvill NEW
Chavez I GlickIndiaAnna Fali PROPOSAL
Costa P PoquetteCanadaAsiya Javayant UNQUALIFIED
Leon P RulapaughGermanyXuxue Feng NEGOTIATION
Munro E WaycottSpainXuxue Feng UNQUALIFIED
Stacey A FollerIndiaStephen Shaw RENEWAL
Rodrigues O DilliardSpainXuxue Feng RENEWAL
Aruna Z OldroydCanadaIvan Magalhaes PROPOSAL
Deepesh T WaycottItalyIoni Bowcher UNQUALIFIED
Morrow H MorascaItalyStephen Shaw PROPOSAL
Silvio Y AmigonUnited KingdomElwin Sharvill NEW
Costa X KolmetzSpainOnyama Limba RENEWAL
Jennifer C WhobreyBrazilBernardo Dominic PROPOSAL
Kadeem H AmigonIndiaAnna Fali RENEWAL
Ashley L PoquetteSpainStephen Shaw UNQUALIFIED
Johnson J NestleFranceAnna Fali PROPOSAL
Antonio T KolmetzGermanyAsiya Javayant NEGOTIATION

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