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
Aditya W FerenczCanadaAsiya Javayant UNQUALIFIED
Chavez C CampainAustraliaBernardo Dominic NEGOTIATION
Aika C GillianRussiaXuxue Feng QUALIFIED
Leon A BriddickAustraliaIvan Magalhaes UNQUALIFIED
Morrow N GillianRussiaAsiya Javayant NEW
Rodrigues Y PerinUnited KingdomAnna Fali PROPOSAL
Mayumi Z RoysterBrazilAsiya Javayant UNQUALIFIED
Johnson V StockhamArgentinaBernardo Dominic RENEWAL
Salvatore J ShinkoAustraliaElwin Sharvill PROPOSAL
Murillo S TollnerGermanyElwin Sharvill NEW
Aditya M SergiItalyXuxue Feng RENEWAL
Mayumi O CaudyArgentinaAsiya Javayant NEW
David Q FerenczIndiaBernardo Dominic NEW
Cody U KuskoArgentinaStephen Shaw PROPOSAL
Francesco P MaletCanadaBernardo Dominic RENEWAL
Johnson Z NickaAustraliaBernardo Dominic UNQUALIFIED
Chavez O CampainFranceIoni Bowcher RENEWAL
Deepesh T KolmetzCanadaAsiya Javayant PROPOSAL
Jeanfrancois Y KolmetzSpainAmy Elsner PROPOSAL
Octavia D StockhamFranceStephen Shaw NEW
Leon Z OstroskyGermanyAsiya Javayant UNQUALIFIED
Morrow Y TollnerGermanyIoni Bowcher NEW
Misaki E MaletRussiaAmy Elsner PROPOSAL
Ashley Y BowleyAustraliaAnna Fali NEGOTIATION
Emily W PoquetteSpainIvan Magalhaes NEW
Octavia X ChuiFranceStephen Shaw NEGOTIATION
Smith D BologniaSpainAsiya Javayant NEW
Aruna R OldroydIndiaIoni Bowcher NEW
Mayumi B NestleFranceIoni Bowcher RENEWAL
Cody D FlosiRussiaElwin Sharvill QUALIFIED
Claire X AlbaresArgentinaAnna Fali QUALIFIED
Tony M NickaAustraliaIoni Bowcher NEGOTIATION
Morrow G WaycottJapanAmy Elsner QUALIFIED
James L KuskoIndiaXuxue Feng NEW
Jones Y FerenczGermanyElwin Sharvill NEW
Kaitlin F InouyeItalyAnna Fali PROPOSAL
Ashley B MacleadCanadaAmy Elsner UNQUALIFIED
Johnson P MorascaAustraliaBernardo Dominic NEGOTIATION
Munro X WieserUnited KingdomAnna Fali NEGOTIATION
Aika Y GauchoIndiaXuxue Feng PROPOSAL
Ricardo Z RoysterArgentinaBernardo Dominic UNQUALIFIED
James F FerenczCanadaAsiya Javayant PROPOSAL
Adams N WaycottUnited KingdomElwin Sharvill QUALIFIED
Jones R DarakjyRussiaBernardo Dominic NEGOTIATION
Kadeem T RoysterGermanyBernardo Dominic NEGOTIATION
Ivar W DoeCanadaXuxue Feng QUALIFIED
Aditya W VenereIndiaOnyama Limba UNQUALIFIED
Aditya W FigeroaUnited KingdomIoni Bowcher QUALIFIED
Leon K PaprockiIndiaOnyama Limba QUALIFIED
Stacey Q FlosiIndiaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Tony Y GillianJapanAmy Elsner PROPOSAL
Jeanfrancois X KuskoJapanAsiya Javayant UNQUALIFIED
Ricardo J SchemmerUnited KingdomIoni Bowcher NEW
Claire D ChuiUnited KingdomOnyama Limba NEW
Julie B FollerUnited KingdomIoni Bowcher QUALIFIED
Adams J MaletIndiaXuxue Feng UNQUALIFIED
Aditya W MaletIndiaIoni Bowcher UNQUALIFIED
Adams V RutaAustraliaAsiya Javayant UNQUALIFIED
Costa P ButtJapanStephen Shaw UNQUALIFIED
Maisha M GlickJapanAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford Q GauchoCanada2026-04-03King, Christopher A Esq QUALIFIED62Elwin Sharvill
1001Tony M ButtRussia2026-04-16Commercial Press PROPOSAL31Stephen Shaw
1002Octavia R PoquetteIndia2026-04-09Benton, John B Jr NEW14Anna Fali
1003Chavez O OldroydIndia2026-04-26Chemel, James L Cpa QUALIFIED6Xuxue Feng
1004Izzy O PerinItaly2026-04-02Truhlar And Truhlar Attys UNQUALIFIED39Xuxue Feng
1005Mayumi S MaletSpain2026-04-07Commercial Press NEW22Elwin Sharvill
1006Julie R IturbideGermany2026-04-25Dorl, James J Esq RENEWAL13Xuxue Feng
1007Claire R SaylorsCanada2026-04-02Morlong Associates NEGOTIATION59Ioni Bowcher
1008Aruna A FerenczRussia2026-04-04Printing Dimensions RENEWAL9Elwin Sharvill
1009Antonio D InouyeItaly2026-04-11King, Christopher A Esq QUALIFIED61Xuxue Feng
1010Nicolas R NestleFrance2026-04-05Printing Dimensions NEGOTIATION86Amy Elsner
1011Maria I WhobreyCanada2026-04-09Dorl, James J Esq NEW91Stephen Shaw
1012Clifford F WhobreyCanada2026-04-21Feiner Bros QUALIFIED40Stephen Shaw
1013Antonio C MacleadRussia2026-04-21Feltz Printing Service RENEWAL1Asiya Javayant
1014Aika U GlickSpain2026-04-07Rangoni Of Florence QUALIFIED67Ioni Bowcher
1015Chavez Z IturbideUnited Kingdom2026-04-11Chanay, Jeffrey A Esq UNQUALIFIED56Xuxue Feng
1016David A PerinJapan2026-04-07Rousseaux, Michael Esq UNQUALIFIED54Onyama Limba
1017Julie H OldroydJapan2026-04-22Truhlar And Truhlar Attys NEW85Onyama Limba
1018Kadeem Q MorascaGermany2026-04-06Feltz Printing Service RENEWAL60Ioni Bowcher
1019Rodrigues A PerinUnited Kingdom2026-04-06Chapman, Ross E Esq RENEWAL73Bernardo Dominic
1020Sinclair O NestleFrance2026-04-30Feltz Printing Service PROPOSAL16Amy Elsner
1021Jeanfrancois G OstroskyAustralia2026-04-05Buckley Miller Wright PROPOSAL63Stephen Shaw
1022Alejandro U GarufiRussia2026-04-03King, Christopher A Esq NEGOTIATION30Ivan Magalhaes
1023Costa F BriddickArgentina2026-04-03Morlong Associates QUALIFIED27Onyama Limba
1024Rodrigues O StensethSpain2026-04-08Commercial Press NEW43Amy Elsner
1025Costa B BowleyRussia2026-04-10Dorl, James J Esq QUALIFIED52Ioni Bowcher
1026Ricardo E WieserItaly2026-04-18Feiner Bros NEW49Elwin Sharvill
1027Faith A PaprockiBrazil2026-04-09Feiner Bros RENEWAL5Bernardo Dominic
1028Munro I FollerArgentina2026-04-03Dorl, James J Esq NEW39Bernardo Dominic
1029Claire K SaylorsAustralia2026-04-20Commercial Press UNQUALIFIED29Anna Fali
1030Aika W InouyeSpain2026-04-24Benton, John B Jr QUALIFIED34Onyama Limba
1031Wickens J SaylorsIndia2026-04-08Benton, John B Jr NEGOTIATION63Xuxue Feng
1032Kadeem D FlosiUnited Kingdom2026-04-08Feiner Bros RENEWAL72Onyama Limba
1033Faith U NestleItaly2026-04-06Printing Dimensions PROPOSAL92Bernardo Dominic
1034Kaitlin C DarakjyIndia2026-04-17Chemel, James L Cpa RENEWAL14Ivan Magalhaes
1035Leon Q PoquetteIndia2026-04-26Printing Dimensions PROPOSAL45Xuxue Feng
1036James V OstroskyIndia2026-04-29Rousseaux, Michael Esq QUALIFIED84Amy Elsner
1037Salvatore D GillianIndia2026-04-08Buckley Miller Wright NEGOTIATION87Ioni Bowcher
1038Ricardo P GarufiJapan2026-04-26Truhlar And Truhlar Attys UNQUALIFIED74Asiya Javayant
1039Maisha X RoysterIndia2026-04-11Buckley Miller Wright UNQUALIFIED6Xuxue Feng
1040Wickens R OstroskyUnited Kingdom2026-04-05Dorl, James J Esq PROPOSAL60Ivan Magalhaes
1041Alejandro X MaletBrazil2026-04-22Chemel, James L Cpa UNQUALIFIED80Amy Elsner
1042Stacey W DilliardArgentina2026-04-17Commercial Press UNQUALIFIED40Stephen Shaw
1043Jones R MaletIndia2026-04-05Dorl, James J Esq UNQUALIFIED72Elwin Sharvill
1044Kaitlin T RoysterItaly2026-04-21Chemel, James L Cpa QUALIFIED72Bernardo Dominic
1045Alejandro D StensethJapan2026-04-03Commercial Press NEGOTIATION46Bernardo Dominic
1046Johnson I WaycottJapan2026-04-20Rangoni Of Florence NEW63Ioni Bowcher
1047Aika T NickaJapan2026-04-11Rangoni Of Florence QUALIFIED49Ivan Magalhaes
1048Clifford R VenereAustralia2026-04-02Chanay, Jeffrey A Esq PROPOSAL24Xuxue Feng
1049Chavez E CaudyArgentina2026-04-15Rangoni Of Florence NEW92Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Cody E FerenczFranceIvan Magalhaes NEGOTIATION
Darci C VocelkaIndiaElwin Sharvill NEGOTIATION
Stacey O KolmetzCanadaStephen Shaw QUALIFIED
Misaki V WhobreyIndiaAnna Fali NEW
Ivar K SaylorsArgentinaAmy Elsner PROPOSAL
Misaki W ShinkoItalyAnna Fali NEW
Ashley C StensethFranceOnyama Limba NEGOTIATION
Munro R AmigonItalyOnyama Limba UNQUALIFIED
Cody R ShinkoRussiaBernardo Dominic NEGOTIATION
Adams J WaycottGermanyIoni Bowcher NEGOTIATION
Wickens P GlickRussiaAnna Fali PROPOSAL
Murillo L MacleadBrazilElwin Sharvill QUALIFIED
Darci Z RutaItalyAmy Elsner NEGOTIATION
Stacey I OstroskyAustraliaAsiya Javayant QUALIFIED
Kaitlin N CaudyBrazilAmy Elsner RENEWAL
Clifford R BriddickGermanyIoni Bowcher NEW
Emily J WhobreyItalyElwin Sharvill QUALIFIED
Leja D SergiGermanyIvan Magalhaes RENEWAL
Morrow S AlbaresBrazilStephen Shaw NEW
Kaitlin T ChuiArgentinaBernardo Dominic NEW
Misaki O FlosiFranceAmy Elsner RENEWAL
Leon W PaprockiItalyElwin Sharvill QUALIFIED
Kadeem L KolmetzAustraliaStephen Shaw NEGOTIATION
Claire F KolmetzArgentinaBernardo Dominic NEGOTIATION
Chavez A IturbideJapanAsiya Javayant NEW
Ashley B PoquetteJapanIvan Magalhaes NEGOTIATION
Munro A DarakjyItalyIoni Bowcher QUALIFIED
Faith H FerenczSpainIoni Bowcher NEW
Aika L IturbideAustraliaIvan Magalhaes NEW
Ashley L DarakjyArgentinaOnyama Limba RENEWAL
Julie K BowleyUnited KingdomElwin Sharvill QUALIFIED
Costa Y PoquetteFranceStephen Shaw NEGOTIATION
Francesco T IturbideUnited KingdomStephen Shaw QUALIFIED
Jefferson J StensethItalyOnyama Limba NEGOTIATION
Faith H StensethSpainStephen Shaw PROPOSAL
Smith E BowleyGermanyIvan Magalhaes UNQUALIFIED
Johnson V SaylorsRussiaAnna Fali NEGOTIATION
Cody R WaycottFranceStephen Shaw RENEWAL
Murillo Z StensethFranceAsiya Javayant QUALIFIED
Mayumi V VenereAustraliaOnyama Limba RENEWAL
Alejandro S SlusarskiFranceStephen Shaw UNQUALIFIED
James E BologniaUnited KingdomAnna Fali NEGOTIATION
Leja G MaletArgentinaOnyama Limba RENEWAL
Claire U ShinkoSpainStephen Shaw NEGOTIATION
Jeanfrancois D CampainRussiaBernardo Dominic RENEWAL
Sinclair K PaprockiSpainBernardo Dominic RENEWAL
Jennifer O RimGermanyAsiya Javayant UNQUALIFIED
Maria Y MorascaJapanOnyama Limba RENEWAL
Kadeem C RutaAustraliaAmy Elsner RENEWAL
Ashley Z PoquetteJapanAmy Elsner RENEWAL
Frozen Columns
Name
Jones T Butt
Juan M Ruta
Johnson W Rim
Deepesh W Albares
Murillo V Sergi
Kaitlin M Campain
Stacey H Bolognia
Smith C Saylors
Munro F Malet
James K Waycott
Greenwood Z Dilliard
Mujtaba L Bolognia
Aika R Foller
Clifford C Ruta
Jefferson K Stenseth
Aika H Schemmer
Francesco B Saylors
Jefferson U Kusko
Cody P Gaucho
Arvin F Tollner
Aditya K Malet
Emily K Briddick
Silvio X Stenseth
Francesco S Caudy
Ashley D Kusko
Juan Q Whobrey
Misaki S Paprocki
Rodrigues B Rim
Adams I Foller
Alejandro I Royster
Ricardo H Perin
Sinclair I Caudy
Wickens V Oldroyd
Ricardo I Figeroa
Aika Z Amigon
Jennifer A Doe
Darci X Glick
Wickens L Malet
Ricardo H Vocelka
Kaitlin K Figeroa
Kaitlin P Marrier
Juan T Nicka
Octavia Z Bolognia
Clifford J Rulapaugh
Rodrigues Z Nestle
Kaitlin S Inouye
Cody R Perin
Adams H Marrier
Munro B Inouye
Antonio R Bowley
IdCountryDate
1000Brazil2026-04-30
1001Germany2026-04-14
1002Australia2026-04-16
1003United Kingdom2026-04-19
1004United Kingdom2026-04-22
1005Australia2026-04-09
1006France2026-04-13
1007Canada2026-04-13
1008Italy2026-04-18
1009Germany2026-04-23
1010Canada2026-04-03
1011Germany2026-04-11
1012Russia2026-04-19
1013Argentina2026-04-30
1014Spain2026-04-04
1015Italy2026-05-01
1016Argentina2026-04-06
1017Italy2026-04-11
1018Italy2026-05-01
1019Germany2026-04-07
1020Brazil2026-04-06
1021India2026-04-21
1022India2026-04-07
1023Japan2026-04-04
1024Argentina2026-04-07
1025Brazil2026-04-02
1026Japan2026-04-05
1027United Kingdom2026-04-17
1028United Kingdom2026-04-28
1029Argentina2026-04-28
1030Brazil2026-04-16
1031Germany2026-04-07
1032Russia2026-04-05
1033Italy2026-04-12
1034United Kingdom2026-04-10
1035Canada2026-04-16
1036Japan2026-04-19
1037Argentina2026-04-30
1038Japan2026-04-23
1039Argentina2026-04-16
1040Australia2026-04-12
1041Japan2026-04-05
1042Canada2026-04-05
1043United Kingdom2026-04-26
1044Russia2026-04-02
1045Russia2026-04-14
1046India2026-05-01
1047Brazil2026-04-19
1048France2026-04-07
1049Canada2026-04-11

