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 H MaletBrazilBernardo Dominic UNQUALIFIED
Chavez E WhobreyUnited KingdomIvan Magalhaes RENEWAL
Leja X ButtUnited KingdomStephen Shaw PROPOSAL
Kadeem N PoquetteCanadaAmy Elsner RENEWAL
Smith I GarufiAustraliaOnyama Limba RENEWAL
Adams U DoeUnited KingdomIoni Bowcher UNQUALIFIED
James G SergiJapanAsiya Javayant RENEWAL
Alejandro L RoysterJapanBernardo Dominic NEGOTIATION
Alejandro V RimCanadaAnna Fali RENEWAL
Costa D NestleIndiaAnna Fali NEGOTIATION
Smith C DarakjyItalyAsiya Javayant QUALIFIED
Ivar V SergiRussiaAsiya Javayant UNQUALIFIED
Kaitlin R NestleGermanyIvan Magalhaes UNQUALIFIED
Salvatore I WhobreyBrazilStephen Shaw NEGOTIATION
Silvio F KolmetzJapanElwin Sharvill QUALIFIED
Sinclair E SaylorsGermanyIvan Magalhaes PROPOSAL
Chavez D DoeGermanyBernardo Dominic QUALIFIED
James M BologniaJapanXuxue Feng QUALIFIED
Aruna T GauchoCanadaElwin Sharvill PROPOSAL
Ivar J MorascaItalyStephen Shaw RENEWAL
Kaitlin I TollnerItalyAmy Elsner PROPOSAL
Antonio B InouyeJapanAsiya Javayant PROPOSAL
Clifford U KolmetzArgentinaBernardo Dominic RENEWAL
Misaki A AlbaresSpainXuxue Feng RENEWAL
Tony S MacleadSpainElwin Sharvill RENEWAL
Kaitlin S RulapaughBrazilIoni Bowcher PROPOSAL
Costa L PoquetteUnited KingdomAnna Fali PROPOSAL
Alejandro T StensethArgentinaXuxue Feng PROPOSAL
Morrow A MaletUnited KingdomBernardo Dominic NEGOTIATION
Silvio E AlbaresIndiaOnyama Limba UNQUALIFIED
Chavez C BriddickGermanyAnna Fali RENEWAL
Johnson W VenereAustraliaIoni Bowcher NEGOTIATION
Mayumi L RoysterUnited KingdomOnyama Limba PROPOSAL
Tony R FerenczAustraliaAmy Elsner QUALIFIED
Emily E MaletAustraliaIoni Bowcher NEW
Nicolas L RimArgentinaAsiya Javayant QUALIFIED
Cody J StensethIndiaIvan Magalhaes NEGOTIATION
Aruna I PerinSpainXuxue Feng RENEWAL
Murillo I RoysterItalyXuxue Feng UNQUALIFIED
Silvio U ShinkoIndiaStephen Shaw QUALIFIED
Julie P BologniaGermanyAsiya Javayant QUALIFIED
Francesco N AlbaresUnited KingdomIoni Bowcher UNQUALIFIED
Maisha G StensethBrazilAnna Fali PROPOSAL
Murillo Z RulapaughArgentinaOnyama Limba NEGOTIATION
Adams I OldroydRussiaAmy Elsner QUALIFIED
Mujtaba Z SergiBrazilBernardo Dominic RENEWAL
Tony B ShinkoItalyOnyama Limba NEGOTIATION
Izzy E StockhamJapanAmy Elsner UNQUALIFIED
Stacey X DilliardGermanyIvan Magalhaes UNQUALIFIED
Deepesh G FollerCanadaStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aditya M BologniaItalyStephen Shaw RENEWAL
Ivar V GarufiGermanyIvan Magalhaes NEGOTIATION
Deepesh N VenereGermanyAmy Elsner QUALIFIED
David L SergiGermanyAmy Elsner PROPOSAL
Jennifer A FigeroaIndiaAmy Elsner NEW
Costa W WhobreyItalyAmy Elsner NEGOTIATION
Julie Y MorascaItalyElwin Sharvill UNQUALIFIED
Leja P KolmetzItalyAsiya Javayant QUALIFIED
Maria N RoysterFranceIoni Bowcher RENEWAL
Leon X BologniaBrazilAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco W AlbaresFrance2026-02-21Chapman, Ross E Esq NEGOTIATION71Ivan Magalhaes
1001Octavia B ChuiBrazil2026-02-22King, Christopher A Esq PROPOSAL10Xuxue Feng
1002Aruna J PoquetteFrance2026-02-01Chemel, James L Cpa NEGOTIATION54Stephen Shaw
1003Mayumi G FerenczUnited Kingdom2026-01-30Rousseaux, Michael Esq NEGOTIATION19Xuxue Feng
1004Clifford H ShinkoAustralia2026-02-14Truhlar And Truhlar Attys PROPOSAL57Anna Fali
1005Aika E SergiCanada2026-02-26Dorl, James J Esq RENEWAL84Ioni Bowcher
1006James M SlusarskiBrazil2026-02-09Chapman, Ross E Esq PROPOSAL98Amy Elsner
1007Arvin W IturbideJapan2026-02-13Commercial Press NEW55Elwin Sharvill
1008Aruna G VocelkaRussia2026-02-10Rangoni Of Florence PROPOSAL54Anna Fali
1009Kaitlin Q AmigonArgentina2026-02-22Benton, John B Jr NEGOTIATION86Anna Fali
1010Francesco U DoeAustralia2026-02-07Chemel, James L Cpa NEW81Onyama Limba
1011Nicolas J RimArgentina2026-02-12Feiner Bros NEGOTIATION29Ioni Bowcher
1012Ivar E VocelkaCanada2026-02-08Chemel, James L Cpa RENEWAL77Anna Fali
1013Francesco Y DilliardRussia2026-02-13Feltz Printing Service NEGOTIATION89Bernardo Dominic
1014Faith E OstroskyFrance2026-02-17Rousseaux, Michael Esq PROPOSAL40Asiya Javayant
1015Cody B ButtAustralia2026-02-23Benton, John B Jr PROPOSAL89Elwin Sharvill
1016James S IturbideItaly2026-02-16Benton, John B Jr QUALIFIED12Amy Elsner
1017Darci J IturbideBrazil2026-02-15Truhlar And Truhlar Attys PROPOSAL7Ivan Magalhaes
1018Julie D StensethSpain2026-02-18Benton, John B Jr NEGOTIATION33Onyama Limba
1019Munro J DoeFrance2026-02-25Benton, John B Jr QUALIFIED10Asiya Javayant
1020Ashley I InouyeJapan2026-02-16Chapman, Ross E Esq NEGOTIATION80Ioni Bowcher
1021Adams G ChuiJapan2026-02-10Feiner Bros PROPOSAL80Amy Elsner
1022Morrow L KuskoUnited Kingdom2026-01-31Buckley Miller Wright QUALIFIED92Asiya Javayant
1023Alejandro N IturbideBrazil2026-02-19Buckley Miller Wright PROPOSAL13Onyama Limba
1024Ashley Y MaletGermany2026-02-19Dorl, James J Esq NEW30Ioni Bowcher
1025Julie M StockhamCanada2026-02-13Morlong Associates QUALIFIED2Elwin Sharvill
1026Ricardo T ChuiGermany2026-02-20Chemel, James L Cpa NEW73Amy Elsner
1027Murillo W RoysterJapan2026-02-07Chanay, Jeffrey A Esq NEW19Xuxue Feng
1028Jeanfrancois O VocelkaIndia2026-02-05Buckley Miller Wright RENEWAL38Anna Fali
1029Mujtaba Z WaycottCanada2026-02-02Buckley Miller Wright QUALIFIED0Elwin Sharvill
1030Izzy G IturbideRussia2026-02-05Morlong Associates NEW69Amy Elsner
1031Deepesh Z ShinkoCanada2026-02-23Feiner Bros QUALIFIED8Asiya Javayant
1032Greenwood F BowleyFrance2026-02-28Buckley Miller Wright UNQUALIFIED0Anna Fali
1033Aditya S NickaFrance2026-02-14Rousseaux, Michael Esq NEGOTIATION78Amy Elsner
1034Octavia Q WieserArgentina2026-02-24King, Christopher A Esq PROPOSAL11Elwin Sharvill
1035Silvio A SchemmerUnited Kingdom2026-02-24Chapman, Ross E Esq NEGOTIATION19Anna Fali
1036Antonio B GillianJapan2026-02-14Buckley Miller Wright QUALIFIED31Amy Elsner
1037Alejandro T ChuiFrance2026-02-07Rousseaux, Michael Esq RENEWAL88Ioni Bowcher
1038Julie D GillianIndia2026-02-13Truhlar And Truhlar Attys UNQUALIFIED56Onyama Limba
1039Tony Y MaletJapan2026-02-09Morlong Associates PROPOSAL69Bernardo Dominic
1040Maisha L ButtIndia2026-02-19Printing Dimensions PROPOSAL23Onyama Limba
1041Deepesh J NickaJapan2026-02-08Chanay, Jeffrey A Esq NEW62Onyama Limba
1042Munro H BriddickSpain2026-01-31Commercial Press UNQUALIFIED42Asiya Javayant
1043Francesco I WhobreyBrazil2026-02-15Printing Dimensions QUALIFIED52Anna Fali
1044Faith E PoquetteItaly2026-02-11Printing Dimensions RENEWAL90Ioni Bowcher
1045Jefferson I SergiSpain2026-02-22Truhlar And Truhlar Attys QUALIFIED12Elwin Sharvill
1046Aika Z DoeUnited Kingdom2026-02-12King, Christopher A Esq NEGOTIATION79Onyama Limba
1047Rodrigues R CaldareraBrazil2026-02-18Rousseaux, Michael Esq NEW79Amy Elsner
1048Ashley Q SlusarskiIndia2026-02-22Chanay, Jeffrey A Esq UNQUALIFIED92Asiya Javayant
1049Leon B FerenczAustralia2026-02-25King, Christopher A Esq PROPOSAL92Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Tony Q CampainFranceIvan Magalhaes QUALIFIED
Murillo U OldroydCanadaIvan Magalhaes QUALIFIED
Murillo O AlbaresGermanyOnyama Limba RENEWAL
Tony E BriddickBrazilIoni Bowcher RENEWAL
Leon W SlusarskiRussiaIoni Bowcher NEW
Tony U MarrierIndiaIvan Magalhaes UNQUALIFIED
Misaki P AmigonIndiaOnyama Limba PROPOSAL
Deepesh J AmigonItalyBernardo Dominic QUALIFIED
Maria Q WhobreyJapanIvan Magalhaes UNQUALIFIED
Juan J DarakjyFranceStephen Shaw UNQUALIFIED
Ivar A MorascaJapanElwin Sharvill NEGOTIATION
Chavez V GarufiAustraliaAmy Elsner RENEWAL
Ivar H TollnerAustraliaOnyama Limba RENEWAL
Kaitlin K MaletSpainBernardo Dominic QUALIFIED
Nicolas Z StensethGermanyIvan Magalhaes PROPOSAL
Mujtaba N VenereJapanAmy Elsner PROPOSAL
Ivar W StensethArgentinaBernardo Dominic UNQUALIFIED
Aruna E CaldareraRussiaBernardo Dominic UNQUALIFIED
Silvio K RimFranceStephen Shaw QUALIFIED
Leja E StockhamSpainAmy Elsner PROPOSAL
Aditya M MaletSpainAsiya Javayant PROPOSAL
Aditya T MaletItalyAsiya Javayant RENEWAL
Kaitlin N KuskoUnited KingdomAmy Elsner NEGOTIATION
Ashley O GauchoIndiaOnyama Limba PROPOSAL
Arvin V GlickSpainElwin Sharvill PROPOSAL
Greenwood K RulapaughJapanStephen Shaw NEW
Ricardo I PaprockiCanadaBernardo Dominic NEGOTIATION
Claire M WaycottRussiaStephen Shaw NEW
Octavia T CaudyJapanIvan Magalhaes RENEWAL
Faith H ButtSpainOnyama Limba QUALIFIED
Kaitlin F StensethJapanIvan Magalhaes PROPOSAL
Aruna V PoquetteCanadaAsiya Javayant RENEWAL
Arvin Z KolmetzRussiaIvan Magalhaes NEW
Kadeem N SaylorsGermanyAmy Elsner PROPOSAL
Maisha X ShinkoGermanyElwin Sharvill RENEWAL
James O PaprockiSpainIvan Magalhaes PROPOSAL
Adams F GlickItalyOnyama Limba PROPOSAL
Ashley L GlickBrazilBernardo Dominic PROPOSAL
Mayumi B AlbaresBrazilAsiya Javayant NEGOTIATION
David L CaudyRussiaIvan Magalhaes PROPOSAL
Antonio H IturbideJapanOnyama Limba UNQUALIFIED
Wickens K AlbaresGermanyAnna Fali QUALIFIED
Claire P FerenczRussiaAmy Elsner PROPOSAL
Stacey R PoquetteJapanIvan Magalhaes UNQUALIFIED
Murillo M BowleyJapanAmy Elsner PROPOSAL
Julie Q FerenczFranceIvan Magalhaes UNQUALIFIED
Costa X GillianSpainIvan Magalhaes QUALIFIED
Silvio B KolmetzItalyOnyama Limba NEW
Tony V StensethJapanIvan Magalhaes RENEWAL
Chavez T WaycottIndiaBernardo Dominic NEGOTIATION
Frozen Columns
Name
Cody I Waycott
Mujtaba N Gillian
Rodrigues Q Flosi
Ricardo J Iturbide
Greenwood H Dilliard
Adams V Briddick
Johnson V Whobrey
Stacey F Slusarski
Maria J Gaucho
Claire V Stenseth
Wickens G Foller
Arvin K Amigon
Silvio F Perin
Adams F Ostrosky
Misaki X Vocelka
Isabel A Paprocki
Stacey G Rim
Aika M Glick
Aika N Caldarera
Alejandro N Dilliard
Octavia N Ruta
Greenwood M Vocelka
James P Amigon
Wickens C Nicka
Murillo Q Slusarski
Greenwood D Albares
Mujtaba V Doe
Aditya I Saylors
Johnson J Marrier
Leon W Ferencz
Arvin N Malet
Rodrigues R Morasca
Ivar F Malet
Smith Q Sergi
Maisha H Saylors
Deepesh Q Bolognia
Leon N Morasca
Jefferson Y Wieser
Sinclair C Nicka
Stacey O Campain
Ivar A Stockham
Munro S Figeroa
Jefferson F Oldroyd
Leja D Kolmetz
Greenwood Y Amigon
Morrow J Ostrosky
Claire P Slusarski
Adams H Kolmetz
Morrow W Glick
Francesco C Foller
IdCountryDate
1000Russia2026-02-13
1001Russia2026-01-31
1002United Kingdom2026-01-31
1003United Kingdom2026-02-14
1004Russia2026-02-27
1005Argentina2026-01-30
1006Brazil2026-02-24
1007Brazil2026-02-16
1008Spain2026-02-17
1009Argentina2026-02-08
1010Argentina2026-02-21
1011United Kingdom2026-02-26
1012Canada2026-02-10
1013France2026-02-24
1014Japan2026-02-10
1015Canada2026-02-06
1016India2026-02-20
1017Australia2026-02-15
1018Brazil2026-02-19
1019Australia2026-02-20
1020Spain2026-02-07
1021Italy2026-02-23
1022Germany2026-02-02
1023Spain2026-02-19
1024Argentina2026-02-12
1025Australia2026-02-13
1026Italy2026-02-12
1027Argentina2026-02-13
1028Russia2026-02-21
1029Spain2026-02-07
1030Russia2026-02-11
1031Italy2026-02-02
1032Canada2026-02-01
1033India2026-02-17
1034Argentina2026-02-05
1035Australia2026-02-18
1036Japan2026-02-01
1037India2026-02-22
1038Argentina2026-02-08
1039Russia2026-02-24
1040Japan2026-02-12
1041Spain2026-02-01
1042Argentina2026-02-10
1043France2026-02-01
1044Australia2026-02-16
1045Spain2026-02-15
1046Japan2026-02-22
1047Argentina2026-02-01
1048Brazil2026-02-03
1049Argentina2026-02-23

