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
Tony A FlosiAustraliaOnyama Limba NEW
Arvin B CaldareraSpainAnna Fali QUALIFIED
Leja G KuskoGermanyBernardo Dominic QUALIFIED
Izzy X RutaFranceIvan Magalhaes RENEWAL
Leja V SchemmerRussiaIvan Magalhaes UNQUALIFIED
Arvin U MaletGermanyAmy Elsner NEGOTIATION
Munro Z StockhamGermanyIvan Magalhaes NEGOTIATION
Arvin K KuskoJapanAsiya Javayant RENEWAL
Tony A BowleyIndiaAmy Elsner NEGOTIATION
Cody X KuskoArgentinaIoni Bowcher RENEWAL
Ivar C OldroydAustraliaIoni Bowcher RENEWAL
Arvin S FigeroaFranceAnna Fali QUALIFIED
Antonio I PoquetteCanadaOnyama Limba QUALIFIED
Juan X ChuiJapanAnna Fali RENEWAL
Alejandro V GarufiFranceAmy Elsner UNQUALIFIED
Aruna A PoquetteUnited KingdomAmy Elsner PROPOSAL
Aruna R PoquetteRussiaOnyama Limba UNQUALIFIED
James Q PerinJapanElwin Sharvill NEGOTIATION
Darci G CaudyRussiaAsiya Javayant RENEWAL
Jeanfrancois N FigeroaRussiaXuxue Feng UNQUALIFIED
Nicolas N KolmetzFranceIvan Magalhaes NEW
Sinclair O StensethItalyAmy Elsner UNQUALIFIED
Nicolas E RulapaughBrazilIvan Magalhaes RENEWAL
Ricardo L OldroydAustraliaStephen Shaw NEW
Mujtaba Q AlbaresIndiaBernardo Dominic NEW
Ivar U StockhamArgentinaBernardo Dominic RENEWAL
Ivar C MarrierSpainIvan Magalhaes NEGOTIATION
Murillo A FigeroaBrazilAsiya Javayant PROPOSAL
Aditya R GarufiGermanyIoni Bowcher PROPOSAL
Arvin S IturbideBrazilOnyama Limba NEW
Greenwood N TollnerCanadaStephen Shaw NEW
Adams W GlickBrazilElwin Sharvill NEGOTIATION
Morrow J PoquetteIndiaElwin Sharvill QUALIFIED
Smith X PoquetteFranceBernardo Dominic NEW
Juan W StensethGermanyAmy Elsner RENEWAL
Clifford J BriddickSpainOnyama Limba QUALIFIED
Ricardo Q CampainCanadaBernardo Dominic NEGOTIATION
Tony L KuskoCanadaAsiya Javayant UNQUALIFIED
Mayumi I GillianBrazilIoni Bowcher NEGOTIATION
Arvin H MarrierSpainAnna Fali UNQUALIFIED
James D NickaCanadaOnyama Limba UNQUALIFIED
Salvatore Z IturbideArgentinaAnna Fali PROPOSAL
Ricardo V CampainFranceAsiya Javayant QUALIFIED
Sinclair P BriddickAustraliaBernardo Dominic NEW
Antonio G TollnerCanadaAnna Fali PROPOSAL
Johnson U ShinkoItalyAsiya Javayant NEW
Clifford Z DilliardBrazilBernardo Dominic NEGOTIATION
Isabel T StockhamSpainBernardo Dominic RENEWAL
Clifford O KolmetzItalyStephen Shaw QUALIFIED
Chavez K FigeroaJapanAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Faith J InouyeJapanAmy Elsner NEGOTIATION
Jones M PerinUnited KingdomAnna Fali QUALIFIED
Faith Q TollnerRussiaOnyama Limba QUALIFIED
Aika C CaudyFranceAmy Elsner UNQUALIFIED
Maisha A SaylorsUnited KingdomStephen Shaw PROPOSAL
Darci P BriddickArgentinaIvan Magalhaes QUALIFIED
Jeanfrancois U RulapaughFranceAnna Fali NEGOTIATION
Salvatore M MaletIndiaIoni Bowcher NEW
Stacey C RimIndiaElwin Sharvill NEGOTIATION
Maria Z KolmetzCanadaIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh Z DoeBrazil2026-03-29Truhlar And Truhlar Attys UNQUALIFIED4Ioni Bowcher
1001Leon G ChuiBrazil2026-03-27Morlong Associates UNQUALIFIED72Bernardo Dominic
1002Mayumi K PaprockiRussia2026-03-31King, Christopher A Esq NEGOTIATION75Elwin Sharvill
1003Aruna W CaudyIndia2026-04-16Truhlar And Truhlar Attys NEW75Ioni Bowcher
1004Faith O RutaRussia2026-04-01Rangoni Of Florence QUALIFIED61Anna Fali
1005Jeanfrancois U SlusarskiItaly2026-04-13Benton, John B Jr NEW45Elwin Sharvill
1006Chavez S SchemmerIndia2026-04-04Chapman, Ross E Esq RENEWAL1Xuxue Feng
1007Smith V CaudyCanada2026-03-25Chapman, Ross E Esq UNQUALIFIED73Anna Fali
1008Tony V PaprockiAustralia2026-04-20Buckley Miller Wright NEGOTIATION7Ioni Bowcher
1009Kadeem Y MacleadCanada2026-04-01Truhlar And Truhlar Attys NEGOTIATION37Elwin Sharvill
1010Wickens A MacleadJapan2026-04-15King, Christopher A Esq UNQUALIFIED64Onyama Limba
1011Salvatore N InouyeSpain2026-04-12Chapman, Ross E Esq QUALIFIED34Anna Fali
1012Julie M BriddickSpain2026-03-30King, Christopher A Esq QUALIFIED65Elwin Sharvill
1013Ivar C VocelkaIndia2026-04-12Rousseaux, Michael Esq PROPOSAL85Anna Fali
1014Silvio Z StensethAustralia2026-03-31Feiner Bros QUALIFIED23Anna Fali
1015Smith A PerinItaly2026-04-02Commercial Press PROPOSAL66Amy Elsner
1016Jefferson S SaylorsCanada2026-04-01Feiner Bros NEGOTIATION49Xuxue Feng
1017Arvin T AlbaresFrance2026-04-13Chanay, Jeffrey A Esq NEW6Stephen Shaw
1018Greenwood Y BriddickSpain2026-04-12Chapman, Ross E Esq RENEWAL43Amy Elsner
1019Aika U CampainFrance2026-04-21Chanay, Jeffrey A Esq RENEWAL25Xuxue Feng
1020Emily A RoysterSpain2026-03-28King, Christopher A Esq NEGOTIATION80Elwin Sharvill
1021Smith X GauchoAustralia2026-03-31Rangoni Of Florence NEW43Ioni Bowcher
1022Aruna Z BriddickItaly2026-03-28Rangoni Of Florence NEGOTIATION26Bernardo Dominic
1023Silvio Q PaprockiUnited Kingdom2026-03-30Chapman, Ross E Esq NEGOTIATION7Ioni Bowcher
1024Alejandro Y GlickSpain2026-04-12Buckley Miller Wright UNQUALIFIED0Ivan Magalhaes
1025Johnson F NestleItaly2026-04-07Morlong Associates PROPOSAL90Xuxue Feng
1026Darci U SaylorsGermany2026-04-07Printing Dimensions UNQUALIFIED15Onyama Limba
1027Arvin K GillianBrazil2026-03-30Dorl, James J Esq RENEWAL12Asiya Javayant
1028Johnson X SlusarskiSpain2026-04-09Rousseaux, Michael Esq UNQUALIFIED86Stephen Shaw
1029Aika A SchemmerItaly2026-04-09Rousseaux, Michael Esq NEGOTIATION21Elwin Sharvill
1030Deepesh U BowleyItaly2026-04-07Feiner Bros NEW29Amy Elsner
1031Misaki U OldroydArgentina2026-04-06Benton, John B Jr NEW89Ioni Bowcher
1032Deepesh O BriddickFrance2026-04-16Printing Dimensions PROPOSAL23Onyama Limba
1033Aruna Z GauchoGermany2026-04-10Commercial Press PROPOSAL79Ioni Bowcher
1034James P OstroskyBrazil2026-04-16Truhlar And Truhlar Attys PROPOSAL49Anna Fali
1035Juan M GillianGermany2026-03-25Dorl, James J Esq UNQUALIFIED43Xuxue Feng
1036Arvin A StensethBrazil2026-04-13Chapman, Ross E Esq PROPOSAL28Ioni Bowcher
1037Clifford N MacleadRussia2026-03-23Dorl, James J Esq QUALIFIED37Stephen Shaw
1038Morrow B FlosiUnited Kingdom2026-04-11Rousseaux, Michael Esq NEGOTIATION98Amy Elsner
1039Kadeem X BriddickItaly2026-03-27Morlong Associates RENEWAL81Amy Elsner
1040Murillo O RulapaughGermany2026-03-26Benton, John B Jr NEW41Elwin Sharvill
1041Rodrigues W DilliardRussia2026-03-30Truhlar And Truhlar Attys PROPOSAL12Stephen Shaw
1042Mayumi C PerinIndia2026-04-13Feiner Bros NEGOTIATION91Onyama Limba
1043Greenwood A OstroskyUnited Kingdom2026-04-21Chapman, Ross E Esq QUALIFIED46Elwin Sharvill
1044Munro S AmigonJapan2026-03-28Rangoni Of Florence UNQUALIFIED84Xuxue Feng
1045Kadeem M VocelkaSpain2026-04-09Printing Dimensions RENEWAL90Ivan Magalhaes
1046Kaitlin E MacleadSpain2026-03-25Truhlar And Truhlar Attys RENEWAL74Bernardo Dominic
1047Jones C OldroydBrazil2026-04-14Feiner Bros UNQUALIFIED48Stephen Shaw
1048Ivar B DarakjyAustralia2026-04-18Commercial Press QUALIFIED67Xuxue Feng
1049Tony A SergiFrance2026-04-17Benton, John B Jr QUALIFIED67Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Jefferson H CampainFranceAsiya Javayant NEGOTIATION
Jeanfrancois Z GlickItalyIvan Magalhaes QUALIFIED
Deepesh N WhobreyUnited KingdomAsiya Javayant NEW
Aruna G GlickIndiaIvan Magalhaes NEW
David J OstroskyItalyBernardo Dominic QUALIFIED
Aruna G KolmetzIndiaXuxue Feng RENEWAL
Ivar F WhobreyGermanyAnna Fali RENEWAL
Stacey E MaletAustraliaStephen Shaw PROPOSAL
Silvio Y DoeUnited KingdomBernardo Dominic PROPOSAL
Aruna E AmigonUnited KingdomElwin Sharvill QUALIFIED
Francesco K WhobreyItalyIvan Magalhaes NEW
Emily U BowleyAustraliaXuxue Feng NEW
Chavez I MaletArgentinaAnna Fali NEGOTIATION
Nicolas B InouyeRussiaXuxue Feng PROPOSAL
Ivar K VocelkaUnited KingdomOnyama Limba RENEWAL
Maria T OstroskyUnited KingdomStephen Shaw UNQUALIFIED
Arvin H MorascaFranceIoni Bowcher RENEWAL
Julie H DoeGermanyAmy Elsner PROPOSAL
Izzy A OstroskyCanadaBernardo Dominic RENEWAL
Izzy H CaudyFranceStephen Shaw PROPOSAL
Cody J CaudyItalyIoni Bowcher NEW
Murillo F WaycottArgentinaOnyama Limba NEGOTIATION
Ricardo A PerinRussiaIoni Bowcher QUALIFIED
Jennifer K ShinkoGermanyAsiya Javayant RENEWAL
Clifford B PaprockiArgentinaIvan Magalhaes UNQUALIFIED
Adams M SaylorsIndiaAnna Fali QUALIFIED
Izzy V WaycottIndiaBernardo Dominic NEW
Kadeem D VenereGermanyIvan Magalhaes UNQUALIFIED
Mayumi Z SlusarskiGermanyAmy Elsner NEW
Salvatore M PoquetteJapanElwin Sharvill RENEWAL
Chavez H StockhamAustraliaOnyama Limba PROPOSAL
Mujtaba A CampainFranceBernardo Dominic RENEWAL
Clifford R MaletGermanyBernardo Dominic NEGOTIATION
Kaitlin Q ButtBrazilAnna Fali UNQUALIFIED
Deepesh M KuskoRussiaStephen Shaw NEW
Tony O RulapaughItalyIvan Magalhaes QUALIFIED
Mayumi S VocelkaUnited KingdomElwin Sharvill RENEWAL
Jones V MaletAustraliaIoni Bowcher NEW
Ivar H FlosiItalyAnna Fali NEGOTIATION
Deepesh K SergiArgentinaAsiya Javayant UNQUALIFIED
Isabel C PaprockiRussiaOnyama Limba NEW
Juan L RimJapanBernardo Dominic NEGOTIATION
Smith U FlosiGermanyAmy Elsner NEW
Wickens F TollnerIndiaElwin Sharvill UNQUALIFIED
Munro T RoysterArgentinaIvan Magalhaes PROPOSAL
Antonio Z KuskoBrazilXuxue Feng UNQUALIFIED
Alejandro W CaldareraItalyAnna Fali NEGOTIATION
Aika Z VocelkaSpainStephen Shaw UNQUALIFIED
Stacey G GillianItalyIoni Bowcher QUALIFIED
Jeanfrancois A NestleBrazilXuxue Feng PROPOSAL
Frozen Columns
Name
Misaki I Doe
Alejandro E Sergi
Silvio R Garufi
Jeanfrancois T Marrier
Misaki Y Kolmetz
Leja P Wieser
Faith T Perin
Silvio O Bowley
Izzy Q Sergi
Mayumi E Sergi
Jennifer U Iturbide
Maria I Amigon
Emily S Maclead
Costa U Kolmetz
Jennifer X Malet
Antonio W Campain
Maria U Kolmetz
Maisha N Bolognia
Murillo X Darakjy
Jones J Dilliard
Antonio Y Butt
Costa G Flosi
Alejandro H Dilliard
Silvio E Nestle
Aika X Butt
Leja Q Flosi
Smith O Nestle
Ashley W Rulapaugh
Mayumi N Shinko
Chavez A Morasca
Leon U Briddick
Kaitlin R Malet
James Z Iturbide
Kadeem E Amigon
Faith U Inouye
Murillo Q Poquette
Sinclair L Nicka
Wickens L Nicka
Deepesh K Glick
Adams J Rulapaugh
Kaitlin N Gaucho
Mujtaba Y Venere
Ricardo X Figeroa
Antonio H Sergi
Jeanfrancois H Gaucho
Smith A Nicka
Mujtaba M Doe
Maisha L Perin
Sinclair Z Sergi
Sinclair Y Rim
IdCountryDate
1000France2026-04-06
1001Canada2026-04-14
1002Canada2026-04-19
1003Argentina2026-04-02
1004United Kingdom2026-03-29
1005Australia2026-04-19
1006Argentina2026-04-03
1007France2026-04-14
1008Canada2026-04-06
1009Russia2026-04-16
1010Canada2026-04-06
1011Argentina2026-03-27
1012Russia2026-03-25
1013Argentina2026-04-10
1014France2026-04-19
1015Japan2026-04-10
1016Australia2026-03-30
1017Italy2026-03-25
1018Canada2026-04-17
1019Australia2026-04-15
1020India2026-04-08
1021Japan2026-04-21
1022Spain2026-04-05
1023Spain2026-04-15
1024Australia2026-04-11
1025India2026-03-24
1026Argentina2026-04-14
1027Spain2026-04-02
1028India2026-04-15
1029Brazil2026-04-11
1030Spain2026-04-03
1031France2026-04-12
1032Russia2026-04-04
1033Russia2026-04-14
1034France2026-04-05
1035Germany2026-03-24
1036Germany2026-04-02
1037Italy2026-04-04
1038Brazil2026-04-18
1039Italy2026-04-03
1040Canada2026-04-02
1041Spain2026-04-18
1042Argentina2026-04-19
1043France2026-04-10
1044Italy2026-03-30
1045Brazil2026-04-03
1046Argentina2026-04-11
1047United Kingdom2026-03-29
1048Spain2026-04-19
1049United Kingdom2026-04-20

