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
Tony N KuskoGermanyIoni Bowcher QUALIFIED
Julie S MacleadAustraliaStephen Shaw QUALIFIED
Mujtaba Q NickaArgentinaIoni Bowcher PROPOSAL
Octavia O RutaIndiaAmy Elsner NEW
Francesco V DarakjySpainAsiya Javayant RENEWAL
Chavez H RimIndiaAsiya Javayant PROPOSAL
Greenwood C SergiBrazilXuxue Feng NEW
Claire M KolmetzCanadaAmy Elsner RENEWAL
Aika I PaprockiBrazilXuxue Feng RENEWAL
Antonio T OldroydSpainBernardo Dominic NEW
Antonio Y StensethCanadaXuxue Feng QUALIFIED
Arvin G AmigonArgentinaIoni Bowcher UNQUALIFIED
Nicolas K DoeUnited KingdomAmy Elsner NEGOTIATION
Izzy E NestleCanadaStephen Shaw UNQUALIFIED
Deepesh J VocelkaCanadaOnyama Limba QUALIFIED
Aruna U GauchoBrazilBernardo Dominic QUALIFIED
Silvio H BologniaJapanAsiya Javayant UNQUALIFIED
Salvatore I FigeroaBrazilAmy Elsner UNQUALIFIED
Claire E RimAustraliaAnna Fali NEGOTIATION
Greenwood S RoysterBrazilIvan Magalhaes RENEWAL
Arvin D RoysterItalyAmy Elsner UNQUALIFIED
Morrow P SlusarskiAustraliaIvan Magalhaes NEGOTIATION
Ricardo A ShinkoRussiaElwin Sharvill PROPOSAL
Maisha U GarufiArgentinaElwin Sharvill UNQUALIFIED
Nicolas Q StensethRussiaAnna Fali NEW
Jeanfrancois G InouyeJapanAsiya Javayant QUALIFIED
Jefferson Q ButtJapanXuxue Feng PROPOSAL
Stacey D WieserUnited KingdomXuxue Feng QUALIFIED
Francesco I OldroydItalyStephen Shaw NEGOTIATION
Izzy F InouyeBrazilXuxue Feng NEW
Aruna G PerinIndiaAnna Fali NEGOTIATION
Antonio C PaprockiArgentinaIoni Bowcher NEW
Julie L DilliardUnited KingdomAnna Fali PROPOSAL
Leon V SchemmerItalyIoni Bowcher NEGOTIATION
Costa Y MorascaIndiaAnna Fali RENEWAL
Arvin L PoquetteUnited KingdomAnna Fali UNQUALIFIED
Sinclair V RulapaughRussiaElwin Sharvill NEGOTIATION
Julie W SergiUnited KingdomElwin Sharvill RENEWAL
Aika T GillianItalyAsiya Javayant UNQUALIFIED
Cody P WieserAustraliaAmy Elsner RENEWAL
Rodrigues M FlosiItalyBernardo Dominic RENEWAL
Misaki X MorascaAustraliaIoni Bowcher UNQUALIFIED
Maria D FollerIndiaIoni Bowcher PROPOSAL
Salvatore W MaletRussiaElwin Sharvill NEGOTIATION
Cody I PerinUnited KingdomAnna Fali NEW
Misaki T VenereGermanyAmy Elsner RENEWAL
Johnson Y VenereIndiaStephen Shaw RENEWAL
Cody T TollnerGermanyXuxue Feng UNQUALIFIED
Ivar H MacleadGermanyBernardo Dominic PROPOSAL
Leon M NestleIndiaAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Jefferson U ShinkoFranceElwin Sharvill NEW
Claire A GillianIndiaIvan Magalhaes UNQUALIFIED
Alejandro G FollerAustraliaIvan Magalhaes NEW
Julie K ShinkoCanadaXuxue Feng RENEWAL
Jones X NestleAustraliaAsiya Javayant NEW
Aika L IturbideJapanIvan Magalhaes RENEWAL
Greenwood E FigeroaItalyElwin Sharvill RENEWAL
Ivar C CampainAustraliaIoni Bowcher UNQUALIFIED
Jeanfrancois B ChuiCanadaStephen Shaw NEGOTIATION
Darci W InouyeFranceAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro H MaletJapan2026-05-30Chemel, James L Cpa UNQUALIFIED56Asiya Javayant
1001Smith J MarrierJapan2026-05-27Feiner Bros UNQUALIFIED93Amy Elsner
1002Chavez U GauchoUnited Kingdom2026-05-29Benton, John B Jr PROPOSAL52Onyama Limba
1003Arvin O StensethArgentina2026-05-25Rousseaux, Michael Esq NEW98Asiya Javayant
1004James N MaletFrance2026-05-29Feltz Printing Service NEW60Anna Fali
1005Jeanfrancois H GauchoAustralia2026-06-06Printing Dimensions NEW57Asiya Javayant
1006Johnson A SergiCanada2026-06-06Printing Dimensions UNQUALIFIED81Ioni Bowcher
1007Sinclair E ShinkoFrance2026-06-05Morlong Associates QUALIFIED35Elwin Sharvill
1008Kadeem A ButtSpain2026-06-16Chapman, Ross E Esq UNQUALIFIED17Elwin Sharvill
1009Alejandro N ButtIndia2026-05-29Rousseaux, Michael Esq UNQUALIFIED47Amy Elsner
1010Aruna M InouyeRussia2026-06-17Chapman, Ross E Esq RENEWAL51Xuxue Feng
1011Aditya L FlosiArgentina2026-06-11Printing Dimensions UNQUALIFIED97Ioni Bowcher
1012Ricardo O PerinGermany2026-06-18Truhlar And Truhlar Attys QUALIFIED53Onyama Limba
1013Isabel P MaletItaly2026-06-13King, Christopher A Esq NEGOTIATION60Onyama Limba
1014Morrow C OstroskyUnited Kingdom2026-06-17Commercial Press NEGOTIATION44Elwin Sharvill
1015Emily K InouyeJapan2026-06-19Chemel, James L Cpa NEW41Anna Fali
1016Wickens G StockhamGermany2026-05-31Benton, John B Jr UNQUALIFIED15Ivan Magalhaes
1017Leon A NickaGermany2026-06-02Chemel, James L Cpa QUALIFIED9Ivan Magalhaes
1018Ivar X VocelkaIndia2026-06-01Rousseaux, Michael Esq QUALIFIED1Ivan Magalhaes
1019Costa Q BriddickAustralia2026-05-31Morlong Associates UNQUALIFIED13Ioni Bowcher
1020Smith T WieserSpain2026-05-27Rousseaux, Michael Esq NEGOTIATION22Amy Elsner
1021Salvatore S MarrierFrance2026-06-11Chapman, Ross E Esq UNQUALIFIED57Xuxue Feng
1022Leon I OldroydIndia2026-06-11Feltz Printing Service NEGOTIATION9Elwin Sharvill
1023Mujtaba C NickaUnited Kingdom2026-06-04Feiner Bros NEGOTIATION6Stephen Shaw
1024Leja F CaldareraBrazil2026-05-31Commercial Press NEGOTIATION0Onyama Limba
1025Juan D PaprockiGermany2026-05-26Truhlar And Truhlar Attys QUALIFIED81Ivan Magalhaes
1026Maria S MaletGermany2026-05-31Chanay, Jeffrey A Esq PROPOSAL93Anna Fali
1027Costa O MaletAustralia2026-06-23Printing Dimensions PROPOSAL94Amy Elsner
1028Aditya T FlosiRussia2026-06-09Feiner Bros QUALIFIED46Ivan Magalhaes
1029Mayumi R PerinItaly2026-06-23Chemel, James L Cpa UNQUALIFIED53Xuxue Feng
1030Juan K SlusarskiIndia2026-06-17Printing Dimensions QUALIFIED59Stephen Shaw
1031Claire G BologniaGermany2026-06-06Commercial Press PROPOSAL99Onyama Limba
1032Maria P DoeAustralia2026-06-22Benton, John B Jr UNQUALIFIED16Ioni Bowcher
1033Sinclair H VenereBrazil2026-06-09Chapman, Ross E Esq RENEWAL14Xuxue Feng
1034Rodrigues V FerenczCanada2026-06-11Buckley Miller Wright UNQUALIFIED17Stephen Shaw
1035Salvatore G WieserFrance2026-06-23Dorl, James J Esq QUALIFIED79Asiya Javayant
1036Mayumi A PerinJapan2026-06-03Chemel, James L Cpa RENEWAL55Onyama Limba
1037Sinclair N SergiFrance2026-05-25Feltz Printing Service NEGOTIATION11Onyama Limba
1038Izzy T CampainSpain2026-06-03Chapman, Ross E Esq UNQUALIFIED62Onyama Limba
1039Francesco Y OstroskyGermany2026-06-19Rangoni Of Florence NEW32Ivan Magalhaes
1040Deepesh R OldroydItaly2026-05-30Morlong Associates QUALIFIED13Stephen Shaw
1041Francesco A PaprockiIndia2026-05-31Chanay, Jeffrey A Esq UNQUALIFIED62Anna Fali
1042David M BologniaJapan2026-06-06Commercial Press PROPOSAL18Onyama Limba
1043Chavez Y SergiRussia2026-05-25Dorl, James J Esq UNQUALIFIED74Amy Elsner
1044Jefferson K FigeroaIndia2026-05-30Chemel, James L Cpa UNQUALIFIED87Asiya Javayant
1045Sinclair T WieserRussia2026-06-02Rousseaux, Michael Esq PROPOSAL60Amy Elsner
1046Stacey U MorascaItaly2026-05-26Commercial Press UNQUALIFIED72Elwin Sharvill
1047Izzy T DoeFrance2026-05-29Feiner Bros NEGOTIATION27Bernardo Dominic
1048Mayumi J MaletFrance2026-06-05Morlong Associates NEW85Asiya Javayant
1049Ricardo R WhobreySpain2026-06-04Morlong Associates QUALIFIED71Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Morrow O GarufiIndiaStephen Shaw NEGOTIATION
David L MorascaArgentinaAnna Fali NEW
Mujtaba M MorascaJapanBernardo Dominic UNQUALIFIED
Julie A WhobreyArgentinaElwin Sharvill NEGOTIATION
Ricardo V CaldareraAustraliaXuxue Feng UNQUALIFIED
Alejandro I WaycottAustraliaElwin Sharvill PROPOSAL
Maria N BowleyGermanyIoni Bowcher NEGOTIATION
Ivar Q FollerArgentinaStephen Shaw NEGOTIATION
Misaki N CaldareraUnited KingdomAsiya Javayant QUALIFIED
Silvio Y RimJapanElwin Sharvill RENEWAL
Mujtaba A VenereCanadaStephen Shaw NEW
Francesco H KuskoItalyXuxue Feng NEW
Antonio Y MaletCanadaXuxue Feng NEGOTIATION
Nicolas R ButtGermanyOnyama Limba NEGOTIATION
Nicolas C FigeroaRussiaIoni Bowcher RENEWAL
Francesco I TollnerItalyStephen Shaw RENEWAL
Johnson P MaletCanadaAmy Elsner QUALIFIED
Stacey H MaletIndiaXuxue Feng NEW
Leon F IturbideArgentinaIoni Bowcher NEGOTIATION
David C MaletSpainElwin Sharvill RENEWAL
Ashley Y WaycottGermanyAnna Fali NEW
Chavez Q FigeroaIndiaIvan Magalhaes QUALIFIED
Jefferson W FlosiRussiaAnna Fali UNQUALIFIED
Murillo H VenereCanadaOnyama Limba PROPOSAL
Ashley N BowleyBrazilStephen Shaw NEW
Ivar Y DilliardGermanyStephen Shaw RENEWAL
Faith A RutaJapanBernardo Dominic UNQUALIFIED
Aika F MorascaArgentinaBernardo Dominic UNQUALIFIED
Antonio E NestleAustraliaStephen Shaw UNQUALIFIED
Jefferson T GauchoIndiaXuxue Feng UNQUALIFIED
Tony B ShinkoAustraliaIvan Magalhaes NEW
Stacey M TollnerArgentinaAsiya Javayant NEW
Tony Y AlbaresJapanXuxue Feng NEGOTIATION
Jennifer F WaycottItalyElwin Sharvill QUALIFIED
Aditya C GlickItalyAsiya Javayant NEGOTIATION
Leja R TollnerIndiaIvan Magalhaes PROPOSAL
Munro G IturbideArgentinaAsiya Javayant UNQUALIFIED
Sinclair N SergiArgentinaAmy Elsner UNQUALIFIED
Aruna C StockhamRussiaIoni Bowcher QUALIFIED
Octavia C DoeRussiaStephen Shaw PROPOSAL
Jennifer B SergiArgentinaStephen Shaw NEGOTIATION
Costa A GlickIndiaAnna Fali RENEWAL
Claire W MaletJapanIvan Magalhaes UNQUALIFIED
Jeanfrancois B VenereJapanAsiya Javayant RENEWAL
Maria T WhobreyJapanAnna Fali UNQUALIFIED
Misaki V WaycottCanadaOnyama Limba NEGOTIATION
Isabel A FollerBrazilAsiya Javayant PROPOSAL
Costa R KolmetzUnited KingdomAnna Fali RENEWAL
Rodrigues Q CaldareraArgentinaStephen Shaw NEGOTIATION
Leja U MarrierItalyXuxue Feng NEW
Frozen Columns
Name
Kaitlin R Gaucho
Octavia N Bolognia
Kaitlin O Butt
Aika A Gaucho
Maria J Figeroa
Jones H Iturbide
Jones Z Ostrosky
Claire Q Marrier
Salvatore C Kolmetz
Jeanfrancois L Inouye
Morrow U Ruta
Clifford C Bolognia
Deepesh N Perin
Kadeem C Malet
Leon O Albares
Sinclair J Garufi
Misaki W Rim
Jennifer Y Waycott
Wickens H Caldarera
Johnson Y Schemmer
Rodrigues M Doe
David N Butt
Claire K Iturbide
Claire A Maclead
Jones T Amigon
Tony W Waycott
Darci U Wieser
Julie K Shinko
Chavez Y Ferencz
Murillo W Rulapaugh
Stacey K Kusko
Leon U Nestle
Johnson Q Glick
Isabel M Stenseth
Jefferson B Ferencz
Darci K Amigon
Deepesh H Figeroa
Johnson B Stockham
Clifford A Inouye
Alejandro S Ostrosky
Jones P Bowley
Juan P Figeroa
Claire F Darakjy
Smith F Glick
Cody U Butt
Juan A Ferencz
Claire P Ruta
Aika W Saylors
Johnson X Shinko
Octavia P Venere
IdCountryDate
1000Canada2026-06-17
1001Spain2026-06-19
1002Canada2026-06-06
1003Germany2026-06-18
1004Russia2026-05-27
1005Australia2026-06-06
1006Russia2026-05-27
1007Germany2026-05-29
1008Italy2026-06-15
1009Russia2026-06-07
1010Argentina2026-06-09
1011United Kingdom2026-06-16
1012Australia2026-05-31
1013France2026-05-29
1014Japan2026-06-15
1015Spain2026-06-23
1016India2026-05-27
1017Germany2026-06-02
1018Japan2026-06-16
1019Germany2026-06-12
1020Japan2026-06-19
1021Russia2026-06-13
1022Japan2026-06-15
1023France2026-06-03
1024Australia2026-05-28
1025Russia2026-05-26
1026France2026-05-26
1027Canada2026-06-18
1028Spain2026-06-23
1029France2026-06-14
1030Australia2026-06-05
1031Australia2026-06-17
1032Australia2026-06-16
1033Canada2026-05-25
1034Australia2026-06-03
1035India2026-06-21
1036United Kingdom2026-06-16
1037Australia2026-06-02
1038Canada2026-05-26
1039Italy2026-06-03
1040Japan2026-05-26
1041Germany2026-05-26
1042United Kingdom2026-06-06
1043India2026-06-01
1044Spain2026-06-10
1045Australia2026-05-30
1046Italy2026-06-10
1047Spain2026-05-28
1048Italy2026-06-01
1049France2026-06-10

