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
Darci N RoysterCanadaBernardo Dominic PROPOSAL
David W CaldareraIndiaBernardo Dominic PROPOSAL
Sinclair L AmigonBrazilBernardo Dominic PROPOSAL
Clifford B KuskoJapanOnyama Limba PROPOSAL
James D RoysterIndiaAsiya Javayant NEGOTIATION
Munro A RutaRussiaStephen Shaw PROPOSAL
Chavez Z VocelkaBrazilAnna Fali QUALIFIED
Aditya H SergiFranceAsiya Javayant RENEWAL
Antonio A InouyeUnited KingdomAsiya Javayant QUALIFIED
Salvatore Z KuskoAustraliaOnyama Limba NEGOTIATION
Juan I InouyeGermanyStephen Shaw UNQUALIFIED
Munro E NickaUnited KingdomStephen Shaw NEW
Julie Z BologniaItalyIoni Bowcher UNQUALIFIED
Tony W PoquetteIndiaElwin Sharvill RENEWAL
Johnson J AlbaresRussiaAsiya Javayant RENEWAL
Maisha G SaylorsIndiaStephen Shaw QUALIFIED
Chavez E ButtGermanyElwin Sharvill NEW
Smith G KolmetzGermanyBernardo Dominic UNQUALIFIED
Greenwood U AlbaresCanadaIoni Bowcher UNQUALIFIED
Silvio I AlbaresBrazilStephen Shaw QUALIFIED
Emily H FigeroaUnited KingdomAnna Fali NEGOTIATION
Julie D RoysterArgentinaIvan Magalhaes UNQUALIFIED
Octavia L PaprockiJapanElwin Sharvill UNQUALIFIED
Kaitlin U FigeroaItalyAmy Elsner NEGOTIATION
James D MarrierIndiaAsiya Javayant RENEWAL
James U VocelkaIndiaXuxue Feng PROPOSAL
Nicolas T PoquetteSpainAmy Elsner RENEWAL
Wickens Z CampainBrazilBernardo Dominic UNQUALIFIED
Kaitlin J IturbideCanadaXuxue Feng NEW
Morrow S GauchoItalyBernardo Dominic RENEWAL
Kadeem O KolmetzUnited KingdomBernardo Dominic UNQUALIFIED
Julie Z CaudyUnited KingdomIoni Bowcher NEW
Jennifer E FigeroaUnited KingdomAnna Fali NEGOTIATION
Arvin P InouyeSpainIoni Bowcher PROPOSAL
Aruna P SlusarskiIndiaStephen Shaw QUALIFIED
Greenwood X MacleadUnited KingdomOnyama Limba QUALIFIED
Emily Y InouyeArgentinaIoni Bowcher NEGOTIATION
Ivar P KuskoUnited KingdomElwin Sharvill NEGOTIATION
Clifford E InouyeSpainAsiya Javayant QUALIFIED
Tony H SchemmerGermanyAmy Elsner NEGOTIATION
Jeanfrancois X BriddickItalyXuxue Feng QUALIFIED
Jeanfrancois U KolmetzBrazilAsiya Javayant UNQUALIFIED
Ivar W MorascaItalyOnyama Limba NEW
Kadeem K IturbideUnited KingdomAsiya Javayant NEGOTIATION
Arvin Z VocelkaSpainAsiya Javayant UNQUALIFIED
Deepesh V RulapaughGermanyIoni Bowcher NEW
Ashley K WaycottCanadaBernardo Dominic QUALIFIED
Maisha O ButtItalyAnna Fali NEW
Clifford L KuskoUnited KingdomElwin Sharvill RENEWAL
Morrow O WaycottBrazilIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Johnson P BowleyArgentinaAmy Elsner NEGOTIATION
David Y WhobreyItalyAnna Fali PROPOSAL
Wickens L BologniaSpainAsiya Javayant RENEWAL
Francesco R BologniaUnited KingdomXuxue Feng NEGOTIATION
Ashley G FigeroaBrazilXuxue Feng QUALIFIED
Mayumi B MaletGermanyBernardo Dominic QUALIFIED
Faith K WaycottAustraliaIoni Bowcher NEW
Juan N GauchoItalyOnyama Limba PROPOSAL
Deepesh G StensethArgentinaIvan Magalhaes NEGOTIATION
David Q WieserJapanElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore G VocelkaUnited Kingdom2026-05-30Feltz Printing Service UNQUALIFIED90Ivan Magalhaes
1001Aruna S PaprockiArgentina2026-05-18Chapman, Ross E Esq NEW59Ioni Bowcher
1002Alejandro Z RulapaughRussia2026-05-12Chanay, Jeffrey A Esq NEW60Ioni Bowcher
1003Morrow Q StensethJapan2026-06-07Chanay, Jeffrey A Esq NEGOTIATION49Ioni Bowcher
1004Salvatore M FollerAustralia2026-05-23Chapman, Ross E Esq UNQUALIFIED69Onyama Limba
1005Ricardo C ShinkoIndia2026-05-22Feiner Bros RENEWAL76Amy Elsner
1006Clifford A SlusarskiGermany2026-05-13Benton, John B Jr QUALIFIED67Anna Fali
1007Aruna I KuskoJapan2026-05-24Benton, John B Jr RENEWAL28Xuxue Feng
1008Jones X ButtRussia2026-05-14Chanay, Jeffrey A Esq NEGOTIATION79Xuxue Feng
1009Ashley L BologniaJapan2026-06-05Feltz Printing Service NEGOTIATION9Asiya Javayant
1010Nicolas J MarrierSpain2026-05-14Truhlar And Truhlar Attys NEW34Amy Elsner
1011Tony L FigeroaAustralia2026-05-30Buckley Miller Wright NEW25Ioni Bowcher
1012Wickens G MaletSpain2026-06-07Chapman, Ross E Esq QUALIFIED38Bernardo Dominic
1013Johnson K FlosiArgentina2026-06-07Chanay, Jeffrey A Esq QUALIFIED35Ivan Magalhaes
1014Jefferson U InouyeCanada2026-05-30Commercial Press NEGOTIATION83Stephen Shaw
1015Francesco P AmigonRussia2026-06-06Chapman, Ross E Esq RENEWAL50Amy Elsner
1016Ashley Z AlbaresUnited Kingdom2026-05-30Truhlar And Truhlar Attys QUALIFIED48Anna Fali
1017Jones G ShinkoRussia2026-05-21Buckley Miller Wright NEW62Stephen Shaw
1018Maria N KolmetzJapan2026-06-07King, Christopher A Esq NEW26Stephen Shaw
1019Jefferson J NickaBrazil2026-05-21Feiner Bros QUALIFIED23Bernardo Dominic
1020Jefferson K ShinkoRussia2026-05-16Rousseaux, Michael Esq NEGOTIATION40Bernardo Dominic
1021Antonio K IturbideFrance2026-05-12Chemel, James L Cpa NEW16Ivan Magalhaes
1022Misaki E BologniaItaly2026-05-18Feiner Bros PROPOSAL49Anna Fali
1023Greenwood B StensethIndia2026-05-24King, Christopher A Esq PROPOSAL23Amy Elsner
1024Leja C AmigonBrazil2026-05-29Chapman, Ross E Esq QUALIFIED50Ivan Magalhaes
1025Claire B KolmetzBrazil2026-05-11Chapman, Ross E Esq UNQUALIFIED75Ioni Bowcher
1026Ashley W BowleyIndia2026-05-15Buckley Miller Wright UNQUALIFIED36Elwin Sharvill
1027Faith H MarrierArgentina2026-05-12Chapman, Ross E Esq NEW8Ivan Magalhaes
1028Francesco Q CaldareraArgentina2026-05-17Benton, John B Jr NEGOTIATION81Asiya Javayant
1029Aika M PerinFrance2026-05-17Commercial Press QUALIFIED75Ioni Bowcher
1030Mayumi K RulapaughFrance2026-06-05Dorl, James J Esq UNQUALIFIED71Xuxue Feng
1031James I StockhamUnited Kingdom2026-06-06Chemel, James L Cpa RENEWAL82Ivan Magalhaes
1032Jones Q CaudyIndia2026-05-22Rousseaux, Michael Esq NEGOTIATION76Anna Fali
1033Ashley C InouyeIndia2026-05-28King, Christopher A Esq UNQUALIFIED28Xuxue Feng
1034Alejandro U KuskoArgentina2026-05-28Morlong Associates NEGOTIATION73Bernardo Dominic
1035Ashley G ButtItaly2026-06-07Rangoni Of Florence UNQUALIFIED18Ivan Magalhaes
1036Jeanfrancois B SchemmerItaly2026-05-31Truhlar And Truhlar Attys RENEWAL55Onyama Limba
1037Juan E PerinUnited Kingdom2026-05-27Commercial Press UNQUALIFIED90Stephen Shaw
1038Ivar K DoeUnited Kingdom2026-05-30Chapman, Ross E Esq RENEWAL41Ioni Bowcher
1039Alejandro F PoquetteAustralia2026-05-18Chemel, James L Cpa NEW85Ioni Bowcher
1040Mujtaba L SergiRussia2026-05-20Truhlar And Truhlar Attys QUALIFIED15Xuxue Feng
1041Nicolas I NestleCanada2026-05-22Morlong Associates PROPOSAL18Anna Fali
1042Stacey T WhobreyBrazil2026-05-18Benton, John B Jr NEW22Stephen Shaw
1043Octavia U VenereSpain2026-05-27Chanay, Jeffrey A Esq NEW42Xuxue Feng
1044Costa X DilliardJapan2026-05-29Benton, John B Jr PROPOSAL35Asiya Javayant
1045Maria B FigeroaArgentina2026-05-29Dorl, James J Esq QUALIFIED73Ivan Magalhaes
1046Kaitlin N MaletCanada2026-05-16Benton, John B Jr NEGOTIATION60Amy Elsner
1047Johnson U KuskoSpain2026-05-17Chapman, Ross E Esq QUALIFIED0Amy Elsner
1048Octavia X MaletItaly2026-05-10Benton, John B Jr NEW94Stephen Shaw
1049Mujtaba J AmigonCanada2026-05-25Benton, John B Jr QUALIFIED2Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Chavez X NestleIndiaStephen Shaw PROPOSAL
Jones Q GillianGermanyIvan Magalhaes NEW
Nicolas S BowleyCanadaXuxue Feng QUALIFIED
Cody D BriddickCanadaAnna Fali UNQUALIFIED
Aika U OstroskyRussiaIvan Magalhaes RENEWAL
Mayumi B PaprockiGermanyXuxue Feng NEW
Jefferson L CaudyRussiaOnyama Limba NEW
Munro C BowleyCanadaIvan Magalhaes PROPOSAL
Stacey Z ChuiIndiaAnna Fali RENEWAL
Nicolas W RutaRussiaAmy Elsner NEW
Ricardo J CaldareraRussiaStephen Shaw QUALIFIED
Octavia R VenereUnited KingdomAnna Fali UNQUALIFIED
Kaitlin D SergiGermanyAmy Elsner UNQUALIFIED
Johnson W RimBrazilAmy Elsner QUALIFIED
Maisha V AmigonBrazilStephen Shaw QUALIFIED
Jeanfrancois K WaycottBrazilAsiya Javayant RENEWAL
Salvatore W MaletSpainBernardo Dominic NEGOTIATION
Isabel E InouyeArgentinaElwin Sharvill NEW
Mujtaba T RulapaughIndiaAmy Elsner NEW
Salvatore B PaprockiIndiaIoni Bowcher UNQUALIFIED
Jefferson N GillianUnited KingdomAsiya Javayant RENEWAL
Maria R GlickArgentinaStephen Shaw QUALIFIED
Silvio I RimFranceXuxue Feng RENEWAL
Greenwood Y KolmetzItalyIvan Magalhaes QUALIFIED
David P SlusarskiSpainStephen Shaw QUALIFIED
Leja B CaldareraGermanyIvan Magalhaes PROPOSAL
Silvio O StockhamItalyElwin Sharvill RENEWAL
Emily Q DarakjyUnited KingdomElwin Sharvill PROPOSAL
Izzy J SlusarskiIndiaAmy Elsner NEGOTIATION
Rodrigues A VenereRussiaIoni Bowcher QUALIFIED
Julie V MacleadBrazilAnna Fali NEGOTIATION
Chavez X DarakjyCanadaElwin Sharvill NEW
Juan I PerinCanadaIvan Magalhaes RENEWAL
James C DoeGermanyAnna Fali NEW
Emily B CampainCanadaIvan Magalhaes RENEWAL
Adams U DarakjyIndiaXuxue Feng RENEWAL
Murillo M InouyeSpainElwin Sharvill UNQUALIFIED
Darci F BowleyGermanyOnyama Limba UNQUALIFIED
Chavez N NestleGermanyIvan Magalhaes PROPOSAL
Emily U GarufiCanadaIoni Bowcher NEW
Jeanfrancois C RoysterSpainIvan Magalhaes NEW
Emily G ChuiCanadaOnyama Limba UNQUALIFIED
Arvin S RulapaughGermanyOnyama Limba RENEWAL
Kaitlin S AmigonItalyElwin Sharvill PROPOSAL
Nicolas I KolmetzAustraliaElwin Sharvill UNQUALIFIED
Salvatore Y GlickArgentinaAmy Elsner PROPOSAL
Munro D IturbideJapanAmy Elsner NEW
Jennifer B DarakjyFranceAnna Fali QUALIFIED
Francesco Q RimAustraliaXuxue Feng PROPOSAL
Nicolas B SaylorsCanadaXuxue Feng UNQUALIFIED
Frozen Columns
Name
Mayumi X Ferencz
James F Glick
Rodrigues H Stockham
Chavez Z Gaucho
Maisha Q Dilliard
Wickens R Oldroyd
Maisha L Campain
Aditya N Malet
Emily O Rulapaugh
Jefferson F Saylors
Mujtaba M Shinko
Greenwood Y Briddick
Jefferson S Nestle
Leja Y Shinko
Ashley S Rim
Mayumi O Doe
Misaki R Foller
Ricardo V Campain
Jeanfrancois O Oldroyd
Emily B Inouye
Wickens Z Malet
Jefferson V Rim
Aditya C Rim
Mayumi X Paprocki
Aruna P Royster
Aditya W Perin
Maria B Ruta
Ricardo O Royster
Rodrigues G Garufi
Adams A Venere
Morrow Y Figeroa
Murillo B Saylors
Kaitlin H Tollner
Ricardo Q Malet
Rodrigues F Bolognia
Nicolas M Albares
Morrow L Bolognia
James G Tollner
James R Vocelka
Rodrigues V Caldarera
Greenwood O Garufi
Leja J Doe
Deepesh D Tollner
Maisha I Gaucho
David B Wieser
James Y Malet
Stacey G Stockham
Munro Q Sergi
Maisha W Wieser
Murillo U Schemmer
IdCountryDate
1000Germany2026-05-18
1001Germany2026-05-25
1002Canada2026-05-23
1003Italy2026-05-14
1004Australia2026-06-08
1005Australia2026-05-11
1006France2026-05-14
1007Italy2026-05-17
1008Brazil2026-06-06
1009France2026-05-29
1010France2026-05-27
1011United Kingdom2026-05-12
1012Australia2026-05-12
1013India2026-05-20
1014France2026-05-30
1015Spain2026-05-23
1016Italy2026-05-24
1017France2026-05-19
1018Spain2026-06-07
1019Germany2026-05-14
1020Japan2026-06-06
1021Russia2026-05-16
1022Argentina2026-05-13
1023Germany2026-05-17
1024United Kingdom2026-06-02
1025Canada2026-05-12
1026Germany2026-05-16
1027Italy2026-06-03
1028India2026-05-28
1029France2026-05-25
1030France2026-06-05
1031France2026-05-15
1032Russia2026-05-11
1033Spain2026-05-18
1034United Kingdom2026-06-08
1035Argentina2026-05-27
1036Argentina2026-06-07
1037Argentina2026-05-14
1038France2026-06-02
1039Germany2026-05-27
1040France2026-05-27
1041Russia2026-06-02
1042Australia2026-05-11
1043Argentina2026-05-31
1044India2026-05-21
1045India2026-06-06
1046Italy2026-05-29
1047Brazil2026-06-04
1048Spain2026-05-24
1049India2026-05-17

