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
Juan S BowleyAustraliaAsiya Javayant QUALIFIED
Salvatore N KuskoRussiaIoni Bowcher NEGOTIATION
Aruna L DarakjyFranceIoni Bowcher NEW
Salvatore L RoysterJapanXuxue Feng UNQUALIFIED
Aika L RimSpainOnyama Limba UNQUALIFIED
Sinclair O MorascaArgentinaAsiya Javayant NEW
Juan Y RoysterIndiaAnna Fali UNQUALIFIED
Izzy D OstroskyJapanAsiya Javayant UNQUALIFIED
Wickens W SlusarskiCanadaXuxue Feng RENEWAL
Kadeem T GlickFranceAnna Fali QUALIFIED
Rodrigues B ButtIndiaOnyama Limba NEW
Antonio I FigeroaAustraliaStephen Shaw QUALIFIED
Chavez S BriddickUnited KingdomOnyama Limba NEGOTIATION
Morrow U RulapaughBrazilOnyama Limba NEW
Octavia Y DarakjyArgentinaIoni Bowcher NEGOTIATION
Sinclair C AmigonUnited KingdomIvan Magalhaes RENEWAL
Sinclair M CaldareraGermanyElwin Sharvill PROPOSAL
Mujtaba E GarufiCanadaXuxue Feng QUALIFIED
Ivar R AlbaresCanadaAnna Fali NEGOTIATION
Juan Q ButtItalyElwin Sharvill QUALIFIED
Sinclair F SlusarskiFranceAsiya Javayant NEGOTIATION
Antonio G MarrierUnited KingdomIoni Bowcher NEGOTIATION
Antonio D BologniaIndiaIvan Magalhaes UNQUALIFIED
Jones A SchemmerItalyBernardo Dominic UNQUALIFIED
James L MaletUnited KingdomStephen Shaw NEGOTIATION
Greenwood P KolmetzItalyAnna Fali UNQUALIFIED
Claire E StockhamUnited KingdomElwin Sharvill PROPOSAL
Stacey A GauchoArgentinaAsiya Javayant NEGOTIATION
Claire D MaletAustraliaElwin Sharvill NEGOTIATION
Wickens H FlosiSpainIvan Magalhaes RENEWAL
Mayumi T AmigonUnited KingdomAnna Fali PROPOSAL
Faith S MorascaAustraliaBernardo Dominic RENEWAL
Claire Z CaudySpainBernardo Dominic RENEWAL
Sinclair S MorascaGermanyXuxue Feng UNQUALIFIED
Stacey B TollnerGermanyOnyama Limba UNQUALIFIED
Jennifer U MorascaArgentinaAnna Fali NEW
Adams D VenereSpainIoni Bowcher NEGOTIATION
Rodrigues K GauchoAustraliaOnyama Limba PROPOSAL
Izzy N WhobreyItalyAmy Elsner QUALIFIED
Jefferson Y ChuiJapanAsiya Javayant NEW
Faith T VocelkaSpainElwin Sharvill NEGOTIATION
Adams K GarufiGermanyAsiya Javayant UNQUALIFIED
Ashley L KuskoFranceIvan Magalhaes UNQUALIFIED
Aika A KuskoGermanyOnyama Limba NEW
Clifford Z FollerItalyElwin Sharvill NEGOTIATION
Silvio D MacleadAustraliaAnna Fali UNQUALIFIED
Maisha G CampainAustraliaAmy Elsner PROPOSAL
Chavez O MaletArgentinaIvan Magalhaes RENEWAL
Izzy F KolmetzItalyIoni Bowcher QUALIFIED
Silvio H ButtAustraliaAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Sinclair G OldroydSpainStephen Shaw QUALIFIED
Izzy C OldroydItalyElwin Sharvill PROPOSAL
Aruna Z GlickGermanyAsiya Javayant QUALIFIED
Morrow W StockhamItalyElwin Sharvill RENEWAL
Mujtaba N BriddickBrazilAsiya Javayant PROPOSAL
Greenwood U ChuiBrazilIoni Bowcher NEGOTIATION
Jennifer X ChuiJapanBernardo Dominic NEW
Stacey M GarufiGermanyAmy Elsner NEGOTIATION
Tony M NestleArgentinaAmy Elsner RENEWAL
Morrow X FigeroaBrazilXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley K DilliardArgentina2026-04-19King, Christopher A Esq NEW61Stephen Shaw
1001Tony E SergiRussia2026-04-29Chemel, James L Cpa RENEWAL69Elwin Sharvill
1002Darci H MacleadGermany2026-04-21Printing Dimensions UNQUALIFIED20Xuxue Feng
1003James E ButtJapan2026-04-30Feiner Bros UNQUALIFIED60Xuxue Feng
1004Jones N FigeroaRussia2026-04-24Chanay, Jeffrey A Esq NEGOTIATION42Bernardo Dominic
1005Julie X NestleRussia2026-04-28Dorl, James J Esq RENEWAL54Amy Elsner
1006Ivar J NestleRussia2026-04-09Feltz Printing Service NEGOTIATION90Bernardo Dominic
1007Jennifer M IturbideJapan2026-04-14Commercial Press UNQUALIFIED8Ivan Magalhaes
1008Aruna N NickaIndia2026-05-01Feiner Bros QUALIFIED48Elwin Sharvill
1009David S FerenczJapan2026-04-17Commercial Press NEW44Ioni Bowcher
1010Octavia T OldroydJapan2026-04-24Chapman, Ross E Esq RENEWAL13Asiya Javayant
1011Jeanfrancois M MacleadGermany2026-04-13Chanay, Jeffrey A Esq PROPOSAL96Elwin Sharvill
1012Maria K IturbideIndia2026-04-16Rangoni Of Florence NEGOTIATION79Asiya Javayant
1013Faith W SaylorsFrance2026-04-13Chemel, James L Cpa NEW33Xuxue Feng
1014Chavez X FollerGermany2026-04-04Chanay, Jeffrey A Esq NEGOTIATION15Ivan Magalhaes
1015Kaitlin I RutaRussia2026-04-30Buckley Miller Wright QUALIFIED35Elwin Sharvill
1016Johnson G WaycottArgentina2026-04-04Feiner Bros NEW8Bernardo Dominic
1017Ricardo P MarrierCanada2026-04-23Feltz Printing Service RENEWAL68Ivan Magalhaes
1018Misaki A WhobreyFrance2026-04-24Benton, John B Jr QUALIFIED90Amy Elsner
1019Jones F VenereCanada2026-04-05Chapman, Ross E Esq UNQUALIFIED26Elwin Sharvill
1020Salvatore K ButtJapan2026-04-23Dorl, James J Esq RENEWAL27Anna Fali
1021Jeanfrancois F MaletAustralia2026-04-28Rousseaux, Michael Esq NEGOTIATION3Onyama Limba
1022Costa Q OldroydSpain2026-05-02King, Christopher A Esq PROPOSAL67Xuxue Feng
1023Rodrigues R OldroydCanada2026-04-15Feltz Printing Service UNQUALIFIED11Ioni Bowcher
1024Morrow F FlosiCanada2026-04-27Benton, John B Jr RENEWAL58Onyama Limba
1025Arvin F VenereJapan2026-04-08Printing Dimensions NEW55Anna Fali
1026Wickens M MaletItaly2026-04-20Printing Dimensions NEGOTIATION49Elwin Sharvill
1027Jeanfrancois E RulapaughItaly2026-04-27Chapman, Ross E Esq QUALIFIED0Elwin Sharvill
1028Aditya T GlickRussia2026-04-24Truhlar And Truhlar Attys UNQUALIFIED71Anna Fali
1029Cody J SergiItaly2026-04-04Rousseaux, Michael Esq RENEWAL75Asiya Javayant
1030Maria J PoquetteFrance2026-04-16Truhlar And Truhlar Attys NEW9Ioni Bowcher
1031Adams Y ShinkoUnited Kingdom2026-04-04Truhlar And Truhlar Attys NEGOTIATION4Xuxue Feng
1032Isabel G KolmetzArgentina2026-04-07Printing Dimensions NEGOTIATION21Bernardo Dominic
1033Salvatore K ButtRussia2026-04-12Chapman, Ross E Esq RENEWAL17Xuxue Feng
1034Wickens J ShinkoItaly2026-04-25Chemel, James L Cpa QUALIFIED83Bernardo Dominic
1035Isabel F GillianIndia2026-04-15Rousseaux, Michael Esq NEGOTIATION48Ioni Bowcher
1036Morrow G FlosiArgentina2026-04-20King, Christopher A Esq NEW19Asiya Javayant
1037Leon E FlosiFrance2026-05-01King, Christopher A Esq NEGOTIATION25Ioni Bowcher
1038Cody U NestleCanada2026-04-16Morlong Associates QUALIFIED63Amy Elsner
1039Jefferson D ButtCanada2026-04-14Morlong Associates RENEWAL5Stephen Shaw
1040Jefferson F PaprockiItaly2026-05-02Feltz Printing Service PROPOSAL37Xuxue Feng
1041Maisha U OldroydGermany2026-04-14Rangoni Of Florence QUALIFIED24Ivan Magalhaes
1042Isabel A BowleyJapan2026-05-01King, Christopher A Esq RENEWAL54Onyama Limba
1043Ashley W SergiSpain2026-04-06Buckley Miller Wright NEGOTIATION56Amy Elsner
1044Aditya Z GauchoIndia2026-04-15Buckley Miller Wright UNQUALIFIED65Xuxue Feng
1045Misaki F SergiRussia2026-04-06Commercial Press UNQUALIFIED27Xuxue Feng
1046Aika F PaprockiIndia2026-04-17Chemel, James L Cpa RENEWAL15Elwin Sharvill
1047Greenwood H SlusarskiArgentina2026-04-27Chapman, Ross E Esq NEW88Stephen Shaw
1048Antonio L StensethSpain2026-05-02Benton, John B Jr QUALIFIED89Asiya Javayant
1049Ivar P SergiRussia2026-04-30Chapman, Ross E Esq RENEWAL28Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Francesco M GarufiArgentinaAnna Fali PROPOSAL
Costa G KolmetzItalyAnna Fali UNQUALIFIED
Isabel S GauchoIndiaBernardo Dominic UNQUALIFIED
Emily G MarrierBrazilStephen Shaw NEW
Sinclair H RoysterCanadaAnna Fali QUALIFIED
Murillo Z WieserArgentinaIvan Magalhaes QUALIFIED
Kaitlin B SergiFranceAsiya Javayant PROPOSAL
David D OldroydItalyStephen Shaw NEGOTIATION
Chavez S GarufiCanadaOnyama Limba PROPOSAL
Aditya G FollerArgentinaBernardo Dominic UNQUALIFIED
Faith O TollnerGermanyXuxue Feng NEGOTIATION
Arvin D SlusarskiRussiaAnna Fali NEW
Salvatore I WaycottItalyAmy Elsner NEW
Tony L RulapaughJapanXuxue Feng PROPOSAL
Sinclair A NickaUnited KingdomXuxue Feng NEW
Isabel C CampainJapanAsiya Javayant RENEWAL
Antonio B OldroydArgentinaAsiya Javayant NEGOTIATION
Smith C PoquetteAustraliaAnna Fali NEW
Deepesh R PerinArgentinaIvan Magalhaes NEGOTIATION
Julie Q ButtAustraliaAnna Fali PROPOSAL
Emily A PaprockiRussiaIvan Magalhaes PROPOSAL
Aruna P StockhamIndiaAsiya Javayant PROPOSAL
Munro N PerinSpainIvan Magalhaes NEGOTIATION
Maisha Q FigeroaJapanXuxue Feng NEGOTIATION
Nicolas B WaycottFranceStephen Shaw PROPOSAL
Rodrigues N MorascaBrazilAsiya Javayant UNQUALIFIED
Maisha G RutaGermanyAnna Fali QUALIFIED
Wickens N PaprockiJapanElwin Sharvill RENEWAL
Nicolas W NickaAustraliaBernardo Dominic RENEWAL
Antonio Z FollerSpainBernardo Dominic QUALIFIED
Morrow Z StensethUnited KingdomOnyama Limba QUALIFIED
Octavia S PerinBrazilIoni Bowcher RENEWAL
Murillo Y PerinAustraliaXuxue Feng QUALIFIED
Greenwood F AmigonSpainIoni Bowcher RENEWAL
Arvin K GlickUnited KingdomAmy Elsner NEGOTIATION
Claire G MarrierCanadaIvan Magalhaes UNQUALIFIED
Smith R GlickBrazilIoni Bowcher QUALIFIED
Rodrigues R MaletBrazilStephen Shaw UNQUALIFIED
Jennifer N StensethRussiaElwin Sharvill NEGOTIATION
Jeanfrancois Z MaletBrazilOnyama Limba PROPOSAL
Deepesh W RimIndiaIvan Magalhaes NEGOTIATION
Salvatore W GauchoRussiaBernardo Dominic RENEWAL
Greenwood S RoysterAustraliaAsiya Javayant PROPOSAL
Leon S WaycottAustraliaOnyama Limba QUALIFIED
Leja L GlickCanadaOnyama Limba NEW
Izzy L BowleySpainIvan Magalhaes QUALIFIED
Jeanfrancois A TollnerJapanOnyama Limba QUALIFIED
Antonio T OstroskyCanadaAmy Elsner NEGOTIATION
Wickens D MaletRussiaAsiya Javayant NEGOTIATION
Nicolas H OldroydItalyXuxue Feng RENEWAL
Frozen Columns
Name
Octavia M Waycott
Sinclair O Tollner
Mujtaba X Malet
Cody B Rulapaugh
Mujtaba D Nestle
Morrow B Nestle
Munro T Dilliard
Aika L Inouye
Leon W Paprocki
Nicolas U Tollner
Mujtaba J Poquette
Arvin Q Foller
Francesco K Malet
Tony J Darakjy
Jeanfrancois J Maclead
Ricardo Q Inouye
Darci J Bowley
Deepesh V Sergi
Isabel H Caudy
Alejandro M Iturbide
James E Caudy
Kaitlin C Wieser
Ivar U Bolognia
Jeanfrancois K Paprocki
Munro M Albares
Antonio G Briddick
Jeanfrancois D Darakjy
Rodrigues N Whobrey
Aruna N Amigon
Isabel D Waycott
Nicolas J Stockham
Nicolas E Sergi
Wickens M Chui
Aruna L Iturbide
Munro K Butt
Cody L Marrier
Faith C Butt
Aika O Figeroa
Faith G Oldroyd
James G Morasca
Rodrigues K Kusko
Deepesh Z Iturbide
Silvio W Caudy
Antonio V Chui
Misaki A Shinko
James U Royster
Jefferson K Stenseth
Jennifer J Waycott
Costa N Poquette
Jennifer N Kusko
IdCountryDate
1000Japan2026-04-10
1001Japan2026-05-02
1002Germany2026-04-22
1003Russia2026-05-02
1004Brazil2026-04-14
1005India2026-04-20
1006France2026-04-03
1007Australia2026-04-06
1008Russia2026-04-22
1009Canada2026-04-08
1010Australia2026-05-01
1011Spain2026-05-01
1012Argentina2026-04-14
1013Italy2026-04-05
1014Argentina2026-04-03
1015Germany2026-04-13
1016Japan2026-04-22
1017Italy2026-04-03
1018Australia2026-04-13
1019Spain2026-04-26
1020Brazil2026-04-15
1021Germany2026-04-11
1022United Kingdom2026-04-11
1023India2026-04-06
1024France2026-04-07
1025India2026-04-06
1026Italy2026-04-13
1027Australia2026-04-11
1028Russia2026-04-22
1029Russia2026-04-27
1030Japan2026-05-02
1031Germany2026-04-04
1032India2026-04-11
1033India2026-04-27
1034Spain2026-04-22
1035Japan2026-04-15
1036Argentina2026-04-19
1037Japan2026-04-20
1038Spain2026-04-04
1039Canada2026-04-11
1040France2026-04-14
1041Spain2026-04-20
1042Italy2026-04-23
1043France2026-04-26
1044France2026-04-29
1045Germany2026-04-04
1046Russia2026-04-10
1047Italy2026-04-18
1048Canada2026-04-03
1049Italy2026-04-03

