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
Aika G GlickItalyIoni Bowcher PROPOSAL
Kaitlin J BriddickCanadaXuxue Feng UNQUALIFIED
Isabel A BriddickBrazilStephen Shaw RENEWAL
Mujtaba G FlosiBrazilAsiya Javayant QUALIFIED
Maisha Q BriddickSpainElwin Sharvill UNQUALIFIED
Francesco T RoysterJapanOnyama Limba NEW
Francesco K CaldareraItalyAsiya Javayant RENEWAL
Francesco R AmigonJapanElwin Sharvill NEGOTIATION
Ricardo W CaldareraAustraliaIoni Bowcher UNQUALIFIED
Ivar O RimCanadaXuxue Feng RENEWAL
Leja Y CampainRussiaBernardo Dominic QUALIFIED
Antonio M GauchoArgentinaStephen Shaw UNQUALIFIED
Leja Y RimUnited KingdomIvan Magalhaes UNQUALIFIED
Ivar U OldroydArgentinaBernardo Dominic RENEWAL
Rodrigues U AlbaresFranceAsiya Javayant UNQUALIFIED
Clifford X PoquetteJapanIvan Magalhaes NEW
Alejandro H SlusarskiAustraliaIvan Magalhaes RENEWAL
Kaitlin U NestleRussiaElwin Sharvill QUALIFIED
Mujtaba D NestleCanadaAmy Elsner RENEWAL
Greenwood Q PoquetteBrazilBernardo Dominic NEW
Jones W ButtJapanElwin Sharvill PROPOSAL
Julie I CampainAustraliaXuxue Feng UNQUALIFIED
Maisha P FerenczSpainAnna Fali QUALIFIED
Smith W BriddickSpainOnyama Limba PROPOSAL
Izzy V SaylorsRussiaAmy Elsner RENEWAL
Munro C KolmetzCanadaAnna Fali QUALIFIED
Aditya M SaylorsCanadaAsiya Javayant NEGOTIATION
Munro L TollnerCanadaOnyama Limba NEGOTIATION
Salvatore Z SaylorsBrazilIvan Magalhaes UNQUALIFIED
Jeanfrancois R FigeroaBrazilIoni Bowcher UNQUALIFIED
Stacey N NickaBrazilOnyama Limba UNQUALIFIED
Aruna C BriddickCanadaAmy Elsner PROPOSAL
Maisha X RoysterItalyAnna Fali PROPOSAL
Jones I DarakjyAustraliaBernardo Dominic UNQUALIFIED
Izzy Z PerinBrazilBernardo Dominic RENEWAL
Isabel G WhobreyFranceAnna Fali NEW
Deepesh F WieserSpainIvan Magalhaes RENEWAL
Aruna B ChuiFranceXuxue Feng QUALIFIED
Stacey U MarrierGermanyIvan Magalhaes NEGOTIATION
Wickens W DarakjyArgentinaAnna Fali RENEWAL
Greenwood U BologniaCanadaXuxue Feng UNQUALIFIED
Mayumi G WieserUnited KingdomAsiya Javayant PROPOSAL
Stacey L MaletItalyElwin Sharvill NEGOTIATION
Aruna K WhobreySpainAnna Fali PROPOSAL
Greenwood Q RulapaughUnited KingdomAsiya Javayant RENEWAL
Julie D RutaJapanOnyama Limba NEGOTIATION
Faith R BriddickCanadaXuxue Feng PROPOSAL
Nicolas D WhobreyBrazilIvan Magalhaes PROPOSAL
David R FollerCanadaStephen Shaw PROPOSAL
Claire D FerenczIndiaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Claire C WaycottJapanXuxue Feng RENEWAL
Murillo G RoysterCanadaElwin Sharvill QUALIFIED
Claire W VenereItalyBernardo Dominic RENEWAL
Octavia U MacleadIndiaIoni Bowcher PROPOSAL
Emily G MarrierFranceAnna Fali QUALIFIED
Nicolas B RulapaughGermanyAnna Fali UNQUALIFIED
Salvatore D PaprockiRussiaAmy Elsner QUALIFIED
Morrow S AlbaresGermanyIvan Magalhaes PROPOSAL
Nicolas V IturbideRussiaAsiya Javayant PROPOSAL
Izzy H StensethIndiaElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas R GarufiSpain2026-02-17Chanay, Jeffrey A Esq RENEWAL19Onyama Limba
1001Nicolas S StockhamUnited Kingdom2026-02-17Benton, John B Jr QUALIFIED22Asiya Javayant
1002Alejandro E KuskoJapan2026-02-17Chanay, Jeffrey A Esq RENEWAL33Anna Fali
1003Greenwood X CaldareraBrazil2026-02-02Printing Dimensions QUALIFIED37Asiya Javayant
1004Francesco V GarufiIndia2026-02-11Dorl, James J Esq NEGOTIATION37Elwin Sharvill
1005Sinclair Y AlbaresItaly2026-02-12Buckley Miller Wright PROPOSAL77Stephen Shaw
1006Johnson L KuskoGermany2026-02-19Benton, John B Jr PROPOSAL18Elwin Sharvill
1007Julie J RutaBrazil2026-02-14Chanay, Jeffrey A Esq PROPOSAL84Bernardo Dominic
1008Wickens G PerinUnited Kingdom2026-02-17Benton, John B Jr NEW20Amy Elsner
1009Octavia S StockhamGermany2026-02-03Rangoni Of Florence UNQUALIFIED35Ivan Magalhaes
1010Wickens M TollnerRussia2026-02-17Commercial Press UNQUALIFIED41Anna Fali
1011Aruna G WieserUnited Kingdom2026-02-07Feiner Bros NEW77Bernardo Dominic
1012Morrow A IturbideArgentina2026-02-20Morlong Associates RENEWAL61Elwin Sharvill
1013Jennifer L RulapaughGermany2026-02-12Morlong Associates QUALIFIED94Amy Elsner
1014James T PoquetteRussia2026-02-05Benton, John B Jr NEGOTIATION10Anna Fali
1015Smith T IturbideArgentina2026-02-02Chapman, Ross E Esq QUALIFIED53Elwin Sharvill
1016Leon N ButtArgentina2026-02-24Buckley Miller Wright RENEWAL88Ioni Bowcher
1017Jefferson S SergiIndia2026-02-15Feiner Bros NEGOTIATION8Ivan Magalhaes
1018Kadeem U FigeroaBrazil2026-02-23Commercial Press NEW45Amy Elsner
1019Jennifer K SergiArgentina2026-02-19Rousseaux, Michael Esq PROPOSAL94Stephen Shaw
1020Clifford M KolmetzBrazil2026-02-07Commercial Press UNQUALIFIED32Onyama Limba
1021Chavez B GlickItaly2026-02-11Feiner Bros NEW30Elwin Sharvill
1022Aruna M MorascaArgentina2026-02-06Feltz Printing Service PROPOSAL92Ivan Magalhaes
1023Maria H CaudyFrance2026-02-23Chanay, Jeffrey A Esq NEW72Anna Fali
1024Jones U NickaItaly2026-02-18King, Christopher A Esq RENEWAL79Ioni Bowcher
1025Faith W MarrierRussia2026-02-15Morlong Associates RENEWAL68Amy Elsner
1026Julie D PerinIndia2026-02-11Morlong Associates PROPOSAL92Xuxue Feng
1027Isabel Y RulapaughSpain2026-02-19Rangoni Of Florence NEGOTIATION35Onyama Limba
1028Jennifer B OldroydJapan2026-02-15Chapman, Ross E Esq NEGOTIATION78Ivan Magalhaes
1029Maisha U BologniaBrazil2026-02-16Chemel, James L Cpa NEW41Xuxue Feng
1030Maria F CaldareraSpain2026-02-02Morlong Associates PROPOSAL11Ioni Bowcher
1031Stacey I NestleFrance2026-02-07Buckley Miller Wright NEW50Xuxue Feng
1032Deepesh U SlusarskiItaly2026-02-15Commercial Press RENEWAL48Amy Elsner
1033Nicolas X NickaJapan2026-01-29Dorl, James J Esq QUALIFIED12Ioni Bowcher
1034Sinclair O SlusarskiRussia2026-02-08Rangoni Of Florence RENEWAL55Onyama Limba
1035Deepesh Y MaletRussia2026-01-28Chemel, James L Cpa UNQUALIFIED93Elwin Sharvill
1036Julie E AmigonBrazil2026-02-20Chanay, Jeffrey A Esq NEGOTIATION59Anna Fali
1037Aditya Z SaylorsFrance2026-02-07Feltz Printing Service NEW66Asiya Javayant
1038Adams A CaudyAustralia2026-02-11Feiner Bros QUALIFIED21Bernardo Dominic
1039James F NickaBrazil2026-01-27Dorl, James J Esq UNQUALIFIED52Xuxue Feng
1040Arvin V CaudyJapan2026-02-06Chapman, Ross E Esq NEGOTIATION75Ioni Bowcher
1041Morrow Z MacleadJapan2026-02-11King, Christopher A Esq RENEWAL64Onyama Limba
1042Costa B PerinUnited Kingdom2026-02-17Chemel, James L Cpa UNQUALIFIED99Ivan Magalhaes
1043Claire B BowleyBrazil2026-02-13Rangoni Of Florence NEW95Ivan Magalhaes
1044Kadeem O MorascaJapan2026-02-23Morlong Associates NEGOTIATION81Ioni Bowcher
1045Tony R MorascaArgentina2026-02-01Chanay, Jeffrey A Esq PROPOSAL1Ivan Magalhaes
1046Aika X IturbideFrance2026-01-26Benton, John B Jr UNQUALIFIED95Anna Fali
1047Ashley K WhobreyArgentina2026-02-08Truhlar And Truhlar Attys PROPOSAL13Amy Elsner
1048Murillo O WieserUnited Kingdom2026-02-14Rousseaux, Michael Esq NEGOTIATION24Anna Fali
1049Aika E StockhamGermany2026-02-20Morlong Associates UNQUALIFIED56Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Aruna E GarufiIndiaAnna Fali NEW
Ivar Y GauchoAustraliaIvan Magalhaes NEW
Kaitlin T WieserCanadaIoni Bowcher RENEWAL
Cody G WieserSpainElwin Sharvill PROPOSAL
Juan A PaprockiItalyAsiya Javayant PROPOSAL
Deepesh R MorascaArgentinaBernardo Dominic QUALIFIED
Wickens Q NestleAustraliaIvan Magalhaes NEGOTIATION
Deepesh W ShinkoArgentinaAsiya Javayant NEW
Adams G TollnerCanadaIvan Magalhaes RENEWAL
Alejandro E SchemmerAustraliaAmy Elsner QUALIFIED
Tony Q OstroskyUnited KingdomStephen Shaw NEW
Aditya K PaprockiCanadaAnna Fali QUALIFIED
Nicolas Z StensethIndiaElwin Sharvill PROPOSAL
David J NickaBrazilAsiya Javayant NEW
Smith X CampainGermanyAnna Fali UNQUALIFIED
Aruna L ButtIndiaElwin Sharvill RENEWAL
Munro W RulapaughGermanyXuxue Feng NEW
Mayumi E AlbaresFranceAsiya Javayant NEGOTIATION
Adams B AmigonItalyIoni Bowcher NEW
Smith D PaprockiCanadaOnyama Limba RENEWAL
Alejandro L GlickUnited KingdomBernardo Dominic NEGOTIATION
Deepesh A RulapaughGermanyStephen Shaw NEW
Jennifer B RutaRussiaElwin Sharvill NEW
Alejandro Z PerinUnited KingdomIoni Bowcher NEGOTIATION
Izzy C NickaAustraliaIoni Bowcher UNQUALIFIED
Juan I KolmetzSpainBernardo Dominic RENEWAL
Greenwood V WieserSpainBernardo Dominic UNQUALIFIED
Ricardo J RoysterFranceXuxue Feng QUALIFIED
Darci D InouyeGermanyBernardo Dominic QUALIFIED
Aika M WaycottGermanyStephen Shaw NEGOTIATION
Salvatore I DoeArgentinaIvan Magalhaes PROPOSAL
Kadeem T OstroskyAustraliaStephen Shaw QUALIFIED
Aika U PerinJapanStephen Shaw UNQUALIFIED
Chavez X SaylorsCanadaIvan Magalhaes RENEWAL
Jefferson N AlbaresAustraliaIvan Magalhaes UNQUALIFIED
Stacey Y NickaUnited KingdomOnyama Limba QUALIFIED
Clifford G MaletGermanyElwin Sharvill NEGOTIATION
Murillo Z RimJapanIvan Magalhaes PROPOSAL
Wickens T WaycottAustraliaIoni Bowcher NEW
Arvin Z FigeroaIndiaAsiya Javayant QUALIFIED
Adams Z FlosiJapanIoni Bowcher NEW
Costa P SlusarskiIndiaOnyama Limba PROPOSAL
Sinclair D ChuiBrazilOnyama Limba NEGOTIATION
Misaki H PoquetteCanadaIvan Magalhaes NEGOTIATION
Ashley B NestleItalyXuxue Feng NEW
Misaki Q MarrierArgentinaElwin Sharvill QUALIFIED
Mayumi Q GillianJapanIoni Bowcher UNQUALIFIED
Aika N MorascaGermanyIoni Bowcher NEGOTIATION
Claire L AmigonGermanyIvan Magalhaes QUALIFIED
Chavez Y WieserFranceAnna Fali PROPOSAL
Frozen Columns
Name
Silvio T Glick
Leja J Briddick
Johnson B Vocelka
Wickens Z Poquette
Mayumi H Kolmetz
Darci I Stenseth
Maria B Gaucho
Aditya W Morasca
Jeanfrancois T Slusarski
Ricardo K Morasca
Leja E Chui
Jeanfrancois M Tollner
Clifford H Venere
Mujtaba X Gaucho
Leon J Vocelka
Sinclair B Morasca
Francesco S Stenseth
Jeanfrancois A Poquette
Sinclair J Iturbide
Misaki G Chui
Antonio V Sergi
Ashley J Amigon
Emily E Paprocki
Aditya A Garufi
Kadeem C Stenseth
Smith Q Ostrosky
Mayumi E Glick
Jeanfrancois X Gillian
Adams W Doe
Faith U Poquette
Mujtaba J Poquette
Aditya C Darakjy
Aika O Garufi
Smith M Glick
Francesco G Nicka
Leja B Chui
Ricardo S Inouye
Ivar Q Tollner
Emily K Shinko
Jefferson G Poquette
Ivar Q Waycott
Julie S Nestle
Alejandro J Shinko
Silvio S Saylors
Clifford K Ferencz
Greenwood H Venere
Mayumi W Gillian
Chavez W Perin
Jefferson M Kolmetz
Murillo Q Bowley
IdCountryDate
1000Canada2026-02-15
1001Spain2026-02-14
1002Russia2026-02-15
1003United Kingdom2026-02-18
1004Brazil2026-01-28
1005Italy2026-01-30
1006Germany2026-02-19
1007Germany2026-02-02
1008France2026-02-19
1009Italy2026-01-31
1010Japan2026-02-21
1011Argentina2026-02-02
1012Italy2026-02-16
1013Russia2026-02-05
1014Spain2026-02-17
1015United Kingdom2026-02-20
1016Canada2026-02-14
1017Canada2026-01-28
1018Italy2026-02-15
1019Italy2026-01-30
1020Italy2026-01-26
1021Italy2026-02-24
1022Italy2026-01-29
1023Brazil2026-02-22
1024Canada2026-01-29
1025Argentina2026-02-19
1026Australia2026-02-09
1027Italy2026-02-22
1028Spain2026-02-12
1029Canada2026-02-09
1030Brazil2026-01-28
1031Russia2026-02-22
1032Germany2026-02-12
1033Germany2026-01-27
1034India2026-02-09
1035Canada2026-02-14
1036Canada2026-02-19
1037Spain2026-02-10
1038Japan2026-02-07
1039France2026-02-21
1040Germany2026-02-24
1041Spain2026-02-06
1042Canada2026-01-31
1043Italy2026-01-27
1044Argentina2026-01-30
1045Argentina2026-02-08
1046Canada2026-01-27
1047Australia2026-02-23
1048Argentina2026-02-15
1049Russia2026-02-24

