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
Ivar Q RoysterCanadaStephen Shaw QUALIFIED
Munro Y MacleadFranceAsiya Javayant QUALIFIED
Aika X ShinkoJapanElwin Sharvill RENEWAL
Alejandro F GarufiItalyBernardo Dominic PROPOSAL
Murillo G VocelkaBrazilXuxue Feng NEGOTIATION
Deepesh B StensethItalyAsiya Javayant QUALIFIED
Maisha L SaylorsArgentinaAnna Fali PROPOSAL
Tony W MacleadBrazilStephen Shaw NEW
Leja L SergiFranceXuxue Feng QUALIFIED
Darci T InouyeAustraliaAnna Fali PROPOSAL
Sinclair L NestleJapanIoni Bowcher QUALIFIED
Stacey J GillianArgentinaOnyama Limba NEW
Silvio Z VocelkaUnited KingdomIoni Bowcher NEW
Ricardo X OldroydFranceStephen Shaw RENEWAL
Sinclair A WhobreyFranceAmy Elsner PROPOSAL
Morrow H IturbideUnited KingdomAmy Elsner QUALIFIED
Isabel Q CaldareraFranceAnna Fali RENEWAL
Chavez L ChuiIndiaStephen Shaw NEW
Ashley A PaprockiAustraliaAmy Elsner RENEWAL
Maisha V PoquetteSpainIoni Bowcher QUALIFIED
Emily N MorascaAustraliaElwin Sharvill NEW
Leja H OstroskyCanadaIvan Magalhaes NEW
Leon S KolmetzSpainAnna Fali NEW
Jeanfrancois E PerinGermanyElwin Sharvill NEW
James A FlosiUnited KingdomIvan Magalhaes NEW
Juan S BriddickJapanBernardo Dominic NEW
Alejandro R FerenczGermanyStephen Shaw NEGOTIATION
James F OldroydAustraliaXuxue Feng NEGOTIATION
Julie N WaycottArgentinaIvan Magalhaes RENEWAL
Jennifer Q RoysterRussiaBernardo Dominic NEW
Mujtaba D RimFranceStephen Shaw UNQUALIFIED
Darci R InouyeCanadaIvan Magalhaes PROPOSAL
Maria P InouyeFranceElwin Sharvill UNQUALIFIED
Morrow I IturbideArgentinaAmy Elsner UNQUALIFIED
Jeanfrancois X NickaRussiaOnyama Limba NEGOTIATION
Leon O CaudyBrazilAsiya Javayant PROPOSAL
Wickens C RulapaughBrazilAnna Fali RENEWAL
Mayumi L GauchoUnited KingdomElwin Sharvill NEW
Maisha Z FigeroaRussiaBernardo Dominic QUALIFIED
Mayumi Q VocelkaUnited KingdomAsiya Javayant RENEWAL
Ashley C InouyeJapanAnna Fali NEW
Alejandro B StensethArgentinaIoni Bowcher NEW
Juan S KuskoJapanStephen Shaw RENEWAL
Murillo P WaycottUnited KingdomAnna Fali UNQUALIFIED
Mayumi S CampainRussiaBernardo Dominic UNQUALIFIED
Jennifer V ChuiArgentinaXuxue Feng QUALIFIED
Arvin W CampainUnited KingdomStephen Shaw RENEWAL
Munro F KolmetzUnited KingdomIvan Magalhaes PROPOSAL
Misaki H GillianFranceAnna Fali QUALIFIED
Jefferson U WieserBrazilAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Ivar X StockhamAustraliaAsiya Javayant NEGOTIATION
Kaitlin U FigeroaSpainXuxue Feng QUALIFIED
Leja N PoquetteFranceBernardo Dominic RENEWAL
Arvin J MacleadSpainAsiya Javayant QUALIFIED
Darci J PoquetteItalyXuxue Feng QUALIFIED
Ricardo P RulapaughCanadaAnna Fali NEGOTIATION
Kaitlin B GauchoUnited KingdomXuxue Feng UNQUALIFIED
Morrow G SlusarskiJapanElwin Sharvill NEW
Aditya P VenereFranceAnna Fali NEGOTIATION
Smith P ButtArgentinaIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro B SaylorsCanada2026-06-10Buckley Miller Wright RENEWAL94Stephen Shaw
1001Tony C PerinAustralia2026-06-07Chanay, Jeffrey A Esq NEW18Amy Elsner
1002David U MaletBrazil2026-06-03Chemel, James L Cpa PROPOSAL82Ivan Magalhaes
1003Costa Q RimGermany2026-06-04Chemel, James L Cpa NEGOTIATION8Xuxue Feng
1004Maria Y MorascaCanada2026-06-22Rousseaux, Michael Esq NEGOTIATION31Asiya Javayant
1005Isabel K MorascaRussia2026-06-18Rousseaux, Michael Esq RENEWAL76Bernardo Dominic
1006Isabel P AlbaresSpain2026-06-21King, Christopher A Esq NEGOTIATION87Elwin Sharvill
1007Sinclair T PaprockiItaly2026-06-26Feiner Bros UNQUALIFIED7Onyama Limba
1008Jennifer W NestleBrazil2026-06-21Chemel, James L Cpa PROPOSAL73Asiya Javayant
1009Izzy G NestleBrazil2026-05-31Buckley Miller Wright RENEWAL60Anna Fali
1010Isabel K RoysterGermany2026-06-11Rousseaux, Michael Esq QUALIFIED30Stephen Shaw
1011Clifford B RulapaughGermany2026-05-28Feiner Bros NEW78Xuxue Feng
1012Ricardo A VenereGermany2026-06-10Printing Dimensions NEGOTIATION48Onyama Limba
1013Jefferson M AmigonFrance2026-06-06Benton, John B Jr NEGOTIATION19Ivan Magalhaes
1014Silvio E GillianFrance2026-06-03Commercial Press NEGOTIATION35Anna Fali
1015Chavez P IturbideItaly2026-06-03Rangoni Of Florence RENEWAL31Elwin Sharvill
1016Ricardo R RutaGermany2026-06-13Commercial Press RENEWAL85Ivan Magalhaes
1017Ashley L GillianIndia2026-05-30Morlong Associates NEW2Anna Fali
1018Adams V TollnerFrance2026-05-30Truhlar And Truhlar Attys UNQUALIFIED82Xuxue Feng
1019Leja Q FerenczFrance2026-06-26Printing Dimensions UNQUALIFIED4Ivan Magalhaes
1020Rodrigues E SaylorsArgentina2026-06-08Printing Dimensions NEW69Onyama Limba
1021Tony P WaycottArgentina2026-06-14Morlong Associates QUALIFIED7Ioni Bowcher
1022Ivar H BriddickUnited Kingdom2026-06-25Rangoni Of Florence NEGOTIATION94Onyama Limba
1023Tony L SaylorsGermany2026-06-14Chapman, Ross E Esq QUALIFIED77Asiya Javayant
1024Kaitlin K KolmetzAustralia2026-05-28Buckley Miller Wright NEW75Anna Fali
1025Emily W SchemmerSpain2026-06-20Feiner Bros PROPOSAL59Anna Fali
1026Julie F ChuiItaly2026-06-08Dorl, James J Esq UNQUALIFIED84Asiya Javayant
1027Chavez E NestleRussia2026-06-09King, Christopher A Esq NEW44Bernardo Dominic
1028Leon Z RulapaughAustralia2026-06-06Chemel, James L Cpa NEGOTIATION1Ivan Magalhaes
1029Jennifer D GillianJapan2026-06-20Morlong Associates UNQUALIFIED4Bernardo Dominic
1030Aika U MaletFrance2026-06-15Morlong Associates NEW98Stephen Shaw
1031Mayumi Z KuskoCanada2026-06-22King, Christopher A Esq RENEWAL97Asiya Javayant
1032Leon S FollerJapan2026-06-07Feiner Bros NEW53Ivan Magalhaes
1033Julie F RoysterUnited Kingdom2026-06-15Rangoni Of Florence PROPOSAL77Onyama Limba
1034Costa I GlickBrazil2026-06-17Morlong Associates QUALIFIED58Amy Elsner
1035Jones Q ChuiBrazil2026-06-12Feiner Bros NEGOTIATION95Bernardo Dominic
1036Antonio M BowleyJapan2026-06-05Printing Dimensions QUALIFIED77Anna Fali
1037Murillo Y RulapaughIndia2026-06-22Chapman, Ross E Esq NEW82Asiya Javayant
1038Johnson T MaletGermany2026-06-19Dorl, James J Esq NEW24Ioni Bowcher
1039Adams Z MaletJapan2026-06-26Rangoni Of Florence RENEWAL17Ioni Bowcher
1040Julie I PerinAustralia2026-06-16Printing Dimensions QUALIFIED20Ivan Magalhaes
1041Morrow B FollerFrance2026-06-13Feiner Bros PROPOSAL92Ioni Bowcher
1042Juan T TollnerCanada2026-06-01Morlong Associates RENEWAL34Elwin Sharvill
1043Juan Q WieserUnited Kingdom2026-06-14Chemel, James L Cpa PROPOSAL90Ivan Magalhaes
1044Leja V VenereRussia2026-05-29Chapman, Ross E Esq NEGOTIATION6Anna Fali
1045Jeanfrancois R DilliardFrance2026-06-21Chanay, Jeffrey A Esq QUALIFIED81Anna Fali
1046Ivar Y KolmetzArgentina2026-06-19Feiner Bros UNQUALIFIED85Anna Fali
1047Kaitlin X GauchoCanada2026-06-25Truhlar And Truhlar Attys QUALIFIED3Xuxue Feng
1048Wickens C MorascaAustralia2026-06-26Commercial Press NEGOTIATION66Ivan Magalhaes
1049Cody X MaletJapan2026-06-08Chemel, James L Cpa QUALIFIED81Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Johnson L FerenczAustraliaElwin Sharvill UNQUALIFIED
Kadeem B ButtCanadaElwin Sharvill RENEWAL
James I PerinArgentinaIoni Bowcher QUALIFIED
Arvin E DoeJapanIvan Magalhaes PROPOSAL
Nicolas G FollerFranceOnyama Limba UNQUALIFIED
Arvin H BriddickGermanyIvan Magalhaes NEW
Adams F CaudyItalyAsiya Javayant NEGOTIATION
Salvatore P RimGermanyElwin Sharvill UNQUALIFIED
Aika O SlusarskiGermanyIoni Bowcher PROPOSAL
Sinclair H RoysterUnited KingdomIvan Magalhaes QUALIFIED
Jones Y SergiArgentinaAmy Elsner NEW
Misaki S RoysterRussiaAnna Fali RENEWAL
Maria H ButtGermanyAsiya Javayant QUALIFIED
Claire C ShinkoFranceAmy Elsner NEW
Antonio G MarrierArgentinaStephen Shaw UNQUALIFIED
Jones S OldroydCanadaXuxue Feng RENEWAL
Antonio H SaylorsCanadaElwin Sharvill QUALIFIED
Julie Q SergiIndiaBernardo Dominic NEW
Smith B FlosiArgentinaIoni Bowcher NEGOTIATION
Juan P ButtUnited KingdomBernardo Dominic NEGOTIATION
Leon F GlickFranceIoni Bowcher PROPOSAL
Alejandro B KuskoFranceXuxue Feng PROPOSAL
Sinclair P GarufiUnited KingdomElwin Sharvill NEGOTIATION
Leja G SaylorsRussiaAsiya Javayant RENEWAL
James I NestleSpainIvan Magalhaes QUALIFIED
Juan K FollerArgentinaOnyama Limba UNQUALIFIED
Francesco K NickaRussiaIvan Magalhaes PROPOSAL
Julie Q ButtUnited KingdomXuxue Feng UNQUALIFIED
Adams B ButtIndiaAnna Fali NEW
Alejandro H OldroydFranceElwin Sharvill RENEWAL
Salvatore H MaletAustraliaAmy Elsner RENEWAL
Jennifer L FlosiArgentinaAnna Fali RENEWAL
Alejandro G DilliardRussiaIvan Magalhaes NEW
Smith C DarakjyItalyAnna Fali PROPOSAL
James I GauchoArgentinaAnna Fali PROPOSAL
Ricardo Y RulapaughAustraliaIoni Bowcher NEGOTIATION
Maria O WhobreyIndiaIoni Bowcher PROPOSAL
Adams D CampainFranceStephen Shaw NEGOTIATION
Mujtaba G IturbideIndiaStephen Shaw QUALIFIED
Darci Z SchemmerAustraliaOnyama Limba RENEWAL
Silvio N MaletGermanyXuxue Feng QUALIFIED
Juan T FerenczBrazilIoni Bowcher PROPOSAL
Murillo I TollnerRussiaBernardo Dominic PROPOSAL
Rodrigues S MorascaFranceElwin Sharvill NEW
Cody F KuskoFranceElwin Sharvill RENEWAL
Aditya J InouyeArgentinaOnyama Limba RENEWAL
Rodrigues T WaycottBrazilElwin Sharvill UNQUALIFIED
David M ShinkoJapanIvan Magalhaes NEW
Wickens L KolmetzIndiaOnyama Limba NEGOTIATION
Jeanfrancois O RulapaughCanadaIvan Magalhaes NEW
Frozen Columns
Name
Salvatore E Saylors
Rodrigues X Morasca
Leon A Waycott
Rodrigues Q Rim
Aruna P Caldarera
Jennifer H Briddick
Octavia J Oldroyd
Munro Y Poquette
Murillo P Bolognia
Faith U Gaucho
Deepesh Y Kolmetz
Salvatore I Darakjy
Sinclair E Gaucho
Munro W Doe
David X Nestle
Clifford B Rulapaugh
Cody V Rim
Stacey M Campain
Smith I Saylors
Munro T Venere
Rodrigues C Shinko
Aika H Flosi
Mujtaba Z Briddick
Aruna G Nestle
Wickens U Gaucho
Rodrigues H Inouye
Clifford C Inouye
James R Glick
Mayumi S Marrier
Emily G Darakjy
Clifford R Ruta
Mayumi E Schemmer
Ashley A Malet
Stacey P Gaucho
Sinclair V Stenseth
Morrow J Albares
Isabel R Waycott
Jeanfrancois H Marrier
Mayumi M Butt
Leon H Slusarski
Smith U Venere
Izzy H Poquette
Antonio Q Inouye
Aruna F Kolmetz
Silvio Z Malet
Isabel W Bolognia
Darci V Flosi
Jeanfrancois R Foller
Kadeem N Marrier
Kadeem Q Marrier
IdCountryDate
1000India2026-06-05
1001Australia2026-06-10
1002Canada2026-06-22
1003United Kingdom2026-06-11
1004India2026-06-05
1005Canada2026-06-10
1006Italy2026-06-05
1007Canada2026-06-23
1008Canada2026-06-13
1009Canada2026-06-26
1010India2026-06-20
1011United Kingdom2026-06-16
1012Italy2026-06-01
1013Canada2026-06-22
1014Germany2026-06-15
1015Germany2026-06-23
1016Japan2026-06-15
1017Japan2026-06-09
1018Germany2026-06-26
1019Spain2026-06-05
1020United Kingdom2026-06-22
1021India2026-06-20
1022Italy2026-06-05
1023United Kingdom2026-06-01
1024Italy2026-06-05
1025France2026-06-13
1026France2026-06-07
1027Russia2026-06-23
1028Argentina2026-05-28
1029Japan2026-06-18
1030Canada2026-05-28
1031Australia2026-06-21
1032Canada2026-06-13
1033India2026-06-22
1034Italy2026-06-24
1035Brazil2026-06-05
1036Germany2026-06-13
1037Russia2026-06-19
1038Germany2026-05-29
1039Canada2026-06-19
1040Japan2026-05-28
1041France2026-06-02
1042France2026-06-06
1043Spain2026-06-19
1044Canada2026-06-23
1045Australia2026-05-29
1046Japan2026-05-29
1047Argentina2026-06-13
1048Canada2026-06-14
1049Argentina2026-06-01