On-Demand Data

NameIdCountryDate
Juan F Gillian1000Germany2026-04-19
Aika D Schemmer1001Germany2026-04-24
Chavez D Darakjy1002Canada2026-04-08
Faith C Dilliard1003Canada2026-04-30
Darci O Waycott1004Brazil2026-04-02
Jennifer X Foller1005India2026-04-30
Jennifer J Stockham1006France2026-04-21
Kaitlin Q Ostrosky1007France2026-04-10
Salvatore A Stockham1008Russia2026-04-16
Munro J Morasca1009France2026-04-15
Aditya A Poquette1010Brazil2026-05-01
Johnson Q Poquette1011Canada2026-04-08
Aruna S Paprocki1012United Kingdom2026-04-18
Juan A Perin1013Germany2026-04-24
Misaki F Royster1014Italy2026-04-09
Kadeem W Slusarski1015Brazil2026-04-09
Antonio Z Inouye1016Canada2026-04-12
Tony S Malet1017Argentina2026-04-22
Clifford P Rulapaugh1018Germany2026-04-13
Francesco D Slusarski1019Australia2026-04-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha B VocelkaRussiaBernardo Dominic PROPOSAL
Nicolas R DoeRussiaIvan Magalhaes NEW
Ashley J PerinSpainXuxue Feng UNQUALIFIED
Claire C GauchoBrazilElwin Sharvill PROPOSAL
Izzy G RoysterRussiaOnyama Limba QUALIFIED
Johnson U WieserBrazilXuxue Feng QUALIFIED
Tony U BriddickIndiaAmy Elsner NEGOTIATION
Greenwood Q PoquetteSpainBernardo Dominic UNQUALIFIED
Emily O SergiArgentinaBernardo Dominic UNQUALIFIED
Salvatore O StockhamJapanAmy Elsner RENEWAL
Francesco L CaldareraItalyStephen Shaw PROPOSAL
Arvin S TollnerUnited KingdomAsiya Javayant NEW
Mayumi B SaylorsArgentinaXuxue Feng UNQUALIFIED
Munro N MarrierBrazilAsiya Javayant NEGOTIATION
Tony S RutaAustraliaAsiya Javayant PROPOSAL
Smith Y OstroskyIndiaElwin Sharvill QUALIFIED
Salvatore H TollnerBrazilAsiya Javayant RENEWAL
Costa D VocelkaArgentinaStephen Shaw RENEWAL
Mayumi B VenereFranceAmy Elsner NEW
Alejandro L DilliardGermanyIvan Magalhaes RENEWAL
Smith U MarrierBrazilOnyama Limba NEW
Juan U ButtAustraliaXuxue Feng NEGOTIATION
Wickens D SaylorsArgentinaAnna Fali RENEWAL
Maria W OldroydIndiaStephen Shaw NEW
Juan I RimJapanIoni Bowcher QUALIFIED
Kaitlin V GlickBrazilIvan Magalhaes NEGOTIATION
Kaitlin C SergiRussiaXuxue Feng UNQUALIFIED
Ashley V IturbideSpainIoni Bowcher NEW
Mayumi N KolmetzUnited KingdomIoni Bowcher PROPOSAL
Juan O NestleFranceAsiya Javayant PROPOSAL
Jennifer C VocelkaFranceAmy Elsner UNQUALIFIED
Kaitlin O BologniaAustraliaXuxue Feng NEW
Johnson W RoysterItalyStephen Shaw QUALIFIED
Juan P FollerArgentinaAnna Fali NEGOTIATION
Greenwood Y SaylorsRussiaElwin Sharvill PROPOSAL
Johnson E TollnerItalyElwin Sharvill UNQUALIFIED
Francesco P BologniaFranceIoni Bowcher QUALIFIED
Darci F NickaAustraliaAsiya Javayant UNQUALIFIED
Adams Z TollnerAustraliaOnyama Limba PROPOSAL
Ivar G BriddickBrazilXuxue Feng 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.