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
Jeanfrancois Z AmigonGermanyAmy Elsner NEW
Misaki U PerinItalyXuxue Feng QUALIFIED
Rodrigues F PaprockiSpainAnna Fali QUALIFIED
Jefferson B InouyeGermanyOnyama Limba UNQUALIFIED
Alejandro F KolmetzIndiaXuxue Feng PROPOSAL
Maria H StensethRussiaBernardo Dominic PROPOSAL
Chavez J NickaUnited KingdomBernardo Dominic RENEWAL
Johnson K KuskoArgentinaStephen Shaw NEW
Deepesh I AlbaresCanadaAnna Fali UNQUALIFIED
Misaki Q RutaUnited KingdomIvan Magalhaes NEW
Ricardo A NickaSpainElwin Sharvill PROPOSAL
Stacey F PerinItalyElwin Sharvill RENEWAL
James V MarrierSpainIoni Bowcher RENEWAL
Jeanfrancois X WhobreyArgentinaAsiya Javayant QUALIFIED
Izzy A RutaJapanIoni Bowcher NEW
Mayumi U GauchoIndiaXuxue Feng NEW
Izzy H OldroydUnited KingdomIoni Bowcher NEW
Ricardo L VocelkaFranceElwin Sharvill UNQUALIFIED
Rodrigues I DarakjyCanadaAmy Elsner NEGOTIATION
Jones W KolmetzFranceIvan Magalhaes QUALIFIED
Francesco N CaudyCanadaIvan Magalhaes QUALIFIED
Ivar A StensethBrazilXuxue Feng PROPOSAL
Nicolas L SaylorsGermanyOnyama Limba UNQUALIFIED
Wickens E CampainArgentinaOnyama Limba RENEWAL
Julie I TollnerCanadaBernardo Dominic RENEWAL
Johnson R GarufiCanadaStephen Shaw QUALIFIED
Jones I BologniaGermanyAsiya Javayant PROPOSAL
Leon U WaycottIndiaIoni Bowcher NEGOTIATION
Arvin Y WieserIndiaStephen Shaw PROPOSAL
Rodrigues J WaycottBrazilIvan Magalhaes NEW
Greenwood U ShinkoJapanIvan Magalhaes RENEWAL
Sinclair T FollerCanadaIvan Magalhaes NEGOTIATION
Clifford P MarrierSpainIoni Bowcher UNQUALIFIED
Isabel Y RimIndiaAmy Elsner QUALIFIED
Greenwood H IturbideFranceAsiya Javayant PROPOSAL
Greenwood K MacleadAustraliaStephen Shaw RENEWAL
Cody F InouyeFranceAmy Elsner RENEWAL
Kaitlin G MarrierItalyAmy Elsner NEW
Misaki Z BriddickGermanyOnyama Limba QUALIFIED
Leon M RutaAustraliaIvan Magalhaes PROPOSAL
Stacey R WieserArgentinaOnyama Limba UNQUALIFIED
Leja Z CaudyAustraliaAsiya Javayant RENEWAL
Faith Q CampainAustraliaBernardo Dominic UNQUALIFIED
Darci T FollerCanadaXuxue Feng UNQUALIFIED
Salvatore W GarufiCanadaStephen Shaw RENEWAL
Aika A BriddickFranceStephen Shaw RENEWAL
Tony U DilliardAustraliaElwin Sharvill UNQUALIFIED
Misaki Z DilliardItalyIvan Magalhaes QUALIFIED
Deepesh N SergiJapanAsiya Javayant PROPOSAL
Faith X GlickSpainStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Aika F GlickSpainAmy Elsner NEGOTIATION
Wickens D FerenczUnited KingdomOnyama Limba UNQUALIFIED
Darci A SlusarskiRussiaAnna Fali UNQUALIFIED
Costa E VocelkaGermanyXuxue Feng NEGOTIATION
Maria V TollnerUnited KingdomAmy Elsner QUALIFIED
Chavez H IturbideItalyStephen Shaw PROPOSAL
James A FerenczSpainBernardo Dominic RENEWAL
Aika G AlbaresJapanBernardo Dominic UNQUALIFIED
Aditya O DoeIndiaAmy Elsner NEW
Maisha T StensethItalyAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh S MacleadArgentina2026-02-14Rangoni Of Florence PROPOSAL34Elwin Sharvill
1001Tony C AmigonCanada2026-02-18Commercial Press PROPOSAL4Elwin Sharvill
1002Johnson V GillianIndia2026-02-02Commercial Press PROPOSAL44Onyama Limba
1003Salvatore W FlosiRussia2026-02-28Dorl, James J Esq PROPOSAL89Bernardo Dominic
1004Maisha Y RulapaughJapan2026-02-11Chanay, Jeffrey A Esq UNQUALIFIED78Asiya Javayant
1005Kaitlin X VocelkaCanada2026-02-28Chemel, James L Cpa UNQUALIFIED85Onyama Limba
1006Deepesh O DilliardBrazil2026-02-16Dorl, James J Esq QUALIFIED82Xuxue Feng
1007Adams J GillianGermany2026-02-27Printing Dimensions NEGOTIATION62Stephen Shaw
1008Salvatore H FollerAustralia2026-02-25Dorl, James J Esq RENEWAL66Amy Elsner
1009Maria W WieserRussia2026-02-14Chapman, Ross E Esq QUALIFIED90Asiya Javayant
1010Isabel F CaudyJapan2026-02-14Morlong Associates QUALIFIED37Stephen Shaw
1011Kadeem G MaletFrance2026-02-15Commercial Press RENEWAL23Anna Fali
1012Ricardo V GarufiAustralia2026-02-07Truhlar And Truhlar Attys PROPOSAL21Bernardo Dominic
1013Stacey D PerinGermany2026-02-22Rousseaux, Michael Esq PROPOSAL23Ivan Magalhaes
1014Aditya K FollerIndia2026-02-15Printing Dimensions NEW42Bernardo Dominic
1015Murillo Q KolmetzUnited Kingdom2026-02-27Benton, John B Jr UNQUALIFIED71Stephen Shaw
1016Alejandro H SchemmerFrance2026-03-01Feiner Bros RENEWAL60Onyama Limba
1017Costa D RutaRussia2026-02-03Feiner Bros UNQUALIFIED78Elwin Sharvill
1018Wickens L GlickUnited Kingdom2026-02-08Feiner Bros PROPOSAL39Stephen Shaw
1019Rodrigues Y BriddickItaly2026-02-15Rangoni Of Florence NEGOTIATION74Asiya Javayant
1020James X FollerJapan2026-02-22Truhlar And Truhlar Attys NEW86Onyama Limba
1021Stacey G BriddickFrance2026-02-10Rousseaux, Michael Esq NEGOTIATION84Stephen Shaw
1022Misaki D RutaUnited Kingdom2026-02-22Feiner Bros RENEWAL14Ivan Magalhaes
1023Maisha C RutaAustralia2026-02-06Printing Dimensions RENEWAL63Onyama Limba
1024Jennifer K DilliardIndia2026-02-25Buckley Miller Wright RENEWAL86Amy Elsner
1025Murillo Y NestleFrance2026-02-13Chemel, James L Cpa QUALIFIED27Onyama Limba
1026Ricardo F BriddickAustralia2026-02-04Chemel, James L Cpa UNQUALIFIED29Ivan Magalhaes
1027Clifford G CaudyUnited Kingdom2026-02-13Feiner Bros RENEWAL31Stephen Shaw
1028Stacey Q NestleIndia2026-02-08Rangoni Of Florence UNQUALIFIED97Xuxue Feng
1029Greenwood F AmigonRussia2026-02-19Rousseaux, Michael Esq PROPOSAL72Ioni Bowcher
1030Leon Z FerenczArgentina2026-02-18King, Christopher A Esq UNQUALIFIED20Asiya Javayant
1031Kaitlin S MacleadUnited Kingdom2026-02-02Buckley Miller Wright NEW54Bernardo Dominic
1032Faith U CampainCanada2026-02-28Chemel, James L Cpa PROPOSAL44Asiya Javayant
1033David J KuskoRussia2026-02-10King, Christopher A Esq RENEWAL69Amy Elsner
1034Nicolas D BriddickAustralia2026-02-10Chanay, Jeffrey A Esq PROPOSAL10Bernardo Dominic
1035Salvatore T FollerJapan2026-02-06King, Christopher A Esq NEW91Anna Fali
1036Julie Y StensethBrazil2026-02-02Buckley Miller Wright NEW81Amy Elsner
1037Francesco Q TollnerBrazil2026-02-23Rangoni Of Florence PROPOSAL5Onyama Limba
1038Leon X VocelkaGermany2026-02-19Truhlar And Truhlar Attys NEW76Amy Elsner
1039Clifford Y SaylorsFrance2026-02-02Printing Dimensions UNQUALIFIED63Bernardo Dominic
1040Mujtaba J BowleyArgentina2026-02-23King, Christopher A Esq NEGOTIATION58Elwin Sharvill
1041Cody W WaycottItaly2026-02-04Feiner Bros NEW94Asiya Javayant
1042Francesco F GillianSpain2026-02-19Chapman, Ross E Esq NEGOTIATION39Elwin Sharvill
1043Jeanfrancois O FerenczIndia2026-02-27Chemel, James L Cpa RENEWAL14Xuxue Feng
1044Stacey H FlosiRussia2026-02-20Dorl, James J Esq PROPOSAL27Stephen Shaw
1045Jones P KolmetzCanada2026-02-07Commercial Press NEGOTIATION17Ivan Magalhaes
1046Alejandro A CaudyRussia2026-02-05Buckley Miller Wright NEW67Elwin Sharvill
1047Deepesh A DoeBrazil2026-02-26Chanay, Jeffrey A Esq QUALIFIED65Ioni Bowcher
1048Costa M CaudyJapan2026-02-08Chemel, James L Cpa PROPOSAL45Anna Fali
1049Ivar R NestleBrazil2026-02-05Chanay, Jeffrey A Esq NEW63Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Tony X MacleadGermanyOnyama Limba NEGOTIATION
Ashley W SchemmerUnited KingdomStephen Shaw NEGOTIATION
Arvin T PoquetteGermanyElwin Sharvill PROPOSAL
Kaitlin J InouyeUnited KingdomStephen Shaw PROPOSAL
Rodrigues S BologniaFranceOnyama Limba NEW
Clifford Y KolmetzItalyIoni Bowcher RENEWAL
Clifford W SlusarskiBrazilBernardo Dominic UNQUALIFIED
Ricardo X FollerGermanyAsiya Javayant NEW
Isabel P WaycottArgentinaOnyama Limba RENEWAL
Faith A DarakjyRussiaXuxue Feng PROPOSAL
Aruna C FlosiRussiaElwin Sharvill NEGOTIATION
Antonio J MorascaUnited KingdomAnna Fali QUALIFIED
Leon B PaprockiArgentinaAsiya Javayant QUALIFIED
Emily P BologniaAustraliaXuxue Feng NEW
Misaki N SlusarskiBrazilBernardo Dominic RENEWAL
Leja I NestleRussiaElwin Sharvill NEGOTIATION
Stacey K IturbideItalyElwin Sharvill NEGOTIATION
Emily L BologniaIndiaIvan Magalhaes UNQUALIFIED
Johnson K MorascaItalyAsiya Javayant UNQUALIFIED
Alejandro F ShinkoUnited KingdomIvan Magalhaes PROPOSAL
David N StensethAustraliaOnyama Limba NEW
David R BriddickAustraliaElwin Sharvill QUALIFIED
Wickens B ButtIndiaXuxue Feng NEW
Mujtaba O NestleBrazilBernardo Dominic NEW
Cody H OstroskyRussiaIvan Magalhaes NEGOTIATION
Rodrigues N KolmetzJapanBernardo Dominic NEW
Rodrigues Q VenereUnited KingdomBernardo Dominic RENEWAL
Isabel C OstroskyJapanElwin Sharvill NEGOTIATION
Isabel U CampainSpainIvan Magalhaes PROPOSAL
Rodrigues H OstroskyFranceBernardo Dominic QUALIFIED
Salvatore W CampainSpainAnna Fali PROPOSAL
Jefferson G AmigonIndiaElwin Sharvill PROPOSAL
Octavia J KolmetzBrazilOnyama Limba PROPOSAL
Izzy D MaletUnited KingdomElwin Sharvill NEGOTIATION
Nicolas O RimIndiaIvan Magalhaes NEGOTIATION
Emily I WaycottSpainAnna Fali NEW
Misaki E InouyeRussiaElwin Sharvill NEW
Ashley Y RoysterCanadaElwin Sharvill NEW
Stacey E CaldareraIndiaAmy Elsner RENEWAL
Emily F VocelkaAustraliaIoni Bowcher QUALIFIED
Francesco G VenereGermanyAsiya Javayant NEGOTIATION
Cody X SergiFranceAmy Elsner NEW
Tony X TollnerUnited KingdomAsiya Javayant RENEWAL
Johnson L PaprockiFranceBernardo Dominic PROPOSAL
Maria E NickaItalyStephen Shaw QUALIFIED
Arvin M MaletBrazilIoni Bowcher NEGOTIATION
Maisha Y MaletFranceOnyama Limba PROPOSAL
Morrow H GillianRussiaAsiya Javayant NEW
Rodrigues F SaylorsRussiaElwin Sharvill UNQUALIFIED
Aika L PoquetteIndiaIoni Bowcher NEGOTIATION
Frozen Columns
Name
Tony J Venere
Cody C Paprocki
Murillo T Amigon
Juan Y Garufi
Aika R Inouye
Rodrigues I Perin
Kadeem E Flosi
Aruna A Paprocki
Mayumi M Sergi
Darci A Chui
Francesco X Bolognia
Jones G Ostrosky
David W Ferencz
Emily Y Kolmetz
Claire P Briddick
Ashley B Chui
Jennifer T Schemmer
Alejandro R Oldroyd
Octavia X Bowley
Juan I Dilliard
Jeanfrancois I Inouye
Ricardo E Caldarera
Francesco V Gaucho
Octavia Q Sergi
Morrow L Chui
Murillo P Darakjy
Maisha S Campain
Misaki R Flosi
Chavez M Rulapaugh
Johnson J Venere
Octavia S Campain
Octavia E Ferencz
Alejandro P Nicka
Morrow I Malet
Ivar V Caudy
Johnson F Campain
Costa P Albares
Isabel V Amigon
Aruna H Ruta
Isabel Z Shinko
Murillo X Stockham
Kadeem L Caldarera
Claire Q Perin
Sinclair U Malet
Octavia G Briddick
Ashley G Rulapaugh
Murillo Q Nicka
Faith J Whobrey
Mayumi J Rim
Cody S Vocelka
IdCountryDate
1000India2026-02-17
1001Germany2026-02-19
1002Germany2026-02-24
1003France2026-02-06
1004United Kingdom2026-02-11
1005Spain2026-02-25
1006Argentina2026-02-23
1007Brazil2026-02-26
1008Spain2026-02-15
1009Brazil2026-02-01
1010Japan2026-02-17
1011Japan2026-02-09
1012France2026-02-19
1013Australia2026-02-03
1014Japan2026-02-04
1015Russia2026-02-28
1016Canada2026-02-25
1017United Kingdom2026-02-02
1018Australia2026-02-19
1019United Kingdom2026-02-14
1020Russia2026-02-23
1021France2026-02-25
1022France2026-02-06
1023Spain2026-03-01
1024Argentina2026-02-10
1025India2026-02-14
1026Russia2026-01-31
1027Italy2026-02-19
1028Italy2026-02-18
1029Japan2026-02-05
1030Argentina2026-02-04
1031Brazil2026-02-03
1032Spain2026-02-23
1033Argentina2026-02-28
1034Brazil2026-02-01
1035Russia2026-02-09
1036France2026-02-15
1037Canada2026-02-12
1038Russia2026-03-01
1039Japan2026-02-11
1040Canada2026-02-07
1041Brazil2026-02-18
1042Russia2026-02-14
1043Italy2026-02-26
1044Spain2026-02-06
1045Germany2026-02-20
1046Australia2026-02-01
1047Italy2026-02-20
1048Brazil2026-02-08
1049Australia2026-02-18