On-Demand Data

NameIdCountryDate
Stacey D Flosi1000Brazil2026-06-06
Alejandro O Saylors1001Canada2026-06-22
Faith S Amigon1002Brazil2026-06-19
Alejandro O Malet1003Germany2026-06-07
Mujtaba G Rim1004Russia2026-06-04
Isabel L Shinko1005Brazil2026-06-02
Kadeem L Rulapaugh1006Argentina2026-06-14
Emily D Inouye1007France2026-06-05
Murillo A Campain1008India2026-06-25
Adams L Perin1009Spain2026-06-20
Johnson F Inouye1010Canada2026-06-04
Claire S Foller1011Italy2026-06-24
Greenwood R Amigon1012Spain2026-05-29
Darci J Iturbide1013Australia2026-06-02
Aika T Caudy1014Australia2026-06-13
Sinclair Z Foller1015France2026-06-15
Arvin M Glick1016Germany2026-06-10
Misaki N Garufi1017Australia2026-06-22
Julie H Paprocki1018Germany2026-06-17
Leon J Caldarera1019France2026-06-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba V ChuiIndiaBernardo Dominic QUALIFIED
Maria N ButtJapanBernardo Dominic UNQUALIFIED
Kaitlin N DarakjyRussiaStephen Shaw NEGOTIATION
David C VenereCanadaAmy Elsner RENEWAL
Faith Q ShinkoSpainAnna Fali NEW
Murillo Q KuskoAustraliaAnna Fali QUALIFIED
Ricardo P GillianIndiaOnyama Limba QUALIFIED
Jeanfrancois T MacleadCanadaAsiya Javayant PROPOSAL
Ricardo L CaldareraIndiaOnyama Limba RENEWAL
Smith F FollerAustraliaAnna Fali NEGOTIATION
Aika G MaletRussiaOnyama Limba QUALIFIED
Antonio T PaprockiIndiaStephen Shaw PROPOSAL
Mujtaba M TollnerFranceIvan Magalhaes NEGOTIATION
Aika Y PoquetteFranceAsiya Javayant QUALIFIED
Wickens S MorascaFranceStephen Shaw UNQUALIFIED
Mujtaba U FerenczJapanStephen Shaw QUALIFIED
Izzy R VenereFranceOnyama Limba QUALIFIED
Antonio A SlusarskiFranceIoni Bowcher UNQUALIFIED
Aika F SlusarskiCanadaOnyama Limba RENEWAL
Kadeem R CaudyItalyIoni Bowcher NEGOTIATION
Smith D CampainBrazilBernardo Dominic NEW
Cody F CaldareraSpainBernardo Dominic UNQUALIFIED
Ivar B FerenczArgentinaAmy Elsner QUALIFIED
Murillo F WhobreyCanadaXuxue Feng NEW
Leja X StensethUnited KingdomIoni Bowcher NEW
Morrow F GarufiGermanyAnna Fali UNQUALIFIED
Morrow R DarakjyUnited KingdomXuxue Feng PROPOSAL
James Q SergiUnited KingdomOnyama Limba NEGOTIATION
Mujtaba F GlickFranceAsiya Javayant NEW
Sinclair O MaletArgentinaXuxue Feng NEW
Juan E SaylorsSpainAmy Elsner QUALIFIED
Johnson W SaylorsRussiaIoni Bowcher PROPOSAL
Aditya E VenereFranceAmy Elsner PROPOSAL
Jennifer S RimFranceAsiya Javayant QUALIFIED
Alejandro A PoquetteAustraliaOnyama Limba QUALIFIED
Murillo C VocelkaAustraliaAnna Fali NEGOTIATION
Aika U SergiFranceStephen Shaw UNQUALIFIED
Mujtaba L StockhamSpainStephen Shaw NEW
Misaki T VocelkaRussiaAmy Elsner RENEWAL
Francesco X AlbaresItalyOnyama Limba RENEWAL

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