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
Morrow S FlosiJapanIvan Magalhaes PROPOSAL
Salvatore F BriddickItalyIoni Bowcher NEW
Greenwood Y FlosiRussiaBernardo Dominic PROPOSAL
Octavia S FerenczItalyAsiya Javayant PROPOSAL
Munro E SergiUnited KingdomAsiya Javayant NEW
Maria T StockhamJapanBernardo Dominic UNQUALIFIED
Deepesh S ButtBrazilElwin Sharvill NEGOTIATION
Kadeem S MaletJapanIvan Magalhaes NEGOTIATION
Mujtaba I BologniaJapanXuxue Feng QUALIFIED
David J KolmetzAustraliaOnyama Limba NEGOTIATION
Izzy H FlosiBrazilIoni Bowcher QUALIFIED
Mayumi Z OldroydUnited KingdomOnyama Limba PROPOSAL
Julie G SchemmerIndiaBernardo Dominic RENEWAL
Sinclair V MacleadArgentinaAsiya Javayant PROPOSAL
Deepesh E MarrierBrazilIoni Bowcher NEW
Isabel I GlickSpainStephen Shaw RENEWAL
Leon Y SergiAustraliaBernardo Dominic RENEWAL
Murillo F PoquetteItalyElwin Sharvill QUALIFIED
Aika S DarakjyArgentinaBernardo Dominic PROPOSAL
Izzy Z CaldareraItalyIvan Magalhaes UNQUALIFIED
Ricardo X MacleadIndiaElwin Sharvill NEW
Juan A KolmetzSpainIvan Magalhaes NEGOTIATION
Jefferson U AmigonFranceAsiya Javayant QUALIFIED
Jeanfrancois D MarrierAustraliaIvan Magalhaes PROPOSAL
Misaki P KuskoSpainStephen Shaw PROPOSAL
Adams R DilliardBrazilAsiya Javayant QUALIFIED
James N RoysterUnited KingdomAmy Elsner RENEWAL
Aika Z NickaItalyIvan Magalhaes PROPOSAL
Tony P TollnerJapanStephen Shaw NEGOTIATION
Misaki E InouyeUnited KingdomAmy Elsner QUALIFIED
Izzy V KuskoGermanyElwin Sharvill NEW
Silvio R OstroskyRussiaBernardo Dominic UNQUALIFIED
Nicolas Z FigeroaGermanyXuxue Feng RENEWAL
Kaitlin U KolmetzJapanAnna Fali RENEWAL
Smith D BowleyItalyStephen Shaw UNQUALIFIED
Stacey J MaletCanadaAsiya Javayant NEW
Mayumi Y SergiSpainAmy Elsner UNQUALIFIED
Emily I DilliardGermanyBernardo Dominic RENEWAL
Greenwood I AlbaresCanadaElwin Sharvill NEW
Ashley L KolmetzItalyXuxue Feng QUALIFIED
Jeanfrancois C OstroskyItalyBernardo Dominic QUALIFIED
Jefferson S StensethCanadaBernardo Dominic NEGOTIATION
David F MacleadSpainBernardo Dominic PROPOSAL
Cody D VocelkaCanadaAmy Elsner NEW
Deepesh S MaletJapanAsiya Javayant QUALIFIED
Mujtaba S SchemmerItalyXuxue Feng NEW
Faith W OstroskyCanadaAsiya Javayant RENEWAL
Kadeem G FollerAustraliaElwin Sharvill NEW
Izzy E SergiAustraliaOnyama Limba RENEWAL
Juan W GarufiBrazilElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Izzy F RutaArgentinaIoni Bowcher NEGOTIATION
Sinclair T NestleRussiaBernardo Dominic RENEWAL
Julie X DoeUnited KingdomAnna Fali NEW
Maisha L GarufiSpainAsiya Javayant RENEWAL
Rodrigues M SergiIndiaXuxue Feng NEW
Alejandro X GillianIndiaAnna Fali QUALIFIED
Stacey O BriddickUnited KingdomOnyama Limba RENEWAL
Deepesh R RoysterBrazilOnyama Limba RENEWAL
Cody E PerinArgentinaAsiya Javayant UNQUALIFIED
Tony H PaprockiArgentinaAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson L DarakjyAustralia2026-05-24Chanay, Jeffrey A Esq QUALIFIED10Ioni Bowcher
1001Claire P KuskoAustralia2026-05-19Rangoni Of Florence UNQUALIFIED13Amy Elsner
1002Claire E MorascaIndia2026-05-29Truhlar And Truhlar Attys NEW25Stephen Shaw
1003Kadeem U DilliardAustralia2026-05-21Chemel, James L Cpa RENEWAL2Asiya Javayant
1004Murillo P KolmetzFrance2026-06-12Rangoni Of Florence NEW48Ioni Bowcher
1005Faith K SaylorsBrazil2026-06-12Truhlar And Truhlar Attys QUALIFIED93Bernardo Dominic
1006Arvin I PerinRussia2026-05-21Rangoni Of Florence NEGOTIATION17Amy Elsner
1007Octavia L KolmetzJapan2026-06-14Buckley Miller Wright UNQUALIFIED93Stephen Shaw
1008Aika U AlbaresItaly2026-06-10Rangoni Of Florence NEGOTIATION62Xuxue Feng
1009Ivar Y ShinkoJapan2026-05-26Printing Dimensions NEGOTIATION87Elwin Sharvill
1010Mujtaba G GillianItaly2026-05-31Rangoni Of Florence UNQUALIFIED11Xuxue Feng
1011Isabel A ChuiSpain2026-05-27Buckley Miller Wright UNQUALIFIED43Stephen Shaw
1012Jefferson O MaletJapan2026-06-14Buckley Miller Wright QUALIFIED41Onyama Limba
1013Costa O SergiArgentina2026-06-09Printing Dimensions NEGOTIATION57Xuxue Feng
1014Kaitlin Z StockhamBrazil2026-05-21Morlong Associates PROPOSAL89Asiya Javayant
1015Francesco K MorascaBrazil2026-06-10Feltz Printing Service QUALIFIED19Anna Fali
1016Chavez R ShinkoUnited Kingdom2026-05-21Rousseaux, Michael Esq NEW45Amy Elsner
1017Emily C SergiJapan2026-05-27Chapman, Ross E Esq NEW74Stephen Shaw
1018Ivar U CaldareraCanada2026-05-25Feiner Bros UNQUALIFIED39Xuxue Feng
1019Julie V GauchoAustralia2026-06-15Commercial Press QUALIFIED89Ivan Magalhaes
1020Faith E BologniaUnited Kingdom2026-06-15Benton, John B Jr QUALIFIED72Onyama Limba
1021Chavez M BowleyBrazil2026-06-14Chapman, Ross E Esq UNQUALIFIED33Stephen Shaw
1022Salvatore O RulapaughRussia2026-06-12Buckley Miller Wright PROPOSAL78Ioni Bowcher
1023Alejandro M SlusarskiUnited Kingdom2026-06-06Morlong Associates QUALIFIED5Elwin Sharvill
1024Emily M VenereFrance2026-05-29Dorl, James J Esq RENEWAL25Amy Elsner
1025Francesco U VenereArgentina2026-05-22Feiner Bros PROPOSAL52Ioni Bowcher
1026Silvio L OldroydJapan2026-06-05Morlong Associates UNQUALIFIED31Ioni Bowcher
1027Aruna T MacleadCanada2026-05-22Chemel, James L Cpa UNQUALIFIED3Ivan Magalhaes
1028Wickens R ChuiArgentina2026-06-05Feiner Bros NEW8Elwin Sharvill
1029Alejandro J CampainBrazil2026-06-13Chanay, Jeffrey A Esq PROPOSAL7Onyama Limba
1030Aditya D InouyeArgentina2026-05-20Chapman, Ross E Esq RENEWAL76Elwin Sharvill
1031Sinclair Y InouyeBrazil2026-05-21Chanay, Jeffrey A Esq NEW10Asiya Javayant
1032Adams R WhobreyArgentina2026-06-13Printing Dimensions PROPOSAL41Bernardo Dominic
1033Ricardo E GillianItaly2026-05-29Dorl, James J Esq NEW54Onyama Limba
1034Sinclair H InouyeIndia2026-05-17Chemel, James L Cpa UNQUALIFIED23Amy Elsner
1035Costa M ChuiSpain2026-06-04Truhlar And Truhlar Attys PROPOSAL58Ioni Bowcher
1036Juan B ButtBrazil2026-05-27Chanay, Jeffrey A Esq NEW45Stephen Shaw
1037Chavez W RulapaughArgentina2026-06-01Chemel, James L Cpa NEGOTIATION25Asiya Javayant
1038Kaitlin I OldroydSpain2026-06-11Feltz Printing Service NEW72Anna Fali
1039Leon J MaletSpain2026-05-23Rousseaux, Michael Esq NEGOTIATION63Stephen Shaw
1040Smith B MaletUnited Kingdom2026-06-04Buckley Miller Wright QUALIFIED80Amy Elsner
1041Silvio O GillianFrance2026-06-09Truhlar And Truhlar Attys QUALIFIED50Asiya Javayant
1042Francesco D VenereGermany2026-05-22Morlong Associates NEGOTIATION49Elwin Sharvill
1043Juan U DoeUnited Kingdom2026-06-07Buckley Miller Wright RENEWAL14Bernardo Dominic
1044Kadeem L CaudyFrance2026-06-14Feiner Bros NEGOTIATION53Asiya Javayant
1045Juan V RimArgentina2026-06-11Benton, John B Jr UNQUALIFIED45Anna Fali
1046Wickens X MarrierAustralia2026-06-11Dorl, James J Esq QUALIFIED42Bernardo Dominic
1047Aditya Z BriddickAustralia2026-05-22Dorl, James J Esq RENEWAL52Bernardo Dominic
1048Emily Q MaletIndia2026-06-03Feiner Bros NEGOTIATION77Stephen Shaw
1049Julie M MaletSpain2026-06-07Feiner Bros RENEWAL24Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues P MaletFranceOnyama Limba UNQUALIFIED
Sinclair Q RulapaughItalyIoni Bowcher UNQUALIFIED
Arvin N GarufiCanadaOnyama Limba UNQUALIFIED
Jeanfrancois E AmigonFranceAnna Fali NEGOTIATION
Ricardo Y WaycottArgentinaElwin Sharvill NEGOTIATION
Misaki D IturbideAustraliaOnyama Limba UNQUALIFIED
Salvatore G FerenczSpainStephen Shaw QUALIFIED
Tony A MaletGermanyIvan Magalhaes QUALIFIED
Juan D GillianCanadaOnyama Limba PROPOSAL
Isabel Q WieserIndiaAmy Elsner QUALIFIED
Arvin B KolmetzSpainAmy Elsner NEGOTIATION
Aruna P InouyeFranceStephen Shaw QUALIFIED
Misaki X NestleGermanyAnna Fali RENEWAL
James P GlickSpainStephen Shaw QUALIFIED
Cody T MaletArgentinaIvan Magalhaes NEGOTIATION
Juan U GlickUnited KingdomBernardo Dominic PROPOSAL
Isabel O RutaIndiaAmy Elsner UNQUALIFIED
Munro R ButtRussiaAnna Fali NEGOTIATION
Tony D SlusarskiArgentinaBernardo Dominic RENEWAL
Jones L WaycottItalyOnyama Limba NEW
Stacey R GarufiGermanyIoni Bowcher NEGOTIATION
Darci E BowleyItalyIoni Bowcher NEW
Izzy L IturbideAustraliaIvan Magalhaes NEGOTIATION
Izzy I AlbaresAustraliaIvan Magalhaes QUALIFIED
Maisha R CaldareraItalyIoni Bowcher NEW
Mujtaba P RutaGermanyIoni Bowcher QUALIFIED
Maisha C DarakjyRussiaStephen Shaw NEGOTIATION
Mujtaba S KolmetzJapanIvan Magalhaes PROPOSAL
Greenwood T FollerUnited KingdomStephen Shaw UNQUALIFIED
Alejandro B FollerBrazilElwin Sharvill PROPOSAL
Arvin S GauchoIndiaAmy Elsner RENEWAL
Aditya P PoquetteSpainAsiya Javayant UNQUALIFIED
Johnson K GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Faith N ShinkoUnited KingdomAsiya Javayant UNQUALIFIED
Greenwood C GarufiGermanyAnna Fali PROPOSAL
Stacey D BriddickCanadaAnna Fali QUALIFIED
Mujtaba M OstroskyArgentinaAmy Elsner UNQUALIFIED
Aika D AlbaresFranceBernardo Dominic QUALIFIED
Maisha P TollnerBrazilIoni Bowcher PROPOSAL
Aika N GauchoRussiaIvan Magalhaes RENEWAL
Jones I RulapaughArgentinaOnyama Limba NEGOTIATION
Emily O GauchoSpainStephen Shaw UNQUALIFIED
Misaki V SchemmerFranceStephen Shaw PROPOSAL
Deepesh G AmigonItalyBernardo Dominic QUALIFIED
Ivar K PerinAustraliaAnna Fali PROPOSAL
Murillo S BowleyItalyIvan Magalhaes NEGOTIATION
Murillo R CampainRussiaAnna Fali RENEWAL
Kaitlin E DarakjyItalyXuxue Feng NEW
Claire H ButtItalyAsiya Javayant NEW
Jefferson T TollnerSpainAnna Fali UNQUALIFIED
Frozen Columns
Name
Wickens X Stenseth
Mayumi N Chui
Mujtaba P Briddick
Jeanfrancois J Doe
Mayumi R Inouye
Ivar F Tollner
Ashley C Darakjy
Stacey H Saylors
Jeanfrancois X Rim
Faith C Caldarera
Deepesh P Ostrosky
Sinclair Q Garufi
Kaitlin P Ruta
Emily Q Gillian
Adams W Glick
Maisha B Tollner
Claire U Maclead
Kaitlin G Ostrosky
James J Figeroa
Misaki I Malet
Aditya H Malet
Claire M Slusarski
Mayumi T Dilliard
Sinclair E Butt
Cody J Schemmer
Silvio E Kusko
Morrow W Briddick
Maria G Waycott
James S Maclead
Emily F Glick
James W Waycott
Alejandro F Tollner
Nicolas L Rim
Rodrigues I Stenseth
Misaki I Briddick
Salvatore C Butt
Alejandro P Glick
Arvin H Stockham
Sinclair N Caldarera
Leon G Doe
Smith W Ferencz
Deepesh E Flosi
Ashley O Bolognia
Morrow B Slusarski
Jennifer S Glick
Ivar B Malet
Costa W Stockham
Antonio W Wieser
Julie O Ostrosky
Faith N Foller
IdCountryDate
1000Japan2026-05-17
1001Canada2026-05-17
1002Canada2026-06-15
1003Brazil2026-05-24
1004Canada2026-06-12
1005Brazil2026-05-25
1006Italy2026-06-12
1007India2026-05-29
1008India2026-06-08
1009Australia2026-06-11
1010Japan2026-06-06
1011Brazil2026-05-30
1012Germany2026-05-24
1013Brazil2026-06-08
1014Germany2026-05-29
1015United Kingdom2026-06-01
1016Canada2026-06-15
1017Canada2026-05-24
1018Brazil2026-06-01
1019India2026-06-10
1020Argentina2026-06-08
1021Russia2026-05-19
1022Japan2026-05-28
1023France2026-06-09
1024Argentina2026-05-24
1025Argentina2026-06-07
1026Brazil2026-06-02
1027Japan2026-05-17
1028Argentina2026-05-19
1029Germany2026-06-02
1030Canada2026-05-31
1031India2026-05-23
1032Spain2026-06-04
1033Brazil2026-06-13
1034Spain2026-06-02
1035Russia2026-05-27
1036Canada2026-06-09
1037Russia2026-05-26
1038France2026-05-27
1039France2026-05-25
1040Argentina2026-05-26
1041Russia2026-05-23
1042Canada2026-05-27
1043Argentina2026-05-20
1044Italy2026-06-02
1045Brazil2026-06-01
1046India2026-05-30
1047India2026-06-12
1048Brazil2026-05-18
1049Germany2026-06-09

