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
Costa D NestleRussiaAmy Elsner RENEWAL
Jones W DarakjyCanadaIvan Magalhaes QUALIFIED
Cody V WaycottArgentinaIvan Magalhaes UNQUALIFIED
Clifford M StockhamCanadaAmy Elsner RENEWAL
Octavia U NickaFranceAmy Elsner NEGOTIATION
Rodrigues B WhobreyItalyAsiya Javayant QUALIFIED
Leja X MaletRussiaAmy Elsner NEW
Jeanfrancois T CaldareraItalyElwin Sharvill QUALIFIED
David U RoysterUnited KingdomElwin Sharvill PROPOSAL
Leja P SergiArgentinaElwin Sharvill NEW
Ivar A PaprockiJapanElwin Sharvill PROPOSAL
David X BriddickUnited KingdomIvan Magalhaes PROPOSAL
Leon S SergiFranceOnyama Limba RENEWAL
Wickens A StensethGermanyIvan Magalhaes RENEWAL
Murillo J AlbaresFranceIoni Bowcher UNQUALIFIED
Jones Q KuskoArgentinaOnyama Limba QUALIFIED
Chavez P OstroskyUnited KingdomIvan Magalhaes QUALIFIED
Salvatore C ShinkoJapanOnyama Limba RENEWAL
Jefferson M DoeItalyAnna Fali NEGOTIATION
Leja U IturbideItalyIvan Magalhaes RENEWAL
Leja E OstroskySpainIoni Bowcher NEW
Jeanfrancois Z CaldareraRussiaElwin Sharvill UNQUALIFIED
Julie I ButtItalyAmy Elsner QUALIFIED
Stacey R GarufiRussiaStephen Shaw NEGOTIATION
Maria L OstroskyUnited KingdomOnyama Limba UNQUALIFIED
Jennifer M KolmetzJapanStephen Shaw RENEWAL
Costa D SaylorsGermanyOnyama Limba NEW
Leon K NestleFranceAnna Fali UNQUALIFIED
Ivar X GarufiJapanStephen Shaw PROPOSAL
Aditya E FerenczUnited KingdomXuxue Feng RENEWAL
Jefferson T InouyeBrazilAsiya Javayant RENEWAL
Alejandro X WhobreyAustraliaAmy Elsner PROPOSAL
Sinclair Y GarufiCanadaElwin Sharvill NEGOTIATION
Silvio H StensethCanadaOnyama Limba RENEWAL
Emily I FlosiGermanyStephen Shaw RENEWAL
Francesco X MaletSpainIoni Bowcher NEW
Mujtaba M WaycottRussiaIoni Bowcher NEGOTIATION
Smith S WieserSpainBernardo Dominic QUALIFIED
Ashley Y StensethUnited KingdomXuxue Feng UNQUALIFIED
Leon L PerinAustraliaOnyama Limba NEW
Stacey L PoquetteGermanyStephen Shaw NEGOTIATION
David C OldroydItalyOnyama Limba PROPOSAL
Cody G MarrierGermanyBernardo Dominic NEGOTIATION
Jeanfrancois L InouyeGermanyAsiya Javayant UNQUALIFIED
Jones S SergiArgentinaElwin Sharvill NEW
Isabel B StensethSpainAsiya Javayant NEW
Nicolas H DarakjyRussiaXuxue Feng UNQUALIFIED
Francesco Y GauchoArgentinaElwin Sharvill QUALIFIED
Misaki M OstroskyCanadaIvan Magalhaes QUALIFIED
Ashley C MarrierFranceElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Deepesh E AlbaresAustraliaAnna Fali NEW
Isabel L IturbideUnited KingdomXuxue Feng NEW
Juan V StockhamRussiaXuxue Feng NEGOTIATION
Aditya G NestleCanadaIvan Magalhaes RENEWAL
Darci M GarufiAustraliaBernardo Dominic RENEWAL
Antonio G StockhamArgentinaOnyama Limba RENEWAL
Aika G SlusarskiAustraliaOnyama Limba QUALIFIED
Emily Q NestleUnited KingdomElwin Sharvill RENEWAL
Leon C RutaAustraliaBernardo Dominic PROPOSAL
Ashley H WieserCanadaElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro L NickaJapan2026-05-30Truhlar And Truhlar Attys UNQUALIFIED33Ivan Magalhaes
1001Izzy E AmigonIndia2026-05-29Benton, John B Jr UNQUALIFIED92Elwin Sharvill
1002Morrow W MarrierAustralia2026-05-31Rousseaux, Michael Esq RENEWAL18Bernardo Dominic
1003Leja A FlosiJapan2026-05-09Buckley Miller Wright RENEWAL56Anna Fali
1004Jennifer A CaudyFrance2026-05-03Rangoni Of Florence PROPOSAL60Amy Elsner
1005Jennifer V GlickItaly2026-05-08Chanay, Jeffrey A Esq QUALIFIED46Elwin Sharvill
1006Aika F OstroskyIndia2026-05-20Rangoni Of Florence RENEWAL77Elwin Sharvill
1007Ivar G ChuiUnited Kingdom2026-05-07Chemel, James L Cpa PROPOSAL33Amy Elsner
1008Jeanfrancois D StockhamArgentina2026-05-11Commercial Press NEGOTIATION71Onyama Limba
1009Sinclair H WieserFrance2026-05-29Rangoni Of Florence RENEWAL1Stephen Shaw
1010Mayumi L NickaAustralia2026-05-15Benton, John B Jr UNQUALIFIED25Anna Fali
1011Stacey J KolmetzItaly2026-05-05Chanay, Jeffrey A Esq RENEWAL66Stephen Shaw
1012Kadeem D MaletJapan2026-05-24Printing Dimensions PROPOSAL2Anna Fali
1013Antonio R OldroydCanada2026-05-28King, Christopher A Esq NEW50Asiya Javayant
1014Nicolas P InouyeJapan2026-05-03Chapman, Ross E Esq QUALIFIED40Onyama Limba
1015Costa D AmigonIndia2026-05-06Commercial Press NEW36Xuxue Feng
1016Rodrigues W NestleAustralia2026-05-11Chapman, Ross E Esq QUALIFIED61Asiya Javayant
1017Kadeem F ChuiRussia2026-05-13Rangoni Of Florence PROPOSAL72Anna Fali
1018Nicolas R RutaGermany2026-06-01Feltz Printing Service UNQUALIFIED58Asiya Javayant
1019Maisha Q BowleyArgentina2026-05-21Rousseaux, Michael Esq NEGOTIATION77Amy Elsner
1020Costa S MorascaJapan2026-05-30Buckley Miller Wright RENEWAL55Anna Fali
1021Murillo Q KolmetzGermany2026-05-11Chapman, Ross E Esq NEGOTIATION68Ioni Bowcher
1022Stacey H RulapaughAustralia2026-05-18Feiner Bros UNQUALIFIED87Bernardo Dominic
1023Sinclair A SchemmerJapan2026-05-06Rousseaux, Michael Esq NEGOTIATION52Amy Elsner
1024Munro X StockhamGermany2026-05-14Chemel, James L Cpa RENEWAL68Bernardo Dominic
1025Adams L FigeroaGermany2026-05-05Dorl, James J Esq UNQUALIFIED46Elwin Sharvill
1026Mayumi N IturbideAustralia2026-05-05Commercial Press RENEWAL39Elwin Sharvill
1027Jones T NestleJapan2026-05-16Feltz Printing Service PROPOSAL12Elwin Sharvill
1028Cody C MaletItaly2026-05-31Rousseaux, Michael Esq PROPOSAL89Amy Elsner
1029Ricardo P BriddickBrazil2026-05-31Printing Dimensions UNQUALIFIED32Bernardo Dominic
1030Leon J WieserFrance2026-05-04Printing Dimensions UNQUALIFIED25Amy Elsner
1031Adams Q IturbideIndia2026-05-21Rousseaux, Michael Esq RENEWAL57Anna Fali
1032Isabel F MaletBrazil2026-06-01Dorl, James J Esq NEW19Stephen Shaw
1033Mayumi E GillianSpain2026-05-29Chapman, Ross E Esq RENEWAL67Ivan Magalhaes
1034Sinclair L AmigonUnited Kingdom2026-05-28King, Christopher A Esq UNQUALIFIED82Anna Fali
1035Octavia N StensethRussia2026-05-05Morlong Associates NEGOTIATION99Asiya Javayant
1036Francesco J KolmetzCanada2026-05-30Truhlar And Truhlar Attys NEW64Amy Elsner
1037Rodrigues F BriddickFrance2026-05-29Feltz Printing Service PROPOSAL29Amy Elsner
1038Izzy N KuskoGermany2026-05-03Chemel, James L Cpa QUALIFIED81Xuxue Feng
1039Salvatore T OldroydAustralia2026-05-13Chanay, Jeffrey A Esq QUALIFIED22Stephen Shaw
1040Chavez I TollnerItaly2026-05-31Chapman, Ross E Esq PROPOSAL43Stephen Shaw
1041Arvin J RutaFrance2026-05-17Dorl, James J Esq QUALIFIED20Ivan Magalhaes
1042Faith L PoquetteGermany2026-06-01King, Christopher A Esq UNQUALIFIED89Onyama Limba
1043Costa Q DoeRussia2026-05-10Printing Dimensions NEW0Asiya Javayant
1044Juan A GarufiSpain2026-05-31Rousseaux, Michael Esq QUALIFIED17Stephen Shaw
1045Costa S NickaUnited Kingdom2026-05-29Feltz Printing Service UNQUALIFIED41Amy Elsner
1046Wickens A CaldareraBrazil2026-05-30Chapman, Ross E Esq QUALIFIED99Bernardo Dominic
1047Johnson B CampainAustralia2026-05-28Truhlar And Truhlar Attys NEGOTIATION54Elwin Sharvill
1048Alejandro X DarakjyJapan2026-05-26Feltz Printing Service UNQUALIFIED59Xuxue Feng
1049Morrow V NickaIndia2026-05-03Truhlar And Truhlar Attys RENEWAL17Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Maria A OstroskyGermanyAsiya Javayant RENEWAL
Chavez P ButtAustraliaXuxue Feng UNQUALIFIED
Julie I FerenczFranceOnyama Limba QUALIFIED
Jefferson C StensethArgentinaIvan Magalhaes NEGOTIATION
Clifford D ShinkoJapanStephen Shaw UNQUALIFIED
Greenwood W MarrierCanadaAmy Elsner NEGOTIATION
Rodrigues Z BowleyCanadaAnna Fali RENEWAL
Maisha E RulapaughAustraliaBernardo Dominic UNQUALIFIED
Sinclair Z StensethSpainAmy Elsner NEW
Ricardo Y MacleadSpainStephen Shaw PROPOSAL
Misaki U GlickArgentinaAsiya Javayant QUALIFIED
Wickens I CaldareraUnited KingdomOnyama Limba NEGOTIATION
Maria C DoeBrazilAnna Fali NEW
Morrow X ShinkoRussiaIvan Magalhaes NEW
Izzy N PaprockiGermanyStephen Shaw NEW
Octavia I MarrierGermanyAnna Fali UNQUALIFIED
Mujtaba B SlusarskiAustraliaIoni Bowcher PROPOSAL
Ashley V FigeroaItalyElwin Sharvill NEGOTIATION
Rodrigues T StockhamArgentinaOnyama Limba RENEWAL
Smith E OldroydIndiaAnna Fali NEW
Jefferson P BriddickIndiaXuxue Feng PROPOSAL
Antonio D KuskoRussiaAsiya Javayant NEGOTIATION
Kaitlin D CampainAustraliaElwin Sharvill NEW
Jeanfrancois Q ChuiBrazilAnna Fali NEGOTIATION
Arvin J MaletGermanyIvan Magalhaes PROPOSAL
James Q RutaFranceAmy Elsner PROPOSAL
Maisha W PerinRussiaElwin Sharvill RENEWAL
Stacey P MarrierRussiaXuxue Feng UNQUALIFIED
Chavez K DoeIndiaBernardo Dominic QUALIFIED
Kaitlin P CaldareraIndiaIoni Bowcher NEW
Jones F SergiSpainElwin Sharvill UNQUALIFIED
Costa D SaylorsGermanyAmy Elsner PROPOSAL
Johnson F RoysterArgentinaStephen Shaw RENEWAL
Leja B ButtFranceAmy Elsner QUALIFIED
Jefferson B StockhamCanadaStephen Shaw NEW
Faith B FerenczBrazilBernardo Dominic RENEWAL
Claire K IturbideGermanyStephen Shaw RENEWAL
Costa J BriddickJapanIvan Magalhaes RENEWAL
Mujtaba A FerenczAustraliaAnna Fali NEGOTIATION
Izzy H WhobreyJapanAmy Elsner NEW
Deepesh C KolmetzArgentinaStephen Shaw UNQUALIFIED
Tony N AlbaresArgentinaIoni Bowcher NEW
Jones J ShinkoJapanAsiya Javayant RENEWAL
Claire G KolmetzJapanAmy Elsner NEW
Francesco N AlbaresAustraliaBernardo Dominic NEW
Morrow G MarrierSpainBernardo Dominic NEGOTIATION
Alejandro Q GlickUnited KingdomElwin Sharvill QUALIFIED
Jeanfrancois I GlickSpainIvan Magalhaes UNQUALIFIED
Leja Q ButtIndiaStephen Shaw PROPOSAL
Faith O GarufiIndiaIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Mujtaba G Iturbide
Sinclair M Slusarski
Silvio Y Sergi
Kaitlin Q Campain
Ricardo U Shinko
James E Slusarski
Aruna Q Ferencz
Greenwood P Perin
Adams P Caldarera
Ivar P Stockham
Nicolas E Malet
Francesco F Vocelka
Chavez Y Sergi
Aika Q Marrier
Adams S Gaucho
Kaitlin B Ruta
Alejandro D Amigon
Jeanfrancois N Caudy
Darci U Morasca
Salvatore B Stockham
Kaitlin U Saylors
Greenwood T Shinko
Mayumi J Caudy
Morrow V Waycott
Murillo I Gillian
Aditya S Butt
Ricardo S Figeroa
Nicolas V Malet
Darci S Schemmer
Misaki R Poquette
Adams K Caudy
Silvio K Saylors
Ivar P Iturbide
Jefferson X Iturbide
Darci Z Schemmer
Maria K Caudy
Aruna Y Waycott
Faith M Garufi
Clifford F Schemmer
Aditya G Poquette
Wickens A Shinko
Smith U Stenseth
Octavia T Whobrey
Tony T Caldarera
Ashley X Rulapaugh
Silvio L Gillian
Jennifer O Vocelka
Claire C Briddick
Leon P Nestle
Stacey U Briddick
IdCountryDate
1000Russia2026-05-03
1001Australia2026-05-29
1002Italy2026-05-24
1003France2026-05-27
1004United Kingdom2026-05-28
1005Russia2026-05-10
1006Japan2026-05-10
1007Japan2026-05-20
1008United Kingdom2026-05-07
1009Australia2026-05-11
1010United Kingdom2026-05-25
1011Germany2026-05-04
1012Italy2026-05-15
1013Canada2026-05-06
1014Australia2026-05-03
1015Canada2026-05-27
1016Japan2026-05-27
1017Japan2026-05-08
1018France2026-05-14
1019Australia2026-05-29
1020Canada2026-05-23
1021United Kingdom2026-05-11
1022Australia2026-05-17
1023Germany2026-05-03
1024Australia2026-05-28
1025Italy2026-05-04
1026Argentina2026-05-12
1027Russia2026-05-19
1028Canada2026-05-14
1029Italy2026-05-11
1030India2026-05-04
1031Argentina2026-05-09
1032Brazil2026-05-09
1033France2026-05-29
1034India2026-05-03
1035Brazil2026-05-05
1036Brazil2026-05-09
1037Australia2026-05-24
1038Japan2026-05-03
1039India2026-05-12
1040Argentina2026-05-20
1041Brazil2026-05-07
1042Australia2026-05-19
1043Canada2026-05-06
1044Brazil2026-05-08
1045Argentina2026-05-20
1046France2026-05-30
1047Spain2026-05-08
1048France2026-05-10
1049Italy2026-05-07

