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
Mujtaba T DarakjyItalyBernardo Dominic RENEWAL
Izzy H FollerFranceOnyama Limba PROPOSAL
Silvio P WaycottAustraliaAsiya Javayant NEW
Leja Z SlusarskiBrazilAnna Fali NEGOTIATION
Maria Z CaudyArgentinaAmy Elsner UNQUALIFIED
Octavia S RutaSpainElwin Sharvill UNQUALIFIED
Julie G KuskoIndiaXuxue Feng UNQUALIFIED
Maisha J WaycottSpainIvan Magalhaes NEW
Clifford I VocelkaGermanyElwin Sharvill PROPOSAL
Claire M BriddickArgentinaStephen Shaw NEGOTIATION
Clifford I RimAustraliaAnna Fali QUALIFIED
Maria O FigeroaIndiaAmy Elsner PROPOSAL
Maisha W MaletJapanStephen Shaw RENEWAL
Leja S RutaFranceAmy Elsner RENEWAL
Julie W GarufiIndiaAmy Elsner PROPOSAL
Aruna W RulapaughIndiaXuxue Feng QUALIFIED
Aika N CampainItalyBernardo Dominic QUALIFIED
Deepesh A FollerBrazilAmy Elsner UNQUALIFIED
Tony C BologniaGermanyAsiya Javayant NEW
Jones T ShinkoSpainAsiya Javayant UNQUALIFIED
Octavia J GlickRussiaXuxue Feng QUALIFIED
Juan E FerenczSpainXuxue Feng QUALIFIED
Murillo T InouyeItalyAmy Elsner QUALIFIED
Maria Y MarrierIndiaIvan Magalhaes NEW
Darci S CaudyItalyBernardo Dominic QUALIFIED
Wickens V RoysterJapanAsiya Javayant RENEWAL
Cody S FollerIndiaIvan Magalhaes QUALIFIED
Greenwood C PoquetteGermanyXuxue Feng NEGOTIATION
Juan A ButtBrazilIvan Magalhaes UNQUALIFIED
Deepesh T VocelkaRussiaStephen Shaw UNQUALIFIED
Aruna B InouyeGermanyXuxue Feng QUALIFIED
Adams I GlickItalyXuxue Feng UNQUALIFIED
Leon S WaycottSpainAnna Fali NEGOTIATION
Greenwood P KuskoAustraliaStephen Shaw RENEWAL
Isabel K KuskoSpainAsiya Javayant UNQUALIFIED
Maisha C AlbaresJapanAsiya Javayant RENEWAL
Claire A RulapaughFranceElwin Sharvill UNQUALIFIED
Morrow S CaldareraUnited KingdomAmy Elsner PROPOSAL
Deepesh Q NestleGermanyIoni Bowcher QUALIFIED
Maria L StockhamItalyAnna Fali UNQUALIFIED
David I InouyeAustraliaIvan Magalhaes PROPOSAL
Aika G WaycottArgentinaBernardo Dominic PROPOSAL
Salvatore G MaletSpainIvan Magalhaes RENEWAL
Claire Y StockhamArgentinaAnna Fali RENEWAL
Izzy M MacleadFranceAsiya Javayant NEW
Izzy J InouyeBrazilIoni Bowcher NEW
Aruna K BologniaCanadaAsiya Javayant PROPOSAL
Kadeem M ButtRussiaIvan Magalhaes UNQUALIFIED
Ivar D VocelkaAustraliaOnyama Limba NEGOTIATION
Claire M MaletSpainOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ivar N SergiUnited KingdomBernardo Dominic RENEWAL
Munro K RoysterBrazilElwin Sharvill UNQUALIFIED
Murillo V NestleGermanyIoni Bowcher PROPOSAL
Aruna V RulapaughAustraliaBernardo Dominic NEW
David V WaycottAustraliaXuxue Feng PROPOSAL
Munro P RutaIndiaAmy Elsner NEW
Rodrigues K PerinCanadaAsiya Javayant RENEWAL
Jennifer I VenereBrazilIoni Bowcher RENEWAL
Rodrigues D KuskoArgentinaXuxue Feng UNQUALIFIED
David E NestleRussiaStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David E RulapaughFrance2026-02-21Chanay, Jeffrey A Esq NEGOTIATION70Anna Fali
1001Jennifer L WieserCanada2026-02-23Rangoni Of Florence QUALIFIED9Ivan Magalhaes
1002Julie C KolmetzArgentina2026-03-13Truhlar And Truhlar Attys NEGOTIATION25Anna Fali
1003Juan D SaylorsFrance2026-03-07Rangoni Of Florence NEW66Stephen Shaw
1004Chavez X ButtAustralia2026-03-12Chemel, James L Cpa PROPOSAL15Asiya Javayant
1005Clifford K RimUnited Kingdom2026-03-17Morlong Associates NEW95Asiya Javayant
1006Nicolas J KolmetzAustralia2026-03-05Rousseaux, Michael Esq NEGOTIATION89Bernardo Dominic
1007Arvin T IturbideArgentina2026-03-19Chanay, Jeffrey A Esq PROPOSAL1Xuxue Feng
1008Deepesh L FollerAustralia2026-03-15Chanay, Jeffrey A Esq RENEWAL41Elwin Sharvill
1009Stacey G VenereAustralia2026-03-01Rousseaux, Michael Esq NEW73Asiya Javayant
1010Aditya E CaldareraBrazil2026-03-04Buckley Miller Wright NEGOTIATION52Xuxue Feng
1011David Z GillianGermany2026-03-17Feiner Bros QUALIFIED36Onyama Limba
1012Greenwood A FollerGermany2026-03-04Feltz Printing Service RENEWAL57Ioni Bowcher
1013David Y WieserGermany2026-03-04Feiner Bros PROPOSAL89Bernardo Dominic
1014Claire A DoeJapan2026-03-18Chemel, James L Cpa NEGOTIATION71Ioni Bowcher
1015Greenwood Q StensethGermany2026-03-04Buckley Miller Wright QUALIFIED48Elwin Sharvill
1016Deepesh U DarakjyIndia2026-03-15Truhlar And Truhlar Attys NEW32Ivan Magalhaes
1017David K MorascaJapan2026-03-02Chemel, James L Cpa NEW98Bernardo Dominic
1018Greenwood F VocelkaArgentina2026-03-12Feiner Bros NEGOTIATION40Anna Fali
1019Adams B KolmetzItaly2026-03-07Rangoni Of Florence RENEWAL35Bernardo Dominic
1020Mujtaba Y FlosiJapan2026-02-22Chemel, James L Cpa UNQUALIFIED89Xuxue Feng
1021Darci O FlosiJapan2026-03-19Truhlar And Truhlar Attys NEW47Bernardo Dominic
1022Mayumi S SchemmerArgentina2026-03-19Feltz Printing Service NEW99Amy Elsner
1023Adams G RulapaughIndia2026-03-20Chanay, Jeffrey A Esq QUALIFIED57Stephen Shaw
1024Octavia G SlusarskiIndia2026-03-14Feiner Bros PROPOSAL85Asiya Javayant
1025Kaitlin P KuskoSpain2026-03-07Feltz Printing Service RENEWAL60Xuxue Feng
1026Nicolas L OldroydJapan2026-03-06Morlong Associates RENEWAL12Ivan Magalhaes
1027Arvin A GlickJapan2026-03-12King, Christopher A Esq NEW61Anna Fali
1028Clifford Y NestleIndia2026-02-22Dorl, James J Esq PROPOSAL45Anna Fali
1029Arvin J FigeroaArgentina2026-02-25Printing Dimensions UNQUALIFIED94Stephen Shaw
1030Jennifer Q VenereCanada2026-02-28Rangoni Of Florence RENEWAL61Elwin Sharvill
1031Arvin W SaylorsBrazil2026-03-20King, Christopher A Esq QUALIFIED40Stephen Shaw
1032Maisha X OldroydIndia2026-03-08Feiner Bros NEW18Amy Elsner
1033Munro V FollerFrance2026-03-16Truhlar And Truhlar Attys RENEWAL71Elwin Sharvill
1034Arvin H FollerAustralia2026-03-01Chemel, James L Cpa NEW63Asiya Javayant
1035Alejandro P RutaUnited Kingdom2026-03-05Chapman, Ross E Esq QUALIFIED30Ivan Magalhaes
1036Murillo X PaprockiIndia2026-02-23Dorl, James J Esq NEGOTIATION98Xuxue Feng
1037Emily J ShinkoJapan2026-02-25Feltz Printing Service NEGOTIATION51Anna Fali
1038Maria X WhobreyFrance2026-02-27Printing Dimensions NEGOTIATION16Anna Fali
1039Nicolas K KuskoSpain2026-03-08Feltz Printing Service QUALIFIED58Amy Elsner
1040Greenwood U VenereBrazil2026-02-28King, Christopher A Esq RENEWAL89Bernardo Dominic
1041Morrow W SlusarskiGermany2026-02-26Rousseaux, Michael Esq QUALIFIED54Amy Elsner
1042Costa Q ShinkoSpain2026-02-24Feltz Printing Service PROPOSAL59Bernardo Dominic
1043Kaitlin O RoysterAustralia2026-03-05Dorl, James J Esq QUALIFIED35Xuxue Feng
1044Smith E OldroydFrance2026-03-02Truhlar And Truhlar Attys RENEWAL20Elwin Sharvill
1045Cody N KuskoItaly2026-03-01Commercial Press PROPOSAL87Stephen Shaw
1046Juan C NickaFrance2026-03-09Truhlar And Truhlar Attys NEGOTIATION66Stephen Shaw
1047Jeanfrancois B IturbideFrance2026-02-24Buckley Miller Wright UNQUALIFIED90Xuxue Feng
1048Chavez C GlickJapan2026-02-23Chanay, Jeffrey A Esq NEGOTIATION6Xuxue Feng
1049Deepesh U BowleySpain2026-03-05Feltz Printing Service QUALIFIED79Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Wickens P OldroydArgentinaElwin Sharvill UNQUALIFIED
Julie N KuskoUnited KingdomAnna Fali QUALIFIED
Deepesh C MarrierItalyStephen Shaw UNQUALIFIED
Kaitlin M AlbaresAustraliaBernardo Dominic QUALIFIED
Johnson U GauchoBrazilOnyama Limba QUALIFIED
Johnson G NestleGermanyIvan Magalhaes PROPOSAL
Darci S PerinFranceOnyama Limba NEGOTIATION
Ashley A CampainCanadaIvan Magalhaes NEW
Juan R AlbaresArgentinaAsiya Javayant PROPOSAL
Mujtaba Y SlusarskiUnited KingdomStephen Shaw RENEWAL
Isabel N MorascaAustraliaIoni Bowcher NEW
Munro I FollerSpainIvan Magalhaes PROPOSAL
Morrow G MacleadIndiaStephen Shaw NEW
Clifford J GauchoIndiaOnyama Limba NEW
Sinclair Z CaudyIndiaElwin Sharvill UNQUALIFIED
Smith Z GillianGermanyElwin Sharvill NEGOTIATION
Morrow G CaudyUnited KingdomOnyama Limba NEW
Ashley E PoquetteSpainIvan Magalhaes RENEWAL
Jennifer U SlusarskiBrazilAmy Elsner QUALIFIED
Misaki J FollerJapanAsiya Javayant NEGOTIATION
Jennifer O RimCanadaElwin Sharvill QUALIFIED
Smith H StensethSpainIoni Bowcher NEW
Aruna F CampainItalyIoni Bowcher UNQUALIFIED
Costa M GlickRussiaIoni Bowcher QUALIFIED
Smith Q SergiJapanAnna Fali PROPOSAL
Murillo E GauchoFranceStephen Shaw PROPOSAL
Ashley Z SaylorsBrazilIvan Magalhaes QUALIFIED
Adams C NickaCanadaAmy Elsner RENEWAL
Misaki V KuskoAustraliaAnna Fali NEGOTIATION
Salvatore J StockhamRussiaAsiya Javayant NEGOTIATION
Nicolas F ChuiCanadaBernardo Dominic UNQUALIFIED
Sinclair M ShinkoSpainAsiya Javayant NEW
Kadeem L RulapaughFranceBernardo Dominic NEGOTIATION
Leja S WieserItalyIvan Magalhaes PROPOSAL
Leon W GillianItalyOnyama Limba PROPOSAL
Darci C BologniaCanadaAsiya Javayant UNQUALIFIED
Ashley D ButtCanadaIoni Bowcher UNQUALIFIED
Aika T CaldareraFranceAnna Fali NEW
Claire M WaycottFranceIoni Bowcher PROPOSAL
Darci H KolmetzSpainOnyama Limba NEW
Greenwood X SergiJapanXuxue Feng NEW
Leja V MorascaCanadaXuxue Feng NEW
Emily S OldroydFranceStephen Shaw NEW
Aditya B RoysterAustraliaXuxue Feng UNQUALIFIED
Munro Z SergiUnited KingdomOnyama Limba NEGOTIATION
Greenwood Q BowleySpainAsiya Javayant NEW
Juan X MorascaRussiaStephen Shaw UNQUALIFIED
Salvatore C ChuiJapanIvan Magalhaes RENEWAL
Costa I WaycottCanadaAsiya Javayant PROPOSAL
Chavez T NestleIndiaIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Isabel G Poquette
Antonio C Gaucho
Clifford K Doe
Kaitlin F Malet
Antonio Z Slusarski
Aditya Q Stockham
Nicolas T Campain
Francesco U Kolmetz
Octavia F Darakjy
Jones K Nestle
Emily P Iturbide
Tony F Poquette
Salvatore O Amigon
Aika H Kolmetz
Costa H Briddick
Nicolas L Malet
Nicolas E Whobrey
Jones I Venere
Isabel U Oldroyd
Kaitlin Q Rim
Kaitlin H Saylors
Octavia D Doe
Greenwood F Morasca
David I Royster
Sinclair E Doe
Jeanfrancois Y Perin
Aditya I Oldroyd
Arvin F Campain
Costa A Tollner
Adams A Ferencz
Arvin K Nestle
Adams I Nicka
Stacey N Perin
Aruna W Morasca
Kadeem T Darakjy
Munro W Gaucho
Claire F Whobrey
Kadeem I Gaucho
Chavez X Whobrey
Morrow U Nicka
Costa H Stenseth
Tony W Saylors
Ashley T Kusko
Aika O Butt
Wickens B Schemmer
James L Garufi
Maria T Nestle
Octavia B Sergi
Mayumi B Briddick
Kadeem S Caldarera
IdCountryDate
1000Canada2026-03-12
1001India2026-03-08
1002France2026-03-11
1003Spain2026-03-12
1004Brazil2026-03-08
1005France2026-03-03
1006Italy2026-03-08
1007France2026-03-12
1008Canada2026-02-23
1009Germany2026-03-01
1010Canada2026-03-14
1011Japan2026-02-28
1012Japan2026-03-14
1013France2026-02-23
1014Canada2026-03-21
1015Brazil2026-03-12
1016Canada2026-03-02
1017India2026-02-20
1018Brazil2026-03-17
1019Argentina2026-02-20
1020India2026-03-12
1021United Kingdom2026-02-26
1022Argentina2026-02-23
1023Japan2026-02-22
1024Australia2026-03-17
1025Japan2026-03-01
1026France2026-03-01
1027Brazil2026-03-05
1028United Kingdom2026-02-25
1029Australia2026-03-20
1030Argentina2026-02-26
1031Spain2026-02-21
1032Canada2026-03-05
1033India2026-03-21
1034Canada2026-02-22
1035Germany2026-03-14
1036France2026-02-24
1037United Kingdom2026-03-06
1038Japan2026-02-21
1039Germany2026-03-16
1040Brazil2026-02-22
1041Japan2026-02-24
1042Germany2026-03-12
1043France2026-03-08
1044Argentina2026-03-09
1045Australia2026-03-17
1046Australia2026-03-02
1047United Kingdom2026-03-11
1048Spain2026-03-11
1049Germany2026-03-03

