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
Misaki I FerenczFranceStephen Shaw UNQUALIFIED
Leja Y FollerItalyIvan Magalhaes NEGOTIATION
Emily I AlbaresRussiaAsiya Javayant PROPOSAL
Salvatore I MaletArgentinaIvan Magalhaes QUALIFIED
Jennifer D NickaCanadaStephen Shaw QUALIFIED
Jefferson J PaprockiIndiaIoni Bowcher NEGOTIATION
Chavez V GauchoArgentinaStephen Shaw NEW
Claire G KolmetzAustraliaBernardo Dominic UNQUALIFIED
Misaki L InouyeRussiaAnna Fali UNQUALIFIED
Salvatore P WhobreyIndiaAnna Fali RENEWAL
Kadeem N PoquetteRussiaElwin Sharvill UNQUALIFIED
Wickens C BriddickJapanAmy Elsner NEGOTIATION
Deepesh B OldroydUnited KingdomStephen Shaw NEW
Leon X GarufiAustraliaXuxue Feng PROPOSAL
Salvatore Y NestleAustraliaIvan Magalhaes NEGOTIATION
Tony O SlusarskiGermanyXuxue Feng QUALIFIED
Munro P FerenczUnited KingdomXuxue Feng UNQUALIFIED
Rodrigues A MaletItalyAnna Fali QUALIFIED
Cody F GarufiBrazilIvan Magalhaes PROPOSAL
Francesco N PaprockiBrazilElwin Sharvill RENEWAL
Aika R RimGermanyAnna Fali PROPOSAL
Aika I OldroydSpainElwin Sharvill PROPOSAL
Octavia W ShinkoIndiaXuxue Feng NEGOTIATION
Aditya M CaldareraBrazilAsiya Javayant NEW
Ivar E PerinIndiaOnyama Limba NEW
Izzy B RimSpainAsiya Javayant QUALIFIED
Francesco Z StensethRussiaXuxue Feng NEGOTIATION
Izzy W GlickItalyBernardo Dominic UNQUALIFIED
Aruna S DoeJapanXuxue Feng QUALIFIED
Wickens O AmigonJapanAsiya Javayant UNQUALIFIED
Octavia G FollerRussiaOnyama Limba NEW
Smith F WaycottAustraliaIvan Magalhaes QUALIFIED
Clifford T GlickJapanElwin Sharvill RENEWAL
Smith F BologniaArgentinaAsiya Javayant NEGOTIATION
Silvio R SchemmerItalyAsiya Javayant QUALIFIED
Deepesh O NestleGermanyBernardo Dominic QUALIFIED
Stacey C MaletBrazilXuxue Feng RENEWAL
Izzy N WieserSpainStephen Shaw NEGOTIATION
Kaitlin Z TollnerAustraliaOnyama Limba UNQUALIFIED
Leja H InouyeSpainElwin Sharvill NEW
Juan W BriddickItalyIoni Bowcher RENEWAL
Costa P CampainArgentinaStephen Shaw NEGOTIATION
Isabel O StensethBrazilIvan Magalhaes RENEWAL
Wickens P StensethFranceAsiya Javayant NEGOTIATION
Emily Z BriddickSpainIvan Magalhaes QUALIFIED
Juan B FerenczSpainAsiya Javayant NEW
Darci D PerinBrazilXuxue Feng RENEWAL
Salvatore T ChuiRussiaElwin Sharvill NEGOTIATION
Maria J ShinkoUnited KingdomBernardo Dominic NEGOTIATION
Octavia X OldroydFranceIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Rodrigues C ChuiRussiaAnna Fali NEW
Jefferson R ChuiItalyStephen Shaw NEW
Misaki K SaylorsItalyAnna Fali QUALIFIED
Sinclair X MarrierItalyBernardo Dominic NEGOTIATION
Kaitlin H NickaItalyAsiya Javayant UNQUALIFIED
Jennifer K DilliardAustraliaIoni Bowcher NEGOTIATION
Ricardo O ShinkoCanadaElwin Sharvill RENEWAL
Aditya E NickaRussiaXuxue Feng NEGOTIATION
Faith J SchemmerJapanIoni Bowcher PROPOSAL
Stacey F MarrierCanadaAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia Y TollnerUnited Kingdom2026-06-06Rangoni Of Florence QUALIFIED36Elwin Sharvill
1001Antonio U WhobreyItaly2026-06-13Commercial Press UNQUALIFIED29Ioni Bowcher
1002Jefferson L FlosiFrance2026-06-07Benton, John B Jr QUALIFIED69Ioni Bowcher
1003Cody F ShinkoIndia2026-06-03Chanay, Jeffrey A Esq NEW70Xuxue Feng
1004Antonio O IturbideUnited Kingdom2026-06-01Truhlar And Truhlar Attys PROPOSAL75Asiya Javayant
1005Jennifer S AmigonJapan2026-05-26Truhlar And Truhlar Attys PROPOSAL40Xuxue Feng
1006Mayumi G AlbaresIndia2026-05-25Printing Dimensions RENEWAL45Elwin Sharvill
1007Silvio S DilliardSpain2026-06-11King, Christopher A Esq QUALIFIED62Ioni Bowcher
1008Sinclair S FerenczRussia2026-06-16Buckley Miller Wright QUALIFIED26Asiya Javayant
1009Izzy P SergiJapan2026-06-11Commercial Press UNQUALIFIED22Bernardo Dominic
1010Clifford M ButtGermany2026-06-14King, Christopher A Esq QUALIFIED9Ioni Bowcher
1011Izzy X VocelkaArgentina2026-05-22Chemel, James L Cpa NEGOTIATION4Stephen Shaw
1012Johnson R FollerUnited Kingdom2026-05-23Truhlar And Truhlar Attys RENEWAL98Xuxue Feng
1013Johnson O BriddickBrazil2026-06-16King, Christopher A Esq UNQUALIFIED66Elwin Sharvill
1014Jefferson N StockhamSpain2026-05-22Printing Dimensions NEGOTIATION20Ioni Bowcher
1015Tony E VocelkaIndia2026-05-27Benton, John B Jr QUALIFIED29Xuxue Feng
1016Leja Z FerenczUnited Kingdom2026-06-12Buckley Miller Wright RENEWAL23Stephen Shaw
1017Mujtaba C BowleyRussia2026-06-11Chanay, Jeffrey A Esq RENEWAL45Ioni Bowcher
1018Morrow O StockhamBrazil2026-05-28Rousseaux, Michael Esq PROPOSAL25Bernardo Dominic
1019Clifford D SchemmerCanada2026-06-04Rousseaux, Michael Esq NEW70Elwin Sharvill
1020Octavia E MaletFrance2026-05-20Feltz Printing Service QUALIFIED71Xuxue Feng
1021Francesco R TollnerSpain2026-06-14Rangoni Of Florence NEW24Onyama Limba
1022Munro Y BriddickAustralia2026-05-19Rousseaux, Michael Esq UNQUALIFIED50Anna Fali
1023Misaki B SergiCanada2026-06-15Chanay, Jeffrey A Esq RENEWAL58Ivan Magalhaes
1024Munro N WaycottSpain2026-06-01Commercial Press NEW66Anna Fali
1025Adams M RulapaughBrazil2026-05-23Rangoni Of Florence NEGOTIATION50Amy Elsner
1026Kaitlin T CampainCanada2026-06-11Chapman, Ross E Esq UNQUALIFIED97Onyama Limba
1027Jeanfrancois Y WieserAustralia2026-06-10Feiner Bros QUALIFIED3Stephen Shaw
1028Greenwood Q MorascaCanada2026-06-02Truhlar And Truhlar Attys QUALIFIED20Asiya Javayant
1029Salvatore J PerinJapan2026-06-11Rangoni Of Florence RENEWAL87Anna Fali
1030Jennifer D DilliardItaly2026-06-01Commercial Press NEGOTIATION36Ivan Magalhaes
1031Jennifer X FollerArgentina2026-06-04Benton, John B Jr NEGOTIATION70Asiya Javayant
1032Francesco A KuskoItaly2026-06-01Dorl, James J Esq NEW29Amy Elsner
1033Arvin M SlusarskiSpain2026-05-25Rangoni Of Florence QUALIFIED87Xuxue Feng
1034Claire W PaprockiRussia2026-06-08Rangoni Of Florence RENEWAL91Anna Fali
1035Izzy M SchemmerJapan2026-05-21Chapman, Ross E Esq QUALIFIED59Elwin Sharvill
1036Rodrigues O IturbideCanada2026-06-14Truhlar And Truhlar Attys QUALIFIED75Ioni Bowcher
1037Jennifer Q TollnerUnited Kingdom2026-05-22Feltz Printing Service RENEWAL30Elwin Sharvill
1038Julie J DilliardJapan2026-06-05Feiner Bros NEW83Amy Elsner
1039Jeanfrancois C OstroskyCanada2026-05-31Commercial Press RENEWAL24Xuxue Feng
1040Darci O BowleyUnited Kingdom2026-06-04Feiner Bros UNQUALIFIED72Bernardo Dominic
1041Johnson T AlbaresJapan2026-06-13Benton, John B Jr UNQUALIFIED34Ioni Bowcher
1042Kadeem V PoquetteFrance2026-05-31Chapman, Ross E Esq PROPOSAL89Bernardo Dominic
1043Jones D InouyeAustralia2026-05-23Commercial Press NEGOTIATION40Ivan Magalhaes
1044Arvin Z RutaCanada2026-05-19Rangoni Of Florence RENEWAL39Asiya Javayant
1045Wickens B GarufiGermany2026-05-23Buckley Miller Wright PROPOSAL17Ioni Bowcher
1046Faith L ShinkoJapan2026-06-14Rangoni Of Florence NEW84Bernardo Dominic
1047Stacey R SaylorsBrazil2026-06-14Truhlar And Truhlar Attys PROPOSAL62Ivan Magalhaes
1048Greenwood F InouyeRussia2026-05-18Chanay, Jeffrey A Esq UNQUALIFIED67Ioni Bowcher
1049Emily Q FollerArgentina2026-05-24Commercial Press NEW37Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Arvin J IturbideBrazilElwin Sharvill UNQUALIFIED
Alejandro B DilliardFranceBernardo Dominic QUALIFIED
Mayumi P PaprockiArgentinaIoni Bowcher RENEWAL
Juan J MorascaCanadaAmy Elsner QUALIFIED
Claire V NestleCanadaAnna Fali RENEWAL
Rodrigues F InouyeSpainAmy Elsner NEGOTIATION
Mayumi Z RulapaughSpainAnna Fali PROPOSAL
Claire B DoeBrazilAnna Fali NEGOTIATION
Silvio J CaldareraUnited KingdomStephen Shaw PROPOSAL
Misaki E VenereGermanyAnna Fali QUALIFIED
Leon S ShinkoGermanyIoni Bowcher NEGOTIATION
Clifford W ShinkoGermanyIvan Magalhaes UNQUALIFIED
Alejandro M GillianBrazilElwin Sharvill PROPOSAL
Costa O DoeJapanAnna Fali QUALIFIED
James Q DarakjyBrazilIvan Magalhaes NEGOTIATION
Murillo R SergiFranceAnna Fali RENEWAL
Adams Z DarakjySpainElwin Sharvill QUALIFIED
Maisha R VenereRussiaIvan Magalhaes NEW
Leon T KuskoBrazilAsiya Javayant QUALIFIED
Costa L KuskoGermanyBernardo Dominic NEGOTIATION
Smith Y RoysterCanadaStephen Shaw RENEWAL
Arvin M GlickSpainXuxue Feng UNQUALIFIED
Juan G KolmetzAustraliaOnyama Limba NEW
Jefferson M FigeroaRussiaAmy Elsner PROPOSAL
Deepesh K WieserArgentinaElwin Sharvill UNQUALIFIED
Misaki I SaylorsUnited KingdomAnna Fali NEGOTIATION
Wickens A PaprockiCanadaAsiya Javayant RENEWAL
James M StockhamArgentinaAnna Fali UNQUALIFIED
Aditya E DarakjyFranceBernardo Dominic QUALIFIED
Juan N OldroydAustraliaElwin Sharvill NEW
Faith I SlusarskiJapanOnyama Limba QUALIFIED
Francesco I AlbaresCanadaXuxue Feng NEGOTIATION
Sinclair I CampainBrazilStephen Shaw PROPOSAL
Clifford M BologniaSpainBernardo Dominic UNQUALIFIED
Francesco R WieserIndiaXuxue Feng PROPOSAL
Juan Z BowleyFranceStephen Shaw RENEWAL
Mujtaba C CampainGermanyAsiya Javayant NEGOTIATION
Chavez D GarufiIndiaElwin Sharvill NEGOTIATION
Adams N AmigonAustraliaAnna Fali PROPOSAL
Faith M StockhamSpainStephen Shaw PROPOSAL
Maisha I SergiCanadaBernardo Dominic NEGOTIATION
Julie D FollerBrazilElwin Sharvill NEW
Julie C AmigonSpainOnyama Limba PROPOSAL
Maria K BowleyRussiaAmy Elsner PROPOSAL
Murillo A FlosiJapanElwin Sharvill NEGOTIATION
Ivar A MacleadIndiaAmy Elsner RENEWAL
Maisha L GauchoSpainAmy Elsner PROPOSAL
James P GauchoIndiaBernardo Dominic NEGOTIATION
Kadeem G AlbaresItalyAmy Elsner NEW
Ricardo E PaprockiUnited KingdomIoni Bowcher QUALIFIED
Frozen Columns
Name
Salvatore G Doe
Jones B Inouye
Ivar R Ruta
Deepesh Z Waycott
Maria L Ferencz
Misaki N Briddick
Cody A Bowley
Arvin B Amigon
Salvatore V Gaucho
Juan S Paprocki
Mujtaba E Maclead
Aika T Darakjy
Jennifer G Schemmer
Octavia C Kusko
Jefferson F Figeroa
Munro F Oldroyd
Emily O Malet
Aruna I Marrier
Chavez C Whobrey
Jeanfrancois F Bowley
Isabel J Butt
Jefferson G Waycott
Murillo X Caudy
Aditya L Iturbide
Arvin V Shinko
Costa U Malet
Izzy S Nestle
Stacey Y Ostrosky
Kaitlin T Marrier
Antonio V Sergi
Greenwood L Campain
Faith A Gillian
James X Kusko
Arvin F Darakjy
Stacey Y Tollner
Nicolas K Rulapaugh
Deepesh C Kolmetz
Jennifer C Poquette
Rodrigues P Schemmer
Jefferson R Stenseth
Izzy K Vocelka
Aditya D Gillian
Maria N Ruta
Murillo N Sergi
Jefferson G Albares
Isabel E Amigon
Munro C Rim
Tony Z Venere
Arvin I Ruta
Tony Z Stockham
IdCountryDate
1000Italy2026-06-16
1001Australia2026-06-10
1002Spain2026-05-27
1003India2026-06-06
1004Germany2026-06-02
1005Japan2026-05-31
1006Brazil2026-05-29
1007Germany2026-05-31
1008Japan2026-06-10
1009France2026-06-02
1010Argentina2026-05-30
1011Argentina2026-06-01
1012Russia2026-05-20
1013Germany2026-05-25
1014Russia2026-05-27
1015Japan2026-06-09
1016France2026-05-24
1017Spain2026-06-05
1018United Kingdom2026-05-24
1019Russia2026-05-25
1020Germany2026-06-07
1021Argentina2026-05-21
1022Canada2026-06-06
1023Germany2026-05-31
1024Russia2026-06-16
1025Russia2026-05-19
1026Spain2026-06-09
1027United Kingdom2026-05-24
1028India2026-05-30
1029Argentina2026-05-29
1030Germany2026-06-03
1031Canada2026-06-02
1032Italy2026-06-09
1033Spain2026-06-07
1034Russia2026-06-15
1035France2026-05-30
1036Russia2026-05-23
1037United Kingdom2026-06-09
1038United Kingdom2026-05-28
1039Russia2026-05-24
1040France2026-06-09
1041Australia2026-06-10
1042Australia2026-06-09
1043Russia2026-05-28
1044United Kingdom2026-05-20
1045United Kingdom2026-06-08
1046Germany2026-06-12
1047Canada2026-06-14
1048Argentina2026-05-29
1049Japan2026-06-12

