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
Salvatore P FigeroaFranceAnna Fali QUALIFIED
Ricardo X KuskoAustraliaAnna Fali PROPOSAL
Darci N MaletGermanyXuxue Feng RENEWAL
Alejandro J IturbideAustraliaAsiya Javayant RENEWAL
Aditya V GauchoJapanAnna Fali NEW
Murillo D PaprockiRussiaAsiya Javayant NEGOTIATION
Mayumi V PerinSpainAmy Elsner NEGOTIATION
Claire I MarrierArgentinaIvan Magalhaes RENEWAL
Ivar W SaylorsBrazilAsiya Javayant PROPOSAL
Aruna Q KuskoGermanyOnyama Limba NEW
Alejandro M BologniaSpainIoni Bowcher PROPOSAL
Isabel P RutaJapanIoni Bowcher NEGOTIATION
Ricardo N StensethSpainOnyama Limba NEW
Leon P WhobreyUnited KingdomAsiya Javayant RENEWAL
Francesco W DilliardIndiaAsiya Javayant QUALIFIED
Chavez D TollnerUnited KingdomStephen Shaw QUALIFIED
Chavez K CampainBrazilAsiya Javayant NEGOTIATION
Arvin R CampainIndiaStephen Shaw QUALIFIED
Darci L VocelkaIndiaStephen Shaw QUALIFIED
Silvio X ChuiRussiaElwin Sharvill RENEWAL
Adams G CampainSpainElwin Sharvill UNQUALIFIED
Wickens Q GlickCanadaAmy Elsner NEGOTIATION
Arvin H StockhamAustraliaOnyama Limba PROPOSAL
Adams K StockhamItalyIoni Bowcher NEW
Maisha Z SchemmerFranceOnyama Limba PROPOSAL
Misaki P ShinkoRussiaAsiya Javayant RENEWAL
Octavia G MorascaArgentinaAnna Fali PROPOSAL
Aika V WieserSpainAsiya Javayant NEW
Adams A StensethJapanIvan Magalhaes NEW
Francesco M PerinRussiaIvan Magalhaes RENEWAL
Johnson N KolmetzSpainOnyama Limba PROPOSAL
Costa A BriddickBrazilIvan Magalhaes RENEWAL
Izzy P VenereBrazilOnyama Limba PROPOSAL
Nicolas X BriddickAustraliaIoni Bowcher QUALIFIED
Emily O FollerSpainOnyama Limba UNQUALIFIED
Wickens C GlickCanadaOnyama Limba PROPOSAL
Stacey C AlbaresJapanAnna Fali NEW
Jennifer E ChuiAustraliaOnyama Limba QUALIFIED
Ivar H BologniaItalyAnna Fali NEW
Jennifer M FollerUnited KingdomStephen Shaw NEGOTIATION
Jones O WaycottArgentinaBernardo Dominic NEGOTIATION
Johnson U MaletJapanAmy Elsner RENEWAL
Clifford H GlickSpainXuxue Feng RENEWAL
Johnson T ShinkoBrazilIoni Bowcher QUALIFIED
Tony L MaletIndiaOnyama Limba QUALIFIED
Chavez R FerenczIndiaStephen Shaw QUALIFIED
Ivar X AmigonUnited KingdomAsiya Javayant RENEWAL
Stacey H RulapaughBrazilAmy Elsner NEGOTIATION
Costa V VenereJapanStephen Shaw UNQUALIFIED
Jones U MaletIndiaStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Jones Q NestleItalyOnyama Limba NEGOTIATION
Alejandro C FerenczRussiaAnna Fali RENEWAL
Aruna K GarufiGermanyIoni Bowcher QUALIFIED
Smith J IturbideItalyIoni Bowcher UNQUALIFIED
Jennifer F GillianCanadaStephen Shaw UNQUALIFIED
Adams Y CaldareraCanadaElwin Sharvill RENEWAL
Aika R MacleadJapanBernardo Dominic PROPOSAL
Deepesh I PoquetteItalyAsiya Javayant UNQUALIFIED
Cody C StockhamIndiaOnyama Limba PROPOSAL
Jefferson V FlosiIndiaXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James Z PaprockiItaly2026-05-16Chanay, Jeffrey A Esq RENEWAL57Xuxue Feng
1001David U MorascaBrazil2026-05-18Rangoni Of Florence NEGOTIATION13Ioni Bowcher
1002Greenwood F BologniaGermany2026-06-08Chapman, Ross E Esq NEGOTIATION70Ioni Bowcher
1003Tony Q IturbideArgentina2026-06-04Rousseaux, Michael Esq NEW54Amy Elsner
1004Juan K SlusarskiItaly2026-05-22Chapman, Ross E Esq QUALIFIED27Onyama Limba
1005Salvatore W FlosiSpain2026-06-02Commercial Press UNQUALIFIED49Elwin Sharvill
1006Mayumi C VocelkaArgentina2026-05-14Morlong Associates PROPOSAL65Ivan Magalhaes
1007Izzy E PoquetteBrazil2026-05-18King, Christopher A Esq RENEWAL19Ivan Magalhaes
1008Julie C CaldareraRussia2026-05-22Buckley Miller Wright UNQUALIFIED73Amy Elsner
1009Octavia S VocelkaGermany2026-05-28Printing Dimensions NEW4Ivan Magalhaes
1010Nicolas T PoquetteSpain2026-05-20Printing Dimensions QUALIFIED97Bernardo Dominic
1011Ricardo A ChuiItaly2026-05-30Truhlar And Truhlar Attys RENEWAL58Stephen Shaw
1012Silvio W PaprockiItaly2026-05-17King, Christopher A Esq RENEWAL68Anna Fali
1013Izzy R WaycottFrance2026-06-06Commercial Press UNQUALIFIED48Ivan Magalhaes
1014Tony P AmigonCanada2026-05-31Rousseaux, Michael Esq UNQUALIFIED70Elwin Sharvill
1015Nicolas A KolmetzAustralia2026-05-30Rousseaux, Michael Esq RENEWAL96Anna Fali
1016Claire R BriddickFrance2026-05-22Feiner Bros NEW26Ivan Magalhaes
1017Adams N CampainCanada2026-05-28Rangoni Of Florence UNQUALIFIED98Xuxue Feng
1018Kadeem C WieserIndia2026-05-19Truhlar And Truhlar Attys NEGOTIATION30Amy Elsner
1019Ivar A RoysterItaly2026-05-15Dorl, James J Esq QUALIFIED42Anna Fali
1020Faith E KuskoFrance2026-05-28Feiner Bros UNQUALIFIED69Bernardo Dominic
1021Silvio M DilliardFrance2026-05-20Morlong Associates NEW60Onyama Limba
1022Francesco U AlbaresUnited Kingdom2026-06-02Rousseaux, Michael Esq UNQUALIFIED58Anna Fali
1023Aditya H MacleadFrance2026-06-10Benton, John B Jr QUALIFIED10Ivan Magalhaes
1024Deepesh P MarrierRussia2026-05-15Commercial Press NEGOTIATION7Elwin Sharvill
1025Kadeem B SchemmerSpain2026-05-27Truhlar And Truhlar Attys QUALIFIED68Asiya Javayant
1026Juan G KuskoAustralia2026-06-09King, Christopher A Esq PROPOSAL12Amy Elsner
1027Johnson Z FerenczBrazil2026-06-07Rangoni Of Florence NEGOTIATION36Ivan Magalhaes
1028Faith N VenereItaly2026-05-17Dorl, James J Esq RENEWAL22Xuxue Feng
1029Claire B SlusarskiRussia2026-05-18Benton, John B Jr QUALIFIED78Xuxue Feng
1030Cody W SaylorsIndia2026-05-28Morlong Associates NEGOTIATION40Ioni Bowcher
1031Deepesh K PoquetteIndia2026-05-23Morlong Associates QUALIFIED20Stephen Shaw
1032Sinclair C MarrierJapan2026-05-31Printing Dimensions QUALIFIED42Onyama Limba
1033Adams Q FollerGermany2026-05-17Printing Dimensions UNQUALIFIED7Anna Fali
1034Emily B GarufiSpain2026-06-08Feltz Printing Service RENEWAL91Elwin Sharvill
1035Greenwood A MaletCanada2026-05-30Chemel, James L Cpa NEW19Ivan Magalhaes
1036Aika S MaletGermany2026-05-17Benton, John B Jr NEW79Stephen Shaw
1037Francesco I InouyeCanada2026-06-04Dorl, James J Esq UNQUALIFIED69Xuxue Feng
1038Arvin M GarufiIndia2026-05-24Chanay, Jeffrey A Esq NEGOTIATION96Ivan Magalhaes
1039Alejandro P GlickFrance2026-06-06Commercial Press NEW49Stephen Shaw
1040Munro I RimRussia2026-05-26Commercial Press PROPOSAL37Bernardo Dominic
1041Cody R SaylorsSpain2026-05-15Feltz Printing Service NEGOTIATION59Ioni Bowcher
1042Antonio H FerenczIndia2026-05-14Feltz Printing Service QUALIFIED91Onyama Limba
1043Ivar Z VocelkaGermany2026-05-21King, Christopher A Esq PROPOSAL39Stephen Shaw
1044Leja Z SaylorsItaly2026-05-14Chanay, Jeffrey A Esq UNQUALIFIED68Amy Elsner
1045Stacey T GarufiFrance2026-05-14Dorl, James J Esq QUALIFIED94Asiya Javayant
1046Chavez C WieserArgentina2026-05-27Feltz Printing Service PROPOSAL1Xuxue Feng
1047Murillo A OstroskyBrazil2026-05-25Rousseaux, Michael Esq QUALIFIED83Ivan Magalhaes
1048Julie I DarakjyCanada2026-05-26Benton, John B Jr NEW87Elwin Sharvill
1049Sinclair K OldroydBrazil2026-06-03Morlong Associates QUALIFIED32Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Johnson P GlickRussiaAnna Fali UNQUALIFIED
Leon U MacleadJapanIoni Bowcher NEGOTIATION
Wickens J FlosiUnited KingdomBernardo Dominic NEW
Izzy T WhobreySpainStephen Shaw NEW
Alejandro Z AlbaresGermanyXuxue Feng QUALIFIED
Greenwood Y SlusarskiAustraliaAnna Fali RENEWAL
Murillo D CaudyArgentinaXuxue Feng QUALIFIED
Cody K OldroydSpainXuxue Feng UNQUALIFIED
Jeanfrancois Z VocelkaCanadaAsiya Javayant NEW
Jefferson Y DilliardAustraliaElwin Sharvill NEW
Mayumi S TollnerFranceBernardo Dominic PROPOSAL
Maria Y KuskoFranceAnna Fali UNQUALIFIED
Arvin Y OldroydItalyAmy Elsner NEGOTIATION
Alejandro O RutaRussiaAnna Fali NEW
Antonio L WhobreyRussiaAsiya Javayant NEGOTIATION
Aruna F CaldareraRussiaElwin Sharvill RENEWAL
Misaki B GarufiUnited KingdomXuxue Feng NEGOTIATION
Cody R SchemmerFranceOnyama Limba NEGOTIATION
Jennifer I GlickFranceStephen Shaw NEGOTIATION
Greenwood F CaldareraSpainAnna Fali PROPOSAL
Arvin E WaycottAustraliaIoni Bowcher UNQUALIFIED
Costa X CaldareraItalyElwin Sharvill NEGOTIATION
Jefferson V CaudyBrazilOnyama Limba NEGOTIATION
Mujtaba T ButtArgentinaXuxue Feng UNQUALIFIED
Aditya C BowleyUnited KingdomAsiya Javayant NEW
Leja T FollerFranceOnyama Limba NEGOTIATION
Misaki T GarufiFranceAnna Fali QUALIFIED
Claire X KuskoIndiaElwin Sharvill PROPOSAL
Jones N ShinkoCanadaAmy Elsner PROPOSAL
Misaki D StockhamGermanyBernardo Dominic QUALIFIED
Francesco O DilliardSpainStephen Shaw PROPOSAL
Darci E GlickRussiaIvan Magalhaes NEGOTIATION
Greenwood E IturbideUnited KingdomAmy Elsner PROPOSAL
Rodrigues U VenereArgentinaAsiya Javayant NEW
Kaitlin W GlickSpainOnyama Limba UNQUALIFIED
Mujtaba D KuskoSpainAmy Elsner PROPOSAL
Jeanfrancois I MacleadAustraliaIvan Magalhaes RENEWAL
Deepesh W PaprockiJapanAmy Elsner UNQUALIFIED
Julie B SergiFranceElwin Sharvill NEGOTIATION
Jeanfrancois J RoysterIndiaAsiya Javayant NEW
Aruna O IturbideCanadaIvan Magalhaes UNQUALIFIED
Jones X RulapaughSpainStephen Shaw QUALIFIED
Adams J RutaCanadaStephen Shaw UNQUALIFIED
Antonio Q TollnerIndiaIoni Bowcher NEGOTIATION
Smith A ShinkoGermanyXuxue Feng UNQUALIFIED
Nicolas Q DarakjyJapanAmy Elsner NEGOTIATION
Isabel G RimItalyIvan Magalhaes NEW
Murillo N SlusarskiItalyIoni Bowcher NEW
Darci W FlosiArgentinaOnyama Limba UNQUALIFIED
Sinclair T StensethJapanIoni Bowcher RENEWAL
Frozen Columns
Name
Claire I Flosi
Maisha C Foller
Mujtaba X Caudy
David E Chui
Maria E Maclead
Maria I Amigon
Leja B Gillian
Kadeem W Saylors
Clifford Z Marrier
Jefferson E Whobrey
Aditya K Royster
Jeanfrancois Q Albares
Ashley O Nestle
Jones H Caldarera
Costa X Caldarera
Kadeem F Figeroa
Costa B Maclead
Sinclair A Morasca
Darci S Schemmer
Deepesh E Ferencz
Juan X Chui
Mujtaba A Bolognia
Faith E Flosi
Kadeem B Butt
Salvatore E Poquette
Silvio V Whobrey
Rodrigues P Oldroyd
Jones B Stockham
Costa M Kolmetz
Johnson P Poquette
Aditya U Rulapaugh
Jeanfrancois V Waycott
Murillo K Morasca
Arvin I Paprocki
Alejandro H Caudy
James Q Campain
James A Butt
Deepesh R Glick
Mujtaba B Whobrey
Kadeem A Slusarski
Wickens V Morasca
Stacey N Kolmetz
Francesco X Gaucho
Clifford J Nicka
Tony M Gaucho
Maria I Ostrosky
Jeanfrancois T Perin
Tony C Royster
Leon Q Maclead
Tony C Figeroa
IdCountryDate
1000Spain2026-05-28
1001Brazil2026-05-23
1002United Kingdom2026-05-24
1003Italy2026-05-16
1004Italy2026-05-25
1005Russia2026-05-14
1006Russia2026-05-27
1007Australia2026-05-31
1008Canada2026-05-21
1009Australia2026-05-31
1010Brazil2026-05-14
1011India2026-06-09
1012Spain2026-05-19
1013Argentina2026-05-26
1014Argentina2026-05-31
1015Argentina2026-05-15
1016Italy2026-06-10
1017Brazil2026-05-31
1018United Kingdom2026-05-24
1019Argentina2026-06-02
1020Germany2026-05-14
1021Canada2026-05-29
1022Brazil2026-06-01
1023India2026-06-07
1024United Kingdom2026-05-30
1025Italy2026-05-20
1026France2026-06-10
1027France2026-06-01
1028Argentina2026-05-20
1029Russia2026-05-16
1030Italy2026-05-21
1031Germany2026-06-02
1032Italy2026-05-31
1033Canada2026-06-03
1034India2026-06-01
1035United Kingdom2026-05-23
1036Japan2026-05-25
1037Australia2026-06-05
1038Brazil2026-06-04
1039Argentina2026-05-24
1040Canada2026-05-20
1041Argentina2026-06-06
1042France2026-05-14
1043India2026-05-31
1044India2026-05-27
1045Australia2026-06-05
1046United Kingdom2026-06-05
1047Russia2026-05-19
1048Italy2026-06-04
1049Japan2026-06-08

