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
Stacey M KuskoAustraliaBernardo Dominic RENEWAL
Johnson M NickaBrazilXuxue Feng NEGOTIATION
Aditya C AmigonFranceOnyama Limba QUALIFIED
Jeanfrancois Y OldroydCanadaXuxue Feng RENEWAL
Octavia C AlbaresRussiaAsiya Javayant UNQUALIFIED
Sinclair N NestleUnited KingdomAmy Elsner UNQUALIFIED
Wickens L GarufiItalyAsiya Javayant PROPOSAL
Mayumi N MorascaItalyXuxue Feng QUALIFIED
Octavia H DarakjyItalyIoni Bowcher PROPOSAL
Silvio L RulapaughUnited KingdomAmy Elsner PROPOSAL
Aditya U BologniaIndiaIoni Bowcher PROPOSAL
James Q WhobreyIndiaIvan Magalhaes NEW
Chavez V CaudyArgentinaIvan Magalhaes NEGOTIATION
Mayumi S CaldareraUnited KingdomIoni Bowcher QUALIFIED
Isabel W CaldareraSpainAsiya Javayant PROPOSAL
Salvatore R CaudyFranceBernardo Dominic RENEWAL
Wickens X DarakjySpainAnna Fali QUALIFIED
Rodrigues W SaylorsFranceIvan Magalhaes QUALIFIED
Leon N BriddickSpainAnna Fali RENEWAL
Arvin X ButtJapanStephen Shaw NEGOTIATION
Sinclair E GauchoGermanyOnyama Limba UNQUALIFIED
Kaitlin N BologniaIndiaOnyama Limba QUALIFIED
Aditya A PaprockiGermanyAnna Fali RENEWAL
Silvio Y VocelkaFranceOnyama Limba RENEWAL
Leja J AlbaresJapanStephen Shaw UNQUALIFIED
Adams F AmigonArgentinaElwin Sharvill NEGOTIATION
Mujtaba G ShinkoAustraliaAsiya Javayant NEW
Rodrigues P AlbaresUnited KingdomOnyama Limba NEW
Clifford I SchemmerUnited KingdomElwin Sharvill RENEWAL
Greenwood M AlbaresBrazilBernardo Dominic NEGOTIATION
Julie N PerinGermanyStephen Shaw RENEWAL
Cody S GillianCanadaIoni Bowcher QUALIFIED
Wickens R StensethIndiaAmy Elsner RENEWAL
Darci W InouyeAustraliaAmy Elsner QUALIFIED
Greenwood X PaprockiIndiaElwin Sharvill NEGOTIATION
Kadeem H BowleyFranceIvan Magalhaes RENEWAL
Jeanfrancois Z RutaSpainBernardo Dominic RENEWAL
Julie R FollerBrazilIvan Magalhaes QUALIFIED
Chavez Y PaprockiJapanIvan Magalhaes RENEWAL
Aditya X FollerCanadaAsiya Javayant UNQUALIFIED
Darci T ShinkoUnited KingdomStephen Shaw QUALIFIED
Nicolas S AmigonItalyElwin Sharvill PROPOSAL
Misaki I MorascaRussiaAmy Elsner NEGOTIATION
Claire H FigeroaIndiaAsiya Javayant NEGOTIATION
Wickens R FerenczRussiaAnna Fali QUALIFIED
Izzy F RutaUnited KingdomXuxue Feng UNQUALIFIED
Kaitlin E MacleadFranceAnna Fali UNQUALIFIED
Julie C AmigonCanadaAsiya Javayant NEGOTIATION
Francesco N MorascaGermanyAnna Fali PROPOSAL
Maria M AmigonGermanyIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aditya O PerinItalyIvan Magalhaes PROPOSAL
Clifford H KolmetzItalyXuxue Feng UNQUALIFIED
Julie H BriddickRussiaAmy Elsner PROPOSAL
Kadeem C RimUnited KingdomElwin Sharvill UNQUALIFIED
Claire K FollerIndiaBernardo Dominic QUALIFIED
Darci B PoquetteAustraliaIoni Bowcher UNQUALIFIED
Arvin R FigeroaBrazilAnna Fali RENEWAL
Kaitlin N VenereCanadaOnyama Limba RENEWAL
Francesco Q IturbideUnited KingdomIoni Bowcher NEW
Kadeem A PaprockiCanadaAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki A GlickIndia2026-05-01Rangoni Of Florence UNQUALIFIED1Ioni Bowcher
1001Greenwood G MaletAustralia2026-05-20Chanay, Jeffrey A Esq NEGOTIATION16Elwin Sharvill
1002Cody M GarufiItaly2026-04-25Rangoni Of Florence PROPOSAL74Elwin Sharvill
1003Izzy X SchemmerIndia2026-05-19King, Christopher A Esq PROPOSAL59Ivan Magalhaes
1004Claire P ChuiJapan2026-05-11Chemel, James L Cpa QUALIFIED23Amy Elsner
1005Salvatore W OldroydIndia2026-05-21Chanay, Jeffrey A Esq NEW24Amy Elsner
1006Rodrigues R MacleadSpain2026-05-11Feltz Printing Service UNQUALIFIED24Onyama Limba
1007Clifford F FlosiJapan2026-05-19Chanay, Jeffrey A Esq RENEWAL75Ioni Bowcher
1008Johnson M KuskoUnited Kingdom2026-05-09Feiner Bros NEGOTIATION83Bernardo Dominic
1009Murillo V FigeroaItaly2026-04-29Morlong Associates RENEWAL66Amy Elsner
1010Morrow A IturbideItaly2026-05-22Commercial Press PROPOSAL77Anna Fali
1011Nicolas I AlbaresAustralia2026-05-21Rousseaux, Michael Esq UNQUALIFIED42Stephen Shaw
1012Morrow A WieserSpain2026-04-27Rangoni Of Florence RENEWAL91Anna Fali
1013David F VocelkaRussia2026-05-23Rousseaux, Michael Esq QUALIFIED27Bernardo Dominic
1014Francesco F IturbideArgentina2026-05-17Dorl, James J Esq NEW4Amy Elsner
1015Izzy Y KuskoArgentina2026-05-06Printing Dimensions NEW20Xuxue Feng
1016Sinclair G FollerAustralia2026-05-07Rangoni Of Florence NEGOTIATION68Ioni Bowcher
1017Antonio O NestleIndia2026-04-26Rousseaux, Michael Esq QUALIFIED69Asiya Javayant
1018Arvin U BowleyJapan2026-05-10King, Christopher A Esq UNQUALIFIED88Elwin Sharvill
1019Kadeem C MaletFrance2026-04-25Chemel, James L Cpa PROPOSAL0Bernardo Dominic
1020Tony B StockhamJapan2026-05-02Chapman, Ross E Esq QUALIFIED44Asiya Javayant
1021Murillo B FollerItaly2026-05-04Printing Dimensions UNQUALIFIED38Anna Fali
1022Costa R AlbaresCanada2026-04-24Rangoni Of Florence PROPOSAL37Ioni Bowcher
1023Ricardo C StockhamCanada2026-04-30King, Christopher A Esq RENEWAL59Xuxue Feng
1024Emily M MaletRussia2026-05-20Truhlar And Truhlar Attys NEW31Anna Fali
1025Munro A FollerAustralia2026-05-03Printing Dimensions RENEWAL29Bernardo Dominic
1026Jeanfrancois P ButtIndia2026-05-11Rousseaux, Michael Esq NEW8Ioni Bowcher
1027Aika T CaudyBrazil2026-05-06Benton, John B Jr NEGOTIATION97Onyama Limba
1028Aruna L WieserRussia2026-05-02Chanay, Jeffrey A Esq QUALIFIED52Anna Fali
1029Emily P AmigonJapan2026-05-08King, Christopher A Esq RENEWAL26Asiya Javayant
1030Johnson T DarakjyCanada2026-05-13Feiner Bros QUALIFIED90Amy Elsner
1031Darci P GauchoGermany2026-05-09Printing Dimensions NEGOTIATION88Amy Elsner
1032Kadeem I GlickIndia2026-05-22Buckley Miller Wright NEGOTIATION78Onyama Limba
1033Kaitlin N IturbideRussia2026-05-10Chapman, Ross E Esq UNQUALIFIED98Onyama Limba
1034David D ShinkoAustralia2026-05-15Commercial Press NEGOTIATION7Ivan Magalhaes
1035Aruna T GlickCanada2026-04-28Printing Dimensions NEW51Bernardo Dominic
1036Tony A ChuiGermany2026-04-26King, Christopher A Esq PROPOSAL35Asiya Javayant
1037Morrow Q ChuiCanada2026-05-12Feiner Bros NEW15Ioni Bowcher
1038Juan V MarrierAustralia2026-05-01Dorl, James J Esq PROPOSAL11Xuxue Feng
1039Julie K RoysterFrance2026-05-13Buckley Miller Wright NEGOTIATION23Ivan Magalhaes
1040Mujtaba T SergiUnited Kingdom2026-05-06Feltz Printing Service RENEWAL43Onyama Limba
1041Ricardo P CampainSpain2026-05-22Morlong Associates QUALIFIED46Ioni Bowcher
1042Misaki M SaylorsFrance2026-05-23King, Christopher A Esq PROPOSAL41Onyama Limba
1043Costa Z FigeroaBrazil2026-05-06Printing Dimensions PROPOSAL84Anna Fali
1044Tony V GillianUnited Kingdom2026-05-11Chemel, James L Cpa PROPOSAL53Asiya Javayant
1045Murillo G IturbideItaly2026-04-30Commercial Press PROPOSAL63Bernardo Dominic
1046Johnson S BologniaGermany2026-05-09Rangoni Of Florence PROPOSAL8Onyama Limba
1047Sinclair C GillianAustralia2026-05-12Morlong Associates NEW8Stephen Shaw
1048Jefferson S RulapaughSpain2026-05-06Rousseaux, Michael Esq RENEWAL54Ioni Bowcher
1049Emily U VocelkaAustralia2026-05-09Buckley Miller Wright QUALIFIED36Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Alejandro P SergiAustraliaIvan Magalhaes PROPOSAL
Jefferson H NestleGermanyAmy Elsner RENEWAL
Jeanfrancois L NestleArgentinaIvan Magalhaes RENEWAL
Jeanfrancois C ButtArgentinaBernardo Dominic UNQUALIFIED
Jeanfrancois V GlickFranceElwin Sharvill NEGOTIATION
Faith G SaylorsBrazilIvan Magalhaes UNQUALIFIED
Mujtaba Q CampainCanadaIoni Bowcher QUALIFIED
Cody V TollnerFranceBernardo Dominic RENEWAL
Wickens V RutaFranceStephen Shaw QUALIFIED
Ricardo V PerinArgentinaIoni Bowcher PROPOSAL
Mujtaba F DilliardJapanElwin Sharvill NEW
Chavez T FlosiIndiaElwin Sharvill NEW
Morrow L PerinJapanStephen Shaw UNQUALIFIED
Johnson X KolmetzAustraliaElwin Sharvill NEGOTIATION
Smith N IturbideCanadaOnyama Limba NEW
Emily P ButtItalyBernardo Dominic RENEWAL
Octavia G WhobreyBrazilElwin Sharvill NEGOTIATION
Cody E GauchoFranceElwin Sharvill PROPOSAL
Wickens Y OstroskyCanadaBernardo Dominic NEGOTIATION
Silvio V CaudyGermanyXuxue Feng NEW
Jennifer W IturbideGermanyOnyama Limba PROPOSAL
Emily B TollnerGermanyStephen Shaw UNQUALIFIED
Wickens Y MacleadRussiaOnyama Limba PROPOSAL
Aruna T InouyeGermanyIvan Magalhaes RENEWAL
Faith D IturbideCanadaIoni Bowcher UNQUALIFIED
Jeanfrancois U KuskoSpainIoni Bowcher RENEWAL
Ricardo W AlbaresIndiaAsiya Javayant NEW
Aruna E RutaIndiaStephen Shaw NEGOTIATION
Adams K ChuiCanadaStephen Shaw UNQUALIFIED
Octavia I PaprockiRussiaAnna Fali NEGOTIATION
Maisha S MorascaCanadaElwin Sharvill RENEWAL
Maisha A KolmetzCanadaElwin Sharvill QUALIFIED
Ricardo N StensethGermanyAnna Fali NEGOTIATION
Kadeem P StensethAustraliaStephen Shaw QUALIFIED
Kadeem C GillianIndiaAsiya Javayant RENEWAL
Faith A GillianSpainBernardo Dominic UNQUALIFIED
Johnson K FollerAustraliaIoni Bowcher QUALIFIED
Izzy L PoquetteJapanBernardo Dominic NEGOTIATION
Arvin D CaldareraSpainXuxue Feng PROPOSAL
Tony K MorascaSpainOnyama Limba NEGOTIATION
Tony I OstroskyRussiaElwin Sharvill NEGOTIATION
Ashley B VenereItalyIvan Magalhaes NEW
Stacey R GarufiArgentinaAsiya Javayant PROPOSAL
Silvio G ButtIndiaIoni Bowcher QUALIFIED
Smith S DarakjyArgentinaAsiya Javayant RENEWAL
Arvin M FollerGermanyStephen Shaw NEW
Costa J CaudyIndiaXuxue Feng NEW
Jefferson M TollnerItalyBernardo Dominic NEGOTIATION
Faith F VenereSpainOnyama Limba NEW
Costa W TollnerItalyAsiya Javayant QUALIFIED
Frozen Columns
Name
Jennifer U Chui
Izzy S Figeroa
Salvatore A Briddick
David J Nicka
Jeanfrancois N Bowley
Morrow R Gaucho
Octavia M Malet
Francesco F Foller
Salvatore I Perin
Smith I Nestle
Maria H Kolmetz
Wickens W Malet
Wickens N Butt
Wickens Y Morasca
Leon D Waycott
Munro E Kusko
Stacey I Figeroa
Wickens M Doe
Juan E Darakjy
Antonio L Schemmer
Adams N Bolognia
Smith C Maclead
Alejandro R Oldroyd
Sinclair P Ferencz
Ivar I Kusko
Salvatore H Chui
Darci T Shinko
Darci B Paprocki
Johnson J Garufi
Maria Z Figeroa
Jefferson V Paprocki
Ashley E Slusarski
Leja K Tollner
Isabel T Bowley
Leja O Ferencz
Ivar S Poquette
Mayumi N Malet
Nicolas Z Bowley
James D Stenseth
Octavia X Whobrey
James B Saylors
Emily W Kusko
Darci Z Ferencz
Tony J Schemmer
Ivar H Shinko
Claire G Flosi
Jennifer Y Whobrey
Salvatore K Stockham
Alejandro Z Kusko
Maria S Sergi
IdCountryDate
1000Russia2026-05-19
1001Italy2026-05-21
1002Australia2026-04-26
1003Russia2026-05-22
1004Italy2026-04-26
1005France2026-05-04
1006Spain2026-05-22
1007Italy2026-04-25
1008Spain2026-04-26
1009Italy2026-05-07
1010Germany2026-05-09
1011Argentina2026-05-15
1012Italy2026-05-17
1013Russia2026-04-24
1014Canada2026-04-25
1015Italy2026-05-19
1016Japan2026-04-24
1017Japan2026-05-22
1018Australia2026-05-12
1019Germany2026-05-12
1020Brazil2026-05-03
1021Brazil2026-05-22
1022Spain2026-05-04
1023Spain2026-05-06
1024Russia2026-05-18
1025India2026-05-11
1026India2026-05-10
1027France2026-04-27
1028Italy2026-04-30
1029Brazil2026-05-01
1030India2026-05-11
1031Australia2026-05-12
1032Canada2026-05-03
1033Canada2026-05-01
1034France2026-05-17
1035France2026-04-25
1036Russia2026-05-19
1037Brazil2026-05-19
1038Russia2026-05-14
1039Argentina2026-04-30
1040Russia2026-05-08
1041Canada2026-05-03
1042Germany2026-04-29
1043France2026-05-17
1044United Kingdom2026-04-24
1045Russia2026-04-29
1046Japan2026-05-02
1047Germany2026-04-30
1048Argentina2026-05-09
1049Japan2026-04-30

