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
Salvatore D DoeCanadaOnyama Limba UNQUALIFIED
Silvio K FigeroaSpainAsiya Javayant UNQUALIFIED
Francesco C MorascaGermanyXuxue Feng UNQUALIFIED
Nicolas D GauchoAustraliaAsiya Javayant NEGOTIATION
Francesco J GauchoFranceIvan Magalhaes QUALIFIED
Nicolas X ChuiCanadaOnyama Limba PROPOSAL
Rodrigues O GauchoJapanElwin Sharvill NEGOTIATION
Octavia A TollnerFranceAmy Elsner QUALIFIED
Greenwood B ButtJapanIvan Magalhaes PROPOSAL
Wickens E RoysterIndiaAmy Elsner QUALIFIED
David J OstroskyItalyIvan Magalhaes NEW
Kaitlin D MaletAustraliaAnna Fali NEW
Maria M MaletArgentinaIoni Bowcher QUALIFIED
Clifford V RutaUnited KingdomAnna Fali NEGOTIATION
Sinclair U ButtRussiaStephen Shaw NEGOTIATION
Izzy Q RoysterArgentinaAmy Elsner UNQUALIFIED
Rodrigues S MaletCanadaXuxue Feng QUALIFIED
Costa E TollnerSpainAsiya Javayant RENEWAL
Ivar J PoquetteArgentinaOnyama Limba QUALIFIED
Silvio Z KuskoIndiaXuxue Feng NEW
Johnson W InouyeGermanyBernardo Dominic RENEWAL
Kadeem E VenereIndiaAmy Elsner QUALIFIED
Costa X WhobreyArgentinaXuxue Feng QUALIFIED
David A MaletArgentinaStephen Shaw RENEWAL
Izzy D KuskoItalyIvan Magalhaes RENEWAL
Alejandro B TollnerFranceStephen Shaw NEW
Julie K WieserSpainOnyama Limba PROPOSAL
Jennifer T GarufiFranceOnyama Limba PROPOSAL
Aditya B SlusarskiBrazilBernardo Dominic QUALIFIED
Julie V NickaAustraliaXuxue Feng RENEWAL
Jeanfrancois X FerenczRussiaAnna Fali NEGOTIATION
Tony I FollerFranceElwin Sharvill NEGOTIATION
Silvio F ShinkoFranceIvan Magalhaes QUALIFIED
Cody W RulapaughFranceAnna Fali NEGOTIATION
Jennifer V BriddickIndiaIoni Bowcher QUALIFIED
Emily U BologniaRussiaBernardo Dominic PROPOSAL
Ashley W RoysterJapanBernardo Dominic NEW
Greenwood Y RoysterItalyAsiya Javayant NEW
Sinclair M WieserIndiaAsiya Javayant RENEWAL
Aruna V OldroydRussiaAmy Elsner NEGOTIATION
Mayumi Y CampainIndiaAsiya Javayant UNQUALIFIED
Leja I CaldareraCanadaAsiya Javayant PROPOSAL
Morrow Z FollerUnited KingdomAnna Fali UNQUALIFIED
Julie I RulapaughIndiaAmy Elsner NEGOTIATION
Sinclair I FerenczSpainIvan Magalhaes QUALIFIED
Misaki S MaletBrazilIvan Magalhaes NEW
Chavez V KolmetzItalyXuxue Feng QUALIFIED
Stacey L InouyeAustraliaAnna Fali PROPOSAL
Alejandro O RimArgentinaIvan Magalhaes UNQUALIFIED
Rodrigues B FerenczRussiaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aruna O GlickSpainAmy Elsner UNQUALIFIED
Ricardo Q FerenczRussiaStephen Shaw RENEWAL
Cody R AmigonBrazilAsiya Javayant RENEWAL
Wickens O OldroydUnited KingdomAsiya Javayant UNQUALIFIED
Aruna L NickaBrazilIvan Magalhaes NEW
Jennifer X BologniaArgentinaElwin Sharvill RENEWAL
Ivar E CaudyFranceOnyama Limba NEW
Sinclair U CaudySpainAmy Elsner QUALIFIED
Emily B FigeroaCanadaAnna Fali NEGOTIATION
Francesco T MaletJapanAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja W WhobreyAustralia2026-03-14Truhlar And Truhlar Attys QUALIFIED76Ivan Magalhaes
1001Juan Q GauchoAustralia2026-03-14Rousseaux, Michael Esq RENEWAL94Asiya Javayant
1002Ricardo R NickaUnited Kingdom2026-02-16Feiner Bros RENEWAL68Amy Elsner
1003Stacey R DilliardItaly2026-02-17Chemel, James L Cpa RENEWAL97Stephen Shaw
1004Kaitlin V GillianGermany2026-02-20Rangoni Of Florence NEGOTIATION70Ioni Bowcher
1005Jefferson V IturbideAustralia2026-03-11Buckley Miller Wright QUALIFIED94Elwin Sharvill
1006Adams K AlbaresFrance2026-03-02Feiner Bros NEGOTIATION47Bernardo Dominic
1007Maria Q FlosiBrazil2026-02-26Chemel, James L Cpa UNQUALIFIED44Anna Fali
1008Deepesh Z MaletUnited Kingdom2026-03-13Feltz Printing Service NEW65Stephen Shaw
1009Nicolas N BriddickIndia2026-03-01Feiner Bros NEW62Elwin Sharvill
1010Sinclair R AlbaresRussia2026-02-16King, Christopher A Esq NEW15Asiya Javayant
1011Morrow A StockhamUnited Kingdom2026-02-14Rangoni Of Florence NEGOTIATION35Asiya Javayant
1012Leja W AmigonCanada2026-02-23Chemel, James L Cpa NEGOTIATION56Elwin Sharvill
1013Smith D KolmetzRussia2026-02-24Feiner Bros RENEWAL95Anna Fali
1014Jeanfrancois H RimItaly2026-02-27Buckley Miller Wright PROPOSAL22Stephen Shaw
1015Wickens S MarrierRussia2026-03-10Rangoni Of Florence NEW34Stephen Shaw
1016Antonio S TollnerCanada2026-02-18Commercial Press NEW10Amy Elsner
1017Jeanfrancois N AlbaresFrance2026-02-25Morlong Associates NEW53Bernardo Dominic
1018Juan G StockhamRussia2026-03-13Feltz Printing Service QUALIFIED7Amy Elsner
1019Ricardo P StockhamItaly2026-02-18Chanay, Jeffrey A Esq NEGOTIATION39Stephen Shaw
1020Misaki Y StockhamFrance2026-02-14King, Christopher A Esq NEW0Ivan Magalhaes
1021Deepesh I RoysterItaly2026-03-13Chemel, James L Cpa UNQUALIFIED33Stephen Shaw
1022Greenwood Y KuskoAustralia2026-03-04Printing Dimensions NEGOTIATION83Anna Fali
1023Jeanfrancois K CampainAustralia2026-03-07Feiner Bros PROPOSAL96Xuxue Feng
1024Jeanfrancois P AlbaresFrance2026-03-06Chanay, Jeffrey A Esq PROPOSAL22Anna Fali
1025Darci Q AlbaresJapan2026-02-16Printing Dimensions NEGOTIATION56Stephen Shaw
1026Ricardo R DilliardAustralia2026-03-02Commercial Press RENEWAL51Stephen Shaw
1027Jefferson U IturbideIndia2026-02-15Commercial Press PROPOSAL15Elwin Sharvill
1028Jefferson E DarakjyUnited Kingdom2026-02-24Feiner Bros NEW7Onyama Limba
1029Octavia O OldroydFrance2026-03-02Rangoni Of Florence QUALIFIED57Ivan Magalhaes
1030Maisha O RulapaughJapan2026-02-25King, Christopher A Esq NEGOTIATION30Bernardo Dominic
1031Wickens W GillianFrance2026-02-21King, Christopher A Esq PROPOSAL56Amy Elsner
1032Ivar U RimRussia2026-02-17Printing Dimensions PROPOSAL48Onyama Limba
1033Greenwood S TollnerItaly2026-02-20King, Christopher A Esq QUALIFIED46Asiya Javayant
1034Octavia O GauchoFrance2026-02-14Commercial Press QUALIFIED16Elwin Sharvill
1035Claire F StensethGermany2026-02-19Truhlar And Truhlar Attys UNQUALIFIED17Xuxue Feng
1036Mayumi E SlusarskiFrance2026-02-15Dorl, James J Esq UNQUALIFIED51Onyama Limba
1037Rodrigues J PaprockiArgentina2026-03-11Morlong Associates UNQUALIFIED32Stephen Shaw
1038Morrow G DarakjyCanada2026-03-06Chemel, James L Cpa RENEWAL55Ioni Bowcher
1039Smith Z ShinkoJapan2026-02-17Printing Dimensions UNQUALIFIED94Anna Fali
1040Maria O ButtArgentina2026-03-04Commercial Press QUALIFIED60Ivan Magalhaes
1041Tony T CampainAustralia2026-02-25Chanay, Jeffrey A Esq NEW99Elwin Sharvill
1042Maisha Z BologniaItaly2026-03-02Rousseaux, Michael Esq PROPOSAL48Onyama Limba
1043Arvin M MaletFrance2026-03-03Truhlar And Truhlar Attys PROPOSAL50Anna Fali
1044Maria M InouyeArgentina2026-03-01Dorl, James J Esq NEGOTIATION0Amy Elsner
1045Rodrigues X FerenczItaly2026-03-10Morlong Associates NEGOTIATION8Elwin Sharvill
1046Alejandro C SaylorsCanada2026-03-02Chapman, Ross E Esq NEGOTIATION93Asiya Javayant
1047Francesco U FerenczBrazil2026-03-14Commercial Press NEGOTIATION87Ioni Bowcher
1048Greenwood K AmigonIndia2026-03-08Chemel, James L Cpa NEGOTIATION44Anna Fali
1049Morrow H CampainJapan2026-03-05Chapman, Ross E Esq QUALIFIED57Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Julie L PerinArgentinaIoni Bowcher PROPOSAL
Mayumi J KolmetzRussiaAnna Fali PROPOSAL
Aika S BowleySpainStephen Shaw PROPOSAL
Smith D RimFranceIvan Magalhaes QUALIFIED
Cody H IturbideUnited KingdomStephen Shaw NEW
Maisha I BologniaJapanElwin Sharvill NEGOTIATION
Chavez U GillianIndiaIoni Bowcher UNQUALIFIED
Costa M StensethSpainBernardo Dominic PROPOSAL
Antonio H PerinArgentinaBernardo Dominic UNQUALIFIED
Costa F StockhamRussiaIvan Magalhaes PROPOSAL
Mayumi Z DilliardBrazilElwin Sharvill UNQUALIFIED
Leon M MaletCanadaStephen Shaw QUALIFIED
Rodrigues J StensethAustraliaOnyama Limba NEW
Greenwood M WieserJapanStephen Shaw QUALIFIED
Stacey T SergiCanadaAsiya Javayant NEW
Kaitlin B FlosiFranceIoni Bowcher QUALIFIED
Rodrigues A DilliardJapanOnyama Limba NEW
Emily E VocelkaUnited KingdomIvan Magalhaes QUALIFIED
Mayumi B TollnerIndiaAmy Elsner NEW
Kadeem R CaudyArgentinaXuxue Feng RENEWAL
Nicolas C KolmetzJapanXuxue Feng NEGOTIATION
Darci K SlusarskiCanadaIoni Bowcher QUALIFIED
Izzy G NestleItalyOnyama Limba NEW
Aruna E CampainAustraliaAnna Fali NEW
Cody B CaudyRussiaIoni Bowcher QUALIFIED
Maria N SlusarskiRussiaIvan Magalhaes QUALIFIED
Arvin V DoeUnited KingdomAnna Fali RENEWAL
Johnson D BriddickBrazilAnna Fali QUALIFIED
Emily V GillianFranceAnna Fali QUALIFIED
Julie B WieserIndiaBernardo Dominic UNQUALIFIED
Smith E ChuiGermanyXuxue Feng RENEWAL
Aditya X FerenczGermanyOnyama Limba PROPOSAL
Cody A BowleyUnited KingdomBernardo Dominic QUALIFIED
Wickens F NestleSpainOnyama Limba UNQUALIFIED
Alejandro Q GauchoItalyIvan Magalhaes NEW
Emily A IturbideBrazilAsiya Javayant RENEWAL
Ricardo R OldroydSpainOnyama Limba PROPOSAL
Leon I GarufiCanadaStephen Shaw PROPOSAL
Maisha Z BologniaItalyIvan Magalhaes PROPOSAL
Maisha K RulapaughSpainIoni Bowcher NEGOTIATION
Greenwood V FigeroaRussiaAmy Elsner QUALIFIED
Mujtaba B RulapaughBrazilBernardo Dominic RENEWAL
Juan K CaudyBrazilAmy Elsner UNQUALIFIED
Antonio J MarrierItalyBernardo Dominic UNQUALIFIED
David L RoysterFranceAnna Fali NEGOTIATION
Chavez Z SaylorsGermanyXuxue Feng QUALIFIED
Arvin N WaycottCanadaAnna Fali UNQUALIFIED
Misaki C GarufiArgentinaStephen Shaw PROPOSAL
Jones F GlickGermanyAnna Fali PROPOSAL
Johnson D CaldareraBrazilStephen Shaw QUALIFIED
Frozen Columns
Name
Adams B Rulapaugh
Kaitlin C Oldroyd
Cody C Shinko
Deepesh H Chui
Costa I Albares
Francesco I Sergi
Jones M Tollner
Octavia R Nestle
Stacey G Inouye
Faith S Royster
Silvio V Iturbide
James X Tollner
Johnson J Kolmetz
Leon T Stenseth
Izzy Q Dilliard
Isabel D Morasca
Maria Q Iturbide
Faith O Nicka
Kadeem L Doe
Aditya B Iturbide
Misaki X Oldroyd
Jones H Caldarera
Wickens N Shinko
Greenwood G Wieser
Isabel B Maclead
Kaitlin Z Kusko
Juan Y Butt
Octavia Y Dilliard
Nicolas L Vocelka
Arvin Q Garufi
Costa P Oldroyd
Isabel H Foller
David X Rulapaugh
Jennifer W Royster
Maria H Ruta
Wickens O Ostrosky
Faith D Darakjy
Faith C Royster
Ricardo V Royster
Kadeem Q Kusko
Ricardo M Oldroyd
Jennifer P Dilliard
Munro P Ruta
Claire Y Bowley
Adams Y Marrier
Greenwood F Stockham
Jones H Venere
Aruna A Sergi
Salvatore B Rim
Jennifer M Schemmer
IdCountryDate
1000India2026-03-07
1001Argentina2026-03-12
1002Russia2026-03-11
1003Russia2026-03-08
1004Italy2026-03-10
1005United Kingdom2026-03-05
1006Argentina2026-03-07
1007India2026-03-08
1008Japan2026-02-25
1009Canada2026-02-14
1010Brazil2026-03-02
1011Australia2026-02-16
1012Australia2026-02-21
1013United Kingdom2026-02-14
1014Italy2026-02-25
1015Canada2026-02-25
1016France2026-02-24
1017Argentina2026-02-19
1018Spain2026-03-05
1019Argentina2026-02-19
1020Brazil2026-02-26
1021Argentina2026-02-18
1022Japan2026-03-10
1023Japan2026-02-19
1024Argentina2026-02-24
1025France2026-03-08
1026Brazil2026-02-19
1027France2026-03-06
1028Brazil2026-02-17
1029Australia2026-02-18
1030Italy2026-02-19
1031Brazil2026-03-07
1032Russia2026-03-06
1033Brazil2026-02-22
1034Japan2026-02-14
1035Japan2026-02-24
1036Russia2026-02-24
1037Russia2026-02-17
1038India2026-02-16
1039Australia2026-02-26
1040India2026-03-04
1041Italy2026-03-02
1042Brazil2026-02-22
1043United Kingdom2026-03-14
1044Australia2026-02-21
1045Germany2026-03-12
1046Russia2026-03-06
1047United Kingdom2026-03-12
1048Brazil2026-02-25
1049Italy2026-03-08

