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
Morrow U DilliardFranceOnyama Limba PROPOSAL
Smith U BowleyFranceAnna Fali PROPOSAL
Stacey R NickaJapanStephen Shaw RENEWAL
Morrow C FlosiGermanyIvan Magalhaes NEW
Claire D WhobreySpainIvan Magalhaes RENEWAL
Aruna R GarufiGermanyAnna Fali NEGOTIATION
Jeanfrancois N AmigonBrazilElwin Sharvill RENEWAL
Nicolas G MaletGermanyBernardo Dominic UNQUALIFIED
Stacey P WaycottAustraliaAnna Fali PROPOSAL
Jeanfrancois C BowleyUnited KingdomIvan Magalhaes NEW
Misaki A BologniaSpainAnna Fali RENEWAL
Octavia U ButtGermanyAmy Elsner NEGOTIATION
Arvin Y BriddickItalyAsiya Javayant RENEWAL
Julie E AlbaresFranceBernardo Dominic NEW
Silvio D VenereItalyOnyama Limba NEW
Kaitlin V InouyeItalyBernardo Dominic NEW
Ivar W DilliardJapanBernardo Dominic PROPOSAL
Claire L DoeFranceAsiya Javayant NEW
Claire S ButtIndiaOnyama Limba QUALIFIED
Jeanfrancois D InouyeJapanIvan Magalhaes RENEWAL
Arvin W FlosiAustraliaAsiya Javayant RENEWAL
Wickens X SergiRussiaIvan Magalhaes PROPOSAL
James L MacleadUnited KingdomIvan Magalhaes PROPOSAL
Jeanfrancois M RulapaughAustraliaStephen Shaw QUALIFIED
Costa I MaletIndiaIvan Magalhaes UNQUALIFIED
Morrow T SlusarskiSpainBernardo Dominic PROPOSAL
Antonio K InouyeSpainElwin Sharvill UNQUALIFIED
Deepesh S CaudyFranceAnna Fali QUALIFIED
Maria I GauchoArgentinaBernardo Dominic PROPOSAL
Julie W NickaAustraliaXuxue Feng NEW
Octavia X SchemmerAustraliaIvan Magalhaes NEW
Misaki J VocelkaCanadaBernardo Dominic UNQUALIFIED
Wickens Y SlusarskiGermanyIvan Magalhaes QUALIFIED
Cody Z PerinRussiaAnna Fali NEW
Stacey S StensethJapanIvan Magalhaes PROPOSAL
Tony O MacleadSpainElwin Sharvill UNQUALIFIED
Munro I InouyeCanadaXuxue Feng RENEWAL
Costa S RoysterUnited KingdomBernardo Dominic PROPOSAL
Murillo G TollnerRussiaBernardo Dominic NEW
Claire J VenereIndiaElwin Sharvill PROPOSAL
Adams Q PoquetteGermanyAsiya Javayant QUALIFIED
Juan U FigeroaIndiaAsiya Javayant PROPOSAL
Alejandro T StockhamSpainOnyama Limba QUALIFIED
Leon T NestleCanadaStephen Shaw NEGOTIATION
Silvio Z GlickRussiaStephen Shaw RENEWAL
Munro H PerinSpainIvan Magalhaes NEW
Arvin W AmigonAustraliaElwin Sharvill NEW
Mayumi I GlickAustraliaAsiya Javayant PROPOSAL
Nicolas S WaycottSpainOnyama Limba RENEWAL
Ivar J PerinArgentinaAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Greenwood A CampainArgentinaElwin Sharvill RENEWAL
Ricardo U NestleRussiaXuxue Feng NEGOTIATION
Adams X WieserArgentinaOnyama Limba PROPOSAL
Clifford B WieserSpainAmy Elsner RENEWAL
Octavia N OstroskyJapanAmy Elsner UNQUALIFIED
Jefferson Q KolmetzSpainAsiya Javayant PROPOSAL
David O SergiUnited KingdomAnna Fali NEGOTIATION
Cody E SergiCanadaAsiya Javayant RENEWAL
Mayumi D SergiArgentinaBernardo Dominic QUALIFIED
Morrow J ChuiArgentinaAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika Q NestleJapan2026-05-02Rousseaux, Michael Esq QUALIFIED10Ivan Magalhaes
1001Costa A AlbaresJapan2026-04-28Chanay, Jeffrey A Esq RENEWAL74Ivan Magalhaes
1002David Z StockhamUnited Kingdom2026-04-23Dorl, James J Esq NEW84Ivan Magalhaes
1003Chavez C ButtArgentina2026-04-15Morlong Associates NEGOTIATION71Bernardo Dominic
1004Leon Z MaletBrazil2026-05-10Buckley Miller Wright QUALIFIED70Onyama Limba
1005Aruna Q NickaFrance2026-05-04Feiner Bros NEW71Elwin Sharvill
1006Julie S PoquetteGermany2026-04-24Printing Dimensions QUALIFIED64Bernardo Dominic
1007Munro R FlosiRussia2026-05-09Chanay, Jeffrey A Esq UNQUALIFIED93Xuxue Feng
1008Maisha C DilliardRussia2026-05-01Printing Dimensions PROPOSAL36Elwin Sharvill
1009Aika Q NestleRussia2026-05-05Printing Dimensions NEGOTIATION26Onyama Limba
1010Costa J DarakjyGermany2026-05-08Chapman, Ross E Esq NEW73Anna Fali
1011Greenwood W FlosiBrazil2026-04-30Dorl, James J Esq PROPOSAL73Onyama Limba
1012Faith I FerenczItaly2026-04-23Chapman, Ross E Esq QUALIFIED76Anna Fali
1013Cody H CampainCanada2026-04-29Feltz Printing Service PROPOSAL83Elwin Sharvill
1014Johnson U FigeroaAustralia2026-05-06Rangoni Of Florence RENEWAL69Ioni Bowcher
1015Maisha R BowleyJapan2026-04-16Buckley Miller Wright UNQUALIFIED3Anna Fali
1016Jefferson N WhobreyIndia2026-05-10Chapman, Ross E Esq QUALIFIED83Bernardo Dominic
1017Costa R SaylorsSpain2026-04-28Feiner Bros QUALIFIED29Onyama Limba
1018Greenwood H AlbaresSpain2026-04-15Commercial Press QUALIFIED66Xuxue Feng
1019Francesco Q GauchoRussia2026-04-14Chapman, Ross E Esq QUALIFIED70Anna Fali
1020Cody Y MacleadSpain2026-05-09Feiner Bros QUALIFIED64Stephen Shaw
1021Aditya P VocelkaFrance2026-04-25Buckley Miller Wright NEGOTIATION77Ivan Magalhaes
1022Jeanfrancois T MaletUnited Kingdom2026-05-11Chemel, James L Cpa NEGOTIATION0Elwin Sharvill
1023Sinclair P NestleCanada2026-05-07Morlong Associates RENEWAL15Xuxue Feng
1024Isabel R PerinCanada2026-05-03Commercial Press NEGOTIATION50Elwin Sharvill
1025Sinclair G FlosiCanada2026-04-23Commercial Press UNQUALIFIED92Anna Fali
1026Tony C MorascaFrance2026-05-07Commercial Press QUALIFIED57Asiya Javayant
1027Emily Q WaycottIndia2026-04-20Truhlar And Truhlar Attys NEGOTIATION65Elwin Sharvill
1028Kadeem U FigeroaBrazil2026-04-17Truhlar And Truhlar Attys RENEWAL51Elwin Sharvill
1029Nicolas E FlosiCanada2026-04-17Dorl, James J Esq NEGOTIATION62Asiya Javayant
1030Faith T FollerItaly2026-04-16Truhlar And Truhlar Attys UNQUALIFIED79Amy Elsner
1031Sinclair F RutaUnited Kingdom2026-04-14Chanay, Jeffrey A Esq UNQUALIFIED28Ioni Bowcher
1032David J WhobreyItaly2026-04-14Buckley Miller Wright QUALIFIED33Ivan Magalhaes
1033Kaitlin P ChuiUnited Kingdom2026-05-07Buckley Miller Wright UNQUALIFIED27Anna Fali
1034Wickens Q MorascaJapan2026-05-11Chapman, Ross E Esq QUALIFIED89Bernardo Dominic
1035Sinclair F KuskoAustralia2026-05-13Feiner Bros QUALIFIED52Asiya Javayant
1036Arvin B SergiCanada2026-04-17Chapman, Ross E Esq UNQUALIFIED22Anna Fali
1037Antonio C CaudyItaly2026-04-20Printing Dimensions NEGOTIATION98Ioni Bowcher
1038Silvio O StockhamRussia2026-04-19Chapman, Ross E Esq QUALIFIED91Onyama Limba
1039Aditya F KuskoAustralia2026-04-27Benton, John B Jr PROPOSAL28Ivan Magalhaes
1040Aditya D DilliardFrance2026-05-13Commercial Press NEGOTIATION73Xuxue Feng
1041Francesco A WieserUnited Kingdom2026-04-17Chanay, Jeffrey A Esq UNQUALIFIED54Xuxue Feng
1042Jones Z SlusarskiCanada2026-05-11Chanay, Jeffrey A Esq PROPOSAL11Stephen Shaw
1043Morrow K PoquetteCanada2026-05-03Rousseaux, Michael Esq RENEWAL76Onyama Limba
1044Nicolas U KolmetzBrazil2026-05-02Chanay, Jeffrey A Esq PROPOSAL0Onyama Limba
1045Sinclair M StensethBrazil2026-04-16Dorl, James J Esq NEGOTIATION5Amy Elsner
1046Adams T CampainSpain2026-04-20Rousseaux, Michael Esq RENEWAL70Anna Fali
1047Juan L AmigonBrazil2026-05-12King, Christopher A Esq UNQUALIFIED52Ivan Magalhaes
1048Munro R StockhamCanada2026-04-28Morlong Associates QUALIFIED18Onyama Limba
1049Antonio R SaylorsUnited Kingdom2026-05-06Morlong Associates PROPOSAL70Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Costa L RimIndiaBernardo Dominic RENEWAL
Ashley V FollerFranceStephen Shaw UNQUALIFIED
Mayumi E MarrierSpainStephen Shaw QUALIFIED
Smith N WhobreyCanadaIoni Bowcher UNQUALIFIED
Kaitlin E WhobreyJapanOnyama Limba NEGOTIATION
Mujtaba B AlbaresItalyAmy Elsner UNQUALIFIED
Mayumi R OldroydSpainStephen Shaw RENEWAL
Darci H FlosiAustraliaOnyama Limba QUALIFIED
Jennifer D InouyeUnited KingdomAsiya Javayant RENEWAL
Julie K PaprockiJapanOnyama Limba NEW
Maisha B StockhamCanadaXuxue Feng UNQUALIFIED
Maisha G AmigonUnited KingdomElwin Sharvill NEGOTIATION
Leja Q RulapaughUnited KingdomAnna Fali NEW
Salvatore W WieserArgentinaAmy Elsner UNQUALIFIED
Aika S CaudyCanadaElwin Sharvill NEGOTIATION
Isabel W VocelkaJapanBernardo Dominic PROPOSAL
Silvio N PaprockiArgentinaAsiya Javayant NEGOTIATION
Kadeem N GillianRussiaIoni Bowcher PROPOSAL
Smith C FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Cody Y WhobreyItalyOnyama Limba NEGOTIATION
Salvatore A TollnerIndiaElwin Sharvill NEW
Octavia F SergiGermanyBernardo Dominic UNQUALIFIED
James B OldroydArgentinaAsiya Javayant QUALIFIED
Clifford Y AmigonUnited KingdomStephen Shaw QUALIFIED
Sinclair U PerinJapanStephen Shaw PROPOSAL
Johnson A VenereUnited KingdomStephen Shaw QUALIFIED
Darci D GauchoFranceXuxue Feng UNQUALIFIED
Silvio R ShinkoArgentinaBernardo Dominic NEW
Clifford H WhobreyJapanIoni Bowcher NEW
Antonio H WieserBrazilElwin Sharvill RENEWAL
Juan X CaldareraRussiaOnyama Limba NEGOTIATION
Stacey C KuskoBrazilOnyama Limba PROPOSAL
Stacey H MarrierItalyAmy Elsner NEGOTIATION
Nicolas E FollerUnited KingdomBernardo Dominic QUALIFIED
Silvio R VocelkaJapanIoni Bowcher QUALIFIED
Faith L WieserBrazilOnyama Limba QUALIFIED
Sinclair K VocelkaFranceIvan Magalhaes NEW
Julie B GauchoSpainAnna Fali QUALIFIED
Misaki F VenereCanadaStephen Shaw NEGOTIATION
Isabel S GauchoFranceOnyama Limba RENEWAL
Greenwood X PerinGermanyIvan Magalhaes NEGOTIATION
Misaki B RoysterBrazilOnyama Limba NEGOTIATION
Faith A SlusarskiJapanElwin Sharvill RENEWAL
Maria J SergiGermanyIvan Magalhaes RENEWAL
Murillo V GlickAustraliaIoni Bowcher UNQUALIFIED
Misaki I DoeBrazilElwin Sharvill NEW
Misaki A SlusarskiGermanyStephen Shaw UNQUALIFIED
Ricardo M KuskoRussiaIoni Bowcher PROPOSAL
Clifford S ShinkoAustraliaIvan Magalhaes QUALIFIED
David J TollnerArgentinaAnna Fali NEGOTIATION
Frozen Columns
Name
James N Nestle
Jones K Stenseth
Faith S Maclead
Mujtaba S Glick
Adams O Doe
Stacey S Amigon
Silvio C Glick
Francesco L Figeroa
Arvin X Waycott
Sinclair X Royster
Rodrigues X Iturbide
Aika X Rulapaugh
Jones R Kusko
Aruna W Malet
Maisha U Rulapaugh
Jefferson R Rim
Izzy Y Kusko
Ashley W Amigon
Rodrigues R Stockham
Aruna W Chui
Aditya X Slusarski
Nicolas X Saylors
Izzy H Royster
David O Briddick
Alejandro E Rim
Juan Z Wieser
Maria J Marrier
Mayumi T Rulapaugh
Claire T Bolognia
Cody B Campain
Silvio G Gaucho
Antonio T Saylors
Jefferson C Foller
Julie S Venere
Ashley A Kolmetz
Silvio I Waycott
Julie A Albares
James N Tollner
Ashley C Tollner
Murillo Q Whobrey
Maisha G Schemmer
Antonio V Maclead
Maria G Gaucho
Francesco L Flosi
Ricardo S Figeroa
Faith S Waycott
Ivar Y Darakjy
Alejandro C Stenseth
Faith Z Perin
Ashley T Amigon
IdCountryDate
1000Italy2026-04-18
1001Brazil2026-04-24
1002Germany2026-04-26
1003Spain2026-05-05
1004Spain2026-04-19
1005Italy2026-05-10
1006Australia2026-04-16
1007Italy2026-04-25
1008Russia2026-05-08
1009United Kingdom2026-05-10
1010Canada2026-05-01
1011Italy2026-04-23
1012Brazil2026-04-17
1013Australia2026-04-24
1014Italy2026-04-15
1015Germany2026-05-06
1016Italy2026-05-07
1017Spain2026-04-16
1018France2026-04-22
1019Canada2026-05-05
1020Argentina2026-04-30
1021Spain2026-05-07
1022Australia2026-05-05
1023India2026-04-23
1024India2026-05-11
1025Brazil2026-04-17
1026Brazil2026-04-18
1027Argentina2026-05-03
1028Japan2026-05-12
1029United Kingdom2026-05-07
1030Italy2026-05-13
1031Japan2026-04-28
1032United Kingdom2026-05-11
1033Japan2026-05-10
1034United Kingdom2026-04-25
1035Brazil2026-05-02
1036France2026-04-23
1037Germany2026-04-21
1038Argentina2026-04-15
1039Germany2026-05-11
1040Japan2026-04-23
1041Japan2026-04-23
1042India2026-04-23
1043Argentina2026-04-25
1044Japan2026-04-30
1045Argentina2026-05-11
1046France2026-04-19
1047Australia2026-04-16
1048Argentina2026-04-20
1049Russia2026-04-28

