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
Julie Y ChuiFranceIvan Magalhaes PROPOSAL
Kadeem S BologniaAustraliaIvan Magalhaes UNQUALIFIED
Clifford X WhobreyJapanStephen Shaw NEW
Faith S MaletItalyIoni Bowcher RENEWAL
Morrow D FigeroaCanadaAmy Elsner NEGOTIATION
Isabel N NickaCanadaIvan Magalhaes UNQUALIFIED
James E ShinkoArgentinaAnna Fali NEGOTIATION
Claire B DarakjyIndiaXuxue Feng PROPOSAL
Juan Q OstroskyRussiaBernardo Dominic NEGOTIATION
Salvatore M SergiArgentinaBernardo Dominic NEW
Claire Q FollerUnited KingdomOnyama Limba NEGOTIATION
Costa R MacleadArgentinaStephen Shaw NEGOTIATION
Chavez S MaletIndiaBernardo Dominic RENEWAL
Sinclair Z PoquetteRussiaIvan Magalhaes NEW
Antonio M VocelkaCanadaAmy Elsner NEW
Kaitlin K BowleySpainOnyama Limba UNQUALIFIED
Costa X VocelkaFranceIvan Magalhaes PROPOSAL
Julie D SchemmerAustraliaBernardo Dominic NEGOTIATION
Juan X IturbideRussiaElwin Sharvill QUALIFIED
Clifford J NickaArgentinaElwin Sharvill PROPOSAL
Izzy J DilliardAustraliaBernardo Dominic UNQUALIFIED
Ivar F CampainSpainIvan Magalhaes NEGOTIATION
Ricardo X NickaFranceAmy Elsner NEW
Juan O GarufiIndiaStephen Shaw NEW
Maria A BriddickBrazilAnna Fali UNQUALIFIED
Izzy M BologniaItalyBernardo Dominic NEW
Antonio R ButtCanadaStephen Shaw QUALIFIED
Aditya Y WhobreyCanadaOnyama Limba QUALIFIED
Morrow S IturbideArgentinaAmy Elsner NEGOTIATION
Kadeem Q ButtGermanyIvan Magalhaes PROPOSAL
Rodrigues R CaudyGermanyAnna Fali QUALIFIED
Smith P KolmetzGermanyIvan Magalhaes PROPOSAL
Alejandro U DarakjyCanadaStephen Shaw PROPOSAL
Adams U FigeroaRussiaXuxue Feng NEW
Leja B GarufiJapanStephen Shaw NEGOTIATION
Tony G PaprockiSpainIvan Magalhaes NEGOTIATION
Stacey Y MaletArgentinaStephen Shaw NEGOTIATION
Maria V FlosiUnited KingdomElwin Sharvill QUALIFIED
Johnson W NestleAustraliaAmy Elsner PROPOSAL
Salvatore L RutaIndiaOnyama Limba QUALIFIED
Maisha Q SchemmerRussiaStephen Shaw PROPOSAL
Maisha Q MaletFranceIvan Magalhaes RENEWAL
Mujtaba V RulapaughAustraliaOnyama Limba NEW
Jefferson V ShinkoUnited KingdomAsiya Javayant NEGOTIATION
Leja V KuskoArgentinaAmy Elsner NEW
Misaki I MorascaFranceBernardo Dominic UNQUALIFIED
Adams B ShinkoJapanAsiya Javayant NEGOTIATION
Aditya S RimAustraliaBernardo Dominic NEGOTIATION
Sinclair I TollnerItalyAnna Fali PROPOSAL
Jeanfrancois N TollnerItalyOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Emily M FerenczUnited KingdomIoni Bowcher NEW
Ivar T InouyeBrazilOnyama Limba UNQUALIFIED
Wickens P BowleyRussiaAsiya Javayant NEW
Misaki V MarrierArgentinaBernardo Dominic UNQUALIFIED
Tony T VocelkaFranceIoni Bowcher UNQUALIFIED
Deepesh V KolmetzSpainAnna Fali PROPOSAL
Darci A KuskoJapanIoni Bowcher PROPOSAL
Juan Q IturbideItalyIoni Bowcher QUALIFIED
Nicolas E PerinUnited KingdomIvan Magalhaes PROPOSAL
Aruna T VocelkaIndiaAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair J RulapaughArgentina2026-06-06King, Christopher A Esq QUALIFIED41Asiya Javayant
1001Leja W ButtAustralia2026-06-03Feltz Printing Service NEGOTIATION46Anna Fali
1002Cody U FigeroaRussia2026-06-14Truhlar And Truhlar Attys NEGOTIATION76Stephen Shaw
1003Stacey P VenereBrazil2026-06-04Chapman, Ross E Esq PROPOSAL86Amy Elsner
1004Emily P BowleyBrazil2026-05-27Rangoni Of Florence PROPOSAL44Asiya Javayant
1005Costa O FollerGermany2026-06-17Chemel, James L Cpa QUALIFIED14Elwin Sharvill
1006Jefferson N GlickRussia2026-06-04Buckley Miller Wright NEGOTIATION22Asiya Javayant
1007Julie Q OstroskyItaly2026-06-04Rousseaux, Michael Esq NEW43Amy Elsner
1008Wickens J DoeFrance2026-05-27Chanay, Jeffrey A Esq NEW57Elwin Sharvill
1009Munro Q BowleyIndia2026-05-31Buckley Miller Wright UNQUALIFIED24Anna Fali
1010Francesco A WieserIndia2026-06-06Buckley Miller Wright RENEWAL95Bernardo Dominic
1011Alejandro E StockhamUnited Kingdom2026-06-09Chapman, Ross E Esq QUALIFIED15Onyama Limba
1012Silvio W SchemmerJapan2026-06-17Morlong Associates QUALIFIED98Elwin Sharvill
1013Deepesh G VenereFrance2026-05-27Rousseaux, Michael Esq QUALIFIED95Amy Elsner
1014Rodrigues U WieserBrazil2026-06-01Rousseaux, Michael Esq QUALIFIED17Elwin Sharvill
1015Aika J InouyeBrazil2026-05-26Chemel, James L Cpa UNQUALIFIED73Bernardo Dominic
1016Clifford T PaprockiGermany2026-06-03Chapman, Ross E Esq NEGOTIATION87Ivan Magalhaes
1017Octavia H FlosiSpain2026-06-08Commercial Press NEGOTIATION50Asiya Javayant
1018Ivar G MorascaSpain2026-05-30Truhlar And Truhlar Attys PROPOSAL52Xuxue Feng
1019James D NestleCanada2026-06-07Buckley Miller Wright NEW72Onyama Limba
1020Rodrigues I VenereArgentina2026-05-23Benton, John B Jr UNQUALIFIED18Elwin Sharvill
1021Adams N FigeroaSpain2026-06-18Chanay, Jeffrey A Esq NEGOTIATION98Anna Fali
1022Misaki O RulapaughBrazil2026-06-05Printing Dimensions UNQUALIFIED53Stephen Shaw
1023Clifford K SaylorsCanada2026-06-04Feltz Printing Service QUALIFIED79Ioni Bowcher
1024Jones N VocelkaArgentina2026-05-25Dorl, James J Esq UNQUALIFIED40Elwin Sharvill
1025Maria H ButtAustralia2026-06-12King, Christopher A Esq RENEWAL83Asiya Javayant
1026Munro W KuskoArgentina2026-05-26Rousseaux, Michael Esq QUALIFIED40Asiya Javayant
1027Costa I RutaBrazil2026-06-16Benton, John B Jr UNQUALIFIED52Bernardo Dominic
1028Nicolas T AlbaresIndia2026-06-09Rousseaux, Michael Esq NEGOTIATION21Ioni Bowcher
1029Aruna K MacleadBrazil2026-06-06Rangoni Of Florence NEGOTIATION14Anna Fali
1030Ivar F DoeUnited Kingdom2026-06-10Commercial Press NEW22Ivan Magalhaes
1031Jennifer S MaletIndia2026-06-01Buckley Miller Wright NEGOTIATION43Ioni Bowcher
1032Emily U GillianItaly2026-06-01Buckley Miller Wright RENEWAL75Elwin Sharvill
1033Jefferson V TollnerCanada2026-06-16King, Christopher A Esq QUALIFIED56Bernardo Dominic
1034Ivar Q OldroydJapan2026-06-11Morlong Associates PROPOSAL15Onyama Limba
1035Sinclair J SchemmerArgentina2026-06-03Benton, John B Jr UNQUALIFIED14Bernardo Dominic
1036Izzy W MaletFrance2026-05-30Chanay, Jeffrey A Esq NEGOTIATION1Elwin Sharvill
1037David S IturbideItaly2026-05-24Buckley Miller Wright NEW75Asiya Javayant
1038Jennifer X FlosiArgentina2026-06-02Buckley Miller Wright PROPOSAL13Elwin Sharvill
1039Francesco H BologniaFrance2026-06-04Rousseaux, Michael Esq UNQUALIFIED6Elwin Sharvill
1040Johnson Z BriddickSpain2026-06-08Rangoni Of Florence NEGOTIATION91Asiya Javayant
1041Adams T MorascaCanada2026-05-24Feltz Printing Service NEGOTIATION68Elwin Sharvill
1042Aditya R VenereRussia2026-06-04Chemel, James L Cpa NEW56Xuxue Feng
1043Aruna L StensethItaly2026-06-01Truhlar And Truhlar Attys RENEWAL20Ivan Magalhaes
1044Misaki G MacleadSpain2026-06-02Chemel, James L Cpa RENEWAL99Asiya Javayant
1045Juan R AmigonIndia2026-06-11Rangoni Of Florence RENEWAL36Asiya Javayant
1046Sinclair F PaprockiIndia2026-06-15Printing Dimensions PROPOSAL56Bernardo Dominic
1047Jeanfrancois J KuskoFrance2026-06-08King, Christopher A Esq QUALIFIED41Anna Fali
1048Ricardo W ButtUnited Kingdom2026-06-14Truhlar And Truhlar Attys NEGOTIATION81Onyama Limba
1049Antonio J FollerJapan2026-06-17Chapman, Ross E Esq NEW29Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba T MorascaRussiaOnyama Limba RENEWAL
Jefferson T CaudyJapanOnyama Limba PROPOSAL
Jones T SchemmerGermanyIvan Magalhaes PROPOSAL
Ricardo A WieserRussiaIvan Magalhaes NEGOTIATION
Jones L AmigonArgentinaIvan Magalhaes UNQUALIFIED
Ashley D CaudyJapanElwin Sharvill NEGOTIATION
Stacey S MaletUnited KingdomStephen Shaw QUALIFIED
Maisha B InouyeBrazilAsiya Javayant NEGOTIATION
Faith I FigeroaItalyAsiya Javayant QUALIFIED
Julie B WhobreyFranceAmy Elsner RENEWAL
Ashley E NickaItalyXuxue Feng NEW
Maisha M BologniaRussiaIvan Magalhaes NEW
Johnson G PerinItalyIvan Magalhaes QUALIFIED
Aditya Z BowleyBrazilElwin Sharvill NEGOTIATION
Chavez N KuskoGermanyAnna Fali UNQUALIFIED
Darci Y ChuiIndiaXuxue Feng NEW
David J WhobreyAustraliaElwin Sharvill QUALIFIED
Clifford O OldroydCanadaElwin Sharvill RENEWAL
Greenwood S DoeBrazilAmy Elsner PROPOSAL
Jefferson S RulapaughSpainBernardo Dominic QUALIFIED
Clifford X FollerFranceAsiya Javayant QUALIFIED
Isabel M NickaGermanyXuxue Feng RENEWAL
Deepesh P PerinRussiaAsiya Javayant NEGOTIATION
Misaki N FigeroaAustraliaAmy Elsner NEW
Tony V WieserUnited KingdomAnna Fali NEW
Misaki N KuskoJapanOnyama Limba QUALIFIED
Octavia Y PoquetteJapanAsiya Javayant NEW
Jennifer U NickaIndiaAsiya Javayant RENEWAL
Smith V WaycottAustraliaIoni Bowcher UNQUALIFIED
Salvatore V IturbideItalyElwin Sharvill NEGOTIATION
Julie D DoeIndiaIoni Bowcher NEW
Costa P OldroydArgentinaAmy Elsner NEGOTIATION
Izzy O StensethAustraliaAnna Fali PROPOSAL
Leja P DoeRussiaBernardo Dominic UNQUALIFIED
Aruna R BologniaUnited KingdomElwin Sharvill RENEWAL
Juan E MacleadUnited KingdomIoni Bowcher QUALIFIED
Misaki B KuskoCanadaOnyama Limba NEW
Alejandro N PerinFranceAmy Elsner QUALIFIED
Jennifer K KuskoBrazilAnna Fali NEW
Murillo T BriddickItalyBernardo Dominic QUALIFIED
Wickens D GarufiAustraliaIoni Bowcher PROPOSAL
Claire E PoquetteBrazilBernardo Dominic QUALIFIED
Smith H FerenczGermanyOnyama Limba UNQUALIFIED
Munro Q NestleJapanIvan Magalhaes NEGOTIATION
Tony C GarufiFranceIoni Bowcher NEW
Octavia N WaycottBrazilOnyama Limba QUALIFIED
Ricardo G MacleadRussiaStephen Shaw RENEWAL
Octavia T KolmetzAustraliaElwin Sharvill PROPOSAL
Emily X BologniaItalyStephen Shaw QUALIFIED
Claire L MorascaAustraliaElwin Sharvill PROPOSAL
Frozen Columns
Name
Adams H Doe
Johnson D Darakjy
Jennifer S Doe
Mujtaba N Venere
Jefferson G Doe
Greenwood V Caldarera
Morrow D Royster
Clifford D Gillian
Morrow A Shinko
Arvin U Inouye
Ivar C Caldarera
Smith I Kusko
Julie L Kusko
Aruna C Nicka
Johnson S Schemmer
James R Nestle
Emily H Glick
Clifford A Gaucho
Ivar Z Slusarski
Faith G Dilliard
Aika O Venere
Alejandro P Schemmer
Izzy L Kolmetz
Costa B Chui
Ashley P Butt
Arvin K Inouye
Ricardo F Glick
Claire E Flosi
Smith M Morasca
Johnson G Malet
Mayumi A Iturbide
Costa E Perin
Maria W Perin
Costa F Glick
Isabel J Dilliard
Mujtaba D Malet
Deepesh D Rulapaugh
David B Garufi
Chavez I Iturbide
Nicolas L Vocelka
Misaki I Rulapaugh
Johnson A Butt
Tony Y Nestle
Claire P Ferencz
Francesco I Inouye
Claire T Oldroyd
James Z Rulapaugh
Leja E Nicka
Darci S Figeroa
Johnson O Campain
IdCountryDate
1000France2026-05-22
1001United Kingdom2026-06-02
1002Spain2026-06-09
1003India2026-06-17
1004France2026-05-21
1005India2026-05-23
1006Brazil2026-06-16
1007Argentina2026-06-06
1008Brazil2026-06-04
1009Germany2026-05-26
1010Italy2026-06-05
1011France2026-05-27
1012Brazil2026-05-30
1013Germany2026-05-21
1014United Kingdom2026-06-13
1015Italy2026-05-21
1016Canada2026-06-05
1017Argentina2026-06-14
1018India2026-06-17
1019Canada2026-06-12
1020Brazil2026-06-05
1021Italy2026-06-13
1022Brazil2026-06-07
1023India2026-05-23
1024India2026-06-04
1025Germany2026-06-05
1026Japan2026-05-21
1027Spain2026-05-29
1028United Kingdom2026-05-28
1029Germany2026-05-26
1030France2026-05-31
1031Russia2026-05-25
1032Germany2026-05-28
1033Australia2026-05-31
1034Russia2026-06-12
1035France2026-06-18
1036Russia2026-06-07
1037United Kingdom2026-06-05
1038Australia2026-06-17
1039Canada2026-06-19
1040Japan2026-05-28
1041France2026-06-12
1042Russia2026-06-18
1043United Kingdom2026-05-28
1044Japan2026-06-15
1045Australia2026-06-10
1046India2026-06-06
1047Australia2026-06-16
1048India2026-05-28
1049Germany2026-05-29

