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
Silvio B RimBrazilOnyama Limba UNQUALIFIED
Stacey X TollnerUnited KingdomAmy Elsner NEW
Rodrigues L PoquetteItalyAsiya Javayant UNQUALIFIED
Greenwood B NickaArgentinaIvan Magalhaes UNQUALIFIED
Adams Q NickaGermanyAnna Fali RENEWAL
Jennifer S KolmetzAustraliaAmy Elsner UNQUALIFIED
Sinclair M ChuiCanadaAmy Elsner RENEWAL
Jefferson V AmigonAustraliaIvan Magalhaes QUALIFIED
Johnson P FerenczGermanyAnna Fali UNQUALIFIED
James X CampainItalyXuxue Feng NEGOTIATION
Jefferson F WieserFranceOnyama Limba NEW
Kadeem U DoeAustraliaAsiya Javayant PROPOSAL
Wickens F GillianSpainOnyama Limba PROPOSAL
Ivar D OstroskyCanadaIoni Bowcher QUALIFIED
Leon H DoeJapanXuxue Feng NEW
Wickens G MaletIndiaAnna Fali UNQUALIFIED
Maisha J PaprockiAustraliaXuxue Feng NEW
Juan G GlickRussiaOnyama Limba NEGOTIATION
Adams R ButtItalyIvan Magalhaes NEW
Tony C WieserIndiaAnna Fali UNQUALIFIED
Misaki J RimArgentinaStephen Shaw UNQUALIFIED
Jefferson F WhobreyBrazilAnna Fali NEGOTIATION
Morrow B InouyeSpainOnyama Limba RENEWAL
Izzy L WaycottItalyOnyama Limba PROPOSAL
Jennifer G VocelkaBrazilIoni Bowcher QUALIFIED
Maria O StensethAustraliaAnna Fali QUALIFIED
Aditya J VocelkaCanadaElwin Sharvill UNQUALIFIED
Mujtaba A OldroydFranceOnyama Limba UNQUALIFIED
Julie E VenereAustraliaAmy Elsner NEW
Aruna C VocelkaFranceXuxue Feng NEW
Ashley E KolmetzJapanElwin Sharvill PROPOSAL
Octavia B WhobreyBrazilStephen Shaw UNQUALIFIED
Jennifer H StockhamItalyIvan Magalhaes PROPOSAL
Rodrigues N BowleyIndiaAmy Elsner UNQUALIFIED
Mayumi T OldroydGermanyAsiya Javayant NEW
Tony I WaycottUnited KingdomIvan Magalhaes NEW
Stacey Z IturbideFranceElwin Sharvill UNQUALIFIED
Jeanfrancois O GarufiFranceOnyama Limba QUALIFIED
Antonio B ChuiFranceIoni Bowcher QUALIFIED
Julie C CampainIndiaXuxue Feng RENEWAL
Aditya A OldroydItalyAsiya Javayant RENEWAL
Nicolas N TollnerGermanyIoni Bowcher NEW
Alejandro K KuskoUnited KingdomAnna Fali RENEWAL
Jeanfrancois F OldroydGermanyIoni Bowcher NEGOTIATION
James C IturbideAustraliaAmy Elsner PROPOSAL
Jennifer C RulapaughSpainAsiya Javayant UNQUALIFIED
Tony X MacleadAustraliaOnyama Limba PROPOSAL
Maisha G MacleadGermanyAnna Fali NEW
Mayumi D ButtItalyIoni Bowcher PROPOSAL
Wickens V CaldareraCanadaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Leon U DoeRussiaAnna Fali PROPOSAL
Juan H WieserCanadaAsiya Javayant NEGOTIATION
Mujtaba D ShinkoGermanyIvan Magalhaes NEW
Emily S OldroydArgentinaAsiya Javayant PROPOSAL
Salvatore N FollerAustraliaAsiya Javayant RENEWAL
Jones C GarufiGermanyOnyama Limba UNQUALIFIED
Alejandro I PaprockiBrazilAsiya Javayant PROPOSAL
Jeanfrancois S AlbaresBrazilIoni Bowcher UNQUALIFIED
Jones S BriddickSpainAnna Fali RENEWAL
Salvatore M GarufiFranceIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia E OstroskyBrazil2026-04-12Buckley Miller Wright NEW12Ivan Magalhaes
1001Arvin M BriddickArgentina2026-04-05King, Christopher A Esq UNQUALIFIED71Amy Elsner
1002Jones T BowleyItaly2026-04-24Chapman, Ross E Esq UNQUALIFIED56Ivan Magalhaes
1003Mayumi T RimFrance2026-04-05Benton, John B Jr NEGOTIATION48Ioni Bowcher
1004Smith Z MaletAustralia2026-04-14Chanay, Jeffrey A Esq QUALIFIED48Xuxue Feng
1005Jefferson G RimUnited Kingdom2026-04-24Benton, John B Jr QUALIFIED14Xuxue Feng
1006Silvio Y WaycottCanada2026-04-17Feltz Printing Service RENEWAL22Stephen Shaw
1007Jefferson S CaudyItaly2026-04-07Rousseaux, Michael Esq RENEWAL39Bernardo Dominic
1008Munro E SchemmerGermany2026-04-15Morlong Associates RENEWAL91Stephen Shaw
1009Deepesh E GillianBrazil2026-05-04Morlong Associates PROPOSAL5Xuxue Feng
1010Murillo G RutaGermany2026-04-16Dorl, James J Esq NEGOTIATION19Xuxue Feng
1011Ricardo B NickaAustralia2026-04-14Printing Dimensions PROPOSAL75Elwin Sharvill
1012David U OstroskyGermany2026-04-21Buckley Miller Wright QUALIFIED76Stephen Shaw
1013Greenwood O FollerIndia2026-05-03King, Christopher A Esq UNQUALIFIED83Anna Fali
1014Ivar I BriddickRussia2026-04-27Chapman, Ross E Esq NEW62Onyama Limba
1015Maisha B KolmetzSpain2026-04-13King, Christopher A Esq RENEWAL13Stephen Shaw
1016Deepesh C BologniaUnited Kingdom2026-04-14Benton, John B Jr UNQUALIFIED0Asiya Javayant
1017Claire Z DilliardGermany2026-04-27Commercial Press NEGOTIATION47Stephen Shaw
1018David D MorascaRussia2026-04-17Commercial Press NEW89Stephen Shaw
1019Aika O SchemmerFrance2026-04-11King, Christopher A Esq PROPOSAL94Ioni Bowcher
1020David V WieserAustralia2026-04-21Printing Dimensions NEGOTIATION95Xuxue Feng
1021Emily P MaletAustralia2026-04-22Rousseaux, Michael Esq PROPOSAL63Anna Fali
1022Mujtaba F NickaCanada2026-04-27Chemel, James L Cpa NEGOTIATION45Amy Elsner
1023Isabel I KuskoCanada2026-04-09Buckley Miller Wright RENEWAL30Asiya Javayant
1024David Z StensethItaly2026-04-20Feltz Printing Service NEGOTIATION73Asiya Javayant
1025Wickens Z OstroskyFrance2026-04-14Chanay, Jeffrey A Esq QUALIFIED85Stephen Shaw
1026Johnson N ShinkoIndia2026-04-18Chemel, James L Cpa PROPOSAL57Asiya Javayant
1027Rodrigues Y RoysterIndia2026-04-14Feiner Bros PROPOSAL3Bernardo Dominic
1028Adams F WieserFrance2026-04-21Buckley Miller Wright QUALIFIED6Onyama Limba
1029Leon R FerenczAustralia2026-04-29Feltz Printing Service PROPOSAL68Amy Elsner
1030Sinclair I BriddickItaly2026-04-25Truhlar And Truhlar Attys RENEWAL32Onyama Limba
1031Kadeem F FlosiIndia2026-04-05Chapman, Ross E Esq QUALIFIED17Elwin Sharvill
1032Chavez W WhobreyRussia2026-04-26King, Christopher A Esq NEW80Elwin Sharvill
1033Stacey N NestleIndia2026-04-13Commercial Press NEW80Asiya Javayant
1034Costa Y GarufiFrance2026-04-12Buckley Miller Wright QUALIFIED80Asiya Javayant
1035Stacey V RutaUnited Kingdom2026-04-26Feltz Printing Service NEW30Xuxue Feng
1036Smith V FigeroaAustralia2026-04-10Rangoni Of Florence QUALIFIED46Xuxue Feng
1037Aika H RulapaughBrazil2026-04-11Rangoni Of Florence NEGOTIATION76Onyama Limba
1038Mujtaba J SergiFrance2026-04-10Feltz Printing Service PROPOSAL68Onyama Limba
1039Jeanfrancois C DilliardIndia2026-05-01Printing Dimensions PROPOSAL98Asiya Javayant
1040Faith R PaprockiItaly2026-04-26Rousseaux, Michael Esq NEW27Anna Fali
1041Izzy G CaldareraIndia2026-04-11King, Christopher A Esq NEW83Elwin Sharvill
1042Francesco U NickaGermany2026-04-30Feltz Printing Service UNQUALIFIED23Xuxue Feng
1043Wickens F StensethUnited Kingdom2026-04-28Chanay, Jeffrey A Esq NEW27Asiya Javayant
1044Greenwood X RutaUnited Kingdom2026-04-15Chemel, James L Cpa NEGOTIATION72Asiya Javayant
1045Stacey N CampainAustralia2026-04-18Morlong Associates PROPOSAL36Ivan Magalhaes
1046Nicolas T SergiItaly2026-04-16Buckley Miller Wright UNQUALIFIED64Xuxue Feng
1047Arvin B SergiCanada2026-04-29Rangoni Of Florence PROPOSAL18Amy Elsner
1048Jefferson K FollerRussia2026-05-04Truhlar And Truhlar Attys PROPOSAL72Elwin Sharvill
1049Tony W KolmetzRussia2026-05-04Feiner Bros PROPOSAL16Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Tony A VenereIndiaXuxue Feng RENEWAL
Aditya A BowleyItalyAsiya Javayant PROPOSAL
Ricardo A RimSpainAnna Fali NEGOTIATION
Murillo E GarufiSpainElwin Sharvill QUALIFIED
Morrow V WieserIndiaOnyama Limba NEW
Octavia K FlosiFranceXuxue Feng NEGOTIATION
Aditya R PaprockiArgentinaOnyama Limba QUALIFIED
Maisha G BriddickJapanBernardo Dominic NEW
Claire E DoeUnited KingdomXuxue Feng UNQUALIFIED
Aruna X KolmetzCanadaBernardo Dominic QUALIFIED
Tony R DarakjyAustraliaAmy Elsner NEGOTIATION
Ricardo S BriddickIndiaXuxue Feng UNQUALIFIED
Leja A MaletJapanAsiya Javayant RENEWAL
James I GillianBrazilIvan Magalhaes NEW
Jefferson Q RutaJapanOnyama Limba QUALIFIED
Darci U FerenczAustraliaXuxue Feng UNQUALIFIED
Sinclair O AlbaresFranceIvan Magalhaes UNQUALIFIED
Ivar D InouyeRussiaIoni Bowcher NEW
Leja C InouyeIndiaIoni Bowcher PROPOSAL
Octavia S FigeroaSpainXuxue Feng QUALIFIED
Wickens M ChuiItalyOnyama Limba RENEWAL
Kadeem W NickaCanadaElwin Sharvill RENEWAL
Aika C OldroydCanadaBernardo Dominic PROPOSAL
Adams S ChuiIndiaAnna Fali QUALIFIED
Leon C BriddickGermanyAnna Fali RENEWAL
Chavez F SlusarskiRussiaIoni Bowcher RENEWAL
Silvio Y DilliardJapanAnna Fali PROPOSAL
Morrow P RimRussiaIvan Magalhaes NEW
Nicolas B MarrierGermanyOnyama Limba UNQUALIFIED
Mujtaba F SaylorsGermanyAnna Fali NEGOTIATION
Aruna X ChuiItalyAsiya Javayant NEW
Clifford W CampainBrazilAmy Elsner NEW
Ricardo V SchemmerCanadaOnyama Limba NEGOTIATION
Salvatore G CampainItalyAsiya Javayant PROPOSAL
Octavia M CaldareraRussiaAnna Fali NEW
Leon R NickaAustraliaXuxue Feng UNQUALIFIED
Rodrigues I GauchoJapanAsiya Javayant RENEWAL
Sinclair P RimBrazilAsiya Javayant NEGOTIATION
Mayumi V SaylorsGermanyXuxue Feng QUALIFIED
Mayumi Z CaudyJapanIvan Magalhaes NEGOTIATION
Maisha F BriddickArgentinaStephen Shaw QUALIFIED
Rodrigues I OstroskyBrazilElwin Sharvill UNQUALIFIED
Emily U WieserSpainOnyama Limba NEW
Johnson W IturbideArgentinaIvan Magalhaes PROPOSAL
Adams V FollerArgentinaElwin Sharvill PROPOSAL
Wickens T KuskoItalyXuxue Feng UNQUALIFIED
Arvin E RulapaughFranceAmy Elsner PROPOSAL
Chavez W WieserSpainAsiya Javayant NEGOTIATION
Wickens X BologniaAustraliaIvan Magalhaes NEGOTIATION
Adams V GlickSpainIoni Bowcher PROPOSAL
Frozen Columns
Name
Arvin O Stenseth
Claire M Waycott
Octavia P Inouye
Ivar E Flosi
Ashley I Whobrey
Costa L Bowley
Leon G Royster
Julie B Marrier
Mayumi H Perin
Misaki R Glick
Jennifer D Paprocki
Wickens W Gaucho
Munro H Royster
Isabel W Caudy
Wickens B Caldarera
James Z Gaucho
Leja P Saylors
Jeanfrancois Q Shinko
Munro K Stockham
Aika E Glick
David F Malet
Nicolas Z Saylors
Antonio E Paprocki
Emily R Amigon
Tony F Saylors
Clifford F Campain
Chavez B Nestle
Smith V Rim
Leon U Tollner
Salvatore S Marrier
Ricardo E Kusko
Francesco S Foller
Nicolas N Rulapaugh
Mujtaba K Vocelka
Wickens J Saylors
Morrow Q Kolmetz
Arvin R Paprocki
Leja L Morasca
James R Figeroa
Leon Y Ruta
Kaitlin Q Campain
Aruna W Inouye
Kadeem F Whobrey
Isabel N Sergi
Ashley I Glick
Jeanfrancois W Slusarski
Jones O Wieser
Ricardo F Wieser
Sinclair K Darakjy
Greenwood O Rulapaugh
IdCountryDate
1000Italy2026-04-30
1001Argentina2026-04-14
1002Spain2026-04-22
1003Italy2026-04-11
1004France2026-04-06
1005Australia2026-05-03
1006Argentina2026-04-14
1007Russia2026-04-30
1008Germany2026-04-24
1009Spain2026-04-05
1010Canada2026-04-30
1011Italy2026-04-15
1012Argentina2026-05-03
1013Japan2026-04-06
1014India2026-04-19
1015Russia2026-05-01
1016Italy2026-04-29
1017Australia2026-04-05
1018Canada2026-04-25
1019India2026-04-16
1020Brazil2026-04-12
1021Russia2026-04-18
1022Australia2026-05-01
1023India2026-04-30
1024United Kingdom2026-04-10
1025Germany2026-04-21
1026India2026-05-02
1027Australia2026-05-01
1028Japan2026-04-05
1029France2026-04-09
1030France2026-04-11
1031Australia2026-04-30
1032Japan2026-04-21
1033Germany2026-04-25
1034Canada2026-04-19
1035Spain2026-05-02
1036Argentina2026-05-01
1037Germany2026-04-07
1038Australia2026-04-18
1039Brazil2026-05-02
1040Germany2026-04-23
1041Spain2026-04-27
1042Japan2026-04-12
1043Russia2026-04-29
1044Italy2026-04-20
1045Spain2026-04-19
1046India2026-04-11
1047France2026-04-25
1048Germany2026-04-06
1049United Kingdom2026-05-02