On-Demand Data

NameIdCountryDate
Alejandro B Glick1000Australia2026-04-30
Arvin D Morasca1001Russia2026-05-20
Salvatore A Maclead1002Japan2026-05-18
Julie I Malet1003Australia2026-05-02
Francesco X Shinko1004France2026-04-27
Claire C Poquette1005United Kingdom2026-05-05
Chavez I Whobrey1006Spain2026-05-09
Maisha J Sergi1007India2026-04-27
Stacey V Campain1008Canada2026-05-08
Jefferson P Ruta1009Russia2026-05-13
Clifford E Vocelka1010Italy2026-05-16
Ricardo D Iturbide1011Brazil2026-05-18
Aruna Y Perin1012United Kingdom2026-05-05
Murillo R Dilliard1013Russia2026-05-11
Rodrigues H Ferencz1014Italy2026-05-15
Claire Q Shinko1015Russia2026-05-03
Johnson V Iturbide1016Canada2026-05-17
Leon L Oldroyd1017India2026-05-17
Morrow F Ferencz1018Spain2026-05-17
Izzy Y Perin1019Russia2026-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas D MorascaFranceOnyama Limba NEW
David Z BowleyGermanyElwin Sharvill QUALIFIED
Francesco J MorascaItalyStephen Shaw QUALIFIED
Johnson L PerinItalyOnyama Limba PROPOSAL
Misaki M ShinkoUnited KingdomXuxue Feng NEW
Alejandro Q GauchoUnited KingdomIoni Bowcher UNQUALIFIED
Ivar I VocelkaRussiaIvan Magalhaes UNQUALIFIED
Munro D BologniaGermanyStephen Shaw PROPOSAL
Maria V DilliardIndiaAsiya Javayant QUALIFIED
Morrow P DarakjyFranceAnna Fali UNQUALIFIED
Munro A MarrierAustraliaAmy Elsner NEW
Mayumi G RutaRussiaIoni Bowcher QUALIFIED
Rodrigues J StensethUnited KingdomXuxue Feng RENEWAL
Aditya M GauchoIndiaElwin Sharvill NEW
Arvin F GillianCanadaStephen Shaw QUALIFIED
Mujtaba C StensethUnited KingdomIvan Magalhaes QUALIFIED
David P ButtIndiaXuxue Feng QUALIFIED
Alejandro B RulapaughCanadaXuxue Feng QUALIFIED
Emily I MorascaCanadaIvan Magalhaes NEW
Silvio K RoysterArgentinaStephen Shaw RENEWAL
Leon C BologniaRussiaAsiya Javayant PROPOSAL
Claire N KuskoGermanyXuxue Feng NEW
Jefferson P AmigonFranceIvan Magalhaes RENEWAL
Silvio W WaycottCanadaIoni Bowcher RENEWAL
Clifford Q NickaIndiaXuxue Feng RENEWAL
Munro H OldroydCanadaStephen Shaw NEGOTIATION
Maisha O DoeUnited KingdomOnyama Limba RENEWAL
Ivar G BologniaRussiaXuxue Feng NEW
Maria B SlusarskiFranceOnyama Limba PROPOSAL
Faith H MorascaItalyIvan Magalhaes UNQUALIFIED
Sinclair L SchemmerArgentinaAmy Elsner RENEWAL
Ivar W KolmetzBrazilAnna Fali NEGOTIATION
Julie O DarakjyAustraliaIvan Magalhaes NEW
Mayumi M GillianRussiaIvan Magalhaes QUALIFIED
Kadeem K RulapaughItalyXuxue Feng RENEWAL
Jones L RimAustraliaOnyama Limba UNQUALIFIED
Ashley B MaletArgentinaBernardo Dominic QUALIFIED
Cody Y ChuiRussiaAnna Fali PROPOSAL
Adams N MacleadRussiaAmy Elsner NEW
Mujtaba V TollnerBrazilOnyama Limba NEGOTIATION

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