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
Smith L SlusarskiRussiaAsiya Javayant NEW
Smith V IturbideCanadaElwin Sharvill UNQUALIFIED
Leon P SaylorsFranceOnyama Limba NEGOTIATION
James P AmigonArgentinaBernardo Dominic UNQUALIFIED
Ricardo G StockhamIndiaXuxue Feng PROPOSAL
Izzy I KolmetzIndiaStephen Shaw UNQUALIFIED
Isabel Q CaudyBrazilBernardo Dominic UNQUALIFIED
Sinclair M StensethJapanIvan Magalhaes NEW
Ashley B NickaCanadaIvan Magalhaes UNQUALIFIED
Francesco J ChuiBrazilAsiya Javayant UNQUALIFIED
Aruna P ShinkoItalyAnna Fali PROPOSAL
Isabel Z TollnerUnited KingdomElwin Sharvill NEGOTIATION
Kaitlin X VocelkaArgentinaAmy Elsner PROPOSAL
Munro E CaldareraUnited KingdomIvan Magalhaes RENEWAL
Kadeem N OstroskyJapanIoni Bowcher QUALIFIED
Mayumi E RimItalyElwin Sharvill UNQUALIFIED
Tony U SchemmerJapanStephen Shaw RENEWAL
Tony E RutaItalyIvan Magalhaes UNQUALIFIED
Salvatore W BologniaCanadaIoni Bowcher UNQUALIFIED
Greenwood Z SchemmerCanadaAsiya Javayant UNQUALIFIED
Morrow O SlusarskiItalyIoni Bowcher QUALIFIED
Ricardo F SergiAustraliaOnyama Limba PROPOSAL
Alejandro U RimUnited KingdomAmy Elsner UNQUALIFIED
Jones D OldroydRussiaAnna Fali RENEWAL
James Z DoeUnited KingdomBernardo Dominic QUALIFIED
Julie L MaletSpainAnna Fali UNQUALIFIED
Mayumi S MarrierItalyAmy Elsner NEW
Sinclair M GarufiRussiaIvan Magalhaes UNQUALIFIED
Mayumi M MacleadItalyIoni Bowcher NEGOTIATION
Jennifer B CaldareraAustraliaXuxue Feng UNQUALIFIED
Aika Y DoeArgentinaAsiya Javayant NEW
Clifford W BologniaAustraliaAmy Elsner QUALIFIED
Greenwood N MorascaIndiaOnyama Limba PROPOSAL
Ashley J NestleJapanAnna Fali UNQUALIFIED
Octavia Y SergiJapanAnna Fali UNQUALIFIED
Aruna S PaprockiArgentinaAmy Elsner NEGOTIATION
Murillo Z SaylorsItalyAmy Elsner RENEWAL
Ricardo F WaycottCanadaStephen Shaw RENEWAL
Rodrigues L ShinkoUnited KingdomAnna Fali PROPOSAL
Jefferson Q IturbideRussiaIoni Bowcher RENEWAL
James Q NestleArgentinaBernardo Dominic PROPOSAL
Mayumi G StensethFranceOnyama Limba RENEWAL
Chavez B ButtGermanyBernardo Dominic RENEWAL
Stacey V AmigonCanadaIoni Bowcher UNQUALIFIED
Cody M BowleyItalyBernardo Dominic NEW
Kadeem S RimAustraliaAnna Fali PROPOSAL
Alejandro F VenereRussiaAmy Elsner NEW
Deepesh C OstroskyItalyAsiya Javayant NEW
Izzy F CaldareraAustraliaAsiya Javayant NEW
Salvatore B AmigonItalyOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Leja B WieserSpainAsiya Javayant QUALIFIED
Adams D SchemmerGermanyAnna Fali QUALIFIED
Greenwood M SlusarskiGermanyIoni Bowcher QUALIFIED
Darci U MacleadItalyAnna Fali QUALIFIED
Aditya M RimBrazilStephen Shaw PROPOSAL
Emily K MacleadBrazilStephen Shaw QUALIFIED
Isabel X ButtSpainAsiya Javayant QUALIFIED
Izzy T PerinArgentinaAnna Fali NEW
Greenwood J ButtRussiaStephen Shaw PROPOSAL
Rodrigues T DoeJapanStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues H DilliardGermany2026-05-29Rangoni Of Florence QUALIFIED65Amy Elsner
1001Mujtaba Y RutaBrazil2026-05-24King, Christopher A Esq PROPOSAL42Stephen Shaw
1002Aditya M PerinFrance2026-05-20King, Christopher A Esq PROPOSAL42Ivan Magalhaes
1003Aika B RutaSpain2026-05-15Feltz Printing Service RENEWAL30Xuxue Feng
1004Kadeem B NestleUnited Kingdom2026-05-16Truhlar And Truhlar Attys RENEWAL34Stephen Shaw
1005Silvio T WhobreySpain2026-05-19Benton, John B Jr RENEWAL50Bernardo Dominic
1006Octavia A RulapaughGermany2026-05-30Buckley Miller Wright QUALIFIED79Xuxue Feng
1007David B SergiBrazil2026-05-29Benton, John B Jr NEW31Onyama Limba
1008Izzy Z BriddickBrazil2026-05-29Feltz Printing Service NEW18Amy Elsner
1009Mayumi E OldroydIndia2026-05-04Printing Dimensions UNQUALIFIED87Asiya Javayant
1010Morrow E RulapaughIndia2026-05-04Rousseaux, Michael Esq NEGOTIATION15Stephen Shaw
1011Izzy L AlbaresCanada2026-05-07Rangoni Of Florence QUALIFIED86Amy Elsner
1012Jennifer U FollerUnited Kingdom2026-05-23Feiner Bros RENEWAL90Onyama Limba
1013Claire H ButtAustralia2026-05-17Feltz Printing Service NEW20Elwin Sharvill
1014Costa G AmigonJapan2026-05-29Dorl, James J Esq RENEWAL79Asiya Javayant
1015Silvio L MorascaItaly2026-05-31Buckley Miller Wright PROPOSAL42Ivan Magalhaes
1016Aika N FlosiFrance2026-05-21Chanay, Jeffrey A Esq PROPOSAL56Anna Fali
1017Aditya M StockhamArgentina2026-05-15Dorl, James J Esq RENEWAL54Onyama Limba
1018Jones P InouyeRussia2026-05-20King, Christopher A Esq RENEWAL82Onyama Limba
1019Mujtaba D VocelkaItaly2026-05-30Truhlar And Truhlar Attys PROPOSAL32Ioni Bowcher
1020Leja B DarakjyFrance2026-05-18Printing Dimensions RENEWAL24Onyama Limba
1021Aika U SlusarskiCanada2026-05-23Morlong Associates UNQUALIFIED0Ivan Magalhaes
1022Isabel E AmigonItaly2026-05-11Commercial Press QUALIFIED79Onyama Limba
1023Mujtaba Y IturbideBrazil2026-05-13Benton, John B Jr UNQUALIFIED58Asiya Javayant
1024Maria R ButtAustralia2026-05-27Feiner Bros NEW8Amy Elsner
1025Darci X DarakjyAustralia2026-05-13Printing Dimensions QUALIFIED83Stephen Shaw
1026Cody L MorascaFrance2026-05-21Dorl, James J Esq NEGOTIATION65Elwin Sharvill
1027Sinclair C WaycottItaly2026-05-30Buckley Miller Wright QUALIFIED5Stephen Shaw
1028James T DarakjyArgentina2026-05-19Printing Dimensions UNQUALIFIED49Ivan Magalhaes
1029Ricardo D NickaIndia2026-05-07Rousseaux, Michael Esq NEGOTIATION16Ivan Magalhaes
1030Maria L GarufiJapan2026-05-18Chapman, Ross E Esq RENEWAL30Bernardo Dominic
1031Deepesh A SergiFrance2026-05-24Feltz Printing Service RENEWAL92Bernardo Dominic
1032Mujtaba W VenereUnited Kingdom2026-06-01Chapman, Ross E Esq RENEWAL78Anna Fali
1033Aditya C CaudyArgentina2026-05-12Chapman, Ross E Esq PROPOSAL35Elwin Sharvill
1034Murillo W ButtArgentina2026-05-25Rangoni Of Florence RENEWAL9Stephen Shaw
1035Ivar N CampainBrazil2026-05-29Rousseaux, Michael Esq UNQUALIFIED36Xuxue Feng
1036Clifford J InouyeJapan2026-05-05Chemel, James L Cpa NEW83Bernardo Dominic
1037James W StockhamAustralia2026-05-26Buckley Miller Wright UNQUALIFIED67Anna Fali
1038Kadeem B WieserRussia2026-05-15Rangoni Of Florence RENEWAL65Elwin Sharvill
1039Salvatore C BowleyIndia2026-05-06Commercial Press NEGOTIATION22Asiya Javayant
1040Aditya J DoeGermany2026-05-17Commercial Press RENEWAL88Ioni Bowcher
1041Johnson I CampainUnited Kingdom2026-05-20Rangoni Of Florence QUALIFIED24Elwin Sharvill
1042Jennifer V FigeroaArgentina2026-05-16King, Christopher A Esq NEGOTIATION53Xuxue Feng
1043Antonio L NestleUnited Kingdom2026-05-20Chanay, Jeffrey A Esq QUALIFIED26Elwin Sharvill
1044Arvin W RulapaughArgentina2026-05-22Commercial Press RENEWAL48Onyama Limba
1045Antonio K VocelkaJapan2026-05-09Rangoni Of Florence RENEWAL79Xuxue Feng
1046Rodrigues Z ButtCanada2026-05-10Rangoni Of Florence UNQUALIFIED16Onyama Limba
1047Silvio S GauchoBrazil2026-05-05Commercial Press UNQUALIFIED33Ivan Magalhaes
1048Alejandro K CaudySpain2026-05-25Commercial Press NEGOTIATION1Ivan Magalhaes
1049Aika C SchemmerGermany2026-05-16Commercial Press NEGOTIATION74Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Aika A MarrierBrazilAmy Elsner NEW
Munro N StensethArgentinaBernardo Dominic QUALIFIED
Darci H DilliardGermanyStephen Shaw PROPOSAL
Cody W KuskoJapanAsiya Javayant PROPOSAL
Stacey A GlickSpainAsiya Javayant PROPOSAL
Johnson X MorascaGermanyAnna Fali PROPOSAL
Francesco N BowleyItalyAnna Fali NEW
Jeanfrancois N RimCanadaOnyama Limba NEGOTIATION
Rodrigues G InouyeFranceAmy Elsner QUALIFIED
Tony T MaletIndiaElwin Sharvill NEW
Aika G WaycottArgentinaAnna Fali NEW
Cody D IturbideJapanElwin Sharvill NEW
Isabel L VenereAustraliaOnyama Limba RENEWAL
Mujtaba V SchemmerGermanyAmy Elsner NEW
Aditya B DilliardSpainAmy Elsner NEW
Alejandro I DarakjyGermanyBernardo Dominic NEGOTIATION
Izzy G SaylorsBrazilElwin Sharvill QUALIFIED
Deepesh N ShinkoCanadaElwin Sharvill NEGOTIATION
Murillo I RutaBrazilAmy Elsner NEW
Deepesh Z ButtItalyOnyama Limba UNQUALIFIED
Izzy F FlosiFranceAsiya Javayant NEW
Stacey R SlusarskiUnited KingdomAmy Elsner NEW
Aditya A AmigonSpainStephen Shaw QUALIFIED
Leon L AlbaresArgentinaOnyama Limba PROPOSAL
Julie K RoysterGermanyOnyama Limba NEW
Alejandro Z BriddickCanadaAmy Elsner QUALIFIED
David X KuskoBrazilStephen Shaw UNQUALIFIED
Mayumi L CaldareraIndiaIoni Bowcher NEGOTIATION
Ashley V CaudyRussiaIvan Magalhaes PROPOSAL
Salvatore S BologniaUnited KingdomElwin Sharvill QUALIFIED
Mayumi P SchemmerItalyIvan Magalhaes NEW
Jeanfrancois C MaletUnited KingdomOnyama Limba PROPOSAL
Maisha P GillianBrazilOnyama Limba UNQUALIFIED
Julie I CaldareraItalyIvan Magalhaes NEGOTIATION
Silvio V VenereAustraliaAnna Fali QUALIFIED
Munro F RoysterUnited KingdomIoni Bowcher UNQUALIFIED
Johnson E RimCanadaOnyama Limba PROPOSAL
Darci O NestleAustraliaIoni Bowcher QUALIFIED
Julie P SergiArgentinaIvan Magalhaes UNQUALIFIED
Sinclair B GarufiItalyIvan Magalhaes PROPOSAL
Aruna J FlosiGermanyIoni Bowcher RENEWAL
Mujtaba D GlickSpainAsiya Javayant NEW
Aruna Z ShinkoCanadaElwin Sharvill UNQUALIFIED
Wickens C CaldareraBrazilXuxue Feng NEW
Salvatore L MaletBrazilAnna Fali NEGOTIATION
Emily S InouyeJapanOnyama Limba UNQUALIFIED
Morrow Z CaldareraArgentinaAsiya Javayant QUALIFIED
Mujtaba Q InouyeUnited KingdomIvan Magalhaes UNQUALIFIED
Jennifer N CaldareraJapanAnna Fali NEW
Izzy G FollerIndiaOnyama Limba PROPOSAL
Frozen Columns
Name
Clifford R Caldarera
Izzy V Vocelka
Nicolas B Iturbide
Murillo A Glick
Clifford U Malet
Claire A Wieser
Tony Z Dilliard
Jefferson W Inouye
Chavez G Dilliard
Aditya O Stenseth
Kadeem V Shinko
Alejandro O Paprocki
Jeanfrancois Z Campain
James D Gaucho
Octavia U Gaucho
Julie Z Inouye
Jefferson L Oldroyd
Leon L Shinko
Adams M Whobrey
Cody M Nicka
Munro H Rulapaugh
Silvio P Iturbide
Julie Q Figeroa
Murillo U Figeroa
Alejandro D Perin
Claire I Briddick
Johnson Q Poquette
Mayumi Q Foller
Rodrigues H Royster
Rodrigues C Iturbide
Ivar U Kolmetz
Morrow G Stenseth
Munro G Sergi
Leja R Oldroyd
Juan X Wieser
Izzy J Sergi
Johnson Q Butt
Morrow R Ostrosky
Aruna U Tollner
Tony C Waycott
Jennifer S Inouye
Ivar R Ruta
Leja Y Wieser
Antonio R Marrier
Deepesh V Ruta
Octavia F Malet
Leja C Slusarski
Clifford A Kusko
Aruna O Tollner
Greenwood M Garufi
IdCountryDate
1000United Kingdom2026-05-03
1001Russia2026-05-18
1002Russia2026-05-21
1003Russia2026-05-18
1004Italy2026-05-29
1005Italy2026-05-03
1006United Kingdom2026-05-04
1007Germany2026-05-13
1008Germany2026-05-18
1009Australia2026-05-16
1010Italy2026-05-16
1011Italy2026-05-16
1012India2026-05-13
1013Japan2026-05-17
1014Argentina2026-05-28
1015Germany2026-05-28
1016Russia2026-05-16
1017Russia2026-05-28
1018Argentina2026-05-23
1019Spain2026-05-18
1020Italy2026-05-15
1021India2026-05-10
1022Italy2026-05-26
1023United Kingdom2026-05-07
1024Australia2026-05-10
1025Argentina2026-05-10
1026Russia2026-05-11
1027Spain2026-05-20
1028Australia2026-05-29
1029Australia2026-06-01
1030Russia2026-05-30
1031India2026-05-29
1032Japan2026-05-15
1033Australia2026-05-13
1034Spain2026-05-23
1035United Kingdom2026-05-22
1036India2026-05-05
1037Australia2026-05-18
1038Canada2026-05-17
1039Australia2026-05-21
1040Spain2026-05-17
1041Germany2026-05-23
1042Australia2026-05-13
1043Canada2026-05-14
1044Canada2026-05-07
1045Japan2026-05-16
1046Russia2026-05-13
1047Australia2026-05-31
1048Italy2026-05-18
1049India2026-05-09

