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
Misaki B FlosiSpainOnyama Limba NEGOTIATION
Tony K WaycottCanadaBernardo Dominic NEW
Murillo T FerenczArgentinaXuxue Feng NEW
Izzy I MarrierJapanOnyama Limba RENEWAL
Maisha V RimCanadaAmy Elsner NEGOTIATION
Clifford P RoysterJapanAmy Elsner RENEWAL
Munro K RutaJapanAmy Elsner NEW
Faith R FollerGermanyXuxue Feng NEW
David Q KolmetzAustraliaIvan Magalhaes PROPOSAL
Ivar F StensethAustraliaOnyama Limba UNQUALIFIED
Isabel G NickaGermanyElwin Sharvill PROPOSAL
Antonio O KolmetzCanadaIvan Magalhaes NEW
Claire Z GlickCanadaStephen Shaw RENEWAL
Aika T TollnerBrazilIoni Bowcher UNQUALIFIED
Jeanfrancois B WieserUnited KingdomElwin Sharvill PROPOSAL
Deepesh X SlusarskiArgentinaAnna Fali RENEWAL
Leon N SchemmerArgentinaBernardo Dominic UNQUALIFIED
Claire Z MorascaSpainBernardo Dominic NEW
Stacey S VenereGermanyXuxue Feng UNQUALIFIED
Mujtaba S RoysterIndiaIvan Magalhaes QUALIFIED
Greenwood H CampainAustraliaOnyama Limba UNQUALIFIED
Munro Q CaudySpainAsiya Javayant NEGOTIATION
Rodrigues V GillianSpainXuxue Feng PROPOSAL
Sinclair Q CaudyJapanAnna Fali UNQUALIFIED
Rodrigues V RoysterAustraliaIvan Magalhaes PROPOSAL
Jennifer U FerenczRussiaOnyama Limba RENEWAL
Cody O DilliardUnited KingdomElwin Sharvill RENEWAL
Maisha I GlickJapanOnyama Limba UNQUALIFIED
Kadeem F RulapaughJapanAsiya Javayant PROPOSAL
Leon Y BowleyCanadaIvan Magalhaes QUALIFIED
Isabel C SlusarskiIndiaElwin Sharvill RENEWAL
Ivar W MacleadUnited KingdomIoni Bowcher UNQUALIFIED
Julie G InouyeRussiaElwin Sharvill RENEWAL
Ashley Z SaylorsCanadaElwin Sharvill QUALIFIED
Mayumi C ButtJapanBernardo Dominic PROPOSAL
Costa U SaylorsRussiaIoni Bowcher RENEWAL
Jefferson O SaylorsArgentinaAsiya Javayant RENEWAL
Wickens M TollnerJapanStephen Shaw RENEWAL
Sinclair H RulapaughCanadaAsiya Javayant PROPOSAL
Clifford A SergiUnited KingdomIvan Magalhaes UNQUALIFIED
Stacey Y RutaUnited KingdomXuxue Feng QUALIFIED
Izzy A CaudyGermanyOnyama Limba PROPOSAL
Rodrigues N GarufiItalyIvan Magalhaes UNQUALIFIED
Murillo T RutaRussiaIvan Magalhaes UNQUALIFIED
Johnson U RimJapanIoni Bowcher NEW
David Z RutaAustraliaStephen Shaw RENEWAL
Arvin Z AmigonGermanyAmy Elsner NEGOTIATION
Maria T PaprockiUnited KingdomBernardo Dominic PROPOSAL
Morrow T RutaIndiaAsiya Javayant NEW
Claire R DarakjyBrazilBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Adams K FlosiBrazilElwin Sharvill PROPOSAL
Jefferson J KolmetzItalyIvan Magalhaes PROPOSAL
Jones F MaletCanadaElwin Sharvill QUALIFIED
Maria X MaletGermanyElwin Sharvill NEW
Maria G CampainAustraliaAnna Fali UNQUALIFIED
Silvio W PoquetteGermanyAmy Elsner NEGOTIATION
Tony H FigeroaIndiaAsiya Javayant QUALIFIED
Maisha P GlickSpainAmy Elsner QUALIFIED
Alejandro B OldroydAustraliaOnyama Limba PROPOSAL
Tony G BowleyGermanyIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin L OstroskyRussia2026-06-16Chemel, James L Cpa UNQUALIFIED10Stephen Shaw
1001Rodrigues X MorascaItaly2026-06-07Rousseaux, Michael Esq NEW86Bernardo Dominic
1002Sinclair K StensethGermany2026-06-13Truhlar And Truhlar Attys NEGOTIATION77Xuxue Feng
1003Antonio N MaletRussia2026-06-17Truhlar And Truhlar Attys RENEWAL12Xuxue Feng
1004Izzy J StockhamRussia2026-06-04Truhlar And Truhlar Attys QUALIFIED96Bernardo Dominic
1005Salvatore C FlosiIndia2026-06-05Chemel, James L Cpa PROPOSAL3Onyama Limba
1006Alejandro T CaudyCanada2026-06-14Commercial Press PROPOSAL33Amy Elsner
1007James F BriddickSpain2026-06-04Benton, John B Jr NEGOTIATION92Ioni Bowcher
1008Mayumi C DarakjyUnited Kingdom2026-06-23Morlong Associates PROPOSAL51Ivan Magalhaes
1009Kaitlin C FlosiItaly2026-06-03Commercial Press PROPOSAL61Bernardo Dominic
1010Leon F RulapaughItaly2026-05-31Chemel, James L Cpa NEW35Anna Fali
1011Arvin E FerenczAustralia2026-06-03Commercial Press RENEWAL64Anna Fali
1012Ricardo L AmigonJapan2026-06-05Benton, John B Jr NEGOTIATION6Ivan Magalhaes
1013Sinclair Y RulapaughUnited Kingdom2026-06-23Dorl, James J Esq NEGOTIATION15Elwin Sharvill
1014Nicolas I VocelkaSpain2026-06-05Commercial Press QUALIFIED62Ioni Bowcher
1015Silvio K MaletUnited Kingdom2026-06-03Chanay, Jeffrey A Esq NEW91Stephen Shaw
1016Murillo S SchemmerUnited Kingdom2026-06-01Rousseaux, Michael Esq NEGOTIATION78Bernardo Dominic
1017Wickens G GauchoCanada2026-05-25Chemel, James L Cpa QUALIFIED42Xuxue Feng
1018Kadeem M ChuiAustralia2026-05-29Chanay, Jeffrey A Esq RENEWAL45Elwin Sharvill
1019Chavez N DoeJapan2026-06-03Chapman, Ross E Esq NEW93Anna Fali
1020Julie Q RoysterGermany2026-05-29Dorl, James J Esq PROPOSAL0Asiya Javayant
1021Kaitlin B MorascaItaly2026-06-21Truhlar And Truhlar Attys RENEWAL93Bernardo Dominic
1022Kaitlin U FollerIndia2026-06-18Chanay, Jeffrey A Esq UNQUALIFIED43Onyama Limba
1023Emily Y SaylorsAustralia2026-05-29Chapman, Ross E Esq NEW7Xuxue Feng
1024Alejandro D CampainAustralia2026-06-15Feltz Printing Service PROPOSAL69Bernardo Dominic
1025Adams U FerenczCanada2026-06-11Feiner Bros QUALIFIED98Ivan Magalhaes
1026Smith A RoysterArgentina2026-06-12Truhlar And Truhlar Attys UNQUALIFIED16Amy Elsner
1027Jefferson H AlbaresSpain2026-05-27Buckley Miller Wright RENEWAL99Anna Fali
1028Silvio S BologniaUnited Kingdom2026-06-06Buckley Miller Wright NEGOTIATION20Ivan Magalhaes
1029James Y RoysterIndia2026-06-15Chapman, Ross E Esq NEGOTIATION50Ivan Magalhaes
1030Isabel C SaylorsArgentina2026-05-30Buckley Miller Wright RENEWAL27Asiya Javayant
1031Clifford N CampainBrazil2026-06-08King, Christopher A Esq RENEWAL88Stephen Shaw
1032Aika J WieserUnited Kingdom2026-06-21Chanay, Jeffrey A Esq NEGOTIATION30Ivan Magalhaes
1033Mayumi G SaylorsArgentina2026-06-17Rangoni Of Florence RENEWAL42Xuxue Feng
1034Aditya D KolmetzIndia2026-06-07Truhlar And Truhlar Attys PROPOSAL59Stephen Shaw
1035Chavez M RulapaughJapan2026-06-04Chemel, James L Cpa RENEWAL91Asiya Javayant
1036Julie Y AmigonRussia2026-06-13Rousseaux, Michael Esq NEGOTIATION23Stephen Shaw
1037James O FigeroaBrazil2026-05-31Truhlar And Truhlar Attys NEW86Onyama Limba
1038Mayumi T FigeroaFrance2026-05-25Printing Dimensions PROPOSAL3Elwin Sharvill
1039David S PerinItaly2026-06-12Benton, John B Jr UNQUALIFIED83Stephen Shaw
1040Nicolas C PoquetteCanada2026-06-16Chapman, Ross E Esq QUALIFIED37Bernardo Dominic
1041Jennifer L GarufiRussia2026-06-10King, Christopher A Esq NEW57Anna Fali
1042Ricardo U BologniaIndia2026-06-23Commercial Press UNQUALIFIED86Elwin Sharvill
1043Isabel K FlosiCanada2026-06-16Commercial Press NEW21Ivan Magalhaes
1044Claire Y StockhamUnited Kingdom2026-06-07Benton, John B Jr PROPOSAL30Anna Fali
1045James Z DarakjyItaly2026-06-18King, Christopher A Esq UNQUALIFIED9Elwin Sharvill
1046Morrow I SergiArgentina2026-06-16King, Christopher A Esq UNQUALIFIED41Asiya Javayant
1047Leja U SlusarskiRussia2026-06-17Chemel, James L Cpa RENEWAL25Amy Elsner
1048Wickens Z GauchoItaly2026-06-09Rangoni Of Florence PROPOSAL51Elwin Sharvill
1049Munro R PoquetteRussia2026-06-04Truhlar And Truhlar Attys UNQUALIFIED60Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Greenwood S RutaArgentinaBernardo Dominic QUALIFIED
James C ShinkoBrazilIvan Magalhaes NEGOTIATION
Maria J RulapaughFranceAmy Elsner NEGOTIATION
Tony I DilliardSpainAnna Fali UNQUALIFIED
Mayumi L MacleadAustraliaIoni Bowcher RENEWAL
Darci J DarakjyGermanyOnyama Limba RENEWAL
Silvio G AlbaresSpainBernardo Dominic PROPOSAL
Clifford Q RimAustraliaStephen Shaw NEW
Kaitlin G DoeUnited KingdomIvan Magalhaes UNQUALIFIED
Misaki Z OldroydBrazilBernardo Dominic NEGOTIATION
Deepesh F CampainCanadaOnyama Limba UNQUALIFIED
Aika B RutaCanadaAmy Elsner UNQUALIFIED
Adams E GlickAustraliaOnyama Limba QUALIFIED
Cody V VenereFranceIvan Magalhaes QUALIFIED
Smith R InouyeAustraliaBernardo Dominic QUALIFIED
Chavez H ChuiArgentinaXuxue Feng QUALIFIED
Juan A MarrierUnited KingdomElwin Sharvill RENEWAL
Maria X RoysterArgentinaStephen Shaw PROPOSAL
Costa B DoeArgentinaAmy Elsner QUALIFIED
Johnson P NestleFranceAnna Fali QUALIFIED
Jones Y MorascaGermanyIoni Bowcher UNQUALIFIED
Darci F TollnerSpainIoni Bowcher NEGOTIATION
Ricardo B CaldareraGermanyXuxue Feng NEW
Antonio I PerinArgentinaIvan Magalhaes PROPOSAL
Aika M MacleadCanadaElwin Sharvill PROPOSAL
Smith O CaldareraItalyStephen Shaw UNQUALIFIED
Greenwood T BowleyRussiaXuxue Feng RENEWAL
Costa L VocelkaJapanIvan Magalhaes NEGOTIATION
Silvio O ChuiJapanAsiya Javayant UNQUALIFIED
Isabel P KolmetzUnited KingdomElwin Sharvill NEGOTIATION
Mujtaba I KuskoGermanyIvan Magalhaes NEW
Rodrigues B CaudySpainStephen Shaw PROPOSAL
Smith I FigeroaItalyAsiya Javayant NEW
Murillo Z CaldareraUnited KingdomStephen Shaw UNQUALIFIED
Claire D FollerAustraliaOnyama Limba RENEWAL
Claire W RutaFranceBernardo Dominic RENEWAL
James K VenereFranceAnna Fali RENEWAL
Claire S PoquetteCanadaAmy Elsner RENEWAL
Ivar F TollnerItalyOnyama Limba NEGOTIATION
Misaki L MaletItalyXuxue Feng PROPOSAL
Francesco L NickaAustraliaAsiya Javayant PROPOSAL
David C NestleIndiaAsiya Javayant QUALIFIED
Ricardo R FerenczGermanyAsiya Javayant QUALIFIED
Clifford U WhobreySpainElwin Sharvill PROPOSAL
Silvio F GlickUnited KingdomBernardo Dominic NEW
Johnson P SlusarskiArgentinaStephen Shaw NEGOTIATION
Mujtaba N RimArgentinaElwin Sharvill RENEWAL
James U SergiAustraliaIvan Magalhaes RENEWAL
Claire H BriddickFranceElwin Sharvill NEGOTIATION
Claire V FlosiGermanyOnyama Limba NEW
Frozen Columns
Name
Aika W Inouye
Munro K Figeroa
Johnson X Poquette
Wickens B Rim
Mujtaba G Kusko
Octavia K Schemmer
Sinclair S Stockham
Kadeem P Nestle
Salvatore M Marrier
Isabel K Garufi
James P Rulapaugh
Emily I Malet
Misaki Q Gillian
Cody X Iturbide
Julie C Kolmetz
Costa E Venere
Jennifer W Nestle
Ricardo G Malet
Adams Q Marrier
Salvatore I Gaucho
Leon A Paprocki
Juan W Doe
Smith A Malet
Nicolas O Kusko
Silvio Z Amigon
Maisha I Caldarera
Aika C Rim
Arvin U Figeroa
Costa A Flosi
Jeanfrancois Q Nicka
Jeanfrancois A Gillian
Arvin S Chui
Stacey M Iturbide
Murillo E Whobrey
Ashley D Campain
Octavia Z Vocelka
Cody X Chui
Clifford C Kolmetz
Alejandro Z Briddick
Smith G Rim
Claire P Rulapaugh
Chavez X Ruta
Murillo G Oldroyd
Smith K Wieser
Mayumi G Sergi
Cody N Campain
Aika Y Schemmer
Greenwood Z Figeroa
Ricardo K Iturbide
Kaitlin M Stenseth
IdCountryDate
1000France2026-06-12
1001United Kingdom2026-06-09
1002United Kingdom2026-06-02
1003United Kingdom2026-06-01
1004Spain2026-06-22
1005Spain2026-06-11
1006Germany2026-06-08
1007Spain2026-05-29
1008Japan2026-06-16
1009Italy2026-06-11
1010Russia2026-06-12
1011Germany2026-06-17
1012Italy2026-06-10
1013France2026-06-14
1014Japan2026-05-30
1015Russia2026-05-30
1016Spain2026-06-05
1017United Kingdom2026-06-04
1018Brazil2026-06-03
1019United Kingdom2026-06-14
1020France2026-06-02
1021Russia2026-06-13
1022Japan2026-05-31
1023Italy2026-06-09
1024Brazil2026-06-02
1025United Kingdom2026-05-29
1026France2026-06-16
1027Germany2026-06-19
1028India2026-05-26
1029Spain2026-06-03
1030Spain2026-06-16
1031Australia2026-06-20
1032Italy2026-06-09
1033India2026-05-29
1034Germany2026-06-04
1035Russia2026-06-11
1036Japan2026-06-16
1037Argentina2026-06-22
1038Italy2026-06-16
1039Italy2026-06-18
1040Brazil2026-06-22
1041Russia2026-06-09
1042France2026-05-31
1043India2026-06-18
1044Canada2026-05-27
1045Italy2026-05-26
1046Australia2026-05-31
1047Japan2026-06-12
1048Italy2026-05-28
1049United Kingdom2026-06-23

