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
Kaitlin V OstroskyIndiaBernardo Dominic NEW
David I FlosiRussiaElwin Sharvill PROPOSAL
Octavia P OstroskyUnited KingdomElwin Sharvill QUALIFIED
Ivar K PaprockiItalyAnna Fali NEGOTIATION
Sinclair D BologniaSpainOnyama Limba NEW
Tony Y GauchoUnited KingdomOnyama Limba RENEWAL
Sinclair J StockhamCanadaAnna Fali RENEWAL
Kaitlin G SaylorsItalyIoni Bowcher RENEWAL
Mayumi G CaldareraFranceIoni Bowcher RENEWAL
Wickens W MaletArgentinaIoni Bowcher PROPOSAL
Ricardo M PerinJapanIoni Bowcher NEGOTIATION
Leja A RoysterUnited KingdomAsiya Javayant NEW
Costa H PoquetteFranceStephen Shaw QUALIFIED
Darci L OldroydBrazilAsiya Javayant PROPOSAL
Deepesh N SergiUnited KingdomXuxue Feng QUALIFIED
Mujtaba R PaprockiGermanyAnna Fali RENEWAL
Greenwood V InouyeFranceIoni Bowcher QUALIFIED
Ricardo D RimRussiaAmy Elsner NEW
Alejandro M PoquetteAustraliaOnyama Limba NEW
Arvin H CaldareraFranceOnyama Limba QUALIFIED
Jones T ButtSpainIoni Bowcher PROPOSAL
Antonio S GauchoCanadaXuxue Feng NEW
Chavez X MacleadIndiaAsiya Javayant PROPOSAL
Tony O AmigonGermanyAnna Fali UNQUALIFIED
Leon R CaldareraItalyBernardo Dominic PROPOSAL
Rodrigues X RutaGermanyIvan Magalhaes UNQUALIFIED
Stacey O DarakjyFranceXuxue Feng NEW
Kaitlin D OldroydRussiaOnyama Limba PROPOSAL
Emily C RutaIndiaIvan Magalhaes RENEWAL
Francesco W SlusarskiGermanyOnyama Limba NEGOTIATION
Ricardo A PoquetteSpainStephen Shaw UNQUALIFIED
Arvin H TollnerItalyOnyama Limba NEW
Isabel Y CaldareraGermanyXuxue Feng UNQUALIFIED
Aditya I WieserItalyOnyama Limba PROPOSAL
James C VocelkaSpainXuxue Feng PROPOSAL
Jennifer V CaudyJapanElwin Sharvill QUALIFIED
Aruna A FigeroaRussiaOnyama Limba UNQUALIFIED
Adams X DilliardAustraliaAnna Fali PROPOSAL
Aditya A AmigonGermanyIvan Magalhaes NEGOTIATION
Antonio R PoquetteGermanyBernardo Dominic NEW
Maria B SaylorsSpainOnyama Limba QUALIFIED
Emily I VenereRussiaElwin Sharvill QUALIFIED
James H IturbideItalyStephen Shaw UNQUALIFIED
Jones U FigeroaUnited KingdomBernardo Dominic PROPOSAL
Silvio T ButtUnited KingdomElwin Sharvill NEGOTIATION
Clifford W FollerSpainOnyama Limba NEW
Claire C GlickFranceAsiya Javayant UNQUALIFIED
Aika O VocelkaSpainIvan Magalhaes QUALIFIED
Johnson V RutaArgentinaXuxue Feng PROPOSAL
Jones V SaylorsFranceStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood K FlosiRussiaIoni Bowcher QUALIFIED
Sinclair K MorascaIndiaAsiya Javayant PROPOSAL
Stacey C AlbaresIndiaAnna Fali PROPOSAL
Wickens X WaycottBrazilOnyama Limba QUALIFIED
Sinclair L AlbaresFranceIvan Magalhaes PROPOSAL
Maria X BologniaUnited KingdomAsiya Javayant QUALIFIED
Ricardo W CaudyCanadaXuxue Feng PROPOSAL
Aika H ChuiItalyAsiya Javayant UNQUALIFIED
Ashley X DoeAustraliaAsiya Javayant NEW
Octavia J CaldareraJapanElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody U RutaUnited Kingdom2026-05-25Benton, John B Jr NEW13Ioni Bowcher
1001Jeanfrancois S MorascaGermany2026-05-09Feiner Bros UNQUALIFIED44Anna Fali
1002Octavia L FollerJapan2026-05-28Chemel, James L Cpa QUALIFIED87Ioni Bowcher
1003Kaitlin N BologniaGermany2026-05-01Morlong Associates PROPOSAL27Asiya Javayant
1004Deepesh T ShinkoIndia2026-05-22Feltz Printing Service PROPOSAL41Ioni Bowcher
1005Izzy R MaletFrance2026-05-18Rangoni Of Florence PROPOSAL42Xuxue Feng
1006Misaki I AlbaresRussia2026-05-12Chemel, James L Cpa PROPOSAL25Asiya Javayant
1007Munro W MaletArgentina2026-05-22Chemel, James L Cpa UNQUALIFIED97Asiya Javayant
1008Johnson I ShinkoRussia2026-05-22Commercial Press NEGOTIATION22Anna Fali
1009Ivar Y PaprockiBrazil2026-05-27Chemel, James L Cpa NEGOTIATION15Ioni Bowcher
1010Faith F MaletJapan2026-05-10Chapman, Ross E Esq QUALIFIED69Ivan Magalhaes
1011Kaitlin G CampainBrazil2026-05-16King, Christopher A Esq RENEWAL96Amy Elsner
1012Morrow L DoeItaly2026-05-10Rangoni Of Florence UNQUALIFIED42Ioni Bowcher
1013Clifford S NestleJapan2026-05-03Chanay, Jeffrey A Esq RENEWAL75Anna Fali
1014Jefferson Z GauchoGermany2026-05-21Benton, John B Jr PROPOSAL50Onyama Limba
1015Deepesh J RimRussia2026-05-04Morlong Associates RENEWAL90Amy Elsner
1016Ricardo I MacleadAustralia2026-05-09Rousseaux, Michael Esq PROPOSAL78Bernardo Dominic
1017Mayumi A DoeJapan2026-05-13King, Christopher A Esq NEW95Elwin Sharvill
1018Silvio T OstroskyFrance2026-05-10Commercial Press QUALIFIED57Elwin Sharvill
1019Ashley Z FerenczUnited Kingdom2026-05-11Chapman, Ross E Esq QUALIFIED85Asiya Javayant
1020Leja Y NestleIndia2026-05-15Printing Dimensions NEGOTIATION12Stephen Shaw
1021Antonio S BologniaBrazil2026-05-15Benton, John B Jr QUALIFIED73Asiya Javayant
1022Costa X RimArgentina2026-05-07Rangoni Of Florence RENEWAL39Ioni Bowcher
1023Ricardo H PerinGermany2026-05-19Truhlar And Truhlar Attys UNQUALIFIED92Xuxue Feng
1024Ashley F FigeroaGermany2026-05-16Dorl, James J Esq QUALIFIED62Anna Fali
1025Izzy H VenereItaly2026-05-04Dorl, James J Esq RENEWAL51Ioni Bowcher
1026Sinclair I StensethArgentina2026-05-23Chanay, Jeffrey A Esq PROPOSAL62Ioni Bowcher
1027Kadeem I BowleyFrance2026-05-17Rousseaux, Michael Esq RENEWAL39Onyama Limba
1028Ricardo B AmigonAustralia2026-05-08Truhlar And Truhlar Attys PROPOSAL49Elwin Sharvill
1029Jennifer V FerenczIndia2026-05-10Commercial Press NEGOTIATION14Ivan Magalhaes
1030Rodrigues O RutaIndia2026-05-17Buckley Miller Wright UNQUALIFIED72Ioni Bowcher
1031Greenwood M SchemmerRussia2026-05-01Rangoni Of Florence NEGOTIATION25Ioni Bowcher
1032Morrow C AmigonIndia2026-05-03Feiner Bros NEW12Amy Elsner
1033Mayumi D GlickAustralia2026-05-14Chapman, Ross E Esq NEW88Asiya Javayant
1034Octavia E SchemmerCanada2026-05-26Feiner Bros QUALIFIED74Asiya Javayant
1035Juan E VocelkaBrazil2026-05-16Morlong Associates NEGOTIATION5Ioni Bowcher
1036Morrow H PoquetteItaly2026-05-09King, Christopher A Esq NEGOTIATION58Onyama Limba
1037Stacey D ChuiItaly2026-05-15Chanay, Jeffrey A Esq PROPOSAL88Ioni Bowcher
1038Antonio V IturbideGermany2026-05-10Commercial Press NEGOTIATION85Xuxue Feng
1039Ivar U SergiJapan2026-05-26Dorl, James J Esq NEGOTIATION30Onyama Limba
1040Costa V GillianItaly2026-05-22Buckley Miller Wright PROPOSAL53Asiya Javayant
1041Isabel N AmigonSpain2026-05-04Rousseaux, Michael Esq NEGOTIATION48Xuxue Feng
1042Mayumi Z SaylorsFrance2026-05-09Benton, John B Jr UNQUALIFIED28Stephen Shaw
1043Leon M GillianAustralia2026-05-14Commercial Press QUALIFIED2Anna Fali
1044Clifford S FollerArgentina2026-05-05Rousseaux, Michael Esq QUALIFIED98Stephen Shaw
1045Greenwood E PoquetteCanada2026-05-24Truhlar And Truhlar Attys NEGOTIATION64Onyama Limba
1046Johnson D CaudyItaly2026-05-17Feiner Bros PROPOSAL60Onyama Limba
1047Aditya Y VenereBrazil2026-05-11Rousseaux, Michael Esq RENEWAL30Xuxue Feng
1048Jefferson R OldroydRussia2026-05-04Buckley Miller Wright QUALIFIED31Ioni Bowcher
1049Tony D SergiItaly2026-04-30Truhlar And Truhlar Attys RENEWAL65Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Smith W OstroskyArgentinaBernardo Dominic QUALIFIED
Stacey H SaylorsAustraliaAnna Fali NEW
Antonio U WaycottFranceBernardo Dominic QUALIFIED
David I MacleadFranceOnyama Limba NEGOTIATION
Nicolas R RutaIndiaAsiya Javayant NEGOTIATION
Maria D WhobreyGermanyXuxue Feng PROPOSAL
Johnson V FerenczBrazilIvan Magalhaes PROPOSAL
Ivar D DilliardFranceXuxue Feng NEW
Maria F InouyeUnited KingdomBernardo Dominic PROPOSAL
Nicolas R KolmetzJapanAmy Elsner QUALIFIED
Jones U SaylorsAustraliaAnna Fali NEW
Clifford W CampainFranceIoni Bowcher QUALIFIED
Cody A FollerCanadaAmy Elsner NEGOTIATION
Mujtaba W BowleyItalyElwin Sharvill NEGOTIATION
Morrow R MaletItalyAmy Elsner RENEWAL
Smith F KuskoUnited KingdomAsiya Javayant NEW
Ivar C GillianFranceStephen Shaw QUALIFIED
Ricardo X MacleadFranceAmy Elsner RENEWAL
Juan T VenereJapanElwin Sharvill RENEWAL
Deepesh V BowleyGermanyOnyama Limba PROPOSAL
Deepesh G MarrierSpainAmy Elsner QUALIFIED
Silvio V ButtIndiaBernardo Dominic NEW
Jennifer J MorascaArgentinaAsiya Javayant UNQUALIFIED
James E BologniaUnited KingdomAmy Elsner NEGOTIATION
Ivar J KuskoItalyAsiya Javayant NEW
Jefferson B DoeGermanyStephen Shaw PROPOSAL
Juan V MaletUnited KingdomAmy Elsner RENEWAL
Wickens F KuskoAustraliaXuxue Feng UNQUALIFIED
Clifford R PaprockiJapanStephen Shaw NEW
Arvin V RoysterSpainAmy Elsner NEGOTIATION
Isabel U DarakjySpainAsiya Javayant NEGOTIATION
Emily B ChuiJapanAmy Elsner NEW
Leon Q FigeroaSpainStephen Shaw UNQUALIFIED
Jennifer U ButtCanadaIoni Bowcher PROPOSAL
Ricardo P WhobreyIndiaIvan Magalhaes RENEWAL
Stacey Q VenereJapanBernardo Dominic RENEWAL
Johnson A VocelkaFranceOnyama Limba UNQUALIFIED
Jennifer Q BriddickItalyAnna Fali PROPOSAL
Misaki P NickaFranceAnna Fali RENEWAL
Arvin P StensethSpainXuxue Feng NEGOTIATION
Misaki T TollnerSpainIoni Bowcher RENEWAL
Nicolas I NickaUnited KingdomAnna Fali RENEWAL
Adams D BowleyGermanyBernardo Dominic RENEWAL
Aruna M RimArgentinaAsiya Javayant UNQUALIFIED
Wickens H KolmetzArgentinaIoni Bowcher UNQUALIFIED
Ashley N StensethGermanyXuxue Feng NEW
Julie P ShinkoRussiaBernardo Dominic RENEWAL
Alejandro S CaudyBrazilBernardo Dominic QUALIFIED
Izzy B PerinFranceBernardo Dominic PROPOSAL
Ivar X MacleadItalyIoni Bowcher PROPOSAL
Frozen Columns
Name
Clifford Z Campain
Salvatore V Iturbide
Julie A Waycott
Tony G Rim
Silvio Q Bolognia
Ashley H Perin
Octavia J Albares
Aditya L Maclead
Maria N Caudy
Ashley L Waycott
Wickens Q Rim
Morrow Y Darakjy
Greenwood Q Doe
Wickens M Rulapaugh
Maisha E Waycott
Ricardo C Chui
Munro G Garufi
Julie F Stenseth
Darci L Waycott
Octavia C Kusko
Salvatore T Oldroyd
Kaitlin Y Maclead
Ricardo V Briddick
Stacey Z Amigon
Mujtaba R Iturbide
Isabel P Kusko
Isabel H Chui
Clifford S Gaucho
Mujtaba D Sergi
Aika E Dilliard
Silvio A Kusko
Alejandro U Tollner
Aika C Maclead
Kaitlin X Shinko
Jennifer F Dilliard
Ashley O Dilliard
Arvin N Darakjy
Kadeem P Doe
Francesco W Amigon
Leon Q Inouye
Jefferson W Perin
Jefferson U Gillian
Isabel R Vocelka
Maria B Malet
Stacey N Figeroa
Octavia J Darakjy
Ivar E Schemmer
Alejandro X Morasca
Jennifer D Schemmer
Darci J Gaucho
IdCountryDate
1000Australia2026-05-05
1001India2026-05-02
1002Brazil2026-05-26
1003Italy2026-05-18
1004France2026-05-02
1005India2026-04-30
1006Canada2026-05-19
1007Brazil2026-05-19
1008Spain2026-05-22
1009Brazil2026-05-10
1010Argentina2026-05-01
1011Australia2026-04-30
1012France2026-05-28
1013Spain2026-05-29
1014Australia2026-05-13
1015Spain2026-05-05
1016India2026-05-06
1017Argentina2026-05-14
1018Germany2026-05-17
1019Russia2026-04-30
1020India2026-05-27
1021Russia2026-05-14
1022Canada2026-05-28
1023Spain2026-05-24
1024Spain2026-05-24
1025Canada2026-05-25
1026France2026-05-29
1027United Kingdom2026-05-08
1028Russia2026-05-25
1029India2026-05-23
1030United Kingdom2026-05-01
1031Brazil2026-05-27
1032United Kingdom2026-05-11
1033India2026-05-25
1034United Kingdom2026-05-28
1035France2026-05-01
1036Australia2026-05-16
1037France2026-05-04
1038Japan2026-05-24
1039France2026-05-22
1040Spain2026-05-19
1041France2026-05-09
1042Canada2026-05-27
1043Australia2026-05-01
1044United Kingdom2026-05-02
1045Spain2026-05-09
1046Argentina2026-05-11
1047Italy2026-05-27
1048France2026-05-11
1049India2026-05-17