On-Demand Data

NameIdCountryDate
Stacey A Stenseth1000Argentina2026-03-31
Kadeem U Vocelka1001India2026-04-19
James W Rulapaugh1002Spain2026-04-15
Emily U Figeroa1003Japan2026-03-29
Wickens G Paprocki1004Argentina2026-03-31
Juan X Malet1005Australia2026-03-30
Kadeem D Waycott1006Brazil2026-04-17
Faith V Gaucho1007Germany2026-04-09
Arvin S Oldroyd1008Russia2026-04-03
Maria R Marrier1009Germany2026-04-07
Francesco Y Briddick1010Germany2026-04-11
Silvio C Marrier1011France2026-04-04
Darci C Ruta1012Argentina2026-04-18
Stacey F Venere1013Australia2026-04-03
Francesco S Nestle1014France2026-04-06
James S Venere1015Germany2026-04-01
Francesco R Tollner1016Russia2026-04-02
Darci R Flosi1017France2026-04-14
Morrow F Morasca1018India2026-03-29
Rodrigues B Flosi1019India2026-03-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood S RulapaughItalyElwin Sharvill NEGOTIATION
Izzy J GauchoFranceBernardo Dominic NEGOTIATION
Ivar E CampainSpainBernardo Dominic NEW
Maria X AmigonFranceOnyama Limba RENEWAL
Adams E FerenczAustraliaAnna Fali QUALIFIED
Ivar V OldroydUnited KingdomStephen Shaw NEGOTIATION
Darci O KolmetzGermanyOnyama Limba NEW
Munro L StockhamCanadaXuxue Feng PROPOSAL
Julie B RimUnited KingdomStephen Shaw NEW
Faith Q VenereGermanyIvan Magalhaes QUALIFIED
Izzy F IturbideAustraliaIoni Bowcher UNQUALIFIED
Aika L NestleUnited KingdomIvan Magalhaes RENEWAL
Faith G FigeroaGermanyElwin Sharvill UNQUALIFIED
Deepesh I BologniaAustraliaIoni Bowcher QUALIFIED
Smith R SergiGermanyIvan Magalhaes QUALIFIED
Maria H GillianAustraliaXuxue Feng PROPOSAL
Costa Q VenereFranceAsiya Javayant PROPOSAL
Alejandro N WieserFranceIvan Magalhaes NEGOTIATION
Jeanfrancois X KuskoRussiaElwin Sharvill QUALIFIED
Jones Q VenereItalyAnna Fali NEGOTIATION
Jennifer W PaprockiArgentinaAnna Fali RENEWAL
Clifford L WaycottBrazilIoni Bowcher RENEWAL
Mujtaba U RutaItalyIoni Bowcher NEW
Aika C MaletArgentinaXuxue Feng PROPOSAL
Misaki Q BologniaCanadaStephen Shaw RENEWAL
Kadeem U AlbaresIndiaIoni Bowcher NEGOTIATION
Juan X NickaJapanXuxue Feng QUALIFIED
Juan J KuskoItalyOnyama Limba NEW
Smith K StockhamUnited KingdomStephen Shaw UNQUALIFIED
Deepesh V WieserSpainStephen Shaw NEW
Salvatore A TollnerBrazilStephen Shaw PROPOSAL
Ricardo G OstroskyUnited KingdomStephen Shaw NEGOTIATION
Jefferson I GauchoJapanAnna Fali NEGOTIATION
Claire A ShinkoArgentinaAsiya Javayant UNQUALIFIED
Leja E PaprockiJapanAmy Elsner NEW
Nicolas Y FollerBrazilIoni Bowcher PROPOSAL
Smith M BowleyBrazilAnna Fali NEW
Jeanfrancois P KolmetzFranceOnyama Limba RENEWAL
Isabel A TollnerJapanAnna Fali RENEWAL
Greenwood V AmigonUnited KingdomBernardo Dominic 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.