On-Demand Data

NameIdCountryDate
Jennifer T Campain1000India2026-05-30
Munro V Albares1001Argentina2026-05-28
Maria O Sergi1002Italy2026-06-21
James C Dilliard1003Australia2026-06-12
Emily U Marrier1004United Kingdom2026-06-23
Arvin I Doe1005India2026-06-21
Izzy D Schemmer1006Argentina2026-05-30
Ashley I Nestle1007France2026-06-06
David N Dilliard1008Spain2026-06-10
Julie E Morasca1009Russia2026-06-03
Darci Y Flosi1010Italy2026-06-13
Salvatore R Amigon1011Italy2026-05-28
Octavia V Waycott1012India2026-06-04
Juan V Ostrosky1013India2026-06-10
Mujtaba X Ferencz1014Spain2026-06-08
Rodrigues S Shinko1015France2026-05-25
Morrow X Paprocki1016Canada2026-06-19
Jeanfrancois T Sergi1017Spain2026-05-26
Adams R Bowley1018Argentina2026-06-22
Murillo P Oldroyd1019Canada2026-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro W MaletAustraliaStephen Shaw NEW
Smith J ChuiIndiaOnyama Limba NEW
Morrow Z RoysterAustraliaIvan Magalhaes PROPOSAL
Kaitlin D SlusarskiJapanStephen Shaw PROPOSAL
Stacey H RulapaughSpainIoni Bowcher QUALIFIED
Antonio Q FigeroaSpainXuxue Feng NEW
Darci J RulapaughBrazilIvan Magalhaes QUALIFIED
Maria H RoysterAustraliaElwin Sharvill UNQUALIFIED
Cody I MaletFranceBernardo Dominic NEGOTIATION
David Q TollnerSpainAmy Elsner PROPOSAL
Johnson Z StockhamRussiaXuxue Feng NEW
Faith X VenereCanadaAsiya Javayant RENEWAL
Juan A BologniaSpainStephen Shaw NEGOTIATION
Octavia D NestleCanadaAnna Fali PROPOSAL
Ricardo A CaldareraArgentinaXuxue Feng QUALIFIED
Julie M RimJapanAsiya Javayant UNQUALIFIED
Maisha L RimGermanyAmy Elsner RENEWAL
Greenwood J WhobreyGermanyIvan Magalhaes PROPOSAL
Salvatore I VenereCanadaAmy Elsner PROPOSAL
David G GlickIndiaIoni Bowcher UNQUALIFIED
Juan N SchemmerArgentinaAnna Fali UNQUALIFIED
Aruna G SchemmerJapanAnna Fali PROPOSAL
Jeanfrancois F NestleIndiaIoni Bowcher UNQUALIFIED
Greenwood W CampainFranceAnna Fali UNQUALIFIED
Tony Q VocelkaSpainAsiya Javayant NEGOTIATION
Mayumi C SergiCanadaAnna Fali UNQUALIFIED
Emily H RulapaughAustraliaStephen Shaw UNQUALIFIED
Octavia V AlbaresArgentinaOnyama Limba RENEWAL
Arvin Z ButtJapanIvan Magalhaes UNQUALIFIED
Aditya P ButtCanadaStephen Shaw QUALIFIED
Kaitlin T PaprockiGermanyIvan Magalhaes QUALIFIED
Isabel C SaylorsAustraliaIvan Magalhaes NEGOTIATION
Isabel U MaletArgentinaIoni Bowcher NEGOTIATION
David X SergiItalyAmy Elsner PROPOSAL
Rodrigues R DilliardIndiaAmy Elsner UNQUALIFIED
Faith F ShinkoAustraliaXuxue Feng QUALIFIED
Ivar Y PaprockiItalyAmy Elsner PROPOSAL
Juan Y WhobreyUnited KingdomAsiya Javayant NEW
Maisha H SergiGermanyBernardo Dominic PROPOSAL
Chavez O ChuiJapanIoni Bowcher 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.