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
Cody F ButtAustraliaAnna Fali NEGOTIATION
Johnson G BologniaJapanBernardo Dominic NEGOTIATION
Maisha H MorascaBrazilXuxue Feng PROPOSAL
Morrow R BowleyRussiaXuxue Feng QUALIFIED
Julie I SlusarskiArgentinaOnyama Limba QUALIFIED
Rodrigues L RoysterItalyAmy Elsner NEW
Jeanfrancois F FollerJapanOnyama Limba RENEWAL
Kaitlin L WhobreyUnited KingdomIvan Magalhaes PROPOSAL
Juan C RimJapanIvan Magalhaes RENEWAL
Darci X KuskoArgentinaAsiya Javayant RENEWAL
Kadeem R CaudyJapanAmy Elsner NEGOTIATION
Isabel U BologniaGermanyIvan Magalhaes NEW
Wickens A OldroydAustraliaElwin Sharvill NEGOTIATION
Aruna I WhobreyAustraliaIoni Bowcher NEW
Greenwood I GlickJapanElwin Sharvill NEW
Costa R TollnerJapanIvan Magalhaes NEGOTIATION
Aditya W KolmetzUnited KingdomElwin Sharvill PROPOSAL
Claire M RulapaughUnited KingdomIoni Bowcher QUALIFIED
Ivar H FerenczArgentinaIvan Magalhaes QUALIFIED
Jones J PoquetteGermanyStephen Shaw NEGOTIATION
Leon U MacleadRussiaIoni Bowcher UNQUALIFIED
Tony Q OldroydRussiaBernardo Dominic NEGOTIATION
Juan P VenereJapanAsiya Javayant PROPOSAL
Ricardo I CampainIndiaStephen Shaw RENEWAL
Costa E VenereRussiaOnyama Limba RENEWAL
Ashley U KolmetzAustraliaIoni Bowcher UNQUALIFIED
Francesco H DilliardJapanIoni Bowcher NEW
James W PerinGermanyAmy Elsner NEGOTIATION
Arvin X KuskoGermanyStephen Shaw NEGOTIATION
Johnson C MorascaArgentinaElwin Sharvill RENEWAL
Ivar M DoeIndiaAsiya Javayant NEGOTIATION
Ashley L CampainCanadaIoni Bowcher RENEWAL
Alejandro Z NickaSpainBernardo Dominic NEGOTIATION
Chavez P FerenczAustraliaAsiya Javayant UNQUALIFIED
Greenwood V RutaItalyAsiya Javayant NEGOTIATION
Ashley N GillianSpainXuxue Feng NEW
Chavez T KuskoJapanElwin Sharvill NEGOTIATION
Greenwood T ChuiAustraliaAnna Fali NEGOTIATION
Wickens C FerenczAustraliaAmy Elsner NEGOTIATION
Emily F CaldareraFranceOnyama Limba NEW
Chavez J SchemmerRussiaIoni Bowcher QUALIFIED
David X SchemmerUnited KingdomElwin Sharvill PROPOSAL
Kaitlin R BowleyAustraliaOnyama Limba NEGOTIATION
Jennifer X VocelkaBrazilAnna Fali RENEWAL
Claire Y MacleadJapanBernardo Dominic NEGOTIATION
Ricardo L RimIndiaXuxue Feng UNQUALIFIED
Rodrigues C FlosiGermanyStephen Shaw NEW
Aditya F BowleyItalyAnna Fali QUALIFIED
Jefferson V BriddickAustraliaIvan Magalhaes QUALIFIED
Jeanfrancois J NickaFranceIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Kaitlin Y ButtGermanyBernardo Dominic QUALIFIED
Ricardo B ShinkoIndiaOnyama Limba RENEWAL
Silvio U WhobreyItalyIoni Bowcher NEGOTIATION
Emily N WhobreyArgentinaStephen Shaw QUALIFIED
Leja Q FerenczJapanIvan Magalhaes PROPOSAL
Faith W RulapaughItalyElwin Sharvill QUALIFIED
Kaitlin C WieserUnited KingdomStephen Shaw NEW
Nicolas N PaprockiFranceElwin Sharvill QUALIFIED
Murillo J InouyeGermanyElwin Sharvill QUALIFIED
Ashley S FollerGermanyStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley Y VenereIndia2026-03-31Dorl, James J Esq PROPOSAL22Elwin Sharvill
1001James E VocelkaGermany2026-03-27Dorl, James J Esq QUALIFIED11Ivan Magalhaes
1002Darci F FollerUnited Kingdom2026-03-25Morlong Associates QUALIFIED12Amy Elsner
1003Nicolas E RoysterJapan2026-04-06Rangoni Of Florence UNQUALIFIED6Stephen Shaw
1004Ashley M CaudySpain2026-04-01Printing Dimensions NEW5Amy Elsner
1005Faith C ChuiUnited Kingdom2026-03-31Rousseaux, Michael Esq NEGOTIATION45Bernardo Dominic
1006Maria M WhobreyCanada2026-04-06Dorl, James J Esq QUALIFIED84Amy Elsner
1007Silvio W MaletCanada2026-04-02Chemel, James L Cpa UNQUALIFIED86Onyama Limba
1008Deepesh R FlosiIndia2026-04-15Chemel, James L Cpa NEGOTIATION32Ioni Bowcher
1009Nicolas U NickaRussia2026-03-26Benton, John B Jr QUALIFIED88Ioni Bowcher
1010Salvatore Z WieserJapan2026-04-07Rousseaux, Michael Esq NEW70Anna Fali
1011Jefferson A AmigonIndia2026-04-07Morlong Associates QUALIFIED25Amy Elsner
1012Adams V FigeroaIndia2026-04-08Feltz Printing Service UNQUALIFIED7Amy Elsner
1013David V GauchoIndia2026-04-10Dorl, James J Esq RENEWAL61Elwin Sharvill
1014Maria Y RoysterCanada2026-04-12Dorl, James J Esq NEGOTIATION17Asiya Javayant
1015Costa N RimGermany2026-04-17King, Christopher A Esq NEGOTIATION16Asiya Javayant
1016Mayumi W DilliardBrazil2026-04-01Feltz Printing Service UNQUALIFIED51Anna Fali
1017Emily J FollerGermany2026-03-28Chapman, Ross E Esq QUALIFIED71Xuxue Feng
1018Mayumi X WaycottBrazil2026-04-20Rousseaux, Michael Esq PROPOSAL38Ivan Magalhaes
1019Cody K WhobreyFrance2026-03-27Printing Dimensions QUALIFIED80Ivan Magalhaes
1020Aruna T BologniaRussia2026-03-27Truhlar And Truhlar Attys NEGOTIATION20Asiya Javayant
1021Munro I WieserArgentina2026-04-09Rousseaux, Michael Esq UNQUALIFIED87Ioni Bowcher
1022Aika Y PaprockiIndia2026-03-27Rousseaux, Michael Esq RENEWAL17Amy Elsner
1023Maisha Q MorascaBrazil2026-03-23Feiner Bros RENEWAL78Elwin Sharvill
1024James Z TollnerUnited Kingdom2026-04-08Rousseaux, Michael Esq PROPOSAL84Amy Elsner
1025Julie V StockhamArgentina2026-04-02King, Christopher A Esq QUALIFIED17Onyama Limba
1026Aika B InouyeSpain2026-04-03Rangoni Of Florence NEW68Ivan Magalhaes
1027Deepesh S FollerBrazil2026-04-09Dorl, James J Esq UNQUALIFIED95Xuxue Feng
1028Emily R CampainAustralia2026-04-13Morlong Associates UNQUALIFIED75Stephen Shaw
1029Ashley Y AmigonRussia2026-04-14Feiner Bros RENEWAL13Asiya Javayant
1030Emily L ChuiRussia2026-03-30Rousseaux, Michael Esq RENEWAL23Ioni Bowcher
1031Munro M MacleadArgentina2026-03-23King, Christopher A Esq UNQUALIFIED75Ioni Bowcher
1032Antonio T InouyeRussia2026-04-05Rangoni Of Florence QUALIFIED12Xuxue Feng
1033Maria C WieserAustralia2026-03-27Truhlar And Truhlar Attys UNQUALIFIED47Anna Fali
1034Nicolas B DoeIndia2026-04-04King, Christopher A Esq NEGOTIATION95Ioni Bowcher
1035Mayumi B RulapaughUnited Kingdom2026-04-12Commercial Press NEGOTIATION52Ioni Bowcher
1036James X DilliardAustralia2026-04-04Chanay, Jeffrey A Esq NEGOTIATION70Asiya Javayant
1037Kaitlin N StensethGermany2026-04-18Dorl, James J Esq NEGOTIATION30Stephen Shaw
1038Ricardo W MaletSpain2026-03-28Dorl, James J Esq NEGOTIATION50Xuxue Feng
1039Wickens T MaletAustralia2026-04-17Truhlar And Truhlar Attys PROPOSAL73Bernardo Dominic
1040Wickens U ButtUnited Kingdom2026-03-24Rousseaux, Michael Esq NEW57Bernardo Dominic
1041Jefferson Q KuskoIndia2026-03-23Rousseaux, Michael Esq RENEWAL87Bernardo Dominic
1042Juan D KuskoArgentina2026-04-15Truhlar And Truhlar Attys PROPOSAL23Ivan Magalhaes
1043Izzy Y VenereGermany2026-04-02Chanay, Jeffrey A Esq PROPOSAL2Ivan Magalhaes
1044Juan J CampainAustralia2026-04-12Morlong Associates RENEWAL22Stephen Shaw
1045Antonio Z SlusarskiIndia2026-04-11Dorl, James J Esq UNQUALIFIED8Anna Fali
1046Wickens R DilliardGermany2026-03-25Feltz Printing Service RENEWAL65Amy Elsner
1047Deepesh V RulapaughFrance2026-03-30Rangoni Of Florence RENEWAL9Amy Elsner
1048Deepesh Z SaylorsItaly2026-04-02Truhlar And Truhlar Attys QUALIFIED95Onyama Limba
1049Rodrigues U ButtArgentina2026-04-08Chanay, Jeffrey A Esq UNQUALIFIED24Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Tony O CaudyJapanBernardo Dominic PROPOSAL
Nicolas J MacleadFranceOnyama Limba NEW
Jeanfrancois V VocelkaIndiaElwin Sharvill QUALIFIED
Jeanfrancois D CampainIndiaBernardo Dominic NEGOTIATION
Maria C GarufiBrazilIvan Magalhaes RENEWAL
Aruna P VenereItalyStephen Shaw PROPOSAL
Tony J BowleyCanadaXuxue Feng RENEWAL
Mujtaba C SergiCanadaOnyama Limba PROPOSAL
Kaitlin M SlusarskiBrazilIoni Bowcher QUALIFIED
Silvio B VocelkaIndiaOnyama Limba QUALIFIED
Arvin R BowleyGermanyStephen Shaw NEGOTIATION
Darci W ChuiJapanXuxue Feng RENEWAL
Chavez Y FollerGermanyAnna Fali NEW
Misaki S DarakjyArgentinaAsiya Javayant PROPOSAL
Leon Z SlusarskiSpainAsiya Javayant PROPOSAL
Isabel Y PoquetteRussiaAnna Fali NEW
Murillo U PoquetteBrazilIvan Magalhaes UNQUALIFIED
Adams N FlosiFranceAnna Fali RENEWAL
Kadeem Q AmigonSpainStephen Shaw NEW
Smith Y SchemmerCanadaIvan Magalhaes QUALIFIED
Juan W GauchoUnited KingdomXuxue Feng NEGOTIATION
Arvin E ChuiArgentinaAnna Fali QUALIFIED
Rodrigues E ButtBrazilElwin Sharvill QUALIFIED
Emily N MacleadUnited KingdomIoni Bowcher PROPOSAL
Johnson U FerenczIndiaIvan Magalhaes NEGOTIATION
Johnson U SaylorsAustraliaIoni Bowcher RENEWAL
Leon G RoysterAustraliaIoni Bowcher NEW
Darci C SergiJapanAsiya Javayant UNQUALIFIED
Darci L BologniaItalyBernardo Dominic NEGOTIATION
Emily T SlusarskiCanadaIoni Bowcher NEW
Kadeem D DilliardRussiaIoni Bowcher NEW
Munro N BriddickJapanOnyama Limba NEGOTIATION
Jones G PerinItalyStephen Shaw NEGOTIATION
Salvatore L OldroydJapanIvan Magalhaes UNQUALIFIED
Mayumi F FerenczSpainAsiya Javayant PROPOSAL
Mujtaba F DarakjyItalyAmy Elsner NEW
Ricardo Q NestleJapanAsiya Javayant QUALIFIED
Sinclair Z MacleadIndiaXuxue Feng RENEWAL
Murillo F WaycottSpainXuxue Feng NEW
Greenwood X NickaAustraliaIoni Bowcher UNQUALIFIED
Stacey I BologniaIndiaBernardo Dominic RENEWAL
Wickens P RulapaughAustraliaStephen Shaw UNQUALIFIED
Octavia O NickaJapanStephen Shaw QUALIFIED
Chavez S TollnerRussiaAsiya Javayant QUALIFIED
Jeanfrancois F GauchoIndiaStephen Shaw NEGOTIATION
Mayumi G RutaSpainAnna Fali PROPOSAL
Alejandro S NestleRussiaAnna Fali RENEWAL
Kadeem D NestleSpainAnna Fali NEGOTIATION
Murillo G WaycottCanadaIvan Magalhaes NEGOTIATION
Octavia U MaletArgentinaStephen Shaw QUALIFIED
Frozen Columns
Name
Mayumi H Malet
Johnson G Schemmer
Octavia U Malet
Claire P Ferencz
Faith P Foller
Aditya T Oldroyd
Ivar I Shinko
Silvio D Garufi
Maisha I Chui
Emily O Garufi
Aruna N Glick
Stacey A Inouye
Julie X Nestle
Darci Q Ferencz
Aika Y Dilliard
Isabel V Amigon
Ricardo N Ruta
Claire I Schemmer
Juan M Venere
Morrow H Perin
Nicolas K Garufi
Leon R Caudy
Cody Q Garufi
Nicolas E Kolmetz
Darci E Paprocki
Izzy E Venere
Silvio B Oldroyd
Isabel Z Marrier
Murillo S Kolmetz
Leja H Whobrey
David E Poquette
Maria Z Tollner
Stacey M Bowley
Izzy W Doe
Jefferson N Briddick
Clifford Q Marrier
Smith I Rulapaugh
Faith X Royster
Salvatore R Foller
Cody K Campain
Jefferson P Caldarera
Juan R Kusko
Sinclair H Ostrosky
Rodrigues G Ostrosky
Silvio N Shinko
Nicolas C Whobrey
Misaki Q Malet
Wickens W Caudy
Alejandro W Perin
Alejandro E Marrier
IdCountryDate
1000Spain2026-04-06
1001United Kingdom2026-04-04
1002Canada2026-03-27
1003Italy2026-04-08
1004Japan2026-04-20
1005Australia2026-03-28
1006Russia2026-04-06
1007Australia2026-03-27
1008Canada2026-03-26
1009Italy2026-04-03
1010Canada2026-04-15
1011Brazil2026-03-27
1012United Kingdom2026-04-11
1013Australia2026-04-01
1014Italy2026-04-09
1015Russia2026-03-30
1016Brazil2026-04-19
1017Spain2026-04-02
1018Argentina2026-03-25
1019Italy2026-04-04
1020Canada2026-03-29
1021United Kingdom2026-04-16
1022Italy2026-04-20
1023Australia2026-04-13
1024France2026-03-31
1025Argentina2026-04-17
1026Germany2026-04-02
1027Spain2026-04-06
1028Italy2026-04-03
1029France2026-04-16
1030Japan2026-03-26
1031India2026-03-31
1032Canada2026-04-04
1033France2026-04-07
1034Japan2026-03-28
1035Germany2026-04-15
1036Germany2026-04-12
1037Japan2026-03-25
1038France2026-04-10
1039Italy2026-04-16
1040Argentina2026-04-05
1041Italy2026-03-27
1042Italy2026-03-25
1043France2026-03-24
1044Japan2026-04-18
1045France2026-04-03
1046Brazil2026-04-18
1047Spain2026-04-16
1048France2026-04-14
1049Australia2026-03-29

