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
Costa L CaudyIndiaStephen Shaw UNQUALIFIED
Mayumi U TollnerBrazilBernardo Dominic NEW
Kaitlin U TollnerSpainAsiya Javayant NEGOTIATION
Leja E BowleyRussiaAsiya Javayant PROPOSAL
Octavia L SergiFranceStephen Shaw RENEWAL
Maria U OldroydBrazilElwin Sharvill UNQUALIFIED
Claire L GillianArgentinaIoni Bowcher PROPOSAL
Cody Z IturbideFranceAmy Elsner NEGOTIATION
Jefferson B MacleadGermanyXuxue Feng RENEWAL
Murillo B DilliardCanadaAsiya Javayant PROPOSAL
Aika S KolmetzArgentinaBernardo Dominic RENEWAL
Ivar H GillianGermanyElwin Sharvill UNQUALIFIED
Murillo B TollnerItalyOnyama Limba NEW
Aruna O MacleadArgentinaElwin Sharvill QUALIFIED
Clifford H BologniaSpainAmy Elsner UNQUALIFIED
Cody F TollnerUnited KingdomBernardo Dominic RENEWAL
Arvin O KuskoBrazilAnna Fali NEW
Salvatore Q WaycottUnited KingdomAsiya Javayant PROPOSAL
Claire G SlusarskiCanadaAnna Fali QUALIFIED
Juan V CaldareraIndiaAsiya Javayant NEW
Wickens E TollnerRussiaXuxue Feng QUALIFIED
Kadeem G StensethCanadaStephen Shaw PROPOSAL
Claire H ButtSpainIoni Bowcher QUALIFIED
Isabel I MorascaUnited KingdomBernardo Dominic NEW
Jefferson Q TollnerJapanOnyama Limba PROPOSAL
Costa O BowleyFranceAsiya Javayant RENEWAL
Ricardo A DoeRussiaStephen Shaw PROPOSAL
Ashley U SaylorsUnited KingdomAmy Elsner UNQUALIFIED
Octavia W DoeArgentinaIvan Magalhaes PROPOSAL
Greenwood O SergiJapanOnyama Limba UNQUALIFIED
Morrow V NickaSpainAmy Elsner PROPOSAL
Leon Z OldroydIndiaXuxue Feng PROPOSAL
Stacey P MarrierFranceIvan Magalhaes NEGOTIATION
Mujtaba J MorascaIndiaBernardo Dominic QUALIFIED
Antonio T StockhamAustraliaAmy Elsner NEGOTIATION
Morrow H MaletUnited KingdomXuxue Feng NEW
Jennifer A MacleadUnited KingdomAsiya Javayant NEW
Maisha N FollerIndiaXuxue Feng UNQUALIFIED
Arvin C SaylorsFranceIoni Bowcher NEGOTIATION
Antonio I RutaJapanOnyama Limba PROPOSAL
Salvatore D KuskoAustraliaIvan Magalhaes RENEWAL
Tony F OldroydIndiaAsiya Javayant NEW
Leon T FlosiBrazilAnna Fali NEW
Silvio J ButtJapanAsiya Javayant NEW
Ricardo L StockhamRussiaElwin Sharvill UNQUALIFIED
Octavia O SlusarskiAustraliaAsiya Javayant UNQUALIFIED
Wickens N FerenczItalyIvan Magalhaes UNQUALIFIED
Antonio Z AlbaresUnited KingdomOnyama Limba QUALIFIED
Octavia M SchemmerGermanyAmy Elsner QUALIFIED
Sinclair O CaudyGermanyIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Maria L CaldareraAustraliaXuxue Feng NEGOTIATION
Mujtaba L ChuiUnited KingdomStephen Shaw UNQUALIFIED
Adams T IturbideAustraliaElwin Sharvill NEW
Ivar U SlusarskiIndiaBernardo Dominic PROPOSAL
Izzy J CampainUnited KingdomIvan Magalhaes QUALIFIED
Morrow W WaycottFranceXuxue Feng QUALIFIED
Clifford E VocelkaFranceAsiya Javayant RENEWAL
Arvin P RulapaughJapanBernardo Dominic NEGOTIATION
Julie Q GlickFranceAnna Fali PROPOSAL
Aruna H RoysterGermanyStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy Q OstroskyJapan2026-06-21Buckley Miller Wright NEW37Amy Elsner
1001Jennifer W MarrierFrance2026-06-06Printing Dimensions UNQUALIFIED29Elwin Sharvill
1002Kaitlin L DoeFrance2026-05-26Chanay, Jeffrey A Esq RENEWAL31Asiya Javayant
1003David L NestleRussia2026-06-14Feltz Printing Service UNQUALIFIED91Amy Elsner
1004Salvatore C MaletItaly2026-06-18Feiner Bros QUALIFIED16Anna Fali
1005David G VenereGermany2026-06-09Printing Dimensions PROPOSAL53Onyama Limba
1006Misaki I BologniaJapan2026-06-07Feltz Printing Service NEGOTIATION97Amy Elsner
1007Ivar D ChuiAustralia2026-06-03Rousseaux, Michael Esq RENEWAL83Ivan Magalhaes
1008Stacey D IturbideItaly2026-06-08Benton, John B Jr NEGOTIATION92Amy Elsner
1009Greenwood K MorascaGermany2026-06-06Chapman, Ross E Esq PROPOSAL95Onyama Limba
1010Murillo J VocelkaBrazil2026-06-08Printing Dimensions QUALIFIED57Amy Elsner
1011Morrow Y DoeSpain2026-06-09Commercial Press PROPOSAL79Amy Elsner
1012Chavez A SchemmerGermany2026-05-25Buckley Miller Wright NEW98Ioni Bowcher
1013Leja K RimUnited Kingdom2026-06-21Benton, John B Jr NEW73Ioni Bowcher
1014Deepesh W CampainArgentina2026-06-13Buckley Miller Wright NEGOTIATION1Stephen Shaw
1015Maria Y NestleJapan2026-06-13Chapman, Ross E Esq NEGOTIATION56Elwin Sharvill
1016Stacey B VenereArgentina2026-06-08Dorl, James J Esq QUALIFIED73Ioni Bowcher
1017Maisha X FerenczFrance2026-06-02Feiner Bros NEW36Ivan Magalhaes
1018Cody C GlickFrance2026-06-02Rousseaux, Michael Esq QUALIFIED62Asiya Javayant
1019Jefferson G NestleIndia2026-06-19Commercial Press PROPOSAL14Ivan Magalhaes
1020Arvin S SergiBrazil2026-06-04Chanay, Jeffrey A Esq QUALIFIED43Amy Elsner
1021Antonio A BowleyArgentina2026-05-30King, Christopher A Esq QUALIFIED96Elwin Sharvill
1022Aika J ButtAustralia2026-06-06Commercial Press NEW78Stephen Shaw
1023Jeanfrancois S GlickArgentina2026-05-28Commercial Press RENEWAL65Ivan Magalhaes
1024Leja B AlbaresAustralia2026-05-24Buckley Miller Wright PROPOSAL95Ivan Magalhaes
1025Octavia D DilliardIndia2026-05-28Truhlar And Truhlar Attys NEW93Ivan Magalhaes
1026David P WaycottRussia2026-06-16Buckley Miller Wright RENEWAL43Asiya Javayant
1027Ricardo K FerenczFrance2026-06-20Chemel, James L Cpa UNQUALIFIED68Ioni Bowcher
1028David B StockhamAustralia2026-06-13King, Christopher A Esq UNQUALIFIED87Bernardo Dominic
1029Tony J PoquetteJapan2026-06-06King, Christopher A Esq QUALIFIED35Bernardo Dominic
1030Juan U DilliardCanada2026-06-01Commercial Press QUALIFIED43Elwin Sharvill
1031Arvin L SchemmerIndia2026-06-06Morlong Associates UNQUALIFIED9Stephen Shaw
1032Stacey I MorascaIndia2026-06-18Rangoni Of Florence NEGOTIATION58Elwin Sharvill
1033Ashley Q MarrierGermany2026-05-25Feiner Bros NEW52Onyama Limba
1034Munro T AmigonJapan2026-06-12Benton, John B Jr RENEWAL27Ioni Bowcher
1035Maria T InouyeBrazil2026-06-14Chapman, Ross E Esq NEGOTIATION51Elwin Sharvill
1036Isabel F GillianIndia2026-05-30King, Christopher A Esq RENEWAL24Xuxue Feng
1037Jennifer S FigeroaRussia2026-05-30Dorl, James J Esq NEW79Xuxue Feng
1038David G DoeIndia2026-06-02Printing Dimensions NEGOTIATION1Bernardo Dominic
1039Nicolas V ShinkoSpain2026-05-26Truhlar And Truhlar Attys NEGOTIATION21Ioni Bowcher
1040Ashley O SergiGermany2026-06-04Printing Dimensions PROPOSAL22Elwin Sharvill
1041Smith S DoeUnited Kingdom2026-06-19Dorl, James J Esq UNQUALIFIED78Asiya Javayant
1042James B FerenczJapan2026-06-06Feiner Bros NEGOTIATION21Onyama Limba
1043Chavez R PoquetteIndia2026-06-12Dorl, James J Esq RENEWAL22Xuxue Feng
1044Greenwood T RoysterRussia2026-05-28Printing Dimensions NEW3Ivan Magalhaes
1045Silvio D FlosiItaly2026-06-14Printing Dimensions PROPOSAL49Amy Elsner
1046Cody K StensethUnited Kingdom2026-06-22Chanay, Jeffrey A Esq QUALIFIED2Ioni Bowcher
1047Emily L BologniaArgentina2026-06-05Chemel, James L Cpa NEGOTIATION79Elwin Sharvill
1048Costa L WhobreyBrazil2026-06-02Feiner Bros RENEWAL36Ivan Magalhaes
1049Clifford H RimItaly2026-06-02Printing Dimensions PROPOSAL29Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Izzy G MorascaFranceAmy Elsner QUALIFIED
Kadeem U AlbaresArgentinaElwin Sharvill RENEWAL
Misaki F BowleySpainOnyama Limba NEW
Adams R PoquetteSpainAmy Elsner RENEWAL
Maria M KuskoFranceIoni Bowcher UNQUALIFIED
Greenwood U WhobreyBrazilAsiya Javayant RENEWAL
Arvin S GlickBrazilXuxue Feng QUALIFIED
Juan G VenereItalyStephen Shaw NEW
Jennifer Z SergiRussiaAnna Fali PROPOSAL
Claire E IturbideIndiaAnna Fali NEGOTIATION
Leon Z GlickItalyIoni Bowcher RENEWAL
Ashley P KolmetzIndiaAnna Fali QUALIFIED
Octavia Z MarrierCanadaElwin Sharvill QUALIFIED
Francesco J SergiUnited KingdomOnyama Limba PROPOSAL
Smith F VocelkaRussiaAnna Fali NEGOTIATION
Kadeem G NestleCanadaElwin Sharvill UNQUALIFIED
Kaitlin J BowleyItalyAnna Fali UNQUALIFIED
Arvin Z VenereItalyAmy Elsner NEGOTIATION
Rodrigues F AmigonBrazilAnna Fali NEGOTIATION
Arvin G BriddickArgentinaXuxue Feng UNQUALIFIED
Munro T MacleadGermanyBernardo Dominic PROPOSAL
Munro E CaudyArgentinaIoni Bowcher UNQUALIFIED
David C DilliardIndiaIoni Bowcher PROPOSAL
Wickens B SlusarskiItalyStephen Shaw NEGOTIATION
David T KuskoCanadaIoni Bowcher UNQUALIFIED
Smith M FerenczJapanIvan Magalhaes QUALIFIED
Arvin V PoquetteItalyAsiya Javayant NEGOTIATION
Morrow J SergiSpainIoni Bowcher PROPOSAL
Deepesh C SaylorsJapanAnna Fali NEGOTIATION
Claire G DarakjyBrazilAsiya Javayant QUALIFIED
Kadeem W ButtArgentinaIvan Magalhaes RENEWAL
Julie B FollerAustraliaStephen Shaw QUALIFIED
Greenwood V NestleIndiaAsiya Javayant NEW
Octavia R SaylorsJapanElwin Sharvill PROPOSAL
Jennifer F StockhamCanadaIoni Bowcher PROPOSAL
Maisha C RutaUnited KingdomAnna Fali PROPOSAL
Juan U KolmetzBrazilElwin Sharvill QUALIFIED
Octavia W IturbideItalyAnna Fali NEW
Kaitlin I OstroskyCanadaAsiya Javayant QUALIFIED
Sinclair K CaldareraFranceIoni Bowcher NEW
Salvatore B NickaRussiaIoni Bowcher RENEWAL
Costa N DilliardUnited KingdomXuxue Feng NEW
Salvatore R WaycottGermanyElwin Sharvill QUALIFIED
Kaitlin T SaylorsItalyXuxue Feng PROPOSAL
David L MacleadArgentinaAmy Elsner QUALIFIED
Murillo Z WhobreyFranceAsiya Javayant QUALIFIED
Mujtaba O OldroydFranceOnyama Limba QUALIFIED
Wickens C WaycottIndiaXuxue Feng UNQUALIFIED
Deepesh A StensethRussiaIoni Bowcher RENEWAL
Leja S BowleyItalyXuxue Feng PROPOSAL
Frozen Columns
Name
Chavez U Rulapaugh
Mujtaba R Butt
Stacey A Royster
Misaki Y Paprocki
Juan R Stenseth
Leja B Maclead
Cody T Gillian
Nicolas S Schemmer
Isabel I Perin
Faith O Garufi
Mayumi L Doe
Greenwood U Foller
Jeanfrancois M Slusarski
Alejandro H Waycott
Tony L Malet
David Z Malet
Johnson N Gillian
Misaki T Briddick
Tony O Bowley
Jeanfrancois D Doe
Rodrigues Q Oldroyd
Leja P Iturbide
James W Amigon
Kaitlin E Rim
Francesco G Bowley
Kadeem V Caudy
Chavez W Saylors
Mayumi S Gaucho
Aruna N Kusko
Arvin I Wieser
Mujtaba V Rulapaugh
Smith D Morasca
Ivar A Wieser
Jones Z Albares
Costa C Gaucho
Faith A Caudy
Kaitlin O Paprocki
Faith N Saylors
Murillo H Maclead
Francesco X Nestle
Izzy U Morasca
Stacey A Waycott
Ricardo B Maclead
Isabel M Flosi
Costa M Doe
Silvio H Nestle
Darci U Schemmer
Ricardo M Figeroa
Cody N Rulapaugh
Jennifer M Malet
IdCountryDate
1000Brazil2026-05-26
1001Russia2026-06-14
1002Brazil2026-06-02
1003Italy2026-06-11
1004Brazil2026-05-28
1005Japan2026-06-21
1006Spain2026-06-02
1007Russia2026-06-16
1008United Kingdom2026-06-21
1009Germany2026-06-05
1010Australia2026-06-11
1011Argentina2026-06-09
1012Russia2026-06-02
1013United Kingdom2026-06-04
1014Australia2026-06-14
1015Japan2026-05-27
1016Italy2026-06-07
1017France2026-06-15
1018Australia2026-06-15
1019Australia2026-06-13
1020Spain2026-06-07
1021India2026-06-18
1022Germany2026-06-20
1023Australia2026-06-15
1024Italy2026-06-21
1025Germany2026-05-25
1026Italy2026-06-11
1027Canada2026-06-17
1028Argentina2026-06-19
1029Argentina2026-06-06
1030Spain2026-06-01
1031Argentina2026-05-30
1032Germany2026-06-08
1033Germany2026-06-06
1034Italy2026-06-16
1035Russia2026-06-04
1036Argentina2026-06-13
1037Russia2026-06-14
1038Germany2026-06-01
1039United Kingdom2026-06-06
1040United Kingdom2026-06-11
1041Japan2026-05-27
1042Brazil2026-06-17
1043Canada2026-06-19
1044United Kingdom2026-05-31
1045Spain2026-06-14
1046United Kingdom2026-06-10
1047Australia2026-06-04
1048United Kingdom2026-05-30
1049France2026-06-13

