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
Juan G ShinkoGermanyStephen Shaw PROPOSAL
Greenwood H FerenczSpainIoni Bowcher NEGOTIATION
Julie L FollerItalyXuxue Feng PROPOSAL
Kaitlin A DoeAustraliaElwin Sharvill QUALIFIED
Darci R KuskoIndiaAmy Elsner NEW
Johnson X KolmetzCanadaIvan Magalhaes QUALIFIED
Clifford Q StockhamAustraliaOnyama Limba NEW
Adams A RutaItalyXuxue Feng NEW
Ivar A KuskoItalyBernardo Dominic PROPOSAL
Mujtaba J FerenczGermanyStephen Shaw PROPOSAL
Leja X MaletUnited KingdomStephen Shaw PROPOSAL
Jennifer B GlickCanadaOnyama Limba UNQUALIFIED
Adams N ShinkoGermanyBernardo Dominic NEGOTIATION
Greenwood H ButtJapanAmy Elsner RENEWAL
Sinclair R MaletAustraliaOnyama Limba QUALIFIED
Adams E DilliardBrazilAnna Fali UNQUALIFIED
Cody Y MorascaAustraliaStephen Shaw UNQUALIFIED
James G OstroskyArgentinaIvan Magalhaes UNQUALIFIED
Aruna W WaycottSpainAmy Elsner QUALIFIED
Wickens Q SlusarskiFranceIvan Magalhaes RENEWAL
Emily K RutaJapanAnna Fali NEW
Clifford M SaylorsAustraliaBernardo Dominic PROPOSAL
Alejandro A WieserRussiaAmy Elsner RENEWAL
Ivar W AlbaresJapanElwin Sharvill QUALIFIED
Francesco N PoquetteItalyBernardo Dominic NEW
Salvatore E RimFranceIoni Bowcher PROPOSAL
Salvatore W PoquetteJapanAmy Elsner PROPOSAL
Aruna C KuskoRussiaAsiya Javayant UNQUALIFIED
Chavez C StockhamAustraliaIoni Bowcher QUALIFIED
Alejandro E NickaIndiaXuxue Feng PROPOSAL
Adams J OstroskyUnited KingdomAsiya Javayant PROPOSAL
Francesco L CaldareraItalyIvan Magalhaes QUALIFIED
Kaitlin Z FollerSpainAsiya Javayant RENEWAL
Kaitlin Y AmigonItalyIvan Magalhaes UNQUALIFIED
Arvin H TollnerRussiaIvan Magalhaes UNQUALIFIED
Maria O StockhamCanadaStephen Shaw PROPOSAL
Leja C InouyeJapanBernardo Dominic PROPOSAL
Claire X InouyeItalyAmy Elsner PROPOSAL
Antonio N GarufiItalyElwin Sharvill PROPOSAL
Cody E BriddickRussiaIvan Magalhaes UNQUALIFIED
Jeanfrancois W TollnerIndiaBernardo Dominic PROPOSAL
Francesco Y VocelkaFranceAsiya Javayant UNQUALIFIED
Munro I TollnerGermanyStephen Shaw NEGOTIATION
Tony A RulapaughFranceElwin Sharvill UNQUALIFIED
Wickens T AmigonItalyAsiya Javayant NEW
Leja D GlickRussiaIoni Bowcher PROPOSAL
Jones J StensethArgentinaAnna Fali PROPOSAL
Julie D GauchoCanadaXuxue Feng PROPOSAL
Adams B FerenczBrazilAnna Fali RENEWAL
Maria D KuskoUnited KingdomOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Tony M AmigonFranceBernardo Dominic NEW
Julie O FerenczCanadaIvan Magalhaes UNQUALIFIED
Ashley Y SlusarskiCanadaAsiya Javayant UNQUALIFIED
Jefferson Q FerenczUnited KingdomOnyama Limba PROPOSAL
Chavez N MaletAustraliaStephen Shaw NEW
Wickens D MarrierFranceAmy Elsner QUALIFIED
Tony D ChuiRussiaAmy Elsner NEGOTIATION
Alejandro X OldroydFranceXuxue Feng NEW
Jeanfrancois G InouyeAustraliaStephen Shaw NEGOTIATION
Nicolas D WieserRussiaIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci W MarrierSpain2026-05-17Truhlar And Truhlar Attys QUALIFIED25Ivan Magalhaes
1001Morrow G FollerArgentina2026-05-17Truhlar And Truhlar Attys PROPOSAL40Stephen Shaw
1002Alejandro Y VenereRussia2026-06-01Rousseaux, Michael Esq NEW63Bernardo Dominic
1003Ivar B StensethItaly2026-06-03King, Christopher A Esq QUALIFIED41Asiya Javayant
1004Ashley J FollerGermany2026-05-12Chapman, Ross E Esq PROPOSAL78Anna Fali
1005Aika P BowleyArgentina2026-06-02Rangoni Of Florence NEGOTIATION5Anna Fali
1006Cody S OldroydSpain2026-05-13Benton, John B Jr RENEWAL25Stephen Shaw
1007Salvatore V ChuiFrance2026-05-31Rousseaux, Michael Esq NEGOTIATION60Anna Fali
1008Alejandro V DilliardAustralia2026-05-16Morlong Associates NEW6Ivan Magalhaes
1009Mayumi M RutaArgentina2026-05-10King, Christopher A Esq QUALIFIED33Ivan Magalhaes
1010Izzy Z SergiGermany2026-05-19Buckley Miller Wright NEW27Bernardo Dominic
1011Claire X BowleyFrance2026-05-27King, Christopher A Esq PROPOSAL17Ioni Bowcher
1012Francesco N NestleUnited Kingdom2026-05-26Feiner Bros NEGOTIATION99Anna Fali
1013Rodrigues O ShinkoUnited Kingdom2026-05-29King, Christopher A Esq RENEWAL16Amy Elsner
1014Kaitlin A FlosiSpain2026-05-19Dorl, James J Esq RENEWAL38Xuxue Feng
1015Deepesh J TollnerRussia2026-05-26Morlong Associates NEW49Stephen Shaw
1016Maisha E SchemmerArgentina2026-05-25Printing Dimensions NEW7Anna Fali
1017Jeanfrancois M DoeArgentina2026-05-30Chanay, Jeffrey A Esq UNQUALIFIED70Anna Fali
1018Morrow W KuskoIndia2026-05-14Commercial Press QUALIFIED0Bernardo Dominic
1019David A CampainJapan2026-05-24Chemel, James L Cpa NEW30Xuxue Feng
1020Octavia R RutaArgentina2026-05-24Morlong Associates UNQUALIFIED34Stephen Shaw
1021Maisha X MacleadIndia2026-05-31Printing Dimensions UNQUALIFIED23Elwin Sharvill
1022Alejandro D FollerFrance2026-05-31Chapman, Ross E Esq NEGOTIATION11Xuxue Feng
1023Faith F CaldareraRussia2026-05-25Commercial Press UNQUALIFIED28Stephen Shaw
1024Jefferson A KuskoRussia2026-06-05Chapman, Ross E Esq NEW82Xuxue Feng
1025Adams G FollerJapan2026-05-22Morlong Associates QUALIFIED17Bernardo Dominic
1026Munro E SchemmerAustralia2026-05-20Dorl, James J Esq QUALIFIED24Asiya Javayant
1027Deepesh O DilliardArgentina2026-05-24Rousseaux, Michael Esq UNQUALIFIED1Bernardo Dominic
1028Clifford X WaycottArgentina2026-05-24Feiner Bros NEW66Bernardo Dominic
1029Julie Q InouyeRussia2026-05-19Chapman, Ross E Esq NEGOTIATION55Onyama Limba
1030Tony Y BologniaJapan2026-05-18Morlong Associates PROPOSAL84Xuxue Feng
1031Munro T MaletFrance2026-05-20Feiner Bros RENEWAL63Bernardo Dominic
1032Claire I CaldareraFrance2026-05-16Chapman, Ross E Esq RENEWAL59Anna Fali
1033Morrow X FerenczGermany2026-05-12Commercial Press NEGOTIATION73Ioni Bowcher
1034Smith M GillianGermany2026-05-31King, Christopher A Esq UNQUALIFIED63Onyama Limba
1035Arvin A WaycottFrance2026-05-09Benton, John B Jr NEW5Bernardo Dominic
1036Mujtaba M SergiJapan2026-05-20Rangoni Of Florence NEW13Ivan Magalhaes
1037Arvin U MaletAustralia2026-05-15Rousseaux, Michael Esq RENEWAL96Elwin Sharvill
1038Wickens S MorascaItaly2026-06-05Dorl, James J Esq RENEWAL59Ioni Bowcher
1039Claire A StensethGermany2026-05-23Dorl, James J Esq NEGOTIATION93Asiya Javayant
1040Izzy D GlickGermany2026-05-21Commercial Press PROPOSAL44Stephen Shaw
1041Munro Y AmigonRussia2026-05-19Rangoni Of Florence UNQUALIFIED69Ivan Magalhaes
1042James I StensethGermany2026-05-13Chemel, James L Cpa UNQUALIFIED44Bernardo Dominic
1043Mayumi L CampainBrazil2026-05-27Benton, John B Jr NEGOTIATION56Asiya Javayant
1044Ivar E NestleSpain2026-05-19Chapman, Ross E Esq QUALIFIED41Asiya Javayant
1045Silvio Y MaletAustralia2026-05-12Chanay, Jeffrey A Esq NEGOTIATION34Xuxue Feng
1046Silvio M OldroydArgentina2026-05-31Rangoni Of Florence PROPOSAL79Stephen Shaw
1047Darci M OstroskyItaly2026-06-02Truhlar And Truhlar Attys UNQUALIFIED30Anna Fali
1048Faith G CaudyUnited Kingdom2026-05-26Chanay, Jeffrey A Esq NEW64Amy Elsner
1049Claire G FlosiIndia2026-06-02King, Christopher A Esq PROPOSAL77Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Aruna K ButtItalyAnna Fali UNQUALIFIED
Leja I BologniaAustraliaAnna Fali UNQUALIFIED
Salvatore E OldroydIndiaAnna Fali PROPOSAL
Kadeem K RoysterIndiaXuxue Feng PROPOSAL
Nicolas T KolmetzCanadaOnyama Limba NEGOTIATION
Leja Z WieserItalyBernardo Dominic RENEWAL
Jefferson W SergiRussiaAnna Fali NEW
Aika V WhobreyFranceIvan Magalhaes QUALIFIED
Wickens F KuskoSpainAnna Fali QUALIFIED
Misaki X RoysterJapanAmy Elsner NEW
Octavia L BowleyJapanAmy Elsner RENEWAL
Aditya L KuskoUnited KingdomAsiya Javayant NEGOTIATION
Murillo I WaycottIndiaIvan Magalhaes UNQUALIFIED
Greenwood N DilliardArgentinaBernardo Dominic NEW
Kadeem J AmigonUnited KingdomOnyama Limba PROPOSAL
Ashley R NickaAustraliaAmy Elsner UNQUALIFIED
Deepesh G MaletRussiaAmy Elsner PROPOSAL
Kadeem T StockhamIndiaAsiya Javayant QUALIFIED
Jefferson M FerenczRussiaIvan Magalhaes NEW
Rodrigues E VenereIndiaIoni Bowcher QUALIFIED
Juan F InouyeAustraliaXuxue Feng RENEWAL
Stacey A FigeroaIndiaAnna Fali PROPOSAL
Francesco M SlusarskiGermanyIoni Bowcher PROPOSAL
Jennifer L BowleyCanadaAnna Fali QUALIFIED
Ivar C SergiGermanyAmy Elsner PROPOSAL
Octavia F SchemmerUnited KingdomIvan Magalhaes NEW
Silvio X VocelkaJapanIvan Magalhaes RENEWAL
Maisha H WieserFranceOnyama Limba RENEWAL
Munro M SergiGermanyAmy Elsner UNQUALIFIED
Murillo B MacleadAustraliaElwin Sharvill NEW
Salvatore X RimUnited KingdomStephen Shaw UNQUALIFIED
Emily D FollerFranceStephen Shaw NEW
James F FigeroaJapanAmy Elsner NEW
Mujtaba A StensethUnited KingdomXuxue Feng UNQUALIFIED
Silvio P GauchoCanadaOnyama Limba UNQUALIFIED
Kadeem C SaylorsUnited KingdomAmy Elsner UNQUALIFIED
Claire B RimUnited KingdomOnyama Limba RENEWAL
Deepesh A MarrierGermanyStephen Shaw RENEWAL
Antonio E ButtJapanElwin Sharvill UNQUALIFIED
Izzy K FlosiItalyXuxue Feng NEW
Nicolas Z ChuiAustraliaAsiya Javayant NEGOTIATION
Maisha H SchemmerCanadaAsiya Javayant QUALIFIED
Leon N DoeFranceElwin Sharvill UNQUALIFIED
Antonio N AlbaresJapanBernardo Dominic UNQUALIFIED
Stacey Z GlickRussiaXuxue Feng UNQUALIFIED
Alejandro Z SaylorsArgentinaAnna Fali PROPOSAL
Leja O OstroskyCanadaElwin Sharvill PROPOSAL
James E DoeGermanyIoni Bowcher RENEWAL
Leja C TollnerBrazilBernardo Dominic UNQUALIFIED
Smith H IturbideCanadaAsiya Javayant PROPOSAL
Frozen Columns
Name
Misaki K Gillian
Greenwood M Oldroyd
Antonio J Glick
David W Figeroa
Francesco I Saylors
Wickens O Chui
Kadeem S Rim
Wickens R Caudy
Francesco T Schemmer
Wickens E Maclead
Mayumi Z Oldroyd
Izzy N Butt
Alejandro U Morasca
Aruna F Slusarski
Jones P Kusko
Cody E Nicka
Rodrigues D Inouye
Faith C Whobrey
Kaitlin Z Chui
Faith S Figeroa
Leja M Garufi
Mujtaba F Doe
Antonio Y Saylors
Izzy A Nicka
Julie I Wieser
Alejandro S Garufi
Jones B Stockham
Antonio M Bolognia
Murillo F Poquette
Claire C Briddick
Sinclair A Paprocki
Greenwood Z Ferencz
Stacey M Glick
Clifford W Malet
Mayumi P Caudy
Chavez W Wieser
Cody E Briddick
Silvio C Doe
Ivar B Marrier
Rodrigues N Malet
Ivar C Ruta
Kadeem U Campain
Ashley N Bowley
Aditya O Venere
Leja I Bowley
Octavia K Maclead
Stacey A Sergi
Morrow O Rulapaugh
Jeanfrancois B Malet
Aruna T Darakjy
IdCountryDate
1000Brazil2026-05-19
1001Argentina2026-05-30
1002Argentina2026-05-11
1003India2026-05-22
1004Italy2026-05-11
1005France2026-06-02
1006Italy2026-05-26
1007France2026-05-10
1008Australia2026-05-30
1009France2026-05-08
1010Brazil2026-05-28
1011Australia2026-05-27
1012Japan2026-05-13
1013Argentina2026-05-14
1014Canada2026-06-05
1015Italy2026-05-23
1016Australia2026-05-24
1017Australia2026-05-27
1018France2026-05-27
1019Japan2026-05-28
1020United Kingdom2026-05-15
1021Australia2026-05-08
1022Germany2026-05-07
1023Canada2026-05-28
1024Germany2026-05-16
1025Argentina2026-05-16
1026Australia2026-05-19
1027India2026-05-14
1028Italy2026-05-19
1029Italy2026-05-10
1030France2026-06-05
1031Germany2026-05-13
1032Spain2026-05-09
1033France2026-05-10
1034India2026-05-29
1035Russia2026-05-17
1036Brazil2026-05-31
1037Italy2026-05-18
1038Australia2026-05-27
1039Italy2026-05-30
1040Brazil2026-05-09
1041United Kingdom2026-05-21
1042Italy2026-06-01
1043Argentina2026-06-01
1044Brazil2026-05-25
1045Russia2026-05-26
1046Australia2026-05-28
1047Spain2026-06-05
1048Russia2026-05-31
1049Argentina2026-05-12

