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
Clifford S NestleGermanyBernardo Dominic QUALIFIED
Rodrigues Q GauchoBrazilAmy Elsner UNQUALIFIED
Johnson B TollnerAustraliaBernardo Dominic PROPOSAL
Adams Y DoeArgentinaBernardo Dominic NEW
Costa H KuskoUnited KingdomIoni Bowcher PROPOSAL
Aruna R FollerSpainAmy Elsner RENEWAL
Izzy G StockhamIndiaAmy Elsner PROPOSAL
Ivar V IturbideItalyElwin Sharvill RENEWAL
Jennifer P PoquetteItalyOnyama Limba RENEWAL
Nicolas H VenereUnited KingdomIvan Magalhaes NEW
Aditya J PoquetteFranceIoni Bowcher RENEWAL
Salvatore I CaldareraIndiaXuxue Feng NEW
Jennifer K GillianCanadaBernardo Dominic QUALIFIED
Kaitlin L CaldareraCanadaIvan Magalhaes NEW
Maisha O RutaJapanIvan Magalhaes PROPOSAL
Salvatore X PoquetteCanadaIvan Magalhaes NEGOTIATION
Maria J AmigonBrazilIvan Magalhaes NEW
Arvin L KuskoJapanAmy Elsner RENEWAL
Tony N ChuiRussiaOnyama Limba UNQUALIFIED
Clifford N OstroskyCanadaAsiya Javayant PROPOSAL
Sinclair H FlosiIndiaAnna Fali QUALIFIED
Smith X GillianItalyXuxue Feng QUALIFIED
Wickens X PoquetteSpainAnna Fali RENEWAL
David A StockhamIndiaBernardo Dominic UNQUALIFIED
Faith S NestleArgentinaIoni Bowcher UNQUALIFIED
Smith R IturbideCanadaOnyama Limba PROPOSAL
Munro E ChuiIndiaIvan Magalhaes QUALIFIED
Adams H FollerItalyStephen Shaw PROPOSAL
Antonio D GillianCanadaIoni Bowcher NEW
Aruna B CaudyItalyIoni Bowcher NEGOTIATION
Murillo U InouyeArgentinaAmy Elsner RENEWAL
Morrow R BowleyBrazilStephen Shaw NEW
Stacey D InouyeGermanyElwin Sharvill NEW
Chavez T MaletAustraliaIoni Bowcher RENEWAL
Deepesh K GarufiRussiaAsiya Javayant RENEWAL
Greenwood O NickaSpainAsiya Javayant NEGOTIATION
Mujtaba X GarufiItalyAnna Fali NEGOTIATION
Octavia Z TollnerBrazilAsiya Javayant UNQUALIFIED
Wickens V OstroskySpainXuxue Feng PROPOSAL
Ivar R CaldareraFranceXuxue Feng UNQUALIFIED
Wickens V MaletIndiaElwin Sharvill NEW
Clifford I SlusarskiIndiaXuxue Feng RENEWAL
Darci R AmigonJapanElwin Sharvill QUALIFIED
Jones I WieserAustraliaBernardo Dominic UNQUALIFIED
Cody J DarakjyCanadaIvan Magalhaes UNQUALIFIED
Nicolas B RulapaughGermanyAmy Elsner NEW
Salvatore V WaycottGermanyElwin Sharvill QUALIFIED
Aika I KolmetzSpainElwin Sharvill UNQUALIFIED
Maria S NestleFranceAmy Elsner NEGOTIATION
Ivar V MacleadIndiaXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Izzy C FollerSpainOnyama Limba RENEWAL
Leon A VenereAustraliaBernardo Dominic QUALIFIED
Antonio L PaprockiBrazilElwin Sharvill PROPOSAL
Maisha S TollnerRussiaOnyama Limba NEW
James K SlusarskiIndiaStephen Shaw UNQUALIFIED
Tony L TollnerJapanAmy Elsner PROPOSAL
Nicolas W RulapaughCanadaIoni Bowcher NEGOTIATION
Cody N TollnerRussiaIoni Bowcher NEGOTIATION
Maisha U RimBrazilXuxue Feng PROPOSAL
Misaki J OstroskyGermanyStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James G FlosiSpain2026-05-20Chanay, Jeffrey A Esq UNQUALIFIED43Onyama Limba
1001Jones N MaletRussia2026-05-21Feiner Bros NEGOTIATION53Xuxue Feng
1002Ashley J FerenczBrazil2026-05-03Chapman, Ross E Esq PROPOSAL9Amy Elsner
1003Sinclair B MorascaArgentina2026-04-28Rangoni Of Florence QUALIFIED18Amy Elsner
1004Francesco U MaletArgentina2026-05-21Feltz Printing Service RENEWAL70Onyama Limba
1005Mujtaba S ShinkoArgentina2026-05-22King, Christopher A Esq NEW78Asiya Javayant
1006Ivar Q OstroskyJapan2026-05-08Commercial Press NEGOTIATION78Anna Fali
1007Octavia B GauchoJapan2026-05-12Truhlar And Truhlar Attys RENEWAL53Stephen Shaw
1008Tony H RulapaughFrance2026-05-07Rangoni Of Florence PROPOSAL97Asiya Javayant
1009Sinclair T KuskoFrance2026-05-13Feltz Printing Service NEW29Ivan Magalhaes
1010Adams C InouyeUnited Kingdom2026-05-01Dorl, James J Esq NEW43Amy Elsner
1011Wickens B CaldareraBrazil2026-04-29Benton, John B Jr UNQUALIFIED66Elwin Sharvill
1012Isabel N DilliardArgentina2026-05-22Buckley Miller Wright QUALIFIED34Bernardo Dominic
1013Tony Q CaldareraRussia2026-05-23Feltz Printing Service PROPOSAL6Asiya Javayant
1014Murillo B SergiGermany2026-04-29Chanay, Jeffrey A Esq NEGOTIATION99Asiya Javayant
1015Misaki L DilliardCanada2026-05-08Dorl, James J Esq PROPOSAL24Amy Elsner
1016Tony W RulapaughCanada2026-05-17Truhlar And Truhlar Attys NEW52Elwin Sharvill
1017Clifford J ChuiItaly2026-04-25Rangoni Of Florence PROPOSAL14Onyama Limba
1018Johnson Q VenereRussia2026-05-18Dorl, James J Esq PROPOSAL62Onyama Limba
1019Kaitlin N StensethUnited Kingdom2026-05-18Printing Dimensions RENEWAL12Ioni Bowcher
1020Stacey N WieserAustralia2026-04-26Morlong Associates NEGOTIATION66Xuxue Feng
1021Jefferson R PoquetteGermany2026-05-21Feltz Printing Service NEW38Onyama Limba
1022Izzy J TollnerUnited Kingdom2026-05-19King, Christopher A Esq UNQUALIFIED90Ivan Magalhaes
1023Julie J WaycottUnited Kingdom2026-05-01Printing Dimensions UNQUALIFIED99Onyama Limba
1024Clifford T MacleadSpain2026-05-17Rangoni Of Florence QUALIFIED68Amy Elsner
1025Morrow K GillianRussia2026-05-22Rousseaux, Michael Esq NEGOTIATION84Xuxue Feng
1026Antonio F PerinItaly2026-05-12Commercial Press PROPOSAL60Xuxue Feng
1027Misaki J FerenczJapan2026-05-02Printing Dimensions QUALIFIED22Onyama Limba
1028Claire Z CampainArgentina2026-04-24Chanay, Jeffrey A Esq NEGOTIATION28Asiya Javayant
1029Deepesh E OldroydUnited Kingdom2026-05-15Printing Dimensions RENEWAL91Ivan Magalhaes
1030Tony V KuskoArgentina2026-05-11Rousseaux, Michael Esq RENEWAL9Ivan Magalhaes
1031Antonio J SlusarskiAustralia2026-05-04Rousseaux, Michael Esq RENEWAL90Bernardo Dominic
1032Jeanfrancois R OstroskyAustralia2026-04-27Truhlar And Truhlar Attys UNQUALIFIED0Bernardo Dominic
1033Mujtaba C SergiAustralia2026-04-28Chanay, Jeffrey A Esq NEW52Onyama Limba
1034Stacey E MacleadAustralia2026-05-23Feltz Printing Service NEW67Bernardo Dominic
1035Silvio K GarufiItaly2026-05-12Dorl, James J Esq QUALIFIED12Amy Elsner
1036Maisha T ShinkoSpain2026-04-30Truhlar And Truhlar Attys UNQUALIFIED26Bernardo Dominic
1037Maisha O DarakjyArgentina2026-05-11Morlong Associates QUALIFIED89Stephen Shaw
1038Emily M PoquetteSpain2026-04-29King, Christopher A Esq NEW35Stephen Shaw
1039Silvio B MorascaArgentina2026-05-06Buckley Miller Wright NEGOTIATION59Xuxue Feng
1040Misaki V MarrierUnited Kingdom2026-05-22Rousseaux, Michael Esq RENEWAL22Asiya Javayant
1041Clifford W PaprockiFrance2026-05-10Chanay, Jeffrey A Esq RENEWAL65Amy Elsner
1042Octavia A GauchoIndia2026-05-02Printing Dimensions NEW55Stephen Shaw
1043Wickens I BologniaGermany2026-04-27Morlong Associates PROPOSAL25Ivan Magalhaes
1044Murillo X KuskoJapan2026-05-12Chapman, Ross E Esq NEW51Stephen Shaw
1045Maria I MarrierFrance2026-05-12Morlong Associates NEW70Ivan Magalhaes
1046Smith S VenereItaly2026-05-23Chapman, Ross E Esq UNQUALIFIED42Ioni Bowcher
1047Ivar T CampainCanada2026-04-28Feiner Bros QUALIFIED40Ioni Bowcher
1048Salvatore S NestleRussia2026-05-04Feiner Bros RENEWAL81Xuxue Feng
1049Chavez H KolmetzUnited Kingdom2026-05-20Chemel, James L Cpa PROPOSAL36Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Maria G SchemmerIndiaStephen Shaw QUALIFIED
Clifford G NestleUnited KingdomIoni Bowcher PROPOSAL
Nicolas R GillianFranceBernardo Dominic NEGOTIATION
Julie N KuskoCanadaOnyama Limba RENEWAL
Ricardo D VenereItalyIoni Bowcher RENEWAL
Misaki Y FollerJapanElwin Sharvill PROPOSAL
Jefferson V GarufiSpainBernardo Dominic QUALIFIED
Leon J SergiSpainAsiya Javayant NEW
Deepesh S OldroydRussiaAmy Elsner UNQUALIFIED
Aditya N NickaFranceElwin Sharvill UNQUALIFIED
Murillo H MorascaAustraliaAsiya Javayant NEW
Aika N ChuiBrazilXuxue Feng NEGOTIATION
Greenwood E GarufiGermanyElwin Sharvill QUALIFIED
Claire K VocelkaBrazilAsiya Javayant NEGOTIATION
Aditya C MorascaAustraliaIoni Bowcher UNQUALIFIED
Kadeem S RutaJapanOnyama Limba UNQUALIFIED
Munro O ChuiUnited KingdomIoni Bowcher PROPOSAL
Arvin J NickaJapanAmy Elsner PROPOSAL
Johnson S PerinJapanAmy Elsner QUALIFIED
Ivar F PerinItalyAmy Elsner QUALIFIED
Murillo S PaprockiRussiaOnyama Limba NEW
Arvin L InouyeJapanStephen Shaw PROPOSAL
Leon J GarufiItalyAnna Fali PROPOSAL
Misaki Y NestleJapanXuxue Feng QUALIFIED
Smith S WaycottCanadaBernardo Dominic PROPOSAL
Jennifer X RimJapanOnyama Limba NEGOTIATION
Arvin Q PaprockiFranceAsiya Javayant QUALIFIED
Izzy K CaldareraAustraliaIvan Magalhaes UNQUALIFIED
David C GlickJapanOnyama Limba QUALIFIED
Ricardo R IturbideCanadaOnyama Limba NEW
Misaki Q ButtJapanIoni Bowcher PROPOSAL
Kadeem Y MacleadIndiaAsiya Javayant NEW
Misaki U ShinkoIndiaXuxue Feng QUALIFIED
Kadeem Y GauchoFranceXuxue Feng PROPOSAL
Rodrigues E OldroydGermanyAnna Fali UNQUALIFIED
Clifford Z AmigonItalyAmy Elsner PROPOSAL
Kaitlin M CampainCanadaIvan Magalhaes NEW
Ricardo X SlusarskiIndiaAnna Fali NEGOTIATION
Jennifer R FerenczIndiaBernardo Dominic NEGOTIATION
Salvatore E GarufiFranceStephen Shaw PROPOSAL
Alejandro P GlickRussiaIvan Magalhaes QUALIFIED
Costa A RimFranceIvan Magalhaes NEGOTIATION
Stacey Y CaldareraFranceIvan Magalhaes NEW
Julie X OldroydSpainBernardo Dominic RENEWAL
Alejandro V MarrierCanadaIoni Bowcher NEGOTIATION
Aika M RimItalyBernardo Dominic RENEWAL
Octavia D WieserBrazilIoni Bowcher RENEWAL
Silvio F SergiSpainXuxue Feng NEGOTIATION
Rodrigues T PoquetteUnited KingdomElwin Sharvill UNQUALIFIED
Ricardo S PerinGermanyAnna Fali RENEWAL
Frozen Columns
Name
Emily Z Albares
Faith Z Doe
Jennifer R Flosi
Octavia Z Nestle
Aika W Malet
Cody V Briddick
Alejandro Q Schemmer
Mayumi R Dilliard
Isabel X Shinko
Stacey K Stockham
Smith H Chui
Deepesh M Poquette
Stacey Z Maclead
Stacey M Waycott
Aika T Oldroyd
Isabel F Whobrey
Ashley Q Whobrey
Aruna M Sergi
Clifford J Campain
Maisha I Ostrosky
Salvatore A Rulapaugh
Costa W Butt
Salvatore W Marrier
Nicolas P Vocelka
Leon W Garufi
Morrow L Gaucho
Ricardo R Whobrey
Aruna K Dilliard
Kaitlin K Oldroyd
Adams D Amigon
Julie N Amigon
Ashley B Kusko
Francesco G Maclead
Munro C Malet
Murillo O Amigon
Jeanfrancois Q Tollner
Faith N Albares
Isabel K Foller
Morrow D Perin
Mujtaba O Ferencz
Julie B Venere
Faith L Doe
Maria V Nicka
Claire S Oldroyd
Nicolas E Amigon
Jones U Ostrosky
Francesco V Wieser
Maria R Malet
Isabel O Chui
Deepesh N Kusko
IdCountryDate
1000Argentina2026-05-16
1001Italy2026-05-22
1002India2026-05-18
1003Canada2026-04-29
1004Germany2026-05-12
1005Spain2026-05-07
1006France2026-04-29
1007Spain2026-04-24
1008United Kingdom2026-05-04
1009Russia2026-05-21
1010Italy2026-05-12
1011Brazil2026-05-08
1012Russia2026-05-10
1013Japan2026-05-20
1014Japan2026-05-17
1015Argentina2026-05-20
1016Russia2026-05-04
1017Spain2026-05-12
1018Spain2026-05-18
1019Japan2026-04-28
1020Canada2026-05-11
1021Russia2026-05-04
1022Brazil2026-05-16
1023Spain2026-05-02
1024India2026-04-29
1025Japan2026-05-21
1026Japan2026-05-12
1027Brazil2026-05-21
1028Japan2026-05-02
1029Argentina2026-04-29
1030Canada2026-05-19
1031Russia2026-05-10
1032Russia2026-05-11
1033Spain2026-05-12
1034India2026-04-29
1035Germany2026-05-20
1036Spain2026-04-24
1037Germany2026-05-22
1038Argentina2026-04-29
1039France2026-05-17
1040Japan2026-05-11
1041Argentina2026-05-15
1042Canada2026-05-06
1043Russia2026-05-06
1044India2026-05-21
1045Canada2026-04-26
1046Australia2026-05-12
1047Argentina2026-05-19
1048Italy2026-04-29
1049Argentina2026-04-25