On-Demand Data

NameIdCountryDate
Murillo V Ferencz1000Brazil2026-06-04
Deepesh G Maclead1001Italy2026-05-11
Kaitlin Z Dilliard1002France2026-05-29
Wickens F Darakjy1003Canada2026-05-30
Stacey R Ferencz1004Spain2026-05-10
Leon L Perin1005Argentina2026-05-18
Kadeem J Flosi1006India2026-06-08
Francesco C Gillian1007Japan2026-05-27
Faith U Foller1008Argentina2026-05-21
Chavez S Inouye1009Japan2026-05-10
Jones G Tollner1010India2026-05-20
Leja Q Inouye1011Australia2026-05-27
Mayumi I Glick1012Japan2026-05-29
Leja T Gaucho1013Germany2026-06-07
Juan D Caudy1014Italy2026-05-16
Maisha C Garufi1015Italy2026-05-11
David W Stenseth1016Argentina2026-05-27
James V Chui1017Spain2026-05-22
Octavia H Shinko1018Russia2026-05-10
Ashley N Ostrosky1019United Kingdom2026-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo K RoysterBrazilAnna Fali UNQUALIFIED
Jones G InouyeIndiaOnyama Limba RENEWAL
Greenwood Q StockhamIndiaXuxue Feng QUALIFIED
Rodrigues L OstroskyGermanyStephen Shaw RENEWAL
Aika Z AmigonFranceElwin Sharvill NEW
Ivar Y RutaUnited KingdomIvan Magalhaes NEW
Aditya T CaudySpainAsiya Javayant NEW
Emily M AlbaresUnited KingdomXuxue Feng PROPOSAL
Aruna S FigeroaItalyStephen Shaw NEGOTIATION
Emily D FigeroaRussiaElwin Sharvill QUALIFIED
Octavia X MarrierItalyElwin Sharvill QUALIFIED
Morrow B SchemmerFranceAnna Fali PROPOSAL
Smith S PaprockiFranceIvan Magalhaes PROPOSAL
Adams K MacleadGermanyIvan Magalhaes NEGOTIATION
Deepesh E NickaAustraliaXuxue Feng RENEWAL
Isabel S SlusarskiAustraliaAmy Elsner PROPOSAL
Izzy C SlusarskiGermanyOnyama Limba NEW
Ivar M SlusarskiRussiaIvan Magalhaes QUALIFIED
David Z VenereItalyAsiya Javayant NEW
Murillo I SaylorsJapanAsiya Javayant NEW
Izzy R ChuiSpainElwin Sharvill NEGOTIATION
Greenwood D WieserCanadaBernardo Dominic UNQUALIFIED
Misaki M SergiFranceOnyama Limba QUALIFIED
Izzy I SlusarskiGermanyElwin Sharvill UNQUALIFIED
Silvio E FerenczUnited KingdomOnyama Limba NEW
Julie Y FollerArgentinaAmy Elsner NEGOTIATION
Mayumi P DarakjyUnited KingdomAnna Fali QUALIFIED
Rodrigues R IturbideCanadaIoni Bowcher NEW
Maria I BowleyIndiaBernardo Dominic RENEWAL
Darci Z SchemmerSpainElwin Sharvill RENEWAL
Ivar F OstroskySpainOnyama Limba RENEWAL
Antonio V KolmetzFranceAmy Elsner RENEWAL
Munro N SlusarskiJapanBernardo Dominic NEGOTIATION
Emily F OstroskyArgentinaStephen Shaw PROPOSAL
Morrow R CampainRussiaIvan Magalhaes NEGOTIATION
Izzy U KolmetzBrazilAnna Fali RENEWAL
Claire G WaycottSpainIoni Bowcher QUALIFIED
Alejandro D VocelkaJapanStephen Shaw UNQUALIFIED
Jefferson F AmigonArgentinaOnyama Limba PROPOSAL
Tony O CaldareraCanadaAsiya Javayant 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.