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
Tony R MorascaUnited KingdomIvan Magalhaes RENEWAL
Jennifer U WhobreySpainXuxue Feng NEGOTIATION
Tony I MaletGermanyIoni Bowcher UNQUALIFIED
Tony U OldroydFranceAnna Fali NEGOTIATION
Nicolas K SchemmerFranceElwin Sharvill PROPOSAL
Munro I FollerAustraliaAsiya Javayant NEW
Johnson Y ButtJapanAsiya Javayant PROPOSAL
Tony T SlusarskiArgentinaElwin Sharvill QUALIFIED
Maria Q PaprockiCanadaElwin Sharvill UNQUALIFIED
Kadeem Z TollnerRussiaAsiya Javayant PROPOSAL
Emily Q VenereFranceIvan Magalhaes RENEWAL
Maria S BriddickCanadaIvan Magalhaes QUALIFIED
Faith R BowleyGermanyStephen Shaw NEGOTIATION
Maisha U FollerGermanyStephen Shaw UNQUALIFIED
Cody X RutaFranceAmy Elsner NEW
David G VocelkaUnited KingdomElwin Sharvill UNQUALIFIED
Munro E OldroydItalyAnna Fali NEW
Aruna Z CaudyJapanAsiya Javayant UNQUALIFIED
David Z BowleyArgentinaAnna Fali NEW
Tony Q MacleadJapanOnyama Limba NEW
Clifford D GillianJapanStephen Shaw UNQUALIFIED
Clifford Q GarufiUnited KingdomOnyama Limba PROPOSAL
Morrow C WieserArgentinaIoni Bowcher RENEWAL
Johnson G NestleAustraliaOnyama Limba PROPOSAL
Maisha U AmigonJapanElwin Sharvill RENEWAL
Ricardo B GlickBrazilXuxue Feng UNQUALIFIED
Deepesh X ChuiJapanOnyama Limba NEW
Izzy G DoeSpainAnna Fali NEW
Aruna V NestleItalyAmy Elsner UNQUALIFIED
Octavia R KolmetzCanadaAmy Elsner UNQUALIFIED
Morrow F WaycottCanadaAmy Elsner QUALIFIED
Wickens J FollerUnited KingdomXuxue Feng UNQUALIFIED
Wickens L AmigonGermanyAsiya Javayant PROPOSAL
Mayumi D WaycottGermanyIoni Bowcher NEW
Julie N AlbaresBrazilXuxue Feng NEGOTIATION
Leon M DarakjyFranceXuxue Feng QUALIFIED
Mujtaba V FlosiJapanStephen Shaw PROPOSAL
Mujtaba N FlosiAustraliaStephen Shaw NEGOTIATION
David P ButtSpainAnna Fali QUALIFIED
Kadeem W GillianFranceXuxue Feng QUALIFIED
Rodrigues L GarufiRussiaIvan Magalhaes PROPOSAL
Leja N GarufiArgentinaAnna Fali NEGOTIATION
Greenwood E FerenczAustraliaIoni Bowcher RENEWAL
Cody D GlickCanadaIoni Bowcher RENEWAL
Antonio U KolmetzItalyIvan Magalhaes NEGOTIATION
Sinclair L GillianBrazilOnyama Limba NEW
Maria Z PerinRussiaAnna Fali PROPOSAL
Rodrigues F StockhamUnited KingdomAnna Fali PROPOSAL
Darci V SchemmerAustraliaAmy Elsner NEGOTIATION
Alejandro W ButtSpainStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Costa R GillianUnited KingdomStephen Shaw NEW
Francesco L PaprockiCanadaStephen Shaw NEW
Misaki O RoysterBrazilOnyama Limba PROPOSAL
Leon I RoysterRussiaAsiya Javayant NEW
Isabel Y GlickGermanyIvan Magalhaes NEW
James R SlusarskiFranceAsiya Javayant UNQUALIFIED
Ricardo P ShinkoJapanOnyama Limba QUALIFIED
Alejandro Q ButtFranceElwin Sharvill NEW
Leja N BologniaGermanyAsiya Javayant NEGOTIATION
Jones C MorascaItalyIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja H BriddickRussia2026-01-30Dorl, James J Esq UNQUALIFIED79Asiya Javayant
1001Kadeem Q GarufiBrazil2026-02-27Chemel, James L Cpa QUALIFIED9Elwin Sharvill
1002Mayumi K FerenczCanada2026-02-07Truhlar And Truhlar Attys UNQUALIFIED73Xuxue Feng
1003Claire A MaletIndia2026-02-09Truhlar And Truhlar Attys QUALIFIED39Elwin Sharvill
1004Adams E PaprockiCanada2026-02-15Feltz Printing Service QUALIFIED96Ioni Bowcher
1005Maisha M RoysterIndia2026-02-18Printing Dimensions UNQUALIFIED97Amy Elsner
1006Kaitlin S SlusarskiIndia2026-02-10Truhlar And Truhlar Attys UNQUALIFIED91Xuxue Feng
1007Aditya Z RimSpain2026-02-03Feiner Bros UNQUALIFIED27Ivan Magalhaes
1008Kadeem F ChuiSpain2026-02-06Chapman, Ross E Esq NEGOTIATION9Ioni Bowcher
1009Isabel W BriddickAustralia2026-02-01Chemel, James L Cpa NEGOTIATION19Stephen Shaw
1010Jeanfrancois J OstroskyArgentina2026-02-11Printing Dimensions QUALIFIED6Ioni Bowcher
1011Emily F PoquetteArgentina2026-02-01Commercial Press NEGOTIATION81Stephen Shaw
1012Maisha D PoquetteRussia2026-01-31Buckley Miller Wright NEGOTIATION64Bernardo Dominic
1013Octavia D FollerIndia2026-02-24King, Christopher A Esq RENEWAL59Amy Elsner
1014Jefferson Q GlickArgentina2026-02-01Dorl, James J Esq RENEWAL4Ivan Magalhaes
1015Rodrigues U BowleyItaly2026-02-27Buckley Miller Wright QUALIFIED86Elwin Sharvill
1016Izzy Z DilliardItaly2026-02-11Feltz Printing Service PROPOSAL2Onyama Limba
1017Ricardo I DoeUnited Kingdom2026-02-05Feiner Bros UNQUALIFIED15Onyama Limba
1018Izzy G DilliardRussia2026-01-30Chemel, James L Cpa RENEWAL63Ioni Bowcher
1019Tony U MacleadArgentina2026-02-09Chapman, Ross E Esq RENEWAL30Bernardo Dominic
1020Maria P BologniaRussia2026-02-15Commercial Press UNQUALIFIED68Ivan Magalhaes
1021Morrow D GauchoGermany2026-02-02Benton, John B Jr UNQUALIFIED95Xuxue Feng
1022Aruna B TollnerBrazil2026-02-26Chemel, James L Cpa UNQUALIFIED47Anna Fali
1023Mayumi C GlickGermany2026-02-13Buckley Miller Wright NEW20Ivan Magalhaes
1024Tony V SaylorsArgentina2026-02-16Rangoni Of Florence NEW22Bernardo Dominic
1025James Q DoeItaly2026-02-23Printing Dimensions RENEWAL15Onyama Limba
1026Aika K DarakjyIndia2026-02-08Rangoni Of Florence RENEWAL8Stephen Shaw
1027Arvin G MaletJapan2026-02-13Dorl, James J Esq NEW55Stephen Shaw
1028Maria Q FollerSpain2026-02-24Chanay, Jeffrey A Esq PROPOSAL49Ivan Magalhaes
1029Jennifer W GillianSpain2026-02-06Commercial Press PROPOSAL15Xuxue Feng
1030Kadeem F SaylorsItaly2026-02-24Benton, John B Jr UNQUALIFIED41Bernardo Dominic
1031Deepesh Z OstroskyArgentina2026-02-01Printing Dimensions PROPOSAL4Anna Fali
1032Wickens C SchemmerArgentina2026-02-27Rangoni Of Florence NEGOTIATION44Ioni Bowcher
1033Alejandro C NickaRussia2026-02-28Chapman, Ross E Esq NEGOTIATION75Bernardo Dominic
1034Murillo E VocelkaSpain2026-02-23Dorl, James J Esq RENEWAL2Stephen Shaw
1035Isabel T NickaItaly2026-02-13Feiner Bros RENEWAL30Stephen Shaw
1036Francesco B CaldareraFrance2026-02-20Rousseaux, Michael Esq UNQUALIFIED8Ivan Magalhaes
1037Jennifer L WieserUnited Kingdom2026-02-07Rangoni Of Florence PROPOSAL44Anna Fali
1038Costa R PerinRussia2026-02-15Truhlar And Truhlar Attys NEGOTIATION16Ioni Bowcher
1039Mujtaba H SaylorsGermany2026-02-17Feiner Bros NEGOTIATION79Anna Fali
1040Kadeem P RutaGermany2026-01-31Benton, John B Jr UNQUALIFIED29Stephen Shaw
1041Ricardo R ChuiIndia2026-02-09Rangoni Of Florence UNQUALIFIED55Amy Elsner
1042Jennifer C MarrierJapan2026-02-07Feiner Bros RENEWAL87Bernardo Dominic
1043Juan Z SchemmerItaly2026-02-08Chanay, Jeffrey A Esq UNQUALIFIED14Ioni Bowcher
1044Aika M PoquetteItaly2026-01-30Rangoni Of Florence NEGOTIATION97Onyama Limba
1045Adams C DoeArgentina2026-02-28Truhlar And Truhlar Attys RENEWAL16Asiya Javayant
1046Salvatore R PaprockiIndia2026-02-27Buckley Miller Wright NEGOTIATION98Onyama Limba
1047Tony F VocelkaBrazil2026-02-12Truhlar And Truhlar Attys RENEWAL75Amy Elsner
1048Morrow W WhobreyArgentina2026-02-02Rangoni Of Florence RENEWAL95Asiya Javayant
1049Alejandro U WhobreyArgentina2026-02-21Commercial Press NEW15Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Alejandro S CaldareraCanadaAnna Fali QUALIFIED
David K SergiSpainAnna Fali NEGOTIATION
Morrow V ButtSpainIvan Magalhaes UNQUALIFIED
Nicolas V RulapaughBrazilIoni Bowcher QUALIFIED
Tony L OstroskyBrazilOnyama Limba RENEWAL
Adams U OldroydArgentinaBernardo Dominic PROPOSAL
Misaki D CampainRussiaOnyama Limba UNQUALIFIED
Maria G DarakjyItalyIvan Magalhaes NEGOTIATION
Ashley R AlbaresIndiaIvan Magalhaes RENEWAL
Ivar I RoysterIndiaIoni Bowcher QUALIFIED
Mujtaba P GillianRussiaAnna Fali PROPOSAL
Munro J SlusarskiUnited KingdomAnna Fali NEGOTIATION
Julie T FlosiGermanyOnyama Limba QUALIFIED
Jones T SlusarskiBrazilElwin Sharvill NEGOTIATION
Cody U WhobreyFranceStephen Shaw RENEWAL
Isabel N MaletIndiaElwin Sharvill UNQUALIFIED
Emily S DilliardCanadaAmy Elsner PROPOSAL
Johnson W FollerCanadaIoni Bowcher NEGOTIATION
Kadeem Y BologniaRussiaAnna Fali RENEWAL
David W KolmetzRussiaBernardo Dominic PROPOSAL
Mujtaba X SaylorsGermanyAmy Elsner NEW
Emily K GillianIndiaXuxue Feng UNQUALIFIED
Murillo Z MarrierBrazilAsiya Javayant QUALIFIED
Izzy E MaletRussiaXuxue Feng NEW
Leon Y TollnerSpainIvan Magalhaes QUALIFIED
Morrow G WaycottAustraliaAmy Elsner RENEWAL
Sinclair A MacleadItalyIoni Bowcher UNQUALIFIED
Chavez L VenereAustraliaOnyama Limba RENEWAL
Izzy F KolmetzBrazilIoni Bowcher QUALIFIED
Mujtaba B OldroydJapanOnyama Limba QUALIFIED
Greenwood Q InouyeAustraliaAsiya Javayant NEW
Jones L DarakjyIndiaStephen Shaw RENEWAL
Tony B ChuiSpainIvan Magalhaes NEGOTIATION
Darci C GillianGermanyXuxue Feng QUALIFIED
Stacey H VocelkaFranceAsiya Javayant RENEWAL
Smith Y MaletIndiaAsiya Javayant RENEWAL
Juan K DilliardFranceAmy Elsner PROPOSAL
Jennifer S DilliardItalyIvan Magalhaes NEGOTIATION
Jennifer O AmigonArgentinaStephen Shaw NEGOTIATION
Octavia T ShinkoJapanAsiya Javayant UNQUALIFIED
Stacey V IturbideArgentinaAsiya Javayant NEW
Octavia X MaletAustraliaAmy Elsner NEW
Ricardo E SaylorsItalyAmy Elsner NEW
Stacey L AmigonArgentinaAsiya Javayant NEGOTIATION
Arvin V FlosiArgentinaAnna Fali NEGOTIATION
Clifford C DoeAustraliaElwin Sharvill QUALIFIED
Chavez D IturbideArgentinaOnyama Limba PROPOSAL
Aditya J CaudyIndiaIvan Magalhaes UNQUALIFIED
Costa C SergiArgentinaBernardo Dominic PROPOSAL
Mayumi D WaycottItalyAnna Fali UNQUALIFIED
Frozen Columns
Name
Rodrigues P Maclead
Salvatore F Campain
Kadeem R Kolmetz
Jefferson H Rulapaugh
Misaki X Dilliard
Kaitlin I Butt
Kadeem Y Gillian
Alejandro G Caldarera
Aruna N Flosi
Maria J Stockham
Maisha Q Nestle
Silvio P Kusko
Stacey O Ferencz
Deepesh K Schemmer
Darci J Campain
Antonio O Marrier
Maria R Darakjy
Arvin P Rulapaugh
Aika B Rim
Aruna T Campain
Jefferson Z Morasca
Jeanfrancois D Glick
David Q Oldroyd
Wickens Q Caldarera
Mayumi F Slusarski
Aruna L Perin
Emily V Nicka
Stacey C Inouye
Alejandro T Kusko
Emily Y Oldroyd
Claire D Schemmer
Deepesh K Amigon
Mujtaba R Gillian
Salvatore F Poquette
Jones F Morasca
Jeanfrancois P Morasca
Chavez M Vocelka
Aika Z Doe
Johnson V Vocelka
Aika J Gillian
Octavia Q Garufi
Morrow P Perin
Leon L Oldroyd
Izzy I Paprocki
Julie M Rim
Ricardo E Caudy
Greenwood V Albares
Arvin J Ruta
Mayumi W Bolognia
Mujtaba P Royster
IdCountryDate
1000Brazil2026-02-23
1001Canada2026-02-28
1002Canada2026-02-16
1003France2026-02-25
1004Brazil2026-02-12
1005Canada2026-01-30
1006France2026-02-11
1007Spain2026-02-01
1008Argentina2026-02-08
1009Canada2026-02-21
1010Brazil2026-02-11
1011Russia2026-02-26
1012Germany2026-02-03
1013Italy2026-02-26
1014India2026-02-07
1015Brazil2026-02-25
1016Brazil2026-02-10
1017Russia2026-02-21
1018Russia2026-01-30
1019Argentina2026-02-16
1020United Kingdom2026-02-13
1021Canada2026-02-21
1022France2026-02-21
1023Spain2026-02-23
1024Germany2026-02-15
1025France2026-01-30
1026United Kingdom2026-02-24
1027Australia2026-01-31
1028France2026-01-30
1029Canada2026-02-07
1030Germany2026-02-19
1031Australia2026-02-06
1032Russia2026-02-28
1033France2026-02-01
1034Italy2026-02-23
1035Japan2026-02-11
1036Australia2026-02-22
1037Argentina2026-02-08
1038India2026-02-03
1039Japan2026-02-14
1040Argentina2026-02-01
1041Argentina2026-02-10
1042Brazil2026-02-15
1043Japan2026-02-26
1044Brazil2026-02-03
1045Argentina2026-02-07
1046Argentina2026-02-22
1047India2026-02-10
1048Brazil2026-02-02
1049Argentina2026-02-01

