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
Emily N SchemmerJapanStephen Shaw RENEWAL
Izzy X MaletUnited KingdomStephen Shaw NEW
Greenwood O BriddickRussiaOnyama Limba RENEWAL
Clifford Q WaycottRussiaIoni Bowcher PROPOSAL
Francesco G StockhamRussiaAsiya Javayant QUALIFIED
James Y MaletItalyIoni Bowcher RENEWAL
Ivar V VenereJapanIoni Bowcher NEGOTIATION
Greenwood Y FollerIndiaAsiya Javayant UNQUALIFIED
Aditya Q SergiGermanyElwin Sharvill NEW
Wickens N PerinRussiaXuxue Feng NEW
Emily N NickaArgentinaStephen Shaw QUALIFIED
Aditya F WaycottBrazilIvan Magalhaes UNQUALIFIED
Julie K ButtSpainAsiya Javayant UNQUALIFIED
Kadeem B WhobreyJapanOnyama Limba UNQUALIFIED
Alejandro W MarrierUnited KingdomIvan Magalhaes NEW
Munro R AmigonCanadaElwin Sharvill QUALIFIED
Wickens F KolmetzCanadaXuxue Feng PROPOSAL
Julie H CampainItalyXuxue Feng QUALIFIED
Sinclair P NickaGermanyStephen Shaw NEGOTIATION
Maria O BowleyFranceStephen Shaw NEW
Chavez C IturbideIndiaAsiya Javayant QUALIFIED
Faith E StockhamCanadaElwin Sharvill PROPOSAL
Adams U AlbaresItalyIoni Bowcher NEW
Leon J GauchoArgentinaElwin Sharvill UNQUALIFIED
Maisha R FollerItalyAnna Fali UNQUALIFIED
Arvin I ButtIndiaXuxue Feng RENEWAL
Claire B FollerJapanIoni Bowcher UNQUALIFIED
Aditya V MacleadRussiaIoni Bowcher UNQUALIFIED
Izzy Y GlickItalyAsiya Javayant QUALIFIED
Misaki H BriddickCanadaIvan Magalhaes QUALIFIED
James K PoquetteBrazilBernardo Dominic UNQUALIFIED
Claire L BriddickAustraliaIoni Bowcher NEW
Misaki N RutaBrazilAsiya Javayant UNQUALIFIED
Misaki F GarufiCanadaAmy Elsner NEW
Octavia I GauchoUnited KingdomStephen Shaw NEGOTIATION
Antonio O MorascaSpainOnyama Limba QUALIFIED
Antonio H KuskoSpainElwin Sharvill RENEWAL
Morrow W SlusarskiCanadaXuxue Feng UNQUALIFIED
Cody Z PerinFranceBernardo Dominic QUALIFIED
Claire N SlusarskiIndiaAmy Elsner NEW
Darci V WaycottUnited KingdomStephen Shaw NEGOTIATION
Darci H TollnerRussiaBernardo Dominic PROPOSAL
Leja L CampainUnited KingdomAmy Elsner NEGOTIATION
Clifford S NestleItalyIoni Bowcher UNQUALIFIED
Jennifer U KolmetzItalyBernardo Dominic QUALIFIED
Jennifer A IturbideAustraliaAnna Fali QUALIFIED
Claire H RimUnited KingdomAnna Fali NEGOTIATION
Salvatore L AlbaresItalyElwin Sharvill NEW
Tony L SaylorsFranceElwin Sharvill RENEWAL
Wickens V GlickAustraliaOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Antonio O CaudyAustraliaXuxue Feng UNQUALIFIED
Tony V AlbaresCanadaIvan Magalhaes NEW
Kaitlin Y VocelkaBrazilIvan Magalhaes PROPOSAL
Kaitlin P GillianFranceElwin Sharvill PROPOSAL
Adams F DilliardRussiaIvan Magalhaes RENEWAL
Nicolas Q OstroskyJapanXuxue Feng NEGOTIATION
Sinclair T FollerGermanyAsiya Javayant UNQUALIFIED
Wickens A StockhamUnited KingdomAsiya Javayant NEGOTIATION
Jones S CaudySpainBernardo Dominic PROPOSAL
Emily J IturbideBrazilStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa H NestleArgentina2026-03-03Morlong Associates PROPOSAL29Ioni Bowcher
1001Stacey Z MacleadBrazil2026-02-17Chapman, Ross E Esq QUALIFIED90Ivan Magalhaes
1002Wickens Y PerinArgentina2026-02-08Chapman, Ross E Esq RENEWAL31Amy Elsner
1003Smith Y DilliardRussia2026-02-23Benton, John B Jr NEW11Ioni Bowcher
1004Cody G IturbideCanada2026-02-16Feltz Printing Service NEW45Bernardo Dominic
1005Julie Q MaletArgentina2026-02-22Chapman, Ross E Esq PROPOSAL18Amy Elsner
1006Sinclair Z SchemmerArgentina2026-03-04Buckley Miller Wright QUALIFIED13Ivan Magalhaes
1007Ivar V SaylorsJapan2026-02-26Feltz Printing Service PROPOSAL67Asiya Javayant
1008Darci M FlosiRussia2026-02-27Commercial Press PROPOSAL30Elwin Sharvill
1009Isabel X FigeroaIndia2026-02-26Buckley Miller Wright QUALIFIED44Ivan Magalhaes
1010Emily L OldroydBrazil2026-02-09Chemel, James L Cpa QUALIFIED63Ioni Bowcher
1011Murillo M OldroydCanada2026-02-17Feltz Printing Service QUALIFIED72Ioni Bowcher
1012Kaitlin T OldroydSpain2026-02-15Benton, John B Jr QUALIFIED73Elwin Sharvill
1013Silvio Q StensethCanada2026-02-28Rangoni Of Florence QUALIFIED96Anna Fali
1014Stacey Q PoquetteSpain2026-02-13Rangoni Of Florence NEGOTIATION87Elwin Sharvill
1015Ricardo E VocelkaFrance2026-03-03Rousseaux, Michael Esq RENEWAL49Xuxue Feng
1016Clifford K RimArgentina2026-02-04Printing Dimensions QUALIFIED72Xuxue Feng
1017Leon H AlbaresUnited Kingdom2026-02-08Feltz Printing Service PROPOSAL99Ivan Magalhaes
1018Jeanfrancois D GauchoItaly2026-02-08Chemel, James L Cpa QUALIFIED12Asiya Javayant
1019Kadeem W SlusarskiAustralia2026-02-04Commercial Press UNQUALIFIED42Onyama Limba
1020Julie T AlbaresUnited Kingdom2026-02-26Dorl, James J Esq RENEWAL90Ivan Magalhaes
1021Jones V StockhamArgentina2026-03-01Printing Dimensions NEW71Bernardo Dominic
1022Sinclair S MaletCanada2026-02-22King, Christopher A Esq RENEWAL42Amy Elsner
1023Emily P PaprockiSpain2026-02-17Morlong Associates NEW60Xuxue Feng
1024Salvatore D WaycottFrance2026-02-05Chapman, Ross E Esq NEGOTIATION30Onyama Limba
1025Darci O GillianSpain2026-02-20Chapman, Ross E Esq NEW82Onyama Limba
1026Kaitlin G SaylorsJapan2026-02-15Printing Dimensions PROPOSAL71Onyama Limba
1027Stacey P GauchoItaly2026-02-16Benton, John B Jr PROPOSAL59Stephen Shaw
1028Greenwood T VenereJapan2026-02-20Feltz Printing Service UNQUALIFIED67Elwin Sharvill
1029Silvio V AlbaresUnited Kingdom2026-02-28Truhlar And Truhlar Attys UNQUALIFIED33Amy Elsner
1030Faith H MarrierFrance2026-03-03Dorl, James J Esq RENEWAL63Asiya Javayant
1031Morrow M CampainFrance2026-02-09Feiner Bros NEGOTIATION99Xuxue Feng
1032Costa Q SlusarskiRussia2026-02-18Feltz Printing Service PROPOSAL99Onyama Limba
1033Murillo C KolmetzRussia2026-03-04King, Christopher A Esq RENEWAL67Onyama Limba
1034Kaitlin F TollnerFrance2026-03-04Rousseaux, Michael Esq QUALIFIED69Ioni Bowcher
1035Aruna G FollerAustralia2026-02-25Benton, John B Jr NEGOTIATION92Ioni Bowcher
1036Rodrigues E GillianFrance2026-02-08Chanay, Jeffrey A Esq PROPOSAL92Onyama Limba
1037Mayumi S CampainJapan2026-02-13Rousseaux, Michael Esq RENEWAL13Anna Fali
1038Aruna J RoysterFrance2026-02-19Rangoni Of Florence QUALIFIED38Stephen Shaw
1039Ricardo I BowleyAustralia2026-02-08Printing Dimensions QUALIFIED26Xuxue Feng
1040Leja P OldroydJapan2026-02-08Printing Dimensions NEGOTIATION41Ivan Magalhaes
1041Kaitlin D SlusarskiRussia2026-02-28Rousseaux, Michael Esq PROPOSAL32Xuxue Feng
1042Juan X KolmetzIndia2026-02-04Chemel, James L Cpa UNQUALIFIED71Amy Elsner
1043Sinclair R BologniaIndia2026-03-05Dorl, James J Esq RENEWAL86Elwin Sharvill
1044Jefferson W AmigonBrazil2026-02-04King, Christopher A Esq UNQUALIFIED94Onyama Limba
1045Leja P MaletAustralia2026-02-10Rangoni Of Florence QUALIFIED2Asiya Javayant
1046Claire T GlickUnited Kingdom2026-02-18Rangoni Of Florence PROPOSAL54Elwin Sharvill
1047Adams C DilliardItaly2026-03-01Commercial Press PROPOSAL64Onyama Limba
1048Johnson R RulapaughAustralia2026-02-23Chapman, Ross E Esq RENEWAL91Stephen Shaw
1049Francesco H RutaGermany2026-02-04Rousseaux, Michael Esq QUALIFIED15Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Juan A NickaJapanIvan Magalhaes NEGOTIATION
Mujtaba S FollerSpainIvan Magalhaes QUALIFIED
James O GarufiUnited KingdomOnyama Limba RENEWAL
Octavia O DarakjyArgentinaOnyama Limba PROPOSAL
Kadeem S OldroydJapanElwin Sharvill NEGOTIATION
Costa I SlusarskiItalyAmy Elsner RENEWAL
Jones L MorascaSpainIvan Magalhaes UNQUALIFIED
Silvio M RimSpainAmy Elsner PROPOSAL
Maisha V MacleadUnited KingdomIvan Magalhaes PROPOSAL
Aika Q GauchoIndiaXuxue Feng RENEWAL
Kadeem V BologniaItalyAsiya Javayant RENEWAL
Jeanfrancois C PaprockiFranceAnna Fali RENEWAL
Clifford X RimAustraliaBernardo Dominic UNQUALIFIED
Deepesh G MaletArgentinaAmy Elsner QUALIFIED
Mayumi R IturbideJapanIvan Magalhaes RENEWAL
Munro N FerenczGermanyIvan Magalhaes UNQUALIFIED
Adams M CaldareraUnited KingdomOnyama Limba QUALIFIED
Jefferson V VocelkaAustraliaXuxue Feng PROPOSAL
Adams R PaprockiSpainBernardo Dominic NEW
Greenwood S PoquetteArgentinaXuxue Feng QUALIFIED
Mujtaba D MacleadAustraliaOnyama Limba PROPOSAL
Clifford K ShinkoIndiaAsiya Javayant RENEWAL
Arvin V FigeroaGermanyAsiya Javayant UNQUALIFIED
Stacey R CampainFranceBernardo Dominic NEW
Adams B FerenczGermanyStephen Shaw QUALIFIED
Antonio P GauchoArgentinaIvan Magalhaes UNQUALIFIED
Aditya K BologniaUnited KingdomAsiya Javayant QUALIFIED
Aditya J GlickIndiaAmy Elsner QUALIFIED
Juan E IturbideBrazilIoni Bowcher PROPOSAL
Alejandro A RimBrazilElwin Sharvill NEGOTIATION
Arvin Y DoeArgentinaAmy Elsner NEGOTIATION
Kadeem H GarufiGermanyElwin Sharvill NEGOTIATION
Claire O WaycottCanadaAmy Elsner UNQUALIFIED
Rodrigues T MaletIndiaBernardo Dominic PROPOSAL
Maisha H RoysterFranceElwin Sharvill QUALIFIED
Silvio Q RoysterJapanAmy Elsner NEGOTIATION
Munro U StockhamUnited KingdomOnyama Limba NEGOTIATION
Jefferson E MaletJapanAmy Elsner PROPOSAL
Stacey F DoeGermanyAsiya Javayant RENEWAL
Greenwood V NestleBrazilIoni Bowcher NEGOTIATION
Rodrigues W StensethArgentinaAnna Fali PROPOSAL
Costa H MaletItalyXuxue Feng PROPOSAL
Francesco M DarakjyRussiaXuxue Feng UNQUALIFIED
Octavia R SaylorsUnited KingdomElwin Sharvill RENEWAL
Clifford I RoysterItalyAsiya Javayant PROPOSAL
Stacey D FigeroaFranceAsiya Javayant QUALIFIED
Adams V CaldareraItalyAnna Fali QUALIFIED
Francesco L OldroydRussiaOnyama Limba NEGOTIATION
Misaki B DarakjyItalyAmy Elsner NEGOTIATION
Ashley X AlbaresFranceIvan Magalhaes PROPOSAL
Frozen Columns
Name
Jones R Venere
Mujtaba S Paprocki
Faith F Doe
Silvio Q Tollner
Jefferson M Poquette
Rodrigues X Dilliard
Octavia W Saylors
Octavia E Flosi
Claire O Venere
Tony R Iturbide
Silvio A Albares
Ricardo K Paprocki
Mujtaba Y Wieser
Antonio N Doe
Rodrigues Q Vocelka
James D Caudy
Cody O Stenseth
Deepesh F Marrier
Sinclair Y Kusko
Antonio O Malet
Emily R Glick
Adams X Stockham
Aika W Malet
Ricardo C Stockham
David Y Vocelka
Salvatore S Oldroyd
Murillo P Venere
Greenwood A Royster
Francesco S Nicka
Mayumi E Gillian
Alejandro T Saylors
Juan Z Shinko
Ricardo A Rulapaugh
Faith P Marrier
Jeanfrancois U Vocelka
Leon L Schemmer
Claire V Gaucho
Maisha S Gaucho
Jennifer K Caldarera
Isabel D Oldroyd
Costa S Morasca
Aditya D Caudy
Chavez J Rulapaugh
Adams U Slusarski
Darci V Royster
Ricardo X Campain
Faith E Rim
Izzy V Bowley
Kadeem R Vocelka
Mujtaba R Kolmetz
IdCountryDate
1000Argentina2026-02-07
1001Germany2026-02-13
1002France2026-02-06
1003India2026-02-13
1004Russia2026-02-18
1005France2026-02-19
1006Spain2026-02-25
1007Japan2026-02-13
1008Argentina2026-02-25
1009Brazil2026-03-02
1010Germany2026-02-26
1011Germany2026-02-20
1012Argentina2026-02-16
1013India2026-02-08
1014Argentina2026-02-05
1015Germany2026-02-05
1016Italy2026-02-14
1017Russia2026-02-15
1018Australia2026-03-02
1019Japan2026-02-16
1020France2026-02-04
1021Canada2026-02-21
1022Australia2026-02-23
1023Spain2026-02-13
1024Argentina2026-02-11
1025United Kingdom2026-02-13
1026Brazil2026-02-26
1027Canada2026-02-22
1028Italy2026-02-14
1029Brazil2026-02-24
1030Italy2026-02-28
1031Russia2026-02-18
1032Spain2026-02-09
1033India2026-03-02
1034Spain2026-02-16
1035United Kingdom2026-03-03
1036Italy2026-02-09
1037Germany2026-02-18
1038Japan2026-02-09
1039Argentina2026-02-08
1040Argentina2026-02-25
1041France2026-03-02
1042Spain2026-02-06
1043Spain2026-02-04
1044Argentina2026-02-04
1045Russia2026-02-15
1046Germany2026-02-21
1047France2026-02-20
1048Japan2026-02-09
1049Italy2026-02-12

