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
Deepesh W MorascaIndiaAsiya Javayant RENEWAL
Jefferson J StockhamArgentinaAsiya Javayant NEGOTIATION
Leja F GarufiJapanXuxue Feng RENEWAL
Smith V FerenczAustraliaStephen Shaw NEW
Chavez C MaletItalyStephen Shaw NEW
Greenwood K NickaFranceAnna Fali PROPOSAL
Morrow Z StockhamJapanBernardo Dominic UNQUALIFIED
Julie K PaprockiArgentinaXuxue Feng NEGOTIATION
Julie U PaprockiCanadaOnyama Limba NEGOTIATION
Silvio L AmigonArgentinaAmy Elsner RENEWAL
Wickens Y WhobreyJapanIoni Bowcher NEW
Isabel E FerenczJapanElwin Sharvill QUALIFIED
Cody Y WhobreyGermanyBernardo Dominic QUALIFIED
Clifford A WaycottBrazilIvan Magalhaes QUALIFIED
Mayumi I NestleRussiaIoni Bowcher RENEWAL
Antonio E MaletAustraliaAmy Elsner QUALIFIED
Misaki N PaprockiIndiaStephen Shaw UNQUALIFIED
James L DilliardBrazilAsiya Javayant RENEWAL
Mayumi U MaletCanadaXuxue Feng NEW
Misaki N GauchoItalyElwin Sharvill QUALIFIED
Ivar D TollnerBrazilBernardo Dominic QUALIFIED
David G SlusarskiAustraliaAmy Elsner NEW
Jefferson Q PerinGermanyStephen Shaw NEW
Tony J RoysterUnited KingdomElwin Sharvill UNQUALIFIED
Aika K DoeFranceAnna Fali QUALIFIED
Cody Z ShinkoSpainBernardo Dominic QUALIFIED
Julie U MaletIndiaIvan Magalhaes QUALIFIED
Cody U AmigonUnited KingdomAnna Fali PROPOSAL
Mayumi T PoquetteUnited KingdomAnna Fali PROPOSAL
Mujtaba C WhobreyRussiaAnna Fali RENEWAL
Octavia B FlosiGermanyIvan Magalhaes NEGOTIATION
Rodrigues W CampainCanadaAsiya Javayant QUALIFIED
Mayumi M NickaJapanStephen Shaw UNQUALIFIED
Isabel H FerenczAustraliaStephen Shaw UNQUALIFIED
Aruna H RoysterAustraliaElwin Sharvill NEGOTIATION
Murillo L CaldareraUnited KingdomStephen Shaw UNQUALIFIED
Leja L MacleadBrazilElwin Sharvill NEGOTIATION
Alejandro Y IturbideCanadaIvan Magalhaes QUALIFIED
Leja T MaletItalyOnyama Limba QUALIFIED
Ivar E IturbideCanadaStephen Shaw UNQUALIFIED
Claire T VocelkaArgentinaAsiya Javayant UNQUALIFIED
Alejandro D KuskoUnited KingdomXuxue Feng RENEWAL
Kaitlin W InouyeRussiaAnna Fali UNQUALIFIED
Juan K AlbaresFranceStephen Shaw QUALIFIED
Arvin X FigeroaSpainAsiya Javayant NEW
Jefferson Y NestleBrazilAnna Fali NEGOTIATION
Izzy W OldroydBrazilAmy Elsner NEGOTIATION
Misaki L RimSpainAsiya Javayant NEW
Francesco Y SergiJapanIoni Bowcher NEGOTIATION
Emily I MorascaBrazilXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria A FerenczCanadaIvan Magalhaes NEGOTIATION
Morrow T NestleUnited KingdomOnyama Limba UNQUALIFIED
Jeanfrancois Y SaylorsIndiaXuxue Feng PROPOSAL
Aruna M ShinkoBrazilAmy Elsner PROPOSAL
Faith M SergiItalyAsiya Javayant NEW
Sinclair B BologniaArgentinaBernardo Dominic UNQUALIFIED
Leja M VenereArgentinaOnyama Limba PROPOSAL
Rodrigues D ChuiGermanyIvan Magalhaes RENEWAL
Mayumi E MaletFranceStephen Shaw UNQUALIFIED
Ricardo X FigeroaGermanyElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie T ShinkoSpain2026-06-20Dorl, James J Esq NEGOTIATION72Elwin Sharvill
1001Claire P FlosiFrance2026-06-10Morlong Associates RENEWAL66Bernardo Dominic
1002Deepesh W ButtItaly2026-06-29Rousseaux, Michael Esq UNQUALIFIED59Onyama Limba
1003Greenwood U MarrierUnited Kingdom2026-06-05Chemel, James L Cpa QUALIFIED82Bernardo Dominic
1004Sinclair B BriddickCanada2026-06-23Feiner Bros UNQUALIFIED5Anna Fali
1005Chavez P MarrierRussia2026-06-20Dorl, James J Esq UNQUALIFIED32Ioni Bowcher
1006Jefferson I MaletGermany2026-06-21Buckley Miller Wright NEW3Amy Elsner
1007Jeanfrancois Z AmigonFrance2026-06-12Chanay, Jeffrey A Esq PROPOSAL79Xuxue Feng
1008Emily N InouyeJapan2026-06-14Chapman, Ross E Esq NEGOTIATION74Elwin Sharvill
1009Antonio S DilliardBrazil2026-06-19King, Christopher A Esq UNQUALIFIED81Xuxue Feng
1010Kadeem T CaudyAustralia2026-06-21Printing Dimensions UNQUALIFIED36Asiya Javayant
1011Costa Z ChuiCanada2026-06-29Morlong Associates NEGOTIATION65Elwin Sharvill
1012Darci W GauchoIndia2026-06-19Chapman, Ross E Esq RENEWAL53Xuxue Feng
1013Maria W GillianUnited Kingdom2026-06-17Printing Dimensions RENEWAL83Anna Fali
1014Jennifer J SergiAustralia2026-06-22Buckley Miller Wright NEW67Bernardo Dominic
1015Isabel K BologniaCanada2026-06-20Rousseaux, Michael Esq QUALIFIED15Onyama Limba
1016Maisha E AlbaresAustralia2026-06-24Rangoni Of Florence NEGOTIATION44Asiya Javayant
1017Leja U StockhamIndia2026-06-07Truhlar And Truhlar Attys NEGOTIATION52Asiya Javayant
1018Misaki W PaprockiBrazil2026-06-13Dorl, James J Esq NEW36Stephen Shaw
1019Isabel W FerenczUnited Kingdom2026-06-08Commercial Press NEGOTIATION40Ivan Magalhaes
1020Silvio F BologniaBrazil2026-06-24Dorl, James J Esq RENEWAL8Xuxue Feng
1021Jones V FerenczAustralia2026-06-13Chanay, Jeffrey A Esq UNQUALIFIED87Bernardo Dominic
1022Munro M MacleadFrance2026-06-07King, Christopher A Esq QUALIFIED89Asiya Javayant
1023Greenwood Z WhobreyRussia2026-06-18Buckley Miller Wright NEGOTIATION69Amy Elsner
1024Ivar D SchemmerAustralia2026-05-31Truhlar And Truhlar Attys NEW85Stephen Shaw
1025Izzy E SlusarskiArgentina2026-06-19Chemel, James L Cpa UNQUALIFIED40Bernardo Dominic
1026Ashley G GillianIndia2026-06-11Dorl, James J Esq QUALIFIED92Stephen Shaw
1027Smith Z MaletAustralia2026-06-16Chanay, Jeffrey A Esq RENEWAL98Bernardo Dominic
1028Kaitlin J FollerAustralia2026-06-26King, Christopher A Esq RENEWAL2Bernardo Dominic
1029Darci O DilliardSpain2026-06-21Chemel, James L Cpa NEGOTIATION24Asiya Javayant
1030Chavez E WhobreyCanada2026-06-14Printing Dimensions UNQUALIFIED27Ioni Bowcher
1031Faith B KuskoRussia2026-06-18Feiner Bros NEW78Amy Elsner
1032David A PaprockiRussia2026-06-08Rousseaux, Michael Esq QUALIFIED67Onyama Limba
1033Tony M BriddickJapan2026-06-15Printing Dimensions PROPOSAL69Amy Elsner
1034Clifford U StockhamIndia2026-06-13Dorl, James J Esq PROPOSAL82Bernardo Dominic
1035Greenwood X KuskoGermany2026-06-27Chemel, James L Cpa NEGOTIATION31Elwin Sharvill
1036Jefferson R MaletRussia2026-06-06Printing Dimensions RENEWAL62Xuxue Feng
1037Alejandro Z OstroskyCanada2026-06-04Morlong Associates NEGOTIATION55Ioni Bowcher
1038Costa F AmigonArgentina2026-06-25Buckley Miller Wright NEW25Bernardo Dominic
1039Jeanfrancois R SchemmerGermany2026-06-29Chapman, Ross E Esq NEGOTIATION77Ioni Bowcher
1040James G SlusarskiSpain2026-06-21Rousseaux, Michael Esq NEGOTIATION23Elwin Sharvill
1041Tony T OstroskyIndia2026-06-17Morlong Associates PROPOSAL27Xuxue Feng
1042Smith A PaprockiIndia2026-06-28Commercial Press QUALIFIED99Asiya Javayant
1043Ivar M ChuiSpain2026-06-25Truhlar And Truhlar Attys NEGOTIATION63Stephen Shaw
1044Juan C AmigonItaly2026-06-24King, Christopher A Esq UNQUALIFIED68Ivan Magalhaes
1045Julie N VenereRussia2026-06-15Commercial Press UNQUALIFIED82Onyama Limba
1046Nicolas X MaletJapan2026-06-05Feiner Bros UNQUALIFIED17Amy Elsner
1047Costa A MorascaArgentina2026-06-23Rousseaux, Michael Esq RENEWAL12Ioni Bowcher
1048Rodrigues P FlosiItaly2026-06-18Rousseaux, Michael Esq NEW55Amy Elsner
1049Juan V PerinJapan2026-06-08Printing Dimensions RENEWAL51Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Claire C VenereUnited KingdomIoni Bowcher NEW
Emily A ShinkoFranceAsiya Javayant NEW
Arvin T MaletJapanIoni Bowcher QUALIFIED
Mujtaba X StensethJapanAnna Fali PROPOSAL
Deepesh U GlickJapanBernardo Dominic UNQUALIFIED
Rodrigues A RoysterCanadaAsiya Javayant NEGOTIATION
Deepesh E OldroydRussiaBernardo Dominic RENEWAL
Costa T FollerUnited KingdomIoni Bowcher PROPOSAL
Antonio I PoquetteAustraliaIvan Magalhaes PROPOSAL
Silvio R SlusarskiIndiaElwin Sharvill PROPOSAL
Juan B BologniaGermanyIoni Bowcher NEGOTIATION
Ivar G AmigonItalyAsiya Javayant NEW
Aditya Q OldroydSpainXuxue Feng NEW
Claire X RutaRussiaBernardo Dominic QUALIFIED
Julie K RulapaughUnited KingdomAmy Elsner NEW
Mujtaba U AmigonAustraliaAsiya Javayant UNQUALIFIED
Adams U DoeGermanyIoni Bowcher NEGOTIATION
Aika C MaletCanadaIoni Bowcher NEW
Deepesh L FerenczArgentinaXuxue Feng RENEWAL
Arvin U PoquetteFranceStephen Shaw NEW
Maria S PaprockiGermanyAnna Fali RENEWAL
Leja V VenereUnited KingdomAmy Elsner QUALIFIED
Maria E AmigonCanadaOnyama Limba PROPOSAL
Aika B CaudyFranceBernardo Dominic NEGOTIATION
Johnson R IturbideSpainAsiya Javayant UNQUALIFIED
Jennifer G RimItalyIvan Magalhaes RENEWAL
Adams U FlosiUnited KingdomXuxue Feng QUALIFIED
Costa W GlickSpainIvan Magalhaes NEGOTIATION
Jones S RulapaughRussiaIoni Bowcher NEW
Sinclair M VocelkaAustraliaBernardo Dominic QUALIFIED
Darci W WhobreyRussiaElwin Sharvill PROPOSAL
Chavez X MarrierArgentinaIvan Magalhaes RENEWAL
Maria O InouyeAustraliaElwin Sharvill UNQUALIFIED
Wickens U GlickItalyIoni Bowcher UNQUALIFIED
Jennifer K MaletGermanyStephen Shaw NEW
Arvin F PerinArgentinaElwin Sharvill RENEWAL
Leja P FerenczBrazilElwin Sharvill NEGOTIATION
Johnson N DilliardCanadaIoni Bowcher NEW
Kaitlin O ShinkoIndiaXuxue Feng NEGOTIATION
Maria J CaldareraFranceAnna Fali NEW
Julie A FlosiArgentinaXuxue Feng UNQUALIFIED
Jennifer R FerenczGermanyIoni Bowcher UNQUALIFIED
Francesco V MorascaCanadaAsiya Javayant PROPOSAL
Deepesh L CaudyJapanOnyama Limba UNQUALIFIED
Juan Y MaletSpainAmy Elsner NEGOTIATION
Sinclair U DarakjyBrazilBernardo Dominic RENEWAL
Emily I TollnerIndiaElwin Sharvill NEGOTIATION
Aruna M PoquetteFranceAmy Elsner UNQUALIFIED
Smith A SlusarskiSpainIoni Bowcher UNQUALIFIED
Jefferson F BriddickRussiaXuxue Feng PROPOSAL
Frozen Columns
Name
Emily H Amigon
Salvatore F Slusarski
Faith E Royster
Ashley X Stockham
Deepesh X Venere
Faith V Stockham
Emily R Morasca
Cody Z Maclead
Juan X Amigon
Ricardo Z Bolognia
Maria U Malet
Murillo A Vocelka
Morrow C Ruta
Sinclair Z Schemmer
Aruna Y Wieser
Emily Z Inouye
Emily A Rim
Ivar V Ostrosky
Juan G Ferencz
Stacey Z Ostrosky
Jennifer X Waycott
Stacey J Malet
Aruna E Marrier
Claire R Amigon
Julie P Stenseth
Izzy F Ruta
Clifford X Kusko
Jennifer M Figeroa
Arvin O Amigon
Leja S Whobrey
Izzy R Kolmetz
Jefferson Z Wieser
Nicolas N Foller
Faith G Sergi
Maria E Slusarski
Antonio F Gaucho
Jones D Chui
Darci B Schemmer
Adams R Waycott
Ashley Q Briddick
Smith R Schemmer
Salvatore A Foller
Sinclair I Gaucho
Julie P Bolognia
Rodrigues F Doe
Maisha Z Chui
Aditya J Bowley
Jones Y Tollner
David D Chui
Isabel Q Gillian
IdCountryDate
1000Brazil2026-06-06
1001Japan2026-06-19
1002Argentina2026-06-14
1003Germany2026-06-14
1004United Kingdom2026-06-18
1005France2026-06-14
1006Italy2026-06-29
1007Italy2026-06-26
1008United Kingdom2026-06-06
1009Spain2026-06-09
1010Spain2026-06-03
1011Japan2026-06-26
1012Italy2026-06-27
1013Australia2026-06-03
1014Australia2026-06-17
1015Argentina2026-06-15
1016Germany2026-06-13
1017Russia2026-06-01
1018Germany2026-06-10
1019Russia2026-06-05
1020Brazil2026-06-09
1021Germany2026-06-24
1022United Kingdom2026-06-20
1023Japan2026-06-24
1024Spain2026-06-16
1025France2026-06-09
1026United Kingdom2026-06-08
1027Canada2026-06-26
1028Japan2026-06-22
1029Russia2026-06-21
1030Spain2026-06-25
1031India2026-06-23
1032United Kingdom2026-06-18
1033France2026-06-13
1034Spain2026-06-07
1035France2026-06-17
1036Canada2026-05-31
1037Russia2026-06-26
1038India2026-06-03
1039Argentina2026-06-10
1040Japan2026-06-03
1041United Kingdom2026-06-09
1042Russia2026-06-28
1043Australia2026-06-05
1044Spain2026-06-17
1045Brazil2026-06-02
1046Australia2026-06-14
1047Brazil2026-06-25
1048India2026-06-15
1049Canada2026-06-28

