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
Silvio M MarrierAustraliaIvan Magalhaes QUALIFIED
Johnson S StensethIndiaIoni Bowcher PROPOSAL
Leon S CampainIndiaAnna Fali UNQUALIFIED
Wickens D RulapaughJapanStephen Shaw QUALIFIED
Jones P DilliardFranceIvan Magalhaes RENEWAL
James G InouyeCanadaBernardo Dominic UNQUALIFIED
Aditya K DoeGermanyAnna Fali RENEWAL
Rodrigues D ButtItalyAmy Elsner NEGOTIATION
Isabel R CampainIndiaIvan Magalhaes PROPOSAL
Adams C GillianItalyAmy Elsner NEGOTIATION
Chavez F GillianJapanXuxue Feng NEW
Clifford Z SchemmerArgentinaStephen Shaw UNQUALIFIED
Octavia J NestleSpainOnyama Limba NEGOTIATION
Nicolas W BowleyUnited KingdomIvan Magalhaes PROPOSAL
Mujtaba K TollnerGermanyOnyama Limba RENEWAL
Murillo U GarufiBrazilIvan Magalhaes PROPOSAL
James X GarufiSpainIvan Magalhaes QUALIFIED
Rodrigues Z StensethIndiaIoni Bowcher QUALIFIED
Aika R BowleyIndiaAmy Elsner NEW
Octavia Z VocelkaItalyStephen Shaw UNQUALIFIED
Izzy G SlusarskiJapanOnyama Limba PROPOSAL
Antonio T BowleyIndiaXuxue Feng NEW
Aditya N CaudyAustraliaAmy Elsner QUALIFIED
Isabel W WieserAustraliaAnna Fali UNQUALIFIED
Juan J PoquetteFranceStephen Shaw NEGOTIATION
Aika V StensethRussiaAsiya Javayant NEW
Sinclair L SchemmerAustraliaBernardo Dominic UNQUALIFIED
Nicolas T ChuiIndiaIvan Magalhaes QUALIFIED
Salvatore D OldroydCanadaXuxue Feng PROPOSAL
Misaki L NestleAustraliaStephen Shaw NEGOTIATION
Alejandro M BowleyIndiaStephen Shaw RENEWAL
Sinclair M FollerJapanIoni Bowcher PROPOSAL
Salvatore A GillianAustraliaAnna Fali QUALIFIED
Nicolas L OldroydSpainIvan Magalhaes RENEWAL
Jones P OldroydUnited KingdomOnyama Limba NEW
Nicolas P GarufiFranceElwin Sharvill RENEWAL
Wickens Q CampainCanadaStephen Shaw QUALIFIED
Stacey D RoysterFranceIoni Bowcher UNQUALIFIED
Juan V SlusarskiFranceAmy Elsner RENEWAL
Johnson Q SlusarskiRussiaXuxue Feng RENEWAL
Alejandro F PoquetteArgentinaOnyama Limba QUALIFIED
Alejandro U MaletGermanyBernardo Dominic NEGOTIATION
Munro H StensethUnited KingdomAsiya Javayant PROPOSAL
Alejandro K GillianSpainBernardo Dominic RENEWAL
Silvio G NickaItalyIoni Bowcher NEGOTIATION
Jefferson M NickaSpainElwin Sharvill NEGOTIATION
Sinclair X SlusarskiIndiaIoni Bowcher QUALIFIED
Deepesh L AlbaresBrazilIvan Magalhaes PROPOSAL
Ivar O OstroskyItalyOnyama Limba PROPOSAL
Cody F ChuiArgentinaStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Alejandro C DarakjyUnited KingdomIvan Magalhaes RENEWAL
Kaitlin H RulapaughUnited KingdomAmy Elsner NEGOTIATION
Arvin X InouyeIndiaAmy Elsner PROPOSAL
Maisha X FerenczGermanyIvan Magalhaes UNQUALIFIED
Johnson Z RoysterSpainElwin Sharvill QUALIFIED
Jennifer Z FerenczFranceStephen Shaw PROPOSAL
Aditya I TollnerJapanElwin Sharvill QUALIFIED
Silvio Z RoysterCanadaBernardo Dominic UNQUALIFIED
Francesco Q PaprockiAustraliaStephen Shaw NEGOTIATION
Juan Z AlbaresBrazilBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya C WieserSpain2026-06-17Rangoni Of Florence RENEWAL1Bernardo Dominic
1001Aika K GillianItaly2026-06-17Truhlar And Truhlar Attys NEW53Onyama Limba
1002Smith S FlosiGermany2026-06-06Morlong Associates RENEWAL92Xuxue Feng
1003Antonio H RoysterJapan2026-06-15Printing Dimensions NEW26Amy Elsner
1004Jones Z DoeRussia2026-06-24Chemel, James L Cpa NEW7Xuxue Feng
1005Ashley Z FlosiAustralia2026-06-10Chapman, Ross E Esq RENEWAL42Elwin Sharvill
1006Deepesh P GarufiSpain2026-06-10Morlong Associates NEGOTIATION80Onyama Limba
1007Arvin T NestleItaly2026-06-09Feiner Bros QUALIFIED65Stephen Shaw
1008Maria A OldroydRussia2026-06-01Feiner Bros PROPOSAL57Elwin Sharvill
1009Leja I BowleyFrance2026-05-29Morlong Associates PROPOSAL80Stephen Shaw
1010Smith N GauchoArgentina2026-06-19Feltz Printing Service NEGOTIATION89Onyama Limba
1011Isabel D GillianIndia2026-06-21Morlong Associates NEW42Stephen Shaw
1012Alejandro X TollnerJapan2026-06-17Feltz Printing Service RENEWAL23Asiya Javayant
1013Faith D SlusarskiSpain2026-06-06Benton, John B Jr NEGOTIATION14Xuxue Feng
1014Salvatore U CaudyItaly2026-06-23Rousseaux, Michael Esq PROPOSAL17Bernardo Dominic
1015Rodrigues G CaldareraSpain2026-05-29King, Christopher A Esq UNQUALIFIED47Ioni Bowcher
1016Maria V PaprockiGermany2026-06-21Chapman, Ross E Esq NEGOTIATION81Ioni Bowcher
1017Sinclair C VenereItaly2026-06-03Morlong Associates RENEWAL64Asiya Javayant
1018Morrow Z GlickGermany2026-06-16King, Christopher A Esq PROPOSAL66Amy Elsner
1019Arvin V DilliardIndia2026-05-28Chapman, Ross E Esq NEGOTIATION29Ivan Magalhaes
1020Wickens J NickaItaly2026-06-13Buckley Miller Wright UNQUALIFIED37Bernardo Dominic
1021Silvio U PaprockiAustralia2026-06-23Printing Dimensions RENEWAL23Asiya Javayant
1022David D MaletArgentina2026-06-04Commercial Press NEGOTIATION72Amy Elsner
1023Aika V CampainSpain2026-06-21Feltz Printing Service UNQUALIFIED51Ioni Bowcher
1024Clifford E BriddickCanada2026-06-09Feltz Printing Service PROPOSAL80Elwin Sharvill
1025Maria Z StockhamItaly2026-06-19Printing Dimensions PROPOSAL67Ivan Magalhaes
1026Cody M RoysterRussia2026-06-17Benton, John B Jr RENEWAL7Amy Elsner
1027Ashley S VocelkaAustralia2026-06-01Chapman, Ross E Esq RENEWAL43Xuxue Feng
1028Adams Z BriddickArgentina2026-06-13Printing Dimensions UNQUALIFIED42Stephen Shaw
1029Francesco X CaudyUnited Kingdom2026-06-22Printing Dimensions QUALIFIED99Amy Elsner
1030Cody J FollerFrance2026-06-22Dorl, James J Esq NEGOTIATION50Bernardo Dominic
1031Munro C FollerItaly2026-06-07Benton, John B Jr UNQUALIFIED43Elwin Sharvill
1032Antonio M CampainUnited Kingdom2026-06-08Feiner Bros NEW75Amy Elsner
1033Wickens T DilliardSpain2026-06-06Chemel, James L Cpa QUALIFIED21Asiya Javayant
1034Aruna D MaletFrance2026-06-10Rangoni Of Florence NEW92Bernardo Dominic
1035Aditya Y MacleadItaly2026-05-31Printing Dimensions UNQUALIFIED64Elwin Sharvill
1036Arvin W StockhamRussia2026-06-12Truhlar And Truhlar Attys NEW5Xuxue Feng
1037Rodrigues K GillianItaly2026-06-22Chemel, James L Cpa RENEWAL42Elwin Sharvill
1038Cody C VenereJapan2026-06-20Truhlar And Truhlar Attys UNQUALIFIED67Xuxue Feng
1039Adams L MacleadAustralia2026-06-25Benton, John B Jr QUALIFIED64Bernardo Dominic
1040Mujtaba D VenereAustralia2026-06-23Chapman, Ross E Esq RENEWAL44Xuxue Feng
1041Leon Q FlosiSpain2026-05-29Commercial Press PROPOSAL93Xuxue Feng
1042Emily G WaycottIndia2026-05-28Chanay, Jeffrey A Esq UNQUALIFIED18Asiya Javayant
1043Deepesh K WhobreySpain2026-06-03Morlong Associates UNQUALIFIED54Ivan Magalhaes
1044Costa S ButtAustralia2026-06-22Morlong Associates RENEWAL55Anna Fali
1045Izzy I MaletArgentina2026-06-07Printing Dimensions PROPOSAL15Ioni Bowcher
1046Misaki P InouyeBrazil2026-06-22Dorl, James J Esq RENEWAL63Bernardo Dominic
1047Salvatore Q GarufiGermany2026-05-30Buckley Miller Wright RENEWAL31Xuxue Feng
1048Clifford P SaylorsUnited Kingdom2026-06-13Printing Dimensions PROPOSAL60Onyama Limba
1049Antonio W RulapaughAustralia2026-06-04Feiner Bros QUALIFIED0Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
David V CaudyAustraliaElwin Sharvill PROPOSAL
Jefferson U MorascaRussiaBernardo Dominic NEW
Johnson M SaylorsAustraliaStephen Shaw NEW
Jones P AmigonIndiaAnna Fali NEW
Costa J ButtFranceIvan Magalhaes UNQUALIFIED
Aditya L TollnerUnited KingdomOnyama Limba NEGOTIATION
Greenwood X TollnerSpainOnyama Limba RENEWAL
Jeanfrancois C BriddickGermanyAnna Fali RENEWAL
Aruna K SergiAustraliaOnyama Limba PROPOSAL
Alejandro V NestleRussiaOnyama Limba PROPOSAL
Mujtaba X InouyeCanadaIoni Bowcher QUALIFIED
Francesco J BowleyBrazilOnyama Limba PROPOSAL
Emily G PoquetteGermanyXuxue Feng NEGOTIATION
Maisha H BowleySpainXuxue Feng QUALIFIED
Maria B SaylorsAustraliaIoni Bowcher PROPOSAL
Costa N InouyeCanadaAmy Elsner PROPOSAL
Salvatore I PerinRussiaBernardo Dominic UNQUALIFIED
Emily M BowleyRussiaStephen Shaw NEGOTIATION
Costa E RimAustraliaAsiya Javayant QUALIFIED
Greenwood I FigeroaBrazilBernardo Dominic PROPOSAL
Wickens L OstroskyAustraliaAsiya Javayant QUALIFIED
Stacey J MaletGermanyAmy Elsner PROPOSAL
Murillo O DilliardIndiaBernardo Dominic RENEWAL
Jones M SergiGermanyAnna Fali PROPOSAL
Kadeem C PoquetteSpainAsiya Javayant PROPOSAL
Ivar D MorascaJapanXuxue Feng RENEWAL
Smith X ButtAustraliaAnna Fali NEGOTIATION
Leja Y MacleadArgentinaXuxue Feng NEGOTIATION
Rodrigues F NickaFranceIoni Bowcher RENEWAL
Deepesh X NickaRussiaAsiya Javayant QUALIFIED
Clifford E FollerArgentinaElwin Sharvill PROPOSAL
Stacey L GarufiAustraliaIoni Bowcher UNQUALIFIED
Claire Q SergiJapanIoni Bowcher NEW
Izzy R TollnerArgentinaAsiya Javayant PROPOSAL
Mayumi G ChuiCanadaIvan Magalhaes QUALIFIED
Faith N WhobreyJapanElwin Sharvill PROPOSAL
Chavez B FlosiFranceBernardo Dominic UNQUALIFIED
Greenwood C GillianItalyStephen Shaw NEW
Jeanfrancois A WaycottRussiaOnyama Limba PROPOSAL
Jeanfrancois C GauchoSpainStephen Shaw RENEWAL
Leon F RoysterSpainAnna Fali NEW
Juan M StensethFranceIoni Bowcher PROPOSAL
Ashley A PerinSpainStephen Shaw NEW
Kadeem R ButtBrazilIoni Bowcher RENEWAL
Maria O BowleySpainAnna Fali PROPOSAL
Stacey M KuskoBrazilXuxue Feng RENEWAL
Alejandro H VocelkaSpainBernardo Dominic RENEWAL
Johnson T RoysterCanadaStephen Shaw NEW
Chavez N StockhamUnited KingdomAmy Elsner QUALIFIED
Silvio Z GlickFranceAnna Fali NEGOTIATION
Frozen Columns
Name
Kaitlin J Oldroyd
Kadeem R Rim
Ricardo Y Amigon
Alejandro F Nicka
Nicolas U Maclead
Leon G Vocelka
Faith R Doe
Emily C Kusko
Maisha J Schemmer
Izzy B Morasca
Chavez E Waycott
Ricardo R Kolmetz
Johnson J Bowley
Misaki P Figeroa
Emily Y Darakjy
Adams Z Nestle
Wickens S Saylors
Costa C Stenseth
Smith V Inouye
Clifford D Tollner
Francesco C Malet
Morrow O Ferencz
Nicolas U Bolognia
Sinclair W Albares
Leon E Saylors
Kaitlin R Nicka
Leja G Inouye
Rodrigues B Nestle
James H Kusko
Wickens C Chui
Juan N Briddick
Murillo H Stockham
Jones Y Butt
Julie A Inouye
Leja H Venere
Kaitlin G Tollner
Cody N Foller
Deepesh I Inouye
Rodrigues W Darakjy
Chavez X Shinko
Wickens P Rulapaugh
Ashley L Rulapaugh
Juan B Butt
Stacey F Ostrosky
Aika O Inouye
Maria X Ruta
Maisha A Tollner
Adams I Wieser
Greenwood H Kolmetz
Ivar G Waycott
IdCountryDate
1000France2026-06-02
1001Canada2026-06-02
1002Japan2026-06-22
1003India2026-06-07
1004Brazil2026-06-07
1005United Kingdom2026-06-22
1006Argentina2026-06-12
1007Japan2026-06-15
1008Australia2026-06-21
1009Brazil2026-06-25
1010France2026-06-22
1011Japan2026-06-10
1012United Kingdom2026-06-17
1013United Kingdom2026-06-11
1014Argentina2026-06-20
1015Italy2026-06-17
1016Brazil2026-06-25
1017France2026-06-25
1018United Kingdom2026-06-05
1019Russia2026-06-01
1020Germany2026-06-11
1021Canada2026-06-05
1022Brazil2026-06-09
1023Australia2026-06-13
1024Australia2026-06-15
1025Brazil2026-06-22
1026India2026-06-13
1027Germany2026-06-22
1028United Kingdom2026-06-01
1029Canada2026-06-19
1030Spain2026-06-03
1031Japan2026-06-09
1032United Kingdom2026-06-05
1033Brazil2026-06-22
1034Russia2026-06-25
1035France2026-06-14
1036Australia2026-05-28
1037Argentina2026-05-31
1038Australia2026-06-24
1039Spain2026-06-24
1040Japan2026-06-05
1041France2026-06-13
1042Argentina2026-06-16
1043Canada2026-06-08
1044Argentina2026-06-06
1045Japan2026-06-13
1046Brazil2026-06-13
1047Brazil2026-06-13
1048Canada2026-06-17
1049Japan2026-06-23

