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
Izzy J MaletUnited KingdomOnyama Limba UNQUALIFIED
Tony Q MarrierItalyAnna Fali NEW
Arvin G CampainUnited KingdomIoni Bowcher UNQUALIFIED
Antonio J MaletBrazilXuxue Feng QUALIFIED
Cody V OldroydBrazilIvan Magalhaes RENEWAL
Jennifer R MacleadIndiaAmy Elsner RENEWAL
Kaitlin A KolmetzSpainElwin Sharvill NEW
Clifford N WhobreyCanadaElwin Sharvill NEW
Salvatore S GillianBrazilAsiya Javayant NEW
Wickens N ButtRussiaAmy Elsner UNQUALIFIED
Murillo M AmigonSpainAsiya Javayant QUALIFIED
Jones Y CampainGermanyAmy Elsner NEW
Murillo Y IturbideGermanyXuxue Feng RENEWAL
Jones G StensethArgentinaIoni Bowcher NEW
Sinclair Q CampainRussiaAsiya Javayant PROPOSAL
Clifford D GarufiJapanBernardo Dominic NEW
Adams Y OstroskyGermanyAmy Elsner UNQUALIFIED
Kadeem F VocelkaIndiaOnyama Limba UNQUALIFIED
Antonio V FerenczIndiaOnyama Limba NEW
Mujtaba Z BologniaSpainAmy Elsner RENEWAL
David Y CampainItalyElwin Sharvill UNQUALIFIED
Izzy Y MaletIndiaBernardo Dominic NEGOTIATION
Tony H InouyeAustraliaStephen Shaw NEW
Wickens V StensethItalyAsiya Javayant UNQUALIFIED
Emily C RutaJapanAsiya Javayant UNQUALIFIED
Murillo B RulapaughFranceIoni Bowcher UNQUALIFIED
Sinclair J FigeroaUnited KingdomAsiya Javayant QUALIFIED
Costa U VenereJapanXuxue Feng RENEWAL
Jefferson W DoeCanadaIvan Magalhaes RENEWAL
Nicolas Y WieserFranceIoni Bowcher PROPOSAL
Kadeem A KolmetzRussiaStephen Shaw QUALIFIED
Ivar L VocelkaAustraliaBernardo Dominic PROPOSAL
Ashley P RulapaughAustraliaAsiya Javayant UNQUALIFIED
Octavia C RimAustraliaAnna Fali RENEWAL
Leon Q NestleCanadaOnyama Limba PROPOSAL
Jones X RimJapanAnna Fali PROPOSAL
Faith B SlusarskiIndiaElwin Sharvill QUALIFIED
Morrow L AlbaresJapanXuxue Feng QUALIFIED
Tony S SergiAustraliaAnna Fali UNQUALIFIED
Maria Y VocelkaUnited KingdomBernardo Dominic NEGOTIATION
Leja B WhobreyJapanStephen Shaw NEW
Cody X StensethAustraliaIoni Bowcher RENEWAL
Cody K OstroskyItalyElwin Sharvill NEW
Darci V ButtGermanyXuxue Feng NEW
Clifford S PerinGermanyIoni Bowcher RENEWAL
Jennifer W IturbideSpainAsiya Javayant NEGOTIATION
Kadeem O PoquetteIndiaStephen Shaw RENEWAL
Izzy J SergiIndiaOnyama Limba RENEWAL
Aika D FigeroaRussiaStephen Shaw RENEWAL
Cody F KolmetzCanadaIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Antonio I SchemmerAustraliaStephen Shaw PROPOSAL
Ricardo K GarufiSpainXuxue Feng NEGOTIATION
Mujtaba W RoysterSpainXuxue Feng NEW
Arvin X MorascaSpainIvan Magalhaes UNQUALIFIED
David F RoysterGermanyXuxue Feng RENEWAL
Misaki Z ShinkoFranceOnyama Limba UNQUALIFIED
Leon N PerinIndiaAsiya Javayant PROPOSAL
Aruna A SchemmerGermanyElwin Sharvill UNQUALIFIED
Salvatore L VenereJapanAmy Elsner QUALIFIED
Sinclair M VenereItalyOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio H RoysterCanada2026-06-11Truhlar And Truhlar Attys PROPOSAL88Ioni Bowcher
1001Stacey O FigeroaCanada2026-06-05Printing Dimensions QUALIFIED64Stephen Shaw
1002Ashley L PoquetteGermany2026-06-01Chanay, Jeffrey A Esq PROPOSAL55Ivan Magalhaes
1003Ivar W RimArgentina2026-05-28Chanay, Jeffrey A Esq UNQUALIFIED18Ioni Bowcher
1004Arvin Z VocelkaJapan2026-06-21Rousseaux, Michael Esq RENEWAL79Xuxue Feng
1005Stacey L IturbideSpain2026-06-25Dorl, James J Esq NEGOTIATION75Xuxue Feng
1006Salvatore W SaylorsUnited Kingdom2026-06-08Feltz Printing Service NEGOTIATION38Elwin Sharvill
1007David T RimAustralia2026-06-07Chanay, Jeffrey A Esq UNQUALIFIED80Asiya Javayant
1008Jeanfrancois M FlosiFrance2026-06-02Printing Dimensions PROPOSAL51Ioni Bowcher
1009Antonio L FigeroaAustralia2026-06-05Buckley Miller Wright PROPOSAL73Stephen Shaw
1010Stacey Z TollnerBrazil2026-06-17Chanay, Jeffrey A Esq QUALIFIED60Amy Elsner
1011Aditya N VocelkaBrazil2026-06-24Chanay, Jeffrey A Esq NEGOTIATION92Xuxue Feng
1012Tony T GlickUnited Kingdom2026-06-05Chanay, Jeffrey A Esq NEW93Ivan Magalhaes
1013Clifford L CaldareraUnited Kingdom2026-06-17Morlong Associates RENEWAL47Ioni Bowcher
1014Aika H FigeroaJapan2026-05-27Chemel, James L Cpa UNQUALIFIED6Bernardo Dominic
1015Jennifer Y CaldareraBrazil2026-06-12King, Christopher A Esq UNQUALIFIED44Asiya Javayant
1016Isabel R SlusarskiIndia2026-06-22Feltz Printing Service QUALIFIED45Bernardo Dominic
1017Greenwood Y OldroydCanada2026-06-05Commercial Press RENEWAL81Stephen Shaw
1018Leon E SchemmerJapan2026-05-28Printing Dimensions RENEWAL25Ioni Bowcher
1019Francesco U WaycottBrazil2026-06-10Rousseaux, Michael Esq NEGOTIATION54Ioni Bowcher
1020Adams B KolmetzGermany2026-06-06Feiner Bros PROPOSAL17Asiya Javayant
1021Izzy Y VocelkaGermany2026-05-30Benton, John B Jr PROPOSAL49Ivan Magalhaes
1022Izzy K MaletJapan2026-06-22Rangoni Of Florence PROPOSAL46Bernardo Dominic
1023Tony N PerinFrance2026-06-13Buckley Miller Wright RENEWAL96Anna Fali
1024Juan M RulapaughFrance2026-06-14Truhlar And Truhlar Attys RENEWAL10Ivan Magalhaes
1025Aruna E MorascaIndia2026-06-25Chemel, James L Cpa QUALIFIED64Asiya Javayant
1026Johnson E RimRussia2026-06-19King, Christopher A Esq UNQUALIFIED94Amy Elsner
1027Wickens D OldroydCanada2026-06-21Morlong Associates NEW74Stephen Shaw
1028Ricardo D MacleadRussia2026-06-10Feltz Printing Service NEGOTIATION62Onyama Limba
1029Julie X BriddickFrance2026-06-07Printing Dimensions NEGOTIATION12Asiya Javayant
1030Isabel V VenereFrance2026-06-06Chapman, Ross E Esq NEGOTIATION64Stephen Shaw
1031Chavez N MorascaItaly2026-06-05Benton, John B Jr QUALIFIED94Onyama Limba
1032Claire T OldroydIndia2026-06-04Buckley Miller Wright QUALIFIED31Amy Elsner
1033Deepesh S KolmetzGermany2026-06-03Chemel, James L Cpa QUALIFIED98Amy Elsner
1034Leon J RoysterUnited Kingdom2026-06-06Buckley Miller Wright QUALIFIED70Ivan Magalhaes
1035Antonio P CaudyCanada2026-06-10Chapman, Ross E Esq UNQUALIFIED55Asiya Javayant
1036Claire Y GlickItaly2026-05-29Chemel, James L Cpa UNQUALIFIED76Stephen Shaw
1037Morrow H DilliardJapan2026-06-01Rangoni Of Florence RENEWAL33Onyama Limba
1038Misaki U GillianGermany2026-06-20Chapman, Ross E Esq NEW42Anna Fali
1039Juan O RutaIndia2026-05-27Buckley Miller Wright NEGOTIATION1Onyama Limba
1040Deepesh Z SchemmerCanada2026-05-27Truhlar And Truhlar Attys UNQUALIFIED61Asiya Javayant
1041Murillo H NestleIndia2026-05-29Buckley Miller Wright NEGOTIATION75Asiya Javayant
1042Alejandro C CaldareraUnited Kingdom2026-05-29Chemel, James L Cpa QUALIFIED3Anna Fali
1043Sinclair H NickaJapan2026-06-01Benton, John B Jr RENEWAL59Anna Fali
1044David L GillianRussia2026-05-31Truhlar And Truhlar Attys RENEWAL29Xuxue Feng
1045Alejandro Q VenereJapan2026-05-30Truhlar And Truhlar Attys NEGOTIATION35Bernardo Dominic
1046Cody M MorascaItaly2026-06-19Feltz Printing Service NEGOTIATION8Elwin Sharvill
1047Wickens H SaylorsItaly2026-06-21King, Christopher A Esq NEGOTIATION64Ioni Bowcher
1048Jones A SergiCanada2026-06-25Rousseaux, Michael Esq RENEWAL78Bernardo Dominic
1049Faith E BowleyArgentina2026-06-15Buckley Miller Wright RENEWAL46Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Tony E AmigonRussiaBernardo Dominic QUALIFIED
Antonio X FollerRussiaStephen Shaw PROPOSAL
Deepesh G VocelkaIndiaXuxue Feng NEGOTIATION
Claire T VocelkaRussiaAmy Elsner RENEWAL
Ivar V RulapaughCanadaOnyama Limba QUALIFIED
Jeanfrancois U GillianRussiaStephen Shaw PROPOSAL
Arvin O FollerAustraliaXuxue Feng NEGOTIATION
Chavez A MarrierIndiaElwin Sharvill PROPOSAL
Ashley V MaletGermanyAnna Fali NEW
Faith Z ChuiUnited KingdomAmy Elsner QUALIFIED
Greenwood K BriddickCanadaElwin Sharvill NEGOTIATION
Kadeem Z KuskoSpainAsiya Javayant PROPOSAL
Tony W MacleadFranceBernardo Dominic NEW
Clifford O RimItalyAsiya Javayant UNQUALIFIED
Aruna W FerenczIndiaAnna Fali UNQUALIFIED
Alejandro X GarufiItalyAnna Fali PROPOSAL
Stacey F BriddickGermanyIvan Magalhaes UNQUALIFIED
Mayumi K BologniaBrazilBernardo Dominic NEW
Chavez P PaprockiCanadaStephen Shaw PROPOSAL
Aditya B VocelkaArgentinaStephen Shaw PROPOSAL
Stacey V InouyeBrazilAnna Fali PROPOSAL
Salvatore Y MaletArgentinaOnyama Limba PROPOSAL
Kadeem V AmigonArgentinaElwin Sharvill QUALIFIED
Mayumi J GauchoBrazilOnyama Limba NEW
Jefferson O AlbaresIndiaElwin Sharvill NEGOTIATION
Mujtaba O SaylorsGermanyAmy Elsner NEGOTIATION
Deepesh L OstroskySpainAnna Fali UNQUALIFIED
Alejandro L MorascaItalyIvan Magalhaes QUALIFIED
Ricardo Q GlickArgentinaOnyama Limba NEW
Deepesh G IturbideCanadaIvan Magalhaes PROPOSAL
Aika T WieserArgentinaAsiya Javayant QUALIFIED
Kadeem J ShinkoGermanyStephen Shaw NEGOTIATION
Salvatore T BologniaItalyBernardo Dominic NEW
Maria E TollnerAustraliaAnna Fali NEW
Salvatore O RulapaughGermanyOnyama Limba PROPOSAL
Jones H WaycottGermanyXuxue Feng UNQUALIFIED
Costa P TollnerArgentinaXuxue Feng PROPOSAL
Leja M MarrierIndiaXuxue Feng RENEWAL
Jefferson I ShinkoRussiaStephen Shaw PROPOSAL
David H AmigonSpainAnna Fali PROPOSAL
Rodrigues W AmigonJapanXuxue Feng NEW
Juan Q CaldareraJapanAmy Elsner QUALIFIED
Aika N AmigonUnited KingdomStephen Shaw UNQUALIFIED
Maisha G KuskoJapanAmy Elsner NEW
Darci A DoeGermanyAmy Elsner PROPOSAL
Cody M WaycottAustraliaAsiya Javayant NEGOTIATION
Juan V RimUnited KingdomXuxue Feng RENEWAL
Misaki F WaycottCanadaStephen Shaw RENEWAL
Izzy A SchemmerAustraliaAsiya Javayant PROPOSAL
Ricardo R MorascaFranceIoni Bowcher QUALIFIED
Frozen Columns
Name
Isabel Y Ferencz
Arvin Z Bolognia
Darci N Darakjy
Isabel Y Royster
Kadeem O Amigon
Emily K Schemmer
Johnson O Dilliard
Nicolas D Shinko
David W Whobrey
Wickens B Gillian
Jeanfrancois X Nestle
Maisha E Campain
Aruna O Gillian
James T Nestle
Aruna L Tollner
Clifford X Nicka
Julie M Shinko
Kadeem K Butt
Morrow G Saylors
Deepesh W Caldarera
Alejandro Z Saylors
Rodrigues N Butt
Smith Q Briddick
Nicolas Y Sergi
Aruna N Whobrey
Morrow N Whobrey
Aika D Bolognia
Ricardo W Perin
Stacey Q Waycott
Kaitlin E Flosi
Leon Z Doe
Adams C Venere
Mayumi Q Morasca
Ivar E Flosi
Kaitlin R Figeroa
Claire Z Iturbide
Cody I Paprocki
Cody K Whobrey
Silvio Y Glick
Maisha P Malet
Antonio C Stenseth
Murillo P Ruta
David T Darakjy
Munro R Malet
Munro U Rim
Stacey U Malet
Murillo U Saylors
Salvatore X Rulapaugh
Rodrigues N Caudy
Rodrigues U Wieser
IdCountryDate
1000Argentina2026-06-20
1001Brazil2026-06-15
1002France2026-05-29
1003Canada2026-06-24
1004United Kingdom2026-06-21
1005United Kingdom2026-06-09
1006Argentina2026-06-11
1007Canada2026-06-04
1008Australia2026-06-16
1009Canada2026-06-11
1010United Kingdom2026-06-02
1011Argentina2026-06-09
1012Italy2026-06-08
1013Australia2026-06-04
1014Argentina2026-06-11
1015Argentina2026-05-30
1016Italy2026-06-02
1017Germany2026-06-16
1018United Kingdom2026-06-25
1019India2026-06-09
1020France2026-05-27
1021Australia2026-05-31
1022Australia2026-06-03
1023Brazil2026-06-14
1024Spain2026-06-09
1025Japan2026-06-15
1026Japan2026-05-27
1027Spain2026-06-18
1028Argentina2026-06-13
1029Russia2026-06-22
1030Spain2026-06-04
1031Argentina2026-06-08
1032Russia2026-06-16
1033Canada2026-06-19
1034Japan2026-06-06
1035Brazil2026-06-21
1036France2026-06-14
1037United Kingdom2026-05-31
1038United Kingdom2026-06-24
1039Canada2026-05-27
1040Russia2026-06-02
1041Argentina2026-06-11
1042United Kingdom2026-06-19
1043Italy2026-05-28
1044Australia2026-06-01
1045Spain2026-05-31
1046France2026-05-30
1047Brazil2026-05-27
1048India2026-05-30
1049Argentina2026-06-07