On-Demand Data

NameIdCountryDate
Emily L Slusarski1000France2026-02-12
Faith B Maclead1001Australia2026-02-25
Kaitlin F Gaucho1002United Kingdom2026-02-16
Adams B Maclead1003France2026-02-24
Jefferson P Darakjy1004Argentina2026-02-19
Ricardo V Sergi1005India2026-02-20
Murillo I Inouye1006Spain2026-02-13
Murillo O Chui1007Spain2026-02-16
Mujtaba A Sergi1008Australia2026-02-07
Jennifer L Bowley1009Argentina2026-02-05
Maisha Q Flosi1010Italy2026-02-12
Misaki G Gillian1011Japan2026-02-20
Salvatore A Ostrosky1012Canada2026-03-03
Isabel R Darakjy1013Argentina2026-02-12
Misaki M Schemmer1014Germany2026-02-18
David O Wieser1015Brazil2026-02-17
Jones G Morasca1016Japan2026-02-20
Johnson N Marrier1017Canada2026-02-04
Morrow G Stockham1018United Kingdom2026-02-12
Murillo V Whobrey1019Spain2026-02-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily O TollnerBrazilOnyama Limba RENEWAL
Izzy N NestleArgentinaIoni Bowcher NEGOTIATION
Nicolas O AlbaresUnited KingdomIvan Magalhaes NEGOTIATION
Juan S DoeAustraliaXuxue Feng RENEWAL
Kadeem V VenereSpainAnna Fali NEW
Cody J FlosiBrazilBernardo Dominic NEGOTIATION
Misaki I VenereJapanAsiya Javayant RENEWAL
Smith X RoysterGermanyAsiya Javayant NEGOTIATION
Jeanfrancois X NickaItalyAmy Elsner QUALIFIED
Silvio X StockhamIndiaElwin Sharvill UNQUALIFIED
Wickens X WhobreyUnited KingdomAsiya Javayant UNQUALIFIED
Aditya Q SlusarskiCanadaElwin Sharvill PROPOSAL
Leon V BologniaSpainBernardo Dominic UNQUALIFIED
Mujtaba R FollerItalyIoni Bowcher NEGOTIATION
Misaki A CampainBrazilIvan Magalhaes QUALIFIED
Costa I KuskoRussiaIvan Magalhaes UNQUALIFIED
Smith H MacleadFranceAsiya Javayant RENEWAL
Maisha T RoysterUnited KingdomAnna Fali RENEWAL
Johnson H StensethIndiaAsiya Javayant NEW
Julie I CampainRussiaOnyama Limba NEGOTIATION
Stacey W GlickUnited KingdomIvan Magalhaes RENEWAL
Darci W DarakjySpainAsiya Javayant PROPOSAL
Clifford D KuskoArgentinaAsiya Javayant PROPOSAL
Isabel B SaylorsGermanyAsiya Javayant QUALIFIED
Cody D NickaIndiaBernardo Dominic NEGOTIATION
Chavez I MaletIndiaOnyama Limba RENEWAL
Isabel W BologniaCanadaAnna Fali NEW
Francesco T RimBrazilStephen Shaw UNQUALIFIED
Jennifer G IturbideUnited KingdomIoni Bowcher UNQUALIFIED
Smith L KolmetzIndiaIvan Magalhaes NEGOTIATION
Nicolas B FerenczItalyOnyama Limba QUALIFIED
Greenwood F TollnerItalyOnyama Limba NEW
Johnson U PoquetteUnited KingdomXuxue Feng UNQUALIFIED
Clifford R CaldareraGermanyIvan Magalhaes PROPOSAL
Salvatore O GauchoFranceBernardo Dominic QUALIFIED
Juan P GillianUnited KingdomXuxue Feng RENEWAL
Salvatore H NickaRussiaBernardo Dominic PROPOSAL
Kaitlin N DilliardAustraliaAsiya Javayant UNQUALIFIED
James N RoysterRussiaStephen Shaw NEW
Adams S ShinkoBrazilBernardo Dominic 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.