On-Demand Data

NameIdCountryDate
Mujtaba Z Caudy1000United Kingdom2026-06-20
Arvin Z Iturbide1001Brazil2026-06-19
Claire E Stockham1002India2026-06-12
Francesco C Glick1003Japan2026-06-15
Emily P Garufi1004France2026-06-15
Greenwood Y Amigon1005Russia2026-06-15
Arvin E Gaucho1006India2026-06-15
Rodrigues H Malet1007Argentina2026-06-12
Clifford U Wieser1008Spain2026-05-28
Deepesh Y Figeroa1009United Kingdom2026-05-30
Jefferson R Ruta1010Canada2026-05-28
Julie N Gaucho1011Australia2026-06-08
Darci P Tollner1012Russia2026-05-28
Nicolas O Bowley1013United Kingdom2026-06-13
Claire B Doe1014Japan2026-05-27
Octavia M Oldroyd1015Canada2026-06-15
Maria S Stockham1016Canada2026-06-01
Izzy R Nicka1017United Kingdom2026-06-10
Jefferson E Oldroyd1018Italy2026-05-30
Ricardo X Caudy1019Russia2026-06-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy Z FlosiSpainIoni Bowcher RENEWAL
Ashley L WhobreyAustraliaIvan Magalhaes PROPOSAL
Jennifer V PaprockiUnited KingdomAsiya Javayant NEW
Alejandro R AmigonAustraliaAsiya Javayant RENEWAL
Ivar R ChuiIndiaOnyama Limba QUALIFIED
David T VenereBrazilBernardo Dominic NEGOTIATION
Aika I SlusarskiGermanyAsiya Javayant NEW
Ivar R DoeBrazilAmy Elsner UNQUALIFIED
Tony Z FerenczCanadaAsiya Javayant QUALIFIED
Mujtaba O StensethGermanyAsiya Javayant NEW
Jennifer A OldroydRussiaAnna Fali UNQUALIFIED
Aditya M NestleRussiaXuxue Feng PROPOSAL
Misaki J FlosiRussiaXuxue Feng RENEWAL
Nicolas U PaprockiAustraliaAmy Elsner PROPOSAL
Salvatore J FerenczArgentinaElwin Sharvill NEW
Deepesh Z OldroydJapanIvan Magalhaes UNQUALIFIED
Aika Z DilliardUnited KingdomAnna Fali RENEWAL
Juan S VenereUnited KingdomAnna Fali PROPOSAL
Aditya Y WieserFranceOnyama Limba RENEWAL
Arvin D IturbideSpainAsiya Javayant UNQUALIFIED
Izzy I WaycottFranceAsiya Javayant PROPOSAL
Stacey O PerinAustraliaBernardo Dominic QUALIFIED
Stacey G CampainRussiaElwin Sharvill UNQUALIFIED
Adams M KolmetzRussiaAmy Elsner QUALIFIED
Misaki V FollerAustraliaAmy Elsner NEGOTIATION
Stacey S KuskoUnited KingdomAmy Elsner PROPOSAL
Alejandro I OstroskyArgentinaXuxue Feng PROPOSAL
Greenwood A InouyeIndiaOnyama Limba NEGOTIATION
Jennifer K CaudyJapanAnna Fali NEGOTIATION
Morrow L FlosiRussiaBernardo Dominic RENEWAL
Francesco Z CampainRussiaStephen Shaw RENEWAL
Alejandro P StensethRussiaIoni Bowcher QUALIFIED
Maisha H RoysterArgentinaOnyama Limba QUALIFIED
Kadeem M CaldareraBrazilAnna Fali UNQUALIFIED
Aika M MaletRussiaXuxue Feng UNQUALIFIED
Jennifer F FigeroaUnited KingdomOnyama Limba UNQUALIFIED
Jones F StensethItalyOnyama Limba NEW
Salvatore M RulapaughUnited KingdomAmy Elsner PROPOSAL
Kaitlin W IturbideSpainAmy Elsner NEGOTIATION
Greenwood F BowleyAustraliaAsiya Javayant 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.