On-Demand Data

NameIdCountryDate
Munro B Ferencz1000Canada2026-06-11
Antonio R Nestle1001Spain2026-05-28
Silvio T Maclead1002Germany2026-06-02
Leja K Inouye1003Japan2026-06-01
Julie P Campain1004India2026-05-30
Ivar Y Shinko1005Japan2026-05-28
Stacey Z Nicka1006Japan2026-06-10
Arvin V Stockham1007Japan2026-06-09
Ricardo Y Nestle1008India2026-06-23
Francesco Y Kolmetz1009Spain2026-06-14
Julie J Maclead1010Italy2026-06-18
Octavia K Venere1011Japan2026-06-18
Izzy V Flosi1012Canada2026-06-03
Emily H Caudy1013Italy2026-06-25
Chavez E Caldarera1014United Kingdom2026-06-02
Salvatore C Bowley1015United Kingdom2026-06-03
Kadeem W Whobrey1016India2026-06-23
Johnson I Garufi1017Japan2026-06-16
Silvio O Slusarski1018United Kingdom2026-06-16
Antonio L Paprocki1019Brazil2026-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio W GillianCanadaXuxue Feng UNQUALIFIED
Mujtaba H FlosiItalyElwin Sharvill UNQUALIFIED
Aruna A RimAustraliaStephen Shaw NEW
Adams A MacleadJapanBernardo Dominic UNQUALIFIED
Kaitlin X OstroskyBrazilXuxue Feng NEGOTIATION
Nicolas P DarakjyRussiaOnyama Limba NEGOTIATION
Greenwood D WaycottJapanAnna Fali QUALIFIED
Leja U CampainBrazilAsiya Javayant NEGOTIATION
Ricardo E ButtArgentinaXuxue Feng UNQUALIFIED
Cody S CampainItalyAmy Elsner QUALIFIED
Juan G FerenczJapanIoni Bowcher PROPOSAL
Aruna K InouyeFranceBernardo Dominic RENEWAL
Sinclair O TollnerUnited KingdomIvan Magalhaes UNQUALIFIED
Aruna B StockhamFranceAmy Elsner NEW
Arvin I IturbideRussiaIoni Bowcher QUALIFIED
David Y MaletSpainIvan Magalhaes RENEWAL
Maria W TollnerCanadaOnyama Limba RENEWAL
Stacey K DoeCanadaIvan Magalhaes RENEWAL
Kadeem J MacleadJapanAsiya Javayant PROPOSAL
Salvatore T IturbideArgentinaIvan Magalhaes QUALIFIED
Stacey S MorascaArgentinaElwin Sharvill UNQUALIFIED
Tony C WieserBrazilOnyama Limba NEW
Jeanfrancois P NestleFranceElwin Sharvill QUALIFIED
Kaitlin J KuskoUnited KingdomXuxue Feng NEW
Sinclair H StensethFranceAnna Fali RENEWAL
Rodrigues W FigeroaJapanElwin Sharvill NEW
Ricardo K MacleadCanadaIvan Magalhaes QUALIFIED
Tony O PoquetteJapanElwin Sharvill PROPOSAL
Leja S RulapaughIndiaElwin Sharvill PROPOSAL
Tony J CaldareraJapanBernardo Dominic UNQUALIFIED
Salvatore M RimIndiaAnna Fali QUALIFIED
Octavia X WaycottRussiaElwin Sharvill QUALIFIED
Silvio P AlbaresFranceOnyama Limba PROPOSAL
Ashley C NestleItalyOnyama Limba UNQUALIFIED
Clifford H NickaFranceIvan Magalhaes RENEWAL
Tony W BriddickUnited KingdomElwin Sharvill NEGOTIATION
Tony H InouyeCanadaAmy Elsner PROPOSAL
Murillo Z SlusarskiRussiaStephen Shaw NEGOTIATION
Tony V NickaItalyXuxue Feng UNQUALIFIED
Mayumi M SergiIndiaAnna Fali NEW

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