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
Ivar N PerinItalyXuxue Feng NEGOTIATION
Cody B RulapaughArgentinaStephen Shaw UNQUALIFIED
Ashley O RutaRussiaIoni Bowcher PROPOSAL
Aditya Z VocelkaArgentinaElwin Sharvill NEGOTIATION
Sinclair O MaletUnited KingdomIvan Magalhaes QUALIFIED
Darci C CampainUnited KingdomAsiya Javayant UNQUALIFIED
Munro M RulapaughAustraliaStephen Shaw PROPOSAL
Greenwood M NickaBrazilIoni Bowcher NEW
Salvatore P GauchoItalyXuxue Feng NEW
Cody L AmigonFranceAnna Fali QUALIFIED
Izzy B GillianItalyIoni Bowcher QUALIFIED
Leja E AlbaresUnited KingdomXuxue Feng QUALIFIED
Jefferson O FigeroaAustraliaElwin Sharvill QUALIFIED
Maria S WhobreyItalyOnyama Limba UNQUALIFIED
Julie I StockhamJapanBernardo Dominic UNQUALIFIED
Izzy Z RoysterFranceOnyama Limba RENEWAL
Octavia M RimItalyAmy Elsner RENEWAL
Greenwood W SaylorsSpainAnna Fali NEGOTIATION
Stacey N StensethIndiaAmy Elsner PROPOSAL
Isabel Z OstroskyArgentinaAsiya Javayant NEW
Darci U CaudyUnited KingdomIoni Bowcher RENEWAL
Juan S KolmetzUnited KingdomOnyama Limba QUALIFIED
Julie O FlosiBrazilAmy Elsner UNQUALIFIED
Jeanfrancois U DoeUnited KingdomAsiya Javayant RENEWAL
Arvin X WhobreyUnited KingdomAsiya Javayant RENEWAL
Jefferson E GauchoArgentinaIoni Bowcher PROPOSAL
Ivar L NestleFranceXuxue Feng NEW
Stacey D FollerSpainAmy Elsner NEGOTIATION
Jennifer Z MaletIndiaIoni Bowcher QUALIFIED
Smith F GauchoRussiaOnyama Limba NEW
Deepesh P WaycottSpainXuxue Feng QUALIFIED
Emily P VenereBrazilAnna Fali NEGOTIATION
Adams E StockhamCanadaElwin Sharvill NEW
Kaitlin Z RoysterIndiaIoni Bowcher NEW
Kaitlin T VenereRussiaStephen Shaw RENEWAL
Morrow Z RoysterAustraliaElwin Sharvill NEW
David S ButtCanadaElwin Sharvill NEGOTIATION
Greenwood Q SaylorsBrazilElwin Sharvill UNQUALIFIED
David C ButtSpainElwin Sharvill NEW
Mujtaba F OstroskyUnited KingdomBernardo Dominic UNQUALIFIED
Aditya S ChuiBrazilAmy Elsner NEW
Leja Q WaycottRussiaIvan Magalhaes NEW
Chavez F DilliardBrazilIvan Magalhaes QUALIFIED
Aika N MacleadJapanOnyama Limba UNQUALIFIED
Mayumi X GillianJapanBernardo Dominic PROPOSAL
Mujtaba R NickaUnited KingdomXuxue Feng PROPOSAL
Julie P ChuiRussiaIvan Magalhaes NEW
Sinclair H FollerJapanAsiya Javayant RENEWAL
Maria R NickaCanadaElwin Sharvill NEW
Deepesh G MarrierUnited KingdomElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Adams D SlusarskiCanadaIoni Bowcher NEGOTIATION
Stacey S OstroskyFranceElwin Sharvill UNQUALIFIED
David N InouyeUnited KingdomAsiya Javayant RENEWAL
Kaitlin D MorascaSpainIoni Bowcher PROPOSAL
Johnson D DarakjyIndiaAmy Elsner QUALIFIED
Juan T MaletGermanyElwin Sharvill UNQUALIFIED
Leon I GarufiSpainAmy Elsner NEGOTIATION
Adams A PerinArgentinaStephen Shaw UNQUALIFIED
Adams T PoquetteSpainStephen Shaw QUALIFIED
Kaitlin K OstroskyRussiaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia K AlbaresGermany2026-06-11Feltz Printing Service RENEWAL38Elwin Sharvill
1001Antonio W WieserGermany2026-05-21Buckley Miller Wright QUALIFIED19Asiya Javayant
1002Jeanfrancois N NickaIndia2026-05-23Rangoni Of Florence NEGOTIATION85Ivan Magalhaes
1003Jefferson T GauchoUnited Kingdom2026-05-31Buckley Miller Wright NEGOTIATION47Amy Elsner
1004Emily W IturbideAustralia2026-05-28Commercial Press RENEWAL64Anna Fali
1005Mujtaba R CaudyAustralia2026-05-18Morlong Associates NEW87Amy Elsner
1006Ricardo F SlusarskiSpain2026-05-19Morlong Associates QUALIFIED69Amy Elsner
1007Claire T RutaArgentina2026-05-29Rousseaux, Michael Esq QUALIFIED89Ivan Magalhaes
1008Leon Z ChuiBrazil2026-05-31Feltz Printing Service NEGOTIATION38Asiya Javayant
1009David D IturbideIndia2026-05-18Chemel, James L Cpa NEW4Bernardo Dominic
1010Darci L SchemmerGermany2026-06-08Feltz Printing Service QUALIFIED78Asiya Javayant
1011Octavia I BologniaJapan2026-06-03Chapman, Ross E Esq UNQUALIFIED57Stephen Shaw
1012Claire W FollerSpain2026-05-27Morlong Associates NEGOTIATION36Ivan Magalhaes
1013Misaki W ChuiItaly2026-06-04Morlong Associates RENEWAL57Stephen Shaw
1014Octavia Z MaletAustralia2026-05-23Rousseaux, Michael Esq UNQUALIFIED38Onyama Limba
1015James I RulapaughBrazil2026-06-11Chemel, James L Cpa RENEWAL23Xuxue Feng
1016Sinclair R StensethSpain2026-06-11Buckley Miller Wright UNQUALIFIED81Bernardo Dominic
1017Leon G VenereAustralia2026-05-23Commercial Press QUALIFIED10Ioni Bowcher
1018Darci F GarufiAustralia2026-06-06Truhlar And Truhlar Attys NEGOTIATION64Elwin Sharvill
1019Claire Y VenereBrazil2026-05-17Printing Dimensions RENEWAL0Anna Fali
1020Francesco I NickaArgentina2026-06-13Rangoni Of Florence NEGOTIATION50Xuxue Feng
1021Murillo D FlosiAustralia2026-06-11Morlong Associates NEGOTIATION60Anna Fali
1022Adams O FlosiCanada2026-05-26King, Christopher A Esq RENEWAL39Elwin Sharvill
1023Jennifer Y PoquetteGermany2026-05-18Benton, John B Jr UNQUALIFIED82Anna Fali
1024Arvin W RimRussia2026-06-01Morlong Associates NEGOTIATION9Onyama Limba
1025Smith W ShinkoFrance2026-05-18Chapman, Ross E Esq NEGOTIATION24Amy Elsner
1026Kaitlin V DoeSpain2026-06-03Benton, John B Jr NEW22Bernardo Dominic
1027Arvin M AmigonUnited Kingdom2026-05-31Benton, John B Jr NEW80Anna Fali
1028Claire Q KolmetzBrazil2026-05-31Feltz Printing Service RENEWAL6Stephen Shaw
1029Chavez C CaudyCanada2026-05-31Buckley Miller Wright RENEWAL24Bernardo Dominic
1030Wickens N InouyeAustralia2026-05-19King, Christopher A Esq PROPOSAL28Stephen Shaw
1031Jones W WieserJapan2026-06-09Feltz Printing Service UNQUALIFIED42Onyama Limba
1032Sinclair Z RulapaughFrance2026-06-03Morlong Associates QUALIFIED84Amy Elsner
1033Clifford D DarakjyBrazil2026-06-13Rousseaux, Michael Esq NEGOTIATION65Anna Fali
1034Tony U SlusarskiFrance2026-05-27Feiner Bros PROPOSAL49Onyama Limba
1035Alejandro N AmigonCanada2026-06-05Dorl, James J Esq NEW2Ioni Bowcher
1036Leon U VocelkaSpain2026-05-19Morlong Associates QUALIFIED68Ivan Magalhaes
1037Antonio J WieserSpain2026-06-13Chanay, Jeffrey A Esq NEW33Bernardo Dominic
1038Leja R RoysterIndia2026-06-03Morlong Associates QUALIFIED41Amy Elsner
1039Octavia I TollnerIndia2026-05-16Printing Dimensions NEGOTIATION11Ioni Bowcher
1040Costa B GauchoSpain2026-06-09Commercial Press NEW84Ioni Bowcher
1041Smith A DarakjyFrance2026-06-02Chanay, Jeffrey A Esq NEW84Elwin Sharvill
1042Antonio I VenereGermany2026-05-28Benton, John B Jr RENEWAL44Ioni Bowcher
1043Morrow Q NickaArgentina2026-06-07Truhlar And Truhlar Attys QUALIFIED72Ivan Magalhaes
1044Antonio D WieserSpain2026-06-13Feltz Printing Service PROPOSAL89Amy Elsner
1045Arvin N RulapaughJapan2026-05-29Printing Dimensions NEW31Elwin Sharvill
1046Kaitlin J FigeroaSpain2026-05-19Rousseaux, Michael Esq QUALIFIED58Ivan Magalhaes
1047Costa N OstroskyFrance2026-05-20Benton, John B Jr UNQUALIFIED15Bernardo Dominic
1048Jefferson Y BriddickBrazil2026-06-09Rousseaux, Michael Esq NEW27Xuxue Feng
1049Antonio Q ShinkoCanada2026-06-03Rousseaux, Michael Esq PROPOSAL5Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Stacey J FigeroaArgentinaStephen Shaw RENEWAL
James X TollnerAustraliaIvan Magalhaes QUALIFIED
Francesco A MacleadItalyAsiya Javayant PROPOSAL
Tony P CaudyJapanBernardo Dominic UNQUALIFIED
Leja Y GauchoGermanyAsiya Javayant QUALIFIED
Jennifer J BriddickUnited KingdomIoni Bowcher QUALIFIED
Ricardo Z SaylorsFranceXuxue Feng UNQUALIFIED
Isabel Z MacleadFranceXuxue Feng NEGOTIATION
Greenwood U CaudyJapanStephen Shaw PROPOSAL
Alejandro K VenereSpainAmy Elsner RENEWAL
Leja M InouyeItalyStephen Shaw UNQUALIFIED
Rodrigues B GlickSpainStephen Shaw UNQUALIFIED
Francesco K GlickAustraliaBernardo Dominic NEGOTIATION
Alejandro V PoquetteIndiaXuxue Feng NEW
Darci H MaletFranceAnna Fali NEW
Adams N SergiGermanyAsiya Javayant NEGOTIATION
Ivar X GarufiJapanStephen Shaw NEGOTIATION
Adams W AlbaresRussiaOnyama Limba NEGOTIATION
Jennifer J FerenczUnited KingdomOnyama Limba NEGOTIATION
Alejandro A BriddickSpainIoni Bowcher QUALIFIED
Misaki J DoeJapanBernardo Dominic RENEWAL
Emily H PerinAustraliaAnna Fali UNQUALIFIED
Darci V FerenczItalyStephen Shaw PROPOSAL
Murillo R CaudyRussiaIoni Bowcher RENEWAL
Jefferson R DoeUnited KingdomAnna Fali NEW
Faith Y PerinAustraliaElwin Sharvill QUALIFIED
Darci I AmigonBrazilStephen Shaw NEW
Clifford Y PaprockiItalyAmy Elsner RENEWAL
Clifford P WieserFranceBernardo Dominic UNQUALIFIED
Kaitlin N InouyeGermanyStephen Shaw RENEWAL
Juan P VocelkaJapanAnna Fali NEGOTIATION
Emily R WhobreyCanadaAmy Elsner NEW
Nicolas K SaylorsBrazilIoni Bowcher RENEWAL
Alejandro Z ChuiIndiaAnna Fali NEW
Julie W ChuiRussiaBernardo Dominic RENEWAL
Sinclair J MacleadBrazilElwin Sharvill NEW
Aruna O IturbideBrazilIvan Magalhaes NEW
Nicolas I MacleadSpainIvan Magalhaes NEGOTIATION
Cody X SergiFranceBernardo Dominic PROPOSAL
Chavez F RoysterItalyElwin Sharvill PROPOSAL
Jones K AlbaresArgentinaStephen Shaw QUALIFIED
Cody L WhobreyFranceAmy Elsner UNQUALIFIED
Antonio H CaudyBrazilBernardo Dominic PROPOSAL
Jennifer P RulapaughArgentinaAsiya Javayant NEGOTIATION
Deepesh H FerenczItalyBernardo Dominic NEW
Morrow G CaudyArgentinaXuxue Feng NEW
Kadeem J RimCanadaAmy Elsner RENEWAL
Ashley W MaletArgentinaAsiya Javayant NEGOTIATION
Nicolas Z RulapaughBrazilBernardo Dominic RENEWAL
Juan M VocelkaSpainAsiya Javayant RENEWAL
Frozen Columns
Name
Octavia I Gillian
Munro G Albares
Chavez X Kolmetz
Johnson O Dilliard
Costa V Garufi
Tony S Oldroyd
David M Kusko
Izzy X Bowley
Jeanfrancois F Rim
Kaitlin E Perin
Silvio E Foller
Claire Z Vocelka
Nicolas J Butt
Clifford J Dilliard
Izzy B Stockham
David T Darakjy
Aruna T Maclead
Adams P Maclead
Darci N Whobrey
Adams V Saylors
Mayumi O Sergi
Nicolas I Bowley
Jeanfrancois T Dilliard
Munro P Gaucho
Wickens D Garufi
Stacey K Figeroa
Antonio A Wieser
Kaitlin Q Venere
Misaki O Albares
Arvin C Malet
Aditya E Maclead
Rodrigues E Rim
Greenwood B Rim
Wickens U Ruta
Johnson S Venere
Morrow V Maclead
Greenwood B Venere
Darci R Bowley
Clifford P Vocelka
Francesco K Marrier
Darci O Rulapaugh
Juan W Ruta
Isabel Q Saylors
Cody U Nicka
Sinclair M Schemmer
Darci Z Bolognia
Claire B Gaucho
Munro Q Vocelka
Costa G Inouye
Mujtaba F Gillian
IdCountryDate
1000Australia2026-06-09
1001France2026-05-29
1002France2026-06-08
1003India2026-06-08
1004United Kingdom2026-06-06
1005Brazil2026-06-04
1006United Kingdom2026-06-10
1007Argentina2026-05-27
1008Brazil2026-06-03
1009France2026-05-15
1010Russia2026-05-22
1011Australia2026-05-24
1012Italy2026-06-03
1013Japan2026-05-26
1014Argentina2026-05-16
1015Argentina2026-05-24
1016Japan2026-05-26
1017Argentina2026-06-13
1018Japan2026-05-18
1019United Kingdom2026-05-27
1020Brazil2026-05-26
1021Brazil2026-05-15
1022Brazil2026-06-09
1023Spain2026-06-06
1024Italy2026-06-02
1025Canada2026-05-29
1026Australia2026-06-08
1027India2026-06-11
1028Canada2026-05-22
1029Italy2026-05-31
1030Brazil2026-05-15
1031India2026-06-07
1032Russia2026-05-23
1033India2026-05-27
1034Argentina2026-05-24
1035Italy2026-06-13
1036Italy2026-05-16
1037Canada2026-06-05
1038France2026-05-22
1039India2026-05-18
1040Australia2026-06-03
1041Argentina2026-05-26
1042Spain2026-06-02
1043Argentina2026-06-10
1044Argentina2026-06-10
1045France2026-05-31
1046India2026-05-18
1047Italy2026-06-12
1048Italy2026-06-01
1049Italy2026-05-17

