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
Kaitlin L MaletArgentinaBernardo Dominic NEW
Izzy U VocelkaRussiaIvan Magalhaes RENEWAL
Deepesh I MorascaSpainOnyama Limba QUALIFIED
Smith T InouyeUnited KingdomIoni Bowcher NEGOTIATION
Ashley N RimIndiaXuxue Feng QUALIFIED
Octavia C KuskoArgentinaStephen Shaw QUALIFIED
Salvatore E CaudyItalyAnna Fali RENEWAL
Johnson R MaletArgentinaAmy Elsner RENEWAL
Deepesh B ChuiBrazilStephen Shaw NEW
Aditya B SchemmerFranceBernardo Dominic QUALIFIED
Jefferson S CampainRussiaIvan Magalhaes UNQUALIFIED
Stacey T PaprockiBrazilIoni Bowcher QUALIFIED
Clifford L GlickGermanyOnyama Limba PROPOSAL
Arvin Q SlusarskiCanadaAnna Fali NEW
Jeanfrancois J MorascaItalyXuxue Feng NEW
Maisha O BowleyRussiaBernardo Dominic NEW
Jennifer M SlusarskiUnited KingdomIoni Bowcher UNQUALIFIED
Aika J RoysterIndiaAsiya Javayant QUALIFIED
Greenwood O ChuiIndiaIoni Bowcher NEGOTIATION
Leja N RutaArgentinaAsiya Javayant NEGOTIATION
Wickens S SlusarskiCanadaAsiya Javayant PROPOSAL
Munro P GauchoCanadaAsiya Javayant UNQUALIFIED
Nicolas V GauchoAustraliaStephen Shaw QUALIFIED
Johnson R SlusarskiSpainOnyama Limba UNQUALIFIED
Isabel O CaldareraUnited KingdomOnyama Limba NEW
Izzy I StensethUnited KingdomAsiya Javayant NEGOTIATION
Arvin Y InouyeGermanyIoni Bowcher QUALIFIED
Jennifer T DilliardSpainAsiya Javayant RENEWAL
Jefferson E GillianSpainElwin Sharvill NEGOTIATION
Leja A NestleIndiaOnyama Limba RENEWAL
Adams N KolmetzAustraliaOnyama Limba NEW
Ivar D MaletRussiaOnyama Limba QUALIFIED
Munro U VenereSpainBernardo Dominic NEW
Jeanfrancois U NickaFranceAsiya Javayant UNQUALIFIED
Julie C SlusarskiIndiaIoni Bowcher RENEWAL
Silvio S StensethAustraliaIvan Magalhaes NEGOTIATION
Chavez M SlusarskiArgentinaXuxue Feng NEW
Costa X PaprockiAustraliaAmy Elsner RENEWAL
Greenwood Q RoysterCanadaElwin Sharvill QUALIFIED
Claire X AlbaresAustraliaAmy Elsner UNQUALIFIED
Jefferson A BowleyAustraliaAmy Elsner NEW
Aruna K StensethJapanIoni Bowcher UNQUALIFIED
Maria F GlickRussiaIvan Magalhaes PROPOSAL
Julie C PerinFranceBernardo Dominic NEW
Alejandro G NickaUnited KingdomAnna Fali NEW
Cody B AlbaresAustraliaOnyama Limba UNQUALIFIED
Maria X MaletGermanyAsiya Javayant NEGOTIATION
Jefferson L BowleyFranceXuxue Feng QUALIFIED
David E SlusarskiCanadaAmy Elsner UNQUALIFIED
Emily Y RutaAustraliaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Murillo K AlbaresArgentinaIvan Magalhaes RENEWAL
Ashley E GauchoAustraliaBernardo Dominic PROPOSAL
Salvatore H BowleyIndiaXuxue Feng PROPOSAL
Jennifer T FerenczArgentinaIvan Magalhaes PROPOSAL
Isabel P SlusarskiItalyAsiya Javayant NEW
Maisha P VocelkaUnited KingdomXuxue Feng NEW
Smith G NickaArgentinaOnyama Limba RENEWAL
Ivar N NickaAustraliaIvan Magalhaes NEGOTIATION
Arvin Q BowleyItalyAmy Elsner NEW
Cody B ButtGermanyAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David L MaletBrazil2026-05-29Printing Dimensions RENEWAL55Ioni Bowcher
1001Jefferson K MaletFrance2026-06-15King, Christopher A Esq PROPOSAL32Bernardo Dominic
1002Stacey K WhobreyUnited Kingdom2026-06-13Morlong Associates QUALIFIED52Xuxue Feng
1003Aditya C BologniaIndia2026-06-03Benton, John B Jr QUALIFIED55Anna Fali
1004Costa Z RulapaughGermany2026-06-11Buckley Miller Wright PROPOSAL36Elwin Sharvill
1005Ricardo X MacleadRussia2026-06-09Dorl, James J Esq QUALIFIED24Elwin Sharvill
1006Francesco X SchemmerRussia2026-06-09Buckley Miller Wright QUALIFIED39Anna Fali
1007Deepesh G BologniaJapan2026-05-30Benton, John B Jr UNQUALIFIED31Xuxue Feng
1008Jones Z ButtCanada2026-05-29Feltz Printing Service NEGOTIATION31Ioni Bowcher
1009Sinclair L ShinkoJapan2026-06-12Chemel, James L Cpa UNQUALIFIED97Xuxue Feng
1010Kadeem I GauchoItaly2026-05-28Commercial Press PROPOSAL79Elwin Sharvill
1011Misaki P KolmetzAustralia2026-05-31Rangoni Of Florence UNQUALIFIED62Xuxue Feng
1012Costa V GarufiJapan2026-06-08Buckley Miller Wright NEGOTIATION22Ivan Magalhaes
1013Stacey A AmigonGermany2026-06-16Rousseaux, Michael Esq NEGOTIATION14Bernardo Dominic
1014Mujtaba S FerenczFrance2026-06-15Feiner Bros PROPOSAL91Onyama Limba
1015Costa C VocelkaItaly2026-05-31Feltz Printing Service NEGOTIATION8Stephen Shaw
1016Chavez L WaycottRussia2026-06-10Benton, John B Jr RENEWAL27Asiya Javayant
1017Aruna J NickaAustralia2026-06-09Chemel, James L Cpa NEW30Xuxue Feng
1018Antonio C MorascaFrance2026-06-01Rangoni Of Florence RENEWAL46Ivan Magalhaes
1019Mayumi W DoeFrance2026-06-08Rousseaux, Michael Esq RENEWAL43Bernardo Dominic
1020Chavez O RimGermany2026-06-18Buckley Miller Wright QUALIFIED41Stephen Shaw
1021Leon O MaletFrance2026-06-12Dorl, James J Esq NEGOTIATION92Stephen Shaw
1022Tony W GlickSpain2026-06-15Chemel, James L Cpa QUALIFIED73Bernardo Dominic
1023Claire Q BriddickIndia2026-05-31Feltz Printing Service NEW79Onyama Limba
1024Jefferson E FollerItaly2026-06-12Feiner Bros PROPOSAL30Ivan Magalhaes
1025Maria R StensethBrazil2026-06-19Feiner Bros NEW27Asiya Javayant
1026Octavia X RulapaughRussia2026-06-06Printing Dimensions RENEWAL12Anna Fali
1027Adams U WieserFrance2026-06-07Commercial Press UNQUALIFIED21Stephen Shaw
1028Misaki N WaycottArgentina2026-06-08Chapman, Ross E Esq NEW63Xuxue Feng
1029Silvio L WhobreyUnited Kingdom2026-06-05Printing Dimensions NEW15Amy Elsner
1030Leja K BriddickItaly2026-06-16Feltz Printing Service PROPOSAL37Bernardo Dominic
1031Rodrigues X PoquetteAustralia2026-05-25Feiner Bros PROPOSAL65Amy Elsner
1032Cody Q ShinkoBrazil2026-06-07Truhlar And Truhlar Attys RENEWAL3Ivan Magalhaes
1033Emily X AmigonJapan2026-06-05Dorl, James J Esq QUALIFIED81Ioni Bowcher
1034Misaki L MacleadFrance2026-05-27Printing Dimensions PROPOSAL13Bernardo Dominic
1035Sinclair N GarufiCanada2026-06-18Chapman, Ross E Esq PROPOSAL79Elwin Sharvill
1036Rodrigues X SchemmerBrazil2026-06-11Rousseaux, Michael Esq NEW87Bernardo Dominic
1037Antonio E GarufiUnited Kingdom2026-05-30Printing Dimensions RENEWAL12Elwin Sharvill
1038Ivar J StensethSpain2026-06-07Rousseaux, Michael Esq RENEWAL63Stephen Shaw
1039Aditya G VenereRussia2026-05-29King, Christopher A Esq NEW87Ioni Bowcher
1040Leon I ButtSpain2026-06-04Benton, John B Jr UNQUALIFIED18Bernardo Dominic
1041Jefferson N VocelkaCanada2026-05-30Printing Dimensions QUALIFIED40Amy Elsner
1042David Q MaletIndia2026-06-11Chemel, James L Cpa QUALIFIED8Ivan Magalhaes
1043Ivar U FerenczSpain2026-06-18Morlong Associates RENEWAL13Asiya Javayant
1044Smith L SlusarskiAustralia2026-05-29Rangoni Of Florence NEGOTIATION29Anna Fali
1045Nicolas A FlosiIndia2026-05-27Commercial Press NEW93Amy Elsner
1046David Y DilliardArgentina2026-05-30King, Christopher A Esq UNQUALIFIED3Ivan Magalhaes
1047Maisha H AlbaresArgentina2026-06-17Feiner Bros PROPOSAL47Xuxue Feng
1048Maisha A FigeroaFrance2026-06-15Chanay, Jeffrey A Esq QUALIFIED58Stephen Shaw
1049Emily A StockhamItaly2026-06-05Benton, John B Jr QUALIFIED65Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aruna O SchemmerUnited KingdomElwin Sharvill RENEWAL
Emily F RimUnited KingdomAsiya Javayant QUALIFIED
Nicolas I CaudyGermanyIoni Bowcher QUALIFIED
James H KolmetzJapanAmy Elsner RENEWAL
Nicolas L DoeRussiaIvan Magalhaes NEGOTIATION
Johnson T WhobreyGermanyStephen Shaw NEGOTIATION
Costa B SergiJapanBernardo Dominic RENEWAL
Leon R FollerCanadaIoni Bowcher NEW
Maisha L IturbideSpainAnna Fali QUALIFIED
Octavia H WaycottBrazilElwin Sharvill NEGOTIATION
Arvin D TollnerIndiaBernardo Dominic PROPOSAL
Munro C MacleadItalyStephen Shaw UNQUALIFIED
Leja O RutaUnited KingdomAsiya Javayant NEGOTIATION
Jefferson N InouyeFranceAnna Fali QUALIFIED
Wickens N NestleArgentinaElwin Sharvill PROPOSAL
Clifford Y FlosiUnited KingdomXuxue Feng NEW
Ivar E WieserCanadaIvan Magalhaes RENEWAL
Ashley P BowleyAustraliaOnyama Limba NEGOTIATION
Emily C RimFranceXuxue Feng RENEWAL
Antonio T DoeArgentinaOnyama Limba UNQUALIFIED
Wickens I WieserCanadaIoni Bowcher NEW
Ivar K InouyeBrazilIoni Bowcher NEW
Munro A WieserSpainBernardo Dominic UNQUALIFIED
Juan X GauchoSpainAmy Elsner NEW
Kaitlin E ChuiUnited KingdomIvan Magalhaes RENEWAL
Juan D MarrierAustraliaBernardo Dominic QUALIFIED
Greenwood R GarufiSpainAmy Elsner PROPOSAL
Octavia T WieserCanadaStephen Shaw RENEWAL
Leon C MorascaSpainElwin Sharvill PROPOSAL
Arvin Z DoeUnited KingdomAmy Elsner NEW
Juan I ChuiAustraliaAsiya Javayant PROPOSAL
Jennifer G GlickCanadaAmy Elsner NEGOTIATION
Mayumi Z OstroskyGermanyIvan Magalhaes PROPOSAL
Silvio J BriddickRussiaOnyama Limba QUALIFIED
Claire I GauchoItalyIoni Bowcher UNQUALIFIED
Maria H PaprockiGermanyIoni Bowcher PROPOSAL
Salvatore R WaycottGermanyIvan Magalhaes UNQUALIFIED
Maria W ButtGermanyOnyama Limba NEGOTIATION
Munro A FigeroaGermanyAmy Elsner RENEWAL
Faith G VocelkaBrazilAnna Fali RENEWAL
Ivar A OldroydAustraliaBernardo Dominic QUALIFIED
Isabel V GillianRussiaAsiya Javayant RENEWAL
Octavia B RoysterRussiaXuxue Feng UNQUALIFIED
Izzy W CaudyItalyIoni Bowcher RENEWAL
Izzy P StockhamGermanyIoni Bowcher NEGOTIATION
Jefferson Z StensethCanadaAnna Fali RENEWAL
Ricardo R CampainAustraliaAsiya Javayant UNQUALIFIED
Juan G PaprockiFranceOnyama Limba NEGOTIATION
Jeanfrancois U DarakjyAustraliaAmy Elsner UNQUALIFIED
Ashley B RoysterRussiaAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Jennifer Z Inouye
Emily H Nestle
Octavia A Shinko
Aditya N Ostrosky
Ashley H Vocelka
Johnson B Nestle
Claire O Vocelka
Jennifer W Morasca
Octavia E Doe
Isabel Z Amigon
Jones Q Sergi
Ricardo J Bolognia
Chavez S Doe
Darci D Figeroa
Kaitlin O Paprocki
Misaki A Albares
Octavia A Bolognia
Arvin M Ferencz
Kaitlin Z Waycott
Morrow U Malet
Misaki N Kolmetz
Aruna K Flosi
Clifford F Bolognia
Mujtaba V Venere
Misaki Q Bolognia
Jennifer V Schemmer
Mayumi E Foller
Morrow J Nestle
Munro H Malet
Ashley K Caudy
Claire F Malet
Kadeem E Kolmetz
Adams Q Foller
Kaitlin L Ferencz
Francesco L Bowley
Adams N Chui
Juan K Amigon
Aruna H Kusko
Jefferson D Ruta
Morrow K Rim
Sinclair U Paprocki
Aika E Kolmetz
Sinclair Y Glick
Francesco F Darakjy
Mayumi Z Wieser
James D Ostrosky
James P Vocelka
Aditya Y Caudy
Mayumi X Nicka
Ricardo H Oldroyd
IdCountryDate
1000Australia2026-05-25
1001Germany2026-06-06
1002Russia2026-06-08
1003Brazil2026-06-13
1004Germany2026-05-31
1005United Kingdom2026-06-06
1006Canada2026-05-26
1007United Kingdom2026-05-25
1008United Kingdom2026-05-29
1009India2026-06-05
1010Spain2026-06-05
1011India2026-06-08
1012Spain2026-06-09
1013India2026-06-02
1014Japan2026-05-24
1015United Kingdom2026-06-10
1016France2026-06-14
1017Argentina2026-06-15
1018Argentina2026-06-03
1019Brazil2026-06-20
1020Australia2026-05-26
1021Canada2026-06-03
1022Germany2026-06-04
1023India2026-06-17
1024Japan2026-05-25
1025Russia2026-06-04
1026Argentina2026-06-10
1027Russia2026-05-29
1028France2026-06-15
1029Italy2026-06-18
1030France2026-06-10
1031Brazil2026-06-13
1032Australia2026-06-14
1033Brazil2026-06-03
1034Germany2026-05-26
1035Japan2026-06-18
1036Russia2026-05-23
1037Canada2026-06-13
1038Australia2026-06-13
1039Brazil2026-06-20
1040Brazil2026-06-12
1041Spain2026-06-07
1042Japan2026-06-06
1043Brazil2026-06-09
1044France2026-05-28
1045France2026-06-18
1046Brazil2026-05-29
1047Canada2026-06-10
1048Germany2026-06-13
1049Brazil2026-05-28