On-Demand Data

NameIdCountryDate
Mayumi X Malet1000Russia2026-03-01
Leon G Kusko1001France2026-02-03
Aditya G Tollner1002United Kingdom2026-02-24
Julie F Schemmer1003United Kingdom2026-02-01
Aditya C Malet1004Australia2026-02-01
Stacey R Glick1005Japan2026-02-16
Ricardo T Saylors1006India2026-02-24
Murillo B Morasca1007Japan2026-02-12
Maria W Morasca1008Germany2026-02-23
Leon B Wieser1009Canada2026-02-05
Stacey B Kolmetz1010Germany2026-02-08
Maria A Morasca1011Australia2026-02-19
Costa J Waycott1012Japan2026-03-01
Maria I Dilliard1013Spain2026-02-08
Stacey N Figeroa1014Germany2026-01-31
Mayumi Q Marrier1015Russia2026-02-06
Aditya P Malet1016Spain2026-02-17
Alejandro O Paprocki1017United Kingdom2026-02-09
Jones E Briddick1018France2026-02-25
James W Waycott1019Brazil2026-02-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy A MorascaJapanAsiya Javayant PROPOSAL
Ashley T FollerSpainElwin Sharvill NEW
Izzy N FigeroaArgentinaAnna Fali RENEWAL
Stacey N TollnerRussiaBernardo Dominic NEGOTIATION
Salvatore G ShinkoCanadaAnna Fali NEW
Costa K PoquetteRussiaXuxue Feng QUALIFIED
Salvatore W DilliardJapanIoni Bowcher RENEWAL
Chavez T KuskoUnited KingdomElwin Sharvill UNQUALIFIED
Deepesh J InouyeFranceXuxue Feng PROPOSAL
Morrow H VenereRussiaIvan Magalhaes RENEWAL
Emily K SergiFranceBernardo Dominic UNQUALIFIED
Nicolas V BowleyAustraliaIvan Magalhaes QUALIFIED
Juan V InouyeItalyXuxue Feng RENEWAL
Smith H GauchoFranceXuxue Feng NEW
Wickens Z GarufiItalyOnyama Limba NEGOTIATION
Aika U KuskoCanadaAmy Elsner PROPOSAL
Francesco D SchemmerSpainBernardo Dominic NEW
Wickens G WaycottFranceAmy Elsner PROPOSAL
Jeanfrancois P MacleadSpainXuxue Feng NEGOTIATION
Silvio T InouyeAustraliaAsiya Javayant NEGOTIATION
Smith M BowleyCanadaAnna Fali PROPOSAL
Leon E MorascaUnited KingdomElwin Sharvill PROPOSAL
Tony K BriddickFranceStephen Shaw UNQUALIFIED
Aditya I ChuiFranceAmy Elsner NEW
Arvin U RimGermanyBernardo Dominic NEGOTIATION
Greenwood W OstroskyArgentinaAsiya Javayant RENEWAL
Sinclair F DilliardSpainAsiya Javayant NEGOTIATION
Deepesh X VocelkaBrazilElwin Sharvill NEW
Adams H GillianRussiaXuxue Feng NEGOTIATION
Rodrigues S DoeBrazilAsiya Javayant NEGOTIATION
Leja Z BowleyIndiaAnna Fali RENEWAL
Munro D BriddickJapanAsiya Javayant QUALIFIED
Julie U CampainJapanStephen Shaw RENEWAL
Jeanfrancois S StockhamItalyIvan Magalhaes NEGOTIATION
Jefferson Y KuskoCanadaIoni Bowcher NEW
Cody W StockhamRussiaBernardo Dominic NEGOTIATION
Costa P NickaGermanyIvan Magalhaes QUALIFIED
Arvin Y GlickAustraliaIoni Bowcher NEW
Morrow G IturbideItalyElwin Sharvill PROPOSAL
Faith H CampainArgentinaIoni Bowcher 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.