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 T PaprockiArgentinaAsiya Javayant NEW
Jeanfrancois B StockhamGermanyAmy Elsner NEGOTIATION
Ivar C CaldareraItalyXuxue Feng QUALIFIED
Stacey D MaletArgentinaElwin Sharvill NEGOTIATION
Jones A GauchoAustraliaXuxue Feng PROPOSAL
Julie L DilliardUnited KingdomAnna Fali NEGOTIATION
Alejandro A SlusarskiItalyOnyama Limba QUALIFIED
Kadeem Q MorascaBrazilXuxue Feng RENEWAL
Maria X SaylorsRussiaAnna Fali PROPOSAL
Cody Z StockhamJapanAmy Elsner PROPOSAL
Greenwood K DoeBrazilAmy Elsner RENEWAL
Murillo U PerinArgentinaBernardo Dominic RENEWAL
Aruna K BologniaItalyAnna Fali NEGOTIATION
Kaitlin Q BriddickBrazilAnna Fali PROPOSAL
Aika J DilliardJapanXuxue Feng PROPOSAL
Leja L SchemmerCanadaIvan Magalhaes RENEWAL
Ricardo X PerinAustraliaStephen Shaw QUALIFIED
Antonio J AlbaresArgentinaIvan Magalhaes PROPOSAL
Izzy N MacleadFranceIvan Magalhaes RENEWAL
Emily Q FigeroaIndiaAmy Elsner PROPOSAL
Octavia O CampainGermanyStephen Shaw UNQUALIFIED
Rodrigues R AmigonRussiaOnyama Limba QUALIFIED
Smith E SergiGermanyOnyama Limba UNQUALIFIED
Johnson K MorascaAustraliaAnna Fali UNQUALIFIED
Julie G GillianItalyXuxue Feng PROPOSAL
Costa H VenereSpainIvan Magalhaes QUALIFIED
Salvatore H NestleSpainStephen Shaw NEGOTIATION
Clifford X BologniaGermanyIvan Magalhaes NEW
Misaki F WaycottBrazilOnyama Limba PROPOSAL
Darci E ShinkoGermanyAnna Fali NEGOTIATION
Aika W MarrierArgentinaStephen Shaw RENEWAL
Maria E CampainUnited KingdomIoni Bowcher UNQUALIFIED
Nicolas D WhobreyArgentinaStephen Shaw PROPOSAL
Maria K StensethIndiaElwin Sharvill NEGOTIATION
Mayumi L OldroydGermanyIoni Bowcher NEGOTIATION
Mayumi T KolmetzCanadaXuxue Feng UNQUALIFIED
Wickens K GlickUnited KingdomXuxue Feng RENEWAL
Chavez A GillianIndiaAnna Fali NEW
Johnson U CampainSpainAsiya Javayant NEGOTIATION
Emily G SchemmerFranceAmy Elsner NEGOTIATION
Aditya J BologniaCanadaOnyama Limba QUALIFIED
Leja Y StensethUnited KingdomIoni Bowcher QUALIFIED
Salvatore I NestleGermanyIvan Magalhaes RENEWAL
Sinclair M RoysterCanadaElwin Sharvill PROPOSAL
Maria X RimItalyElwin Sharvill RENEWAL
Antonio R VenereGermanyAmy Elsner UNQUALIFIED
Greenwood F OstroskyArgentinaAmy Elsner QUALIFIED
Ricardo V DoeBrazilAnna Fali RENEWAL
Antonio E DarakjyCanadaOnyama Limba NEW
Jeanfrancois O AlbaresSpainIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Darci T SchemmerBrazilIvan Magalhaes UNQUALIFIED
Greenwood O CampainFranceIoni Bowcher NEGOTIATION
Salvatore P MaletGermanyOnyama Limba NEGOTIATION
Mujtaba V RoysterIndiaIoni Bowcher QUALIFIED
Antonio X AlbaresAustraliaIoni Bowcher NEW
Smith G SergiIndiaElwin Sharvill RENEWAL
Antonio S FerenczJapanAmy Elsner NEW
Maisha B SlusarskiItalyAmy Elsner QUALIFIED
James L PerinFranceStephen Shaw QUALIFIED
Clifford Y VocelkaUnited KingdomAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro O FerenczUnited Kingdom2026-05-08Truhlar And Truhlar Attys QUALIFIED3Ioni Bowcher
1001Ashley V GauchoUnited Kingdom2026-05-01Rangoni Of Florence NEGOTIATION47Anna Fali
1002Jones N DarakjyGermany2026-04-18Rangoni Of Florence NEGOTIATION73Anna Fali
1003Aditya U RutaSpain2026-04-30Printing Dimensions QUALIFIED25Anna Fali
1004Kaitlin R AlbaresIndia2026-04-23Chemel, James L Cpa RENEWAL8Ioni Bowcher
1005Leja G PoquetteCanada2026-05-06Dorl, James J Esq PROPOSAL38Stephen Shaw
1006Salvatore T ShinkoJapan2026-04-27Rangoni Of Florence NEGOTIATION34Onyama Limba
1007Sinclair U BowleyGermany2026-04-15Feltz Printing Service PROPOSAL47Xuxue Feng
1008Aika D CaudyUnited Kingdom2026-04-22Feltz Printing Service RENEWAL19Ioni Bowcher
1009Mujtaba C InouyeAustralia2026-04-25Chemel, James L Cpa NEW67Elwin Sharvill
1010Jeanfrancois U CaldareraSpain2026-05-09Printing Dimensions NEW27Ivan Magalhaes
1011Ivar F FlosiCanada2026-04-12Chanay, Jeffrey A Esq RENEWAL30Asiya Javayant
1012Rodrigues U AmigonGermany2026-04-20Chanay, Jeffrey A Esq PROPOSAL84Stephen Shaw
1013Leon O RimBrazil2026-05-06Dorl, James J Esq QUALIFIED22Ioni Bowcher
1014Morrow B ChuiSpain2026-04-18Dorl, James J Esq UNQUALIFIED79Bernardo Dominic
1015Ivar Z BriddickItaly2026-04-19Feltz Printing Service NEW6Amy Elsner
1016Murillo S ButtAustralia2026-04-27Rousseaux, Michael Esq NEGOTIATION16Asiya Javayant
1017Misaki M RulapaughJapan2026-04-28Feiner Bros NEW13Stephen Shaw
1018Greenwood B BriddickItaly2026-04-13Morlong Associates QUALIFIED46Anna Fali
1019Izzy D MorascaRussia2026-05-06Truhlar And Truhlar Attys QUALIFIED3Asiya Javayant
1020Morrow L FlosiUnited Kingdom2026-04-15Feiner Bros UNQUALIFIED83Amy Elsner
1021Costa M MaletIndia2026-04-20Chemel, James L Cpa QUALIFIED2Elwin Sharvill
1022Claire V RutaRussia2026-05-03Commercial Press NEGOTIATION7Elwin Sharvill
1023Faith V InouyeIndia2026-04-12Feltz Printing Service NEGOTIATION93Onyama Limba
1024Ashley X FollerCanada2026-04-29Commercial Press NEW4Xuxue Feng
1025Misaki R BologniaRussia2026-05-09Commercial Press QUALIFIED33Anna Fali
1026Costa W ShinkoUnited Kingdom2026-04-20Chanay, Jeffrey A Esq NEGOTIATION85Elwin Sharvill
1027Morrow A SaylorsGermany2026-05-07Rousseaux, Michael Esq UNQUALIFIED22Onyama Limba
1028Wickens B NestleFrance2026-05-05Chapman, Ross E Esq PROPOSAL54Amy Elsner
1029Ashley N PoquetteIndia2026-04-28Printing Dimensions RENEWAL3Stephen Shaw
1030Jones C FollerGermany2026-05-02Rangoni Of Florence NEW4Ioni Bowcher
1031Maisha G KolmetzItaly2026-04-20Buckley Miller Wright PROPOSAL43Anna Fali
1032Salvatore L TollnerItaly2026-04-18Feiner Bros NEGOTIATION98Asiya Javayant
1033Leja T VenereArgentina2026-05-03Buckley Miller Wright NEW62Asiya Javayant
1034Leja P PerinUnited Kingdom2026-04-30Chapman, Ross E Esq PROPOSAL60Bernardo Dominic
1035Leja O WieserFrance2026-04-15Chanay, Jeffrey A Esq NEGOTIATION25Bernardo Dominic
1036Jennifer D RutaJapan2026-04-29Dorl, James J Esq RENEWAL53Ivan Magalhaes
1037Aika K RutaCanada2026-05-04Feiner Bros QUALIFIED34Elwin Sharvill
1038Maisha R CaudyCanada2026-04-27Commercial Press UNQUALIFIED40Onyama Limba
1039Morrow H PerinUnited Kingdom2026-04-23Buckley Miller Wright RENEWAL43Xuxue Feng
1040Tony R RutaJapan2026-04-24Printing Dimensions PROPOSAL98Stephen Shaw
1041Clifford C FollerRussia2026-04-24Feiner Bros PROPOSAL77Anna Fali
1042Wickens O StensethFrance2026-04-25Rangoni Of Florence UNQUALIFIED15Ioni Bowcher
1043Julie O DoeItaly2026-04-13Truhlar And Truhlar Attys PROPOSAL82Asiya Javayant
1044Aika E MaletJapan2026-04-15Feltz Printing Service NEGOTIATION86Elwin Sharvill
1045Maisha P RoysterIndia2026-04-16Chemel, James L Cpa NEGOTIATION90Ivan Magalhaes
1046Darci O IturbideFrance2026-04-28King, Christopher A Esq RENEWAL18Xuxue Feng
1047Chavez E InouyeBrazil2026-04-22Feltz Printing Service RENEWAL34Onyama Limba
1048Leon Y NickaBrazil2026-04-14Feltz Printing Service QUALIFIED2Bernardo Dominic
1049Isabel P StockhamGermany2026-04-28Buckley Miller Wright PROPOSAL76Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Aika L GarufiBrazilAsiya Javayant QUALIFIED
Aika F RulapaughGermanyIvan Magalhaes RENEWAL
Rodrigues H RimUnited KingdomIoni Bowcher NEGOTIATION
Nicolas G GillianItalyOnyama Limba QUALIFIED
Alejandro O WaycottUnited KingdomIoni Bowcher NEGOTIATION
Octavia G NestleCanadaElwin Sharvill NEW
Tony M RutaGermanyAmy Elsner NEW
Leja E OldroydJapanElwin Sharvill PROPOSAL
Aika X GauchoRussiaAsiya Javayant PROPOSAL
Kaitlin I CaldareraIndiaStephen Shaw RENEWAL
Jeanfrancois B ShinkoRussiaOnyama Limba PROPOSAL
Ricardo U MaletCanadaIoni Bowcher RENEWAL
Faith F ShinkoRussiaIoni Bowcher RENEWAL
Mujtaba F SlusarskiIndiaAsiya Javayant NEGOTIATION
Arvin I MacleadCanadaXuxue Feng NEW
Ashley K RoysterGermanyAmy Elsner NEGOTIATION
Faith F BriddickCanadaIoni Bowcher RENEWAL
Smith C InouyeFranceAnna Fali PROPOSAL
Maisha B GauchoRussiaStephen Shaw PROPOSAL
Leja H NestleIndiaAsiya Javayant PROPOSAL
Nicolas Z FlosiAustraliaIoni Bowcher NEGOTIATION
Murillo U StockhamIndiaAnna Fali RENEWAL
Maria X BologniaIndiaXuxue Feng RENEWAL
Silvio X StensethJapanStephen Shaw QUALIFIED
Rodrigues Z PaprockiBrazilOnyama Limba NEGOTIATION
Jennifer R FollerCanadaXuxue Feng RENEWAL
Claire I OstroskyArgentinaAsiya Javayant NEGOTIATION
Claire R AlbaresIndiaAmy Elsner NEGOTIATION
Francesco B FerenczRussiaAnna Fali NEGOTIATION
Wickens A FerenczCanadaXuxue Feng QUALIFIED
Jefferson B WaycottGermanyIoni Bowcher UNQUALIFIED
Jennifer K MarrierFranceOnyama Limba QUALIFIED
Mujtaba Z FerenczSpainIoni Bowcher NEGOTIATION
Francesco U RimFranceStephen Shaw NEW
Aditya J CaudySpainAnna Fali NEW
Rodrigues C CaldareraSpainAsiya Javayant RENEWAL
Mayumi I VenereUnited KingdomXuxue Feng RENEWAL
Maisha D OstroskyGermanyAnna Fali NEW
Antonio J DoeArgentinaStephen Shaw PROPOSAL
Chavez Q PaprockiItalyOnyama Limba RENEWAL
Kadeem A FerenczCanadaBernardo Dominic PROPOSAL
Julie B RulapaughFranceBernardo Dominic NEGOTIATION
Johnson S RoysterSpainOnyama Limba NEW
Alejandro H NestleRussiaIvan Magalhaes UNQUALIFIED
Arvin L PerinBrazilStephen Shaw UNQUALIFIED
Ivar V CaudyItalyAnna Fali PROPOSAL
Julie V SlusarskiAustraliaAsiya Javayant NEW
Leja X OstroskyRussiaBernardo Dominic NEW
Nicolas M PerinIndiaAsiya Javayant UNQUALIFIED
Leja K IturbideIndiaXuxue Feng RENEWAL
Frozen Columns
Name
Antonio R Wieser
Munro A Figeroa
Greenwood G Campain
Murillo U Whobrey
Wickens R Slusarski
Arvin Z Ostrosky
Jeanfrancois C Bowley
Alejandro A Royster
Adams I Bowley
Izzy G Iturbide
Morrow O Amigon
James I Albares
Nicolas M Royster
Darci Y Maclead
Leja Z Stenseth
Izzy K Wieser
Nicolas C Caudy
Emily U Waycott
Jennifer G Oldroyd
Murillo B Waycott
Maisha W Ruta
Leon Q Morasca
Maisha W Schemmer
Izzy J Morasca
Morrow G Poquette
Munro D Doe
Mujtaba S Briddick
Murillo I Ferencz
Costa P Amigon
Isabel S Ruta
Smith E Briddick
Jefferson M Vocelka
Alejandro N Ostrosky
Deepesh R Wieser
Greenwood G Rim
Silvio Q Rim
Kadeem X Whobrey
Rodrigues Y Wieser
Deepesh A Stenseth
Alejandro O Rulapaugh
Aika Q Maclead
Isabel R Iturbide
Aditya Z Malet
Munro Y Dilliard
Emily A Poquette
Misaki F Glick
Isabel T Oldroyd
Kaitlin J Caudy
Clifford V Marrier
Salvatore W Vocelka
IdCountryDate
1000India2026-05-02
1001Australia2026-04-28
1002Australia2026-04-20
1003Italy2026-04-13
1004Spain2026-05-09
1005Brazil2026-04-24
1006Argentina2026-04-16
1007India2026-04-13
1008Australia2026-04-24
1009Canada2026-04-27
1010Brazil2026-05-08
1011Spain2026-04-23
1012Australia2026-04-25
1013Canada2026-04-23
1014Germany2026-04-26
1015Brazil2026-04-29
1016Italy2026-04-14
1017Spain2026-04-15
1018Australia2026-04-16
1019Germany2026-04-29
1020India2026-04-12
1021Russia2026-04-16
1022Canada2026-04-19
1023Australia2026-04-24
1024Australia2026-04-24
1025France2026-04-22
1026United Kingdom2026-04-17
1027Spain2026-05-04
1028Germany2026-04-23
1029Japan2026-04-24
1030Spain2026-05-02
1031Australia2026-04-25
1032Russia2026-05-04
1033United Kingdom2026-04-19
1034United Kingdom2026-05-08
1035Canada2026-05-09
1036France2026-04-25
1037Argentina2026-04-19
1038Italy2026-04-14
1039France2026-04-18
1040India2026-04-16
1041United Kingdom2026-04-15
1042France2026-04-23
1043France2026-04-21
1044Canada2026-04-20
1045Germany2026-05-10
1046Argentina2026-05-02
1047Germany2026-04-29
1048Italy2026-05-05
1049Italy2026-04-18