On-Demand Data

NameIdCountryDate
Jennifer S Figeroa1000Brazil2026-05-12
Murillo F Oldroyd1001France2026-05-16
Ashley F Gillian1002Spain2026-05-03
Wickens Q Figeroa1003Australia2026-05-21
Julie U Flosi1004Brazil2026-05-06
James M Iturbide1005Spain2026-05-02
Johnson A Butt1006France2026-04-30
Aditya V Albares1007Brazil2026-05-16
Sinclair V Wieser1008Argentina2026-05-22
Ivar C Malet1009Germany2026-05-21
Ricardo F Saylors1010France2026-05-06
Maria H Royster1011India2026-05-01
Ivar F Iturbide1012Australia2026-05-19
Nicolas K Morasca1013Japan2026-05-15
Jones D Malet1014Spain2026-05-04
Antonio H Paprocki1015Germany2026-05-11
Jeanfrancois O Caldarera1016Argentina2026-05-19
Costa W Royster1017Canada2026-05-27
Leon S Nicka1018Germany2026-05-25
Mayumi D Poquette1019Russia2026-05-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan H FerenczCanadaElwin Sharvill QUALIFIED
Chavez J WieserItalyIoni Bowcher NEGOTIATION
Alejandro F ButtArgentinaIoni Bowcher NEW
Ricardo R StensethGermanyStephen Shaw NEGOTIATION
Claire H RutaArgentinaOnyama Limba RENEWAL
Jefferson V StockhamGermanyAnna Fali UNQUALIFIED
Munro C GarufiArgentinaBernardo Dominic QUALIFIED
Antonio K FollerUnited KingdomAnna Fali QUALIFIED
Misaki S OldroydJapanStephen Shaw RENEWAL
Julie P FlosiUnited KingdomElwin Sharvill UNQUALIFIED
Ivar O CampainSpainIvan Magalhaes QUALIFIED
Murillo H ButtSpainAmy Elsner UNQUALIFIED
Emily G SergiIndiaBernardo Dominic RENEWAL
Greenwood H CaudyFranceIvan Magalhaes NEGOTIATION
Ricardo X CaudyBrazilElwin Sharvill UNQUALIFIED
Maria T GarufiJapanAmy Elsner UNQUALIFIED
Octavia Z SergiRussiaBernardo Dominic RENEWAL
Francesco C RulapaughFranceBernardo Dominic NEW
Ashley B CampainFranceBernardo Dominic NEGOTIATION
Salvatore E BowleyCanadaAsiya Javayant RENEWAL
Misaki M StensethArgentinaElwin Sharvill NEW
Arvin T KuskoRussiaAmy Elsner UNQUALIFIED
Ashley A WieserGermanyOnyama Limba NEGOTIATION
Darci Z StensethItalyIoni Bowcher NEGOTIATION
Mujtaba C DoeFranceStephen Shaw QUALIFIED
Munro R CaudyJapanElwin Sharvill QUALIFIED
Cody S MaletUnited KingdomIvan Magalhaes NEW
Leon A GillianFranceStephen Shaw NEGOTIATION
Salvatore T MacleadFranceIvan Magalhaes QUALIFIED
Juan N OstroskyArgentinaOnyama Limba UNQUALIFIED
Costa W SlusarskiGermanyAsiya Javayant UNQUALIFIED
Izzy M RoysterRussiaXuxue Feng NEGOTIATION
Aika A FollerFranceStephen Shaw NEGOTIATION
Leon W SaylorsJapanOnyama Limba NEGOTIATION
James A OstroskyIndiaOnyama Limba NEW
Juan Q PerinAustraliaAmy Elsner PROPOSAL
Kaitlin R NestleBrazilAsiya Javayant PROPOSAL
Arvin B VocelkaAustraliaIoni Bowcher QUALIFIED
Julie S WhobreyIndiaIvan Magalhaes NEGOTIATION
Francesco Q TollnerArgentinaXuxue Feng 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.