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
Jennifer R BologniaJapanStephen Shaw PROPOSAL
Juan D FollerCanadaIvan Magalhaes NEW
Greenwood Q BriddickAustraliaIvan Magalhaes NEW
Ricardo P NestleAustraliaIoni Bowcher UNQUALIFIED
Claire J TollnerCanadaAmy Elsner UNQUALIFIED
Juan K StockhamSpainIvan Magalhaes RENEWAL
Wickens Z ButtBrazilIoni Bowcher NEW
Kaitlin O MorascaCanadaIoni Bowcher QUALIFIED
Deepesh C SergiItalyAnna Fali UNQUALIFIED
Mayumi O IturbideArgentinaStephen Shaw QUALIFIED
Aditya Y BologniaSpainOnyama Limba NEW
Johnson L NestleCanadaAmy Elsner UNQUALIFIED
Mujtaba Z BologniaIndiaElwin Sharvill UNQUALIFIED
Maisha X TollnerGermanyIoni Bowcher PROPOSAL
Jennifer L MorascaFranceXuxue Feng QUALIFIED
Darci O SlusarskiIndiaXuxue Feng RENEWAL
Greenwood P StensethGermanyElwin Sharvill PROPOSAL
Aruna L BriddickUnited KingdomElwin Sharvill NEW
Greenwood D KuskoItalyIoni Bowcher PROPOSAL
Munro U WaycottBrazilElwin Sharvill RENEWAL
Jefferson X IturbideAustraliaIoni Bowcher PROPOSAL
Izzy A AlbaresAustraliaIvan Magalhaes RENEWAL
Mujtaba H RulapaughItalyElwin Sharvill QUALIFIED
Ivar A SaylorsUnited KingdomAmy Elsner PROPOSAL
Aruna G BologniaSpainStephen Shaw QUALIFIED
Stacey R MarrierBrazilAsiya Javayant NEW
Munro L PoquetteAustraliaAnna Fali RENEWAL
Leon T FlosiIndiaElwin Sharvill NEW
Juan A PaprockiBrazilElwin Sharvill NEGOTIATION
Wickens Y NickaFranceElwin Sharvill NEW
Chavez M PaprockiFranceAnna Fali RENEWAL
Salvatore T GillianUnited KingdomStephen Shaw RENEWAL
Smith O WaycottRussiaAsiya Javayant RENEWAL
Aika I OstroskyArgentinaIvan Magalhaes QUALIFIED
Costa X OldroydBrazilAnna Fali RENEWAL
Nicolas C CaldareraArgentinaOnyama Limba NEW
Sinclair Q WaycottSpainIoni Bowcher QUALIFIED
Ashley F CaldareraUnited KingdomIvan Magalhaes UNQUALIFIED
Kaitlin W FigeroaArgentinaAsiya Javayant NEGOTIATION
Leja X RutaUnited KingdomOnyama Limba UNQUALIFIED
Francesco F FerenczBrazilBernardo Dominic NEW
Aika J WaycottIndiaIoni Bowcher RENEWAL
Morrow X StockhamJapanIvan Magalhaes NEGOTIATION
Antonio W NestleItalyAsiya Javayant RENEWAL
Cody U FerenczArgentinaBernardo Dominic QUALIFIED
Clifford L PerinAustraliaAmy Elsner NEW
Tony Q BriddickJapanElwin Sharvill UNQUALIFIED
Silvio E DarakjySpainStephen Shaw UNQUALIFIED
Deepesh Y OstroskyCanadaAmy Elsner PROPOSAL
Munro Q OstroskyJapanAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Adams V TollnerUnited KingdomStephen Shaw PROPOSAL
Mujtaba K CaldareraUnited KingdomOnyama Limba NEW
Juan S GlickGermanyBernardo Dominic RENEWAL
Rodrigues P GauchoCanadaAmy Elsner QUALIFIED
Aditya D RoysterCanadaElwin Sharvill PROPOSAL
Clifford M GlickCanadaStephen Shaw NEW
Leon O GarufiUnited KingdomBernardo Dominic PROPOSAL
Greenwood V OstroskySpainAmy Elsner RENEWAL
Octavia Y PoquetteAustraliaAsiya Javayant NEGOTIATION
Isabel L CaldareraFranceAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio N WhobreyGermany2026-06-08Dorl, James J Esq PROPOSAL54Bernardo Dominic
1001Jefferson G SaylorsArgentina2026-06-13Feiner Bros QUALIFIED65Ivan Magalhaes
1002Octavia Y RulapaughGermany2026-06-03Commercial Press QUALIFIED97Elwin Sharvill
1003Greenwood F RoysterFrance2026-06-10Rangoni Of Florence NEGOTIATION83Ioni Bowcher
1004Misaki A PaprockiArgentina2026-06-09Commercial Press PROPOSAL40Anna Fali
1005Tony C ChuiFrance2026-06-14Buckley Miller Wright RENEWAL25Stephen Shaw
1006Antonio K AmigonFrance2026-06-11Printing Dimensions UNQUALIFIED52Stephen Shaw
1007Nicolas L FlosiGermany2026-06-06Feltz Printing Service PROPOSAL63Asiya Javayant
1008Aika T MarrierCanada2026-06-06Rousseaux, Michael Esq QUALIFIED64Amy Elsner
1009Sinclair B DoeFrance2026-06-19Chemel, James L Cpa QUALIFIED17Onyama Limba
1010Ricardo N StockhamBrazil2026-06-08Rangoni Of Florence NEW34Onyama Limba
1011Silvio Q CaudyGermany2026-06-11Rousseaux, Michael Esq QUALIFIED98Asiya Javayant
1012Clifford D RimFrance2026-05-30Printing Dimensions RENEWAL52Elwin Sharvill
1013Adams T StensethFrance2026-06-17Benton, John B Jr NEW84Amy Elsner
1014Silvio G KuskoRussia2026-06-16Rousseaux, Michael Esq NEGOTIATION61Anna Fali
1015Misaki O SlusarskiItaly2026-06-04Printing Dimensions QUALIFIED91Bernardo Dominic
1016Mayumi M CampainGermany2026-06-03Feltz Printing Service RENEWAL80Ivan Magalhaes
1017Rodrigues D BowleyIndia2026-06-12Truhlar And Truhlar Attys PROPOSAL33Amy Elsner
1018Murillo M NickaGermany2026-06-21Truhlar And Truhlar Attys NEW92Anna Fali
1019Ricardo E StensethAustralia2026-06-23Chapman, Ross E Esq PROPOSAL24Ioni Bowcher
1020Emily G OstroskyBrazil2026-06-27Chanay, Jeffrey A Esq NEGOTIATION48Amy Elsner
1021Deepesh V BologniaItaly2026-06-07Chemel, James L Cpa UNQUALIFIED4Bernardo Dominic
1022Silvio K ButtJapan2026-06-13Chanay, Jeffrey A Esq RENEWAL53Onyama Limba
1023Jones F RulapaughArgentina2026-06-25Dorl, James J Esq QUALIFIED29Elwin Sharvill
1024Jeanfrancois Y AmigonGermany2026-06-21Chemel, James L Cpa UNQUALIFIED76Ivan Magalhaes
1025Maria W MarrierRussia2026-06-28Chanay, Jeffrey A Esq NEGOTIATION31Ioni Bowcher
1026Isabel M CampainRussia2026-06-26Morlong Associates RENEWAL62Asiya Javayant
1027Maisha P MaletBrazil2026-06-05Truhlar And Truhlar Attys RENEWAL19Anna Fali
1028Jefferson P GlickItaly2026-06-14Commercial Press UNQUALIFIED37Anna Fali
1029Maisha P NickaArgentina2026-06-21Dorl, James J Esq PROPOSAL32Bernardo Dominic
1030Wickens E BowleyGermany2026-06-11Buckley Miller Wright NEGOTIATION24Ivan Magalhaes
1031Jennifer D OstroskyAustralia2026-06-07Feiner Bros NEGOTIATION21Elwin Sharvill
1032Antonio A GlickBrazil2026-06-26Benton, John B Jr NEGOTIATION7Xuxue Feng
1033David A KolmetzGermany2026-06-12Buckley Miller Wright RENEWAL22Stephen Shaw
1034Jones G ShinkoBrazil2026-06-22Benton, John B Jr NEW59Xuxue Feng
1035David W SchemmerRussia2026-06-01Rangoni Of Florence UNQUALIFIED76Elwin Sharvill
1036Johnson I PoquetteCanada2026-06-15Chapman, Ross E Esq NEGOTIATION15Ioni Bowcher
1037Morrow D SlusarskiAustralia2026-06-07Commercial Press NEGOTIATION94Bernardo Dominic
1038Leon S BologniaIndia2026-06-04Truhlar And Truhlar Attys NEGOTIATION19Elwin Sharvill
1039Faith J IturbideSpain2026-06-03Truhlar And Truhlar Attys NEW86Xuxue Feng
1040Sinclair T VenereGermany2026-06-18Commercial Press NEGOTIATION30Asiya Javayant
1041Jones O WhobreyIndia2026-06-15Morlong Associates UNQUALIFIED9Ivan Magalhaes
1042Faith D CaldareraUnited Kingdom2026-06-03King, Christopher A Esq UNQUALIFIED98Ivan Magalhaes
1043Morrow Q MaletBrazil2026-06-17Chanay, Jeffrey A Esq UNQUALIFIED74Ivan Magalhaes
1044Emily V BologniaUnited Kingdom2026-06-15Chanay, Jeffrey A Esq NEGOTIATION80Elwin Sharvill
1045Adams P VenereUnited Kingdom2026-06-17Morlong Associates UNQUALIFIED90Ivan Magalhaes
1046Mujtaba Z GillianFrance2026-06-26Chapman, Ross E Esq NEW24Xuxue Feng
1047Leja R DoeJapan2026-06-13Chemel, James L Cpa PROPOSAL45Ivan Magalhaes
1048Nicolas N CaldareraGermany2026-06-20Feltz Printing Service NEGOTIATION59Ioni Bowcher
1049Murillo O OstroskyArgentina2026-06-23Rousseaux, Michael Esq QUALIFIED4Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Greenwood K OstroskyRussiaIvan Magalhaes UNQUALIFIED
Rodrigues D SergiArgentinaIvan Magalhaes QUALIFIED
Leon P ChuiArgentinaBernardo Dominic QUALIFIED
Johnson Z WieserArgentinaAmy Elsner UNQUALIFIED
Salvatore H FigeroaJapanAsiya Javayant NEW
Cody S MorascaAustraliaBernardo Dominic UNQUALIFIED
Jefferson K BologniaIndiaAnna Fali NEGOTIATION
Jeanfrancois S DoeUnited KingdomAmy Elsner UNQUALIFIED
Nicolas P RulapaughAustraliaAmy Elsner QUALIFIED
David G RoysterJapanAmy Elsner NEGOTIATION
Misaki C StockhamArgentinaAnna Fali UNQUALIFIED
Deepesh M RoysterUnited KingdomIvan Magalhaes NEW
David Y OstroskyIndiaOnyama Limba NEGOTIATION
Rodrigues K KuskoRussiaOnyama Limba RENEWAL
Julie Q PaprockiArgentinaElwin Sharvill NEGOTIATION
Nicolas P BowleyItalyElwin Sharvill RENEWAL
Morrow N OldroydGermanyAsiya Javayant NEGOTIATION
Faith C SlusarskiAustraliaStephen Shaw RENEWAL
Leon Q SergiJapanAnna Fali RENEWAL
Izzy C CaldareraAustraliaAnna Fali UNQUALIFIED
Silvio F RimIndiaXuxue Feng RENEWAL
Mujtaba E StockhamGermanyIoni Bowcher RENEWAL
Faith E TollnerCanadaXuxue Feng RENEWAL
Claire T WhobreyJapanXuxue Feng UNQUALIFIED
Darci X MorascaArgentinaOnyama Limba NEW
Aditya G CaldareraUnited KingdomXuxue Feng NEW
Smith G StockhamIndiaXuxue Feng NEW
Jefferson S GarufiGermanyIoni Bowcher UNQUALIFIED
Antonio C CaudyFranceIoni Bowcher QUALIFIED
Nicolas G MarrierCanadaIoni Bowcher RENEWAL
Deepesh J PoquetteSpainStephen Shaw NEGOTIATION
Kadeem H GarufiAustraliaStephen Shaw NEW
Aditya A BologniaFranceElwin Sharvill QUALIFIED
Maria B NestleItalyAnna Fali NEGOTIATION
Sinclair D DarakjyGermanyStephen Shaw NEW
Alejandro C AmigonIndiaElwin Sharvill QUALIFIED
Ashley D BologniaGermanyIvan Magalhaes RENEWAL
Ivar T MaletIndiaAmy Elsner PROPOSAL
Juan O NestleFranceStephen Shaw RENEWAL
Munro R AmigonCanadaIoni Bowcher UNQUALIFIED
Cody T KuskoJapanStephen Shaw UNQUALIFIED
Jeanfrancois R CaudyJapanBernardo Dominic NEW
Deepesh D BriddickAustraliaElwin Sharvill PROPOSAL
James F RutaRussiaBernardo Dominic RENEWAL
Maria V InouyeBrazilIoni Bowcher UNQUALIFIED
Aika T RutaJapanBernardo Dominic UNQUALIFIED
Salvatore W AlbaresSpainElwin Sharvill NEGOTIATION
Sinclair P InouyeRussiaBernardo Dominic UNQUALIFIED
Misaki E NestleGermanyAsiya Javayant PROPOSAL
Stacey K SaylorsJapanBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Alejandro C Sergi
Emily P Morasca
Antonio C Iturbide
Jeanfrancois T Morasca
Jones C Nestle
Kadeem I Gillian
Smith H Bolognia
Rodrigues P Flosi
Arvin I Maclead
Salvatore I Caudy
Murillo S Ruta
Julie R Marrier
Leon X Malet
Chavez B Campain
Munro W Poquette
Ricardo F Schemmer
Juan W Sergi
Ivar R Ferencz
Sinclair G Campain
Kadeem W Royster
Smith M Malet
Izzy Z Poquette
Ivar E Darakjy
Stacey B Shinko
Mujtaba K Marrier
Jefferson D Chui
Darci B Kolmetz
Tony T Darakjy
Julie H Schemmer
Aika Z Malet
Johnson C Darakjy
Leja T Vocelka
Ricardo P Schemmer
Maisha L Poquette
Jefferson Y Shinko
Leon X Perin
Emily T Kolmetz
Emily N Saylors
Clifford B Nicka
Stacey F Caldarera
Greenwood B Malet
Darci L Kolmetz
Maisha R Dilliard
Mujtaba C Nicka
Greenwood X Vocelka
Mujtaba P Bolognia
Francesco S Nestle
Ashley W Marrier
Greenwood C Perin
Alejandro S Shinko
IdCountryDate
1000Germany2026-06-04
1001Brazil2026-06-28
1002Spain2026-06-11
1003Argentina2026-06-24
1004Argentina2026-05-31
1005Spain2026-06-08
1006France2026-06-17
1007Brazil2026-06-02
1008Russia2026-06-10
1009Russia2026-06-26
1010Australia2026-06-11
1011Canada2026-06-27
1012United Kingdom2026-06-01
1013Germany2026-06-03
1014Japan2026-06-15
1015Germany2026-06-22
1016Canada2026-06-09
1017United Kingdom2026-06-26
1018Russia2026-06-19
1019Argentina2026-06-14
1020Australia2026-06-28
1021Australia2026-06-15
1022Canada2026-06-21
1023Germany2026-06-17
1024Germany2026-05-30
1025Argentina2026-06-18
1026Germany2026-06-01
1027France2026-06-08
1028Germany2026-06-12
1029Japan2026-06-26
1030India2026-06-01
1031Russia2026-06-17
1032Germany2026-05-30
1033France2026-06-08
1034United Kingdom2026-06-18
1035Italy2026-06-25
1036Canada2026-06-03
1037France2026-06-25
1038Spain2026-06-08
1039Brazil2026-06-20
1040Japan2026-06-27
1041United Kingdom2026-06-07
1042Italy2026-06-28
1043Russia2026-06-20
1044France2026-06-16
1045Spain2026-06-17
1046Germany2026-06-02
1047United Kingdom2026-06-01
1048France2026-06-21
1049Argentina2026-06-16

