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
Arvin Y SergiAustraliaAmy Elsner QUALIFIED
Julie Z PoquetteGermanyIoni Bowcher UNQUALIFIED
Leja Z ChuiArgentinaBernardo Dominic NEGOTIATION
Mujtaba U KuskoUnited KingdomIvan Magalhaes PROPOSAL
Antonio K WaycottAustraliaAnna Fali PROPOSAL
Ivar O PoquetteBrazilOnyama Limba QUALIFIED
Izzy Z ButtIndiaStephen Shaw UNQUALIFIED
Ashley Q StensethUnited KingdomAsiya Javayant UNQUALIFIED
Ivar U SchemmerSpainElwin Sharvill QUALIFIED
Antonio R NickaBrazilIvan Magalhaes NEW
Izzy D GillianGermanyElwin Sharvill NEW
Izzy V SchemmerIndiaIoni Bowcher NEGOTIATION
Claire Y SchemmerJapanAnna Fali NEW
Mujtaba S VenereBrazilAsiya Javayant UNQUALIFIED
Morrow X PoquetteUnited KingdomOnyama Limba NEGOTIATION
David Z VenereCanadaStephen Shaw RENEWAL
Silvio I DoeJapanXuxue Feng UNQUALIFIED
Cody U WieserCanadaBernardo Dominic QUALIFIED
Ivar I DoeCanadaOnyama Limba UNQUALIFIED
Nicolas M KolmetzRussiaIvan Magalhaes RENEWAL
Munro E BologniaJapanAmy Elsner NEW
Aruna Y DoeItalyAnna Fali QUALIFIED
Costa D NickaAustraliaAmy Elsner NEGOTIATION
Jefferson U MaletJapanIvan Magalhaes RENEWAL
Octavia Q ButtItalyElwin Sharvill NEW
Stacey L DilliardJapanIvan Magalhaes RENEWAL
Izzy D PoquetteIndiaAmy Elsner UNQUALIFIED
Jennifer Y VocelkaAustraliaAsiya Javayant NEGOTIATION
Aditya P MaletIndiaBernardo Dominic NEGOTIATION
Leon H InouyeSpainXuxue Feng PROPOSAL
Greenwood C MaletItalyBernardo Dominic NEGOTIATION
Darci V RoysterIndiaBernardo Dominic QUALIFIED
Jefferson A StensethItalyOnyama Limba RENEWAL
Ricardo I StensethSpainAsiya Javayant UNQUALIFIED
Emily Q StensethBrazilAnna Fali PROPOSAL
Darci W FollerFranceAmy Elsner NEGOTIATION
Antonio M GauchoSpainXuxue Feng NEW
Jefferson C GauchoUnited KingdomAnna Fali NEW
Aditya M WhobreyRussiaAsiya Javayant PROPOSAL
Arvin N FlosiBrazilStephen Shaw NEGOTIATION
Munro I FlosiBrazilOnyama Limba PROPOSAL
Octavia I MarrierItalyAmy Elsner PROPOSAL
Isabel B RulapaughIndiaAnna Fali UNQUALIFIED
Ashley T WaycottFranceIvan Magalhaes NEGOTIATION
Misaki M OstroskyGermanyIvan Magalhaes QUALIFIED
Ivar Q WaycottFranceBernardo Dominic UNQUALIFIED
Mayumi H NickaUnited KingdomAsiya Javayant PROPOSAL
Salvatore A FlosiUnited KingdomAmy Elsner NEW
Clifford H OldroydCanadaXuxue Feng UNQUALIFIED
Arvin U MaletArgentinaIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Clifford R CaldareraArgentinaAnna Fali QUALIFIED
James J FlosiCanadaOnyama Limba QUALIFIED
Julie R TollnerJapanAsiya Javayant UNQUALIFIED
Munro N BriddickFranceAmy Elsner PROPOSAL
Smith D FerenczGermanyAmy Elsner NEGOTIATION
Munro I PaprockiBrazilIvan Magalhaes QUALIFIED
Stacey H AlbaresFranceIoni Bowcher UNQUALIFIED
Jefferson F ChuiJapanBernardo Dominic NEGOTIATION
Ivar U SaylorsRussiaStephen Shaw QUALIFIED
Leja Q IturbideGermanyIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford Y FollerGermany2026-03-20Feltz Printing Service NEGOTIATION17Amy Elsner
1001Aika Q ChuiArgentina2026-04-01Printing Dimensions PROPOSAL20Onyama Limba
1002Antonio K AlbaresBrazil2026-04-01Truhlar And Truhlar Attys QUALIFIED45Ivan Magalhaes
1003Salvatore D MacleadArgentina2026-03-31Printing Dimensions NEGOTIATION67Ivan Magalhaes
1004Francesco Q RulapaughAustralia2026-04-13Printing Dimensions QUALIFIED56Onyama Limba
1005Jones S AlbaresFrance2026-04-14Rousseaux, Michael Esq UNQUALIFIED60Elwin Sharvill
1006Costa P VocelkaItaly2026-04-15Rangoni Of Florence NEW55Amy Elsner
1007Costa H KuskoCanada2026-03-29Rousseaux, Michael Esq NEW99Asiya Javayant
1008Isabel B KolmetzIndia2026-03-17Dorl, James J Esq UNQUALIFIED63Anna Fali
1009Juan T OldroydItaly2026-03-31Buckley Miller Wright RENEWAL57Elwin Sharvill
1010Cody X MarrierCanada2026-03-20Dorl, James J Esq NEGOTIATION27Xuxue Feng
1011Jeanfrancois E MarrierBrazil2026-04-11Dorl, James J Esq PROPOSAL3Asiya Javayant
1012Wickens M MaletRussia2026-04-14Chanay, Jeffrey A Esq PROPOSAL34Amy Elsner
1013Rodrigues Q CaudyAustralia2026-04-04Feiner Bros RENEWAL59Anna Fali
1014Jones A GauchoItaly2026-04-10Chapman, Ross E Esq PROPOSAL82Amy Elsner
1015James J AlbaresUnited Kingdom2026-03-26Rousseaux, Michael Esq NEW51Asiya Javayant
1016Silvio N ButtBrazil2026-03-23Chapman, Ross E Esq NEGOTIATION71Bernardo Dominic
1017Silvio N BriddickRussia2026-03-24Truhlar And Truhlar Attys NEW91Stephen Shaw
1018Francesco E GauchoUnited Kingdom2026-03-21Feltz Printing Service NEGOTIATION9Ivan Magalhaes
1019Silvio N KolmetzFrance2026-04-12King, Christopher A Esq NEW54Ivan Magalhaes
1020Leon N CampainGermany2026-04-14Rousseaux, Michael Esq QUALIFIED2Onyama Limba
1021Juan A PaprockiCanada2026-04-05Morlong Associates NEGOTIATION5Anna Fali
1022Chavez H DarakjyRussia2026-03-28Benton, John B Jr PROPOSAL75Xuxue Feng
1023Greenwood W ButtBrazil2026-04-03Benton, John B Jr NEGOTIATION40Stephen Shaw
1024Claire O BologniaAustralia2026-04-11Printing Dimensions NEW50Bernardo Dominic
1025Emily L MaletRussia2026-04-10Rousseaux, Michael Esq NEW37Elwin Sharvill
1026Stacey S MarrierArgentina2026-03-25King, Christopher A Esq QUALIFIED56Amy Elsner
1027Munro N CampainGermany2026-04-03Truhlar And Truhlar Attys PROPOSAL46Anna Fali
1028Ashley S BowleyBrazil2026-04-06Rangoni Of Florence NEW39Xuxue Feng
1029Chavez I ButtCanada2026-04-01Chemel, James L Cpa NEGOTIATION77Ioni Bowcher
1030Greenwood U FerenczJapan2026-03-29Feltz Printing Service PROPOSAL54Amy Elsner
1031Ricardo F TollnerArgentina2026-03-29Rousseaux, Michael Esq UNQUALIFIED57Stephen Shaw
1032Greenwood S VocelkaIndia2026-03-19Rangoni Of Florence NEGOTIATION44Ioni Bowcher
1033Ashley N FerenczItaly2026-03-18Dorl, James J Esq PROPOSAL53Asiya Javayant
1034Leja L SchemmerJapan2026-04-02Dorl, James J Esq NEGOTIATION26Bernardo Dominic
1035Silvio W AmigonUnited Kingdom2026-03-23Morlong Associates UNQUALIFIED10Elwin Sharvill
1036Tony U IturbideUnited Kingdom2026-04-11King, Christopher A Esq NEGOTIATION21Onyama Limba
1037Johnson E ShinkoCanada2026-03-23Benton, John B Jr NEGOTIATION98Ioni Bowcher
1038Mujtaba B GauchoUnited Kingdom2026-03-20Dorl, James J Esq PROPOSAL99Xuxue Feng
1039Arvin R FigeroaGermany2026-03-18Rousseaux, Michael Esq NEGOTIATION55Asiya Javayant
1040Cody H OldroydRussia2026-03-17Printing Dimensions QUALIFIED95Ioni Bowcher
1041Julie O MarrierBrazil2026-03-25Commercial Press RENEWAL38Ioni Bowcher
1042Isabel H ChuiAustralia2026-04-03Printing Dimensions PROPOSAL74Bernardo Dominic
1043Kaitlin C SchemmerSpain2026-04-03Benton, John B Jr RENEWAL17Onyama Limba
1044Silvio U ShinkoBrazil2026-04-09Rousseaux, Michael Esq PROPOSAL47Stephen Shaw
1045Cody T BriddickAustralia2026-04-13Rousseaux, Michael Esq UNQUALIFIED10Xuxue Feng
1046Francesco K TollnerFrance2026-04-15Buckley Miller Wright NEW32Anna Fali
1047Nicolas J GauchoItaly2026-04-05Feltz Printing Service QUALIFIED7Stephen Shaw
1048Wickens F WhobreyCanada2026-04-08Feiner Bros PROPOSAL10Ioni Bowcher
1049Greenwood E MorascaBrazil2026-03-20Rangoni Of Florence NEW55Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Faith Z StockhamBrazilAsiya Javayant NEW
Izzy I OldroydIndiaOnyama Limba QUALIFIED
Jones B InouyeAustraliaBernardo Dominic UNQUALIFIED
Misaki A MacleadFranceElwin Sharvill PROPOSAL
Octavia R MarrierCanadaOnyama Limba PROPOSAL
Maria F StensethUnited KingdomAmy Elsner RENEWAL
Francesco W PerinJapanStephen Shaw PROPOSAL
Chavez L AmigonAustraliaElwin Sharvill PROPOSAL
Ivar D MaletRussiaBernardo Dominic QUALIFIED
Stacey H TollnerSpainXuxue Feng NEW
Emily Z RutaRussiaStephen Shaw NEW
Chavez V RoysterFranceStephen Shaw PROPOSAL
Faith Y CampainRussiaAmy Elsner RENEWAL
Misaki M WhobreyArgentinaIvan Magalhaes RENEWAL
Leja I PerinBrazilIvan Magalhaes NEGOTIATION
Jones E RoysterFranceAnna Fali UNQUALIFIED
David U PerinJapanIvan Magalhaes NEW
Munro K DilliardAustraliaXuxue Feng RENEWAL
Salvatore Z FollerFranceAsiya Javayant NEGOTIATION
Claire F MacleadItalyElwin Sharvill UNQUALIFIED
Aruna S KuskoBrazilAsiya Javayant RENEWAL
Silvio O RutaArgentinaXuxue Feng NEW
Maisha W GillianFranceIoni Bowcher QUALIFIED
Francesco S CampainBrazilIoni Bowcher UNQUALIFIED
Jefferson V CaldareraArgentinaElwin Sharvill NEGOTIATION
Ivar M GillianBrazilStephen Shaw NEGOTIATION
Jeanfrancois V ButtCanadaAnna Fali PROPOSAL
Maisha A CaldareraRussiaXuxue Feng PROPOSAL
Antonio H WieserRussiaStephen Shaw QUALIFIED
Leja Y OldroydBrazilStephen Shaw PROPOSAL
Aditya M ShinkoArgentinaXuxue Feng NEGOTIATION
Octavia N MaletAustraliaAsiya Javayant NEGOTIATION
Costa C CaldareraIndiaStephen Shaw RENEWAL
Mayumi D ShinkoUnited KingdomStephen Shaw NEW
Izzy E SaylorsIndiaStephen Shaw NEGOTIATION
Julie I DoeFranceAsiya Javayant RENEWAL
Jeanfrancois E ChuiRussiaOnyama Limba UNQUALIFIED
Clifford W WaycottArgentinaStephen Shaw NEW
Ashley T AmigonArgentinaElwin Sharvill NEW
Maria Y NestleArgentinaAmy Elsner PROPOSAL
Darci J KuskoSpainStephen Shaw PROPOSAL
Nicolas Q ButtRussiaAmy Elsner PROPOSAL
Faith K SaylorsCanadaBernardo Dominic RENEWAL
Jennifer R BologniaGermanyOnyama Limba RENEWAL
Ivar R SlusarskiItalyXuxue Feng QUALIFIED
Tony H AmigonItalyAmy Elsner UNQUALIFIED
Smith L MaletSpainAmy Elsner NEW
Wickens F OstroskyAustraliaAnna Fali NEGOTIATION
Rodrigues O NestleSpainIvan Magalhaes QUALIFIED
Jones M RoysterItalyIoni Bowcher RENEWAL
Frozen Columns
Name
Mujtaba C Albares
Johnson R Ostrosky
Cody R Maclead
Cody Y Garufi
Aika N Kusko
Salvatore M Darakjy
Antonio H Whobrey
Smith S Paprocki
Costa N Bolognia
Nicolas X Ruta
Emily P Stockham
Aruna F Rulapaugh
Antonio P Nestle
Isabel H Briddick
Aruna N Stenseth
Faith L Bowley
Wickens O Waycott
Adams M Doe
Aruna M Oldroyd
Leja D Morasca
Faith H Ostrosky
Johnson T Kusko
Mujtaba N Inouye
Wickens O Slusarski
Jones A Figeroa
Alejandro F Iturbide
James S Whobrey
Izzy R Ruta
Murillo I Malet
Ricardo W Iturbide
Julie B Saylors
Faith F Bolognia
Cody L Briddick
Tony B Doe
Wickens U Ruta
Costa L Maclead
Emily Y Waycott
Jefferson J Inouye
Izzy S Vocelka
Julie U Morasca
Stacey X Flosi
Deepesh A Ferencz
Arvin D Darakjy
Rodrigues Z Iturbide
Maria V Ferencz
Tony E Darakjy
Maisha B Ostrosky
Alejandro V Tollner
Claire B Flosi
Isabel J Slusarski
IdCountryDate
1000Argentina2026-03-22
1001United Kingdom2026-04-13
1002United Kingdom2026-03-21
1003Germany2026-03-23
1004Russia2026-04-02
1005India2026-04-09
1006Australia2026-04-08
1007Italy2026-04-10
1008Australia2026-03-23
1009Japan2026-04-11
1010Australia2026-04-01
1011India2026-03-30
1012United Kingdom2026-03-27
1013Australia2026-03-20
1014Argentina2026-03-29
1015Germany2026-04-08
1016Japan2026-04-11
1017Italy2026-04-10
1018Italy2026-04-02
1019Argentina2026-04-03
1020India2026-03-21
1021Argentina2026-04-09
1022Canada2026-04-15
1023France2026-04-04
1024Canada2026-04-04
1025United Kingdom2026-03-28
1026Spain2026-03-17
1027India2026-03-18
1028Australia2026-03-21
1029United Kingdom2026-03-31
1030Russia2026-03-24
1031France2026-04-09
1032Germany2026-04-10
1033Canada2026-04-08
1034Japan2026-03-21
1035Argentina2026-03-19
1036Japan2026-03-29
1037India2026-04-15
1038Italy2026-03-19
1039Russia2026-04-13
1040Brazil2026-03-22
1041United Kingdom2026-04-03
1042United Kingdom2026-03-21
1043Japan2026-04-01
1044Germany2026-03-21
1045France2026-03-18
1046Germany2026-03-28
1047Argentina2026-03-30
1048Spain2026-03-19
1049Italy2026-04-14