On-Demand Data

NameIdCountryDate
Octavia F Figeroa1000Italy2026-02-22
Greenwood F Ostrosky1001United Kingdom2026-02-20
Octavia D Schemmer1002Spain2026-03-14
Munro Y Whobrey1003Italy2026-03-12
Misaki G Marrier1004Russia2026-03-06
Jefferson X Schemmer1005Australia2026-03-07
Emily M Shinko1006Spain2026-03-13
Juan V Caudy1007Germany2026-03-12
Cody Y Tollner1008Italy2026-03-11
Arvin J Sergi1009Russia2026-03-04
Emily K Caudy1010Germany2026-03-15
Emily A Kusko1011Argentina2026-03-06
Kaitlin U Malet1012Brazil2026-03-08
Darci U Maclead1013Italy2026-03-03
James H Marrier1014Australia2026-03-10
Costa I Caudy1015Spain2026-03-06
Francesco N Dilliard1016Brazil2026-02-25
Wickens P Amigon1017Japan2026-03-18
Chavez H Whobrey1018Italy2026-03-10
Silvio B Nestle1019United Kingdom2026-02-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan Y OldroydAustraliaOnyama Limba NEW
Cody S KuskoSpainXuxue Feng UNQUALIFIED
James R FerenczBrazilBernardo Dominic PROPOSAL
Rodrigues R BowleyArgentinaBernardo Dominic RENEWAL
Cody A OstroskyAustraliaXuxue Feng RENEWAL
Octavia U MaletIndiaBernardo Dominic RENEWAL
Claire L KuskoArgentinaOnyama Limba NEW
Murillo R StockhamGermanyAmy Elsner QUALIFIED
Cody L KuskoGermanyBernardo Dominic RENEWAL
Claire C GauchoAustraliaIoni Bowcher UNQUALIFIED
Emily K AmigonItalyAmy Elsner QUALIFIED
Silvio Z ShinkoRussiaAsiya Javayant NEW
Morrow Y GauchoAustraliaAsiya Javayant NEGOTIATION
Alejandro T GarufiBrazilElwin Sharvill PROPOSAL
Alejandro P IturbideBrazilElwin Sharvill NEGOTIATION
Morrow Z GillianItalyAnna Fali PROPOSAL
Julie B NickaJapanIoni Bowcher NEGOTIATION
Greenwood L RulapaughAustraliaStephen Shaw PROPOSAL
Ivar J CaudyJapanIoni Bowcher UNQUALIFIED
Jennifer D GauchoUnited KingdomXuxue Feng NEW
Jefferson U TollnerGermanyElwin Sharvill UNQUALIFIED
Tony K MacleadArgentinaAsiya Javayant QUALIFIED
Alejandro N VocelkaGermanyElwin Sharvill QUALIFIED
Deepesh L PerinBrazilAsiya Javayant UNQUALIFIED
Octavia A GarufiArgentinaStephen Shaw QUALIFIED
Clifford V WieserRussiaAnna Fali PROPOSAL
Munro O SergiItalyStephen Shaw NEW
Clifford W DoeFranceBernardo Dominic NEGOTIATION
Salvatore A MaletGermanyElwin Sharvill PROPOSAL
Aika F FerenczCanadaAsiya Javayant NEW
Salvatore W GlickSpainIoni Bowcher UNQUALIFIED
Isabel P MaletCanadaIvan Magalhaes NEW
Aika W OldroydArgentinaStephen Shaw UNQUALIFIED
Aika D MaletIndiaBernardo Dominic UNQUALIFIED
Silvio E ButtCanadaStephen Shaw RENEWAL
Mujtaba L WhobreyGermanyAnna Fali RENEWAL
Darci R FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Johnson B CaudyAustraliaXuxue Feng NEW
Ashley I DoeGermanyElwin Sharvill NEGOTIATION
Mujtaba T FerenczRussiaIoni Bowcher 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.