On-Demand Data

NameIdCountryDate
Kaitlin N Saylors1000Argentina2026-02-26
Isabel P Ostrosky1001Brazil2026-03-05
Wickens Y Whobrey1002Japan2026-02-19
Francesco R Darakjy1003Brazil2026-02-23
Nicolas M Nicka1004Russia2026-02-19
Greenwood N Stockham1005France2026-03-01
Adams H Vocelka1006Canada2026-03-09
Darci K Perin1007Argentina2026-02-21
Antonio G Poquette1008Germany2026-02-14
Johnson V Garufi1009Russia2026-03-01
Aruna A Nestle1010United Kingdom2026-03-13
Leja N Iturbide1011Russia2026-03-05
Jeanfrancois K Maclead1012Japan2026-03-13
Jones B Morasca1013India2026-02-27
Francesco B Nicka1014Australia2026-03-12
Ivar J Rim1015United Kingdom2026-03-01
Jennifer E Bolognia1016Italy2026-03-09
Juan B Chui1017Brazil2026-02-26
Greenwood B Paprocki1018Canada2026-02-20
Emily R Doe1019Argentina2026-02-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro S VenereCanadaStephen Shaw NEGOTIATION
Darci D SchemmerCanadaAnna Fali NEW
Cody B KolmetzIndiaElwin Sharvill PROPOSAL
Arvin Q TollnerArgentinaOnyama Limba UNQUALIFIED
Greenwood W PoquetteJapanBernardo Dominic UNQUALIFIED
Murillo P MacleadBrazilIvan Magalhaes NEW
Stacey N CampainRussiaAnna Fali UNQUALIFIED
Leon K CaldareraRussiaBernardo Dominic QUALIFIED
Antonio Y ShinkoSpainBernardo Dominic PROPOSAL
Wickens D DilliardAustraliaIvan Magalhaes RENEWAL
Jefferson W StensethGermanyAsiya Javayant QUALIFIED
Francesco E NickaRussiaXuxue Feng PROPOSAL
Misaki O DoeArgentinaAmy Elsner NEGOTIATION
Ricardo O BologniaArgentinaElwin Sharvill QUALIFIED
Munro N RoysterItalyAmy Elsner UNQUALIFIED
Izzy I ChuiIndiaIvan Magalhaes PROPOSAL
David S VenereJapanBernardo Dominic RENEWAL
Ricardo T VenereJapanIoni Bowcher UNQUALIFIED
Faith I GlickArgentinaElwin Sharvill NEW
Johnson R ChuiUnited KingdomAnna Fali NEW
Salvatore G FollerItalyAsiya Javayant QUALIFIED
Ivar L AlbaresRussiaStephen Shaw RENEWAL
Jones D ChuiItalyXuxue Feng NEGOTIATION
Maisha K AlbaresArgentinaAnna Fali RENEWAL
Morrow Y FlosiAustraliaOnyama Limba UNQUALIFIED
Mayumi S GarufiUnited KingdomAmy Elsner NEGOTIATION
Julie Q ShinkoArgentinaBernardo Dominic RENEWAL
Sinclair Y CaudyCanadaBernardo Dominic UNQUALIFIED
Juan R AlbaresAustraliaOnyama Limba NEW
Johnson M BriddickBrazilElwin Sharvill QUALIFIED
Isabel R DilliardItalyBernardo Dominic NEGOTIATION
Jefferson W WhobreyItalyIoni Bowcher RENEWAL
Murillo C MaletIndiaElwin Sharvill PROPOSAL
Alejandro S OldroydFranceIoni Bowcher NEGOTIATION
Adams I MaletAustraliaAsiya Javayant NEGOTIATION
Aika M BriddickJapanIvan Magalhaes NEW
Smith Z CaudyArgentinaBernardo Dominic NEW
Leja B SergiItalyIvan Magalhaes NEW
Mujtaba P GlickGermanyStephen Shaw UNQUALIFIED
Jennifer O WieserFranceAsiya Javayant NEW

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