On-Demand Data

NameIdCountryDate
Adams G Dilliard1000Australia2026-03-21
Salvatore Y Maclead1001Russia2026-04-02
Maria N Malet1002Russia2026-04-12
Faith X Albares1003Italy2026-03-24
Misaki A Iturbide1004Canada2026-03-25
Cody L Chui1005France2026-04-11
Wickens P Ferencz1006Brazil2026-03-30
Kaitlin L Royster1007Spain2026-03-22
Alejandro H Poquette1008Japan2026-04-06
Leon B Butt1009Canada2026-04-08
Munro Z Waycott1010Russia2026-04-01
Costa W Whobrey1011Spain2026-04-06
Morrow X Rulapaugh1012Germany2026-03-26
Rodrigues U Whobrey1013France2026-03-18
Stacey F Dilliard1014Spain2026-04-07
Aruna S Chui1015Italy2026-04-05
Greenwood E Tollner1016Japan2026-03-25
Cody U Saylors1017Canada2026-03-23
Rodrigues F Saylors1018Russia2026-04-10
Leja E Garufi1019Canada2026-03-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro V NickaAustraliaAnna Fali UNQUALIFIED
Arvin R NestleUnited KingdomBernardo Dominic NEGOTIATION
Costa S RoysterUnited KingdomAnna Fali NEGOTIATION
Maisha B CaldareraIndiaXuxue Feng RENEWAL
Emily G MorascaJapanIoni Bowcher UNQUALIFIED
Clifford A DoeIndiaAnna Fali UNQUALIFIED
Kaitlin W WieserJapanAmy Elsner QUALIFIED
Cody V CampainSpainXuxue Feng PROPOSAL
Kadeem B NickaJapanOnyama Limba QUALIFIED
Jennifer R GillianBrazilStephen Shaw UNQUALIFIED
Francesco N GlickBrazilBernardo Dominic UNQUALIFIED
Smith H PerinAustraliaBernardo Dominic RENEWAL
Tony O PaprockiArgentinaXuxue Feng NEW
Murillo Q FollerArgentinaIvan Magalhaes RENEWAL
Claire J PoquetteFranceBernardo Dominic PROPOSAL
Munro M IturbideBrazilAsiya Javayant UNQUALIFIED
Arvin E DilliardFranceAsiya Javayant QUALIFIED
Chavez C GarufiIndiaAmy Elsner UNQUALIFIED
Aika O NestleGermanyAnna Fali RENEWAL
Morrow I MacleadFranceIoni Bowcher UNQUALIFIED
Silvio W StockhamGermanyBernardo Dominic PROPOSAL
Smith F MaletJapanStephen Shaw QUALIFIED
Aika U AmigonBrazilAsiya Javayant NEGOTIATION
Ivar A RutaJapanBernardo Dominic RENEWAL
Stacey Y PerinUnited KingdomBernardo Dominic RENEWAL
Nicolas K MaletArgentinaIoni Bowcher NEGOTIATION
Greenwood X NickaBrazilIvan Magalhaes RENEWAL
Wickens R VocelkaUnited KingdomAsiya Javayant PROPOSAL
Silvio K CaldareraSpainAnna Fali UNQUALIFIED
Ivar F MorascaArgentinaAmy Elsner UNQUALIFIED
Clifford A SchemmerJapanStephen Shaw NEGOTIATION
Arvin H AmigonUnited KingdomStephen Shaw RENEWAL
Octavia V RutaItalyElwin Sharvill RENEWAL
Smith R TollnerAustraliaAsiya Javayant NEW
Antonio B RutaUnited KingdomIoni Bowcher QUALIFIED
Emily W WhobreyIndiaIoni Bowcher NEW
Ricardo H RoysterRussiaElwin Sharvill QUALIFIED
Murillo Z KolmetzFranceIvan Magalhaes PROPOSAL
Emily H RimRussiaOnyama Limba NEW
Rodrigues P ShinkoFranceIvan Magalhaes UNQUALIFIED

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