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
Alejandro P NestleUnited KingdomElwin Sharvill NEW
Nicolas G BologniaArgentinaOnyama Limba PROPOSAL
Juan B PerinItalyOnyama Limba QUALIFIED
Emily X CampainArgentinaIoni Bowcher PROPOSAL
Francesco G PaprockiRussiaElwin Sharvill NEW
Stacey Q KolmetzBrazilAsiya Javayant NEGOTIATION
Aika Z WaycottArgentinaAmy Elsner UNQUALIFIED
Juan D ButtBrazilAsiya Javayant QUALIFIED
Costa U KuskoBrazilXuxue Feng RENEWAL
Antonio G OldroydArgentinaXuxue Feng QUALIFIED
Cody R FerenczCanadaElwin Sharvill NEGOTIATION
Isabel R MorascaCanadaBernardo Dominic NEGOTIATION
Ivar F MorascaItalyOnyama Limba UNQUALIFIED
Alejandro W BowleyBrazilStephen Shaw NEW
Ricardo F OstroskyBrazilAmy Elsner NEW
Munro D MacleadIndiaIoni Bowcher RENEWAL
Mujtaba L PerinJapanAsiya Javayant RENEWAL
Maria A DoeUnited KingdomBernardo Dominic NEGOTIATION
James O PoquetteItalyAsiya Javayant PROPOSAL
Alejandro E StensethJapanAmy Elsner UNQUALIFIED
Murillo Z GauchoIndiaBernardo Dominic QUALIFIED
Francesco R SaylorsJapanElwin Sharvill QUALIFIED
Chavez F AmigonItalyElwin Sharvill NEW
Murillo M RutaUnited KingdomStephen Shaw RENEWAL
Adams Z WieserArgentinaIvan Magalhaes RENEWAL
Leja V OldroydSpainAmy Elsner NEW
Murillo W FigeroaBrazilStephen Shaw NEGOTIATION
Johnson G InouyeAustraliaAmy Elsner PROPOSAL
Jones V PaprockiGermanyXuxue Feng RENEWAL
Chavez L SergiCanadaBernardo Dominic PROPOSAL
Alejandro Y KuskoJapanIoni Bowcher UNQUALIFIED
Munro L TollnerBrazilXuxue Feng UNQUALIFIED
Jeanfrancois Q NestleBrazilStephen Shaw UNQUALIFIED
Ashley D ShinkoBrazilAmy Elsner RENEWAL
Greenwood I BologniaJapanOnyama Limba NEW
Smith X IturbideAustraliaIoni Bowcher NEW
Sinclair J RimSpainOnyama Limba UNQUALIFIED
Tony O CaldareraJapanIoni Bowcher PROPOSAL
Arvin T NestleUnited KingdomElwin Sharvill QUALIFIED
Salvatore Q BowleyFranceAsiya Javayant UNQUALIFIED
Jeanfrancois K NestleCanadaBernardo Dominic NEW
Costa M RimRussiaIoni Bowcher QUALIFIED
Stacey C FlosiIndiaXuxue Feng NEW
Darci S SchemmerSpainAsiya Javayant QUALIFIED
Darci A OstroskySpainIvan Magalhaes QUALIFIED
Sinclair L InouyeAustraliaIoni Bowcher NEW
Octavia Y SlusarskiItalyAsiya Javayant UNQUALIFIED
Juan N ChuiBrazilOnyama Limba RENEWAL
Jeanfrancois G PerinArgentinaXuxue Feng QUALIFIED
Izzy C MacleadCanadaAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Ashley J OldroydIndiaIvan Magalhaes QUALIFIED
Izzy G MaletCanadaOnyama Limba RENEWAL
Octavia F InouyeGermanyBernardo Dominic PROPOSAL
Darci E MorascaUnited KingdomIoni Bowcher PROPOSAL
Kadeem S GarufiAustraliaXuxue Feng NEGOTIATION
Clifford N FerenczCanadaAmy Elsner UNQUALIFIED
Aika C RoysterRussiaOnyama Limba RENEWAL
Ashley H SaylorsAustraliaAmy Elsner PROPOSAL
Kaitlin U SergiCanadaAsiya Javayant PROPOSAL
Costa A NickaFranceOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000David A SlusarskiBrazil2026-02-01Morlong Associates NEW59Stephen Shaw
1001Ashley W BriddickBrazil2026-02-04Printing Dimensions PROPOSAL25Ivan Magalhaes
1002Maria U WaycottAustralia2026-02-12Buckley Miller Wright RENEWAL50Bernardo Dominic
1003Silvio P SlusarskiItaly2026-02-18Chemel, James L Cpa QUALIFIED25Asiya Javayant
1004Faith J DarakjyItaly2026-02-17Printing Dimensions NEW17Amy Elsner
1005Smith R FerenczSpain2026-02-17Morlong Associates NEGOTIATION53Xuxue Feng
1006Clifford N FollerCanada2026-02-07Rousseaux, Michael Esq UNQUALIFIED19Onyama Limba
1007Rodrigues I VocelkaCanada2026-02-20Rangoni Of Florence NEGOTIATION86Ioni Bowcher
1008Murillo U StensethAustralia2026-02-07Rousseaux, Michael Esq NEGOTIATION57Stephen Shaw
1009Leon N GillianFrance2026-02-17Chanay, Jeffrey A Esq PROPOSAL19Stephen Shaw
1010Juan M WieserAustralia2026-02-20Truhlar And Truhlar Attys PROPOSAL5Ioni Bowcher
1011Kaitlin K MorascaSpain2026-02-14Printing Dimensions QUALIFIED57Ioni Bowcher
1012Deepesh M FollerUnited Kingdom2026-02-08Chemel, James L Cpa NEGOTIATION85Ioni Bowcher
1013Silvio E PaprockiUnited Kingdom2026-01-25Feiner Bros NEW94Anna Fali
1014Murillo Z RulapaughJapan2026-02-19King, Christopher A Esq RENEWAL84Onyama Limba
1015Munro K PaprockiRussia2026-02-10Feiner Bros NEGOTIATION25Amy Elsner
1016Francesco S ChuiItaly2026-02-03King, Christopher A Esq RENEWAL22Ioni Bowcher
1017Mujtaba O OldroydUnited Kingdom2026-02-11Buckley Miller Wright NEGOTIATION28Ivan Magalhaes
1018Darci Z PoquetteUnited Kingdom2026-02-12Feiner Bros RENEWAL76Amy Elsner
1019Jones Z MacleadArgentina2026-01-30Truhlar And Truhlar Attys NEGOTIATION41Elwin Sharvill
1020Mujtaba S RoysterCanada2026-02-20Dorl, James J Esq QUALIFIED57Anna Fali
1021Salvatore Y MorascaArgentina2026-02-11Chemel, James L Cpa NEW43Stephen Shaw
1022Aditya B BologniaJapan2026-02-03Rousseaux, Michael Esq NEGOTIATION80Anna Fali
1023Jefferson Y NickaItaly2026-01-26Truhlar And Truhlar Attys PROPOSAL72Ioni Bowcher
1024David L SlusarskiUnited Kingdom2026-02-08Feiner Bros PROPOSAL74Anna Fali
1025Kadeem A ShinkoCanada2026-01-29Printing Dimensions PROPOSAL41Asiya Javayant
1026Aika G SaylorsFrance2026-02-19Chapman, Ross E Esq NEGOTIATION47Elwin Sharvill
1027Antonio G KuskoGermany2026-02-02Chanay, Jeffrey A Esq NEGOTIATION69Anna Fali
1028Aika E RulapaughFrance2026-02-17Benton, John B Jr UNQUALIFIED36Amy Elsner
1029Johnson X SergiUnited Kingdom2026-02-11Printing Dimensions UNQUALIFIED25Onyama Limba
1030Kadeem E DarakjyItaly2026-02-06Benton, John B Jr QUALIFIED98Bernardo Dominic
1031Ricardo D FlosiRussia2026-02-22Commercial Press NEGOTIATION51Amy Elsner
1032Alejandro U WaycottUnited Kingdom2026-02-01King, Christopher A Esq NEGOTIATION35Elwin Sharvill
1033Maisha J GarufiItaly2026-02-16Chemel, James L Cpa UNQUALIFIED41Stephen Shaw
1034Aditya W DilliardArgentina2026-02-17Chanay, Jeffrey A Esq NEW23Bernardo Dominic
1035Sinclair D TollnerSpain2026-02-19Morlong Associates NEGOTIATION80Ioni Bowcher
1036Kadeem R ShinkoUnited Kingdom2026-02-03Chemel, James L Cpa NEGOTIATION65Ioni Bowcher
1037Cody F MacleadUnited Kingdom2026-02-08Printing Dimensions UNQUALIFIED6Onyama Limba
1038Chavez A MarrierSpain2026-01-27Chanay, Jeffrey A Esq NEW11Anna Fali
1039Darci F ShinkoItaly2026-01-28Rangoni Of Florence RENEWAL56Anna Fali
1040Greenwood V FlosiAustralia2026-02-20Chapman, Ross E Esq PROPOSAL65Anna Fali
1041James Q GauchoItaly2026-02-15Rangoni Of Florence UNQUALIFIED45Xuxue Feng
1042Ivar E DilliardAustralia2026-01-27Chemel, James L Cpa PROPOSAL2Bernardo Dominic
1043Ivar U InouyeRussia2026-02-17King, Christopher A Esq QUALIFIED94Asiya Javayant
1044Sinclair O BowleyArgentina2026-02-07Chapman, Ross E Esq PROPOSAL70Anna Fali
1045Jeanfrancois A DarakjyBrazil2026-02-18King, Christopher A Esq PROPOSAL27Elwin Sharvill
1046Julie P DilliardAustralia2026-02-22Benton, John B Jr PROPOSAL74Ioni Bowcher
1047Kaitlin O WieserArgentina2026-02-14Truhlar And Truhlar Attys QUALIFIED92Asiya Javayant
1048Aditya C GauchoSpain2026-02-05Buckley Miller Wright PROPOSAL33Xuxue Feng
1049Munro C WaycottIndia2026-02-04Rousseaux, Michael Esq PROPOSAL68Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Costa M SergiArgentinaAsiya Javayant RENEWAL
Rodrigues X MacleadArgentinaElwin Sharvill UNQUALIFIED
Deepesh F GillianCanadaIoni Bowcher QUALIFIED
Francesco T MorascaSpainAmy Elsner NEGOTIATION
Tony A ShinkoIndiaAmy Elsner NEW
Sinclair O GauchoJapanAsiya Javayant PROPOSAL
Jones J PerinFranceElwin Sharvill QUALIFIED
Alejandro Q RimGermanyAsiya Javayant NEW
Sinclair J GillianUnited KingdomOnyama Limba NEW
Aika J GauchoGermanyXuxue Feng NEW
Izzy N BologniaArgentinaXuxue Feng UNQUALIFIED
Leon Y NickaRussiaOnyama Limba UNQUALIFIED
Emily C WhobreyUnited KingdomXuxue Feng QUALIFIED
Costa J BologniaAustraliaAmy Elsner RENEWAL
Jefferson W PerinFranceIvan Magalhaes NEW
Mayumi W FollerUnited KingdomIoni Bowcher RENEWAL
Misaki P ShinkoFranceStephen Shaw PROPOSAL
Alejandro N WaycottRussiaOnyama Limba UNQUALIFIED
Wickens C WaycottIndiaAnna Fali NEGOTIATION
Smith B OldroydUnited KingdomAsiya Javayant NEGOTIATION
Silvio F BriddickRussiaIoni Bowcher UNQUALIFIED
Salvatore X BologniaUnited KingdomAnna Fali RENEWAL
Leon A MorascaFranceAsiya Javayant QUALIFIED
Deepesh W GauchoIndiaOnyama Limba NEGOTIATION
Chavez Q PerinItalyAmy Elsner NEW
Maisha E WaycottGermanyAsiya Javayant NEGOTIATION
Claire U NickaJapanAnna Fali NEGOTIATION
Jones G OstroskyCanadaAsiya Javayant RENEWAL
Sinclair C SchemmerRussiaAsiya Javayant RENEWAL
Costa V PerinBrazilXuxue Feng RENEWAL
Greenwood T BowleyArgentinaAmy Elsner PROPOSAL
Maria I FigeroaArgentinaAmy Elsner NEW
Murillo S PoquetteArgentinaXuxue Feng RENEWAL
Smith H SaylorsBrazilXuxue Feng UNQUALIFIED
Arvin M WieserIndiaElwin Sharvill NEW
Darci P GauchoIndiaAsiya Javayant QUALIFIED
Mujtaba I ButtBrazilAmy Elsner UNQUALIFIED
Sinclair C GlickSpainIoni Bowcher RENEWAL
Misaki N SaylorsCanadaOnyama Limba RENEWAL
Leon E StockhamGermanyXuxue Feng UNQUALIFIED
Salvatore O IturbideAustraliaElwin Sharvill NEGOTIATION
Ashley K AmigonUnited KingdomAnna Fali UNQUALIFIED
Ivar E SchemmerIndiaOnyama Limba UNQUALIFIED
Rodrigues R RoysterGermanyOnyama Limba NEGOTIATION
Murillo A PerinRussiaBernardo Dominic PROPOSAL
Juan D DilliardRussiaIvan Magalhaes RENEWAL
Salvatore U StensethBrazilStephen Shaw NEGOTIATION
Aditya T DarakjyAustraliaStephen Shaw QUALIFIED
Cody T WhobreyItalyXuxue Feng RENEWAL
Jeanfrancois O ShinkoFranceIoni Bowcher NEGOTIATION
Frozen Columns
Name
Leon I Stenseth
Aika H Stockham
Jones D Darakjy
Johnson M Chui
Clifford X Oldroyd
Greenwood J Nicka
Aruna N Morasca
Izzy U Waycott
Aika D Stenseth
Nicolas D Royster
Silvio K Bowley
Clifford U Marrier
Julie K Bowley
Emily P Albares
James W Nestle
Darci X Maclead
Kaitlin S Paprocki
Ricardo J Doe
Emily O Doe
Julie W Garufi
Francesco O Paprocki
Kadeem R Stenseth
Francesco V Butt
Mujtaba H Ostrosky
Murillo V Kusko
Wickens D Chui
Alejandro N Ruta
Ashley Q Darakjy
Antonio P Kolmetz
Aditya R Doe
Johnson A Campain
Cody F Venere
Murillo N Amigon
Ivar A Albares
Faith W Whobrey
Munro D Albares
Tony Y Gaucho
Stacey I Doe
Claire B Nicka
Mujtaba N Sergi
Rodrigues K Venere
Aika S Marrier
Ivar Z Bolognia
Tony P Marrier
Francesco V Chui
James A Sergi
Clifford K Ostrosky
Misaki M Ruta
Johnson P Iturbide
Octavia L Royster
IdCountryDate
1000Spain2026-01-27
1001United Kingdom2026-02-14
1002France2026-02-22
1003Italy2026-01-24
1004Japan2026-02-13
1005Argentina2026-02-12
1006Russia2026-02-20
1007Japan2026-02-04
1008Brazil2026-01-24
1009India2026-02-12
1010Argentina2026-01-27
1011Canada2026-02-15
1012Argentina2026-02-11
1013Canada2026-02-15
1014Japan2026-02-19
1015Argentina2026-02-11
1016Australia2026-01-28
1017India2026-02-14
1018Italy2026-02-12
1019Italy2026-02-06
1020Canada2026-01-26
1021Russia2026-02-18
1022India2026-01-27
1023Italy2026-02-02
1024Spain2026-02-06
1025Argentina2026-01-24
1026Canada2026-02-11
1027Japan2026-02-16
1028Germany2026-02-08
1029United Kingdom2026-02-02
1030Brazil2026-02-15
1031Spain2026-02-12
1032Japan2026-02-03
1033United Kingdom2026-02-18
1034Canada2026-02-02
1035Italy2026-02-07
1036Italy2026-02-12
1037Canada2026-02-12
1038Japan2026-02-11
1039India2026-02-04
1040Brazil2026-02-18
1041Spain2026-02-13
1042France2026-01-27
1043Brazil2026-02-22
1044India2026-01-25
1045Argentina2026-02-04
1046Spain2026-02-04
1047India2026-02-16
1048Spain2026-02-13
1049Canada2026-01-27