On-Demand Data

NameIdCountryDate
Chavez D Bolognia1000Argentina2026-06-02
Aditya A Gillian1001Italy2026-05-15
Leon Z Briddick1002Brazil2026-05-20
Clifford G Dilliard1003Canada2026-06-08
Silvio W Stockham1004Canada2026-06-02
Claire R Slusarski1005Italy2026-05-19
Jeanfrancois W Caudy1006Italy2026-06-13
Cody D Saylors1007United Kingdom2026-05-18
Claire C Dilliard1008Brazil2026-06-06
James Q Venere1009Japan2026-05-30
Ricardo V Flosi1010Russia2026-05-20
Ivar C Poquette1011Canada2026-05-18
Julie T Kolmetz1012Canada2026-06-10
Leon V Gaucho1013India2026-05-28
Antonio U Gaucho1014United Kingdom2026-05-16
Rodrigues N Gaucho1015Brazil2026-05-16
Mujtaba X Kusko1016Spain2026-06-12
Nicolas S Maclead1017Russia2026-05-28
Cody B Kusko1018Argentina2026-05-27
Clifford R Malet1019Germany2026-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro E TollnerArgentinaAmy Elsner NEW
Clifford A GarufiBrazilOnyama Limba PROPOSAL
Deepesh R GlickBrazilBernardo Dominic NEGOTIATION
Faith R StockhamBrazilXuxue Feng RENEWAL
Stacey U MaletItalyStephen Shaw QUALIFIED
Francesco P StensethCanadaBernardo Dominic RENEWAL
Ricardo N ShinkoSpainAmy Elsner UNQUALIFIED
Darci F ButtArgentinaAsiya Javayant RENEWAL
Munro S SaylorsSpainAmy Elsner UNQUALIFIED
Sinclair O IturbideSpainAnna Fali RENEWAL
Wickens Q BowleyBrazilAsiya Javayant QUALIFIED
Misaki C FollerAustraliaIoni Bowcher UNQUALIFIED
Kaitlin L SergiFranceAnna Fali PROPOSAL
Ashley I IturbideArgentinaIvan Magalhaes PROPOSAL
Mayumi N NestleCanadaIvan Magalhaes RENEWAL
Nicolas J CampainArgentinaXuxue Feng PROPOSAL
Salvatore V MacleadFranceIvan Magalhaes PROPOSAL
Leja R AlbaresAustraliaXuxue Feng QUALIFIED
Juan V StensethUnited KingdomAsiya Javayant NEGOTIATION
Chavez O KuskoAustraliaElwin Sharvill PROPOSAL
Jones D WaycottSpainElwin Sharvill NEGOTIATION
Stacey T RutaJapanAsiya Javayant QUALIFIED
Morrow Q VenereGermanyIoni Bowcher NEGOTIATION
Aditya Y OldroydIndiaElwin Sharvill UNQUALIFIED
Greenwood E AlbaresRussiaBernardo Dominic PROPOSAL
Munro I WaycottIndiaAsiya Javayant QUALIFIED
Maria L WieserUnited KingdomAmy Elsner UNQUALIFIED
Maisha P GlickRussiaIvan Magalhaes RENEWAL
Chavez L TollnerCanadaIoni Bowcher NEW
Stacey R RulapaughAustraliaOnyama Limba UNQUALIFIED
Tony G IturbideRussiaIvan Magalhaes PROPOSAL
Ricardo H FollerFranceElwin Sharvill RENEWAL
Costa Q FigeroaFranceOnyama Limba UNQUALIFIED
Aika O OldroydIndiaIvan Magalhaes NEW
Sinclair T TollnerCanadaElwin Sharvill RENEWAL
Nicolas P SchemmerGermanyStephen Shaw UNQUALIFIED
Jeanfrancois N ShinkoIndiaAnna Fali NEGOTIATION
Ashley F ChuiItalyXuxue Feng PROPOSAL
Mayumi P WaycottSpainStephen Shaw RENEWAL
Tony D BriddickAustraliaXuxue Feng NEGOTIATION

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