On-Demand Data

NameIdCountryDate
Maria B Iturbide1000Australia2026-06-27
Silvio S Schemmer1001Australia2026-06-28
Greenwood W Marrier1002Brazil2026-05-31
Munro E Oldroyd1003Australia2026-06-09
Antonio C Caldarera1004France2026-06-17
Darci K Foller1005Germany2026-06-04
Alejandro E Stenseth1006Spain2026-06-13
Darci E Nicka1007Argentina2026-05-30
Aditya L Briddick1008Brazil2026-06-26
Nicolas C Inouye1009Spain2026-06-26
Izzy A Doe1010Brazil2026-06-06
Juan M Perin1011Spain2026-06-23
Deepesh K Foller1012Canada2026-06-15
Adams B Caldarera1013India2026-06-17
Aditya Q Venere1014Italy2026-06-25
Salvatore J Paprocki1015Russia2026-06-20
Maisha L Ostrosky1016Argentina2026-06-27
Ricardo Y Kusko1017India2026-06-25
Alejandro C Perin1018United Kingdom2026-06-15
Cody A Waycott1019Italy2026-06-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo S PoquetteFranceStephen Shaw UNQUALIFIED
Adams L ChuiCanadaIoni Bowcher NEGOTIATION
Maria Y GlickJapanElwin Sharvill UNQUALIFIED
Juan R GlickJapanAsiya Javayant NEW
Antonio G DilliardUnited KingdomAsiya Javayant RENEWAL
James M SchemmerBrazilXuxue Feng RENEWAL
Kadeem X CampainIndiaAmy Elsner QUALIFIED
Juan S SchemmerUnited KingdomBernardo Dominic UNQUALIFIED
Munro L MorascaIndiaElwin Sharvill RENEWAL
Morrow X InouyeItalyIoni Bowcher NEW
David P FollerUnited KingdomElwin Sharvill RENEWAL
Aika X BologniaRussiaBernardo Dominic QUALIFIED
Misaki P PaprockiCanadaXuxue Feng NEW
Ricardo O GillianJapanBernardo Dominic PROPOSAL
Murillo S PoquetteSpainStephen Shaw NEW
Leja A DilliardRussiaAnna Fali UNQUALIFIED
Smith I PoquetteAustraliaIoni Bowcher RENEWAL
Julie L GauchoJapanAmy Elsner RENEWAL
Julie W VocelkaGermanyStephen Shaw UNQUALIFIED
Rodrigues K DarakjyBrazilStephen Shaw PROPOSAL
Ricardo C WieserJapanAsiya Javayant RENEWAL
Costa O PaprockiCanadaAnna Fali UNQUALIFIED
Izzy Z OldroydCanadaOnyama Limba RENEWAL
Sinclair B BowleyAustraliaXuxue Feng UNQUALIFIED
Adams B KolmetzSpainAsiya Javayant NEW
Octavia L ChuiCanadaElwin Sharvill NEW
Rodrigues Y WieserBrazilAsiya Javayant PROPOSAL
Misaki O MaletIndiaAmy Elsner RENEWAL
Leon S DarakjySpainBernardo Dominic UNQUALIFIED
Darci N RoysterCanadaXuxue Feng RENEWAL
Alejandro O NickaCanadaStephen Shaw PROPOSAL
Darci O MaletRussiaAsiya Javayant PROPOSAL
Morrow P BowleyBrazilElwin Sharvill RENEWAL
Chavez U WaycottItalyAmy Elsner NEW
Jefferson O VocelkaAustraliaAnna Fali UNQUALIFIED
Isabel T FerenczJapanAmy Elsner UNQUALIFIED
Mujtaba D RulapaughAustraliaOnyama Limba NEGOTIATION
Johnson M DarakjyArgentinaBernardo Dominic PROPOSAL
Cody I MarrierAustraliaIvan Magalhaes UNQUALIFIED
David Z GarufiAustraliaAmy Elsner 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.