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
Maria T KuskoGermanyIvan Magalhaes PROPOSAL
Leon S RimItalyBernardo Dominic RENEWAL
Isabel V NestleArgentinaAnna Fali QUALIFIED
Maisha W RutaUnited KingdomStephen Shaw NEGOTIATION
Darci O FerenczFranceAnna Fali NEGOTIATION
Murillo V BriddickBrazilStephen Shaw PROPOSAL
Nicolas B MaletCanadaXuxue Feng QUALIFIED
Mujtaba B TollnerCanadaIvan Magalhaes PROPOSAL
Rodrigues Q VenereAustraliaIoni Bowcher RENEWAL
Costa D ChuiArgentinaElwin Sharvill NEW
Morrow N NestleGermanyAmy Elsner RENEWAL
Adams C RoysterRussiaElwin Sharvill QUALIFIED
Jefferson Q ShinkoItalyAmy Elsner NEGOTIATION
Claire I IturbideRussiaOnyama Limba NEGOTIATION
Salvatore E DilliardSpainIvan Magalhaes QUALIFIED
David Q TollnerGermanyAmy Elsner QUALIFIED
Jones M RulapaughFranceAsiya Javayant UNQUALIFIED
Aika E OstroskyRussiaAmy Elsner QUALIFIED
Kadeem D MarrierGermanyAnna Fali RENEWAL
Aditya C ShinkoFranceIoni Bowcher PROPOSAL
Octavia E DarakjyAustraliaAsiya Javayant RENEWAL
Greenwood U GlickUnited KingdomAmy Elsner NEW
Faith C CampainCanadaXuxue Feng UNQUALIFIED
Misaki Z MorascaUnited KingdomIvan Magalhaes PROPOSAL
Mujtaba T CaldareraGermanyStephen Shaw PROPOSAL
Kadeem F CaudyArgentinaAmy Elsner RENEWAL
Octavia K VenereItalyIoni Bowcher RENEWAL
Jefferson V NickaBrazilStephen Shaw RENEWAL
Aditya A DilliardAustraliaIoni Bowcher NEGOTIATION
Adams H DarakjyItalyAnna Fali QUALIFIED
Clifford X NestleIndiaIvan Magalhaes QUALIFIED
Munro R DoeFranceOnyama Limba PROPOSAL
Aditya L GarufiCanadaXuxue Feng QUALIFIED
Chavez B NestleItalyIvan Magalhaes NEGOTIATION
Izzy Z BologniaAustraliaAsiya Javayant RENEWAL
Rodrigues G SlusarskiJapanAnna Fali NEGOTIATION
Izzy I GarufiSpainXuxue Feng QUALIFIED
Claire L AlbaresJapanXuxue Feng QUALIFIED
Faith L FollerSpainIvan Magalhaes NEGOTIATION
Ricardo U StensethItalyElwin Sharvill QUALIFIED
Chavez W KolmetzFranceIoni Bowcher PROPOSAL
Francesco H MaletSpainBernardo Dominic QUALIFIED
Clifford X SchemmerBrazilStephen Shaw QUALIFIED
Juan C PoquetteRussiaAsiya Javayant QUALIFIED
Costa Q SlusarskiItalyIvan Magalhaes QUALIFIED
David C AmigonRussiaXuxue Feng NEW
Isabel G GauchoCanadaXuxue Feng NEW
Sinclair X RoysterRussiaAnna Fali QUALIFIED
Kadeem Y OstroskySpainOnyama Limba RENEWAL
Arvin W GillianCanadaOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Munro I GillianItalyAmy Elsner RENEWAL
Izzy T NickaIndiaIvan Magalhaes PROPOSAL
Aruna U PaprockiGermanyOnyama Limba NEW
Tony Q MacleadUnited KingdomElwin Sharvill NEGOTIATION
Nicolas Y CaldareraJapanXuxue Feng RENEWAL
Mujtaba G StensethJapanBernardo Dominic QUALIFIED
Jones A MorascaCanadaXuxue Feng QUALIFIED
Chavez X KuskoBrazilIvan Magalhaes RENEWAL
Isabel B StensethBrazilStephen Shaw NEGOTIATION
Leja S MacleadItalyAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony J RulapaughIndia2026-04-05Commercial Press UNQUALIFIED37Stephen Shaw
1001Cody H AlbaresArgentina2026-03-09Benton, John B Jr NEGOTIATION51Elwin Sharvill
1002Claire I RimUnited Kingdom2026-03-12Rousseaux, Michael Esq NEW16Amy Elsner
1003Leon X StensethItaly2026-03-25Morlong Associates RENEWAL42Anna Fali
1004Jefferson K DarakjySpain2026-03-24Chanay, Jeffrey A Esq RENEWAL98Asiya Javayant
1005Greenwood X ShinkoJapan2026-03-14Rangoni Of Florence QUALIFIED34Elwin Sharvill
1006Arvin F StockhamRussia2026-03-09Feltz Printing Service PROPOSAL93Bernardo Dominic
1007Nicolas P WhobreyUnited Kingdom2026-03-16Rousseaux, Michael Esq UNQUALIFIED79Anna Fali
1008Jefferson V RimGermany2026-03-17Feltz Printing Service NEGOTIATION63Ioni Bowcher
1009Stacey K GlickIndia2026-03-19Chapman, Ross E Esq RENEWAL76Amy Elsner
1010Alejandro Y SaylorsIndia2026-03-21Chapman, Ross E Esq PROPOSAL58Onyama Limba
1011Smith F GillianRussia2026-04-06Rangoni Of Florence PROPOSAL40Stephen Shaw
1012Deepesh A CaldareraGermany2026-03-16Chemel, James L Cpa QUALIFIED58Ivan Magalhaes
1013Misaki V KolmetzCanada2026-03-25Chanay, Jeffrey A Esq PROPOSAL34Xuxue Feng
1014Rodrigues K WaycottCanada2026-03-14Feiner Bros PROPOSAL82Onyama Limba
1015Jennifer P VocelkaFrance2026-03-13Buckley Miller Wright UNQUALIFIED60Ioni Bowcher
1016Jennifer D BowleyFrance2026-03-15Rousseaux, Michael Esq QUALIFIED30Elwin Sharvill
1017Antonio U DilliardAustralia2026-03-26Feltz Printing Service QUALIFIED78Elwin Sharvill
1018Clifford I VocelkaArgentina2026-03-27Feltz Printing Service QUALIFIED3Elwin Sharvill
1019Julie D GarufiIndia2026-03-14Rousseaux, Michael Esq NEW75Stephen Shaw
1020Maria U MorascaUnited Kingdom2026-03-21Benton, John B Jr UNQUALIFIED80Asiya Javayant
1021Octavia U SchemmerRussia2026-04-06Feiner Bros UNQUALIFIED49Elwin Sharvill
1022Johnson V GarufiBrazil2026-03-22Buckley Miller Wright UNQUALIFIED90Asiya Javayant
1023Darci R AlbaresIndia2026-03-09Chemel, James L Cpa QUALIFIED37Ioni Bowcher
1024Maisha X MaletItaly2026-03-17Rangoni Of Florence PROPOSAL78Xuxue Feng
1025Deepesh D PaprockiGermany2026-03-30Commercial Press RENEWAL46Asiya Javayant
1026Jennifer Z PoquetteAustralia2026-03-26Truhlar And Truhlar Attys QUALIFIED86Amy Elsner
1027Antonio T VocelkaFrance2026-03-15Morlong Associates NEGOTIATION85Stephen Shaw
1028Mayumi O OldroydRussia2026-03-15Dorl, James J Esq RENEWAL86Ivan Magalhaes
1029James R StockhamSpain2026-04-05Chemel, James L Cpa RENEWAL20Asiya Javayant
1030Leja T TollnerCanada2026-04-02Chemel, James L Cpa NEGOTIATION98Amy Elsner
1031David M KuskoAustralia2026-03-09Dorl, James J Esq RENEWAL83Bernardo Dominic
1032Jones C InouyeBrazil2026-03-10Buckley Miller Wright UNQUALIFIED34Bernardo Dominic
1033Mujtaba U PoquetteCanada2026-04-04Feiner Bros QUALIFIED72Elwin Sharvill
1034Francesco V RimIndia2026-03-11Printing Dimensions RENEWAL96Amy Elsner
1035Jefferson S PaprockiUnited Kingdom2026-03-17Benton, John B Jr NEGOTIATION66Ivan Magalhaes
1036Ivar C ChuiFrance2026-03-12Chemel, James L Cpa PROPOSAL81Elwin Sharvill
1037Faith C DilliardFrance2026-03-17Chemel, James L Cpa PROPOSAL87Elwin Sharvill
1038Nicolas H ChuiUnited Kingdom2026-03-13Feiner Bros QUALIFIED84Ivan Magalhaes
1039Adams M ChuiFrance2026-04-03Morlong Associates PROPOSAL58Stephen Shaw
1040Wickens W DoeItaly2026-03-16Feltz Printing Service QUALIFIED57Stephen Shaw
1041Ricardo P AmigonIndia2026-03-20Dorl, James J Esq UNQUALIFIED58Onyama Limba
1042Izzy G PaprockiFrance2026-04-01Chemel, James L Cpa RENEWAL49Bernardo Dominic
1043Sinclair W AmigonSpain2026-03-28Chanay, Jeffrey A Esq NEW68Ivan Magalhaes
1044Juan Z StockhamFrance2026-03-12Benton, John B Jr PROPOSAL46Ioni Bowcher
1045Jefferson U BriddickSpain2026-03-19Dorl, James J Esq UNQUALIFIED16Ioni Bowcher
1046Maisha B MaletGermany2026-04-03Chemel, James L Cpa PROPOSAL59Bernardo Dominic
1047Octavia J CaudyRussia2026-03-09Dorl, James J Esq UNQUALIFIED68Asiya Javayant
1048Salvatore E RimAustralia2026-04-02Morlong Associates PROPOSAL19Bernardo Dominic
1049Morrow B SlusarskiItaly2026-03-28Feltz Printing Service NEGOTIATION45Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Clifford Q CampainFranceOnyama Limba QUALIFIED
Wickens Q WieserBrazilIoni Bowcher NEGOTIATION
Isabel L SchemmerCanadaAnna Fali NEGOTIATION
Isabel R VenereBrazilBernardo Dominic RENEWAL
Jefferson B GauchoItalyOnyama Limba NEW
Ricardo N MorascaUnited KingdomAnna Fali NEW
Smith I GarufiArgentinaBernardo Dominic NEGOTIATION
Costa U CampainFranceAsiya Javayant QUALIFIED
Rodrigues X VenereRussiaAmy Elsner UNQUALIFIED
Sinclair J MaletAustraliaStephen Shaw QUALIFIED
Mujtaba S RulapaughSpainIvan Magalhaes RENEWAL
Faith K ButtItalyBernardo Dominic PROPOSAL
Juan H StockhamSpainIoni Bowcher QUALIFIED
Antonio M KuskoJapanIoni Bowcher RENEWAL
Kadeem P StockhamJapanAnna Fali NEGOTIATION
Ivar X DoeItalyIvan Magalhaes PROPOSAL
Costa I ChuiAustraliaOnyama Limba QUALIFIED
Ashley J PaprockiArgentinaBernardo Dominic UNQUALIFIED
Faith L DilliardSpainXuxue Feng NEGOTIATION
Ricardo H GlickIndiaOnyama Limba NEW
Costa W ShinkoGermanyElwin Sharvill UNQUALIFIED
Jefferson F MaletItalyOnyama Limba NEW
Sinclair G GlickAustraliaElwin Sharvill NEGOTIATION
Johnson Y NestleArgentinaBernardo Dominic UNQUALIFIED
Leja U SchemmerArgentinaBernardo Dominic NEGOTIATION
Kadeem V PaprockiArgentinaIvan Magalhaes PROPOSAL
Mayumi U NestleIndiaIoni Bowcher RENEWAL
Ivar F KuskoArgentinaStephen Shaw NEW
Emily J GarufiJapanAnna Fali NEGOTIATION
David B PaprockiBrazilStephen Shaw QUALIFIED
Claire O ShinkoItalyXuxue Feng PROPOSAL
Murillo G FollerJapanAnna Fali RENEWAL
Johnson X VocelkaUnited KingdomBernardo Dominic PROPOSAL
Smith G DoeArgentinaBernardo Dominic UNQUALIFIED
David B BriddickBrazilBernardo Dominic NEGOTIATION
Julie U BologniaBrazilElwin Sharvill UNQUALIFIED
Arvin A ShinkoJapanAnna Fali NEW
Ashley I MarrierBrazilAsiya Javayant RENEWAL
Francesco J RimIndiaXuxue Feng NEW
Nicolas L CampainBrazilXuxue Feng PROPOSAL
Chavez S InouyeArgentinaStephen Shaw PROPOSAL
Mayumi R CampainSpainIoni Bowcher PROPOSAL
Antonio L RoysterSpainIvan Magalhaes UNQUALIFIED
Salvatore Q DilliardItalyAmy Elsner UNQUALIFIED
Kadeem G OldroydJapanOnyama Limba NEGOTIATION
Morrow M DilliardAustraliaBernardo Dominic QUALIFIED
Jeanfrancois Z VenereUnited KingdomOnyama Limba NEGOTIATION
Silvio A NickaJapanXuxue Feng NEGOTIATION
Greenwood P AmigonFranceAsiya Javayant PROPOSAL
Costa R GarufiAustraliaAsiya Javayant QUALIFIED
Frozen Columns
Name
Leja A Ruta
Johnson D Foller
Darci S Rulapaugh
Smith M Briddick
Adams M Caudy
Clifford C Figeroa
Ashley I Malet
Isabel P Schemmer
David O Malet
Leja W Vocelka
Jones U Darakjy
Ashley H Briddick
Juan X Kusko
Johnson O Chui
Smith G Inouye
Ricardo W Rim
Arvin X Bolognia
Misaki H Garufi
Faith F Kusko
Arvin V Garufi
Clifford K Wieser
Alejandro Y Royster
Claire U Gillian
Stacey P Whobrey
Silvio W Malet
Leon H Paprocki
Octavia Z Kusko
Rodrigues D Caldarera
Juan W Rim
Darci X Amigon
Jefferson O Gillian
Kadeem Y Chui
Octavia Q Waycott
James Y Rulapaugh
Munro K Venere
Jefferson K Dilliard
Johnson K Kusko
Nicolas E Marrier
Julie P Royster
Stacey E Wieser
Emily M Vocelka
Greenwood A Figeroa
Leja H Caudy
Sinclair A Vocelka
Adams Q Inouye
Claire R Bolognia
Julie K Royster
Arvin A Waycott
Deepesh F Doe
Misaki Z Garufi
IdCountryDate
1000Japan2026-03-21
1001Germany2026-03-25
1002India2026-03-24
1003India2026-04-04
1004Italy2026-03-12
1005Spain2026-03-27
1006Russia2026-03-31
1007Spain2026-04-05
1008France2026-03-10
1009France2026-03-29
1010Germany2026-03-20
1011Spain2026-03-20
1012Japan2026-03-14
1013Canada2026-03-14
1014Argentina2026-04-06
1015Japan2026-03-09
1016Argentina2026-03-17
1017Australia2026-04-01
1018Germany2026-03-31
1019Russia2026-03-26
1020United Kingdom2026-03-18
1021United Kingdom2026-04-06
1022Australia2026-03-29
1023Japan2026-03-19
1024Argentina2026-03-13
1025Spain2026-03-23
1026Spain2026-03-23
1027Germany2026-03-11
1028Italy2026-03-23
1029Russia2026-03-11
1030United Kingdom2026-03-17
1031Brazil2026-03-27
1032India2026-03-21
1033India2026-03-15
1034France2026-03-11
1035Japan2026-03-29
1036Spain2026-03-18
1037Italy2026-03-14
1038Spain2026-03-10
1039Russia2026-03-29
1040Germany2026-04-03
1041Spain2026-03-31
1042Brazil2026-03-14
1043Spain2026-03-30
1044Argentina2026-03-16
1045Australia2026-03-27
1046Australia2026-03-20
1047Canada2026-03-19
1048Australia2026-03-20
1049Russia2026-03-28

