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
Aruna J KolmetzFranceAsiya Javayant UNQUALIFIED
Costa W NickaJapanAsiya Javayant PROPOSAL
Juan O RoysterGermanyElwin Sharvill RENEWAL
Jones I CaldareraFranceIvan Magalhaes UNQUALIFIED
Faith X StockhamBrazilStephen Shaw UNQUALIFIED
Mujtaba H VenereBrazilIoni Bowcher RENEWAL
Mayumi O RoysterSpainStephen Shaw UNQUALIFIED
Deepesh E FlosiFranceElwin Sharvill NEW
Tony E BowleyCanadaAsiya Javayant QUALIFIED
Clifford Z PaprockiCanadaIvan Magalhaes UNQUALIFIED
Aditya C StockhamItalyBernardo Dominic NEW
Morrow V SchemmerItalyIoni Bowcher QUALIFIED
Darci D VenereCanadaAnna Fali PROPOSAL
Antonio A OldroydSpainAnna Fali NEGOTIATION
Darci U SchemmerBrazilIvan Magalhaes NEGOTIATION
Julie B BowleyFranceElwin Sharvill PROPOSAL
Arvin G KuskoAustraliaXuxue Feng NEW
David F GillianUnited KingdomStephen Shaw UNQUALIFIED
Francesco U BriddickAustraliaBernardo Dominic UNQUALIFIED
Aditya K ButtItalyBernardo Dominic UNQUALIFIED
Antonio Z InouyeFranceAsiya Javayant PROPOSAL
Nicolas U ChuiItalyBernardo Dominic NEGOTIATION
Deepesh P DoeUnited KingdomAmy Elsner NEW
Leon W OldroydAustraliaAmy Elsner NEW
David Z MarrierGermanyXuxue Feng UNQUALIFIED
Aika R BriddickAustraliaXuxue Feng NEW
Rodrigues H MacleadBrazilIoni Bowcher NEGOTIATION
Smith V BowleyFranceAnna Fali NEGOTIATION
Octavia E GillianIndiaAsiya Javayant NEW
Smith V FollerUnited KingdomIoni Bowcher QUALIFIED
Octavia L NestleArgentinaBernardo Dominic NEW
Antonio O DoeItalyOnyama Limba NEW
Ashley O SaylorsCanadaIoni Bowcher PROPOSAL
Leon W ShinkoIndiaAsiya Javayant QUALIFIED
Silvio O GauchoFranceXuxue Feng RENEWAL
Emily W GarufiGermanyStephen Shaw NEGOTIATION
Francesco Y MorascaIndiaStephen Shaw QUALIFIED
Jefferson C MarrierCanadaIoni Bowcher PROPOSAL
Alejandro O CaldareraSpainXuxue Feng QUALIFIED
Jones K FigeroaFranceElwin Sharvill PROPOSAL
Isabel U InouyeArgentinaBernardo Dominic QUALIFIED
Stacey D BologniaArgentinaIvan Magalhaes NEW
Nicolas M SaylorsJapanBernardo Dominic PROPOSAL
Maria C DoeGermanyIoni Bowcher PROPOSAL
Claire X RulapaughFranceBernardo Dominic UNQUALIFIED
Emily M FigeroaSpainIoni Bowcher NEGOTIATION
Silvio K IturbideCanadaElwin Sharvill QUALIFIED
Kaitlin A CampainArgentinaAsiya Javayant NEW
Ivar P RimJapanIoni Bowcher QUALIFIED
Mujtaba C RimItalyBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Juan M AmigonArgentinaAmy Elsner NEW
Jones D InouyeGermanyElwin Sharvill PROPOSAL
Julie K RimBrazilIoni Bowcher UNQUALIFIED
Smith C SaylorsSpainXuxue Feng NEW
Emily K WhobreyBrazilElwin Sharvill QUALIFIED
Tony U ButtUnited KingdomIoni Bowcher RENEWAL
Kaitlin F RutaIndiaStephen Shaw PROPOSAL
Deepesh X VenereFranceIoni Bowcher PROPOSAL
James L MaletItalyIoni Bowcher UNQUALIFIED
Morrow Y RutaRussiaBernardo Dominic NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley G AlbaresGermany2026-04-16King, Christopher A Esq QUALIFIED58Xuxue Feng
1001Deepesh G KuskoRussia2026-05-02Dorl, James J Esq NEGOTIATION72Anna Fali
1002Aruna C MorascaSpain2026-05-13Truhlar And Truhlar Attys NEW53Anna Fali
1003Rodrigues B MorascaGermany2026-04-16Rangoni Of Florence NEGOTIATION62Asiya Javayant
1004Wickens P KolmetzJapan2026-05-09Feiner Bros NEGOTIATION79Asiya Javayant
1005Claire F PaprockiCanada2026-05-12Truhlar And Truhlar Attys NEW39Stephen Shaw
1006David C StensethGermany2026-05-04Truhlar And Truhlar Attys QUALIFIED74Anna Fali
1007Izzy C RimSpain2026-04-22Chapman, Ross E Esq RENEWAL62Ioni Bowcher
1008Faith Z OldroydSpain2026-04-28Rangoni Of Florence QUALIFIED51Anna Fali
1009Clifford Y CaldareraArgentina2026-05-03Feiner Bros RENEWAL40Bernardo Dominic
1010Deepesh A DoeGermany2026-04-18Chemel, James L Cpa NEW15Ioni Bowcher
1011Aditya V FlosiBrazil2026-04-28Feltz Printing Service NEGOTIATION1Ivan Magalhaes
1012Murillo R MarrierSpain2026-04-30Chemel, James L Cpa NEGOTIATION39Anna Fali
1013Izzy Q SaylorsItaly2026-04-27King, Christopher A Esq RENEWAL61Xuxue Feng
1014Leja J InouyeCanada2026-05-14Chanay, Jeffrey A Esq RENEWAL72Stephen Shaw
1015Darci B MorascaFrance2026-05-07Printing Dimensions NEGOTIATION40Stephen Shaw
1016Kaitlin M BowleyIndia2026-05-08Chapman, Ross E Esq UNQUALIFIED92Ioni Bowcher
1017Greenwood G NestleCanada2026-05-01Feltz Printing Service QUALIFIED9Ivan Magalhaes
1018Jeanfrancois W AlbaresBrazil2026-05-12Printing Dimensions UNQUALIFIED69Asiya Javayant
1019Izzy D BowleyFrance2026-05-12Commercial Press NEW20Ivan Magalhaes
1020Alejandro O FigeroaRussia2026-04-29Commercial Press UNQUALIFIED29Onyama Limba
1021Jennifer N OldroydFrance2026-04-19Chemel, James L Cpa NEGOTIATION51Stephen Shaw
1022James F AlbaresJapan2026-05-09Feiner Bros NEW78Xuxue Feng
1023Kaitlin N MaletGermany2026-05-03Benton, John B Jr QUALIFIED72Stephen Shaw
1024Leon Z OldroydFrance2026-05-06Benton, John B Jr QUALIFIED96Asiya Javayant
1025Izzy B NestleArgentina2026-04-26Truhlar And Truhlar Attys PROPOSAL52Ivan Magalhaes
1026Aruna S MorascaRussia2026-04-24Morlong Associates QUALIFIED55Asiya Javayant
1027Silvio P SchemmerArgentina2026-05-02Truhlar And Truhlar Attys NEGOTIATION63Ivan Magalhaes
1028Murillo T StensethRussia2026-04-24King, Christopher A Esq UNQUALIFIED85Bernardo Dominic
1029Julie Q SchemmerGermany2026-05-09Printing Dimensions PROPOSAL50Anna Fali
1030Maisha O TollnerUnited Kingdom2026-05-01Printing Dimensions NEGOTIATION80Stephen Shaw
1031Aika U ChuiUnited Kingdom2026-04-19Chanay, Jeffrey A Esq NEGOTIATION2Bernardo Dominic
1032Clifford G SergiAustralia2026-05-02Chapman, Ross E Esq QUALIFIED60Amy Elsner
1033Jefferson U VocelkaRussia2026-04-30Truhlar And Truhlar Attys QUALIFIED54Amy Elsner
1034Juan D NickaArgentina2026-04-19Benton, John B Jr NEW78Amy Elsner
1035Maria N SaylorsItaly2026-05-04Printing Dimensions RENEWAL94Bernardo Dominic
1036Ashley C BologniaBrazil2026-04-26Feiner Bros PROPOSAL16Ioni Bowcher
1037Morrow V FigeroaSpain2026-04-21Truhlar And Truhlar Attys NEW76Xuxue Feng
1038Deepesh C VenereItaly2026-05-04Buckley Miller Wright NEGOTIATION17Ioni Bowcher
1039Misaki D BologniaCanada2026-05-11King, Christopher A Esq NEW66Onyama Limba
1040Greenwood A ChuiArgentina2026-04-26Morlong Associates PROPOSAL80Anna Fali
1041Morrow X MarrierItaly2026-04-24Rangoni Of Florence NEW13Elwin Sharvill
1042Francesco E DilliardItaly2026-05-14Dorl, James J Esq PROPOSAL58Bernardo Dominic
1043Aditya I WieserGermany2026-05-08Printing Dimensions PROPOSAL13Elwin Sharvill
1044Antonio Q MorascaUnited Kingdom2026-04-30Chanay, Jeffrey A Esq RENEWAL7Stephen Shaw
1045Alejandro L OldroydItaly2026-05-08King, Christopher A Esq UNQUALIFIED61Bernardo Dominic
1046Stacey M GarufiGermany2026-04-28Printing Dimensions NEGOTIATION63Xuxue Feng
1047Kaitlin P DilliardIndia2026-05-05Commercial Press UNQUALIFIED69Elwin Sharvill
1048Johnson V VenereFrance2026-05-04Feiner Bros NEW33Ivan Magalhaes
1049Ivar D FlosiIndia2026-04-28Benton, John B Jr PROPOSAL68Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Octavia K MorascaRussiaXuxue Feng QUALIFIED
Clifford D BowleyUnited KingdomAnna Fali PROPOSAL
Antonio D WhobreyBrazilIvan Magalhaes RENEWAL
Wickens W RoysterCanadaAsiya Javayant UNQUALIFIED
Francesco Y FigeroaFranceIvan Magalhaes QUALIFIED
Kaitlin Y MarrierSpainBernardo Dominic NEGOTIATION
Alejandro Q NestleGermanyAmy Elsner QUALIFIED
Misaki J MorascaAustraliaIoni Bowcher NEGOTIATION
Morrow X InouyeIndiaIvan Magalhaes NEGOTIATION
Wickens U RutaItalyStephen Shaw UNQUALIFIED
Murillo I SlusarskiSpainStephen Shaw QUALIFIED
Ivar Q VenereCanadaIoni Bowcher UNQUALIFIED
Munro J ButtJapanAmy Elsner NEGOTIATION
Aika H CampainAustraliaBernardo Dominic RENEWAL
Wickens H WieserGermanyXuxue Feng QUALIFIED
Aika J SlusarskiBrazilAnna Fali RENEWAL
Maisha W VenereJapanAmy Elsner PROPOSAL
Johnson T KolmetzArgentinaIoni Bowcher NEW
Cody P PaprockiSpainIvan Magalhaes NEW
Antonio P VenereJapanAsiya Javayant UNQUALIFIED
Aditya S GlickAustraliaIoni Bowcher UNQUALIFIED
Aditya J IturbideBrazilXuxue Feng UNQUALIFIED
Clifford N CampainAustraliaOnyama Limba PROPOSAL
Stacey J VocelkaJapanOnyama Limba NEW
Deepesh O VenereJapanElwin Sharvill PROPOSAL
Kadeem G MaletIndiaIvan Magalhaes NEW
Salvatore E GauchoIndiaAsiya Javayant PROPOSAL
David M PoquetteFranceStephen Shaw PROPOSAL
Clifford A GauchoCanadaElwin Sharvill NEGOTIATION
Smith U FerenczGermanyBernardo Dominic NEW
Greenwood I GarufiGermanyBernardo Dominic RENEWAL
Murillo J SchemmerGermanyAnna Fali PROPOSAL
Jefferson W WhobreyArgentinaElwin Sharvill NEGOTIATION
Jeanfrancois E DilliardJapanOnyama Limba NEW
Nicolas B WaycottFranceIvan Magalhaes QUALIFIED
Munro X RulapaughArgentinaOnyama Limba UNQUALIFIED
Claire J BowleyArgentinaXuxue Feng NEGOTIATION
Jennifer Z DoeCanadaXuxue Feng QUALIFIED
Jennifer L RutaRussiaOnyama Limba UNQUALIFIED
Jennifer D CaldareraFranceAmy Elsner NEW
Silvio Y ButtRussiaIoni Bowcher NEW
Izzy O MaletJapanOnyama Limba NEW
Jefferson W WaycottArgentinaXuxue Feng RENEWAL
Maisha I GillianIndiaIoni Bowcher UNQUALIFIED
Alejandro S KuskoJapanAsiya Javayant NEW
Adams T OstroskyUnited KingdomXuxue Feng PROPOSAL
Clifford V FollerRussiaStephen Shaw NEW
Kadeem W ButtSpainAsiya Javayant RENEWAL
Claire E GillianCanadaXuxue Feng QUALIFIED
James U AmigonItalyIvan Magalhaes QUALIFIED
Frozen Columns
Name
Julie L Vocelka
Leja D Briddick
Emily Z Kusko
Jennifer B Briddick
Kadeem R Poquette
Deepesh Z Bowley
Deepesh D Gaucho
Murillo W Sergi
Leja O Kolmetz
Wickens P Saylors
Ashley D Rim
Deepesh K Waycott
Maria F Gillian
Silvio N Chui
Izzy C Chui
Aruna D Paprocki
Rodrigues X Inouye
Darci M Shinko
Maisha Y Caudy
Leja X Nestle
Chavez C Vocelka
Smith I Caldarera
Isabel P Briddick
Mayumi R Foller
Darci R Campain
Ivar V Flosi
Adams R Nicka
Mujtaba U Rulapaugh
Jones R Caudy
Ricardo A Nicka
Leja N Vocelka
Alejandro Y Garufi
Kadeem W Sergi
Murillo S Royster
Arvin B Morasca
Isabel C Foller
Rodrigues Z Caldarera
Antonio C Whobrey
Cody X Gaucho
Smith Y Rim
Morrow P Oldroyd
Alejandro Q Albares
Kaitlin Q Iturbide
Leon V Whobrey
Munro K Foller
Kadeem N Ruta
Kaitlin M Nestle
Juan E Venere
Munro T Malet
Ricardo K Whobrey
IdCountryDate
1000Italy2026-04-23
1001Spain2026-05-03
1002Brazil2026-04-18
1003India2026-05-07
1004Australia2026-05-11
1005France2026-05-15
1006United Kingdom2026-04-28
1007United Kingdom2026-04-21
1008Australia2026-05-13
1009Spain2026-05-12
1010Canada2026-04-30
1011Brazil2026-05-07
1012Italy2026-05-01
1013Italy2026-05-08
1014Russia2026-05-15
1015Japan2026-05-11
1016Japan2026-04-22
1017Italy2026-04-29
1018Brazil2026-05-06
1019Italy2026-04-16
1020Spain2026-04-22
1021Australia2026-04-16
1022Australia2026-04-22
1023Germany2026-05-12
1024Japan2026-05-01
1025Brazil2026-04-23
1026Australia2026-05-10
1027Japan2026-04-24
1028Brazil2026-04-20
1029Italy2026-04-17
1030Brazil2026-04-21
1031Argentina2026-05-13
1032United Kingdom2026-05-06
1033Canada2026-04-20
1034Argentina2026-04-18
1035Japan2026-05-12
1036Japan2026-04-22
1037Australia2026-05-07
1038United Kingdom2026-04-29
1039India2026-05-02
1040Australia2026-05-01
1041Brazil2026-04-17
1042France2026-04-30
1043Brazil2026-05-08
1044United Kingdom2026-04-24
1045Argentina2026-04-17
1046Australia2026-05-02
1047Spain2026-05-14
1048Brazil2026-05-02
1049Germany2026-04-27

