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
James J RoysterRussiaElwin Sharvill PROPOSAL
Salvatore N PoquetteArgentinaAnna Fali RENEWAL
Octavia T StensethAustraliaIoni Bowcher PROPOSAL
Cody T FlosiUnited KingdomXuxue Feng RENEWAL
Aditya X KuskoItalyBernardo Dominic UNQUALIFIED
Kaitlin Z ChuiSpainAsiya Javayant NEGOTIATION
Maria C NickaIndiaAnna Fali QUALIFIED
Mujtaba T IturbideRussiaIvan Magalhaes RENEWAL
David Y BriddickArgentinaElwin Sharvill QUALIFIED
Darci E InouyeCanadaXuxue Feng NEW
Maisha A StensethJapanStephen Shaw PROPOSAL
Arvin S GauchoUnited KingdomBernardo Dominic PROPOSAL
Izzy B RulapaughCanadaIoni Bowcher UNQUALIFIED
Maisha J WhobreyIndiaXuxue Feng RENEWAL
Jones F PoquetteJapanElwin Sharvill QUALIFIED
Francesco O MaletFranceBernardo Dominic QUALIFIED
Mujtaba B BologniaCanadaAnna Fali NEGOTIATION
Deepesh G GillianJapanOnyama Limba UNQUALIFIED
David R AmigonJapanIoni Bowcher NEGOTIATION
Johnson J OldroydFranceElwin Sharvill QUALIFIED
Mayumi T CaldareraCanadaOnyama Limba RENEWAL
Juan U KuskoArgentinaAsiya Javayant QUALIFIED
Ricardo Z GauchoItalyAmy Elsner QUALIFIED
Greenwood U RoysterRussiaXuxue Feng NEGOTIATION
Clifford S NestleGermanyStephen Shaw QUALIFIED
Jennifer M MacleadGermanyElwin Sharvill QUALIFIED
Jeanfrancois L SergiRussiaAmy Elsner NEW
Isabel G SaylorsGermanyElwin Sharvill QUALIFIED
Mujtaba P NestleGermanyOnyama Limba PROPOSAL
Salvatore V TollnerBrazilXuxue Feng PROPOSAL
Francesco S RulapaughJapanXuxue Feng PROPOSAL
Aditya G RutaUnited KingdomAnna Fali UNQUALIFIED
Mujtaba B WieserCanadaAnna Fali NEGOTIATION
Mujtaba V DilliardIndiaAmy Elsner NEW
Arvin U BowleyRussiaElwin Sharvill NEGOTIATION
Arvin F InouyeGermanyBernardo Dominic RENEWAL
Kadeem J GarufiAustraliaIoni Bowcher RENEWAL
Ricardo T OstroskyUnited KingdomOnyama Limba NEGOTIATION
Misaki Q NickaFranceElwin Sharvill NEGOTIATION
Darci T InouyeBrazilElwin Sharvill UNQUALIFIED
Clifford W GillianFranceXuxue Feng RENEWAL
Misaki B CaldareraCanadaBernardo Dominic NEW
Leon F GauchoUnited KingdomAnna Fali QUALIFIED
James G GillianGermanyXuxue Feng QUALIFIED
Leon Q KolmetzBrazilAnna Fali NEW
Alejandro V PerinIndiaOnyama Limba UNQUALIFIED
Murillo A VocelkaJapanXuxue Feng RENEWAL
Alejandro Z WieserUnited KingdomIvan Magalhaes NEGOTIATION
Jennifer D FerenczUnited KingdomAsiya Javayant PROPOSAL
Aika B AlbaresAustraliaXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Rodrigues L DarakjyRussiaBernardo Dominic RENEWAL
Rodrigues I StensethBrazilAmy Elsner RENEWAL
Rodrigues L ChuiJapanBernardo Dominic NEW
Mayumi X MaletRussiaAnna Fali NEGOTIATION
Maria M IturbideAustraliaAsiya Javayant PROPOSAL
Misaki C ShinkoCanadaIoni Bowcher NEW
Leja D RulapaughRussiaAsiya Javayant PROPOSAL
Mujtaba U VenereFranceElwin Sharvill NEW
Munro S BowleyUnited KingdomXuxue Feng RENEWAL
Deepesh U CaudyJapanAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey Z RimArgentina2026-05-10Morlong Associates RENEWAL84Onyama Limba
1001Maisha G AmigonIndia2026-05-23Buckley Miller Wright PROPOSAL30Ioni Bowcher
1002Jeanfrancois C PoquetteCanada2026-05-08King, Christopher A Esq NEGOTIATION36Xuxue Feng
1003Arvin C OstroskyItaly2026-05-08Chemel, James L Cpa UNQUALIFIED81Stephen Shaw
1004Greenwood X GlickSpain2026-05-07Morlong Associates PROPOSAL43Anna Fali
1005James L SchemmerCanada2026-05-23Buckley Miller Wright QUALIFIED47Amy Elsner
1006Deepesh J ShinkoUnited Kingdom2026-05-13Printing Dimensions NEW13Anna Fali
1007Kaitlin U RoysterUnited Kingdom2026-05-03Truhlar And Truhlar Attys QUALIFIED40Onyama Limba
1008Sinclair D ButtUnited Kingdom2026-05-14Benton, John B Jr NEW21Ioni Bowcher
1009James J RulapaughCanada2026-05-06Commercial Press PROPOSAL86Ivan Magalhaes
1010James U SergiGermany2026-05-05Rousseaux, Michael Esq RENEWAL89Elwin Sharvill
1011Leon S GauchoUnited Kingdom2026-05-18Rangoni Of Florence PROPOSAL70Ioni Bowcher
1012Costa H GlickFrance2026-05-06Benton, John B Jr UNQUALIFIED10Elwin Sharvill
1013Wickens W PoquetteJapan2026-05-28Buckley Miller Wright UNQUALIFIED25Stephen Shaw
1014Cody J FollerSpain2026-05-10Commercial Press RENEWAL40Amy Elsner
1015Leja R IturbideRussia2026-05-07Rousseaux, Michael Esq NEW76Ioni Bowcher
1016Julie Q FollerFrance2026-05-15Rousseaux, Michael Esq NEW96Bernardo Dominic
1017Munro S FerenczGermany2026-05-21Commercial Press UNQUALIFIED56Anna Fali
1018Leon J ButtSpain2026-05-26Chapman, Ross E Esq NEGOTIATION30Onyama Limba
1019Ashley B MarrierGermany2026-05-07Truhlar And Truhlar Attys NEGOTIATION97Elwin Sharvill
1020Faith H NestleUnited Kingdom2026-05-23Buckley Miller Wright UNQUALIFIED18Ioni Bowcher
1021Deepesh F TollnerAustralia2026-05-29Morlong Associates NEW43Asiya Javayant
1022Ivar X AmigonAustralia2026-05-24Benton, John B Jr PROPOSAL1Xuxue Feng
1023Chavez Z ButtArgentina2026-05-22Commercial Press NEGOTIATION40Ivan Magalhaes
1024Claire K SchemmerIndia2026-05-21King, Christopher A Esq UNQUALIFIED10Xuxue Feng
1025Cody H FollerJapan2026-05-23Dorl, James J Esq UNQUALIFIED72Elwin Sharvill
1026Leon R DarakjyItaly2026-05-13Benton, John B Jr NEW55Anna Fali
1027Murillo S RutaRussia2026-05-24Rangoni Of Florence NEW19Asiya Javayant
1028Emily S GauchoArgentina2026-05-29Chapman, Ross E Esq PROPOSAL18Amy Elsner
1029James Y MarrierUnited Kingdom2026-05-03Rousseaux, Michael Esq NEW64Asiya Javayant
1030Jefferson P KolmetzFrance2026-05-18Morlong Associates UNQUALIFIED49Asiya Javayant
1031Cody P DilliardIndia2026-05-27Rangoni Of Florence QUALIFIED51Anna Fali
1032Arvin I WieserRussia2026-05-01Truhlar And Truhlar Attys NEW88Bernardo Dominic
1033Jefferson V GauchoIndia2026-05-02Chapman, Ross E Esq PROPOSAL2Elwin Sharvill
1034Jennifer V SchemmerRussia2026-05-28King, Christopher A Esq UNQUALIFIED83Onyama Limba
1035Silvio X WieserRussia2026-05-04Chemel, James L Cpa NEW42Ivan Magalhaes
1036Rodrigues J RutaGermany2026-05-23Rousseaux, Michael Esq NEW33Elwin Sharvill
1037Leon J AlbaresRussia2026-05-17Truhlar And Truhlar Attys QUALIFIED98Stephen Shaw
1038Aruna M DoeUnited Kingdom2026-05-16Rangoni Of Florence PROPOSAL71Stephen Shaw
1039Kaitlin V WhobreyFrance2026-05-14Feltz Printing Service RENEWAL59Elwin Sharvill
1040Kaitlin B CaldareraIndia2026-05-01Rangoni Of Florence RENEWAL36Bernardo Dominic
1041James I MaletBrazil2026-05-26Dorl, James J Esq RENEWAL54Ivan Magalhaes
1042Emily L MacleadItaly2026-05-27Printing Dimensions RENEWAL86Bernardo Dominic
1043Ashley L VocelkaJapan2026-05-11Buckley Miller Wright RENEWAL28Asiya Javayant
1044Kaitlin M AlbaresArgentina2026-05-03Dorl, James J Esq NEW83Bernardo Dominic
1045Leja C AmigonBrazil2026-05-02Chemel, James L Cpa NEGOTIATION95Ivan Magalhaes
1046Jones F NickaRussia2026-05-16King, Christopher A Esq RENEWAL56Elwin Sharvill
1047Clifford S KolmetzJapan2026-05-25Feiner Bros NEW17Asiya Javayant
1048Claire A ChuiJapan2026-05-21Chapman, Ross E Esq UNQUALIFIED20Anna Fali
1049Tony B NickaFrance2026-05-21Commercial Press PROPOSAL76Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues B CaldareraArgentinaIoni Bowcher QUALIFIED
Ivar M WieserGermanyAnna Fali QUALIFIED
Isabel J FerenczFranceXuxue Feng UNQUALIFIED
Stacey A WhobreyFranceXuxue Feng PROPOSAL
Emily N RimItalyElwin Sharvill NEGOTIATION
Claire Q BowleyJapanElwin Sharvill UNQUALIFIED
David P BologniaSpainElwin Sharvill QUALIFIED
James J GauchoAustraliaAsiya Javayant NEW
Jefferson S DilliardJapanStephen Shaw QUALIFIED
Nicolas X NestleAustraliaAmy Elsner PROPOSAL
James Z FollerArgentinaIoni Bowcher NEGOTIATION
Ricardo R WhobreyRussiaElwin Sharvill PROPOSAL
Antonio D KuskoItalyIvan Magalhaes QUALIFIED
Johnson G OldroydRussiaStephen Shaw PROPOSAL
Morrow T GauchoBrazilIoni Bowcher NEGOTIATION
Izzy B KuskoFranceIvan Magalhaes RENEWAL
Ivar J ButtIndiaIoni Bowcher PROPOSAL
Ashley R IturbideGermanyAsiya Javayant NEW
Salvatore P FlosiArgentinaStephen Shaw UNQUALIFIED
Alejandro F DilliardGermanyXuxue Feng NEGOTIATION
Maria S GarufiFranceXuxue Feng NEGOTIATION
Antonio Y StensethBrazilIvan Magalhaes UNQUALIFIED
Salvatore R IturbideSpainElwin Sharvill NEW
Costa G WieserItalyElwin Sharvill NEGOTIATION
Salvatore Y GlickJapanOnyama Limba PROPOSAL
Leon F VenereItalyAsiya Javayant NEW
Maisha U RutaUnited KingdomIoni Bowcher NEW
David Z FerenczItalyOnyama Limba QUALIFIED
James W AmigonRussiaBernardo Dominic RENEWAL
Mayumi T BologniaArgentinaIvan Magalhaes PROPOSAL
Mayumi Y SchemmerSpainAmy Elsner NEGOTIATION
Izzy W VocelkaBrazilBernardo Dominic PROPOSAL
Faith C InouyeArgentinaOnyama Limba NEGOTIATION
Mayumi F DoeJapanOnyama Limba NEGOTIATION
Emily H RutaGermanyOnyama Limba NEW
Jeanfrancois Q PaprockiBrazilElwin Sharvill NEW
Rodrigues K RoysterUnited KingdomIvan Magalhaes PROPOSAL
Rodrigues T BologniaRussiaOnyama Limba PROPOSAL
Sinclair B ChuiGermanyIvan Magalhaes NEW
Francesco B ButtUnited KingdomElwin Sharvill NEW
Octavia I PoquetteBrazilBernardo Dominic PROPOSAL
Cody F ButtFranceAsiya Javayant RENEWAL
Juan M PoquetteUnited KingdomIvan Magalhaes RENEWAL
Costa N PerinIndiaIoni Bowcher UNQUALIFIED
Francesco E FerenczArgentinaIoni Bowcher UNQUALIFIED
Salvatore B SlusarskiArgentinaIoni Bowcher NEW
Ricardo O GarufiArgentinaElwin Sharvill NEGOTIATION
Clifford S SergiCanadaBernardo Dominic UNQUALIFIED
Faith Y WieserJapanIvan Magalhaes NEGOTIATION
Clifford P BologniaBrazilAmy Elsner QUALIFIED
Frozen Columns
Name
Tony P Darakjy
Salvatore X Paprocki
Ashley D Dilliard
Leon N Marrier
Mujtaba A Inouye
Silvio H Bowley
Jones L Glick
Jones M Paprocki
Juan Y Stockham
Tony B Foller
Misaki W Caldarera
Jeanfrancois P Malet
Ashley B Amigon
Costa X Oldroyd
Jefferson V Glick
Izzy F Briddick
Greenwood A Kusko
Sinclair I Waycott
Maisha H Perin
Johnson Q Stenseth
Isabel H Maclead
Munro G Wieser
Darci B Paprocki
Kadeem D Shinko
Tony S Figeroa
Octavia Y Ostrosky
Octavia S Iturbide
Emily Q Flosi
James D Darakjy
Mayumi Q Inouye
David V Amigon
Mayumi Q Malet
Maria Y Waycott
Greenwood Y Nicka
Morrow V Chui
Morrow G Kolmetz
Cody F Glick
Mujtaba C Whobrey
Maria M Stenseth
Julie C Bolognia
Sinclair B Briddick
Aika Q Stenseth
Kadeem L Royster
Costa A Garufi
Wickens G Inouye
Leja G Ruta
Maria S Amigon
Aruna A Foller
Rodrigues Z Malet
Francesco T Paprocki
IdCountryDate
1000France2026-05-25
1001India2026-05-25
1002Russia2026-05-18
1003Russia2026-05-27
1004Australia2026-05-02
1005Brazil2026-05-03
1006United Kingdom2026-05-20
1007United Kingdom2026-05-01
1008Spain2026-05-26
1009Spain2026-05-26
1010Russia2026-05-11
1011Russia2026-05-13
1012Brazil2026-05-20
1013France2026-05-13
1014Argentina2026-05-29
1015India2026-05-18
1016Brazil2026-05-18
1017India2026-05-15
1018Spain2026-05-18
1019Germany2026-05-01
1020Russia2026-05-04
1021Russia2026-05-27
1022United Kingdom2026-05-12
1023Australia2026-05-12
1024Japan2026-05-19
1025United Kingdom2026-05-12
1026Argentina2026-05-15
1027United Kingdom2026-05-22
1028United Kingdom2026-05-22
1029Argentina2026-05-24
1030Argentina2026-05-20
1031Russia2026-05-04
1032United Kingdom2026-05-28
1033Argentina2026-05-01
1034Italy2026-05-27
1035Spain2026-05-23
1036United Kingdom2026-05-18
1037United Kingdom2026-05-16
1038Australia2026-05-14
1039Russia2026-05-16
1040Japan2026-05-03
1041India2026-05-14
1042Spain2026-05-01
1043United Kingdom2026-05-01
1044Italy2026-05-24
1045Spain2026-04-30
1046Australia2026-05-17
1047Russia2026-05-13
1048United Kingdom2026-05-28
1049Brazil2026-05-24