On-Demand Data

NameIdCountryDate
Francesco X Sergi1000Russia2026-01-28
Octavia N Dilliard1001India2026-01-27
Kadeem I Paprocki1002Japan2026-02-12
Julie U Perin1003Italy2026-02-03
Morrow T Nicka1004Canada2026-02-06
Jennifer O Albares1005France2026-02-18
Jeanfrancois Y Kolmetz1006Russia2026-02-12
Rodrigues J Foller1007Spain2026-02-02
Tony V Caudy1008Germany2026-02-10
James A Oldroyd1009Canada2026-02-21
Faith F Stockham1010Italy2026-01-24
Nicolas R Vocelka1011Brazil2026-02-20
Tony Q Kusko1012France2026-02-10
Leja D Waycott1013Japan2026-02-10
Antonio E Ruta1014Australia2026-01-25
Morrow A Schemmer1015Argentina2026-02-20
Rodrigues C Waycott1016France2026-01-28
Murillo B Kolmetz1017France2026-02-03
Cody L Vocelka1018Argentina2026-01-29
James C Saylors1019Canada2026-01-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony E AlbaresRussiaAnna Fali UNQUALIFIED
Stacey N FerenczGermanyBernardo Dominic PROPOSAL
Costa U FlosiBrazilAmy Elsner NEGOTIATION
Wickens I TollnerFranceStephen Shaw QUALIFIED
Nicolas F RulapaughSpainAmy Elsner NEGOTIATION
Claire P CampainBrazilIoni Bowcher NEW
Nicolas K BologniaJapanBernardo Dominic NEGOTIATION
Arvin W MarrierAustraliaElwin Sharvill QUALIFIED
Kaitlin Y FollerGermanyXuxue Feng NEW
Claire R AlbaresRussiaStephen Shaw QUALIFIED
Greenwood F FerenczArgentinaAsiya Javayant NEW
Francesco H ButtCanadaAsiya Javayant QUALIFIED
Clifford U StockhamCanadaStephen Shaw NEW
Aruna K InouyeUnited KingdomIoni Bowcher QUALIFIED
Maisha O NestleItalyElwin Sharvill PROPOSAL
Aika L OstroskyUnited KingdomXuxue Feng NEW
Rodrigues W AmigonJapanElwin Sharvill QUALIFIED
Jeanfrancois L SaylorsFranceBernardo Dominic PROPOSAL
Sinclair T SergiIndiaXuxue Feng UNQUALIFIED
Izzy N BowleyBrazilXuxue Feng PROPOSAL
Tony M ButtCanadaAsiya Javayant NEGOTIATION
Isabel J InouyeGermanyXuxue Feng UNQUALIFIED
Clifford Q StockhamCanadaBernardo Dominic QUALIFIED
Deepesh D CampainFranceElwin Sharvill NEGOTIATION
Jones I RulapaughAustraliaElwin Sharvill NEGOTIATION
Maisha X SlusarskiCanadaElwin Sharvill PROPOSAL
Johnson H AlbaresUnited KingdomAmy Elsner RENEWAL
Alejandro S VocelkaGermanyBernardo Dominic RENEWAL
Sinclair Z BriddickBrazilIoni Bowcher UNQUALIFIED
Salvatore E RulapaughGermanyAmy Elsner UNQUALIFIED
Maisha Z MaletGermanyIvan Magalhaes PROPOSAL
Rodrigues I GauchoGermanyBernardo Dominic UNQUALIFIED
Aruna I WaycottBrazilElwin Sharvill QUALIFIED
James Q InouyeAustraliaElwin Sharvill UNQUALIFIED
Leon R ButtArgentinaElwin Sharvill PROPOSAL
Mayumi M RulapaughUnited KingdomIoni Bowcher NEGOTIATION
Faith V NickaGermanyIvan Magalhaes QUALIFIED
Chavez T CaldareraGermanyAnna Fali QUALIFIED
Maria I RimItalyAsiya Javayant PROPOSAL
Maisha I ChuiAustraliaIvan Magalhaes 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.