On-Demand Data

NameIdCountryDate
Octavia D Whobrey1000France2026-05-09
Octavia Y Waycott1001Japan2026-04-26
Rodrigues T Whobrey1002Spain2026-04-29
Wickens K Wieser1003Brazil2026-05-09
Silvio Z Rim1004Canada2026-04-30
Jennifer M Inouye1005Brazil2026-05-10
Adams G Amigon1006Spain2026-05-14
Johnson A Royster1007Canada2026-04-16
Antonio L Garufi1008Japan2026-05-13
Mayumi E Tollner1009Australia2026-04-21
Munro G Amigon1010Spain2026-05-13
Antonio U Malet1011Italy2026-05-06
Alejandro H Chui1012India2026-05-06
Octavia Q Rim1013France2026-05-15
Deepesh R Kolmetz1014Argentina2026-05-03
Faith J Ferencz1015United Kingdom2026-04-24
Jefferson R Albares1016Italy2026-05-15
Antonio B Perin1017India2026-04-16
Misaki P Saylors1018Spain2026-05-06
Isabel G Shinko1019Argentina2026-04-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja L SlusarskiCanadaStephen Shaw UNQUALIFIED
Antonio W VocelkaItalyAsiya Javayant UNQUALIFIED
Isabel X OldroydSpainXuxue Feng NEW
Jones Y ButtUnited KingdomAnna Fali QUALIFIED
Kaitlin A FlosiJapanIoni Bowcher NEW
Adams G BowleyAustraliaElwin Sharvill NEGOTIATION
Alejandro C SergiFranceAnna Fali RENEWAL
Wickens Z SchemmerArgentinaOnyama Limba RENEWAL
Jefferson M GauchoIndiaElwin Sharvill PROPOSAL
Mayumi H KolmetzRussiaStephen Shaw QUALIFIED
Maria S FollerBrazilAnna Fali NEW
Faith N AmigonItalyElwin Sharvill RENEWAL
Faith U IturbideUnited KingdomBernardo Dominic QUALIFIED
Faith L MorascaRussiaElwin Sharvill PROPOSAL
Jones G GillianBrazilAmy Elsner UNQUALIFIED
Nicolas H WieserJapanIoni Bowcher PROPOSAL
Jones Z GlickSpainStephen Shaw UNQUALIFIED
Cody J FlosiUnited KingdomOnyama Limba RENEWAL
Johnson I MorascaFranceAmy Elsner RENEWAL
Clifford B IturbideGermanyIoni Bowcher QUALIFIED
Faith W RimRussiaXuxue Feng QUALIFIED
David Z VenereJapanAmy Elsner QUALIFIED
Arvin C SaylorsUnited KingdomXuxue Feng RENEWAL
Faith T BologniaItalyElwin Sharvill PROPOSAL
Aruna U GillianBrazilAsiya Javayant NEGOTIATION
Antonio C MarrierIndiaStephen Shaw NEW
Sinclair I DoeSpainAnna Fali RENEWAL
Greenwood X MacleadCanadaXuxue Feng NEGOTIATION
Jeanfrancois Y CampainIndiaIoni Bowcher NEW
David H CaldareraFranceIvan Magalhaes UNQUALIFIED
Mujtaba G AmigonSpainAsiya Javayant PROPOSAL
Adams I VocelkaIndiaElwin Sharvill NEW
Aruna W RimRussiaElwin Sharvill QUALIFIED
Deepesh I RulapaughJapanStephen Shaw NEW
Isabel R SchemmerUnited KingdomStephen Shaw UNQUALIFIED
Francesco W ShinkoCanadaAnna Fali UNQUALIFIED
Greenwood F InouyeItalyAsiya Javayant QUALIFIED
Silvio Y NickaSpainBernardo Dominic QUALIFIED
Leon M TollnerUnited KingdomBernardo Dominic NEW
Alejandro Z SchemmerJapanIoni Bowcher 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.