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
Deepesh U AmigonJapanIoni Bowcher UNQUALIFIED
Costa Q DarakjySpainStephen Shaw NEW
Izzy N VocelkaJapanOnyama Limba NEGOTIATION
Octavia L StensethAustraliaIoni Bowcher RENEWAL
Greenwood J FlosiBrazilBernardo Dominic NEGOTIATION
Silvio D WieserGermanyIoni Bowcher NEGOTIATION
Leon I NickaItalyBernardo Dominic RENEWAL
James E KuskoIndiaAsiya Javayant UNQUALIFIED
Jennifer I GarufiSpainElwin Sharvill UNQUALIFIED
Rodrigues N NickaBrazilOnyama Limba NEGOTIATION
Greenwood U MarrierAustraliaAsiya Javayant NEW
Maisha J CaldareraBrazilBernardo Dominic UNQUALIFIED
Chavez K StensethSpainAsiya Javayant PROPOSAL
Aruna F WaycottSpainOnyama Limba RENEWAL
Tony O CaudyBrazilStephen Shaw QUALIFIED
Jones R FollerBrazilOnyama Limba NEW
Smith Z IturbideJapanXuxue Feng UNQUALIFIED
Morrow E CaldareraAustraliaStephen Shaw RENEWAL
Tony N AlbaresSpainAsiya Javayant QUALIFIED
Octavia O OstroskyCanadaAnna Fali NEW
Aditya K AlbaresGermanyIoni Bowcher RENEWAL
Izzy N MorascaSpainStephen Shaw UNQUALIFIED
Arvin O CaldareraFranceBernardo Dominic UNQUALIFIED
Chavez O KolmetzAustraliaBernardo Dominic RENEWAL
Ashley W AlbaresCanadaStephen Shaw UNQUALIFIED
Smith E KolmetzRussiaAnna Fali PROPOSAL
Aditya T ButtGermanyElwin Sharvill PROPOSAL
Clifford B MorascaFranceStephen Shaw UNQUALIFIED
Adams Q MorascaRussiaOnyama Limba UNQUALIFIED
Salvatore X VocelkaFranceAmy Elsner QUALIFIED
Silvio F DoeArgentinaOnyama Limba QUALIFIED
James I PaprockiGermanyElwin Sharvill UNQUALIFIED
Aruna P OldroydUnited KingdomAsiya Javayant NEGOTIATION
Jeanfrancois F PaprockiBrazilStephen Shaw PROPOSAL
Misaki S InouyeAustraliaAmy Elsner NEGOTIATION
Morrow G BologniaSpainStephen Shaw RENEWAL
Faith J RutaSpainBernardo Dominic NEGOTIATION
Aika J OstroskyIndiaOnyama Limba QUALIFIED
Mayumi K OstroskyFranceElwin Sharvill NEW
Stacey P RoysterAustraliaAmy Elsner UNQUALIFIED
Johnson N StensethJapanAnna Fali NEW
Julie Y PerinIndiaAnna Fali RENEWAL
Antonio D WieserFranceOnyama Limba PROPOSAL
Nicolas O SchemmerIndiaAmy Elsner UNQUALIFIED
Morrow T PaprockiArgentinaElwin Sharvill UNQUALIFIED
Murillo Z SchemmerUnited KingdomElwin Sharvill NEW
Julie M RulapaughIndiaAnna Fali UNQUALIFIED
Mujtaba T RimItalyIvan Magalhaes QUALIFIED
Jennifer K StockhamBrazilIvan Magalhaes PROPOSAL
Clifford R KolmetzRussiaIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin J RoysterArgentinaStephen Shaw PROPOSAL
Misaki L RimUnited KingdomAsiya Javayant PROPOSAL
Ivar U InouyeCanadaAmy Elsner NEW
Leja Q RulapaughIndiaOnyama Limba NEGOTIATION
Mayumi Y CampainBrazilBernardo Dominic RENEWAL
Jefferson I CampainFranceIoni Bowcher NEW
Clifford U SaylorsItalyOnyama Limba QUALIFIED
Greenwood X WieserItalyIvan Magalhaes UNQUALIFIED
Stacey F WaycottBrazilIvan Magalhaes PROPOSAL
Maria C VocelkaBrazilOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro E SlusarskiFrance2026-03-28Rousseaux, Michael Esq PROPOSAL37Bernardo Dominic
1001Julie I ButtGermany2026-03-20Truhlar And Truhlar Attys NEW56Ivan Magalhaes
1002Murillo G PaprockiUnited Kingdom2026-03-23Morlong Associates PROPOSAL14Bernardo Dominic
1003Mujtaba V GauchoSpain2026-03-24Feltz Printing Service NEW33Asiya Javayant
1004Maria N BriddickRussia2026-04-01Chapman, Ross E Esq PROPOSAL89Xuxue Feng
1005Maisha R MarrierBrazil2026-03-16Feltz Printing Service QUALIFIED27Ivan Magalhaes
1006Johnson W FigeroaBrazil2026-03-14Morlong Associates UNQUALIFIED52Ivan Magalhaes
1007Aruna T AmigonUnited Kingdom2026-03-06King, Christopher A Esq PROPOSAL71Stephen Shaw
1008Smith L SergiBrazil2026-03-15Rousseaux, Michael Esq QUALIFIED77Stephen Shaw
1009Murillo M MorascaGermany2026-03-26Chapman, Ross E Esq QUALIFIED99Anna Fali
1010Aditya N GlickCanada2026-03-22Chemel, James L Cpa NEGOTIATION11Asiya Javayant
1011Antonio Z VocelkaAustralia2026-03-17Chapman, Ross E Esq NEW54Elwin Sharvill
1012Kadeem H IturbideItaly2026-03-22Printing Dimensions NEGOTIATION14Onyama Limba
1013Smith K DarakjyUnited Kingdom2026-03-03Morlong Associates UNQUALIFIED73Elwin Sharvill
1014Leja W OstroskyAustralia2026-03-11Buckley Miller Wright QUALIFIED31Ivan Magalhaes
1015Silvio Z AmigonAustralia2026-03-17Rangoni Of Florence NEW29Anna Fali
1016Kadeem D GauchoBrazil2026-03-18Feltz Printing Service RENEWAL56Elwin Sharvill
1017Stacey H RimItaly2026-03-20King, Christopher A Esq UNQUALIFIED18Stephen Shaw
1018Mayumi V SergiJapan2026-03-25Truhlar And Truhlar Attys UNQUALIFIED20Onyama Limba
1019Ricardo V AmigonAustralia2026-03-27Benton, John B Jr UNQUALIFIED78Xuxue Feng
1020Julie P StensethAustralia2026-03-08Rangoni Of Florence PROPOSAL61Anna Fali
1021Kaitlin R NickaSpain2026-03-21Commercial Press NEGOTIATION86Anna Fali
1022Adams U OldroydAustralia2026-03-31Rangoni Of Florence QUALIFIED1Bernardo Dominic
1023Julie M ChuiFrance2026-03-18Buckley Miller Wright UNQUALIFIED8Elwin Sharvill
1024Maria W MaletItaly2026-03-16Benton, John B Jr QUALIFIED13Ioni Bowcher
1025Juan U ChuiAustralia2026-03-11Dorl, James J Esq RENEWAL28Bernardo Dominic
1026Maisha U FlosiFrance2026-03-19King, Christopher A Esq UNQUALIFIED80Elwin Sharvill
1027Mujtaba H GillianFrance2026-03-30Truhlar And Truhlar Attys NEGOTIATION19Amy Elsner
1028Adams I CampainAustralia2026-04-01Commercial Press NEGOTIATION29Stephen Shaw
1029Aditya W WieserRussia2026-03-15Dorl, James J Esq NEW86Bernardo Dominic
1030Deepesh T StensethFrance2026-03-06Dorl, James J Esq UNQUALIFIED62Xuxue Feng
1031Alejandro Y MarrierItaly2026-03-29Benton, John B Jr PROPOSAL13Ioni Bowcher
1032Deepesh Z PaprockiCanada2026-03-21Truhlar And Truhlar Attys RENEWAL67Bernardo Dominic
1033Ivar U PaprockiIndia2026-03-16Chanay, Jeffrey A Esq RENEWAL4Amy Elsner
1034Misaki Y InouyeItaly2026-03-26Rangoni Of Florence UNQUALIFIED28Stephen Shaw
1035Cody E NestleArgentina2026-03-16Printing Dimensions QUALIFIED6Elwin Sharvill
1036Antonio G WhobreyAustralia2026-04-01Dorl, James J Esq PROPOSAL81Ivan Magalhaes
1037Claire T MaletUnited Kingdom2026-03-03Commercial Press NEW38Stephen Shaw
1038Aika F OldroydUnited Kingdom2026-03-21Feltz Printing Service NEGOTIATION38Anna Fali
1039Kadeem E WieserItaly2026-03-21Feltz Printing Service UNQUALIFIED6Onyama Limba
1040James L StensethFrance2026-03-31Feiner Bros NEGOTIATION39Elwin Sharvill
1041Adams T IturbideItaly2026-03-17Buckley Miller Wright PROPOSAL29Anna Fali
1042Maisha L OstroskyAustralia2026-04-01Feltz Printing Service UNQUALIFIED98Xuxue Feng
1043Deepesh C PoquetteIndia2026-03-11Feiner Bros RENEWAL9Elwin Sharvill
1044David Q KuskoItaly2026-03-22Commercial Press PROPOSAL95Anna Fali
1045Ashley G GlickGermany2026-03-30Commercial Press PROPOSAL48Amy Elsner
1046Mayumi L GillianGermany2026-03-18Rousseaux, Michael Esq QUALIFIED50Bernardo Dominic
1047Nicolas I SergiBrazil2026-03-31Chapman, Ross E Esq NEW88Asiya Javayant
1048Ashley Y AlbaresArgentina2026-03-27Dorl, James J Esq QUALIFIED50Bernardo Dominic
1049Salvatore W GlickRussia2026-03-04King, Christopher A Esq NEGOTIATION40Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Jennifer J MaletIndiaXuxue Feng UNQUALIFIED
Darci P BowleyArgentinaBernardo Dominic QUALIFIED
Jennifer W DarakjyUnited KingdomBernardo Dominic PROPOSAL
Jones I AmigonRussiaAmy Elsner NEGOTIATION
Jones B NestleBrazilAsiya Javayant QUALIFIED
Antonio B ChuiBrazilOnyama Limba NEW
Aruna K FerenczRussiaIvan Magalhaes NEGOTIATION
Aditya Q BologniaIndiaOnyama Limba PROPOSAL
Emily V KuskoGermanyStephen Shaw NEGOTIATION
Johnson O MacleadSpainAmy Elsner RENEWAL
Emily T AmigonBrazilStephen Shaw RENEWAL
Murillo T GauchoItalyAsiya Javayant RENEWAL
Izzy N FigeroaBrazilAnna Fali UNQUALIFIED
Silvio Z BowleyJapanStephen Shaw NEW
Maria S MarrierBrazilAnna Fali PROPOSAL
Jefferson Y SaylorsFranceOnyama Limba QUALIFIED
Aditya C SlusarskiAustraliaIvan Magalhaes NEGOTIATION
Murillo F WaycottCanadaAsiya Javayant NEGOTIATION
Antonio H MarrierItalyStephen Shaw RENEWAL
Greenwood C RutaFranceElwin Sharvill QUALIFIED
Misaki V CampainJapanXuxue Feng NEGOTIATION
Juan G KolmetzItalyAnna Fali NEGOTIATION
Julie E WaycottIndiaElwin Sharvill NEW
Wickens C StensethJapanElwin Sharvill NEGOTIATION
Maisha J NickaCanadaAmy Elsner NEW
Ricardo R CaldareraJapanIoni Bowcher NEGOTIATION
Smith Z SlusarskiBrazilAmy Elsner NEGOTIATION
Aika S KolmetzIndiaIoni Bowcher NEGOTIATION
Claire F DilliardAustraliaAnna Fali QUALIFIED
Maria C ShinkoJapanAnna Fali NEW
Aditya L GlickBrazilOnyama Limba QUALIFIED
Jennifer O DoeUnited KingdomOnyama Limba RENEWAL
Octavia J BriddickIndiaAnna Fali UNQUALIFIED
Ashley P PerinIndiaBernardo Dominic QUALIFIED
Nicolas P FlosiBrazilOnyama Limba PROPOSAL
Cody P VenereAustraliaAmy Elsner NEGOTIATION
Ashley P ShinkoSpainXuxue Feng QUALIFIED
Leja N FerenczItalyIoni Bowcher RENEWAL
Faith Y MarrierFranceBernardo Dominic UNQUALIFIED
Rodrigues C PoquetteRussiaIvan Magalhaes NEGOTIATION
Ivar X PaprockiJapanBernardo Dominic UNQUALIFIED
Tony H OldroydArgentinaIvan Magalhaes PROPOSAL
Salvatore U CaudyCanadaIvan Magalhaes PROPOSAL
Julie Y RimArgentinaAnna Fali UNQUALIFIED
James U AlbaresRussiaXuxue Feng QUALIFIED
Maisha V MaletSpainAnna Fali PROPOSAL
Sinclair F NestleIndiaBernardo Dominic QUALIFIED
Chavez P VocelkaJapanStephen Shaw PROPOSAL
David X NestleSpainOnyama Limba UNQUALIFIED
Jennifer A StensethJapanAnna Fali UNQUALIFIED
Frozen Columns
Name
Julie W Perin
Leon K Maclead
Wickens A Flosi
Adams J Gillian
Stacey B Doe
Adams F Bowley
Darci P Figeroa
Octavia A Bolognia
Cody E Vocelka
Jones J Shinko
Francesco Z Gillian
Leon J Dilliard
Adams C Morasca
Deepesh S Gaucho
Jones G Vocelka
Jeanfrancois P Glick
Misaki Q Foller
Aruna I Ferencz
Tony C Flosi
Murillo M Garufi
Greenwood P Caudy
Tony B Ruta
Leja P Campain
Leon F Waycott
Octavia Q Caldarera
Darci N Wieser
Maria O Schemmer
Arvin D Amigon
Nicolas D Malet
Munro Q Perin
Misaki Z Morasca
Leja D Gaucho
Costa T Nicka
Izzy B Sergi
Izzy J Doe
Leon B Whobrey
Francesco M Stenseth
Morrow S Dilliard
Faith O Darakjy
Emily O Albares
Costa G Malet
David A Iturbide
Emily W Malet
David R Stenseth
Sinclair R Paprocki
Emily C Malet
Kadeem K Whobrey
Johnson D Malet
Leja Y Figeroa
Darci D Whobrey
IdCountryDate
1000Japan2026-03-25
1001Australia2026-03-22
1002France2026-03-05
1003Japan2026-03-18
1004Australia2026-03-07
1005Australia2026-03-21
1006Germany2026-03-27
1007Canada2026-03-15
1008Brazil2026-03-20
1009United Kingdom2026-03-05
1010Canada2026-03-30
1011Canada2026-03-14
1012France2026-03-16
1013Canada2026-03-16
1014Germany2026-03-28
1015Canada2026-03-20
1016Russia2026-03-23
1017France2026-03-14
1018Canada2026-03-30
1019Australia2026-03-04
1020Canada2026-03-17
1021India2026-03-29
1022Argentina2026-03-09
1023France2026-03-05
1024Brazil2026-03-03
1025Canada2026-03-05
1026Germany2026-03-25
1027France2026-03-20
1028France2026-03-17
1029India2026-04-01
1030Spain2026-03-21
1031Italy2026-03-12
1032United Kingdom2026-03-06
1033Japan2026-03-26
1034Australia2026-03-17
1035Russia2026-03-30
1036France2026-03-25
1037Russia2026-03-31
1038Argentina2026-03-22
1039Italy2026-03-17
1040Canada2026-03-10
1041Australia2026-03-30
1042Australia2026-03-11
1043Spain2026-03-14
1044Australia2026-03-15
1045Australia2026-03-07
1046Italy2026-03-22
1047India2026-03-16
1048Argentina2026-03-09
1049Canada2026-03-15

