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
Stacey M GauchoArgentinaElwin Sharvill QUALIFIED
Jennifer X SergiBrazilIvan Magalhaes NEW
Darci I OstroskyCanadaStephen Shaw RENEWAL
Cody V TollnerAustraliaElwin Sharvill NEGOTIATION
Johnson A MaletBrazilIvan Magalhaes NEW
Faith C GarufiUnited KingdomElwin Sharvill QUALIFIED
Smith S WhobreyArgentinaBernardo Dominic NEW
Smith N NestleArgentinaBernardo Dominic PROPOSAL
Francesco Y KuskoItalyAnna Fali PROPOSAL
Adams Z AmigonGermanyBernardo Dominic QUALIFIED
Ashley A DarakjyFranceXuxue Feng UNQUALIFIED
Rodrigues X BowleyItalyXuxue Feng NEGOTIATION
Aditya D WaycottJapanOnyama Limba RENEWAL
Tony G BriddickFranceStephen Shaw UNQUALIFIED
Mayumi V WhobreyFranceBernardo Dominic NEW
Alejandro S StockhamGermanyIvan Magalhaes NEGOTIATION
Salvatore A PoquetteRussiaBernardo Dominic PROPOSAL
Mujtaba G FigeroaFranceIoni Bowcher RENEWAL
Aditya Y FerenczJapanBernardo Dominic QUALIFIED
Wickens I IturbideGermanyIvan Magalhaes RENEWAL
Murillo I ChuiBrazilXuxue Feng NEGOTIATION
Wickens D VocelkaAustraliaIvan Magalhaes QUALIFIED
Leja S ShinkoItalyAnna Fali RENEWAL
Leon A GillianSpainIoni Bowcher NEGOTIATION
Ricardo Z WieserIndiaBernardo Dominic QUALIFIED
Ricardo X SlusarskiSpainStephen Shaw UNQUALIFIED
Chavez C InouyeRussiaIvan Magalhaes PROPOSAL
Johnson D WhobreyCanadaAmy Elsner QUALIFIED
Cody J KolmetzBrazilAmy Elsner QUALIFIED
Jeanfrancois G DarakjyBrazilXuxue Feng RENEWAL
Deepesh O RutaFranceAnna Fali QUALIFIED
Leon I GlickUnited KingdomOnyama Limba QUALIFIED
Kadeem H GauchoIndiaOnyama Limba NEW
Jeanfrancois A RimBrazilBernardo Dominic NEW
Izzy R SchemmerUnited KingdomElwin Sharvill PROPOSAL
Darci B SlusarskiSpainAsiya Javayant QUALIFIED
Costa Q PaprockiRussiaAnna Fali NEW
Ivar E DarakjyAustraliaAmy Elsner QUALIFIED
Ricardo W WhobreyUnited KingdomAsiya Javayant QUALIFIED
Faith K TollnerIndiaIvan Magalhaes RENEWAL
Morrow D OldroydSpainElwin Sharvill RENEWAL
Antonio C BowleyIndiaOnyama Limba NEW
Salvatore K GauchoAustraliaBernardo Dominic RENEWAL
Morrow Z VenereUnited KingdomElwin Sharvill RENEWAL
Morrow N WaycottUnited KingdomIvan Magalhaes NEW
Octavia W RutaUnited KingdomXuxue Feng PROPOSAL
Leja Z KuskoArgentinaElwin Sharvill PROPOSAL
James O CaudyArgentinaStephen Shaw RENEWAL
Claire M SergiAustraliaAsiya Javayant PROPOSAL
James Y DarakjyBrazilIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Arvin R GauchoCanadaOnyama Limba PROPOSAL
Leja R WieserIndiaOnyama Limba QUALIFIED
Leon Q MaletIndiaBernardo Dominic QUALIFIED
Leon A StensethSpainElwin Sharvill QUALIFIED
Emily W GarufiIndiaAnna Fali NEGOTIATION
Rodrigues N GarufiGermanyAsiya Javayant RENEWAL
James F FollerIndiaAmy Elsner PROPOSAL
Sinclair V CaudyAustraliaBernardo Dominic PROPOSAL
Ricardo Y OldroydAustraliaXuxue Feng NEGOTIATION
Stacey N StensethGermanyAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba F RulapaughCanada2026-03-20Feltz Printing Service UNQUALIFIED19Xuxue Feng
1001Adams C MaletBrazil2026-03-31Printing Dimensions UNQUALIFIED22Ivan Magalhaes
1002Greenwood F SergiJapan2026-03-16Feiner Bros PROPOSAL7Amy Elsner
1003Jones J SlusarskiGermany2026-03-21Chapman, Ross E Esq NEGOTIATION3Stephen Shaw
1004Aika G VenereJapan2026-03-19Commercial Press QUALIFIED41Ivan Magalhaes
1005Francesco B MarrierUnited Kingdom2026-03-09Truhlar And Truhlar Attys NEGOTIATION56Asiya Javayant
1006Faith P PerinBrazil2026-03-11Chanay, Jeffrey A Esq QUALIFIED42Amy Elsner
1007Mayumi Z ChuiUnited Kingdom2026-03-19Rangoni Of Florence NEGOTIATION20Xuxue Feng
1008Alejandro U WieserGermany2026-03-27Chemel, James L Cpa RENEWAL66Ivan Magalhaes
1009Julie J FigeroaArgentina2026-03-21Chapman, Ross E Esq PROPOSAL8Anna Fali
1010James C AlbaresFrance2026-03-29Chemel, James L Cpa UNQUALIFIED81Stephen Shaw
1011Darci T DarakjyCanada2026-03-16Rousseaux, Michael Esq NEW64Ioni Bowcher
1012Izzy F WieserItaly2026-03-22Dorl, James J Esq PROPOSAL13Xuxue Feng
1013Maisha I MorascaIndia2026-03-05Feltz Printing Service PROPOSAL12Asiya Javayant
1014Murillo X BologniaRussia2026-03-06Commercial Press PROPOSAL20Ivan Magalhaes
1015Antonio J SaylorsRussia2026-03-30Feiner Bros UNQUALIFIED62Bernardo Dominic
1016Maisha N BowleyJapan2026-03-13Chemel, James L Cpa UNQUALIFIED8Amy Elsner
1017Adams L NestleRussia2026-03-14Dorl, James J Esq NEW98Asiya Javayant
1018Maisha U IturbideSpain2026-03-22Feltz Printing Service PROPOSAL15Ivan Magalhaes
1019Faith N MorascaAustralia2026-03-22Rangoni Of Florence NEGOTIATION30Amy Elsner
1020Mayumi U FigeroaBrazil2026-03-14Chapman, Ross E Esq QUALIFIED92Anna Fali
1021Salvatore G OstroskyCanada2026-03-21Rousseaux, Michael Esq PROPOSAL74Elwin Sharvill
1022Clifford I OldroydGermany2026-03-27Chanay, Jeffrey A Esq RENEWAL8Anna Fali
1023Rodrigues E FlosiSpain2026-03-25Rangoni Of Florence PROPOSAL30Xuxue Feng
1024Kadeem G GlickArgentina2026-03-10Benton, John B Jr RENEWAL86Asiya Javayant
1025Ivar U SchemmerIndia2026-03-06Chemel, James L Cpa UNQUALIFIED90Xuxue Feng
1026Murillo Q MaletAustralia2026-03-09Feiner Bros NEGOTIATION65Stephen Shaw
1027Silvio H StensethJapan2026-03-06Feltz Printing Service PROPOSAL65Stephen Shaw
1028Juan Q MarrierRussia2026-03-19Truhlar And Truhlar Attys UNQUALIFIED60Asiya Javayant
1029David N OldroydItaly2026-03-09Commercial Press RENEWAL19Amy Elsner
1030Kadeem K AlbaresSpain2026-03-19Feiner Bros PROPOSAL17Bernardo Dominic
1031Jones L ChuiGermany2026-03-14Truhlar And Truhlar Attys QUALIFIED17Bernardo Dominic
1032Jeanfrancois D DoeGermany2026-03-18Benton, John B Jr RENEWAL41Ivan Magalhaes
1033Faith V KuskoRussia2026-03-22King, Christopher A Esq UNQUALIFIED34Ioni Bowcher
1034Izzy N InouyeArgentina2026-03-31Printing Dimensions NEW11Elwin Sharvill
1035Izzy W MarrierAustralia2026-03-04King, Christopher A Esq RENEWAL70Elwin Sharvill
1036Jones M OldroydUnited Kingdom2026-03-12Dorl, James J Esq RENEWAL13Xuxue Feng
1037Johnson Y AmigonArgentina2026-03-10Truhlar And Truhlar Attys PROPOSAL33Onyama Limba
1038Adams X VocelkaJapan2026-03-11Commercial Press QUALIFIED25Asiya Javayant
1039Johnson F IturbideGermany2026-03-18Chanay, Jeffrey A Esq UNQUALIFIED70Bernardo Dominic
1040Maisha P ShinkoFrance2026-03-29King, Christopher A Esq PROPOSAL61Onyama Limba
1041Ashley L WaycottFrance2026-03-09Feiner Bros NEW74Anna Fali
1042Faith Y VenereSpain2026-03-27Morlong Associates NEW56Bernardo Dominic
1043Faith N MaletAustralia2026-03-22Feltz Printing Service NEGOTIATION16Ioni Bowcher
1044Maisha Y BologniaCanada2026-03-27Chemel, James L Cpa PROPOSAL34Elwin Sharvill
1045Morrow E PaprockiBrazil2026-03-22Morlong Associates QUALIFIED39Anna Fali
1046Kaitlin O ShinkoArgentina2026-04-01Morlong Associates UNQUALIFIED68Onyama Limba
1047Ricardo T WhobreyCanada2026-03-29Benton, John B Jr UNQUALIFIED78Elwin Sharvill
1048Francesco B OstroskyCanada2026-03-24Buckley Miller Wright PROPOSAL23Anna Fali
1049Chavez U FlosiGermany2026-03-19Chanay, Jeffrey A Esq RENEWAL47Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois N KolmetzJapanElwin Sharvill QUALIFIED
Misaki O NickaSpainAnna Fali UNQUALIFIED
Adams T DarakjyAustraliaElwin Sharvill NEW
Greenwood C PoquetteCanadaBernardo Dominic UNQUALIFIED
Ashley N BologniaFranceElwin Sharvill PROPOSAL
Jones F AlbaresAustraliaElwin Sharvill RENEWAL
Jefferson D SlusarskiIndiaOnyama Limba UNQUALIFIED
Morrow F GlickGermanyBernardo Dominic QUALIFIED
Salvatore T BowleyItalyIoni Bowcher QUALIFIED
Leja M CaudyAustraliaXuxue Feng UNQUALIFIED
Deepesh M InouyeAustraliaIoni Bowcher NEW
Maisha E PerinFranceAmy Elsner PROPOSAL
Ashley A KolmetzIndiaIoni Bowcher UNQUALIFIED
Morrow L KuskoSpainIvan Magalhaes NEW
Costa D RimAustraliaStephen Shaw NEGOTIATION
Misaki C NestleFranceBernardo Dominic QUALIFIED
David Q BologniaUnited KingdomAnna Fali QUALIFIED
Aruna Z OldroydBrazilIoni Bowcher UNQUALIFIED
Salvatore V VocelkaAustraliaAmy Elsner UNQUALIFIED
Mujtaba T MaletItalyAmy Elsner NEGOTIATION
Alejandro B RulapaughUnited KingdomStephen Shaw RENEWAL
Julie L BriddickCanadaOnyama Limba RENEWAL
Deepesh T SlusarskiArgentinaAsiya Javayant PROPOSAL
Rodrigues F WieserCanadaOnyama Limba NEW
Kaitlin R SchemmerCanadaElwin Sharvill QUALIFIED
Morrow Q FollerGermanyAnna Fali RENEWAL
Adams Q StensethUnited KingdomIvan Magalhaes NEW
Clifford Q WieserSpainAsiya Javayant UNQUALIFIED
Aruna M CampainFranceOnyama Limba NEGOTIATION
Morrow X NestleItalyStephen Shaw QUALIFIED
Jefferson B ButtJapanOnyama Limba NEGOTIATION
Faith K PoquetteIndiaIvan Magalhaes RENEWAL
Sinclair N GauchoRussiaStephen Shaw PROPOSAL
Smith D CaudyIndiaIvan Magalhaes NEW
Izzy R FlosiSpainOnyama Limba QUALIFIED
Juan N MacleadAustraliaOnyama Limba UNQUALIFIED
Sinclair P GarufiGermanyIvan Magalhaes UNQUALIFIED
Jones M FollerSpainAnna Fali RENEWAL
Ricardo R AlbaresRussiaAmy Elsner UNQUALIFIED
Kaitlin F IturbideUnited KingdomIvan Magalhaes PROPOSAL
Johnson B AlbaresGermanyStephen Shaw UNQUALIFIED
Julie V CaudyJapanBernardo Dominic NEW
Cody I IturbideUnited KingdomStephen Shaw RENEWAL
Murillo X CaudySpainAsiya Javayant PROPOSAL
Sinclair Y NestleCanadaAnna Fali QUALIFIED
Chavez B GauchoSpainBernardo Dominic NEGOTIATION
Antonio H GauchoItalyElwin Sharvill NEGOTIATION
Smith M SchemmerFranceAmy Elsner UNQUALIFIED
Johnson C SergiArgentinaOnyama Limba NEW
Misaki H CampainCanadaIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Leon O Maclead
Julie S Bolognia
James J Malet
Jennifer V Caldarera
Jeanfrancois I Stockham
Kaitlin F Royster
Misaki S Stockham
Mujtaba O Bolognia
Sinclair J Morasca
Munro W Saylors
Smith D Slusarski
Deepesh P Oldroyd
Aika J Oldroyd
Nicolas S Butt
Nicolas B Sergi
Salvatore M Darakjy
Tony H Iturbide
Ashley D Ferencz
Darci P Doe
Kaitlin L Rim
Clifford B Oldroyd
Greenwood N Nicka
Cody K Dilliard
Izzy C Kolmetz
Mayumi G Paprocki
Leon V Doe
Isabel Z Amigon
Izzy H Vocelka
Wickens S Darakjy
Aditya P Rim
Aditya U Figeroa
Antonio N Dilliard
Silvio O Albares
Mayumi C Foller
Mujtaba G Saylors
Maisha J Gaucho
Tony Y Kolmetz
Octavia W Nicka
Kadeem Y Gillian
Misaki R Doe
Cody G Caudy
Leja G Briddick
Emily C Nestle
Aika N Doe
Stacey A Butt
Salvatore A Ostrosky
Ivar J Foller
Clifford L Butt
Misaki G Stockham
Juan X Ruta
IdCountryDate
1000Italy2026-04-01
1001Russia2026-03-03
1002Japan2026-03-19
1003Spain2026-03-24
1004Spain2026-03-27
1005Japan2026-03-17
1006India2026-03-10
1007Russia2026-03-03
1008Germany2026-03-18
1009United Kingdom2026-04-01
1010Spain2026-03-09
1011Spain2026-03-07
1012India2026-03-24
1013France2026-04-01
1014India2026-03-16
1015Argentina2026-03-19
1016France2026-03-23
1017Argentina2026-03-05
1018Brazil2026-03-07
1019Japan2026-03-06
1020Argentina2026-03-31
1021Canada2026-03-08
1022Brazil2026-03-13
1023India2026-03-11
1024Germany2026-03-24
1025France2026-03-21
1026Spain2026-03-30
1027Japan2026-03-23
1028Germany2026-03-31
1029India2026-03-22
1030India2026-03-13
1031Germany2026-03-21
1032India2026-03-25
1033Brazil2026-03-11
1034Spain2026-03-25
1035India2026-03-09
1036France2026-03-09
1037France2026-03-24
1038Argentina2026-04-01
1039Argentina2026-03-30
1040Brazil2026-03-12
1041Japan2026-03-12
1042Germany2026-03-25
1043India2026-03-15
1044Italy2026-03-16
1045France2026-03-31
1046Argentina2026-03-08
1047Argentina2026-03-16
1048Germany2026-03-10
1049Italy2026-03-15