On-Demand Data

NameIdCountryDate
Misaki U Ruta1000France2026-06-19
Jennifer Q Oldroyd1001France2026-05-23
Mayumi S Nicka1002United Kingdom2026-05-23
Mayumi X Schemmer1003Brazil2026-05-31
Costa Y Iturbide1004France2026-05-31
Maisha C Gillian1005Russia2026-06-18
Kaitlin I Inouye1006France2026-06-07
Octavia X Rim1007Japan2026-05-23
Silvio K Perin1008Argentina2026-05-26
Julie U Bolognia1009Russia2026-06-04
Emily F Kolmetz1010Spain2026-06-11
Johnson B Rim1011Germany2026-06-18
Deepesh Y Rim1012India2026-06-05
Izzy Z Gillian1013Spain2026-06-19
Aditya J Iturbide1014United Kingdom2026-05-29
Emily J Ferencz1015France2026-06-04
Arvin N Nestle1016India2026-06-15
Jefferson Y Paprocki1017Japan2026-06-07
Nicolas T Tollner1018Italy2026-06-05
Alejandro P Schemmer1019France2026-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika N NestleSpainXuxue Feng NEGOTIATION
Jeanfrancois F StockhamIndiaXuxue Feng UNQUALIFIED
Kaitlin Q WieserRussiaAmy Elsner RENEWAL
Cody R RimGermanyIoni Bowcher NEGOTIATION
Aruna R WhobreyAustraliaOnyama Limba NEW
Aika S PerinAustraliaAnna Fali QUALIFIED
Izzy D OstroskyUnited KingdomBernardo Dominic NEW
Silvio X MaletCanadaIoni Bowcher NEW
Jones O MaletJapanAnna Fali UNQUALIFIED
Salvatore F VocelkaAustraliaBernardo Dominic UNQUALIFIED
Misaki S MaletCanadaXuxue Feng UNQUALIFIED
Cody G KuskoItalyAmy Elsner NEGOTIATION
Kadeem O NickaIndiaIoni Bowcher NEW
Munro R VenereCanadaXuxue Feng UNQUALIFIED
Aruna C OldroydCanadaStephen Shaw NEW
Ivar B SchemmerAustraliaElwin Sharvill UNQUALIFIED
Mayumi A MaletAustraliaAsiya Javayant QUALIFIED
Tony K ButtIndiaElwin Sharvill UNQUALIFIED
Wickens M StensethSpainBernardo Dominic QUALIFIED
Maisha Z MarrierBrazilAnna Fali QUALIFIED
Arvin X WhobreyUnited KingdomIvan Magalhaes PROPOSAL
Leon E CaudyArgentinaStephen Shaw UNQUALIFIED
James J WaycottRussiaElwin Sharvill UNQUALIFIED
Francesco K FollerGermanyAsiya Javayant UNQUALIFIED
Deepesh H WaycottGermanyIvan Magalhaes NEGOTIATION
Jennifer F PaprockiItalyAnna Fali UNQUALIFIED
Rodrigues Q KolmetzCanadaBernardo Dominic PROPOSAL
Murillo Q BologniaGermanyBernardo Dominic RENEWAL
Greenwood J VocelkaFranceAnna Fali UNQUALIFIED
Antonio L DoeIndiaIoni Bowcher NEGOTIATION
Adams D FerenczIndiaStephen Shaw NEW
Tony G VenereBrazilOnyama Limba RENEWAL
Cody Q OldroydBrazilIvan Magalhaes NEGOTIATION
Greenwood F OldroydAustraliaIvan Magalhaes PROPOSAL
Emily L KuskoRussiaBernardo Dominic RENEWAL
Kadeem K GarufiGermanyIoni Bowcher RENEWAL
Aika N BologniaBrazilElwin Sharvill NEGOTIATION
Aruna O DoeCanadaStephen Shaw PROPOSAL
Misaki O VenereSpainAsiya Javayant NEGOTIATION
Kadeem B GauchoRussiaElwin Sharvill NEW

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