On-Demand Data

NameIdCountryDate
Ricardo N Iturbide1000Canada2026-04-14
Tony U Darakjy1001Canada2026-04-15
Greenwood F Gaucho1002Canada2026-05-04
Octavia Q Slusarski1003Italy2026-04-21
Morrow X Nicka1004France2026-04-18
Deepesh N Ostrosky1005India2026-04-26
Mujtaba Z Wieser1006Argentina2026-04-19
Cody V Flosi1007Italy2026-05-08
Antonio W Venere1008Spain2026-04-17
Silvio T Darakjy1009India2026-05-05
Tony F Kolmetz1010India2026-05-09
Antonio A Darakjy1011Germany2026-04-12
Ivar J Flosi1012Italy2026-05-06
Morrow W Inouye1013France2026-04-30
Izzy E Maclead1014Canada2026-04-29
Ashley D Sergi1015France2026-04-18
Antonio K Saylors1016Germany2026-05-05
Claire F Sergi1017Argentina2026-05-03
David S Sergi1018Italy2026-04-20
Maisha D Shinko1019Germany2026-05-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya A MacleadItalyAmy Elsner RENEWAL
Ivar S GillianRussiaAnna Fali NEGOTIATION
Morrow M PaprockiRussiaStephen Shaw NEW
Isabel F PerinJapanStephen Shaw RENEWAL
Greenwood Z RulapaughUnited KingdomXuxue Feng UNQUALIFIED
Costa B BologniaRussiaOnyama Limba NEW
Darci Y SlusarskiBrazilElwin Sharvill RENEWAL
Faith W SaylorsGermanyAnna Fali RENEWAL
Jennifer X MaletIndiaBernardo Dominic UNQUALIFIED
David O RutaUnited KingdomStephen Shaw RENEWAL
Alejandro G FlosiRussiaIoni Bowcher QUALIFIED
Silvio O OldroydFranceIvan Magalhaes QUALIFIED
Antonio M SchemmerUnited KingdomStephen Shaw QUALIFIED
Aditya E KuskoIndiaElwin Sharvill PROPOSAL
Sinclair O ButtBrazilIoni Bowcher PROPOSAL
James H TollnerGermanyAmy Elsner UNQUALIFIED
Salvatore O BologniaArgentinaIvan Magalhaes NEW
Nicolas J BologniaItalyStephen Shaw NEW
Mayumi S TollnerIndiaAnna Fali RENEWAL
Mayumi T TollnerFranceStephen Shaw PROPOSAL
Wickens F OldroydSpainAsiya Javayant PROPOSAL
Smith S FlosiItalyIvan Magalhaes QUALIFIED
Izzy H GillianGermanyOnyama Limba NEW
Silvio U GarufiUnited KingdomAnna Fali PROPOSAL
Clifford U GillianGermanyIvan Magalhaes NEGOTIATION
Jennifer F ButtIndiaIvan Magalhaes UNQUALIFIED
Izzy T MaletItalyElwin Sharvill PROPOSAL
James Q RutaFranceAmy Elsner NEGOTIATION
Cody Q WaycottGermanyBernardo Dominic NEW
Mujtaba G RulapaughBrazilXuxue Feng NEW
Nicolas S SlusarskiFranceAnna Fali RENEWAL
Isabel N SlusarskiCanadaIvan Magalhaes UNQUALIFIED
Tony N FerenczRussiaAsiya Javayant NEW
Deepesh E RutaItalyAmy Elsner RENEWAL
Jeanfrancois U GauchoCanadaAsiya Javayant UNQUALIFIED
Octavia R GauchoFranceStephen Shaw NEGOTIATION
Nicolas J WhobreyGermanyAsiya Javayant QUALIFIED
Costa L WhobreyJapanIoni Bowcher RENEWAL
Misaki L CaldareraSpainAmy Elsner PROPOSAL
Ricardo D WaycottCanadaStephen Shaw NEW

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