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
Stacey W MarrierItalyBernardo Dominic PROPOSAL
Leja W ShinkoAustraliaIvan Magalhaes NEGOTIATION
Adams O RimFranceXuxue Feng UNQUALIFIED
Ricardo Z GillianArgentinaIvan Magalhaes QUALIFIED
Darci Q SergiGermanyAsiya Javayant QUALIFIED
Antonio U MacleadFranceIoni Bowcher QUALIFIED
Jennifer E IturbideItalyStephen Shaw PROPOSAL
Morrow W CaudyGermanyAmy Elsner NEGOTIATION
Ashley G TollnerRussiaIoni Bowcher NEGOTIATION
Munro A FollerUnited KingdomAnna Fali UNQUALIFIED
Misaki U StensethGermanyIoni Bowcher RENEWAL
Munro A GarufiItalyAsiya Javayant NEGOTIATION
Arvin T SaylorsBrazilBernardo Dominic NEW
Silvio V GlickIndiaStephen Shaw PROPOSAL
Nicolas T MacleadItalyIoni Bowcher RENEWAL
Clifford A RimAustraliaAnna Fali PROPOSAL
Tony U WaycottAustraliaBernardo Dominic RENEWAL
Ivar S MorascaGermanyBernardo Dominic UNQUALIFIED
Tony M GillianRussiaElwin Sharvill NEGOTIATION
Wickens N CaldareraIndiaOnyama Limba NEGOTIATION
Sinclair X RimBrazilAnna Fali NEGOTIATION
Chavez I SergiArgentinaOnyama Limba NEGOTIATION
Ashley S AmigonItalyAmy Elsner QUALIFIED
Smith C MaletRussiaXuxue Feng UNQUALIFIED
Julie L BologniaArgentinaElwin Sharvill QUALIFIED
Aika D CampainJapanElwin Sharvill PROPOSAL
Aditya R IturbideFranceAmy Elsner UNQUALIFIED
Maria F MacleadBrazilAnna Fali QUALIFIED
Claire Z ShinkoSpainAsiya Javayant NEW
Deepesh K WaycottAustraliaBernardo Dominic RENEWAL
Salvatore Y NestleFranceAsiya Javayant UNQUALIFIED
Emily S BologniaArgentinaBernardo Dominic QUALIFIED
Ricardo H CampainCanadaBernardo Dominic QUALIFIED
Rodrigues L PoquetteBrazilOnyama Limba NEGOTIATION
Kadeem I TollnerBrazilOnyama Limba UNQUALIFIED
Aruna O KuskoIndiaBernardo Dominic UNQUALIFIED
Ashley Y CaldareraItalyAsiya Javayant NEGOTIATION
Jones D CaldareraItalyBernardo Dominic PROPOSAL
Mujtaba O VenereIndiaAsiya Javayant NEW
Maisha H RimCanadaStephen Shaw UNQUALIFIED
Ricardo F BriddickUnited KingdomAsiya Javayant QUALIFIED
Mujtaba O PoquetteFranceBernardo Dominic QUALIFIED
Kadeem G GlickBrazilIvan Magalhaes NEW
Adams S MaletJapanIoni Bowcher PROPOSAL
Cody U WieserBrazilAsiya Javayant NEW
Wickens R KolmetzJapanAnna Fali QUALIFIED
Faith G OldroydUnited KingdomIvan Magalhaes NEGOTIATION
Salvatore S CaudyRussiaAsiya Javayant NEGOTIATION
Ricardo I CampainItalyIvan Magalhaes QUALIFIED
Ricardo H SergiIndiaIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco K DarakjySpainAnna Fali QUALIFIED
Maisha M ShinkoItalyBernardo Dominic UNQUALIFIED
Claire B SchemmerSpainAnna Fali PROPOSAL
Adams B CaudyArgentinaBernardo Dominic NEW
Leon L OldroydBrazilIvan Magalhaes UNQUALIFIED
Clifford R VocelkaAustraliaBernardo Dominic RENEWAL
Salvatore C SergiBrazilAnna Fali RENEWAL
Isabel F RimRussiaAsiya Javayant RENEWAL
Morrow A GillianRussiaXuxue Feng UNQUALIFIED
Johnson H GauchoRussiaAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio Y PaprockiBrazil2026-04-24Feltz Printing Service NEGOTIATION10Elwin Sharvill
1001Alejandro G StockhamUnited Kingdom2026-04-17Printing Dimensions UNQUALIFIED34Ivan Magalhaes
1002Francesco O PaprockiBrazil2026-04-29Dorl, James J Esq NEGOTIATION72Elwin Sharvill
1003Arvin Q WhobreyUnited Kingdom2026-04-22Printing Dimensions NEGOTIATION49Stephen Shaw
1004Deepesh M WhobreyCanada2026-05-01Feltz Printing Service NEW60Anna Fali
1005Alejandro N InouyeSpain2026-04-23Truhlar And Truhlar Attys NEGOTIATION83Asiya Javayant
1006Munro R SchemmerCanada2026-04-18Feiner Bros QUALIFIED11Bernardo Dominic
1007Greenwood K MacleadFrance2026-05-07Morlong Associates UNQUALIFIED51Onyama Limba
1008Nicolas W KolmetzAustralia2026-04-16Feiner Bros NEGOTIATION83Bernardo Dominic
1009James I MaletItaly2026-05-07King, Christopher A Esq UNQUALIFIED66Asiya Javayant
1010Jeanfrancois Y AlbaresJapan2026-05-10Chapman, Ross E Esq PROPOSAL97Asiya Javayant
1011Jones X AmigonRussia2026-04-26Rousseaux, Michael Esq PROPOSAL33Asiya Javayant
1012Juan T SaylorsAustralia2026-04-19Benton, John B Jr UNQUALIFIED20Elwin Sharvill
1013Chavez Q InouyeIndia2026-04-11Chanay, Jeffrey A Esq PROPOSAL60Ivan Magalhaes
1014Francesco F ButtRussia2026-05-02Benton, John B Jr QUALIFIED6Ioni Bowcher
1015Leon B AmigonGermany2026-04-25Chemel, James L Cpa PROPOSAL1Onyama Limba
1016Ivar Y KuskoAustralia2026-04-19King, Christopher A Esq PROPOSAL10Onyama Limba
1017Johnson W KuskoCanada2026-04-14Commercial Press NEW4Onyama Limba
1018Isabel P DilliardJapan2026-05-10King, Christopher A Esq QUALIFIED67Elwin Sharvill
1019David U StensethSpain2026-04-17Printing Dimensions PROPOSAL25Elwin Sharvill
1020Costa W OldroydCanada2026-05-07Truhlar And Truhlar Attys QUALIFIED8Onyama Limba
1021Kadeem B ShinkoAustralia2026-04-29Morlong Associates NEW75Anna Fali
1022Smith Z VocelkaFrance2026-04-27Morlong Associates PROPOSAL11Ioni Bowcher
1023Emily F DarakjyUnited Kingdom2026-05-06Morlong Associates NEGOTIATION82Anna Fali
1024Arvin Q AmigonCanada2026-04-17King, Christopher A Esq PROPOSAL98Ivan Magalhaes
1025Alejandro F FollerBrazil2026-05-03Dorl, James J Esq RENEWAL64Bernardo Dominic
1026Jefferson O SchemmerAustralia2026-04-15Feiner Bros NEGOTIATION46Amy Elsner
1027Juan C VenereCanada2026-05-01Dorl, James J Esq PROPOSAL29Onyama Limba
1028Faith Q DarakjyGermany2026-04-28Chapman, Ross E Esq RENEWAL1Asiya Javayant
1029Francesco I FigeroaFrance2026-05-07Chemel, James L Cpa PROPOSAL24Stephen Shaw
1030Ashley Z VenereItaly2026-05-10Morlong Associates PROPOSAL13Anna Fali
1031Isabel T WieserJapan2026-04-20Chemel, James L Cpa RENEWAL42Bernardo Dominic
1032Nicolas R GauchoJapan2026-04-11Commercial Press PROPOSAL34Bernardo Dominic
1033Leon X FollerSpain2026-05-01Rangoni Of Florence NEW55Asiya Javayant
1034Mujtaba N CaldareraAustralia2026-05-10King, Christopher A Esq UNQUALIFIED54Elwin Sharvill
1035Izzy A DarakjyFrance2026-04-25Rangoni Of Florence NEGOTIATION32Bernardo Dominic
1036Aruna K GlickSpain2026-05-02Chanay, Jeffrey A Esq RENEWAL53Elwin Sharvill
1037Ivar G IturbideIndia2026-04-20Buckley Miller Wright QUALIFIED17Bernardo Dominic
1038Rodrigues I FerenczUnited Kingdom2026-04-13Morlong Associates QUALIFIED42Ivan Magalhaes
1039Mayumi Y PaprockiJapan2026-04-12Feiner Bros NEW33Ivan Magalhaes
1040Costa R BowleyIndia2026-04-26Buckley Miller Wright RENEWAL54Elwin Sharvill
1041Ricardo F IturbideItaly2026-04-13Truhlar And Truhlar Attys UNQUALIFIED90Ioni Bowcher
1042Sinclair Y DarakjyIndia2026-05-10Chanay, Jeffrey A Esq RENEWAL26Anna Fali
1043Wickens R CaldareraSpain2026-04-30Feltz Printing Service NEGOTIATION71Bernardo Dominic
1044Darci J DoeAustralia2026-05-09Truhlar And Truhlar Attys NEW51Ioni Bowcher
1045Stacey H SergiRussia2026-04-28Rangoni Of Florence PROPOSAL11Onyama Limba
1046Izzy E MacleadGermany2026-04-21Benton, John B Jr UNQUALIFIED76Asiya Javayant
1047Clifford P WaycottRussia2026-04-29Morlong Associates NEGOTIATION40Ioni Bowcher
1048Murillo S RutaIndia2026-05-09Chemel, James L Cpa NEGOTIATION84Bernardo Dominic
1049Salvatore Z OldroydArgentina2026-04-18Rangoni Of Florence PROPOSAL54Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Faith I SlusarskiIndiaStephen Shaw QUALIFIED
Cody A VocelkaIndiaAnna Fali NEGOTIATION
Francesco L ButtIndiaAnna Fali NEW
Chavez Z MaletGermanyXuxue Feng PROPOSAL
Mayumi I ShinkoItalyAsiya Javayant PROPOSAL
Greenwood O AlbaresJapanAmy Elsner QUALIFIED
Arvin M PaprockiSpainElwin Sharvill RENEWAL
Tony J RimItalyOnyama Limba PROPOSAL
Maria R MaletUnited KingdomAsiya Javayant UNQUALIFIED
Aruna C VocelkaJapanStephen Shaw NEGOTIATION
Rodrigues P MaletRussiaAmy Elsner RENEWAL
Leon F FollerItalyAmy Elsner QUALIFIED
Leja Z FlosiBrazilXuxue Feng PROPOSAL
Alejandro I BowleySpainAsiya Javayant PROPOSAL
Darci X PerinFranceElwin Sharvill NEGOTIATION
Faith M BologniaItalyElwin Sharvill PROPOSAL
Smith I SchemmerRussiaIvan Magalhaes NEW
Stacey P PerinSpainXuxue Feng RENEWAL
Misaki Z TollnerFranceBernardo Dominic PROPOSAL
Faith R MaletJapanXuxue Feng NEW
Maria G BriddickUnited KingdomAnna Fali QUALIFIED
Isabel S SchemmerCanadaAsiya Javayant UNQUALIFIED
Smith B BowleyCanadaStephen Shaw NEGOTIATION
Ashley Z MacleadBrazilAmy Elsner UNQUALIFIED
Jennifer W ShinkoIndiaAnna Fali NEW
Juan Q FollerIndiaOnyama Limba UNQUALIFIED
Morrow R StensethUnited KingdomAsiya Javayant PROPOSAL
Sinclair Y RimBrazilIvan Magalhaes QUALIFIED
Mujtaba E CaldareraCanadaBernardo Dominic RENEWAL
Antonio K FigeroaJapanXuxue Feng UNQUALIFIED
Isabel Y SchemmerFranceBernardo Dominic NEGOTIATION
Izzy N DarakjyGermanyStephen Shaw RENEWAL
Silvio U ChuiSpainStephen Shaw UNQUALIFIED
Aruna B BowleySpainOnyama Limba NEW
Francesco M GlickArgentinaAsiya Javayant QUALIFIED
Mujtaba E AlbaresJapanXuxue Feng NEGOTIATION
Aika N BriddickAustraliaIvan Magalhaes UNQUALIFIED
Jennifer A VenereGermanyAnna Fali NEGOTIATION
Chavez M RoysterAustraliaBernardo Dominic PROPOSAL
Ricardo D VenereAustraliaBernardo Dominic UNQUALIFIED
Aditya Y SaylorsCanadaIvan Magalhaes PROPOSAL
Silvio T VocelkaUnited KingdomAnna Fali NEW
Adams S GauchoJapanIvan Magalhaes NEW
Silvio I WhobreySpainIoni Bowcher NEGOTIATION
Morrow A KolmetzGermanyIoni Bowcher RENEWAL
Morrow F FlosiSpainIoni Bowcher UNQUALIFIED
Cody A GauchoSpainBernardo Dominic UNQUALIFIED
Darci O BologniaGermanyAmy Elsner PROPOSAL
Juan S PaprockiArgentinaElwin Sharvill RENEWAL
Aika D DarakjyAustraliaAnna Fali QUALIFIED
Frozen Columns
Name
Morrow X Dilliard
Tony N Wieser
Smith C Nicka
Ricardo Q Campain
Julie O Ferencz
Faith Z Ostrosky
Aika Z Ostrosky
Leon Y Gillian
Alejandro D Chui
Julie W Morasca
Munro Q Stenseth
Izzy D Sergi
Aruna Q Waycott
Mayumi P Darakjy
Costa W Saylors
Alejandro G Waycott
Jefferson B Waycott
Octavia A Iturbide
Munro A Maclead
Darci M Saylors
Faith T Royster
Sinclair T Schemmer
Adams A Schemmer
Jennifer Q Poquette
Stacey P Caldarera
Octavia A Royster
Leon O Briddick
Chavez Y Rulapaugh
Alejandro O Nicka
Izzy H Stenseth
Adams X Gaucho
Aditya Q Albares
Maisha K Wieser
Adams G Tollner
Jennifer P Amigon
Morrow O Wieser
James F Stockham
Jones J Perin
Juan K Stenseth
Antonio Y Gillian
Stacey E Venere
Nicolas B Venere
Kaitlin D Morasca
Ricardo R Iturbide
Jefferson A Ostrosky
Silvio D Stenseth
Ricardo Y Briddick
Johnson G Figeroa
Cody O Figeroa
Wickens C Doe
IdCountryDate
1000Australia2026-05-07
1001Australia2026-04-26
1002Argentina2026-04-20
1003France2026-04-20
1004Argentina2026-04-28
1005Russia2026-04-18
1006United Kingdom2026-05-07
1007Australia2026-04-28
1008France2026-05-01
1009France2026-05-08
1010Canada2026-04-13
1011Japan2026-05-03
1012Japan2026-04-24
1013Brazil2026-04-28
1014Canada2026-04-24
1015Canada2026-05-06
1016Germany2026-04-20
1017United Kingdom2026-05-08
1018Australia2026-05-04
1019United Kingdom2026-05-03
1020Brazil2026-04-16
1021Canada2026-04-12
1022Argentina2026-05-10
1023India2026-04-26
1024India2026-04-28
1025Russia2026-04-11
1026Japan2026-04-11
1027Japan2026-04-17
1028India2026-04-14
1029Australia2026-04-12
1030Argentina2026-04-21
1031Canada2026-04-12
1032Russia2026-04-24
1033Australia2026-05-03
1034India2026-05-07
1035Argentina2026-04-11
1036France2026-04-24
1037Germany2026-04-16
1038Canada2026-05-10
1039Japan2026-04-12
1040India2026-04-25
1041Japan2026-04-22
1042Italy2026-04-19
1043Russia2026-05-10
1044India2026-04-18
1045France2026-04-15
1046Australia2026-04-25
1047Japan2026-05-09
1048Brazil2026-04-26
1049Spain2026-04-24

