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
Leja K RoysterCanadaAmy Elsner QUALIFIED
Octavia I MaletBrazilIvan Magalhaes NEW
Clifford T CaudyAustraliaAsiya Javayant NEW
Clifford C FollerItalyIvan Magalhaes QUALIFIED
Francesco V CampainUnited KingdomIvan Magalhaes NEGOTIATION
Aruna Q GillianRussiaAnna Fali PROPOSAL
Arvin G StockhamCanadaIoni Bowcher RENEWAL
Antonio C PaprockiCanadaOnyama Limba NEW
David J MaletItalyIoni Bowcher QUALIFIED
Antonio L AlbaresArgentinaIvan Magalhaes RENEWAL
Sinclair L BriddickGermanyIvan Magalhaes QUALIFIED
James I FigeroaArgentinaElwin Sharvill NEGOTIATION
Adams C TollnerArgentinaIvan Magalhaes UNQUALIFIED
Mujtaba B AmigonBrazilBernardo Dominic NEGOTIATION
Jefferson Z SchemmerAustraliaElwin Sharvill NEGOTIATION
Mayumi G CampainJapanAnna Fali QUALIFIED
Jones B RutaRussiaAsiya Javayant UNQUALIFIED
Darci T KuskoFranceBernardo Dominic RENEWAL
Mujtaba I TollnerBrazilIoni Bowcher NEGOTIATION
Isabel J FollerJapanBernardo Dominic NEW
Ivar K WaycottBrazilIvan Magalhaes UNQUALIFIED
Johnson A MacleadArgentinaElwin Sharvill NEW
Nicolas T SergiRussiaAnna Fali NEW
Darci H CaldareraAustraliaElwin Sharvill NEGOTIATION
Faith R MacleadCanadaAsiya Javayant PROPOSAL
Kaitlin T GlickArgentinaStephen Shaw QUALIFIED
Izzy S GlickArgentinaBernardo Dominic UNQUALIFIED
Juan O SchemmerItalyIvan Magalhaes PROPOSAL
Emily O DarakjyArgentinaElwin Sharvill PROPOSAL
Claire G RutaJapanIoni Bowcher RENEWAL
Kadeem Y DoeGermanyAnna Fali NEW
Ivar S TollnerJapanIvan Magalhaes NEW
Arvin M NickaGermanyElwin Sharvill RENEWAL
Darci A PaprockiItalyAnna Fali QUALIFIED
Julie F AlbaresSpainIvan Magalhaes NEGOTIATION
Clifford Z NestleGermanyElwin Sharvill RENEWAL
David V SaylorsAustraliaStephen Shaw NEGOTIATION
Tony R WhobreyArgentinaAmy Elsner UNQUALIFIED
Misaki Y WhobreyIndiaIvan Magalhaes RENEWAL
Mujtaba E MaletAustraliaElwin Sharvill NEGOTIATION
Clifford Y VocelkaCanadaAsiya Javayant PROPOSAL
Mujtaba O KuskoAustraliaAmy Elsner QUALIFIED
Arvin O FigeroaSpainOnyama Limba RENEWAL
Misaki P NestleGermanyOnyama Limba NEW
Jeanfrancois N GillianSpainAsiya Javayant RENEWAL
Jones V ShinkoJapanXuxue Feng UNQUALIFIED
Julie D RutaGermanyOnyama Limba UNQUALIFIED
Munro W InouyeArgentinaElwin Sharvill RENEWAL
Cody V ShinkoArgentinaIvan Magalhaes NEW
Juan B AmigonBrazilAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aditya O DoeFranceElwin Sharvill RENEWAL
Morrow I PerinCanadaAnna Fali NEGOTIATION
Juan B StockhamIndiaAsiya Javayant UNQUALIFIED
Mayumi T OldroydAustraliaElwin Sharvill NEGOTIATION
James V VocelkaIndiaIvan Magalhaes UNQUALIFIED
Darci D KuskoAustraliaOnyama Limba UNQUALIFIED
Jones H GarufiAustraliaOnyama Limba NEGOTIATION
Juan I DilliardAustraliaElwin Sharvill QUALIFIED
Antonio K StockhamGermanyStephen Shaw QUALIFIED
Mayumi V PaprockiRussiaStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley A CaldareraSpain2026-02-17Chanay, Jeffrey A Esq RENEWAL47Onyama Limba
1001Ashley E GillianGermany2026-02-24King, Christopher A Esq NEGOTIATION75Ioni Bowcher
1002Jefferson X StensethAustralia2026-03-14Buckley Miller Wright NEGOTIATION74Ivan Magalhaes
1003Salvatore Z NestleItaly2026-02-23Printing Dimensions NEW43Stephen Shaw
1004Alejandro Q NickaGermany2026-02-19Truhlar And Truhlar Attys RENEWAL88Asiya Javayant
1005Aika O ButtSpain2026-02-25Chemel, James L Cpa QUALIFIED15Elwin Sharvill
1006Costa A RulapaughBrazil2026-03-02Chanay, Jeffrey A Esq NEGOTIATION87Amy Elsner
1007Nicolas D ShinkoBrazil2026-03-15Buckley Miller Wright PROPOSAL56Anna Fali
1008Mujtaba A RulapaughUnited Kingdom2026-03-13Feltz Printing Service PROPOSAL92Elwin Sharvill
1009Chavez E PoquetteIndia2026-03-10Truhlar And Truhlar Attys NEW44Elwin Sharvill
1010Tony K RoysterGermany2026-02-24Truhlar And Truhlar Attys PROPOSAL50Onyama Limba
1011Clifford Q WhobreySpain2026-03-01Truhlar And Truhlar Attys QUALIFIED53Anna Fali
1012Costa D MorascaBrazil2026-02-25Feltz Printing Service UNQUALIFIED13Asiya Javayant
1013Antonio R PerinArgentina2026-02-25Chapman, Ross E Esq UNQUALIFIED3Onyama Limba
1014James B OstroskyArgentina2026-03-07Rangoni Of Florence QUALIFIED68Xuxue Feng
1015Jeanfrancois R RoysterUnited Kingdom2026-03-17King, Christopher A Esq RENEWAL68Asiya Javayant
1016Maria K SergiSpain2026-03-15King, Christopher A Esq UNQUALIFIED98Anna Fali
1017Maria U RimCanada2026-03-15Commercial Press UNQUALIFIED67Elwin Sharvill
1018Ivar K CaudyCanada2026-02-27Rangoni Of Florence PROPOSAL34Onyama Limba
1019Maisha C DoeItaly2026-03-10Benton, John B Jr NEGOTIATION70Bernardo Dominic
1020Francesco O MacleadUnited Kingdom2026-03-06Rousseaux, Michael Esq UNQUALIFIED17Amy Elsner
1021Aruna M CaldareraBrazil2026-03-06Truhlar And Truhlar Attys NEW48Amy Elsner
1022Greenwood I FollerUnited Kingdom2026-02-19Rousseaux, Michael Esq QUALIFIED33Ivan Magalhaes
1023Ashley W MacleadJapan2026-03-02Dorl, James J Esq NEW93Onyama Limba
1024Munro K RutaItaly2026-02-22Dorl, James J Esq NEGOTIATION70Ioni Bowcher
1025Leja H GarufiArgentina2026-03-05Chanay, Jeffrey A Esq QUALIFIED32Asiya Javayant
1026Darci J OstroskyItaly2026-03-06Truhlar And Truhlar Attys QUALIFIED30Asiya Javayant
1027Stacey I RimFrance2026-03-02Printing Dimensions PROPOSAL77Ioni Bowcher
1028Silvio Y AmigonArgentina2026-03-15Dorl, James J Esq NEW24Ioni Bowcher
1029Aruna M RulapaughGermany2026-02-18Morlong Associates QUALIFIED55Ivan Magalhaes
1030James U DoeJapan2026-03-17Feltz Printing Service UNQUALIFIED75Anna Fali
1031Ashley Q SlusarskiAustralia2026-02-19Truhlar And Truhlar Attys QUALIFIED71Bernardo Dominic
1032Leja C RulapaughBrazil2026-02-22Chanay, Jeffrey A Esq NEW21Xuxue Feng
1033Johnson F BriddickAustralia2026-02-27Rangoni Of Florence NEW95Onyama Limba
1034Leon B BowleyJapan2026-03-01Chemel, James L Cpa NEW16Onyama Limba
1035Ricardo C MaletArgentina2026-03-04Dorl, James J Esq PROPOSAL63Elwin Sharvill
1036Adams H NestleCanada2026-03-14Dorl, James J Esq RENEWAL99Ivan Magalhaes
1037Kaitlin G BologniaIndia2026-03-15Rangoni Of Florence UNQUALIFIED23Elwin Sharvill
1038Ricardo N SlusarskiIndia2026-02-27Truhlar And Truhlar Attys NEGOTIATION6Ivan Magalhaes
1039Clifford P MaletCanada2026-03-16Chanay, Jeffrey A Esq NEW32Asiya Javayant
1040Tony J TollnerFrance2026-03-08Rousseaux, Michael Esq NEGOTIATION25Ioni Bowcher
1041Murillo T DarakjyJapan2026-03-10Dorl, James J Esq NEGOTIATION18Ioni Bowcher
1042Greenwood A CaudyIndia2026-02-22Feltz Printing Service NEW49Anna Fali
1043Faith T WhobreyCanada2026-02-21Buckley Miller Wright QUALIFIED12Amy Elsner
1044Maria Z ChuiFrance2026-02-25Chemel, James L Cpa RENEWAL9Asiya Javayant
1045Maisha Y RulapaughSpain2026-02-26Truhlar And Truhlar Attys RENEWAL80Anna Fali
1046Jefferson C DoeJapan2026-03-03Feltz Printing Service PROPOSAL31Ivan Magalhaes
1047Ivar S CaudySpain2026-02-16Rangoni Of Florence QUALIFIED81Asiya Javayant
1048Arvin V StockhamSpain2026-03-16Truhlar And Truhlar Attys RENEWAL73Onyama Limba
1049Chavez K SergiItaly2026-03-15Rousseaux, Michael Esq NEW55Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Wickens N ShinkoIndiaOnyama Limba PROPOSAL
Stacey A FlosiRussiaXuxue Feng NEGOTIATION
Mujtaba F AmigonFranceXuxue Feng UNQUALIFIED
David B RulapaughSpainIoni Bowcher QUALIFIED
James V BowleySpainElwin Sharvill PROPOSAL
Arvin K MorascaBrazilAsiya Javayant QUALIFIED
Greenwood P SaylorsAustraliaStephen Shaw NEW
Aditya Z FlosiRussiaIvan Magalhaes UNQUALIFIED
Morrow R OstroskyBrazilBernardo Dominic NEGOTIATION
Salvatore Z AmigonJapanStephen Shaw NEGOTIATION
Kadeem D IturbideFranceOnyama Limba NEW
Juan T OstroskyUnited KingdomIvan Magalhaes PROPOSAL
Murillo R RulapaughCanadaBernardo Dominic NEW
Jennifer P MarrierUnited KingdomAsiya Javayant UNQUALIFIED
Ivar R MaletIndiaStephen Shaw PROPOSAL
Morrow I AlbaresBrazilAmy Elsner RENEWAL
Maria M CaldareraJapanAmy Elsner RENEWAL
Morrow B RulapaughIndiaStephen Shaw PROPOSAL
Adams Q GillianJapanElwin Sharvill NEGOTIATION
Leja W ButtItalyAnna Fali PROPOSAL
Jones A OldroydFranceXuxue Feng UNQUALIFIED
Morrow Y FerenczIndiaStephen Shaw UNQUALIFIED
Cody J GauchoAustraliaAmy Elsner RENEWAL
Deepesh Y WieserItalyBernardo Dominic UNQUALIFIED
Morrow M WhobreyRussiaXuxue Feng NEGOTIATION
Jones K PoquetteItalyIoni Bowcher PROPOSAL
Jefferson Q FigeroaGermanyAmy Elsner NEW
Rodrigues Q RimRussiaElwin Sharvill PROPOSAL
Leon A PerinJapanOnyama Limba RENEWAL
Darci I CaldareraUnited KingdomStephen Shaw UNQUALIFIED
Misaki I GauchoUnited KingdomAsiya Javayant RENEWAL
Costa V ShinkoSpainOnyama Limba QUALIFIED
Adams A IturbideCanadaStephen Shaw RENEWAL
Smith A StensethIndiaAmy Elsner PROPOSAL
Wickens T NestleGermanyOnyama Limba NEW
Aruna Z WaycottAustraliaAnna Fali PROPOSAL
Deepesh X ChuiBrazilIoni Bowcher UNQUALIFIED
Chavez Z BriddickUnited KingdomAsiya Javayant NEGOTIATION
Jones K BowleyItalyIvan Magalhaes NEW
Aika S PoquetteItalyOnyama Limba RENEWAL
Mayumi Y PaprockiCanadaStephen Shaw NEGOTIATION
Aditya J BowleyAustraliaXuxue Feng NEW
Kadeem D PerinSpainAsiya Javayant PROPOSAL
Emily D ChuiAustraliaElwin Sharvill PROPOSAL
Izzy C GauchoIndiaElwin Sharvill RENEWAL
Claire B GarufiUnited KingdomIoni Bowcher QUALIFIED
Rodrigues E BologniaUnited KingdomBernardo Dominic NEGOTIATION
Johnson B WhobreyRussiaBernardo Dominic RENEWAL
Morrow K PerinGermanyXuxue Feng NEGOTIATION
Aruna N RulapaughArgentinaIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Arvin X Poquette
Munro F Bowley
Francesco M Iturbide
David D Foller
Mayumi K Ruta
Maria S Oldroyd
Octavia E Inouye
Misaki J Iturbide
Aika K Paprocki
James M Stockham
Stacey D Darakjy
James P Schemmer
Aruna U Morasca
Jennifer B Malet
Greenwood L Morasca
Maisha R Doe
Emily I Slusarski
Aika V Maclead
Murillo P Wieser
David M Malet
Julie L Figeroa
Emily K Tollner
Leja B Slusarski
Greenwood M Rulapaugh
Chavez E Venere
Alejandro S Poquette
Mujtaba E Caldarera
Kadeem N Bolognia
Morrow P Marrier
Sinclair C Bolognia
Darci V Rulapaugh
Misaki V Nicka
Faith J Nestle
Faith C Garufi
Murillo M Ferencz
Antonio M Briddick
Jefferson W Maclead
Aika N Oldroyd
Jeanfrancois U Nicka
Nicolas Q Stenseth
Leja O Saylors
Ivar U Marrier
Jennifer Z Ferencz
Mujtaba Y Darakjy
Greenwood U Sergi
Rodrigues M Tollner
Darci F Shinko
Smith P Stenseth
Clifford E Flosi
Leja P Doe
IdCountryDate
1000Russia2026-03-03
1001Australia2026-03-13
1002Spain2026-02-17
1003India2026-03-07
1004Australia2026-03-16
1005Argentina2026-02-21
1006Spain2026-03-15
1007France2026-03-01
1008Australia2026-03-09
1009France2026-03-17
1010United Kingdom2026-02-19
1011Canada2026-03-16
1012Italy2026-02-18
1013Argentina2026-03-04
1014Russia2026-02-27
1015Italy2026-02-16
1016India2026-03-17
1017Australia2026-02-20
1018Australia2026-02-28
1019Australia2026-03-12
1020United Kingdom2026-02-18
1021Italy2026-03-01
1022United Kingdom2026-02-20
1023Spain2026-03-10
1024Germany2026-03-17
1025Germany2026-02-22
1026India2026-03-07
1027India2026-03-06
1028United Kingdom2026-02-27
1029India2026-03-04
1030Australia2026-03-17
1031Australia2026-03-05
1032Russia2026-03-14
1033France2026-02-18
1034Japan2026-03-14
1035Canada2026-02-27
1036Canada2026-02-28
1037India2026-03-15
1038Japan2026-03-10
1039Italy2026-03-14
1040Spain2026-03-06
1041Argentina2026-02-21
1042India2026-02-27
1043Australia2026-03-09
1044Italy2026-02-18
1045Germany2026-03-11
1046Russia2026-03-10
1047Australia2026-02-19
1048Spain2026-03-09
1049Argentina2026-02-16