On-Demand Data

NameIdCountryDate
Clifford B Foller1000Russia2026-04-12
Munro A Nicka1001India2026-05-02
Rodrigues Y Morasca1002Australia2026-04-19
Kadeem I Doe1003Japan2026-04-23
Antonio Z Slusarski1004Russia2026-04-25
Arvin Y Garufi1005Russia2026-04-10
Ricardo E Stenseth1006Canada2026-04-12
Murillo E Foller1007Brazil2026-04-19
Arvin O Iturbide1008Canada2026-04-27
Smith A Caldarera1009Canada2026-04-22
Aruna B Slusarski1010Spain2026-04-24
Isabel D Butt1011India2026-04-17
Morrow G Inouye1012Italy2026-04-22
Costa G Royster1013Spain2026-04-08
Cody P Stockham1014Argentina2026-04-08
Juan W Vocelka1015Germany2026-04-13
Darci G Amigon1016United Kingdom2026-04-19
Silvio O Iturbide1017United Kingdom2026-04-11
Octavia A Ruta1018Japan2026-04-20
Ivar R Maclead1019Brazil2026-04-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia W MarrierArgentinaAnna Fali UNQUALIFIED
Salvatore C KolmetzSpainIvan Magalhaes UNQUALIFIED
Kaitlin I InouyeArgentinaStephen Shaw UNQUALIFIED
Emily F RimBrazilXuxue Feng NEGOTIATION
Antonio E RimItalyOnyama Limba NEGOTIATION
Kadeem T ShinkoUnited KingdomIoni Bowcher QUALIFIED
Misaki B RulapaughBrazilElwin Sharvill UNQUALIFIED
Faith I BriddickArgentinaElwin Sharvill NEW
Silvio Z MarrierIndiaStephen Shaw PROPOSAL
Chavez W KolmetzIndiaElwin Sharvill PROPOSAL
Munro K PerinFranceIoni Bowcher UNQUALIFIED
Murillo X PoquetteRussiaStephen Shaw NEW
Greenwood S SergiCanadaXuxue Feng NEGOTIATION
Ricardo P CaudyRussiaAmy Elsner QUALIFIED
Murillo Y GillianArgentinaStephen Shaw NEGOTIATION
Clifford I MacleadFranceIvan Magalhaes NEGOTIATION
Isabel U NickaItalyOnyama Limba NEGOTIATION
Munro G RoysterIndiaStephen Shaw NEW
Mayumi Q DilliardIndiaIvan Magalhaes PROPOSAL
Silvio L SchemmerCanadaIoni Bowcher NEW
Darci E GillianRussiaIvan Magalhaes RENEWAL
Murillo K AmigonJapanAnna Fali PROPOSAL
Leon A CampainJapanOnyama Limba QUALIFIED
Francesco Q IturbideCanadaAsiya Javayant UNQUALIFIED
Smith K PoquetteBrazilOnyama Limba PROPOSAL
Nicolas R FlosiArgentinaStephen Shaw NEW
Morrow L DilliardAustraliaOnyama Limba NEGOTIATION
Stacey X TollnerArgentinaIvan Magalhaes NEGOTIATION
Darci O RulapaughCanadaAmy Elsner NEGOTIATION
Johnson O GillianFranceAsiya Javayant QUALIFIED
James Y PaprockiSpainOnyama Limba NEW
Aika S CaudyRussiaIoni Bowcher RENEWAL
Emily K CampainIndiaAnna Fali NEW
Greenwood Z AmigonRussiaAnna Fali QUALIFIED
Chavez B RutaRussiaStephen Shaw RENEWAL
Morrow P WieserJapanAnna Fali NEW
Antonio D DilliardArgentinaXuxue Feng QUALIFIED
Ivar D SergiGermanyOnyama Limba NEW
Jennifer T RulapaughItalyXuxue Feng PROPOSAL
Isabel F KuskoRussiaBernardo Dominic 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.