On-Demand Data

NameIdCountryDate
Adams V Gaucho1000France2026-02-14
Isabel W Perin1001Canada2026-02-15
Smith H Ruta1002Japan2026-02-05
Octavia Q Shinko1003Argentina2026-02-20
Sinclair Q Ruta1004Argentina2026-01-31
Smith V Slusarski1005India2026-02-28
James Z Ferencz1006France2026-02-23
Jones U Oldroyd1007Japan2026-02-26
Deepesh Q Darakjy1008Japan2026-02-09
Jefferson Z Tollner1009Russia2026-02-27
Sinclair E Campain1010Spain2026-02-06
Aruna K Rim1011Spain2026-02-15
Aika L Briddick1012Japan2026-02-07
Sinclair U Albares1013Spain2026-02-26
James Z Dilliard1014Canada2026-02-04
Jefferson J Kolmetz1015Argentina2026-01-30
Juan F Chui1016Brazil2026-02-25
Wickens A Saylors1017Brazil2026-02-13
Morrow Y Rim1018India2026-02-11
Francesco H Paprocki1019Australia2026-02-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas U BowleySpainElwin Sharvill PROPOSAL
Leon C NickaArgentinaAsiya Javayant UNQUALIFIED
Ashley C PoquetteJapanBernardo Dominic NEGOTIATION
Morrow H DoeCanadaStephen Shaw NEW
Alejandro P ChuiRussiaAnna Fali NEGOTIATION
James T CaldareraUnited KingdomIoni Bowcher RENEWAL
Juan F GillianBrazilAsiya Javayant NEW
Arvin F ShinkoGermanyAnna Fali QUALIFIED
Johnson B VenereUnited KingdomXuxue Feng UNQUALIFIED
Munro P SchemmerItalyXuxue Feng NEGOTIATION
Silvio U PoquetteGermanyIvan Magalhaes RENEWAL
Ivar W FigeroaAustraliaAnna Fali PROPOSAL
Jones I MaletGermanyOnyama Limba QUALIFIED
Ricardo X GauchoFranceElwin Sharvill QUALIFIED
Octavia L AmigonRussiaXuxue Feng PROPOSAL
Jeanfrancois Z VocelkaAustraliaIvan Magalhaes RENEWAL
Tony S PaprockiRussiaAmy Elsner PROPOSAL
Maisha P VenereSpainOnyama Limba RENEWAL
Jeanfrancois W VocelkaJapanXuxue Feng UNQUALIFIED
Claire F KolmetzGermanyIvan Magalhaes UNQUALIFIED
Francesco X CaldareraUnited KingdomBernardo Dominic QUALIFIED
Jennifer D KuskoUnited KingdomIvan Magalhaes RENEWAL
Isabel I BologniaJapanAsiya Javayant NEGOTIATION
Ashley N VocelkaCanadaAsiya Javayant NEGOTIATION
Jefferson R BologniaCanadaAsiya Javayant NEW
David Z KuskoItalyOnyama Limba UNQUALIFIED
Misaki B InouyeRussiaStephen Shaw NEGOTIATION
Aditya S AlbaresItalyAnna Fali RENEWAL
Salvatore M WhobreyItalyAsiya Javayant PROPOSAL
Silvio Y NestleRussiaElwin Sharvill RENEWAL
Johnson M RutaSpainAsiya Javayant NEW
James Q WieserFranceOnyama Limba QUALIFIED
Murillo L GlickGermanyXuxue Feng RENEWAL
Maisha P CaudyBrazilAnna Fali PROPOSAL
Deepesh X AmigonSpainBernardo Dominic PROPOSAL
Arvin J StensethItalyAnna Fali NEGOTIATION
Cody F GauchoSpainElwin Sharvill RENEWAL
Stacey D OldroydFranceBernardo Dominic NEGOTIATION
James T CaudyItalyAnna Fali NEGOTIATION
Kadeem B CaudyItalyIoni Bowcher 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.