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
James F RulapaughUnited KingdomIoni Bowcher UNQUALIFIED
Munro T DoeArgentinaIvan Magalhaes QUALIFIED
Leon E PoquetteItalyAnna Fali NEW
Jefferson Q CaudyFranceAmy Elsner RENEWAL
Munro L DarakjyItalyOnyama Limba NEW
Silvio T DoeJapanAnna Fali QUALIFIED
Adams D WieserRussiaBernardo Dominic RENEWAL
Stacey U CaldareraAustraliaStephen Shaw NEGOTIATION
Salvatore A GarufiJapanOnyama Limba RENEWAL
Mayumi V CampainBrazilOnyama Limba RENEWAL
Francesco K NickaUnited KingdomIvan Magalhaes NEGOTIATION
Morrow P FerenczIndiaIvan Magalhaes NEW
Jennifer K NestleGermanyElwin Sharvill QUALIFIED
Mayumi O ButtBrazilXuxue Feng QUALIFIED
Isabel E GlickGermanyOnyama Limba QUALIFIED
Salvatore I NestleIndiaAnna Fali RENEWAL
Aika Z MacleadCanadaOnyama Limba NEGOTIATION
Misaki G FerenczJapanBernardo Dominic UNQUALIFIED
James S RimJapanIoni Bowcher RENEWAL
Kadeem Z FlosiUnited KingdomAmy Elsner QUALIFIED
Deepesh Z RoysterArgentinaAsiya Javayant QUALIFIED
James E AlbaresBrazilAsiya Javayant RENEWAL
Deepesh A RutaBrazilStephen Shaw NEGOTIATION
Kaitlin U IturbideItalyAsiya Javayant PROPOSAL
Aruna C ChuiCanadaAsiya Javayant QUALIFIED
Maisha O OstroskyItalyStephen Shaw UNQUALIFIED
Rodrigues G RoysterGermanyIoni Bowcher RENEWAL
Stacey A DilliardFranceOnyama Limba QUALIFIED
Smith M SlusarskiSpainAnna Fali NEGOTIATION
Leon O TollnerRussiaStephen Shaw PROPOSAL
Cody Q ButtJapanOnyama Limba QUALIFIED
Aika M PerinGermanyXuxue Feng NEGOTIATION
Silvio C CampainArgentinaAsiya Javayant NEW
Costa I PerinRussiaElwin Sharvill UNQUALIFIED
Salvatore G NestleSpainIoni Bowcher QUALIFIED
Clifford R RulapaughSpainAnna Fali QUALIFIED
Aditya I StensethBrazilAnna Fali QUALIFIED
Johnson Q PoquetteArgentinaIoni Bowcher UNQUALIFIED
Nicolas C IturbideBrazilIoni Bowcher NEGOTIATION
Mayumi K NestleAustraliaIoni Bowcher RENEWAL
Kaitlin P MaletUnited KingdomIvan Magalhaes NEW
Greenwood M GlickRussiaOnyama Limba RENEWAL
Isabel L FigeroaItalyOnyama Limba NEW
Rodrigues W OstroskyJapanStephen Shaw NEW
James P VocelkaJapanOnyama Limba RENEWAL
Ricardo V AlbaresIndiaElwin Sharvill NEGOTIATION
Mujtaba K WhobreyJapanXuxue Feng QUALIFIED
Misaki S BriddickSpainAmy Elsner UNQUALIFIED
Tony X SlusarskiGermanyStephen Shaw NEW
Aika F MaletArgentinaElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Juan O WaycottItalyIvan Magalhaes NEW
Munro B RimItalyAsiya Javayant QUALIFIED
Deepesh Y MaletGermanyStephen Shaw NEW
Jones M FollerItalyStephen Shaw QUALIFIED
Sinclair B InouyeItalyAsiya Javayant NEGOTIATION
Greenwood H BowleyUnited KingdomXuxue Feng RENEWAL
Juan S SaylorsSpainIvan Magalhaes NEW
Octavia O DarakjyCanadaOnyama Limba NEGOTIATION
Maria G SaylorsAustraliaOnyama Limba NEGOTIATION
Munro O WhobreyArgentinaAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo P MacleadUnited Kingdom2026-04-10Chapman, Ross E Esq UNQUALIFIED31Elwin Sharvill
1001Francesco X TollnerSpain2026-04-24Benton, John B Jr NEGOTIATION94Ioni Bowcher
1002Mayumi J PoquetteCanada2026-05-03Dorl, James J Esq QUALIFIED97Ioni Bowcher
1003Isabel U RutaFrance2026-05-03Rousseaux, Michael Esq PROPOSAL6Stephen Shaw
1004Octavia R SergiUnited Kingdom2026-04-26Morlong Associates PROPOSAL49Elwin Sharvill
1005Octavia I MaletCanada2026-04-09Feiner Bros RENEWAL27Bernardo Dominic
1006Wickens R RutaAustralia2026-04-24Feiner Bros NEGOTIATION5Stephen Shaw
1007Clifford Z RimArgentina2026-04-22Rousseaux, Michael Esq NEW50Ioni Bowcher
1008Jefferson R OstroskyJapan2026-04-07Feiner Bros PROPOSAL89Stephen Shaw
1009Ivar T BologniaIndia2026-04-12Chanay, Jeffrey A Esq UNQUALIFIED41Ivan Magalhaes
1010Sinclair Y BowleySpain2026-05-05Morlong Associates PROPOSAL99Stephen Shaw
1011Tony D MaletArgentina2026-04-24Printing Dimensions UNQUALIFIED42Bernardo Dominic
1012Greenwood H GlickJapan2026-04-16Rangoni Of Florence UNQUALIFIED19Xuxue Feng
1013Deepesh Y ButtAustralia2026-04-16Chanay, Jeffrey A Esq QUALIFIED8Stephen Shaw
1014Cody M BowleyGermany2026-04-30Rousseaux, Michael Esq PROPOSAL10Bernardo Dominic
1015Salvatore C MaletCanada2026-04-13Rousseaux, Michael Esq RENEWAL70Bernardo Dominic
1016Costa J PoquetteSpain2026-04-23Feiner Bros RENEWAL81Onyama Limba
1017Emily V PoquetteFrance2026-04-27Chemel, James L Cpa NEGOTIATION35Amy Elsner
1018Johnson T FerenczItaly2026-04-29Morlong Associates QUALIFIED58Ioni Bowcher
1019Emily N BriddickUnited Kingdom2026-04-10Printing Dimensions UNQUALIFIED82Anna Fali
1020Clifford Z ChuiUnited Kingdom2026-05-03Feltz Printing Service PROPOSAL52Xuxue Feng
1021Mayumi O AlbaresItaly2026-04-30Dorl, James J Esq NEW86Amy Elsner
1022Maisha Y NestleUnited Kingdom2026-04-14Chemel, James L Cpa UNQUALIFIED26Ioni Bowcher
1023Kadeem D KolmetzRussia2026-04-22Buckley Miller Wright UNQUALIFIED94Amy Elsner
1024Emily X OstroskyCanada2026-04-06Printing Dimensions UNQUALIFIED0Anna Fali
1025Izzy G WieserArgentina2026-04-22Printing Dimensions NEW79Elwin Sharvill
1026Emily H StockhamGermany2026-04-26King, Christopher A Esq PROPOSAL82Asiya Javayant
1027Wickens T WieserAustralia2026-04-11Commercial Press NEW61Ioni Bowcher
1028Adams N DilliardFrance2026-04-15Rangoni Of Florence PROPOSAL94Xuxue Feng
1029Ashley A RoysterCanada2026-04-06Morlong Associates NEGOTIATION26Onyama Limba
1030Kadeem N PoquetteBrazil2026-05-02Chemel, James L Cpa NEGOTIATION0Xuxue Feng
1031Isabel K GarufiAustralia2026-04-27Feltz Printing Service NEW45Amy Elsner
1032Costa S KuskoGermany2026-04-19Chapman, Ross E Esq QUALIFIED68Bernardo Dominic
1033Faith Q CaldareraItaly2026-04-16Morlong Associates RENEWAL94Elwin Sharvill
1034Aditya P StockhamBrazil2026-04-14Buckley Miller Wright NEW14Amy Elsner
1035Kaitlin X SlusarskiCanada2026-04-14Dorl, James J Esq NEGOTIATION24Anna Fali
1036Costa G FigeroaJapan2026-04-10Truhlar And Truhlar Attys RENEWAL16Xuxue Feng
1037Adams M VocelkaUnited Kingdom2026-04-26Chapman, Ross E Esq QUALIFIED80Amy Elsner
1038Stacey D KuskoCanada2026-04-26Rangoni Of Florence RENEWAL28Elwin Sharvill
1039Julie P PaprockiAustralia2026-04-06Benton, John B Jr NEGOTIATION58Ivan Magalhaes
1040Stacey I DoeCanada2026-04-30Dorl, James J Esq RENEWAL51Stephen Shaw
1041Jennifer D MarrierCanada2026-04-28Buckley Miller Wright NEGOTIATION78Asiya Javayant
1042Julie M StensethBrazil2026-04-19Printing Dimensions NEGOTIATION95Onyama Limba
1043Arvin B RulapaughAustralia2026-04-26Benton, John B Jr PROPOSAL84Ivan Magalhaes
1044Jones X PoquetteFrance2026-04-25Commercial Press NEW39Anna Fali
1045Ivar O KolmetzSpain2026-04-19Rangoni Of Florence PROPOSAL1Ivan Magalhaes
1046Tony G NestleJapan2026-04-14Chapman, Ross E Esq QUALIFIED46Xuxue Feng
1047Munro R MorascaBrazil2026-04-14Morlong Associates RENEWAL38Ioni Bowcher
1048Octavia W AmigonItaly2026-04-24Chanay, Jeffrey A Esq UNQUALIFIED48Elwin Sharvill
1049Francesco X OstroskyCanada2026-04-15Buckley Miller Wright NEGOTIATION7Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Jones W KolmetzArgentinaElwin Sharvill UNQUALIFIED
Claire V NestleItalyAmy Elsner PROPOSAL
Murillo Q ChuiUnited KingdomAmy Elsner PROPOSAL
Cody K NestleFranceIvan Magalhaes NEW
Ivar Z ShinkoFranceBernardo Dominic NEW
Maisha N MarrierSpainElwin Sharvill PROPOSAL
Cody U GillianRussiaXuxue Feng NEGOTIATION
Ashley R CaudyArgentinaAmy Elsner UNQUALIFIED
Emily R OldroydJapanIvan Magalhaes NEGOTIATION
Murillo W KolmetzFranceElwin Sharvill NEGOTIATION
Alejandro J PerinSpainAsiya Javayant RENEWAL
Silvio F BriddickSpainIoni Bowcher NEGOTIATION
Leon P RoysterRussiaAnna Fali QUALIFIED
James L TollnerUnited KingdomAnna Fali RENEWAL
Kadeem R FigeroaItalyOnyama Limba QUALIFIED
Clifford E BriddickAustraliaAsiya Javayant NEW
Claire V AmigonGermanyBernardo Dominic QUALIFIED
Greenwood A WieserGermanyBernardo Dominic UNQUALIFIED
Rodrigues Y SlusarskiCanadaElwin Sharvill UNQUALIFIED
Deepesh W GauchoArgentinaAsiya Javayant PROPOSAL
Darci L MorascaAustraliaIoni Bowcher NEGOTIATION
Maisha A AlbaresSpainIoni Bowcher RENEWAL
David C PoquetteJapanAmy Elsner QUALIFIED
Chavez J WieserIndiaXuxue Feng UNQUALIFIED
Leja B StockhamFranceOnyama Limba NEW
Julie G MaletArgentinaBernardo Dominic PROPOSAL
Emily L BowleySpainBernardo Dominic PROPOSAL
Wickens C KolmetzAustraliaAsiya Javayant UNQUALIFIED
Darci V RoysterUnited KingdomStephen Shaw PROPOSAL
Aditya F RoysterRussiaAmy Elsner UNQUALIFIED
Kaitlin N WaycottRussiaAnna Fali PROPOSAL
Isabel X GillianJapanOnyama Limba RENEWAL
Izzy E GlickItalyAsiya Javayant QUALIFIED
Rodrigues N DoeGermanyIoni Bowcher RENEWAL
Juan I MorascaIndiaAnna Fali RENEWAL
Sinclair V RimUnited KingdomAsiya Javayant NEW
Smith V WhobreyJapanBernardo Dominic UNQUALIFIED
Francesco W SergiUnited KingdomStephen Shaw NEW
Kadeem K RimGermanyAmy Elsner PROPOSAL
Darci G PaprockiUnited KingdomBernardo Dominic RENEWAL
Arvin R AmigonAustraliaXuxue Feng UNQUALIFIED
Murillo E ShinkoGermanyIoni Bowcher NEW
Jefferson O WhobreyIndiaAmy Elsner RENEWAL
Juan Y OldroydBrazilElwin Sharvill PROPOSAL
Sinclair Y CaldareraItalyAmy Elsner RENEWAL
Salvatore Q BologniaUnited KingdomAmy Elsner RENEWAL
Francesco Q KuskoItalyOnyama Limba RENEWAL
David W WhobreyJapanBernardo Dominic UNQUALIFIED
Wickens Q RimRussiaAnna Fali QUALIFIED
Emily N OstroskyBrazilIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Faith B Wieser
Leja V Saylors
Emily J Vocelka
Mujtaba N Iturbide
Munro M Gaucho
Alejandro Q Ruta
Morrow V Briddick
Izzy C Stenseth
Ivar A Ostrosky
Mujtaba E Darakjy
Claire T Briddick
Tony S Bolognia
Greenwood V Paprocki
Nicolas I Marrier
Greenwood H Waycott
Sinclair P Tollner
Murillo K Gillian
Mayumi F Oldroyd
Alejandro J Butt
Isabel U Vocelka
Adams A Campain
Kaitlin H Wieser
Mujtaba P Marrier
Isabel Q Doe
Costa W Wieser
Rodrigues E Tollner
Aika K Poquette
Isabel Q Nicka
Jennifer J Paprocki
Julie Q Maclead
Stacey I Saylors
Mujtaba S Oldroyd
Clifford U Vocelka
Costa Z Oldroyd
Kadeem X Garufi
Maria R Amigon
Faith L Sergi
Munro B Venere
Nicolas Z Venere
Leja X Kusko
Octavia A Caldarera
Maria H Dilliard
Aditya Q Gaucho
Jennifer U Nestle
Clifford X Marrier
Maisha U Figeroa
James B Foller
Claire M Perin
Leon M Perin
Octavia A Ferencz
IdCountryDate
1000Russia2026-04-22
1001Germany2026-04-06
1002Spain2026-04-30
1003Spain2026-04-22
1004Canada2026-04-11
1005India2026-04-21
1006France2026-04-29
1007Spain2026-05-05
1008Germany2026-04-30
1009Germany2026-04-07
1010Canada2026-05-05
1011United Kingdom2026-05-02
1012Spain2026-04-12
1013Argentina2026-04-23
1014France2026-04-19
1015Canada2026-04-28
1016India2026-04-25
1017Australia2026-04-24
1018France2026-04-08
1019Spain2026-04-20
1020Canada2026-04-25
1021France2026-04-23
1022Germany2026-04-27
1023Japan2026-04-13
1024Argentina2026-04-15
1025Australia2026-04-06
1026Australia2026-04-27
1027Australia2026-04-24
1028Italy2026-04-09
1029Argentina2026-04-06
1030Canada2026-04-30
1031Canada2026-05-02
1032Canada2026-04-30
1033Italy2026-05-04
1034Italy2026-04-11
1035Germany2026-04-20
1036Russia2026-04-20
1037Japan2026-04-06
1038Russia2026-04-07
1039Germany2026-04-23
1040Russia2026-05-02
1041France2026-04-11
1042United Kingdom2026-04-25
1043Australia2026-04-07
1044Canada2026-04-09
1045Italy2026-04-27
1046Australia2026-04-15
1047Germany2026-04-30
1048Brazil2026-04-21
1049Argentina2026-04-27