On-Demand Data

NameIdCountryDate
Chavez L Bolognia1000Italy2026-06-04
Claire C Royster1001Russia2026-06-16
Misaki I Whobrey1002Australia2026-06-12
Jefferson N Ostrosky1003Canada2026-06-02
Izzy P Doe1004Canada2026-06-18
Misaki C Maclead1005India2026-05-30
Costa N Chui1006Japan2026-05-27
Ivar Z Maclead1007Argentina2026-06-14
Leja U Dilliard1008Germany2026-06-06
Smith V Bowley1009Italy2026-06-06
Clifford U Royster1010United Kingdom2026-06-03
David L Royster1011Japan2026-06-07
Johnson A Paprocki1012Australia2026-06-16
Isabel E Sergi1013Australia2026-06-18
David G Sergi1014Russia2026-06-02
Silvio V Stenseth1015Italy2026-06-02
Jeanfrancois B Figeroa1016Argentina2026-05-29
James C Sergi1017Brazil2026-06-10
Costa A Butt1018Italy2026-06-15
Murillo W Stenseth1019Argentina2026-06-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco S WieserIndiaStephen Shaw QUALIFIED
Faith G StockhamBrazilBernardo Dominic QUALIFIED
Jeanfrancois L RoysterUnited KingdomStephen Shaw RENEWAL
Jones H OldroydCanadaAsiya Javayant QUALIFIED
Rodrigues N RutaRussiaAnna Fali QUALIFIED
Julie V SchemmerAustraliaOnyama Limba RENEWAL
Kadeem Z FerenczSpainBernardo Dominic NEGOTIATION
Darci O FollerArgentinaIoni Bowcher RENEWAL
Aditya I VocelkaIndiaBernardo Dominic UNQUALIFIED
Wickens V BriddickSpainXuxue Feng RENEWAL
Chavez V DarakjyIndiaIoni Bowcher NEGOTIATION
Stacey T WhobreyItalyIoni Bowcher RENEWAL
Juan U MaletUnited KingdomXuxue Feng NEW
Julie E StockhamItalyBernardo Dominic NEW
Sinclair H ButtIndiaAnna Fali QUALIFIED
Clifford C VocelkaCanadaOnyama Limba PROPOSAL
Leon X PoquetteJapanAmy Elsner RENEWAL
Ashley A WhobreyBrazilAsiya Javayant NEGOTIATION
Clifford R ChuiIndiaOnyama Limba QUALIFIED
Jennifer W WaycottSpainIvan Magalhaes RENEWAL
Murillo K KuskoSpainStephen Shaw RENEWAL
Adams G GarufiRussiaAnna Fali QUALIFIED
Kaitlin N RulapaughItalyAmy Elsner PROPOSAL
Jones X StensethRussiaOnyama Limba UNQUALIFIED
Claire Q PaprockiIndiaIvan Magalhaes UNQUALIFIED
Aika Z PaprockiFranceIvan Magalhaes RENEWAL
Maisha C SaylorsFranceOnyama Limba RENEWAL
Sinclair K TollnerItalyAmy Elsner QUALIFIED
Mujtaba R GauchoRussiaIoni Bowcher UNQUALIFIED
Deepesh X WieserJapanElwin Sharvill RENEWAL
Aditya R RoysterJapanBernardo Dominic QUALIFIED
Nicolas G MaletBrazilOnyama Limba NEW
Ricardo K GauchoSpainAnna Fali PROPOSAL
Claire S MorascaGermanyBernardo Dominic PROPOSAL
Johnson K GillianArgentinaXuxue Feng RENEWAL
Arvin Q MaletFranceElwin Sharvill NEW
Greenwood P NestleFranceAmy Elsner NEGOTIATION
Kaitlin N GlickJapanElwin Sharvill QUALIFIED
Aika X MacleadIndiaAnna Fali QUALIFIED
Maisha D SchemmerSpainOnyama Limba QUALIFIED

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