On-Demand Data

NameIdCountryDate
Salvatore F Briddick1000Spain2026-04-30
Leja D Nestle1001Argentina2026-05-17
Izzy Z Shinko1002Brazil2026-05-19
Ashley M Nestle1003Argentina2026-05-15
Izzy W Shinko1004Brazil2026-05-19
David K Nestle1005Spain2026-05-21
Greenwood H Figeroa1006United Kingdom2026-05-20
Jennifer S Malet1007Japan2026-05-04
Murillo Z Garufi1008United Kingdom2026-05-08
Izzy O Kolmetz1009Australia2026-05-01
Faith N Paprocki1010Italy2026-05-06
Isabel C Wieser1011Spain2026-05-29
Nicolas O Saylors1012Germany2026-05-05
Kaitlin H Vocelka1013Japan2026-05-04
Smith R Vocelka1014Australia2026-05-07
Johnson Z Rim1015Japan2026-05-16
Francesco Z Chui1016Italy2026-05-16
Greenwood O Nicka1017France2026-05-18
Julie I Bolognia1018India2026-05-04
Wickens J Perin1019Canada2026-05-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha K GauchoJapanElwin Sharvill NEGOTIATION
Maria S IturbideItalyIvan Magalhaes RENEWAL
Mayumi R GillianFranceOnyama Limba QUALIFIED
Clifford A InouyeSpainAsiya Javayant QUALIFIED
Aika S MacleadItalyOnyama Limba NEGOTIATION
Maria U KuskoGermanyBernardo Dominic QUALIFIED
Chavez K VocelkaItalyStephen Shaw QUALIFIED
Kaitlin R FlosiAustraliaXuxue Feng NEW
Smith B CaudyJapanAmy Elsner PROPOSAL
Jones A WieserIndiaXuxue Feng RENEWAL
Ricardo Y SlusarskiGermanyAmy Elsner QUALIFIED
Greenwood N GauchoSpainAnna Fali PROPOSAL
Sinclair M RutaUnited KingdomAsiya Javayant UNQUALIFIED
Julie P KolmetzIndiaIoni Bowcher UNQUALIFIED
Nicolas K RutaUnited KingdomAsiya Javayant NEGOTIATION
Murillo R WhobreyArgentinaAsiya Javayant QUALIFIED
Aruna H BriddickJapanIoni Bowcher NEW
Arvin A AlbaresCanadaXuxue Feng NEW
Rodrigues U MarrierJapanIvan Magalhaes PROPOSAL
Chavez S NestleJapanIoni Bowcher UNQUALIFIED
Kaitlin T DoeIndiaAmy Elsner RENEWAL
Arvin L AlbaresBrazilXuxue Feng QUALIFIED
Faith Z WhobreyUnited KingdomBernardo Dominic QUALIFIED
Faith D MorascaIndiaXuxue Feng UNQUALIFIED
Izzy X PerinGermanyElwin Sharvill NEW
Salvatore S CampainSpainAmy Elsner NEW
Jones D InouyeJapanIvan Magalhaes PROPOSAL
Salvatore G ButtGermanyIvan Magalhaes NEGOTIATION
Octavia B GillianArgentinaStephen Shaw NEGOTIATION
Chavez A RoysterBrazilStephen Shaw QUALIFIED
Adams C StensethGermanyIoni Bowcher QUALIFIED
Ricardo Z PoquetteUnited KingdomBernardo Dominic UNQUALIFIED
Maria C IturbideCanadaXuxue Feng UNQUALIFIED
Mayumi T RimAustraliaIoni Bowcher PROPOSAL
Mayumi Q IturbideUnited KingdomAnna Fali NEGOTIATION
Mayumi E AmigonCanadaIvan Magalhaes QUALIFIED
Aika B TollnerUnited KingdomIoni Bowcher NEW
Faith S ChuiItalyIoni Bowcher NEGOTIATION
Deepesh D MarrierItalyIvan Magalhaes NEW
Mujtaba V BowleyAustraliaAmy Elsner RENEWAL

<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.