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
Greenwood G IturbideFranceOnyama Limba PROPOSAL
Aditya L MorascaIndiaAsiya Javayant NEW
Stacey M RoysterArgentinaOnyama Limba PROPOSAL
Aruna T StensethItalyIoni Bowcher PROPOSAL
Costa Q SchemmerItalyAmy Elsner RENEWAL
Leon G AmigonItalyElwin Sharvill PROPOSAL
Mayumi G MarrierJapanAnna Fali RENEWAL
Alejandro J BologniaBrazilAnna Fali NEGOTIATION
Munro P ChuiBrazilIoni Bowcher RENEWAL
Stacey U GillianUnited KingdomAnna Fali NEW
Munro C KuskoItalyIoni Bowcher NEW
Ricardo J FerenczSpainOnyama Limba PROPOSAL
Jones W MarrierFranceAsiya Javayant PROPOSAL
Maria F ChuiJapanXuxue Feng QUALIFIED
Sinclair T RutaFranceAsiya Javayant RENEWAL
Clifford T IturbideAustraliaStephen Shaw PROPOSAL
Claire M WhobreyCanadaAsiya Javayant PROPOSAL
Jennifer S CaldareraBrazilAsiya Javayant NEGOTIATION
David X PoquetteJapanBernardo Dominic PROPOSAL
Maria W ShinkoArgentinaBernardo Dominic NEGOTIATION
Nicolas Y FlosiArgentinaAnna Fali QUALIFIED
Maisha J AmigonIndiaElwin Sharvill NEGOTIATION
Sinclair Z RoysterGermanyStephen Shaw QUALIFIED
Silvio Z NestleUnited KingdomElwin Sharvill QUALIFIED
Juan I FlosiAustraliaXuxue Feng UNQUALIFIED
Smith U DarakjyUnited KingdomXuxue Feng UNQUALIFIED
Aika P VocelkaGermanyBernardo Dominic UNQUALIFIED
Ashley O SlusarskiSpainStephen Shaw PROPOSAL
Antonio J RoysterBrazilAnna Fali NEW
Jennifer V MaletSpainIoni Bowcher PROPOSAL
Deepesh H SaylorsGermanyBernardo Dominic NEGOTIATION
Jennifer O TollnerFranceAnna Fali RENEWAL
Smith N TollnerAustraliaXuxue Feng UNQUALIFIED
Aruna Y GarufiItalyIoni Bowcher RENEWAL
Deepesh Q DarakjyGermanyAmy Elsner NEGOTIATION
Murillo M StockhamGermanyIvan Magalhaes RENEWAL
Stacey Q SchemmerFranceAnna Fali RENEWAL
Morrow A AmigonAustraliaXuxue Feng NEGOTIATION
Jones J MarrierIndiaIvan Magalhaes NEGOTIATION
Emily I MarrierSpainElwin Sharvill NEGOTIATION
Aditya F AlbaresCanadaElwin Sharvill NEW
Johnson I RimIndiaXuxue Feng UNQUALIFIED
Aruna L FollerAustraliaIvan Magalhaes NEGOTIATION
Leja Z MaletFranceElwin Sharvill NEW
James I InouyeRussiaIvan Magalhaes PROPOSAL
Murillo J GauchoFranceIvan Magalhaes UNQUALIFIED
Octavia X KuskoGermanyAsiya Javayant QUALIFIED
Aditya M SaylorsIndiaAnna Fali UNQUALIFIED
Antonio G GillianJapanAsiya Javayant PROPOSAL
Mujtaba Y StensethArgentinaXuxue Feng NEW
Horizontal
NameCountryRepresentativeStatus
Claire A StensethUnited KingdomStephen Shaw NEW
Cody T KolmetzItalyIvan Magalhaes PROPOSAL
Jones D FerenczIndiaIoni Bowcher UNQUALIFIED
Nicolas C GauchoSpainElwin Sharvill NEW
Leon A KolmetzItalyBernardo Dominic RENEWAL
Salvatore D OstroskyItalyXuxue Feng PROPOSAL
Misaki S ShinkoUnited KingdomIoni Bowcher PROPOSAL
Cody N TollnerUnited KingdomAmy Elsner RENEWAL
Francesco T SchemmerGermanyAmy Elsner NEGOTIATION
Tony R BologniaSpainStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith X GauchoArgentina2026-06-24Printing Dimensions NEW26Asiya Javayant
1001Jefferson P OstroskyJapan2026-06-19Chanay, Jeffrey A Esq NEW10Ioni Bowcher
1002Jefferson S GarufiAustralia2026-06-08Dorl, James J Esq UNQUALIFIED8Onyama Limba
1003Wickens M KuskoRussia2026-06-13Printing Dimensions NEW53Ivan Magalhaes
1004Ashley X CampainGermany2026-06-19Feltz Printing Service UNQUALIFIED37Stephen Shaw
1005Maisha G InouyeAustralia2026-06-04King, Christopher A Esq QUALIFIED25Anna Fali
1006Munro A FerenczSpain2026-05-29Commercial Press RENEWAL76Anna Fali
1007Murillo X RutaUnited Kingdom2026-06-22Rousseaux, Michael Esq NEGOTIATION55Ivan Magalhaes
1008Deepesh Q CaudyUnited Kingdom2026-06-15Rangoni Of Florence NEW0Stephen Shaw
1009Mujtaba F BriddickAustralia2026-05-28Rousseaux, Michael Esq PROPOSAL50Bernardo Dominic
1010Salvatore I SergiItaly2026-06-05Printing Dimensions NEW3Xuxue Feng
1011Aditya H CampainUnited Kingdom2026-06-11Rangoni Of Florence QUALIFIED58Asiya Javayant
1012Aruna S NickaIndia2026-05-28Truhlar And Truhlar Attys NEGOTIATION76Ioni Bowcher
1013Jones I StensethGermany2026-06-14Morlong Associates NEW0Xuxue Feng
1014Ricardo K RimCanada2026-06-16Chemel, James L Cpa PROPOSAL72Ivan Magalhaes
1015Murillo U OldroydJapan2026-06-20Feltz Printing Service NEGOTIATION3Bernardo Dominic
1016Claire H VenereUnited Kingdom2026-06-05Morlong Associates QUALIFIED57Ioni Bowcher
1017Munro T NickaIndia2026-06-10Truhlar And Truhlar Attys UNQUALIFIED76Asiya Javayant
1018Tony Y SaylorsSpain2026-06-19Buckley Miller Wright PROPOSAL13Amy Elsner
1019Jennifer W DarakjyFrance2026-06-01Rousseaux, Michael Esq RENEWAL12Onyama Limba
1020Jennifer I PoquetteRussia2026-06-20Truhlar And Truhlar Attys NEGOTIATION90Ivan Magalhaes
1021Isabel T NestleItaly2026-06-08Dorl, James J Esq RENEWAL16Onyama Limba
1022Jennifer Q NestleItaly2026-06-21Rousseaux, Michael Esq QUALIFIED66Onyama Limba
1023Greenwood B BowleyArgentina2026-06-12Chemel, James L Cpa NEGOTIATION84Ivan Magalhaes
1024Francesco U RulapaughArgentina2026-06-24Commercial Press RENEWAL23Asiya Javayant
1025Smith P RulapaughCanada2026-05-29Chanay, Jeffrey A Esq RENEWAL35Ivan Magalhaes
1026Rodrigues R MaletUnited Kingdom2026-06-16Printing Dimensions NEW70Anna Fali
1027Costa I RoysterCanada2026-06-01Feltz Printing Service NEGOTIATION48Xuxue Feng
1028Alejandro Z WaycottCanada2026-05-31Benton, John B Jr RENEWAL35Xuxue Feng
1029Jones I GauchoItaly2026-06-15Chemel, James L Cpa UNQUALIFIED50Xuxue Feng
1030Ricardo L GlickRussia2026-06-09Rangoni Of Florence PROPOSAL20Asiya Javayant
1031Kadeem W RutaItaly2026-06-06Morlong Associates PROPOSAL56Ivan Magalhaes
1032Cody L StensethIndia2026-06-16Buckley Miller Wright UNQUALIFIED27Elwin Sharvill
1033Juan W WhobreyCanada2026-06-07Dorl, James J Esq UNQUALIFIED40Xuxue Feng
1034Tony T ChuiSpain2026-06-02Chemel, James L Cpa UNQUALIFIED46Ioni Bowcher
1035Munro E MorascaIndia2026-05-31Chanay, Jeffrey A Esq PROPOSAL22Bernardo Dominic
1036Sinclair M ShinkoFrance2026-06-23King, Christopher A Esq QUALIFIED53Elwin Sharvill
1037Sinclair S RimUnited Kingdom2026-06-14Buckley Miller Wright RENEWAL41Onyama Limba
1038Leon U RimSpain2026-06-04Buckley Miller Wright UNQUALIFIED6Elwin Sharvill
1039Ricardo P BowleyItaly2026-06-07Truhlar And Truhlar Attys PROPOSAL39Xuxue Feng
1040Silvio P DarakjyIndia2026-06-06Rousseaux, Michael Esq NEW5Elwin Sharvill
1041Murillo M ButtArgentina2026-05-29Rangoni Of Florence NEGOTIATION23Bernardo Dominic
1042Faith Z SchemmerRussia2026-06-09Chanay, Jeffrey A Esq NEGOTIATION23Amy Elsner
1043Deepesh K KolmetzAustralia2026-06-07Commercial Press UNQUALIFIED19Xuxue Feng
1044Aruna B OstroskyJapan2026-06-14Rangoni Of Florence QUALIFIED44Amy Elsner
1045Maria J PerinAustralia2026-05-26Chemel, James L Cpa QUALIFIED59Stephen Shaw
1046Misaki G MacleadItaly2026-06-05Benton, John B Jr PROPOSAL91Xuxue Feng
1047Mayumi Y AlbaresAustralia2026-06-07Rousseaux, Michael Esq NEW65Amy Elsner
1048Francesco K VenereBrazil2026-05-27Rousseaux, Michael Esq NEW11Anna Fali
1049Leon N StockhamGermany2026-06-24Chanay, Jeffrey A Esq NEGOTIATION28Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Adams E CaldareraIndiaIvan Magalhaes PROPOSAL
Juan T BologniaJapanStephen Shaw PROPOSAL
Claire K MacleadIndiaIoni Bowcher UNQUALIFIED
Jefferson F PerinAustraliaAsiya Javayant UNQUALIFIED
Maria K CampainSpainStephen Shaw PROPOSAL
Arvin X PoquetteItalyIvan Magalhaes QUALIFIED
Sinclair E RimAustraliaBernardo Dominic PROPOSAL
Octavia M WieserCanadaAsiya Javayant QUALIFIED
Deepesh T RimAustraliaIoni Bowcher PROPOSAL
Francesco X FerenczItalyElwin Sharvill NEGOTIATION
Aruna G DilliardRussiaAmy Elsner RENEWAL
Deepesh P AlbaresUnited KingdomStephen Shaw QUALIFIED
Wickens Z DarakjyFranceXuxue Feng QUALIFIED
Rodrigues Z CampainIndiaBernardo Dominic NEW
Alejandro D MacleadBrazilAnna Fali QUALIFIED
Antonio B AlbaresBrazilAnna Fali QUALIFIED
Izzy K DarakjySpainElwin Sharvill UNQUALIFIED
Maria D PaprockiAustraliaIoni Bowcher NEGOTIATION
Tony Z MaletIndiaElwin Sharvill UNQUALIFIED
Juan I SaylorsAustraliaAmy Elsner RENEWAL
Maisha G BriddickCanadaIvan Magalhaes QUALIFIED
Leja Z WaycottJapanStephen Shaw PROPOSAL
Adams G SergiSpainXuxue Feng NEW
Jones Y OstroskyRussiaAmy Elsner NEGOTIATION
Kadeem A InouyeItalyBernardo Dominic RENEWAL
Faith X FollerGermanyAnna Fali NEGOTIATION
Izzy X RulapaughCanadaIoni Bowcher QUALIFIED
David Z RimIndiaStephen Shaw PROPOSAL
Mayumi G CaldareraSpainAsiya Javayant NEGOTIATION
Jennifer J RutaItalyAnna Fali UNQUALIFIED
Emily X VocelkaRussiaElwin Sharvill QUALIFIED
Misaki Z KolmetzIndiaAsiya Javayant NEGOTIATION
Johnson T ChuiIndiaIoni Bowcher PROPOSAL
Jeanfrancois Y FollerBrazilAsiya Javayant UNQUALIFIED
Octavia U MaletAustraliaOnyama Limba QUALIFIED
Jones Z StensethFranceBernardo Dominic UNQUALIFIED
James D TollnerItalyAmy Elsner QUALIFIED
Aruna Q MacleadSpainBernardo Dominic RENEWAL
Clifford A MaletCanadaIvan Magalhaes UNQUALIFIED
Jennifer D ButtCanadaOnyama Limba NEGOTIATION
Nicolas T TollnerFranceIoni Bowcher UNQUALIFIED
Wickens F BowleyBrazilStephen Shaw UNQUALIFIED
Greenwood J KolmetzJapanElwin Sharvill UNQUALIFIED
Cody H DoeCanadaAsiya Javayant PROPOSAL
Salvatore L ButtSpainAmy Elsner UNQUALIFIED
Salvatore M TollnerJapanBernardo Dominic RENEWAL
Murillo N PerinUnited KingdomElwin Sharvill PROPOSAL
Leon L StensethJapanAnna Fali NEGOTIATION
Aika E AmigonAustraliaOnyama Limba PROPOSAL
Arvin F MarrierUnited KingdomAmy Elsner NEGOTIATION
Frozen Columns
Name
Jefferson K Ostrosky
Deepesh V Venere
Tony I Wieser
Murillo R Caldarera
Ivar Z Iturbide
Ashley H Rulapaugh
Morrow X Figeroa
Arvin W Bolognia
Adams G Saylors
Stacey X Kolmetz
Greenwood K Gillian
Ivar A Maclead
Johnson M Paprocki
Mayumi Z Flosi
Francesco T Kolmetz
Salvatore Q Wieser
Francesco Y Maclead
Smith M Campain
Julie S Doe
Arvin T Poquette
Claire R Chui
Johnson W Morasca
Maria S Whobrey
Claire L Iturbide
Misaki X Paprocki
Deepesh L Nestle
Tony R Waycott
Arvin Q Nicka
Munro W Glick
Kadeem P Dilliard
Ivar C Glick
Darci A Albares
Octavia U Oldroyd
Arvin G Marrier
Emily Q Kolmetz
David R Iturbide
Mujtaba B Chui
Claire Z Glick
Octavia D Nestle
Murillo K Briddick
Sinclair F Gaucho
Greenwood P Oldroyd
Cody Y Rulapaugh
Deepesh K Oldroyd
James P Briddick
Mayumi U Inouye
Stacey N Nicka
Antonio A Foller
Jennifer R Dilliard
Salvatore E Dilliard
IdCountryDate
1000Spain2026-06-20
1001Japan2026-06-15
1002Australia2026-05-29
1003Germany2026-06-17
1004Russia2026-06-14
1005Russia2026-06-14
1006France2026-06-21
1007Brazil2026-06-13
1008Japan2026-06-24
1009Argentina2026-05-26
1010France2026-06-18
1011France2026-05-27
1012Germany2026-06-10
1013Spain2026-06-22
1014Germany2026-06-14
1015United Kingdom2026-06-07
1016Russia2026-06-13
1017Russia2026-06-22
1018Canada2026-06-12
1019Spain2026-06-23
1020Brazil2026-05-27
1021Canada2026-06-21
1022Australia2026-06-17
1023Germany2026-06-22
1024Italy2026-06-11
1025Germany2026-06-06
1026Germany2026-06-22
1027United Kingdom2026-06-11
1028Australia2026-05-30
1029Russia2026-06-18
1030United Kingdom2026-06-23
1031United Kingdom2026-06-23
1032France2026-06-13
1033Spain2026-06-15
1034United Kingdom2026-06-23
1035Russia2026-06-03
1036India2026-06-23
1037Australia2026-06-04
1038Japan2026-05-26
1039Japan2026-06-01
1040Australia2026-06-02
1041Argentina2026-06-10
1042United Kingdom2026-06-14
1043Germany2026-06-16
1044Brazil2026-06-10
1045United Kingdom2026-06-15
1046Canada2026-06-12
1047Argentina2026-06-05
1048Germany2026-06-06
1049Brazil2026-06-24