On-Demand Data

NameIdCountryDate
Stacey Q Wieser1000United Kingdom2026-05-09
Ashley T Nicka1001Spain2026-06-04
Stacey G Nicka1002United Kingdom2026-05-25
Darci X Rim1003France2026-05-21
Jefferson C Rulapaugh1004Spain2026-06-04
Misaki V Schemmer1005United Kingdom2026-05-29
Clifford L Maclead1006Russia2026-06-03
Greenwood N Glick1007Spain2026-05-13
Ashley M Bolognia1008France2026-05-20
Maisha U Caldarera1009Canada2026-05-31
Leon J Glick1010Japan2026-05-17
Deepesh T Royster1011Spain2026-05-27
Izzy J Garufi1012Germany2026-06-04
Adams M Oldroyd1013Argentina2026-05-17
Murillo A Sergi1014Italy2026-05-20
Jeanfrancois O Paprocki1015Australia2026-05-25
Faith D Gaucho1016Italy2026-05-09
Sinclair W Tollner1017India2026-06-05
Izzy M Wieser1018Spain2026-05-29
Maria J Rim1019Canada2026-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon S BriddickFranceXuxue Feng RENEWAL
Salvatore I MacleadCanadaXuxue Feng RENEWAL
Misaki S TollnerBrazilXuxue Feng NEGOTIATION
Leon G SchemmerArgentinaElwin Sharvill PROPOSAL
Jones E ButtBrazilIvan Magalhaes RENEWAL
Ashley M GauchoFranceAmy Elsner UNQUALIFIED
Jones A AlbaresArgentinaXuxue Feng UNQUALIFIED
Adams X MaletGermanyIvan Magalhaes PROPOSAL
Claire K PoquetteCanadaElwin Sharvill NEGOTIATION
Kadeem Y SergiFranceXuxue Feng QUALIFIED
Francesco H WaycottCanadaIoni Bowcher PROPOSAL
Ivar B VocelkaItalyElwin Sharvill RENEWAL
Leja J RutaCanadaIoni Bowcher RENEWAL
Aruna L KolmetzUnited KingdomElwin Sharvill RENEWAL
Jefferson U ShinkoUnited KingdomOnyama Limba QUALIFIED
James Q NestleItalyAmy Elsner PROPOSAL
Mujtaba R RoysterRussiaBernardo Dominic NEW
Maria O DilliardFranceAnna Fali PROPOSAL
Cody I GauchoRussiaIvan Magalhaes NEW
Izzy O OldroydGermanyBernardo Dominic NEW
Aditya T GauchoItalyAmy Elsner NEGOTIATION
Johnson Q FigeroaJapanAmy Elsner PROPOSAL
Sinclair I InouyeGermanyOnyama Limba RENEWAL
Ashley W FigeroaIndiaElwin Sharvill UNQUALIFIED
Faith G SergiCanadaStephen Shaw RENEWAL
Francesco H GillianArgentinaElwin Sharvill PROPOSAL
Adams J PoquetteGermanyIvan Magalhaes RENEWAL
Kadeem L InouyeArgentinaIvan Magalhaes UNQUALIFIED
Cody J ShinkoGermanyIvan Magalhaes PROPOSAL
Aditya O VocelkaCanadaOnyama Limba NEW
Izzy E FollerArgentinaIoni Bowcher RENEWAL
Mujtaba P InouyeItalyElwin Sharvill UNQUALIFIED
Faith O SergiGermanyElwin Sharvill NEW
Johnson R WhobreyCanadaStephen Shaw NEW
Octavia S AlbaresSpainAnna Fali NEW
Nicolas O SaylorsSpainStephen Shaw NEW
Cody S BologniaRussiaAsiya Javayant PROPOSAL
Clifford R FigeroaAustraliaIoni Bowcher QUALIFIED
Faith R DarakjyUnited KingdomStephen Shaw UNQUALIFIED
Jeanfrancois F WieserCanadaElwin Sharvill 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.