On-Demand Data

NameIdCountryDate
Jeanfrancois Q Figeroa1000Germany2026-04-26
Johnson P Whobrey1001Italy2026-04-21
Jennifer K Darakjy1002France2026-04-15
Leja L Rulapaugh1003Canada2026-04-25
Sinclair W Whobrey1004Germany2026-04-26
Tony R Inouye1005Spain2026-04-17
Cody D Kusko1006Argentina2026-04-23
Munro E Maclead1007Russia2026-04-28
Antonio O Glick1008Brazil2026-05-05
Emily B Stockham1009India2026-05-05
Isabel W Glick1010Argentina2026-04-21
Ricardo Q Briddick1011Germany2026-05-08
Ivar Q Darakjy1012United Kingdom2026-04-17
Stacey L Doe1013Brazil2026-04-22
Misaki Q Shinko1014India2026-05-07
Jones A Nicka1015United Kingdom2026-04-12
Aruna R Bowley1016Brazil2026-04-27
Nicolas Q Kolmetz1017Japan2026-04-26
Cody G Gillian1018India2026-05-10
Greenwood S Gillian1019Canada2026-05-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie W RimIndiaAmy Elsner NEGOTIATION
Deepesh D MaletItalyStephen Shaw UNQUALIFIED
Isabel H WhobreyBrazilAmy Elsner NEGOTIATION
Ashley I PaprockiArgentinaElwin Sharvill RENEWAL
Misaki B FigeroaBrazilAmy Elsner PROPOSAL
Munro E FlosiSpainStephen Shaw NEGOTIATION
Alejandro O GauchoIndiaAnna Fali QUALIFIED
David H StockhamJapanAsiya Javayant RENEWAL
Costa V AmigonRussiaXuxue Feng PROPOSAL
Alejandro X AmigonJapanOnyama Limba QUALIFIED
Silvio S WaycottArgentinaElwin Sharvill QUALIFIED
Nicolas O RimRussiaAsiya Javayant NEGOTIATION
Kaitlin Q MacleadGermanyIvan Magalhaes NEGOTIATION
Greenwood N NickaUnited KingdomAmy Elsner QUALIFIED
Francesco N MorascaCanadaAnna Fali RENEWAL
Mujtaba H StensethSpainAmy Elsner UNQUALIFIED
Nicolas C MaletGermanyElwin Sharvill PROPOSAL
Greenwood Y FollerBrazilIoni Bowcher NEW
Rodrigues D RutaBrazilElwin Sharvill UNQUALIFIED
Francesco G VocelkaUnited KingdomIoni Bowcher PROPOSAL
Jefferson M WieserRussiaXuxue Feng QUALIFIED
Aruna S ChuiGermanyIvan Magalhaes NEGOTIATION
Ricardo G FollerFranceIvan Magalhaes QUALIFIED
Kadeem C WhobreyUnited KingdomAsiya Javayant RENEWAL
Izzy P MarrierRussiaIvan Magalhaes QUALIFIED
Antonio J PerinBrazilOnyama Limba NEGOTIATION
Nicolas I TollnerArgentinaAmy Elsner NEGOTIATION
Leja Y AlbaresArgentinaStephen Shaw RENEWAL
Isabel K MaletArgentinaIvan Magalhaes NEW
Jeanfrancois S InouyeGermanyIvan Magalhaes PROPOSAL
Kadeem L KolmetzGermanyAnna Fali RENEWAL
Jennifer T KolmetzArgentinaStephen Shaw QUALIFIED
Juan H SaylorsSpainAnna Fali RENEWAL
Clifford P RoysterRussiaOnyama Limba NEGOTIATION
Chavez N StensethBrazilElwin Sharvill NEW
Costa W WhobreyFranceIvan Magalhaes NEGOTIATION
Aruna D RimBrazilElwin Sharvill NEGOTIATION
Chavez L CaldareraItalyAmy Elsner UNQUALIFIED
Mayumi R FerenczCanadaIvan Magalhaes QUALIFIED
Antonio E VenereIndiaBernardo Dominic 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.