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
Salvatore W SergiBrazilXuxue Feng NEW
Maria W DoeFranceAnna Fali RENEWAL
Francesco Q MacleadJapanIvan Magalhaes PROPOSAL
Costa S OldroydIndiaAsiya Javayant RENEWAL
Aditya N FigeroaRussiaAsiya Javayant QUALIFIED
Aditya R WaycottCanadaAnna Fali RENEWAL
Aruna B FollerArgentinaStephen Shaw PROPOSAL
Ashley L StockhamCanadaXuxue Feng PROPOSAL
Cody O RoysterRussiaIoni Bowcher QUALIFIED
Antonio L BowleyItalyAsiya Javayant NEGOTIATION
Deepesh A MarrierJapanAsiya Javayant NEW
Tony M GillianSpainOnyama Limba NEGOTIATION
Nicolas V MacleadCanadaElwin Sharvill NEGOTIATION
Francesco B RimArgentinaStephen Shaw NEW
Mayumi H NestleGermanyOnyama Limba QUALIFIED
Morrow U ChuiSpainBernardo Dominic UNQUALIFIED
Ricardo A VenereJapanStephen Shaw UNQUALIFIED
Leon V MaletFranceAsiya Javayant NEW
Maisha X IturbideAustraliaBernardo Dominic NEGOTIATION
Arvin J RimCanadaElwin Sharvill QUALIFIED
Mayumi B CaudyBrazilBernardo Dominic PROPOSAL
Tony S RoysterItalyAsiya Javayant PROPOSAL
Deepesh W ButtRussiaAmy Elsner PROPOSAL
Jones S StockhamJapanIvan Magalhaes NEW
Francesco Q CaudyCanadaBernardo Dominic RENEWAL
Salvatore A KuskoGermanyIvan Magalhaes NEGOTIATION
Leon U NestleSpainIoni Bowcher NEW
Salvatore E AlbaresFranceAnna Fali RENEWAL
Silvio M GarufiGermanyAsiya Javayant NEW
Ivar T MaletArgentinaIvan Magalhaes RENEWAL
Rodrigues P GlickGermanyIvan Magalhaes NEGOTIATION
Aditya N BowleyCanadaIvan Magalhaes PROPOSAL
Kaitlin J GillianArgentinaIoni Bowcher RENEWAL
Morrow P NestleBrazilAmy Elsner PROPOSAL
Ivar Y DarakjyJapanIoni Bowcher NEW
Chavez C AlbaresUnited KingdomElwin Sharvill QUALIFIED
Mujtaba K GlickJapanStephen Shaw NEGOTIATION
Octavia R MaletFranceBernardo Dominic RENEWAL
Jeanfrancois M StockhamJapanOnyama Limba NEW
Jefferson F VenereSpainElwin Sharvill NEGOTIATION
Smith T NickaFranceOnyama Limba QUALIFIED
Munro O FigeroaAustraliaStephen Shaw NEW
Rodrigues E NestleItalyAmy Elsner NEGOTIATION
Salvatore M AmigonIndiaElwin Sharvill UNQUALIFIED
Chavez A BriddickJapanAnna Fali RENEWAL
Salvatore I SchemmerAustraliaElwin Sharvill NEW
Aditya Z SchemmerGermanyOnyama Limba QUALIFIED
Mayumi R DilliardUnited KingdomAmy Elsner UNQUALIFIED
Greenwood E OstroskyFranceIoni Bowcher RENEWAL
Sinclair L FlosiUnited KingdomAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Izzy B CaldareraItalyAmy Elsner PROPOSAL
Rodrigues M AmigonCanadaIoni Bowcher NEW
Cody H GillianIndiaStephen Shaw NEGOTIATION
Stacey N BologniaCanadaAmy Elsner NEGOTIATION
Leja U WieserRussiaAmy Elsner PROPOSAL
Morrow Y PaprockiItalyAnna Fali RENEWAL
Juan W WhobreyGermanyAnna Fali QUALIFIED
Deepesh U MaletArgentinaIvan Magalhaes PROPOSAL
Aruna W ButtIndiaStephen Shaw NEGOTIATION
Rodrigues F OstroskySpainIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon J DarakjyRussia2026-05-15Buckley Miller Wright QUALIFIED69Elwin Sharvill
1001Faith W OstroskySpain2026-05-23Truhlar And Truhlar Attys NEW21Ivan Magalhaes
1002Morrow Q CaldareraAustralia2026-05-05Buckley Miller Wright UNQUALIFIED56Asiya Javayant
1003Ivar S BriddickJapan2026-06-03Feiner Bros NEGOTIATION57Onyama Limba
1004Johnson P MarrierCanada2026-05-13Morlong Associates NEGOTIATION5Stephen Shaw
1005Arvin J PaprockiSpain2026-05-16Chapman, Ross E Esq RENEWAL55Elwin Sharvill
1006Mujtaba W RoysterAustralia2026-05-29Rangoni Of Florence QUALIFIED0Asiya Javayant
1007Emily J GlickFrance2026-05-29Chanay, Jeffrey A Esq PROPOSAL30Elwin Sharvill
1008Octavia M SchemmerUnited Kingdom2026-06-03Rousseaux, Michael Esq RENEWAL96Ioni Bowcher
1009Kadeem B MaletSpain2026-05-21Rangoni Of Florence UNQUALIFIED1Onyama Limba
1010Izzy U BologniaArgentina2026-05-06Commercial Press QUALIFIED53Amy Elsner
1011Leja V VocelkaUnited Kingdom2026-05-17Printing Dimensions NEW92Anna Fali
1012Juan I MarrierCanada2026-05-31Feiner Bros NEW27Ioni Bowcher
1013Aika F WaycottCanada2026-06-01King, Christopher A Esq UNQUALIFIED84Asiya Javayant
1014Jeanfrancois R StockhamIndia2026-05-06Rousseaux, Michael Esq RENEWAL50Anna Fali
1015Ivar W GauchoFrance2026-06-02Dorl, James J Esq PROPOSAL98Asiya Javayant
1016Julie T FigeroaIndia2026-05-19Morlong Associates RENEWAL78Onyama Limba
1017Clifford N KuskoAustralia2026-05-12Dorl, James J Esq QUALIFIED55Xuxue Feng
1018Maisha D ButtRussia2026-05-12Chemel, James L Cpa NEGOTIATION54Asiya Javayant
1019Jefferson U KolmetzAustralia2026-05-11Truhlar And Truhlar Attys UNQUALIFIED65Elwin Sharvill
1020Ashley M OldroydItaly2026-05-17Feltz Printing Service QUALIFIED82Bernardo Dominic
1021Clifford W GarufiBrazil2026-05-24Chapman, Ross E Esq NEGOTIATION17Ioni Bowcher
1022Stacey Z RulapaughJapan2026-05-28King, Christopher A Esq NEW14Ivan Magalhaes
1023Jefferson T SchemmerRussia2026-05-22Rangoni Of Florence NEW85Onyama Limba
1024Darci B OldroydAustralia2026-05-07Benton, John B Jr QUALIFIED79Elwin Sharvill
1025Ivar L MacleadFrance2026-05-09Morlong Associates NEW67Elwin Sharvill
1026Rodrigues K AmigonFrance2026-05-30Feltz Printing Service QUALIFIED74Ivan Magalhaes
1027Murillo H AmigonFrance2026-05-19Dorl, James J Esq RENEWAL51Elwin Sharvill
1028Tony K VenereGermany2026-05-31King, Christopher A Esq UNQUALIFIED15Ivan Magalhaes
1029Leon O SergiSpain2026-05-23Commercial Press NEGOTIATION92Xuxue Feng
1030Antonio K ShinkoArgentina2026-05-21Rousseaux, Michael Esq UNQUALIFIED60Xuxue Feng
1031Aruna A KuskoSpain2026-05-21King, Christopher A Esq NEGOTIATION42Xuxue Feng
1032Stacey U RimIndia2026-05-14Printing Dimensions PROPOSAL75Elwin Sharvill
1033Aika G GlickRussia2026-05-30Feltz Printing Service RENEWAL59Ioni Bowcher
1034Silvio P NestleRussia2026-05-20Rangoni Of Florence QUALIFIED81Amy Elsner
1035Kadeem T MarrierSpain2026-05-14Commercial Press NEW68Ioni Bowcher
1036Maria I NestleCanada2026-05-19Benton, John B Jr PROPOSAL5Stephen Shaw
1037Jennifer L RimGermany2026-05-23Truhlar And Truhlar Attys PROPOSAL36Xuxue Feng
1038Aruna D ButtGermany2026-05-18Benton, John B Jr NEW20Asiya Javayant
1039Juan B ShinkoItaly2026-05-26Feiner Bros NEGOTIATION42Amy Elsner
1040Salvatore A PoquetteAustralia2026-05-08Chapman, Ross E Esq NEGOTIATION85Anna Fali
1041Octavia X StockhamFrance2026-05-21Chemel, James L Cpa RENEWAL98Amy Elsner
1042Faith T KolmetzUnited Kingdom2026-05-30Chapman, Ross E Esq QUALIFIED27Amy Elsner
1043Aruna Y DoeGermany2026-05-20Truhlar And Truhlar Attys PROPOSAL48Ioni Bowcher
1044Clifford G NestleRussia2026-05-30Buckley Miller Wright NEGOTIATION66Asiya Javayant
1045Mayumi Q RoysterFrance2026-05-06Truhlar And Truhlar Attys NEGOTIATION50Ioni Bowcher
1046Misaki D KolmetzCanada2026-05-20Buckley Miller Wright NEW28Bernardo Dominic
1047Munro L SlusarskiGermany2026-05-16Printing Dimensions QUALIFIED39Bernardo Dominic
1048Adams G CaudyBrazil2026-05-29Commercial Press RENEWAL55Amy Elsner
1049Julie F WaycottSpain2026-05-11Buckley Miller Wright RENEWAL17Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Octavia C BriddickFranceAsiya Javayant QUALIFIED
Jennifer Z WaycottUnited KingdomOnyama Limba UNQUALIFIED
Wickens L MacleadIndiaBernardo Dominic UNQUALIFIED
Octavia M VocelkaJapanAsiya Javayant UNQUALIFIED
James P CaldareraGermanyBernardo Dominic NEW
Johnson D DoeAustraliaBernardo Dominic QUALIFIED
Mayumi O StockhamSpainXuxue Feng RENEWAL
Izzy N GarufiArgentinaBernardo Dominic PROPOSAL
Johnson R NestleCanadaAnna Fali NEW
Ashley I PoquetteSpainIoni Bowcher NEGOTIATION
Leja H SchemmerRussiaBernardo Dominic NEGOTIATION
Claire X FlosiFranceStephen Shaw NEGOTIATION
Sinclair H IturbideRussiaElwin Sharvill NEGOTIATION
Costa R GlickCanadaAnna Fali RENEWAL
Aika R FerenczItalyXuxue Feng RENEWAL
Ivar N NickaGermanyXuxue Feng RENEWAL
Costa L GlickItalyAsiya Javayant NEGOTIATION
Adams O BologniaRussiaIoni Bowcher UNQUALIFIED
Johnson H GillianArgentinaXuxue Feng NEW
Jeanfrancois O NickaSpainBernardo Dominic RENEWAL
Sinclair X RoysterArgentinaStephen Shaw RENEWAL
Aruna O DilliardJapanAnna Fali RENEWAL
Faith X VenereFranceElwin Sharvill PROPOSAL
Clifford X DarakjyJapanAmy Elsner NEGOTIATION
Tony L VenereArgentinaAmy Elsner PROPOSAL
Izzy U VocelkaIndiaAsiya Javayant NEGOTIATION
Ashley P MarrierIndiaAsiya Javayant PROPOSAL
Juan S NestleAustraliaStephen Shaw NEW
Tony D GillianRussiaStephen Shaw QUALIFIED
Juan V MorascaCanadaBernardo Dominic NEW
Murillo N ShinkoSpainIoni Bowcher PROPOSAL
Murillo H SaylorsUnited KingdomIoni Bowcher NEGOTIATION
Jeanfrancois N StockhamIndiaIvan Magalhaes RENEWAL
Emily C DoeGermanyStephen Shaw NEW
Aika C NestleUnited KingdomAmy Elsner RENEWAL
Wickens H ShinkoGermanyXuxue Feng PROPOSAL
Leon M PaprockiItalyIoni Bowcher UNQUALIFIED
Clifford D MaletIndiaIoni Bowcher NEW
Ashley M IturbideUnited KingdomAnna Fali NEW
Juan M RimBrazilXuxue Feng QUALIFIED
Octavia D PaprockiSpainStephen Shaw NEGOTIATION
Maria R GauchoCanadaAnna Fali PROPOSAL
Jefferson C BriddickArgentinaStephen Shaw UNQUALIFIED
Emily E ButtUnited KingdomOnyama Limba PROPOSAL
Chavez H PoquetteSpainIvan Magalhaes PROPOSAL
Ricardo W RutaGermanyAmy Elsner UNQUALIFIED
Clifford Q MarrierJapanStephen Shaw QUALIFIED
Mayumi J AlbaresJapanIoni Bowcher NEGOTIATION
Jeanfrancois L GillianSpainAmy Elsner NEGOTIATION
Julie W FlosiIndiaElwin Sharvill NEGOTIATION
Frozen Columns
Name
Rodrigues C Iturbide
Maria V Bolognia
Smith K Glick
James D Garufi
Chavez L Maclead
Silvio N Wieser
Ivar M Kolmetz
Tony H Briddick
Mujtaba Y Iturbide
Maisha R Butt
Arvin B Caudy
Mujtaba T Morasca
Claire H Whobrey
Ricardo I Maclead
Morrow H Schemmer
Faith R Whobrey
Jeanfrancois X Sergi
Clifford Z Caldarera
Isabel T Maclead
Silvio E Rulapaugh
Morrow K Schemmer
Juan S Flosi
Izzy S Sergi
Maria L Kusko
Jeanfrancois N Campain
Claire G Inouye
Johnson C Doe
Kadeem V Oldroyd
Smith N Foller
Murillo R Stockham
Deepesh I Caudy
Maria F Marrier
Costa L Royster
Clifford B Dilliard
Darci M Ostrosky
Antonio C Glick
Stacey M Gillian
Emily D Kolmetz
Mayumi O Malet
Chavez Z Oldroyd
Wickens Y Dilliard
Costa Q Wieser
Aika M Royster
Johnson D Caudy
Faith Z Caldarera
Jeanfrancois Z Rim
Smith S Campain
Aruna F Shinko
Aruna H Figeroa
Kaitlin Y Caldarera
IdCountryDate
1000Japan2026-06-03
1001Australia2026-05-18
1002Spain2026-05-09
1003France2026-05-08
1004Japan2026-05-10
1005Germany2026-05-14
1006Argentina2026-06-03
1007United Kingdom2026-05-21
1008Argentina2026-05-29
1009Spain2026-05-21
1010France2026-05-12
1011Canada2026-05-07
1012Australia2026-05-19
1013Russia2026-05-30
1014Japan2026-05-10
1015Australia2026-05-05
1016India2026-05-31
1017Spain2026-05-10
1018Italy2026-05-06
1019Japan2026-05-29
1020Japan2026-05-09
1021Argentina2026-05-16
1022Canada2026-06-03
1023France2026-05-06
1024United Kingdom2026-05-21
1025France2026-05-25
1026India2026-06-01
1027Australia2026-05-22
1028France2026-05-05
1029Japan2026-05-17
1030Brazil2026-06-03
1031Argentina2026-05-23
1032Russia2026-05-09
1033India2026-05-16
1034France2026-05-30
1035United Kingdom2026-05-11
1036Australia2026-05-13
1037Japan2026-05-12
1038Argentina2026-05-15
1039Australia2026-05-12
1040Russia2026-05-11
1041Canada2026-05-16
1042India2026-05-11
1043Japan2026-05-06
1044Italy2026-05-23
1045Spain2026-05-05
1046Spain2026-05-11
1047India2026-05-05
1048Japan2026-05-26
1049Argentina2026-05-15

