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
Wickens C BowleyArgentinaBernardo Dominic NEGOTIATION
Antonio Z ButtGermanyBernardo Dominic RENEWAL
Jefferson H OstroskyArgentinaAnna Fali PROPOSAL
Wickens H WaycottRussiaStephen Shaw PROPOSAL
Sinclair T OldroydFranceIoni Bowcher UNQUALIFIED
Ashley X RulapaughAustraliaStephen Shaw UNQUALIFIED
David J VenereArgentinaStephen Shaw QUALIFIED
Octavia Z NickaGermanyElwin Sharvill UNQUALIFIED
Johnson Y BowleyRussiaAnna Fali NEW
Morrow U PoquetteAustraliaAsiya Javayant QUALIFIED
Ricardo M GillianIndiaXuxue Feng PROPOSAL
Chavez Q FlosiAustraliaAsiya Javayant RENEWAL
Francesco K MacleadCanadaAmy Elsner PROPOSAL
Murillo D BriddickSpainIvan Magalhaes RENEWAL
Darci L RutaJapanIvan Magalhaes QUALIFIED
Aruna Q ShinkoFranceBernardo Dominic QUALIFIED
Clifford D PoquetteFranceElwin Sharvill PROPOSAL
Clifford R RutaJapanAmy Elsner NEGOTIATION
Johnson P BriddickArgentinaAmy Elsner QUALIFIED
Deepesh C StensethFranceIvan Magalhaes UNQUALIFIED
Julie Y MarrierAustraliaXuxue Feng PROPOSAL
Chavez H FerenczRussiaAsiya Javayant QUALIFIED
Mujtaba N RoysterAustraliaAnna Fali NEGOTIATION
Arvin C DoeSpainAnna Fali RENEWAL
Faith W FerenczFranceElwin Sharvill NEGOTIATION
Jones Q CaudyItalyXuxue Feng UNQUALIFIED
Mujtaba O FerenczAustraliaAnna Fali PROPOSAL
Salvatore G CampainAustraliaAmy Elsner RENEWAL
Tony I StockhamGermanyAnna Fali UNQUALIFIED
Francesco X PaprockiIndiaOnyama Limba UNQUALIFIED
Juan W MorascaGermanyIoni Bowcher NEGOTIATION
Kaitlin I RimFranceXuxue Feng QUALIFIED
Ashley S KuskoFranceIvan Magalhaes QUALIFIED
Jefferson R MorascaSpainOnyama Limba UNQUALIFIED
Jeanfrancois F SlusarskiItalyIoni Bowcher QUALIFIED
Clifford L SergiFranceIoni Bowcher UNQUALIFIED
Arvin I PoquetteCanadaOnyama Limba QUALIFIED
Sinclair X BriddickGermanyBernardo Dominic UNQUALIFIED
Munro E MarrierCanadaAmy Elsner NEW
Morrow E MarrierUnited KingdomAsiya Javayant RENEWAL
Arvin I CampainIndiaAnna Fali UNQUALIFIED
Maisha D GarufiArgentinaBernardo Dominic RENEWAL
Tony A CampainCanadaBernardo Dominic UNQUALIFIED
Jones J MaletCanadaIvan Magalhaes RENEWAL
Izzy N CampainArgentinaElwin Sharvill QUALIFIED
Morrow C WaycottArgentinaIoni Bowcher QUALIFIED
Nicolas K TollnerRussiaIoni Bowcher NEGOTIATION
Mayumi Y SaylorsFranceElwin Sharvill NEW
Ricardo J RoysterCanadaAsiya Javayant PROPOSAL
Tony T PaprockiSpainAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Sinclair V RoysterFranceIoni Bowcher NEGOTIATION
Rodrigues Z ShinkoSpainStephen Shaw NEGOTIATION
Leja D ShinkoJapanAmy Elsner NEW
Francesco E GarufiBrazilElwin Sharvill PROPOSAL
David U MorascaJapanIoni Bowcher UNQUALIFIED
Arvin B RulapaughIndiaStephen Shaw NEGOTIATION
Wickens B InouyeBrazilIoni Bowcher RENEWAL
Julie K PaprockiSpainIvan Magalhaes UNQUALIFIED
Stacey M GillianRussiaBernardo Dominic RENEWAL
Ivar Y GarufiAustraliaBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy Y PaprockiBrazil2026-02-15Feiner Bros UNQUALIFIED18Xuxue Feng
1001Jefferson R PerinCanada2026-02-09Chanay, Jeffrey A Esq RENEWAL13Xuxue Feng
1002Maria N IturbideArgentina2026-01-30Benton, John B Jr RENEWAL45Xuxue Feng
1003Darci H CampainAustralia2026-02-23Printing Dimensions NEGOTIATION34Ioni Bowcher
1004Munro D InouyeBrazil2026-02-07Benton, John B Jr UNQUALIFIED62Xuxue Feng
1005David L MarrierGermany2026-02-14Chanay, Jeffrey A Esq NEGOTIATION25Anna Fali
1006Aditya B MarrierSpain2026-02-08Morlong Associates NEW12Asiya Javayant
1007Alejandro M DarakjyJapan2026-02-17Morlong Associates NEW51Amy Elsner
1008Deepesh C SaylorsFrance2026-01-31Feltz Printing Service PROPOSAL56Onyama Limba
1009Rodrigues R VenereFrance2026-02-19King, Christopher A Esq UNQUALIFIED94Onyama Limba
1010Stacey D OstroskyUnited Kingdom2026-02-04Benton, John B Jr NEW89Xuxue Feng
1011Chavez X MaletCanada2026-02-11Rousseaux, Michael Esq PROPOSAL60Ioni Bowcher
1012Adams K GarufiRussia2026-02-12Chanay, Jeffrey A Esq NEW92Anna Fali
1013Leon U GillianArgentina2026-02-18Buckley Miller Wright PROPOSAL21Xuxue Feng
1014Jefferson M ChuiIndia2026-01-28Feiner Bros RENEWAL82Ivan Magalhaes
1015Morrow F RutaRussia2026-01-28Buckley Miller Wright RENEWAL5Ivan Magalhaes
1016Mayumi C AmigonGermany2026-02-17Feiner Bros UNQUALIFIED4Xuxue Feng
1017Leon Z WieserFrance2026-02-07Printing Dimensions UNQUALIFIED4Onyama Limba
1018Ivar L ChuiJapan2026-02-23Dorl, James J Esq RENEWAL91Stephen Shaw
1019David U VocelkaGermany2026-02-01Rangoni Of Florence QUALIFIED1Asiya Javayant
1020Salvatore J MacleadArgentina2026-02-22King, Christopher A Esq RENEWAL85Ioni Bowcher
1021Morrow A OstroskyUnited Kingdom2026-02-11Chanay, Jeffrey A Esq UNQUALIFIED48Xuxue Feng
1022Octavia F PaprockiCanada2026-02-23Buckley Miller Wright RENEWAL4Bernardo Dominic
1023Arvin U KuskoRussia2026-02-17Benton, John B Jr PROPOSAL20Bernardo Dominic
1024Smith B FlosiGermany2026-02-18Printing Dimensions NEGOTIATION94Ioni Bowcher
1025Aditya U SlusarskiIndia2026-01-28Dorl, James J Esq NEGOTIATION94Asiya Javayant
1026Aruna M AmigonCanada2026-02-08Rousseaux, Michael Esq QUALIFIED42Onyama Limba
1027Munro P AmigonBrazil2026-02-11Commercial Press QUALIFIED30Stephen Shaw
1028Jennifer U CaudySpain2026-02-23Chanay, Jeffrey A Esq QUALIFIED54Bernardo Dominic
1029Murillo R KolmetzFrance2026-02-06Buckley Miller Wright RENEWAL75Elwin Sharvill
1030Antonio N SergiItaly2026-02-23Dorl, James J Esq RENEWAL64Xuxue Feng
1031Smith U SlusarskiUnited Kingdom2026-02-01Chanay, Jeffrey A Esq UNQUALIFIED88Asiya Javayant
1032Jennifer W RoysterSpain2026-02-02Rangoni Of Florence PROPOSAL58Ivan Magalhaes
1033Darci M MaletFrance2026-02-10Benton, John B Jr UNQUALIFIED0Xuxue Feng
1034Aditya T PoquetteUnited Kingdom2026-01-26Rousseaux, Michael Esq PROPOSAL53Xuxue Feng
1035Mujtaba D FollerFrance2026-01-31Rousseaux, Michael Esq UNQUALIFIED64Ivan Magalhaes
1036Octavia J AmigonBrazil2026-02-01Feltz Printing Service RENEWAL45Xuxue Feng
1037Munro F GarufiIndia2026-01-28Dorl, James J Esq NEW75Bernardo Dominic
1038Izzy T BologniaSpain2026-02-12Commercial Press NEW77Amy Elsner
1039Emily H FerenczJapan2026-02-05Rangoni Of Florence UNQUALIFIED91Ioni Bowcher
1040Chavez R AlbaresItaly2026-02-20Morlong Associates UNQUALIFIED25Amy Elsner
1041Jeanfrancois Y GarufiAustralia2026-02-16Rousseaux, Michael Esq UNQUALIFIED37Asiya Javayant
1042Jennifer M PoquetteJapan2026-02-24Morlong Associates RENEWAL2Stephen Shaw
1043Costa Q RoysterJapan2026-02-18Buckley Miller Wright NEGOTIATION35Asiya Javayant
1044Juan U MarrierIndia2026-02-11Rangoni Of Florence QUALIFIED80Elwin Sharvill
1045Deepesh I RimCanada2026-02-20Commercial Press UNQUALIFIED54Elwin Sharvill
1046Silvio Q MacleadBrazil2026-01-26Truhlar And Truhlar Attys NEW30Amy Elsner
1047Leon M InouyeItaly2026-01-27Rousseaux, Michael Esq NEGOTIATION52Elwin Sharvill
1048Faith M FerenczCanada2026-02-14Feiner Bros RENEWAL3Anna Fali
1049Rodrigues L AmigonFrance2026-02-06Morlong Associates PROPOSAL64Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Morrow M SchemmerJapanBernardo Dominic RENEWAL
Claire L OldroydUnited KingdomIoni Bowcher UNQUALIFIED
Costa U OldroydRussiaIvan Magalhaes RENEWAL
Ivar G BriddickAustraliaAsiya Javayant NEGOTIATION
Aika X WieserJapanOnyama Limba QUALIFIED
Aditya K NestleFranceBernardo Dominic QUALIFIED
Smith C RimJapanIoni Bowcher UNQUALIFIED
Emily K ShinkoGermanyAnna Fali NEGOTIATION
Francesco A AmigonItalyBernardo Dominic PROPOSAL
Nicolas K RutaAustraliaAmy Elsner RENEWAL
Greenwood X GarufiGermanyStephen Shaw NEW
Clifford F InouyeUnited KingdomIoni Bowcher QUALIFIED
Jeanfrancois X GauchoArgentinaAnna Fali NEGOTIATION
Greenwood L OstroskyArgentinaOnyama Limba UNQUALIFIED
Morrow M FollerSpainStephen Shaw QUALIFIED
Adams N DoeSpainIoni Bowcher NEGOTIATION
Morrow U FigeroaJapanElwin Sharvill NEGOTIATION
Costa Q CaldareraFranceIvan Magalhaes NEGOTIATION
Jeanfrancois O DarakjyBrazilAmy Elsner NEGOTIATION
Aruna Z DilliardItalyIvan Magalhaes RENEWAL
Mujtaba S NickaFranceIoni Bowcher QUALIFIED
Misaki J SergiUnited KingdomElwin Sharvill NEGOTIATION
Maria C MorascaUnited KingdomOnyama Limba PROPOSAL
Claire L TollnerRussiaIvan Magalhaes QUALIFIED
Silvio L GarufiAustraliaXuxue Feng PROPOSAL
Murillo X RulapaughItalyXuxue Feng NEW
Maria A DarakjyItalyAsiya Javayant QUALIFIED
Leon E RoysterIndiaAsiya Javayant NEGOTIATION
Murillo Q CaldareraSpainElwin Sharvill UNQUALIFIED
James E FerenczSpainIvan Magalhaes PROPOSAL
Leja D TollnerJapanXuxue Feng NEGOTIATION
Julie Y BowleyArgentinaAnna Fali PROPOSAL
Jefferson M GillianFranceIvan Magalhaes QUALIFIED
Arvin M TollnerIndiaXuxue Feng PROPOSAL
Johnson C MaletBrazilStephen Shaw UNQUALIFIED
Smith I GarufiCanadaIvan Magalhaes NEGOTIATION
Jeanfrancois R FigeroaFranceAnna Fali QUALIFIED
Cody L NestleGermanyAsiya Javayant NEGOTIATION
Morrow N RoysterFranceAsiya Javayant RENEWAL
Mayumi P GlickBrazilStephen Shaw RENEWAL
Jefferson P KolmetzBrazilElwin Sharvill RENEWAL
Juan Z CampainRussiaAsiya Javayant PROPOSAL
Tony U DilliardIndiaAnna Fali NEW
Clifford S MaletFranceStephen Shaw UNQUALIFIED
Clifford Z NickaIndiaAmy Elsner NEGOTIATION
Deepesh R NestleGermanyStephen Shaw NEW
Stacey J VenereUnited KingdomIvan Magalhaes QUALIFIED
Octavia B RutaRussiaIoni Bowcher UNQUALIFIED
Silvio S DarakjyUnited KingdomIoni Bowcher RENEWAL
Adams C VenereBrazilIvan Magalhaes NEW
Frozen Columns
Name
Nicolas Z Shinko
Jeanfrancois H Nestle
Costa C Perin
James E Slusarski
David B Inouye
Darci H Briddick
Mayumi D Vocelka
James L Paprocki
Mayumi Z Malet
Stacey T Bowley
Costa N Doe
Munro U Sergi
Emily R Dilliard
Emily D Shinko
Francesco T Butt
Ivar A Ruta
Leja R Morasca
Claire M Malet
Greenwood O Inouye
Smith R Amigon
Alejandro E Tollner
David N Kusko
Jennifer Z Figeroa
Salvatore Y Sergi
Deepesh Y Slusarski
Aditya F Saylors
Jefferson C Briddick
Deepesh M Whobrey
Jeanfrancois K Darakjy
Emily P Rim
Aruna K Saylors
Maisha I Flosi
Antonio Y Stockham
Izzy O Oldroyd
Clifford C Ostrosky
Kaitlin P Oldroyd
Misaki U Caudy
Alejandro U Amigon
Morrow Y Campain
Mujtaba Q Tollner
Adams M Gillian
Ashley M Oldroyd
David X Inouye
Silvio I Tollner
Isabel M Oldroyd
Maria S Iturbide
Antonio E Morasca
Clifford Z Foller
Chavez D Bolognia
Misaki W Caldarera
IdCountryDate
1000Russia2026-02-14
1001Russia2026-02-16
1002Russia2026-02-04
1003United Kingdom2026-02-15
1004India2026-02-11
1005Australia2026-01-27
1006Spain2026-02-02
1007India2026-02-11
1008Spain2026-02-17
1009Germany2026-01-27
1010Italy2026-02-03
1011Italy2026-02-21
1012Canada2026-02-13
1013Germany2026-02-07
1014United Kingdom2026-01-28
1015Argentina2026-01-27
1016Canada2026-01-29
1017Australia2026-01-26
1018Russia2026-01-28
1019Australia2026-02-12
1020India2026-01-31
1021Germany2026-02-06
1022United Kingdom2026-02-02
1023Japan2026-02-14
1024Russia2026-02-06
1025Argentina2026-02-15
1026Russia2026-02-10
1027Spain2026-02-15
1028Spain2026-02-10
1029Japan2026-02-06
1030Russia2026-02-22
1031Spain2026-02-07
1032United Kingdom2026-01-27
1033Spain2026-02-20
1034Argentina2026-02-08
1035United Kingdom2026-02-08
1036Argentina2026-02-21
1037France2026-02-10
1038Brazil2026-02-12
1039Argentina2026-02-14
1040Germany2026-02-18
1041Australia2026-01-27
1042Australia2026-01-31
1043Canada2026-02-05
1044Italy2026-02-12
1045Germany2026-02-08
1046Spain2026-02-23
1047Japan2026-02-03
1048Germany2026-02-12
1049Italy2026-02-17