On-Demand Data

NameIdCountryDate
Murillo K Sergi1000Argentina2026-03-24
Julie X Schemmer1001Australia2026-03-15
Jennifer L Briddick1002Argentina2026-03-14
Darci W Saylors1003Argentina2026-04-06
Cody H Gaucho1004Italy2026-04-05
Tony X Marrier1005Brazil2026-04-01
Tony M Butt1006Argentina2026-03-15
Francesco H Maclead1007Germany2026-03-13
Tony C Stockham1008Germany2026-03-17
Kaitlin Q Bowley1009Australia2026-03-22
Jeanfrancois J Iturbide1010United Kingdom2026-04-04
Ricardo K Glick1011Germany2026-03-14
Mayumi H Caldarera1012Spain2026-03-31
Ashley S Venere1013Australia2026-03-22
Emily C Maclead1014Spain2026-03-16
Morrow Q Chui1015India2026-04-02
Mujtaba T Caudy1016Japan2026-03-16
Maria B Campain1017Brazil2026-03-21
Jeanfrancois C Bolognia1018Argentina2026-04-01
Wickens S Gaucho1019France2026-03-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson K MarrierBrazilStephen Shaw NEW
Alejandro H FlosiCanadaElwin Sharvill UNQUALIFIED
Aruna M NickaRussiaElwin Sharvill NEW
Ivar J VenereCanadaAsiya Javayant RENEWAL
Leon P MacleadItalyAmy Elsner NEW
Jefferson X MarrierRussiaAsiya Javayant NEW
Leja O FigeroaItalyIoni Bowcher NEW
Claire F FlosiGermanyIoni Bowcher NEGOTIATION
Antonio X RimRussiaAnna Fali NEW
Aditya E PoquetteArgentinaBernardo Dominic NEGOTIATION
Murillo B PaprockiUnited KingdomStephen Shaw NEGOTIATION
Arvin A BologniaRussiaAmy Elsner NEW
Kadeem I RutaJapanOnyama Limba NEGOTIATION
Clifford Z CampainItalyIoni Bowcher NEGOTIATION
Aruna A MaletIndiaXuxue Feng UNQUALIFIED
James R ChuiGermanyOnyama Limba PROPOSAL
Cody T SaylorsFranceOnyama Limba UNQUALIFIED
Leja J GarufiJapanIoni Bowcher NEGOTIATION
Jennifer C PerinArgentinaAsiya Javayant QUALIFIED
Claire P FlosiItalyIoni Bowcher UNQUALIFIED
Kaitlin N GillianArgentinaAsiya Javayant NEGOTIATION
Mayumi L WhobreyFranceAnna Fali UNQUALIFIED
Johnson R StensethGermanyElwin Sharvill QUALIFIED
Octavia Q BologniaRussiaBernardo Dominic NEW
Johnson J ShinkoUnited KingdomIoni Bowcher PROPOSAL
Jones R SaylorsSpainIvan Magalhaes RENEWAL
Leja H OstroskyUnited KingdomStephen Shaw RENEWAL
Isabel E MorascaJapanIoni Bowcher NEW
Isabel D InouyeJapanOnyama Limba RENEWAL
Rodrigues U TollnerItalyElwin Sharvill PROPOSAL
Ashley Y InouyeBrazilXuxue Feng PROPOSAL
Morrow Q MorascaRussiaAnna Fali PROPOSAL
Arvin C PoquetteIndiaOnyama Limba PROPOSAL
Jennifer Z KuskoSpainOnyama Limba RENEWAL
Rodrigues E BologniaIndiaStephen Shaw QUALIFIED
Jennifer E VenereArgentinaIvan Magalhaes NEGOTIATION
Smith W MaletCanadaOnyama Limba UNQUALIFIED
Alejandro A ButtArgentinaOnyama Limba NEGOTIATION
Tony J GauchoCanadaAsiya Javayant NEGOTIATION
Morrow X NickaBrazilXuxue Feng RENEWAL

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