On-Demand Data

NameIdCountryDate
James U Malet1000Brazil2026-05-20
Stacey I Caudy1001United Kingdom2026-05-30
Smith I Nicka1002Russia2026-05-27
Deepesh B Foller1003United Kingdom2026-06-01
Sinclair V Inouye1004Brazil2026-05-15
Wickens R Waycott1005Canada2026-05-27
Salvatore F Inouye1006Italy2026-05-25
Adams G Bowley1007Germany2026-05-15
Juan G Bolognia1008Canada2026-05-08
Costa G Bowley1009India2026-05-05
Maisha B Garufi1010Japan2026-05-31
Darci E Kolmetz1011United Kingdom2026-05-12
Kadeem R Ostrosky1012Italy2026-06-01
Juan Q Nestle1013Germany2026-05-13
Deepesh C Poquette1014Brazil2026-05-15
Rodrigues Z Bowley1015Spain2026-06-02
Francesco T Inouye1016Australia2026-05-15
Kadeem T Nestle1017Canada2026-05-11
James V Figeroa1018Argentina2026-05-19
Francesco S Slusarski1019United Kingdom2026-05-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair W RimRussiaAmy Elsner NEW
Isabel V MorascaSpainStephen Shaw QUALIFIED
Alejandro C KuskoJapanIoni Bowcher UNQUALIFIED
Johnson G SergiRussiaOnyama Limba NEGOTIATION
Deepesh C GlickGermanyOnyama Limba NEGOTIATION
Ricardo P CaudyAustraliaAnna Fali RENEWAL
Smith Q DoeArgentinaOnyama Limba RENEWAL
Claire S FlosiFranceStephen Shaw QUALIFIED
Juan T GarufiCanadaAnna Fali NEGOTIATION
Mayumi C VocelkaFranceAmy Elsner UNQUALIFIED
David O BriddickAustraliaStephen Shaw NEGOTIATION
Cody B BowleyArgentinaIoni Bowcher QUALIFIED
Silvio H ButtFranceAnna Fali NEGOTIATION
Leja F KolmetzUnited KingdomOnyama Limba NEGOTIATION
Salvatore V AlbaresCanadaOnyama Limba PROPOSAL
Misaki K CaudyAustraliaIvan Magalhaes PROPOSAL
Isabel H SaylorsArgentinaAmy Elsner UNQUALIFIED
Maria L IturbideRussiaAmy Elsner RENEWAL
Aditya L MaletIndiaOnyama Limba PROPOSAL
Murillo M DilliardCanadaStephen Shaw NEW
Isabel F RutaCanadaIvan Magalhaes QUALIFIED
Johnson X FerenczAustraliaStephen Shaw PROPOSAL
Izzy Z FerenczAustraliaBernardo Dominic NEW
Munro I TollnerFranceXuxue Feng RENEWAL
Antonio K MorascaAustraliaAnna Fali NEW
Isabel U ButtIndiaIoni Bowcher NEGOTIATION
Chavez Q DoeSpainStephen Shaw RENEWAL
Maria C PaprockiAustraliaIvan Magalhaes RENEWAL
Aruna H FerenczFranceIoni Bowcher RENEWAL
Adams G RoysterAustraliaAnna Fali NEGOTIATION
Aruna Y GlickArgentinaOnyama Limba NEGOTIATION
Costa R VocelkaSpainIoni Bowcher RENEWAL
David G MacleadUnited KingdomAnna Fali RENEWAL
Silvio B WaycottJapanBernardo Dominic NEW
Aruna K MaletFranceIvan Magalhaes NEGOTIATION
Leja G InouyeUnited KingdomOnyama Limba NEW
James K RoysterFranceXuxue Feng NEW
Salvatore F FlosiUnited KingdomIoni Bowcher NEW
Ashley K RulapaughUnited KingdomXuxue Feng PROPOSAL
Nicolas L BriddickRussiaAnna Fali 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.