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
Clifford W OldroydGermanyBernardo Dominic UNQUALIFIED
Wickens L StockhamRussiaAmy Elsner PROPOSAL
Munro U KuskoBrazilXuxue Feng UNQUALIFIED
James J StensethItalyAnna Fali QUALIFIED
Adams O WaycottFranceIvan Magalhaes UNQUALIFIED
Francesco N RoysterAustraliaElwin Sharvill NEW
Aika B BriddickRussiaIvan Magalhaes QUALIFIED
Jennifer M NickaFranceAnna Fali NEGOTIATION
Jones T VenereArgentinaStephen Shaw PROPOSAL
Rodrigues S DilliardAustraliaAmy Elsner NEW
Kaitlin O PaprockiCanadaAnna Fali PROPOSAL
Rodrigues O BowleyUnited KingdomXuxue Feng UNQUALIFIED
Jeanfrancois F CaudyUnited KingdomAsiya Javayant NEW
Johnson A WaycottBrazilBernardo Dominic NEW
Octavia L GarufiItalyAnna Fali PROPOSAL
Deepesh O MaletItalyBernardo Dominic NEGOTIATION
Ivar L CaldareraAustraliaXuxue Feng UNQUALIFIED
Mayumi K MaletRussiaAmy Elsner NEW
Rodrigues I NestleFranceAmy Elsner QUALIFIED
Aika T GillianCanadaIvan Magalhaes NEW
Ricardo P SchemmerUnited KingdomIvan Magalhaes PROPOSAL
Izzy J FigeroaRussiaIoni Bowcher UNQUALIFIED
Chavez U WieserRussiaAmy Elsner NEGOTIATION
Kadeem J ChuiBrazilAnna Fali NEW
Mayumi G DoeItalyOnyama Limba NEW
Wickens Q KuskoUnited KingdomAnna Fali PROPOSAL
Arvin A TollnerBrazilAsiya Javayant QUALIFIED
Johnson G FollerJapanIoni Bowcher PROPOSAL
Emily A WhobreyBrazilElwin Sharvill NEW
Maisha Z RimCanadaBernardo Dominic UNQUALIFIED
David I TollnerArgentinaStephen Shaw UNQUALIFIED
Ricardo M MorascaGermanyIoni Bowcher NEGOTIATION
Jennifer N MorascaAustraliaAnna Fali RENEWAL
Aika J KuskoUnited KingdomAsiya Javayant RENEWAL
Murillo V SergiArgentinaIvan Magalhaes PROPOSAL
Smith K RulapaughRussiaAsiya Javayant QUALIFIED
Ivar Y SaylorsIndiaAnna Fali NEGOTIATION
Ivar B ShinkoCanadaBernardo Dominic NEGOTIATION
Aika I OstroskySpainXuxue Feng NEGOTIATION
Munro A FlosiRussiaIvan Magalhaes QUALIFIED
Smith C ButtFranceIoni Bowcher RENEWAL
Mayumi E AmigonRussiaStephen Shaw RENEWAL
Juan M MaletIndiaElwin Sharvill UNQUALIFIED
Francesco J CaldareraIndiaStephen Shaw NEW
Nicolas N DoeJapanBernardo Dominic PROPOSAL
Izzy G MorascaGermanyXuxue Feng NEW
Silvio B NestleSpainIvan Magalhaes QUALIFIED
Arvin O WieserFranceAmy Elsner NEW
Ricardo D FlosiAustraliaIoni Bowcher NEGOTIATION
Silvio X SlusarskiJapanBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Isabel O MaletIndiaXuxue Feng UNQUALIFIED
Leja Z PaprockiIndiaOnyama Limba RENEWAL
Izzy M DarakjyBrazilBernardo Dominic UNQUALIFIED
Rodrigues H StockhamItalyAsiya Javayant UNQUALIFIED
Aditya U VocelkaGermanyIvan Magalhaes NEGOTIATION
Jennifer A FollerFranceAnna Fali QUALIFIED
Greenwood K IturbideArgentinaAnna Fali NEGOTIATION
Kadeem U MacleadIndiaAmy Elsner RENEWAL
David Y BologniaSpainStephen Shaw QUALIFIED
Juan A BriddickAustraliaBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer E SergiItaly2026-06-10Chapman, Ross E Esq NEGOTIATION46Amy Elsner
1001Jeanfrancois R TollnerArgentina2026-06-20Buckley Miller Wright PROPOSAL38Elwin Sharvill
1002Jeanfrancois Z SergiIndia2026-06-09Feiner Bros QUALIFIED86Onyama Limba
1003Salvatore L VenereItaly2026-06-15Chapman, Ross E Esq UNQUALIFIED47Stephen Shaw
1004Claire H SlusarskiSpain2026-05-28Buckley Miller Wright UNQUALIFIED36Bernardo Dominic
1005James T PerinGermany2026-05-27Chemel, James L Cpa UNQUALIFIED94Ioni Bowcher
1006Faith R NickaArgentina2026-06-17Printing Dimensions QUALIFIED43Asiya Javayant
1007Izzy U TollnerAustralia2026-06-08Rangoni Of Florence NEGOTIATION9Anna Fali
1008Julie H BologniaAustralia2026-05-29Chapman, Ross E Esq NEW38Anna Fali
1009Ivar T CaudyJapan2026-06-16Chapman, Ross E Esq NEGOTIATION14Xuxue Feng
1010Rodrigues P RulapaughGermany2026-06-11Rangoni Of Florence NEGOTIATION58Amy Elsner
1011Ivar G FerenczFrance2026-05-29Truhlar And Truhlar Attys QUALIFIED86Elwin Sharvill
1012Johnson D SergiUnited Kingdom2026-06-18Printing Dimensions NEW35Asiya Javayant
1013Julie M OstroskyJapan2026-06-15King, Christopher A Esq PROPOSAL10Elwin Sharvill
1014Stacey G GauchoGermany2026-06-13Rousseaux, Michael Esq NEW22Bernardo Dominic
1015Mujtaba Z WaycottSpain2026-06-04Buckley Miller Wright UNQUALIFIED6Anna Fali
1016Alejandro X NickaRussia2026-06-01Benton, John B Jr NEW76Xuxue Feng
1017Darci O GauchoRussia2026-06-08Chapman, Ross E Esq RENEWAL55Elwin Sharvill
1018Silvio W CaudyItaly2026-05-27Truhlar And Truhlar Attys NEGOTIATION52Anna Fali
1019Munro A GlickIndia2026-06-18Chemel, James L Cpa PROPOSAL83Xuxue Feng
1020Johnson V GillianBrazil2026-06-19Truhlar And Truhlar Attys RENEWAL32Elwin Sharvill
1021Ricardo O OldroydJapan2026-06-01Printing Dimensions UNQUALIFIED94Ivan Magalhaes
1022Kaitlin T GauchoJapan2026-05-27Chemel, James L Cpa NEW9Onyama Limba
1023Francesco J KolmetzSpain2026-05-25Printing Dimensions NEGOTIATION3Elwin Sharvill
1024Francesco L SaylorsJapan2026-05-24Benton, John B Jr PROPOSAL7Stephen Shaw
1025Clifford K FerenczAustralia2026-06-22Morlong Associates RENEWAL42Onyama Limba
1026Deepesh A GlickSpain2026-06-01Morlong Associates NEW88Xuxue Feng
1027Rodrigues C StensethCanada2026-05-26Rousseaux, Michael Esq QUALIFIED91Anna Fali
1028Juan T BriddickRussia2026-06-12Buckley Miller Wright RENEWAL63Amy Elsner
1029Cody T CaldareraItaly2026-06-01Dorl, James J Esq NEGOTIATION47Elwin Sharvill
1030Nicolas H WieserJapan2026-05-25Commercial Press RENEWAL48Xuxue Feng
1031Kaitlin M BriddickIndia2026-06-05Rangoni Of Florence RENEWAL25Asiya Javayant
1032Maria P KuskoAustralia2026-06-15Feltz Printing Service PROPOSAL66Anna Fali
1033Smith G CaldareraSpain2026-05-28Feiner Bros RENEWAL71Asiya Javayant
1034Mujtaba Y ChuiItaly2026-06-18Benton, John B Jr NEW69Anna Fali
1035Cody Q FollerBrazil2026-06-21Chanay, Jeffrey A Esq NEGOTIATION52Bernardo Dominic
1036Mujtaba S SaylorsGermany2026-06-04Buckley Miller Wright NEW20Stephen Shaw
1037Murillo D CampainSpain2026-05-25Buckley Miller Wright PROPOSAL65Stephen Shaw
1038Ivar Q GlickCanada2026-06-13Commercial Press UNQUALIFIED31Anna Fali
1039Aruna R StensethItaly2026-06-17King, Christopher A Esq NEW54Asiya Javayant
1040Arvin V TollnerArgentina2026-05-30Chemel, James L Cpa RENEWAL96Anna Fali
1041James A KolmetzBrazil2026-06-05Buckley Miller Wright UNQUALIFIED61Anna Fali
1042Arvin A NickaArgentina2026-06-17Feltz Printing Service RENEWAL65Ioni Bowcher
1043Antonio B KolmetzAustralia2026-06-14Chemel, James L Cpa PROPOSAL43Xuxue Feng
1044Chavez L BriddickIndia2026-05-26Rousseaux, Michael Esq RENEWAL1Bernardo Dominic
1045Aruna W AmigonUnited Kingdom2026-05-24King, Christopher A Esq QUALIFIED56Xuxue Feng
1046Aika Z MorascaAustralia2026-05-24Feltz Printing Service QUALIFIED10Anna Fali
1047Faith B FollerBrazil2026-06-09Buckley Miller Wright NEGOTIATION0Anna Fali
1048Ricardo P WhobreyUnited Kingdom2026-05-27Feltz Printing Service PROPOSAL88Ioni Bowcher
1049Arvin Z VenereBrazil2026-06-01Rangoni Of Florence NEW91Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jennifer E FerenczItalyIoni Bowcher QUALIFIED
Sinclair H GauchoBrazilIoni Bowcher PROPOSAL
Mayumi H CampainFranceBernardo Dominic QUALIFIED
Alejandro H FerenczArgentinaAsiya Javayant RENEWAL
Maria I StensethIndiaIoni Bowcher PROPOSAL
Julie P GarufiRussiaAnna Fali NEW
Ricardo P AmigonIndiaIvan Magalhaes NEGOTIATION
Greenwood J StockhamIndiaAsiya Javayant NEW
Morrow H SergiGermanyStephen Shaw UNQUALIFIED
Arvin W RulapaughAustraliaIoni Bowcher QUALIFIED
Cody A VenereAustraliaOnyama Limba QUALIFIED
Maisha J VocelkaSpainAsiya Javayant RENEWAL
Mayumi Q FerenczAustraliaElwin Sharvill PROPOSAL
Murillo G PoquetteBrazilAsiya Javayant UNQUALIFIED
Arvin P SchemmerArgentinaOnyama Limba UNQUALIFIED
Isabel I MaletUnited KingdomAmy Elsner QUALIFIED
Jeanfrancois P FollerJapanStephen Shaw PROPOSAL
Claire V BowleySpainIvan Magalhaes NEW
Chavez A DarakjyUnited KingdomAnna Fali NEW
Munro V StensethUnited KingdomXuxue Feng QUALIFIED
Juan M CampainFranceElwin Sharvill RENEWAL
Silvio C DarakjyAustraliaStephen Shaw RENEWAL
Murillo G RutaUnited KingdomStephen Shaw QUALIFIED
Nicolas M PerinBrazilOnyama Limba QUALIFIED
Adams C AmigonRussiaBernardo Dominic UNQUALIFIED
Maisha D WhobreyRussiaAnna Fali QUALIFIED
Ricardo J KuskoAustraliaXuxue Feng NEGOTIATION
Jefferson D AmigonBrazilStephen Shaw RENEWAL
James S BriddickRussiaXuxue Feng NEW
Leja O ButtBrazilIvan Magalhaes QUALIFIED
Ashley R ChuiBrazilAnna Fali RENEWAL
Munro A VenereUnited KingdomOnyama Limba NEW
Alejandro H MaletBrazilIvan Magalhaes NEW
Kaitlin L MorascaRussiaBernardo Dominic NEW
Cody O VocelkaFranceAmy Elsner QUALIFIED
Darci N PoquetteFranceOnyama Limba NEGOTIATION
Salvatore D OldroydIndiaIvan Magalhaes PROPOSAL
Kaitlin S ShinkoSpainStephen Shaw RENEWAL
Jennifer L VocelkaSpainAsiya Javayant RENEWAL
Juan J AmigonBrazilAsiya Javayant UNQUALIFIED
Aditya I CaldareraArgentinaIvan Magalhaes QUALIFIED
Faith G BriddickArgentinaAsiya Javayant UNQUALIFIED
Jennifer W MorascaUnited KingdomElwin Sharvill NEW
Silvio S GauchoUnited KingdomStephen Shaw PROPOSAL
Kaitlin S VenereGermanyAnna Fali QUALIFIED
Octavia Q NickaGermanyIoni Bowcher PROPOSAL
Aditya U MaletBrazilXuxue Feng RENEWAL
Claire Q MorascaJapanIoni Bowcher QUALIFIED
Stacey G CampainCanadaIvan Magalhaes QUALIFIED
Murillo K StensethRussiaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Jeanfrancois D Figeroa
Darci O Ruta
Misaki J Chui
Leja H Schemmer
Isabel N Kusko
Murillo G Ferencz
Julie C Ostrosky
Kaitlin Q Poquette
Leon P Kolmetz
Darci P Ruta
Jennifer O Bolognia
Deepesh W Ostrosky
Mujtaba B Saylors
Kadeem N Foller
Rodrigues I Ostrosky
Kadeem Z Foller
James G Glick
Jefferson C Chui
Maria S Inouye
Greenwood S Marrier
Tony I Stenseth
Darci J Stockham
Nicolas B Oldroyd
David A Poquette
James U Campain
Jennifer O Stenseth
Munro I Whobrey
Jefferson W Poquette
Sinclair K Kusko
Alejandro X Marrier
Deepesh E Kolmetz
Maria L Darakjy
Salvatore P Caudy
Jones A Butt
James Q Marrier
David S Perin
Ricardo L Saylors
Jennifer Y Sergi
Rodrigues B Gillian
Stacey J Marrier
Cody E Caldarera
Leja D Gillian
Tony V Maclead
Ricardo M Kolmetz
Johnson U Paprocki
Mayumi L Amigon
Nicolas V Amigon
Leja D Doe
Leon B Glick
Emily V Malet
IdCountryDate
1000United Kingdom2026-06-13
1001United Kingdom2026-05-28
1002Germany2026-06-18
1003Japan2026-05-28
1004Russia2026-06-14
1005France2026-05-28
1006Spain2026-06-01
1007India2026-06-22
1008Italy2026-06-10
1009India2026-06-04
1010Canada2026-06-17
1011Canada2026-06-02
1012Russia2026-06-06
1013Brazil2026-05-24
1014Russia2026-06-21
1015Canada2026-05-28
1016Japan2026-05-28
1017United Kingdom2026-06-05
1018Germany2026-05-25
1019Italy2026-06-16
1020Spain2026-06-20
1021Spain2026-06-01
1022Japan2026-06-12
1023Japan2026-05-29
1024United Kingdom2026-06-17
1025Russia2026-05-28
1026Spain2026-06-22
1027Russia2026-06-08
1028Argentina2026-06-03
1029France2026-06-22
1030United Kingdom2026-05-27
1031Canada2026-06-17
1032Australia2026-06-16
1033Spain2026-06-18
1034India2026-06-21
1035Australia2026-06-08
1036Germany2026-06-07
1037Japan2026-06-22
1038India2026-05-26
1039Argentina2026-06-22
1040Spain2026-06-14
1041Brazil2026-06-21
1042India2026-06-05
1043Germany2026-05-26
1044Australia2026-06-14
1045Australia2026-06-04
1046Russia2026-06-17
1047Japan2026-06-21
1048Argentina2026-06-08
1049Argentina2026-05-28