On-Demand Data

NameIdCountryDate
Francesco M Darakjy1000Japan2026-06-01
Izzy U Saylors1001Argentina2026-05-22
David O Gaucho1002Spain2026-05-27
Clifford X Foller1003Brazil2026-06-02
Munro K Darakjy1004Italy2026-06-04
Darci S Whobrey1005India2026-05-25
Julie B Briddick1006Australia2026-05-14
Jennifer K Albares1007Japan2026-05-30
Nicolas P Ruta1008India2026-06-08
Antonio O Saylors1009India2026-05-27
Ricardo F Kusko1010Russia2026-05-30
Leon R Foller1011Canada2026-05-20
Leon T Paprocki1012France2026-05-14
Octavia X Glick1013Italy2026-06-04
David K Poquette1014Japan2026-05-24
Maria L Glick1015India2026-05-27
Izzy F Royster1016Argentina2026-05-21
Darci N Vocelka1017Spain2026-05-12
Aditya A Gillian1018Italy2026-06-09
Jeanfrancois T Flosi1019Japan2026-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey Z MorascaCanadaElwin Sharvill QUALIFIED
Claire H MaletUnited KingdomBernardo Dominic UNQUALIFIED
Ashley T NestleItalyOnyama Limba PROPOSAL
Clifford J InouyeItalyAnna Fali NEGOTIATION
Ricardo Z SchemmerArgentinaElwin Sharvill RENEWAL
Maisha W SaylorsArgentinaAsiya Javayant QUALIFIED
Ashley Q SchemmerIndiaAnna Fali NEW
Ivar Z BowleyCanadaAnna Fali PROPOSAL
Aruna H DilliardGermanyIoni Bowcher NEW
Aruna O MaletFranceIoni Bowcher RENEWAL
Aika S GauchoIndiaIoni Bowcher NEGOTIATION
Alejandro S StensethIndiaStephen Shaw NEW
Adams W KolmetzUnited KingdomElwin Sharvill UNQUALIFIED
Claire Z RulapaughFranceAnna Fali NEGOTIATION
Maria B GauchoIndiaAsiya Javayant RENEWAL
Murillo O FigeroaAustraliaXuxue Feng NEW
Chavez E IturbideAustraliaIoni Bowcher PROPOSAL
Jeanfrancois N FerenczFranceAmy Elsner PROPOSAL
Arvin T SlusarskiItalyIoni Bowcher RENEWAL
Ricardo L RutaSpainIoni Bowcher NEW
Sinclair T IturbideArgentinaAnna Fali NEGOTIATION
Alejandro P WaycottBrazilIvan Magalhaes RENEWAL
Clifford V RoysterFranceBernardo Dominic PROPOSAL
Julie A BriddickUnited KingdomStephen Shaw NEGOTIATION
Kaitlin X CampainCanadaStephen Shaw RENEWAL
Jennifer G PoquetteSpainXuxue Feng NEGOTIATION
Munro E SchemmerArgentinaAnna Fali NEGOTIATION
Ricardo J OldroydArgentinaElwin Sharvill RENEWAL
Rodrigues Q KolmetzArgentinaElwin Sharvill NEW
Nicolas C DilliardFranceXuxue Feng PROPOSAL
Isabel U GillianAustraliaBernardo Dominic QUALIFIED
Claire I RulapaughCanadaStephen Shaw NEW
Izzy I WaycottJapanIvan Magalhaes NEGOTIATION
Octavia X KolmetzAustraliaElwin Sharvill NEW
Claire P BologniaAustraliaAnna Fali RENEWAL
Johnson Z FlosiItalyIvan Magalhaes QUALIFIED
Darci K SaylorsAustraliaIoni Bowcher UNQUALIFIED
Mayumi H StensethSpainIoni Bowcher RENEWAL
Jennifer U SergiCanadaElwin Sharvill NEW
Mayumi T BriddickBrazilBernardo Dominic QUALIFIED

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