On-Demand Data

NameIdCountryDate
Mayumi Y Ruta1000Argentina2026-03-26
Stacey G Amigon1001Japan2026-03-13
Stacey O Stockham1002India2026-03-17
Deepesh T Malet1003Australia2026-03-03
Costa O Gillian1004United Kingdom2026-03-14
Ashley Q Ruta1005Australia2026-03-23
Kadeem D Stockham1006Spain2026-03-19
Jeanfrancois R Doe1007Germany2026-03-13
Kadeem N Kusko1008Brazil2026-03-08
Stacey H Slusarski1009Spain2026-03-21
David R Malet1010Germany2026-03-10
David Y Doe1011Canada2026-03-20
Julie Z Royster1012France2026-03-10
Johnson M Stenseth1013India2026-03-11
Deepesh M Garufi1014Canada2026-03-11
Rodrigues A Campain1015Argentina2026-04-01
Aruna B Figeroa1016Japan2026-03-17
Leja R Rim1017Russia2026-03-28
Johnson N Saylors1018Japan2026-03-27
Francesco U Briddick1019India2026-03-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones G MarrierIndiaOnyama Limba RENEWAL
Nicolas H GauchoGermanyElwin Sharvill RENEWAL
Alejandro D GarufiRussiaOnyama Limba PROPOSAL
Morrow W MarrierCanadaOnyama Limba NEGOTIATION
Silvio T BowleyArgentinaBernardo Dominic NEW
Darci D IturbideRussiaBernardo Dominic UNQUALIFIED
Ivar I KolmetzItalyIoni Bowcher NEW
Alejandro Q ButtArgentinaXuxue Feng NEW
Chavez T BologniaRussiaAmy Elsner PROPOSAL
Darci J KuskoUnited KingdomStephen Shaw NEW
Smith H FerenczIndiaOnyama Limba UNQUALIFIED
Deepesh J SergiUnited KingdomXuxue Feng PROPOSAL
Rodrigues W RoysterItalyAmy Elsner QUALIFIED
Leja O NestleFranceBernardo Dominic UNQUALIFIED
Stacey B DilliardCanadaOnyama Limba PROPOSAL
Mayumi R MarrierJapanAnna Fali QUALIFIED
Maria I MorascaUnited KingdomAmy Elsner UNQUALIFIED
Isabel D GarufiAustraliaBernardo Dominic RENEWAL
Emily W SchemmerFranceElwin Sharvill PROPOSAL
Smith J GillianBrazilAnna Fali RENEWAL
Ricardo O NestleArgentinaIoni Bowcher NEGOTIATION
Wickens D GillianIndiaXuxue Feng QUALIFIED
Murillo S TollnerItalyOnyama Limba UNQUALIFIED
Misaki H FollerSpainAsiya Javayant UNQUALIFIED
Stacey V CampainCanadaIvan Magalhaes NEW
Kaitlin B FigeroaSpainAnna Fali NEW
Rodrigues X InouyeSpainOnyama Limba NEGOTIATION
Morrow O StensethBrazilStephen Shaw QUALIFIED
Jennifer O KolmetzBrazilBernardo Dominic PROPOSAL
Aditya G GlickCanadaIvan Magalhaes NEGOTIATION
Darci F CaldareraJapanAsiya Javayant RENEWAL
Wickens E PoquetteFranceXuxue Feng RENEWAL
Jennifer J PaprockiAustraliaIoni Bowcher PROPOSAL
Ashley F CampainSpainAsiya Javayant QUALIFIED
Julie D FigeroaGermanyOnyama Limba QUALIFIED
Kaitlin S DoeGermanyStephen Shaw NEW
Stacey H NickaJapanOnyama Limba UNQUALIFIED
Clifford E MaletIndiaBernardo Dominic NEGOTIATION
Chavez W SaylorsIndiaIoni Bowcher RENEWAL
Salvatore T KolmetzUnited KingdomXuxue Feng 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.