On-Demand Data

NameIdCountryDate
Kadeem Y Dilliard1000Germany2026-02-23
Jennifer M Campain1001United Kingdom2026-02-19
Ashley Q Foller1002Japan2026-02-24
Octavia C Poquette1003Argentina2026-02-17
Darci S Venere1004Italy2026-02-12
Stacey O Amigon1005Spain2026-01-31
Chavez H Perin1006Canada2026-02-12
Izzy V Perin1007Brazil2026-02-06
Aditya E Inouye1008France2026-02-01
Kadeem V Inouye1009United Kingdom2026-02-04
Arvin W Gillian1010United Kingdom2026-02-09
Ricardo W Oldroyd1011Germany2026-02-03
Murillo O Gaucho1012France2026-02-08
Octavia C Chui1013India2026-02-13
Smith J Oldroyd1014France2026-01-30
Kaitlin J Perin1015United Kingdom2026-02-04
James E Whobrey1016Japan2026-02-15
Salvatore O Poquette1017Brazil2026-02-13
Tony Z Schemmer1018Japan2026-02-21
Kaitlin F Schemmer1019Australia2026-02-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow U MaletRussiaXuxue Feng PROPOSAL
Jefferson O NickaAustraliaIvan Magalhaes PROPOSAL
Chavez N VenereSpainAnna Fali NEW
Emily U ButtCanadaXuxue Feng QUALIFIED
Aruna A BologniaCanadaStephen Shaw NEGOTIATION
Faith E RulapaughAustraliaOnyama Limba UNQUALIFIED
Kaitlin M RoysterRussiaIoni Bowcher UNQUALIFIED
Aika K KolmetzGermanyIoni Bowcher NEGOTIATION
Aika R SergiBrazilAnna Fali QUALIFIED
Deepesh R MorascaUnited KingdomOnyama Limba UNQUALIFIED
Aruna X MaletJapanOnyama Limba RENEWAL
Munro X VocelkaFranceAsiya Javayant NEW
Ricardo J FollerItalyAmy Elsner NEW
Nicolas G SchemmerSpainBernardo Dominic QUALIFIED
Tony Q SergiFranceIvan Magalhaes RENEWAL
Ivar B IturbideGermanyAmy Elsner PROPOSAL
Rodrigues J MorascaCanadaBernardo Dominic UNQUALIFIED
Chavez Y SlusarskiFranceIvan Magalhaes PROPOSAL
Aruna V FigeroaAustraliaIoni Bowcher RENEWAL
Kaitlin A StensethJapanXuxue Feng UNQUALIFIED
Ricardo P GauchoIndiaIoni Bowcher UNQUALIFIED
Maria N DoeArgentinaXuxue Feng NEW
Leja F MarrierJapanElwin Sharvill RENEWAL
Adams E GlickAustraliaOnyama Limba RENEWAL
Maria E MacleadSpainAsiya Javayant NEW
Maisha S RoysterFranceIoni Bowcher NEW
Tony U CaldareraAustraliaAsiya Javayant QUALIFIED
Wickens U SergiSpainIvan Magalhaes PROPOSAL
Smith T WaycottCanadaOnyama Limba NEGOTIATION
Tony L CaldareraUnited KingdomAnna Fali NEGOTIATION
Jennifer V MaletGermanyAnna Fali UNQUALIFIED
Murillo S InouyeAustraliaXuxue Feng UNQUALIFIED
Leon C AmigonCanadaStephen Shaw RENEWAL
Kadeem Q SaylorsBrazilOnyama Limba NEW
Izzy A RutaIndiaXuxue Feng UNQUALIFIED
Octavia P FigeroaSpainAnna Fali NEW
Darci T OldroydJapanIvan Magalhaes NEW
Deepesh Y RoysterArgentinaStephen Shaw NEGOTIATION
Smith S RimGermanyStephen Shaw PROPOSAL
David R KuskoAustraliaXuxue Feng 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.