On-Demand Data

NameIdCountryDate
Morrow C Ostrosky1000Canada2026-05-31
Salvatore C Nicka1001Canada2026-06-25
Deepesh X Caldarera1002Russia2026-06-10
Ivar K Whobrey1003Spain2026-06-16
Morrow H Sergi1004United Kingdom2026-06-06
Rodrigues J Figeroa1005Japan2026-06-19
Wickens T Bowley1006Brazil2026-06-02
Maisha C Iturbide1007Canada2026-06-17
James Z Figeroa1008Japan2026-06-12
Greenwood R Schemmer1009Brazil2026-06-21
Arvin G Slusarski1010Australia2026-06-20
Misaki T Rulapaugh1011Spain2026-06-07
Salvatore M Malet1012Italy2026-06-20
James E Malet1013Australia2026-05-31
Antonio E Schemmer1014Argentina2026-06-01
Emily M Figeroa1015Japan2026-05-31
Jefferson N Amigon1016Argentina2026-06-20
Jeanfrancois A Ostrosky1017Brazil2026-06-15
Jefferson A Paprocki1018Russia2026-06-03
Mayumi O Saylors1019Canada2026-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio A MaletItalyOnyama Limba QUALIFIED
Leon W RimSpainIoni Bowcher NEW
Arvin B KolmetzCanadaIoni Bowcher QUALIFIED
Ivar Y CaldareraUnited KingdomXuxue Feng RENEWAL
Claire W DarakjyGermanyOnyama Limba PROPOSAL
Smith K DarakjyItalyAsiya Javayant QUALIFIED
Jefferson X CaldareraIndiaXuxue Feng RENEWAL
Isabel H BowleyAustraliaBernardo Dominic PROPOSAL
Jones P PaprockiAustraliaIvan Magalhaes NEW
Aditya E SchemmerUnited KingdomOnyama Limba RENEWAL
Stacey Z RutaIndiaOnyama Limba NEW
Kaitlin U WieserRussiaIoni Bowcher NEGOTIATION
Chavez Z KolmetzBrazilAsiya Javayant NEGOTIATION
Morrow P ChuiUnited KingdomAsiya Javayant UNQUALIFIED
Darci G BowleyItalyOnyama Limba UNQUALIFIED
Ivar N ChuiItalyIvan Magalhaes RENEWAL
Alejandro C OldroydSpainAmy Elsner NEW
Juan K DoeGermanyStephen Shaw NEGOTIATION
Jones T FerenczArgentinaAnna Fali PROPOSAL
Mayumi A GauchoRussiaOnyama Limba NEW
Claire Y ShinkoFranceAnna Fali UNQUALIFIED
Costa E InouyeIndiaElwin Sharvill NEGOTIATION
Ashley K MorascaItalyAnna Fali UNQUALIFIED
Juan T FigeroaFranceAsiya Javayant QUALIFIED
Rodrigues E WaycottUnited KingdomOnyama Limba RENEWAL
Ricardo K SaylorsRussiaIoni Bowcher RENEWAL
Aditya L BriddickRussiaIvan Magalhaes NEGOTIATION
Costa T ChuiJapanAsiya Javayant NEW
Maisha S ChuiGermanyAnna Fali PROPOSAL
Adams W DilliardBrazilXuxue Feng RENEWAL
Aditya T RoysterArgentinaAnna Fali RENEWAL
Silvio O BologniaIndiaElwin Sharvill PROPOSAL
Octavia I CaldareraRussiaElwin Sharvill QUALIFIED
Jeanfrancois P WieserUnited KingdomIvan Magalhaes UNQUALIFIED
Ashley D BriddickJapanIoni Bowcher NEW
Juan A RimCanadaAsiya Javayant RENEWAL
Ashley A ShinkoIndiaOnyama Limba RENEWAL
Clifford M GarufiIndiaIvan Magalhaes UNQUALIFIED
Leon G MarrierRussiaOnyama Limba PROPOSAL
Emily M GarufiIndiaXuxue 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.