On-Demand Data

NameIdCountryDate
Munro R Ostrosky1000France2026-05-04
Ivar K Glick1001Russia2026-05-04
Emily E Garufi1002Brazil2026-05-25
Leja X Poquette1003United Kingdom2026-05-09
Julie Q Butt1004Germany2026-05-25
Murillo C Malet1005Italy2026-05-13
Ivar S Doe1006Brazil2026-05-21
Mujtaba M Schemmer1007Canada2026-05-04
Aruna L Iturbide1008United Kingdom2026-05-30
Costa X Foller1009Brazil2026-05-27
Jones V Malet1010Argentina2026-05-10
Isabel Y Morasca1011Brazil2026-05-06
Chavez T Caudy1012India2026-05-19
Silvio D Bolognia1013Germany2026-05-27
Leja P Bolognia1014France2026-05-22
Emily I Chui1015Brazil2026-05-06
Cody J Whobrey1016Canada2026-05-11
Julie N Whobrey1017Italy2026-06-01
Isabel X Whobrey1018Spain2026-05-07
Maisha G Foller1019Canada2026-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio S SaylorsBrazilIoni Bowcher NEGOTIATION
Johnson O SlusarskiUnited KingdomIvan Magalhaes QUALIFIED
Sinclair D NickaRussiaElwin Sharvill QUALIFIED
Murillo G BologniaGermanyElwin Sharvill NEW
James J MaletBrazilAsiya Javayant QUALIFIED
James J GauchoSpainAnna Fali UNQUALIFIED
Chavez W RutaJapanAmy Elsner NEGOTIATION
Cody D GarufiAustraliaIvan Magalhaes PROPOSAL
Aditya Q DoeSpainIoni Bowcher RENEWAL
Sinclair T TollnerArgentinaBernardo Dominic QUALIFIED
Adams L BriddickGermanyOnyama Limba PROPOSAL
Jennifer D MacleadAustraliaBernardo Dominic NEW
Kaitlin S KolmetzSpainAnna Fali NEGOTIATION
Arvin N GarufiIndiaIoni Bowcher RENEWAL
Sinclair V SergiCanadaOnyama Limba NEW
Kaitlin V VocelkaCanadaBernardo Dominic PROPOSAL
Salvatore O TollnerFranceIvan Magalhaes RENEWAL
Darci V FollerIndiaAsiya Javayant RENEWAL
Greenwood I DarakjyFranceIvan Magalhaes UNQUALIFIED
Arvin O GillianAustraliaElwin Sharvill RENEWAL
Ashley A CaldareraGermanyBernardo Dominic PROPOSAL
Misaki X TollnerJapanStephen Shaw NEW
Deepesh P RimGermanyBernardo Dominic NEW
Leja D RoysterJapanOnyama Limba UNQUALIFIED
Isabel R FollerBrazilStephen Shaw NEW
Munro R CaldareraItalyIoni Bowcher RENEWAL
Tony R SchemmerArgentinaElwin Sharvill QUALIFIED
Morrow J WaycottAustraliaAsiya Javayant NEGOTIATION
Francesco Q PerinGermanyOnyama Limba RENEWAL
Kaitlin M StockhamSpainStephen Shaw PROPOSAL
Izzy R PerinCanadaIoni Bowcher NEGOTIATION
Misaki R ShinkoRussiaStephen Shaw QUALIFIED
Emily T MorascaArgentinaAnna Fali NEW
Ashley F RoysterAustraliaIvan Magalhaes NEGOTIATION
Isabel O GauchoAustraliaAnna Fali NEW
Adams R CampainRussiaElwin Sharvill RENEWAL
Isabel C MaletIndiaAnna Fali NEW
Aika T InouyeAustraliaElwin Sharvill NEW
Rodrigues P GauchoJapanXuxue Feng UNQUALIFIED
David H MaletUnited KingdomAsiya Javayant 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.