On-Demand Data

NameIdCountryDate
Tony I Saylors1000Germany2026-06-20
Deepesh I Maclead1001India2026-06-20
Mayumi L Marrier1002Argentina2026-05-31
Jennifer O Butt1003Russia2026-06-21
David D Bolognia1004Germany2026-06-12
Jones H Ostrosky1005Germany2026-06-18
Munro B Foller1006Canada2026-05-28
Ashley V Oldroyd1007Russia2026-05-26
Jones L Schemmer1008United Kingdom2026-06-06
Aditya P Ruta1009Russia2026-05-25
Antonio U Venere1010Russia2026-06-12
Chavez Q Saylors1011France2026-06-15
Kadeem P Inouye1012India2026-06-12
Chavez C Saylors1013Japan2026-05-28
Mujtaba W Glick1014Russia2026-05-28
Clifford V Gillian1015Germany2026-05-24
Alejandro R Venere1016Russia2026-05-28
Cody V Garufi1017France2026-06-18
Jefferson F Inouye1018Italy2026-06-02
Greenwood A Nicka1019Australia2026-06-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem K MorascaSpainIvan Magalhaes NEGOTIATION
Ivar A KuskoAustraliaAnna Fali QUALIFIED
David K KolmetzCanadaXuxue Feng QUALIFIED
Arvin J ChuiFranceOnyama Limba NEGOTIATION
Ashley B MaletGermanyOnyama Limba RENEWAL
Johnson N WieserAustraliaAsiya Javayant RENEWAL
Francesco W ChuiGermanyAmy Elsner QUALIFIED
Arvin K KolmetzJapanIoni Bowcher RENEWAL
Stacey H SchemmerBrazilIoni Bowcher NEGOTIATION
Jones Q CaudyUnited KingdomIoni Bowcher RENEWAL
Greenwood O WaycottCanadaBernardo Dominic RENEWAL
Darci Z OstroskyArgentinaBernardo Dominic PROPOSAL
Sinclair Z GauchoItalyAmy Elsner PROPOSAL
Maria Y CaldareraUnited KingdomIoni Bowcher PROPOSAL
James G SchemmerItalyStephen Shaw QUALIFIED
Rodrigues I TollnerIndiaIvan Magalhaes PROPOSAL
Ivar W CaudyCanadaIvan Magalhaes NEGOTIATION
Wickens L SchemmerCanadaElwin Sharvill QUALIFIED
Tony N GlickJapanXuxue Feng NEW
Leja N OldroydFranceAsiya Javayant PROPOSAL
Maria S AlbaresUnited KingdomAsiya Javayant NEGOTIATION
Leon E KuskoUnited KingdomIvan Magalhaes PROPOSAL
Ricardo P OldroydArgentinaXuxue Feng RENEWAL
Kaitlin A CaldareraIndiaXuxue Feng NEW
Antonio R MaletIndiaOnyama Limba NEGOTIATION
Ashley A WieserCanadaIoni Bowcher NEGOTIATION
Greenwood D VenereItalyAnna Fali QUALIFIED
Aditya Z WieserBrazilAsiya Javayant QUALIFIED
Stacey I ChuiArgentinaAsiya Javayant NEGOTIATION
Jeanfrancois T SergiItalyStephen Shaw UNQUALIFIED
Murillo C AlbaresFranceAmy Elsner RENEWAL
Mayumi M SergiSpainAnna Fali QUALIFIED
Adams M BriddickArgentinaElwin Sharvill QUALIFIED
Darci R DilliardSpainAmy Elsner NEW
Misaki D DoeFranceIoni Bowcher NEW
Octavia K IturbideUnited KingdomOnyama Limba NEW
Misaki B SergiAustraliaIoni Bowcher NEGOTIATION
Adams F FlosiJapanStephen Shaw UNQUALIFIED
Leja B MarrierUnited KingdomBernardo Dominic RENEWAL
Alejandro T FerenczJapanElwin Sharvill NEW

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