On-Demand Data

NameIdCountryDate
Maisha S Waycott1000Brazil2026-05-17
Aika G Ruta1001Spain2026-05-08
Emily B Maclead1002India2026-05-01
Leon Z Paprocki1003Canada2026-05-23
David J Vocelka1004India2026-04-28
Maisha W Amigon1005India2026-05-08
Chavez I Foller1006Argentina2026-05-16
Antonio S Bolognia1007United Kingdom2026-05-14
Emily A Malet1008Spain2026-05-02
Isabel U Gaucho1009Argentina2026-05-09
Chavez J Morasca1010Canada2026-05-04
Ricardo C Schemmer1011Australia2026-05-20
Clifford L Whobrey1012France2026-04-25
Faith E Sergi1013Italy2026-05-19
Mujtaba H Gaucho1014France2026-05-18
Claire P Garufi1015Japan2026-05-19
Jeanfrancois O Paprocki1016United Kingdom2026-05-03
Emily H Kolmetz1017Germany2026-05-02
Nicolas N Dilliard1018Italy2026-04-27
Leon T Tollner1019Brazil2026-05-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo J FlosiItalyStephen Shaw RENEWAL
Maria O MacleadItalyOnyama Limba NEW
Arvin J FigeroaGermanyAnna Fali UNQUALIFIED
Johnson U VocelkaItalyBernardo Dominic NEW
Julie D WieserJapanAsiya Javayant PROPOSAL
Claire V RoysterFranceXuxue Feng NEGOTIATION
Emily Y InouyeJapanIvan Magalhaes PROPOSAL
Jennifer A PoquetteCanadaIvan Magalhaes NEGOTIATION
Jones V BriddickItalyAmy Elsner QUALIFIED
Arvin I OldroydCanadaStephen Shaw NEGOTIATION
Jefferson R GlickGermanyAsiya Javayant RENEWAL
Izzy C ShinkoBrazilStephen Shaw RENEWAL
Ashley W FigeroaUnited KingdomStephen Shaw NEGOTIATION
Smith Z WhobreyAustraliaAsiya Javayant UNQUALIFIED
Morrow C CampainGermanyAmy Elsner UNQUALIFIED
Clifford O RutaSpainBernardo Dominic UNQUALIFIED
Kadeem J WhobreyIndiaElwin Sharvill PROPOSAL
Sinclair D FlosiIndiaOnyama Limba UNQUALIFIED
Leja U MarrierAustraliaIoni Bowcher NEGOTIATION
Emily T ButtAustraliaOnyama Limba PROPOSAL
Francesco V ShinkoRussiaXuxue Feng NEGOTIATION
Adams I SaylorsItalyBernardo Dominic UNQUALIFIED
Ricardo G IturbideSpainAmy Elsner PROPOSAL
Sinclair T RutaArgentinaAmy Elsner NEW
Ashley E WieserSpainIoni Bowcher PROPOSAL
Jefferson O PaprockiFranceAnna Fali QUALIFIED
Wickens W FigeroaSpainOnyama Limba RENEWAL
Izzy W OstroskyIndiaIvan Magalhaes UNQUALIFIED
Juan G AmigonItalyXuxue Feng UNQUALIFIED
Mayumi K StockhamCanadaAnna Fali UNQUALIFIED
Arvin V GauchoFranceBernardo Dominic NEW
Mujtaba E IturbideFranceAsiya Javayant UNQUALIFIED
Sinclair A ShinkoRussiaOnyama Limba UNQUALIFIED
Claire A KolmetzSpainIoni Bowcher UNQUALIFIED
Cody R AmigonJapanXuxue Feng NEW
Tony A PoquetteRussiaBernardo Dominic NEW
Kaitlin X NickaAustraliaIvan Magalhaes PROPOSAL
Aditya G SchemmerIndiaIvan Magalhaes NEW
Sinclair R CaudyArgentinaAsiya Javayant QUALIFIED
Jefferson N SergiGermanyElwin Sharvill 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.