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
Murillo H PoquetteBrazilOnyama Limba UNQUALIFIED
Ivar T SchemmerSpainXuxue Feng RENEWAL
Chavez F KolmetzArgentinaBernardo Dominic PROPOSAL
James E CampainAustraliaElwin Sharvill UNQUALIFIED
David L WaycottArgentinaBernardo Dominic NEW
Aditya D ChuiAustraliaAsiya Javayant QUALIFIED
Leon M SergiJapanIoni Bowcher UNQUALIFIED
Aditya Y FollerArgentinaXuxue Feng RENEWAL
Salvatore X SergiGermanyOnyama Limba NEW
Tony R FigeroaSpainAmy Elsner UNQUALIFIED
Kadeem F VenereBrazilBernardo Dominic NEW
Jefferson D NestleIndiaStephen Shaw UNQUALIFIED
Jeanfrancois H BriddickJapanBernardo Dominic NEGOTIATION
Stacey O FlosiArgentinaOnyama Limba RENEWAL
Izzy D SergiItalyStephen Shaw RENEWAL
Antonio R IturbideUnited KingdomXuxue Feng UNQUALIFIED
James A InouyeBrazilBernardo Dominic UNQUALIFIED
Clifford Q SaylorsGermanyAsiya Javayant UNQUALIFIED
David A AlbaresBrazilElwin Sharvill UNQUALIFIED
Rodrigues K TollnerJapanAmy Elsner QUALIFIED
David C MorascaAustraliaIoni Bowcher NEW
Jeanfrancois U CaudyUnited KingdomAsiya Javayant QUALIFIED
Ivar U StockhamItalyIoni Bowcher NEW
Alejandro L FigeroaAustraliaBernardo Dominic NEW
Maisha M DoeArgentinaOnyama Limba NEGOTIATION
Juan C SlusarskiSpainOnyama Limba NEGOTIATION
Murillo C SlusarskiRussiaOnyama Limba NEGOTIATION
Tony U AmigonArgentinaElwin Sharvill RENEWAL
Maria W AlbaresUnited KingdomIvan Magalhaes PROPOSAL
Ashley U DoeIndiaIvan Magalhaes UNQUALIFIED
Darci O OstroskyIndiaAmy Elsner PROPOSAL
Ivar P DoeUnited KingdomAsiya Javayant NEW
Isabel C MaletItalyXuxue Feng PROPOSAL
Murillo O KuskoSpainAnna Fali PROPOSAL
Clifford C BowleyJapanAnna Fali NEW
Leon T SlusarskiSpainBernardo Dominic PROPOSAL
Morrow D DarakjyIndiaAmy Elsner RENEWAL
Ivar N GillianFranceOnyama Limba UNQUALIFIED
Izzy D GarufiGermanyIoni Bowcher NEW
Leon U WhobreyAustraliaBernardo Dominic QUALIFIED
Kadeem E MacleadItalyBernardo Dominic UNQUALIFIED
Clifford A KolmetzArgentinaOnyama Limba PROPOSAL
Ashley O BriddickFranceOnyama Limba RENEWAL
Darci F OstroskyIndiaAmy Elsner UNQUALIFIED
David G WhobreyBrazilAmy Elsner RENEWAL
Misaki D BowleyCanadaAnna Fali UNQUALIFIED
Mayumi W StensethItalyElwin Sharvill NEW
Faith R RoysterBrazilIoni Bowcher RENEWAL
Izzy R StockhamIndiaIoni Bowcher PROPOSAL
Leon Z GarufiCanadaAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin N IturbideItalyBernardo Dominic RENEWAL
James G GarufiJapanOnyama Limba NEGOTIATION
Costa J KuskoJapanIvan Magalhaes PROPOSAL
Emily G NestleArgentinaIvan Magalhaes UNQUALIFIED
Julie V GlickRussiaAsiya Javayant QUALIFIED
Darci J BriddickBrazilAnna Fali RENEWAL
Juan X BologniaBrazilElwin Sharvill NEW
Nicolas A VenereAustraliaStephen Shaw UNQUALIFIED
James C SergiFranceAnna Fali UNQUALIFIED
Arvin L CaldareraBrazilAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey O RutaItaly2026-06-02Truhlar And Truhlar Attys RENEWAL10Anna Fali
1001Claire O OstroskyGermany2026-06-21Chemel, James L Cpa NEW78Elwin Sharvill
1002Francesco W RulapaughAustralia2026-06-10Truhlar And Truhlar Attys NEGOTIATION92Anna Fali
1003Costa H BowleyAustralia2026-06-25Feltz Printing Service QUALIFIED61Bernardo Dominic
1004Murillo B IturbideItaly2026-06-28Dorl, James J Esq NEW22Ioni Bowcher
1005Silvio G GauchoAustralia2026-06-06Feltz Printing Service RENEWAL20Xuxue Feng
1006Ricardo Z VenereJapan2026-06-25Rousseaux, Michael Esq NEGOTIATION35Elwin Sharvill
1007Mujtaba B WieserUnited Kingdom2026-06-03Dorl, James J Esq QUALIFIED37Amy Elsner
1008Darci J MaletBrazil2026-06-02Truhlar And Truhlar Attys NEGOTIATION52Ioni Bowcher
1009Tony N ShinkoCanada2026-06-01Chemel, James L Cpa UNQUALIFIED44Stephen Shaw
1010Smith B GillianBrazil2026-06-21Truhlar And Truhlar Attys RENEWAL38Ioni Bowcher
1011James K GauchoAustralia2026-06-03King, Christopher A Esq QUALIFIED46Onyama Limba
1012Costa L ChuiSpain2026-06-03Truhlar And Truhlar Attys QUALIFIED34Asiya Javayant
1013Salvatore O BowleyRussia2026-06-07Buckley Miller Wright NEW39Ivan Magalhaes
1014Francesco M ChuiItaly2026-06-18Chapman, Ross E Esq UNQUALIFIED61Onyama Limba
1015Rodrigues A StensethGermany2026-06-19Chanay, Jeffrey A Esq PROPOSAL13Ivan Magalhaes
1016Rodrigues L KuskoCanada2026-06-14Buckley Miller Wright PROPOSAL54Amy Elsner
1017David K PoquetteUnited Kingdom2026-06-09Feltz Printing Service NEW38Anna Fali
1018Aruna B GarufiAustralia2026-06-27Truhlar And Truhlar Attys UNQUALIFIED2Stephen Shaw
1019Jefferson R FlosiCanada2026-06-29Truhlar And Truhlar Attys UNQUALIFIED91Ivan Magalhaes
1020Wickens S StensethItaly2026-06-19King, Christopher A Esq PROPOSAL93Elwin Sharvill
1021Emily T OldroydJapan2026-06-28Chanay, Jeffrey A Esq NEGOTIATION35Elwin Sharvill
1022Mayumi U IturbideCanada2026-05-31Morlong Associates RENEWAL79Elwin Sharvill
1023Jefferson S WhobreyIndia2026-06-22Printing Dimensions NEW57Asiya Javayant
1024Ivar F BriddickArgentina2026-06-05Morlong Associates QUALIFIED40Bernardo Dominic
1025Wickens S RutaCanada2026-06-23Benton, John B Jr RENEWAL12Stephen Shaw
1026Smith T FigeroaBrazil2026-06-16Dorl, James J Esq QUALIFIED18Xuxue Feng
1027Chavez S SchemmerItaly2026-06-19King, Christopher A Esq UNQUALIFIED53Onyama Limba
1028Ivar F CaldareraIndia2026-06-16Rangoni Of Florence QUALIFIED33Ivan Magalhaes
1029Wickens R FigeroaIndia2026-06-11Rangoni Of Florence NEGOTIATION6Ivan Magalhaes
1030Izzy Z MacleadRussia2026-06-05Commercial Press NEW12Onyama Limba
1031Ivar Q VenereAustralia2026-06-27Rangoni Of Florence QUALIFIED25Asiya Javayant
1032Ashley J AmigonFrance2026-06-08Feltz Printing Service RENEWAL13Stephen Shaw
1033Murillo I SchemmerItaly2026-06-29Chapman, Ross E Esq RENEWAL40Stephen Shaw
1034Ashley J GillianRussia2026-05-31Commercial Press RENEWAL72Elwin Sharvill
1035Leja T ButtArgentina2026-06-18Buckley Miller Wright NEW22Elwin Sharvill
1036Maisha A FollerFrance2026-06-12Rousseaux, Michael Esq RENEWAL24Elwin Sharvill
1037Julie C WaycottBrazil2026-06-11King, Christopher A Esq QUALIFIED97Anna Fali
1038Jones V IturbideSpain2026-06-28Chanay, Jeffrey A Esq PROPOSAL45Asiya Javayant
1039Sinclair O FerenczCanada2026-06-08Morlong Associates PROPOSAL24Xuxue Feng
1040Leja I BologniaAustralia2026-06-13Chapman, Ross E Esq QUALIFIED8Anna Fali
1041Francesco Z PerinBrazil2026-06-26King, Christopher A Esq PROPOSAL39Bernardo Dominic
1042Ivar V FlosiBrazil2026-06-29Buckley Miller Wright NEGOTIATION93Xuxue Feng
1043Darci M RulapaughItaly2026-06-17Buckley Miller Wright UNQUALIFIED40Ioni Bowcher
1044Ashley X WieserBrazil2026-06-17Chemel, James L Cpa NEGOTIATION62Ivan Magalhaes
1045Jeanfrancois Q GauchoArgentina2026-06-01Commercial Press UNQUALIFIED39Anna Fali
1046Izzy Z RimGermany2026-06-25Chapman, Ross E Esq NEW42Ivan Magalhaes
1047Darci L FlosiBrazil2026-06-15Buckley Miller Wright RENEWAL37Stephen Shaw
1048Greenwood G MorascaItaly2026-06-18Chemel, James L Cpa NEGOTIATION7Elwin Sharvill
1049Jefferson R PaprockiGermany2026-06-16Buckley Miller Wright PROPOSAL59Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Leja U CaldareraCanadaAsiya Javayant NEW
Darci Y FerenczSpainXuxue Feng PROPOSAL
Ashley Z TollnerGermanyBernardo Dominic UNQUALIFIED
Arvin S OldroydSpainAmy Elsner RENEWAL
Izzy L FollerItalyOnyama Limba PROPOSAL
Salvatore D RoysterAustraliaAsiya Javayant NEW
Stacey X SchemmerArgentinaStephen Shaw RENEWAL
Deepesh Y InouyeAustraliaAmy Elsner UNQUALIFIED
Arvin G ButtItalyXuxue Feng RENEWAL
Aika W StensethRussiaIvan Magalhaes NEGOTIATION
Morrow F SaylorsRussiaAnna Fali UNQUALIFIED
Maria L WieserItalyStephen Shaw UNQUALIFIED
Mayumi U KolmetzUnited KingdomBernardo Dominic QUALIFIED
Ivar E CampainUnited KingdomOnyama Limba UNQUALIFIED
Jefferson D SaylorsArgentinaXuxue Feng UNQUALIFIED
Kaitlin H ChuiItalyAnna Fali PROPOSAL
Octavia V MaletJapanIvan Magalhaes PROPOSAL
Johnson V BriddickCanadaElwin Sharvill RENEWAL
Isabel G WieserIndiaOnyama Limba PROPOSAL
Smith Z MaletFranceBernardo Dominic NEGOTIATION
Clifford G CaudyFranceElwin Sharvill NEGOTIATION
Murillo L WaycottSpainAnna Fali NEW
Cody G WhobreyFranceIvan Magalhaes QUALIFIED
Kadeem F GillianCanadaAnna Fali NEGOTIATION
Alejandro M FigeroaCanadaAnna Fali UNQUALIFIED
Claire R GlickJapanStephen Shaw QUALIFIED
Leon K CaldareraRussiaAsiya Javayant PROPOSAL
Ashley W OstroskyItalyElwin Sharvill PROPOSAL
Cody B FollerCanadaAmy Elsner NEW
James T OstroskyAustraliaXuxue Feng QUALIFIED
Leon Q PaprockiUnited KingdomStephen Shaw NEW
Maria P GauchoFranceIvan Magalhaes NEGOTIATION
Kadeem P GlickAustraliaAmy Elsner QUALIFIED
Ivar J BologniaItalyIoni Bowcher UNQUALIFIED
David U SergiAustraliaBernardo Dominic QUALIFIED
Morrow S SergiArgentinaAsiya Javayant NEW
Tony J GillianJapanOnyama Limba PROPOSAL
Ricardo W InouyeJapanStephen Shaw QUALIFIED
Julie V TollnerJapanElwin Sharvill NEGOTIATION
Ivar Y BriddickJapanOnyama Limba UNQUALIFIED
James E MacleadAustraliaAnna Fali UNQUALIFIED
David E ChuiCanadaXuxue Feng NEW
Juan W RulapaughJapanIvan Magalhaes NEW
Izzy O OldroydItalyIoni Bowcher NEGOTIATION
Tony I SaylorsJapanXuxue Feng NEGOTIATION
Alejandro R NickaRussiaBernardo Dominic RENEWAL
James B SaylorsRussiaXuxue Feng PROPOSAL
Izzy V SergiGermanyAnna Fali PROPOSAL
Leon Z KuskoFranceAnna Fali QUALIFIED
Juan C VocelkaIndiaAnna Fali UNQUALIFIED
Frozen Columns
Name
Wickens H Bolognia
Aika H Tollner
Francesco T Campain
Faith E Caudy
Octavia K Foller
Kadeem H Caudy
David M Ferencz
Wickens V Saylors
Clifford G Stockham
Jeanfrancois J Chui
Wickens N Foller
Isabel M Caldarera
Claire B Figeroa
Salvatore I Amigon
Smith P Schemmer
Greenwood G Malet
James W Campain
Juan H Morasca
Emily I Iturbide
Jeanfrancois O Ruta
Ivar B Paprocki
Arvin X Poquette
Costa H Slusarski
Octavia S Rim
Isabel E Oldroyd
Jeanfrancois X Foller
Nicolas V Whobrey
Jennifer I Stenseth
Isabel D Maclead
James S Rim
Chavez J Slusarski
Sinclair L Kusko
Deepesh R Darakjy
Ivar Z Rim
Claire S Poquette
Cody K Briddick
Morrow K Marrier
Clifford O Poquette
Isabel E Slusarski
Salvatore X Iturbide
Izzy J Venere
Emily V Ruta
Octavia E Whobrey
Tony W Malet
Alejandro H Flosi
Emily E Bowley
Costa V Ostrosky
Jennifer P Stockham
Silvio V Tollner
Smith C Glick
IdCountryDate
1000India2026-06-23
1001France2026-06-24
1002Germany2026-06-22
1003Japan2026-06-06
1004Japan2026-06-29
1005Canada2026-06-10
1006Australia2026-06-06
1007Brazil2026-06-17
1008Brazil2026-06-21
1009Italy2026-06-23
1010Italy2026-06-02
1011Germany2026-06-12
1012Australia2026-06-25
1013Italy2026-06-15
1014Canada2026-06-06
1015Germany2026-06-21
1016Spain2026-06-29
1017United Kingdom2026-06-07
1018Canada2026-06-28
1019Australia2026-06-20
1020Russia2026-06-05
1021Canada2026-06-27
1022Spain2026-06-15
1023Russia2026-06-12
1024India2026-06-15
1025Russia2026-06-12
1026Russia2026-06-02
1027Canada2026-06-13
1028Brazil2026-06-16
1029Japan2026-06-10
1030India2026-06-11
1031United Kingdom2026-06-15
1032Italy2026-06-25
1033France2026-06-15
1034Russia2026-06-21
1035Spain2026-06-10
1036Australia2026-06-10
1037Russia2026-06-10
1038Russia2026-06-14
1039Brazil2026-06-02
1040Argentina2026-06-28
1041Japan2026-06-06
1042Germany2026-06-08
1043Spain2026-06-09
1044Canada2026-06-12
1045Germany2026-06-22
1046Australia2026-06-29
1047Spain2026-06-23
1048Italy2026-06-27
1049Brazil2026-06-13