On-Demand Data

NameIdCountryDate
Ivar V Dilliard1000Germany2026-06-12
Aika C Foller1001Spain2026-06-22
Munro Z Malet1002India2026-06-04
Leon K Poquette1003India2026-06-17
Jeanfrancois G Gaucho1004Canada2026-06-12
Deepesh U Foller1005United Kingdom2026-05-30
Aika D Vocelka1006Argentina2026-06-19
Antonio V Nestle1007Brazil2026-06-06
Smith Q Kolmetz1008Russia2026-05-29
Greenwood O Stenseth1009Russia2026-06-06
Octavia H Butt1010Australia2026-06-23
Julie U Perin1011Germany2026-06-21
Isabel K Whobrey1012Italy2026-06-13
Arvin J Darakjy1013India2026-06-20
Leon D Malet1014India2026-05-26
James J Nestle1015Australia2026-06-06
Salvatore U Poquette1016United Kingdom2026-06-01
Silvio N Slusarski1017Germany2026-06-08
Ivar S Bowley1018Brazil2026-05-28
Ricardo S Iturbide1019Brazil2026-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia E SaylorsBrazilIvan Magalhaes QUALIFIED
Ashley I FollerArgentinaBernardo Dominic QUALIFIED
Izzy K KuskoFranceAnna Fali NEW
Mujtaba Y RutaArgentinaAnna Fali NEGOTIATION
Johnson B CampainRussiaElwin Sharvill NEGOTIATION
Ricardo J WieserUnited KingdomOnyama Limba PROPOSAL
Nicolas D BologniaBrazilStephen Shaw NEGOTIATION
Faith O MarrierJapanAmy Elsner PROPOSAL
Leja L NickaSpainAsiya Javayant RENEWAL
Leon Z CaldareraFranceAnna Fali PROPOSAL
Rodrigues B PoquetteArgentinaXuxue Feng PROPOSAL
Francesco U MarrierBrazilXuxue Feng QUALIFIED
Nicolas P FigeroaIndiaOnyama Limba NEGOTIATION
David D RulapaughAustraliaAsiya Javayant NEGOTIATION
Francesco W FollerGermanyAnna Fali NEW
Emily E MaletItalyAnna Fali RENEWAL
Rodrigues K KolmetzRussiaStephen Shaw RENEWAL
Ivar I RutaBrazilStephen Shaw PROPOSAL
Francesco V KuskoArgentinaOnyama Limba QUALIFIED
James W TollnerJapanAsiya Javayant QUALIFIED
Smith W FerenczGermanyBernardo Dominic PROPOSAL
Morrow B DilliardFranceAsiya Javayant NEGOTIATION
James G KuskoAustraliaAnna Fali RENEWAL
Arvin O KolmetzItalyElwin Sharvill RENEWAL
Wickens U MarrierRussiaBernardo Dominic NEW
Greenwood R GauchoFranceBernardo Dominic UNQUALIFIED
Costa R StensethItalyAmy Elsner UNQUALIFIED
Munro A KuskoJapanOnyama Limba PROPOSAL
Ashley L BriddickIndiaAmy Elsner NEGOTIATION
Jeanfrancois F MaletItalyStephen Shaw QUALIFIED
Adams A PoquetteItalyOnyama Limba RENEWAL
Cody T WieserJapanOnyama Limba PROPOSAL
Kaitlin U RimJapanAmy Elsner QUALIFIED
Juan M MarrierSpainBernardo Dominic UNQUALIFIED
Octavia T MaletUnited KingdomAnna Fali PROPOSAL
Nicolas G CaldareraJapanXuxue Feng NEW
Maria W OldroydRussiaIoni Bowcher QUALIFIED
Jennifer B MaletArgentinaElwin Sharvill NEGOTIATION
Aika J DilliardAustraliaStephen Shaw UNQUALIFIED
Francesco I ButtJapanIoni Bowcher UNQUALIFIED

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