On-Demand Data

NameIdCountryDate
Leja L Campain1000Brazil2026-03-05
Jefferson D Kusko1001United Kingdom2026-02-26
Jeanfrancois Z Saylors1002Argentina2026-03-10
Antonio N Ostrosky1003United Kingdom2026-02-16
Francesco C Foller1004France2026-03-07
Julie P Caldarera1005Russia2026-03-10
Clifford Y Sergi1006Australia2026-03-17
Rodrigues Y Kusko1007Argentina2026-02-18
Aruna E Ostrosky1008France2026-02-17
Jones J Oldroyd1009India2026-03-12
Emily I Flosi1010Canada2026-03-13
Rodrigues P Figeroa1011Canada2026-03-15
Julie N Darakjy1012Italy2026-03-12
Mujtaba G Gaucho1013Canada2026-03-09
Arvin P Iturbide1014Japan2026-03-15
Adams I Campain1015India2026-02-25
Jefferson W Stockham1016Brazil2026-03-11
Darci Q Malet1017Argentina2026-02-19
David N Chui1018Australia2026-02-16
Salvatore G Schemmer1019Canada2026-02-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens F WaycottAustraliaAsiya Javayant QUALIFIED
Deepesh I AmigonIndiaAnna Fali QUALIFIED
Misaki C SaylorsFranceBernardo Dominic NEGOTIATION
Misaki X CaldareraFranceStephen Shaw RENEWAL
Isabel C RulapaughCanadaElwin Sharvill UNQUALIFIED
Julie F ChuiItalyAnna Fali PROPOSAL
Jefferson K FigeroaCanadaAmy Elsner NEGOTIATION
Aditya G StensethArgentinaElwin Sharvill NEGOTIATION
Deepesh N MaletAustraliaAmy Elsner QUALIFIED
Cody J ShinkoAustraliaElwin Sharvill NEGOTIATION
Deepesh O PoquetteBrazilBernardo Dominic QUALIFIED
Juan X MaletArgentinaBernardo Dominic QUALIFIED
Silvio G BriddickBrazilAsiya Javayant NEW
James M AmigonSpainAmy Elsner NEW
Greenwood K KolmetzIndiaAnna Fali RENEWAL
Ashley Y GillianGermanyAmy Elsner NEW
Ashley Z CampainIndiaBernardo Dominic NEGOTIATION
Julie Z FlosiGermanyAmy Elsner RENEWAL
Juan L KuskoAustraliaIoni Bowcher UNQUALIFIED
Costa N DilliardItalyXuxue Feng UNQUALIFIED
Ricardo D CaldareraJapanXuxue Feng PROPOSAL
Salvatore L GauchoFranceOnyama Limba RENEWAL
Maisha A MorascaBrazilAnna Fali NEGOTIATION
Misaki I MacleadRussiaStephen Shaw NEGOTIATION
Greenwood O GarufiGermanyAmy Elsner PROPOSAL
Stacey W DilliardGermanyElwin Sharvill PROPOSAL
Aika N MacleadJapanElwin Sharvill RENEWAL
Morrow H CaldareraAustraliaStephen Shaw NEGOTIATION
Antonio Z FollerIndiaAsiya Javayant RENEWAL
Morrow R FollerItalyAnna Fali UNQUALIFIED
Aika X OstroskyAustraliaAnna Fali QUALIFIED
Claire Q GillianUnited KingdomOnyama Limba NEGOTIATION
Leja T OstroskyFranceIvan Magalhaes PROPOSAL
Sinclair P KuskoFranceOnyama Limba UNQUALIFIED
Mayumi M SlusarskiUnited KingdomAmy Elsner NEGOTIATION
Costa M TollnerBrazilOnyama Limba NEGOTIATION
Smith F PerinCanadaElwin Sharvill PROPOSAL
Kaitlin G WhobreyRussiaIoni Bowcher QUALIFIED
Deepesh Z MacleadSpainAnna Fali QUALIFIED
Leon G BriddickSpainIvan Magalhaes PROPOSAL

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