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
Kadeem S ChuiArgentinaOnyama Limba QUALIFIED
Silvio J RutaRussiaAmy Elsner PROPOSAL
Francesco A ButtIndiaXuxue Feng NEGOTIATION
Maisha I SergiArgentinaAnna Fali QUALIFIED
Clifford Q WhobreySpainXuxue Feng QUALIFIED
Ashley M BologniaBrazilAnna Fali PROPOSAL
Mujtaba O PerinFranceStephen Shaw UNQUALIFIED
Misaki J AmigonGermanyAsiya Javayant NEGOTIATION
Isabel V WhobreyAustraliaAnna Fali QUALIFIED
Darci W CaudyJapanIoni Bowcher RENEWAL
Smith B PaprockiRussiaXuxue Feng NEW
Jefferson J KuskoRussiaIvan Magalhaes PROPOSAL
Julie N DarakjyIndiaXuxue Feng NEGOTIATION
Jefferson C CaldareraAustraliaBernardo Dominic UNQUALIFIED
Misaki W SergiArgentinaOnyama Limba PROPOSAL
Sinclair C GillianBrazilIvan Magalhaes QUALIFIED
Ricardo S SergiCanadaElwin Sharvill UNQUALIFIED
Emily S SaylorsItalyIvan Magalhaes NEW
Leon K GillianArgentinaXuxue Feng RENEWAL
Ivar T RulapaughCanadaOnyama Limba NEGOTIATION
Salvatore H FlosiJapanIoni Bowcher NEW
Wickens R MarrierBrazilAsiya Javayant UNQUALIFIED
Jennifer V InouyeSpainBernardo Dominic NEGOTIATION
Jennifer M PaprockiRussiaIvan Magalhaes QUALIFIED
Mayumi E DoeAustraliaStephen Shaw RENEWAL
Jeanfrancois O RutaAustraliaElwin Sharvill PROPOSAL
Misaki U DoeCanadaAmy Elsner NEGOTIATION
Mayumi Q StockhamArgentinaIoni Bowcher QUALIFIED
Greenwood D WhobreyIndiaStephen Shaw RENEWAL
Rodrigues K SergiAustraliaAmy Elsner NEW
Chavez F ButtIndiaAnna Fali NEW
Jefferson Z RoysterUnited KingdomIoni Bowcher QUALIFIED
Emily P MaletArgentinaElwin Sharvill PROPOSAL
Jefferson E NickaCanadaAmy Elsner QUALIFIED
Antonio S VenereRussiaStephen Shaw QUALIFIED
James C GauchoItalyBernardo Dominic RENEWAL
Munro P WieserRussiaAmy Elsner RENEWAL
Darci W KuskoUnited KingdomStephen Shaw NEGOTIATION
Faith L BowleyRussiaStephen Shaw NEGOTIATION
Julie V FollerSpainBernardo Dominic UNQUALIFIED
Stacey M MaletGermanyBernardo Dominic RENEWAL
Morrow W RutaUnited KingdomOnyama Limba PROPOSAL
Nicolas D SaylorsCanadaAmy Elsner PROPOSAL
Julie L OstroskyCanadaElwin Sharvill NEW
Murillo X IturbideGermanyStephen Shaw QUALIFIED
Tony P WhobreyItalyAnna Fali NEGOTIATION
Kaitlin W BowleyCanadaElwin Sharvill QUALIFIED
Aditya J KuskoBrazilBernardo Dominic UNQUALIFIED
Jeanfrancois K BologniaGermanyIoni Bowcher PROPOSAL
Misaki T CampainArgentinaElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Silvio H CaldareraSpainAmy Elsner QUALIFIED
Ricardo B FollerCanadaElwin Sharvill QUALIFIED
Francesco P MarrierItalyAnna Fali PROPOSAL
Claire X MaletJapanStephen Shaw RENEWAL
Sinclair F PoquetteCanadaIvan Magalhaes NEW
Kadeem R RoysterRussiaAsiya Javayant RENEWAL
Munro J RutaSpainOnyama Limba NEW
Costa N CampainGermanyIvan Magalhaes NEGOTIATION
Salvatore H CampainJapanIvan Magalhaes RENEWAL
Morrow K FerenczRussiaIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki T ButtBrazil2026-05-27Chapman, Ross E Esq NEW60Amy Elsner
1001Wickens J InouyeUnited Kingdom2026-05-20Rousseaux, Michael Esq QUALIFIED71Elwin Sharvill
1002Adams D WhobreyItaly2026-05-20Truhlar And Truhlar Attys QUALIFIED3Bernardo Dominic
1003Ivar N DarakjyCanada2026-05-11Benton, John B Jr NEGOTIATION87Stephen Shaw
1004Munro Z BologniaAustralia2026-05-29Printing Dimensions QUALIFIED75Onyama Limba
1005Octavia S NickaGermany2026-05-17Feltz Printing Service NEW41Elwin Sharvill
1006Wickens K BriddickJapan2026-05-31Benton, John B Jr QUALIFIED2Stephen Shaw
1007Johnson N SlusarskiIndia2026-06-02Commercial Press NEW24Elwin Sharvill
1008Tony W GarufiGermany2026-05-23Morlong Associates RENEWAL16Onyama Limba
1009Johnson U GlickAustralia2026-05-23Rangoni Of Florence UNQUALIFIED14Ivan Magalhaes
1010Leja R FlosiGermany2026-05-21Truhlar And Truhlar Attys UNQUALIFIED77Ioni Bowcher
1011Darci Z BologniaBrazil2026-05-31Chapman, Ross E Esq NEW92Stephen Shaw
1012Mujtaba L VocelkaGermany2026-05-09Chemel, James L Cpa UNQUALIFIED36Anna Fali
1013Isabel C MaletUnited Kingdom2026-05-25Truhlar And Truhlar Attys NEGOTIATION15Amy Elsner
1014Octavia K InouyeBrazil2026-05-28Chapman, Ross E Esq PROPOSAL46Elwin Sharvill
1015Morrow T IturbideItaly2026-05-08Truhlar And Truhlar Attys NEGOTIATION6Stephen Shaw
1016Claire U VenereUnited Kingdom2026-06-02Benton, John B Jr RENEWAL42Asiya Javayant
1017Greenwood B TollnerGermany2026-05-25Rangoni Of Florence UNQUALIFIED33Ioni Bowcher
1018Aika J FollerSpain2026-05-19Morlong Associates UNQUALIFIED16Amy Elsner
1019Kadeem N SaylorsBrazil2026-06-04Truhlar And Truhlar Attys RENEWAL93Ioni Bowcher
1020Kaitlin Q WieserRussia2026-06-02King, Christopher A Esq NEGOTIATION10Ioni Bowcher
1021Leja N RoysterSpain2026-05-21Dorl, James J Esq PROPOSAL27Bernardo Dominic
1022Alejandro O KuskoFrance2026-05-12Morlong Associates RENEWAL28Xuxue Feng
1023Octavia I AmigonAustralia2026-05-31Commercial Press RENEWAL15Asiya Javayant
1024Emily N MacleadGermany2026-05-20Commercial Press NEGOTIATION48Xuxue Feng
1025Stacey P WhobreyJapan2026-05-15Chanay, Jeffrey A Esq RENEWAL9Elwin Sharvill
1026Leon V GlickAustralia2026-06-02King, Christopher A Esq UNQUALIFIED12Asiya Javayant
1027Isabel S KolmetzSpain2026-05-16Rousseaux, Michael Esq QUALIFIED0Elwin Sharvill
1028Aditya Q PoquetteJapan2026-05-22Feiner Bros NEW80Ioni Bowcher
1029Jennifer F OstroskyItaly2026-06-02Feiner Bros NEGOTIATION88Amy Elsner
1030Misaki I DilliardAustralia2026-05-26Benton, John B Jr NEW78Bernardo Dominic
1031Kaitlin Q FollerSpain2026-06-02Truhlar And Truhlar Attys QUALIFIED45Elwin Sharvill
1032Tony I FlosiAustralia2026-05-12Dorl, James J Esq NEGOTIATION67Bernardo Dominic
1033Julie D SergiSpain2026-06-05Rangoni Of Florence UNQUALIFIED31Bernardo Dominic
1034Jones E BologniaAustralia2026-06-01Rangoni Of Florence RENEWAL88Asiya Javayant
1035Ricardo N BologniaUnited Kingdom2026-05-18King, Christopher A Esq PROPOSAL24Stephen Shaw
1036Ashley H WhobreyJapan2026-05-24Benton, John B Jr PROPOSAL68Ivan Magalhaes
1037Cody E GauchoBrazil2026-05-16King, Christopher A Esq QUALIFIED33Xuxue Feng
1038Maisha A GarufiRussia2026-05-27Rangoni Of Florence NEGOTIATION24Stephen Shaw
1039Maisha I OldroydSpain2026-05-26Rousseaux, Michael Esq NEW5Elwin Sharvill
1040Munro K RutaArgentina2026-05-24King, Christopher A Esq NEW78Ioni Bowcher
1041Alejandro H KolmetzSpain2026-05-10King, Christopher A Esq UNQUALIFIED72Ivan Magalhaes
1042Costa G PerinJapan2026-05-26Buckley Miller Wright NEGOTIATION61Stephen Shaw
1043Kadeem R VenereAustralia2026-06-05Dorl, James J Esq RENEWAL98Ioni Bowcher
1044Izzy C DoeJapan2026-05-12Commercial Press UNQUALIFIED35Anna Fali
1045Octavia Z MorascaItaly2026-05-13Chapman, Ross E Esq QUALIFIED50Anna Fali
1046Clifford L FlosiArgentina2026-05-12Buckley Miller Wright PROPOSAL18Xuxue Feng
1047Aika C StensethJapan2026-05-15Dorl, James J Esq NEGOTIATION94Amy Elsner
1048Arvin U ChuiSpain2026-05-31Morlong Associates PROPOSAL96Bernardo Dominic
1049Misaki U CaldareraItaly2026-05-26Chemel, James L Cpa RENEWAL15Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Ivar A RimRussiaIvan Magalhaes NEW
Isabel E GillianAustraliaStephen Shaw UNQUALIFIED
Costa I RutaItalyIvan Magalhaes NEGOTIATION
Rodrigues Z PoquetteCanadaAsiya Javayant PROPOSAL
Salvatore G VenereCanadaXuxue Feng PROPOSAL
Leja V PoquetteJapanIvan Magalhaes UNQUALIFIED
Clifford L FerenczUnited KingdomIoni Bowcher UNQUALIFIED
Rodrigues A BowleyBrazilElwin Sharvill UNQUALIFIED
Sinclair E MaletIndiaBernardo Dominic UNQUALIFIED
Wickens U MacleadJapanIvan Magalhaes QUALIFIED
Deepesh C SchemmerGermanyAmy Elsner UNQUALIFIED
Adams O PaprockiItalyBernardo Dominic NEW
Johnson K GauchoJapanAnna Fali QUALIFIED
Ashley Y GauchoSpainBernardo Dominic PROPOSAL
Emily R SchemmerFranceAmy Elsner PROPOSAL
Jones J BowleyArgentinaBernardo Dominic NEGOTIATION
Octavia Y FlosiCanadaAnna Fali PROPOSAL
Tony K TollnerAustraliaAmy Elsner UNQUALIFIED
Claire R RulapaughGermanyBernardo Dominic NEW
Chavez O SlusarskiFranceIoni Bowcher NEW
Salvatore G WhobreyFranceOnyama Limba PROPOSAL
Arvin I ChuiUnited KingdomIvan Magalhaes RENEWAL
Ivar Z MaletGermanyBernardo Dominic QUALIFIED
Morrow N FigeroaItalyOnyama Limba RENEWAL
Leon I DarakjyJapanXuxue Feng PROPOSAL
Leon L BologniaItalyIvan Magalhaes RENEWAL
Kaitlin V RoysterFranceAnna Fali RENEWAL
Claire I CaudyBrazilIoni Bowcher PROPOSAL
Stacey Y StockhamArgentinaOnyama Limba NEW
Mayumi Q KolmetzAustraliaIvan Magalhaes RENEWAL
James L BriddickGermanyIvan Magalhaes NEGOTIATION
Ricardo V CaudyJapanIoni Bowcher QUALIFIED
Leon P FlosiArgentinaElwin Sharvill RENEWAL
Morrow B RulapaughUnited KingdomStephen Shaw UNQUALIFIED
Octavia H ChuiSpainOnyama Limba PROPOSAL
Ricardo I MaletSpainAmy Elsner PROPOSAL
Costa C RulapaughRussiaOnyama Limba PROPOSAL
Leja A KolmetzFranceIvan Magalhaes NEW
Octavia P DoeSpainBernardo Dominic UNQUALIFIED
Munro V PerinRussiaElwin Sharvill RENEWAL
Ricardo I RutaAustraliaElwin Sharvill QUALIFIED
Rodrigues Z FerenczIndiaElwin Sharvill QUALIFIED
Jeanfrancois Y MorascaFranceOnyama Limba UNQUALIFIED
Kaitlin Z NestleArgentinaXuxue Feng NEGOTIATION
Maisha X WhobreyJapanIvan Magalhaes NEW
David P FollerItalyElwin Sharvill NEGOTIATION
Maisha W RulapaughFranceAmy Elsner QUALIFIED
Aika J FlosiIndiaAnna Fali RENEWAL
Isabel G SergiRussiaOnyama Limba NEGOTIATION
Ashley P CaldareraGermanyAmy Elsner RENEWAL
Frozen Columns
Name
Maisha X Kusko
Adams B Glick
Mayumi E Schemmer
Mayumi S Shinko
Nicolas P Chui
Tony Y Royster
Johnson X Waycott
Mayumi Q Garufi
Mujtaba Y Morasca
Juan D Oldroyd
Costa Z Kolmetz
David D Caldarera
Jennifer L Figeroa
Cody X Sergi
Nicolas O Doe
Leon G Flosi
Claire K Malet
Misaki U Slusarski
Costa V Gillian
Ricardo X Saylors
Maria T Morasca
Octavia W Wieser
Izzy B Shinko
Rodrigues Y Amigon
Ashley C Paprocki
Antonio C Royster
Deepesh X Sergi
Stacey N Garufi
Salvatore Z Nicka
Ivar E Doe
Munro E Butt
Cody J Rulapaugh
Claire R Kolmetz
Juan O Maclead
Jennifer M Marrier
Wickens E Gaucho
Jeanfrancois W Chui
Cody W Perin
Claire O Doe
James Z Paprocki
Julie Z Flosi
Arvin J Stockham
Alejandro F Glick
Ashley L Gaucho
Morrow U Marrier
Maisha G Ferencz
Johnson R Maclead
Juan M Gillian
Nicolas D Nestle
Faith G Royster
IdCountryDate
1000France2026-05-22
1001Russia2026-06-02
1002Spain2026-06-01
1003Brazil2026-05-26
1004Australia2026-05-30
1005Germany2026-06-03
1006Spain2026-05-18
1007India2026-05-08
1008Russia2026-05-25
1009Brazil2026-05-26
1010Russia2026-06-02
1011France2026-05-21
1012United Kingdom2026-05-27
1013Italy2026-05-07
1014Argentina2026-05-10
1015Russia2026-05-07
1016Australia2026-05-19
1017Italy2026-05-25
1018Spain2026-06-04
1019Italy2026-05-13
1020Australia2026-05-13
1021United Kingdom2026-05-09
1022France2026-05-09
1023United Kingdom2026-06-04
1024Spain2026-05-09
1025Italy2026-06-05
1026Argentina2026-05-26
1027Brazil2026-05-21
1028Japan2026-05-27
1029Russia2026-06-04
1030Argentina2026-05-16
1031India2026-05-30
1032Canada2026-05-25
1033Argentina2026-06-04
1034Australia2026-06-03
1035Italy2026-05-13
1036Australia2026-05-20
1037Canada2026-05-12
1038Japan2026-05-26
1039India2026-05-20
1040Spain2026-05-17
1041Russia2026-05-16
1042Argentina2026-06-03
1043Russia2026-05-18
1044Canada2026-05-25
1045Germany2026-05-28
1046France2026-05-23
1047Spain2026-05-18
1048Spain2026-05-09
1049Brazil2026-05-19