On-Demand Data

NameIdCountryDate
Emily U Paprocki1000India2026-04-02
Jefferson H Iturbide1001Japan2026-04-05
Munro M Gillian1002Argentina2026-04-15
Chavez O Inouye1003United Kingdom2026-04-05
Clifford S Stenseth1004Japan2026-03-25
Ricardo A Rim1005Australia2026-03-27
Octavia G Saylors1006Australia2026-04-13
Maisha E Ferencz1007India2026-04-15
Aika N Stockham1008Australia2026-04-21
Kaitlin Q Foller1009India2026-04-08
Isabel B Shinko1010India2026-04-02
Aika B Marrier1011Spain2026-04-06
Nicolas D Marrier1012Argentina2026-04-03
Jeanfrancois O Chui1013Germany2026-03-28
Munro V Whobrey1014Japan2026-04-14
Maria U Ruta1015Spain2026-04-17
Murillo C Caldarera1016Germany2026-04-19
Faith G Gillian1017Germany2026-04-17
Kadeem F Ferencz1018Brazil2026-04-21
Aruna A Sergi1019Germany2026-03-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan Z WieserCanadaAnna Fali QUALIFIED
Aditya U WhobreyItalyAmy Elsner QUALIFIED
Chavez Z AlbaresJapanAmy Elsner QUALIFIED
David H GarufiGermanyAnna Fali UNQUALIFIED
Francesco P WieserRussiaIvan Magalhaes RENEWAL
Mayumi O TollnerJapanAnna Fali UNQUALIFIED
Nicolas X PoquetteIndiaIvan Magalhaes NEW
Aruna A KolmetzFranceIvan Magalhaes QUALIFIED
Munro E CaldareraSpainIvan Magalhaes RENEWAL
Tony F KuskoGermanyAmy Elsner UNQUALIFIED
Ivar M RulapaughGermanyOnyama Limba NEGOTIATION
Sinclair W KuskoGermanyBernardo Dominic RENEWAL
Sinclair H ButtGermanyAnna Fali PROPOSAL
Maisha U DoeAustraliaElwin Sharvill RENEWAL
Munro S GarufiJapanAmy Elsner QUALIFIED
Adams C SergiFranceIvan Magalhaes QUALIFIED
Nicolas S AlbaresUnited KingdomAmy Elsner UNQUALIFIED
Ivar F CaldareraFranceXuxue Feng NEGOTIATION
Aruna C RutaCanadaAmy Elsner NEGOTIATION
Darci C WaycottJapanIoni Bowcher UNQUALIFIED
Rodrigues K WhobreyJapanStephen Shaw QUALIFIED
Murillo U PerinFranceBernardo Dominic NEGOTIATION
Claire I TollnerSpainElwin Sharvill NEGOTIATION
Chavez D NickaItalyElwin Sharvill PROPOSAL
Sinclair I BriddickGermanyBernardo Dominic QUALIFIED
Sinclair I VenereBrazilIvan Magalhaes PROPOSAL
Murillo D ChuiItalyElwin Sharvill PROPOSAL
Claire X ButtIndiaXuxue Feng PROPOSAL
Sinclair A VenereArgentinaXuxue Feng QUALIFIED
Stacey F NestleSpainAnna Fali PROPOSAL
Emily I MaletRussiaAnna Fali UNQUALIFIED
Isabel J MarrierSpainXuxue Feng RENEWAL
Mujtaba R NestleItalyBernardo Dominic PROPOSAL
Ricardo P FerenczAustraliaIoni Bowcher RENEWAL
Kaitlin I DoeGermanyIoni Bowcher QUALIFIED
Stacey K AlbaresFranceBernardo Dominic NEW
Adams J OldroydJapanOnyama Limba QUALIFIED
Ricardo M StockhamUnited KingdomElwin Sharvill QUALIFIED
Antonio Y AlbaresIndiaStephen Shaw NEGOTIATION
Deepesh S BologniaJapanBernardo Dominic UNQUALIFIED

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