On-Demand Data

NameIdCountryDate
Jones X Shinko1000Brazil2026-05-21
James Y Wieser1001Japan2026-05-28
Alejandro Q Ferencz1002Canada2026-06-11
Darci H Perin1003France2026-05-22
Aditya H Albares1004France2026-05-27
Ricardo E Inouye1005Italy2026-05-30
James G Stockham1006Spain2026-06-11
Chavez T Shinko1007Spain2026-05-28
Claire B Venere1008Germany2026-06-03
Jeanfrancois K Caldarera1009United Kingdom2026-05-20
Silvio R Albares1010France2026-06-12
Arvin X Vocelka1011Spain2026-05-20
Munro X Schemmer1012Brazil2026-06-08
Deepesh H Amigon1013Italy2026-05-18
Claire R Ruta1014Japan2026-06-16
Ashley W Albares1015Brazil2026-06-11
Aika T Tollner1016Japan2026-06-09
Morrow R Caudy1017Italy2026-06-12
Stacey J Paprocki1018Japan2026-06-07
Morrow K Morasca1019India2026-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens Y GlickCanadaIvan Magalhaes QUALIFIED
Costa K BowleyAustraliaXuxue Feng UNQUALIFIED
Ivar U SlusarskiUnited KingdomAsiya Javayant QUALIFIED
Jefferson A OstroskySpainAsiya Javayant NEW
Faith N NickaSpainIvan Magalhaes RENEWAL
James U BologniaBrazilAmy Elsner NEW
Johnson B SergiGermanyAsiya Javayant QUALIFIED
Deepesh Y FigeroaFranceAmy Elsner QUALIFIED
Adams F ChuiJapanIoni Bowcher NEGOTIATION
Maria F GillianAustraliaAmy Elsner NEGOTIATION
Jeanfrancois I NestleItalyAnna Fali NEW
Johnson Z GillianGermanyAmy Elsner PROPOSAL
Clifford P KuskoArgentinaXuxue Feng NEGOTIATION
Leja M ShinkoUnited KingdomAmy Elsner NEW
Rodrigues X CampainFranceBernardo Dominic NEGOTIATION
Jeanfrancois F VenereUnited KingdomBernardo Dominic UNQUALIFIED
Isabel T GarufiUnited KingdomIoni Bowcher NEW
Jennifer I RutaSpainAmy Elsner QUALIFIED
Adams A CaudySpainAnna Fali NEW
Alejandro O NickaIndiaElwin Sharvill NEW
Stacey L RutaRussiaOnyama Limba UNQUALIFIED
James S VocelkaFranceIvan Magalhaes QUALIFIED
Antonio O FerenczUnited KingdomOnyama Limba RENEWAL
Murillo B WhobreyIndiaBernardo Dominic RENEWAL
Mayumi A StensethAustraliaBernardo Dominic NEW
Cody Z GillianItalyAsiya Javayant NEW
Julie M BowleyItalyOnyama Limba PROPOSAL
Leja C CaldareraCanadaIvan Magalhaes RENEWAL
Wickens R SergiFranceOnyama Limba NEW
Izzy A RulapaughArgentinaBernardo Dominic QUALIFIED
David D RimJapanAmy Elsner UNQUALIFIED
Isabel M DilliardJapanBernardo Dominic NEGOTIATION
Juan K SchemmerRussiaAsiya Javayant PROPOSAL
Kaitlin G StockhamUnited KingdomStephen Shaw UNQUALIFIED
David J FlosiIndiaElwin Sharvill NEW
Francesco U WaycottBrazilIvan Magalhaes QUALIFIED
Salvatore D NestleIndiaIoni Bowcher NEW
Antonio K GlickGermanyXuxue Feng PROPOSAL
Kaitlin E CampainBrazilAmy Elsner QUALIFIED
Sinclair L SergiSpainElwin Sharvill 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.