On-Demand Data

NameIdCountryDate
Juan A Morasca1000United Kingdom2026-02-19
Maisha N Garufi1001Spain2026-02-22
Isabel X Royster1002Australia2026-02-22
Greenwood S Ostrosky1003Australia2026-02-05
Francesco G Oldroyd1004Russia2026-02-15
Stacey J Kolmetz1005India2026-02-14
Darci P Kolmetz1006Canada2026-02-20
Claire M Morasca1007Japan2026-02-17
Mayumi Z Ferencz1008Spain2026-02-09
Faith K Darakjy1009Argentina2026-02-02
Ricardo M Perin1010India2026-02-13
Mujtaba D Gaucho1011Italy2026-02-26
Faith X Caudy1012Argentina2026-02-20
Claire E Campain1013France2026-02-16
Rodrigues G Inouye1014United Kingdom2026-02-03
Claire M Poquette1015Spain2026-02-17
Wickens V Waycott1016Canada2026-02-08
Ashley W Tollner1017Japan2026-02-19
Izzy W Schemmer1018France2026-02-24
Clifford U Dilliard1019Brazil2026-02-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy Z WaycottCanadaIvan Magalhaes NEGOTIATION
Kadeem D CampainJapanOnyama Limba NEGOTIATION
Jennifer T DarakjyItalyBernardo Dominic RENEWAL
Francesco Y WhobreyUnited KingdomStephen Shaw UNQUALIFIED
Francesco O StockhamFranceIoni Bowcher NEW
David I PoquetteRussiaIoni Bowcher PROPOSAL
James T WhobreyBrazilStephen Shaw NEW
Jennifer P MacleadBrazilXuxue Feng NEW
Maria C ChuiUnited KingdomAmy Elsner QUALIFIED
Darci N RulapaughCanadaAsiya Javayant UNQUALIFIED
Maria N MaletUnited KingdomElwin Sharvill NEGOTIATION
Maisha F MaletFranceIoni Bowcher QUALIFIED
Isabel H PerinIndiaIoni Bowcher NEW
Chavez Q OldroydRussiaAmy Elsner NEW
Aruna V WieserItalyAnna Fali NEGOTIATION
Adams Y DoeGermanyAmy Elsner NEW
Jones W ButtFranceIvan Magalhaes RENEWAL
Octavia X ChuiRussiaAmy Elsner NEGOTIATION
Munro Z DarakjyCanadaElwin Sharvill PROPOSAL
Leja M FigeroaItalyAsiya Javayant QUALIFIED
Alejandro O RulapaughUnited KingdomIvan Magalhaes QUALIFIED
Julie M WieserArgentinaXuxue Feng QUALIFIED
Misaki Y IturbideJapanAmy Elsner PROPOSAL
Greenwood O ChuiItalyIoni Bowcher NEW
Nicolas M BriddickArgentinaIoni Bowcher NEGOTIATION
Leja X MarrierBrazilXuxue Feng QUALIFIED
Claire R ChuiRussiaStephen Shaw RENEWAL
Jefferson G VenereCanadaIvan Magalhaes UNQUALIFIED
Alejandro O ShinkoUnited KingdomIvan Magalhaes RENEWAL
Jeanfrancois E VenereBrazilElwin Sharvill PROPOSAL
Aruna C SlusarskiUnited KingdomStephen Shaw QUALIFIED
Silvio P FlosiUnited KingdomAmy Elsner UNQUALIFIED
Jennifer S CampainIndiaOnyama Limba NEGOTIATION
Leon P StensethCanadaXuxue Feng RENEWAL
Arvin O StockhamCanadaIvan Magalhaes QUALIFIED
Cody K ButtIndiaAnna Fali QUALIFIED
Faith I ShinkoBrazilElwin Sharvill PROPOSAL
Leja Z BologniaGermanyBernardo Dominic NEGOTIATION
Smith B CaudyRussiaAmy Elsner NEGOTIATION
Antonio K CaldareraFranceBernardo Dominic 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.