On-Demand Data

NameIdCountryDate
Mayumi W Poquette1000Argentina2026-05-16
Tony P Venere1001Canada2026-05-12
Rodrigues F Vocelka1002France2026-05-07
Mujtaba G Tollner1003Argentina2026-05-14
Jennifer K Perin1004United Kingdom2026-05-24
Murillo X Albares1005Canada2026-05-15
Jones W Ruta1006Australia2026-05-10
Maria U Whobrey1007India2026-05-19
Jeanfrancois G Venere1008France2026-05-30
Faith U Caldarera1009Germany2026-05-18
Johnson G Marrier1010India2026-05-30
Julie Y Whobrey1011Canada2026-05-14
Leon L Ostrosky1012Spain2026-05-09
Salvatore W Wieser1013Italy2026-05-19
Greenwood J Kolmetz1014Russia2026-05-16
Octavia T Oldroyd1015Spain2026-06-01
Mayumi W Sergi1016Canada2026-05-27
Silvio U Poquette1017Canada2026-05-14
Francesco D Morasca1018Australia2026-05-08
Murillo E Garufi1019India2026-05-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi P BowleyUnited KingdomStephen Shaw UNQUALIFIED
Jefferson V BologniaUnited KingdomXuxue Feng RENEWAL
Darci I WhobreyFranceAsiya Javayant PROPOSAL
Jennifer H DoeJapanIvan Magalhaes NEW
Nicolas D SaylorsUnited KingdomAsiya Javayant UNQUALIFIED
David C VenereJapanBernardo Dominic NEGOTIATION
Isabel P IturbideCanadaAmy Elsner UNQUALIFIED
Izzy Y IturbideSpainIvan Magalhaes NEGOTIATION
Juan T MaletBrazilAsiya Javayant UNQUALIFIED
Murillo Z InouyeIndiaStephen Shaw PROPOSAL
Wickens M InouyeFranceXuxue Feng RENEWAL
Jones O CaldareraGermanyIoni Bowcher QUALIFIED
Claire Q CaudyFranceIvan Magalhaes NEGOTIATION
Kaitlin O FigeroaAustraliaIoni Bowcher UNQUALIFIED
Clifford Z AlbaresGermanyOnyama Limba NEGOTIATION
Morrow U FlosiFranceAnna Fali RENEWAL
Maria L WhobreyRussiaAsiya Javayant QUALIFIED
Octavia D VenereRussiaXuxue Feng QUALIFIED
Jeanfrancois W WaycottRussiaOnyama Limba NEGOTIATION
Greenwood L PerinIndiaIoni Bowcher NEW
Izzy F SaylorsIndiaOnyama Limba RENEWAL
Deepesh I KuskoAustraliaStephen Shaw NEGOTIATION
Tony N MaletCanadaAmy Elsner QUALIFIED
Izzy J NickaAustraliaAsiya Javayant QUALIFIED
Jones I DilliardUnited KingdomAsiya Javayant NEW
Faith N GarufiIndiaXuxue Feng NEGOTIATION
Leon D MorascaJapanAnna Fali QUALIFIED
Aruna T NestleIndiaBernardo Dominic RENEWAL
Alejandro L SergiRussiaElwin Sharvill RENEWAL
Jefferson M AmigonIndiaStephen Shaw UNQUALIFIED
Salvatore T VenereGermanyAmy Elsner UNQUALIFIED
Smith R CampainItalyAnna Fali RENEWAL
Kaitlin W NestleAustraliaIvan Magalhaes RENEWAL
Kaitlin Y BologniaCanadaXuxue Feng RENEWAL
Izzy M SlusarskiIndiaStephen Shaw QUALIFIED
Munro U IturbideItalyOnyama Limba UNQUALIFIED
James N DarakjyGermanyIvan Magalhaes RENEWAL
Julie A CampainBrazilAsiya Javayant NEW
Johnson T DoeUnited KingdomOnyama Limba NEW
Stacey S GlickFranceAsiya Javayant QUALIFIED

<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.