On-Demand Data

NameIdCountryDate
Aruna Q Briddick1000Russia2026-06-11
Faith P Vocelka1001Japan2026-06-05
Greenwood D Butt1002Spain2026-06-04
Chavez G Waycott1003Argentina2026-05-23
Morrow L Paprocki1004India2026-06-07
Adams Z Kusko1005Russia2026-06-10
Morrow C Garufi1006Russia2026-06-16
Clifford D Tollner1007Australia2026-06-09
James Y Campain1008Italy2026-05-21
Octavia K Foller1009Germany2026-05-29
Maria S Albares1010Italy2026-05-23
Murillo C Doe1011Japan2026-05-22
Ivar M Amigon1012Brazil2026-06-04
Aditya E Waycott1013Spain2026-06-14
Aika K Caudy1014United Kingdom2026-06-10
Isabel D Flosi1015India2026-05-28
Morrow U Shinko1016Japan2026-05-25
Jefferson Z Iturbide1017Spain2026-06-06
Murillo D Whobrey1018Italy2026-05-23
Jennifer N Albares1019Spain2026-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon Q MaletGermanyIvan Magalhaes NEGOTIATION
David K PoquetteIndiaAmy Elsner RENEWAL
Leja D DoeBrazilIvan Magalhaes NEGOTIATION
Johnson J VocelkaItalyAsiya Javayant UNQUALIFIED
Jones O DoeFranceBernardo Dominic NEW
Leja M SergiJapanAsiya Javayant RENEWAL
Johnson S NestleAustraliaElwin Sharvill PROPOSAL
Faith Q SlusarskiRussiaBernardo Dominic NEW
Jefferson T MaletArgentinaBernardo Dominic PROPOSAL
Darci O VocelkaRussiaAnna Fali NEGOTIATION
Tony I KolmetzFranceOnyama Limba RENEWAL
Ashley B RimUnited KingdomOnyama Limba RENEWAL
Cody L NestleRussiaIvan Magalhaes NEGOTIATION
Francesco M KuskoItalyElwin Sharvill NEW
Jefferson Z TollnerBrazilOnyama Limba RENEWAL
Morrow I MacleadArgentinaStephen Shaw RENEWAL
Mujtaba B CampainCanadaOnyama Limba NEGOTIATION
Alejandro N DarakjyGermanyBernardo Dominic UNQUALIFIED
David F BowleyIndiaAsiya Javayant RENEWAL
Chavez F KolmetzBrazilIoni Bowcher RENEWAL
Ricardo M WieserIndiaOnyama Limba UNQUALIFIED
Chavez U GlickCanadaElwin Sharvill QUALIFIED
Rodrigues J SergiAustraliaBernardo Dominic UNQUALIFIED
Deepesh O BowleyFranceStephen Shaw QUALIFIED
Jeanfrancois G ChuiCanadaElwin Sharvill RENEWAL
Salvatore S StockhamRussiaIoni Bowcher RENEWAL
Wickens Q StensethBrazilStephen Shaw RENEWAL
Ashley J ShinkoAustraliaIvan Magalhaes QUALIFIED
Izzy K CampainCanadaOnyama Limba NEW
Francesco F StockhamRussiaAmy Elsner PROPOSAL
Maisha H StensethAustraliaAsiya Javayant NEW
Kadeem X DoeRussiaAnna Fali NEW
Kadeem N SaylorsIndiaStephen Shaw PROPOSAL
Kadeem T ChuiItalyElwin Sharvill RENEWAL
Darci R VocelkaBrazilXuxue Feng NEGOTIATION
Maria I IturbideJapanAmy Elsner NEGOTIATION
Octavia O DilliardSpainElwin Sharvill NEW
Jones U ButtBrazilOnyama Limba NEW
Isabel H VenereSpainXuxue Feng NEGOTIATION
Jennifer N KuskoUnited KingdomAsiya Javayant 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.