On-Demand Data

NameIdCountryDate
Wickens Y Shinko1000France2026-05-22
Mujtaba U Caldarera1001Argentina2026-05-30
Francesco H Darakjy1002Russia2026-05-05
Smith H Kolmetz1003Argentina2026-05-24
Murillo F Waycott1004Argentina2026-05-15
Ivar G Sergi1005Japan2026-05-25
Misaki B Dilliard1006France2026-05-19
Maisha M Paprocki1007Russia2026-05-16
Clifford R Marrier1008Australia2026-05-27
Murillo G Ostrosky1009Japan2026-05-08
Maisha Q Darakjy1010Russia2026-05-23
Emily W Butt1011Australia2026-05-03
Deepesh A Chui1012Spain2026-05-10
Tony U Tollner1013Argentina2026-05-19
Nicolas Y Ostrosky1014Argentina2026-05-20
Costa X Flosi1015Russia2026-05-28
Smith D Darakjy1016Russia2026-05-20
Faith I Doe1017Australia2026-05-21
Sinclair H Chui1018Russia2026-05-17
Francesco M Flosi1019Italy2026-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford F SlusarskiCanadaIoni Bowcher PROPOSAL
Antonio M StensethArgentinaIoni Bowcher PROPOSAL
Juan D SlusarskiGermanyStephen Shaw NEGOTIATION
Salvatore C WaycottRussiaAmy Elsner NEW
Aruna S RutaUnited KingdomAsiya Javayant UNQUALIFIED
David I NickaGermanyIoni Bowcher UNQUALIFIED
Maisha W GauchoUnited KingdomStephen Shaw RENEWAL
Wickens P PerinRussiaAsiya Javayant NEW
Alejandro G VocelkaIndiaBernardo Dominic NEGOTIATION
Claire K FollerCanadaXuxue Feng UNQUALIFIED
Julie G MaletFranceIvan Magalhaes RENEWAL
Izzy N CaldareraArgentinaAsiya Javayant NEW
Jefferson V StensethSpainElwin Sharvill RENEWAL
Ricardo P MorascaItalyXuxue Feng NEGOTIATION
Arvin C VocelkaUnited KingdomAsiya Javayant NEGOTIATION
Arvin T GauchoArgentinaAmy Elsner PROPOSAL
Morrow N InouyeFranceXuxue Feng NEW
Aruna U FollerBrazilAnna Fali NEGOTIATION
Leon I WaycottBrazilStephen Shaw NEGOTIATION
David X RoysterUnited KingdomAmy Elsner NEGOTIATION
Kadeem M NickaIndiaIoni Bowcher PROPOSAL
Tony H ChuiSpainElwin Sharvill RENEWAL
Misaki B CampainFranceAnna Fali UNQUALIFIED
Jefferson O RoysterSpainAmy Elsner QUALIFIED
Jefferson I ButtGermanyOnyama Limba PROPOSAL
Jefferson B GarufiFranceStephen Shaw NEGOTIATION
Julie I NestleBrazilBernardo Dominic NEW
Juan A ShinkoArgentinaIvan Magalhaes NEW
Claire L CaldareraUnited KingdomAnna Fali UNQUALIFIED
Aruna J CaldareraRussiaAsiya Javayant PROPOSAL
Ricardo S NestleArgentinaOnyama Limba NEW
Leon I ShinkoRussiaAmy Elsner RENEWAL
Maisha L DilliardAustraliaXuxue Feng NEW
Adams U TollnerGermanyAnna Fali PROPOSAL
Antonio O OldroydGermanyXuxue Feng UNQUALIFIED
Faith B MacleadJapanStephen Shaw QUALIFIED
Octavia N StensethRussiaXuxue Feng NEW
Misaki X SlusarskiJapanIvan Magalhaes RENEWAL
David R RutaJapanStephen Shaw UNQUALIFIED
Aika V FerenczCanadaOnyama 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.