On-Demand Data

NameIdCountryDate
Tony U Glick1000United Kingdom2026-02-16
Deepesh X Whobrey1001India2026-02-06
Juan Q Wieser1002Canada2026-02-23
Antonio N Bolognia1003Germany2026-02-09
Arvin I Ostrosky1004Argentina2026-02-22
Mayumi D Inouye1005Germany2026-02-12
Ashley S Waycott1006Canada2026-02-13
Nicolas E Waycott1007Germany2026-02-23
Emily J Wieser1008Argentina2026-02-15
Juan T Butt1009France2026-02-14
Faith G Nicka1010Japan2026-01-29
Mujtaba X Venere1011United Kingdom2026-02-06
Arvin H Wieser1012Italy2026-01-26
Mayumi D Marrier1013Russia2026-02-02
Silvio Q Perin1014India2026-02-20
Leja U Dilliard1015Argentina2026-02-24
Adams L Poquette1016United Kingdom2026-01-27
Octavia N Stockham1017Canada2026-01-30
Mujtaba L Whobrey1018Canada2026-02-07
Aika D Royster1019Argentina2026-02-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson N PerinFranceOnyama Limba PROPOSAL
Aruna M PaprockiArgentinaElwin Sharvill NEGOTIATION
Claire R ShinkoItalyIoni Bowcher RENEWAL
Faith P ButtFranceOnyama Limba NEW
Julie W GillianCanadaAsiya Javayant NEW
Smith Q SchemmerItalyStephen Shaw UNQUALIFIED
Kadeem H KuskoIndiaAmy Elsner NEW
Johnson V StensethGermanyAsiya Javayant PROPOSAL
Leon L OldroydRussiaIvan Magalhaes QUALIFIED
James I FollerRussiaBernardo Dominic NEW
Jefferson R MarrierCanadaOnyama Limba RENEWAL
Cody M FollerCanadaXuxue Feng NEW
Wickens C InouyeSpainElwin Sharvill NEW
Ivar X FollerItalyOnyama Limba QUALIFIED
Leon W WaycottCanadaStephen Shaw NEGOTIATION
Kaitlin O PoquetteFranceElwin Sharvill RENEWAL
Mujtaba F VocelkaCanadaAsiya Javayant QUALIFIED
David X PerinAustraliaIoni Bowcher PROPOSAL
Greenwood F RoysterSpainIoni Bowcher QUALIFIED
Faith N NickaRussiaAsiya Javayant NEW
Costa I ButtJapanIvan Magalhaes RENEWAL
Leon I PaprockiItalyOnyama Limba NEW
Ricardo H SaylorsUnited KingdomXuxue Feng UNQUALIFIED
Deepesh V IturbideGermanyElwin Sharvill NEW
Mujtaba V FlosiCanadaElwin Sharvill UNQUALIFIED
Alejandro E NickaBrazilAsiya Javayant NEGOTIATION
Rodrigues H BowleyBrazilAsiya Javayant UNQUALIFIED
Stacey J MaletArgentinaAmy Elsner NEGOTIATION
Izzy H StensethAustraliaOnyama Limba PROPOSAL
Izzy C MarrierSpainAmy Elsner QUALIFIED
Kaitlin K NickaAustraliaOnyama Limba UNQUALIFIED
Antonio N NickaAustraliaBernardo Dominic UNQUALIFIED
Wickens H BowleyBrazilIvan Magalhaes PROPOSAL
Kaitlin H BriddickJapanAsiya Javayant PROPOSAL
Emily D ChuiRussiaXuxue Feng NEW
Francesco V VocelkaFranceElwin Sharvill QUALIFIED
Silvio X MaletSpainStephen Shaw PROPOSAL
Jefferson W OstroskyAustraliaElwin Sharvill QUALIFIED
Faith A WieserArgentinaIoni Bowcher QUALIFIED
Ivar L NickaBrazilBernardo Dominic NEGOTIATION

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