On-Demand Data

NameIdCountryDate
Deepesh N Albares1000Japan2026-04-26
Alejandro B Oldroyd1001Canada2026-04-25
Francesco I Caldarera1002Italy2026-04-16
Darci R Doe1003Russia2026-04-29
Francesco V Gillian1004Spain2026-05-12
Leon M Caudy1005Brazil2026-04-29
Chavez K Poquette1006Japan2026-05-13
Costa G Stockham1007Italy2026-04-20
Wickens F Ruta1008United Kingdom2026-05-12
Deepesh M Iturbide1009Spain2026-04-19
Greenwood D Iturbide1010Canada2026-05-05
Francesco E Royster1011Canada2026-05-11
Ashley G Saylors1012United Kingdom2026-04-19
Deepesh E Bolognia1013Germany2026-04-26
Izzy A Oldroyd1014Argentina2026-04-28
Jeanfrancois U Stenseth1015Germany2026-04-17
Aruna N Venere1016Russia2026-05-08
Juan W Slusarski1017Australia2026-05-07
Ricardo X Gillian1018Spain2026-04-25
Faith U Iturbide1019Spain2026-04-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon K ChuiBrazilAnna Fali UNQUALIFIED
Munro N AlbaresFranceBernardo Dominic UNQUALIFIED
Nicolas Q TollnerArgentinaAsiya Javayant UNQUALIFIED
Aika A InouyeItalyBernardo Dominic NEGOTIATION
Leja W MorascaFranceOnyama Limba QUALIFIED
Faith C BologniaArgentinaXuxue Feng NEW
James S FlosiJapanAnna Fali NEW
Nicolas Y ShinkoBrazilXuxue Feng NEW
Clifford K BriddickUnited KingdomElwin Sharvill PROPOSAL
Francesco Y CampainJapanXuxue Feng RENEWAL
Ricardo X PoquetteItalyIvan Magalhaes NEW
Costa I DoeBrazilAmy Elsner PROPOSAL
Emily U IturbideFranceBernardo Dominic UNQUALIFIED
Juan L ShinkoGermanyAnna Fali RENEWAL
Salvatore A RoysterArgentinaStephen Shaw NEGOTIATION
Tony R MaletArgentinaAnna Fali PROPOSAL
Salvatore F SergiCanadaIoni Bowcher UNQUALIFIED
Alejandro Q SlusarskiRussiaAsiya Javayant PROPOSAL
Aika K DoeFranceIoni Bowcher NEGOTIATION
Juan P PerinRussiaIvan Magalhaes RENEWAL
Ivar H ChuiAustraliaAsiya Javayant RENEWAL
Murillo M PerinJapanAmy Elsner RENEWAL
David O CampainIndiaElwin Sharvill NEW
Jennifer Q RoysterIndiaAsiya Javayant QUALIFIED
Cody B BowleyIndiaElwin Sharvill RENEWAL
Jefferson V WieserJapanIoni Bowcher QUALIFIED
Maisha T RulapaughItalyStephen Shaw UNQUALIFIED
Ricardo I WaycottIndiaIoni Bowcher QUALIFIED
Ricardo A GarufiItalyIoni Bowcher PROPOSAL
Stacey U SergiJapanAmy Elsner NEW
Kaitlin K VenereBrazilIvan Magalhaes QUALIFIED
Silvio M MarrierJapanAnna Fali PROPOSAL
Ashley H DoeSpainBernardo Dominic RENEWAL
Julie D DilliardAustraliaBernardo Dominic RENEWAL
Antonio F MaletBrazilIoni Bowcher NEW
Ivar U VocelkaGermanyIoni Bowcher NEW
Munro C SchemmerUnited KingdomAsiya Javayant QUALIFIED
Ashley Q CaudyBrazilOnyama Limba NEGOTIATION
Adams F GillianGermanyOnyama Limba QUALIFIED
Octavia A PaprockiAustraliaXuxue Feng 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.