On-Demand Data

NameIdCountryDate
Ashley X Stockham1000United Kingdom2026-04-08
Mayumi D Ruta1001Canada2026-05-04
James R Poquette1002Russia2026-04-18
Darci Y Darakjy1003United Kingdom2026-04-11
Sinclair P Dilliard1004Spain2026-04-09
Clifford G Foller1005Italy2026-05-03
Jennifer A Caldarera1006Italy2026-04-10
Chavez P Stenseth1007Japan2026-04-16
Darci Z Vocelka1008Italy2026-04-11
Ivar T Saylors1009Japan2026-05-01
Aditya D Vocelka1010Japan2026-04-16
Juan Z Morasca1011Germany2026-05-02
Isabel T Figeroa1012United Kingdom2026-04-22
Wickens R Schemmer1013Australia2026-05-04
Antonio X Sergi1014Germany2026-04-21
Greenwood W Shinko1015France2026-04-07
Johnson D Oldroyd1016Italy2026-04-24
Jefferson D Ruta1017United Kingdom2026-04-16
Mayumi T Caldarera1018Japan2026-04-27
Greenwood L Chui1019Japan2026-04-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar B MorascaUnited KingdomElwin Sharvill QUALIFIED
Wickens D SergiArgentinaAnna Fali PROPOSAL
Wickens R SaylorsUnited KingdomStephen Shaw RENEWAL
Silvio J ButtAustraliaOnyama Limba NEW
Darci J SchemmerGermanyXuxue Feng RENEWAL
Maria Y AmigonRussiaBernardo Dominic UNQUALIFIED
Greenwood R MorascaArgentinaElwin Sharvill RENEWAL
Julie Q SlusarskiRussiaIvan Magalhaes NEGOTIATION
Darci F PaprockiArgentinaAsiya Javayant NEGOTIATION
Isabel Y BologniaRussiaIoni Bowcher UNQUALIFIED
Wickens N GarufiBrazilOnyama Limba UNQUALIFIED
Sinclair J SaylorsCanadaAmy Elsner UNQUALIFIED
Johnson Z RimBrazilXuxue Feng RENEWAL
David B VenereJapanAmy Elsner NEGOTIATION
Costa M WieserItalyOnyama Limba QUALIFIED
Antonio I OstroskyFranceIvan Magalhaes RENEWAL
Aika K GlickRussiaAsiya Javayant QUALIFIED
Salvatore B KuskoAustraliaStephen Shaw UNQUALIFIED
Mayumi I BriddickRussiaAnna Fali NEGOTIATION
Leon M MaletItalyIvan Magalhaes UNQUALIFIED
Smith Z SergiRussiaAsiya Javayant PROPOSAL
Johnson G StensethArgentinaBernardo Dominic RENEWAL
Deepesh A StockhamAustraliaAnna Fali UNQUALIFIED
Stacey K ButtArgentinaElwin Sharvill NEGOTIATION
Claire N StensethGermanyElwin Sharvill NEW
Leon O SergiArgentinaXuxue Feng QUALIFIED
James P AlbaresItalyXuxue Feng RENEWAL
Cody X TollnerSpainAmy Elsner UNQUALIFIED
Antonio J KolmetzBrazilBernardo Dominic UNQUALIFIED
Emily M MaletGermanyOnyama Limba RENEWAL
Costa N SaylorsAustraliaStephen Shaw QUALIFIED
Octavia S FerenczUnited KingdomIvan Magalhaes UNQUALIFIED
Sinclair S VenereItalyElwin Sharvill QUALIFIED
Kadeem X FerenczRussiaStephen Shaw UNQUALIFIED
Emily F PaprockiGermanyAmy Elsner PROPOSAL
Ricardo I VocelkaAustraliaIvan Magalhaes RENEWAL
James G BriddickJapanIvan Magalhaes NEGOTIATION
Emily K OldroydAustraliaIvan Magalhaes NEW
Morrow D ShinkoBrazilXuxue Feng RENEWAL
Izzy J MorascaIndiaIvan Magalhaes UNQUALIFIED

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