On-Demand Data

NameIdCountryDate
Jennifer V Dilliard1000United Kingdom2026-06-15
Rodrigues W Saylors1001Canada2026-06-05
Arvin Q Venere1002Australia2026-05-26
Leja R Inouye1003Canada2026-05-19
Nicolas R Malet1004Australia2026-05-24
Deepesh L Darakjy1005Australia2026-05-29
Cody S Oldroyd1006France2026-05-31
Misaki U Venere1007Spain2026-05-17
Murillo F Shinko1008Argentina2026-05-28
Munro V Albares1009Brazil2026-05-22
Clifford Q Bowley1010Japan2026-05-19
Alejandro L Schemmer1011Japan2026-06-12
Johnson C Doe1012Japan2026-06-07
Tony K Morasca1013Canada2026-05-30
Salvatore F Bolognia1014France2026-05-25
Stacey S Briddick1015Italy2026-06-11
Murillo R Dilliard1016France2026-05-17
Murillo Q Amigon1017Italy2026-06-14
Cody S Morasca1018Japan2026-05-19
Munro Q Venere1019Germany2026-06-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya I PerinFranceIvan Magalhaes RENEWAL
Murillo C BowleyRussiaAsiya Javayant UNQUALIFIED
Johnson O CaldareraAustraliaElwin Sharvill NEW
Jeanfrancois L DilliardBrazilAsiya Javayant PROPOSAL
Ivar N StensethFranceStephen Shaw QUALIFIED
Stacey V RutaArgentinaOnyama Limba RENEWAL
Juan O VocelkaUnited KingdomElwin Sharvill NEW
Tony N CaudyIndiaStephen Shaw RENEWAL
Nicolas E SchemmerUnited KingdomIvan Magalhaes PROPOSAL
Chavez U AlbaresArgentinaAsiya Javayant UNQUALIFIED
Kaitlin B GillianItalyIvan Magalhaes NEW
Jennifer V BowleySpainIoni Bowcher NEW
Faith U CaldareraUnited KingdomIoni Bowcher NEW
James S SergiFranceAnna Fali NEGOTIATION
Cody L SlusarskiUnited KingdomAsiya Javayant NEGOTIATION
Clifford A BowleyIndiaIoni Bowcher NEW
Jennifer O BologniaIndiaBernardo Dominic PROPOSAL
Nicolas N PerinIndiaXuxue Feng NEGOTIATION
Aika G ShinkoUnited KingdomAsiya Javayant NEW
Rodrigues F BowleyGermanyXuxue Feng NEW
Leja R RutaGermanyElwin Sharvill NEW
Murillo N DilliardItalyBernardo Dominic QUALIFIED
Cody B ButtUnited KingdomIoni Bowcher NEW
Munro X WieserIndiaElwin Sharvill NEGOTIATION
Ivar H InouyeJapanAsiya Javayant QUALIFIED
Stacey E GarufiCanadaOnyama Limba UNQUALIFIED
Aruna H InouyeUnited KingdomOnyama Limba PROPOSAL
Emily P FollerSpainAmy Elsner QUALIFIED
Mayumi R KolmetzAustraliaAmy Elsner QUALIFIED
Ricardo W SlusarskiAustraliaAnna Fali NEW
Jefferson W GlickArgentinaAnna Fali PROPOSAL
Silvio K MaletRussiaElwin Sharvill QUALIFIED
Leon R CampainUnited KingdomStephen Shaw UNQUALIFIED
Munro B MorascaFranceAnna Fali UNQUALIFIED
Jeanfrancois V GlickArgentinaAnna Fali PROPOSAL
Aditya T WaycottFranceIoni Bowcher NEW
Ricardo M PaprockiCanadaBernardo Dominic PROPOSAL
Munro F BriddickAustraliaOnyama Limba UNQUALIFIED
Jeanfrancois Z DilliardGermanyIoni Bowcher NEW
Murillo U KuskoIndiaAmy Elsner 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.