On-Demand Data

NameIdCountryDate
Aika I Schemmer1000Spain2026-04-23
Juan M Garufi1001United Kingdom2026-04-18
Kaitlin E Oldroyd1002France2026-04-06
Clifford O Bolognia1003Spain2026-04-21
Isabel J Schemmer1004Germany2026-04-11
Jefferson X Schemmer1005Brazil2026-04-05
Aruna Z Slusarski1006Spain2026-05-02
Tony R Briddick1007France2026-04-20
Cody N Shinko1008Japan2026-04-26
Smith C Ruta1009Australia2026-04-24
Munro A Chui1010Spain2026-05-02
Antonio C Rulapaugh1011United Kingdom2026-04-24
Clifford P Morasca1012France2026-04-05
Jennifer W Caudy1013United Kingdom2026-04-30
Misaki N Paprocki1014Brazil2026-04-26
Morrow Q Whobrey1015Spain2026-04-09
Ashley I Butt1016Argentina2026-04-15
Nicolas T Chui1017Canada2026-04-20
Faith G Royster1018Brazil2026-04-29
Stacey E Ostrosky1019France2026-04-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues X VenereRussiaIoni Bowcher QUALIFIED
Adams Z OstroskyIndiaElwin Sharvill QUALIFIED
Chavez F MarrierUnited KingdomAsiya Javayant PROPOSAL
Costa Q MaletIndiaXuxue Feng NEW
Ivar P OldroydSpainIoni Bowcher UNQUALIFIED
Misaki K MaletRussiaXuxue Feng UNQUALIFIED
Ricardo Z GillianItalyAmy Elsner RENEWAL
Maria W StensethUnited KingdomIoni Bowcher UNQUALIFIED
Juan T BowleyItalyAmy Elsner RENEWAL
Leon W PerinIndiaElwin Sharvill NEW
Alejandro W DarakjyAustraliaBernardo Dominic RENEWAL
Stacey D BologniaSpainAnna Fali QUALIFIED
Smith V ButtIndiaIvan Magalhaes PROPOSAL
Tony Z AmigonIndiaOnyama Limba PROPOSAL
Kadeem S StockhamCanadaBernardo Dominic NEW
Rodrigues T DoeJapanAmy Elsner QUALIFIED
Deepesh A SergiFranceIoni Bowcher PROPOSAL
Alejandro H CaudyRussiaStephen Shaw NEW
Darci M MaletIndiaBernardo Dominic PROPOSAL
Izzy X GauchoArgentinaBernardo Dominic QUALIFIED
Izzy X BowleyIndiaIvan Magalhaes UNQUALIFIED
Alejandro O ChuiItalyIoni Bowcher PROPOSAL
Munro C WieserUnited KingdomStephen Shaw NEW
Julie M MaletGermanyIoni Bowcher NEW
Kadeem O CaudySpainAsiya Javayant NEW
Jefferson G MacleadGermanyBernardo Dominic NEW
Johnson R InouyeSpainAsiya Javayant PROPOSAL
Costa T WaycottCanadaAmy Elsner UNQUALIFIED
Deepesh F GarufiSpainAnna Fali PROPOSAL
Chavez K CaudyGermanyOnyama Limba PROPOSAL
Cody Y WieserCanadaBernardo Dominic NEW
Izzy Y VocelkaArgentinaElwin Sharvill PROPOSAL
Mujtaba G SlusarskiBrazilOnyama Limba PROPOSAL
Ivar C GarufiGermanyIvan Magalhaes UNQUALIFIED
Adams E PoquetteItalyIoni Bowcher UNQUALIFIED
Arvin F FollerUnited KingdomAmy Elsner UNQUALIFIED
Rodrigues O FigeroaRussiaElwin Sharvill RENEWAL
Morrow I DarakjyBrazilIoni Bowcher PROPOSAL
Darci G CaudyJapanIvan Magalhaes RENEWAL
Julie C MorascaCanadaOnyama Limba PROPOSAL

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