On-Demand Data

NameIdCountryDate
Adams Z Caudy1000Russia2026-06-27
Ashley I Campain1001Spain2026-06-14
Clifford R Glick1002Spain2026-06-24
Leon N Dilliard1003Japan2026-06-21
Claire R Garufi1004Australia2026-06-29
James Y Malet1005Brazil2026-06-24
Rodrigues Q Caudy1006Australia2026-06-04
Jefferson S Inouye1007United Kingdom2026-06-20
Antonio R Darakjy1008Australia2026-06-19
Alejandro V Gillian1009France2026-06-20
Misaki A Kusko1010France2026-06-04
Emily A Sergi1011Italy2026-06-17
Juan R Amigon1012Germany2026-06-26
Emily O Darakjy1013Argentina2026-06-07
Sinclair R Ruta1014Australia2026-06-02
Sinclair I Chui1015Canada2026-06-07
Murillo C Stockham1016Spain2026-06-19
Johnson R Bolognia1017Australia2026-06-06
Chavez C Caldarera1018Brazil2026-06-27
Stacey V Gillian1019Italy2026-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey W GlickArgentinaStephen Shaw RENEWAL
Juan C GlickFranceAsiya Javayant PROPOSAL
Emily U DarakjyCanadaIvan Magalhaes UNQUALIFIED
Wickens N GarufiGermanyIvan Magalhaes PROPOSAL
David A DarakjyRussiaStephen Shaw RENEWAL
Johnson S StensethGermanyIvan Magalhaes RENEWAL
Stacey E StockhamGermanyIvan Magalhaes NEGOTIATION
Maria U MorascaCanadaAnna Fali UNQUALIFIED
Misaki O GarufiIndiaIoni Bowcher NEW
Misaki C MorascaArgentinaOnyama Limba RENEWAL
Aruna R WieserIndiaIvan Magalhaes RENEWAL
Emily F SchemmerAustraliaIvan Magalhaes NEW
Silvio D AmigonArgentinaStephen Shaw QUALIFIED
Wickens B AlbaresRussiaAsiya Javayant RENEWAL
Aruna A ShinkoFranceIvan Magalhaes NEW
Nicolas I BologniaGermanyIvan Magalhaes NEGOTIATION
Tony U DilliardIndiaElwin Sharvill PROPOSAL
Leon J KuskoArgentinaAmy Elsner RENEWAL
Antonio M SlusarskiCanadaXuxue Feng NEGOTIATION
Arvin X DoeJapanElwin Sharvill PROPOSAL
Tony Y FerenczSpainElwin Sharvill NEGOTIATION
Juan V RulapaughIndiaElwin Sharvill NEW
Kaitlin H GlickItalyElwin Sharvill RENEWAL
Wickens F CaudyIndiaXuxue Feng UNQUALIFIED
Greenwood J PoquetteCanadaOnyama Limba RENEWAL
Kadeem A ChuiCanadaStephen Shaw NEW
Chavez S OstroskyAustraliaOnyama Limba PROPOSAL
Jefferson P PaprockiIndiaBernardo Dominic PROPOSAL
Kaitlin X SlusarskiArgentinaXuxue Feng NEGOTIATION
Chavez Q MorascaRussiaAmy Elsner RENEWAL
Cody G SlusarskiUnited KingdomIoni Bowcher QUALIFIED
Nicolas I DoeBrazilAnna Fali PROPOSAL
Nicolas N WaycottBrazilStephen Shaw NEW
Faith Q WhobreyBrazilIoni Bowcher NEGOTIATION
Silvio T GarufiAustraliaBernardo Dominic RENEWAL
Maisha U NestleBrazilElwin Sharvill PROPOSAL
Leja G WieserItalyIvan Magalhaes NEW
Octavia W AmigonUnited KingdomElwin Sharvill NEGOTIATION
Jennifer F GillianGermanyStephen Shaw RENEWAL
Arvin Q CaldareraRussiaIvan Magalhaes PROPOSAL

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