On-Demand Data

NameIdCountryDate
Francesco V Albares1000Canada2026-06-17
Sinclair V Poquette1001Russia2026-06-09
Salvatore S Foller1002India2026-05-31
Ricardo C Morasca1003Italy2026-06-21
Julie U Darakjy1004Canada2026-06-03
Munro V Chui1005Japan2026-06-22
Jennifer F Venere1006India2026-06-06
Salvatore G Rulapaugh1007Russia2026-06-09
Misaki S Doe1008Japan2026-06-01
Julie Y Marrier1009Brazil2026-06-04
Johnson Y Slusarski1010Argentina2026-05-29
Sinclair G Tollner1011Japan2026-06-04
Ivar N Paprocki1012Italy2026-06-21
Adams N Malet1013Japan2026-06-16
Julie X Marrier1014Brazil2026-06-22
Antonio O Campain1015Japan2026-06-06
Faith N Rim1016Japan2026-06-05
Clifford P Morasca1017Russia2026-06-16
Misaki Y Dilliard1018India2026-06-07
Jefferson Q Glick1019Russia2026-06-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh A DoeJapanAsiya Javayant RENEWAL
Smith F OldroydGermanyOnyama Limba QUALIFIED
Silvio Z IturbideRussiaXuxue Feng NEW
Murillo O MaletAustraliaIoni Bowcher NEGOTIATION
Aruna P FigeroaJapanStephen Shaw PROPOSAL
Maria F NestleGermanyOnyama Limba NEW
Rodrigues N NickaItalyElwin Sharvill PROPOSAL
Octavia U DoeIndiaXuxue Feng UNQUALIFIED
Kadeem V BologniaAustraliaOnyama Limba NEW
Darci B CampainIndiaAnna Fali NEGOTIATION
Deepesh O SlusarskiAustraliaXuxue Feng NEW
Morrow B WaycottCanadaAnna Fali PROPOSAL
Greenwood D GauchoIndiaStephen Shaw QUALIFIED
Aika Z OstroskyFranceElwin Sharvill PROPOSAL
Juan C RulapaughRussiaIoni Bowcher UNQUALIFIED
Tony Q ShinkoUnited KingdomXuxue Feng UNQUALIFIED
Kadeem S SlusarskiItalyOnyama Limba NEGOTIATION
Aruna D CaldareraUnited KingdomBernardo Dominic NEW
Smith Q StensethArgentinaXuxue Feng NEW
Adams J SchemmerSpainAsiya Javayant RENEWAL
Tony O DilliardRussiaXuxue Feng UNQUALIFIED
Smith A GauchoIndiaElwin Sharvill RENEWAL
Claire V BriddickFranceAsiya Javayant QUALIFIED
Antonio D SergiGermanyXuxue Feng PROPOSAL
Julie X ChuiItalyAmy Elsner UNQUALIFIED
Tony K FerenczAustraliaStephen Shaw RENEWAL
Chavez B FigeroaUnited KingdomAmy Elsner NEW
Jones E WaycottFranceAmy Elsner NEGOTIATION
Wickens L VenereItalyOnyama Limba PROPOSAL
Murillo M BowleyAustraliaIoni Bowcher QUALIFIED
Ivar F AlbaresRussiaOnyama Limba NEW
Aditya H BologniaSpainXuxue Feng QUALIFIED
Silvio A NestleCanadaIvan Magalhaes RENEWAL
Aika O DoeSpainAsiya Javayant PROPOSAL
Maria Y IturbideFranceIvan Magalhaes NEGOTIATION
Julie D PoquetteCanadaAsiya Javayant NEW
Octavia U PaprockiJapanIoni Bowcher UNQUALIFIED
Jennifer M FerenczJapanStephen Shaw UNQUALIFIED
Cody E WhobreyGermanyAsiya Javayant PROPOSAL
James W MarrierFranceIoni Bowcher 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.