On-Demand Data

NameIdCountryDate
Jennifer S Darakjy1000Japan2026-03-14
Misaki S Schemmer1001Brazil2026-03-04
Faith W Gillian1002United Kingdom2026-03-22
Adams O Albares1003Spain2026-03-26
Leon D Paprocki1004Spain2026-03-25
Smith T Bolognia1005Argentina2026-03-08
Munro K Vocelka1006Germany2026-03-23
Emily E Flosi1007France2026-03-24
Alejandro G Briddick1008Argentina2026-03-29
Deepesh D Rulapaugh1009Spain2026-03-14
Johnson Z Malet1010India2026-03-05
Jennifer O Nestle1011Brazil2026-03-18
Jefferson N Flosi1012Italy2026-03-23
Cody M Kusko1013Italy2026-03-29
Jones F Schemmer1014Germany2026-03-19
Jennifer K Ferencz1015Russia2026-03-11
Tony Z Bolognia1016France2026-03-08
Ashley J Venere1017Italy2026-03-30
Munro H Doe1018Germany2026-03-26
Octavia N Kusko1019Argentina2026-03-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow S KuskoBrazilIoni Bowcher NEGOTIATION
Julie C RutaItalyIoni Bowcher PROPOSAL
Faith I FollerFranceAnna Fali QUALIFIED
Misaki W OstroskyBrazilAmy Elsner NEGOTIATION
Darci I MaletItalyBernardo Dominic NEGOTIATION
Mujtaba B GillianArgentinaElwin Sharvill UNQUALIFIED
Kadeem A StockhamRussiaElwin Sharvill NEGOTIATION
Francesco L MorascaBrazilElwin Sharvill QUALIFIED
Izzy B ShinkoCanadaIvan Magalhaes PROPOSAL
Munro J IturbideCanadaAnna Fali RENEWAL
Leja Z RimGermanyIoni Bowcher RENEWAL
Munro K MorascaRussiaAmy Elsner RENEWAL
Alejandro C ButtGermanyAsiya Javayant QUALIFIED
Greenwood A RulapaughJapanIoni Bowcher NEGOTIATION
Morrow E ButtGermanyAsiya Javayant PROPOSAL
Mujtaba E DarakjyIndiaElwin Sharvill QUALIFIED
Jeanfrancois K MacleadBrazilAsiya Javayant NEGOTIATION
Tony T GauchoItalyStephen Shaw NEGOTIATION
Kaitlin F ChuiUnited KingdomIvan Magalhaes NEW
Kaitlin F GarufiGermanyOnyama Limba NEW
Octavia E RoysterIndiaXuxue Feng NEGOTIATION
James A OstroskyIndiaIoni Bowcher RENEWAL
Nicolas V StensethJapanStephen Shaw PROPOSAL
Jones L IturbideBrazilAnna Fali NEGOTIATION
Octavia D NickaSpainIoni Bowcher UNQUALIFIED
Arvin S ShinkoCanadaIoni Bowcher PROPOSAL
Murillo H PoquetteItalyOnyama Limba PROPOSAL
Aika B StockhamFranceAsiya Javayant PROPOSAL
Mayumi H SaylorsFranceAsiya Javayant UNQUALIFIED
Greenwood B GillianCanadaAsiya Javayant RENEWAL
Mayumi S KolmetzFranceAmy Elsner PROPOSAL
Claire Y MaletFranceIoni Bowcher RENEWAL
Aditya K RoysterCanadaAsiya Javayant RENEWAL
Jones G WieserJapanXuxue Feng NEW
Ivar T IturbideFranceBernardo Dominic PROPOSAL
Kaitlin U WieserArgentinaOnyama Limba UNQUALIFIED
Johnson X PaprockiJapanBernardo Dominic NEW
Izzy Y WaycottFranceAmy Elsner NEW
Alejandro O PoquetteIndiaAnna Fali UNQUALIFIED
Alejandro L BowleyIndiaBernardo Dominic 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.