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 N RulapaughFranceIoni Bowcher QUALIFIED
Murillo F RimGermanyBernardo Dominic UNQUALIFIED
Deepesh E MacleadCanadaElwin Sharvill NEGOTIATION
Alejandro K BriddickAustraliaElwin Sharvill NEGOTIATION
Claire B FerenczRussiaAmy Elsner NEGOTIATION
Julie U CaldareraBrazilOnyama Limba UNQUALIFIED
Rodrigues T SlusarskiRussiaElwin Sharvill RENEWAL
Mayumi B OldroydSpainOnyama Limba RENEWAL
Jefferson B FigeroaIndiaBernardo Dominic RENEWAL
Jennifer M RulapaughAustraliaIvan Magalhaes NEW
Salvatore S ButtGermanyBernardo Dominic NEW
Sinclair B MaletAustraliaAnna Fali QUALIFIED
Julie F ButtGermanyStephen Shaw NEW
Octavia D SlusarskiUnited KingdomAsiya Javayant QUALIFIED
Wickens O RimRussiaElwin Sharvill QUALIFIED
Johnson H AlbaresSpainIvan Magalhaes QUALIFIED
David M VocelkaFranceElwin Sharvill NEGOTIATION
Chavez S SlusarskiItalyAmy Elsner NEW
James V CaldareraFranceXuxue Feng RENEWAL
Maisha S PoquetteIndiaAmy Elsner UNQUALIFIED
Maisha Z FollerIndiaOnyama Limba RENEWAL
Sinclair H CampainIndiaIvan Magalhaes NEGOTIATION
Kaitlin L RoysterJapanOnyama Limba NEW
Silvio Z NickaGermanyAmy Elsner PROPOSAL
Jeanfrancois J BologniaItalyElwin Sharvill NEW
Leja N DilliardItalyIvan Magalhaes UNQUALIFIED
Maisha G WaycottAustraliaIoni Bowcher RENEWAL
Jennifer Q RoysterJapanAnna Fali UNQUALIFIED
Greenwood H KolmetzUnited KingdomAsiya Javayant PROPOSAL
Leon Y OldroydGermanyAmy Elsner UNQUALIFIED
Jones U FollerJapanAmy Elsner PROPOSAL
Wickens D CaudyArgentinaOnyama Limba NEW
Morrow N OstroskyJapanOnyama Limba NEW
Mujtaba T StockhamUnited KingdomBernardo Dominic PROPOSAL
Jennifer S RulapaughItalyOnyama Limba UNQUALIFIED
Octavia B BriddickCanadaAnna Fali NEW
Aika S MorascaAustraliaElwin Sharvill NEGOTIATION
Isabel X StockhamFranceBernardo Dominic NEW
Jefferson I WaycottJapanBernardo Dominic NEW
Aika P OstroskyBrazilAnna Fali NEGOTIATION
Murillo K ButtArgentinaAmy Elsner PROPOSAL
Johnson Z KuskoRussiaOnyama Limba RENEWAL
Smith P MorascaGermanyAmy Elsner RENEWAL
Ashley T RulapaughItalyAnna Fali NEGOTIATION
Sinclair H GlickSpainAnna Fali PROPOSAL
Aditya D AmigonJapanAnna Fali NEGOTIATION
Arvin H StockhamCanadaStephen Shaw NEGOTIATION
Stacey A IturbideJapanStephen Shaw NEGOTIATION
Costa E DoeUnited KingdomAsiya Javayant UNQUALIFIED
Salvatore Z IturbideItalyAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jennifer J CampainUnited KingdomAnna Fali NEGOTIATION
Cody N MacleadItalyAnna Fali PROPOSAL
Nicolas K DilliardItalyAmy Elsner NEGOTIATION
Jennifer U KuskoFranceIoni Bowcher NEW
Johnson O InouyeSpainIoni Bowcher RENEWAL
Maria B MaletIndiaAnna Fali NEGOTIATION
Johnson Z RimArgentinaAsiya Javayant NEGOTIATION
Costa F InouyeArgentinaAmy Elsner NEGOTIATION
Francesco Y GlickArgentinaBernardo Dominic NEW
Octavia C SaylorsArgentinaBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams R DilliardCanada2026-06-06Rousseaux, Michael Esq NEW20Anna Fali
1001Julie W SchemmerGermany2026-05-24Dorl, James J Esq NEGOTIATION56Amy Elsner
1002Jeanfrancois B StockhamBrazil2026-06-03Benton, John B Jr NEGOTIATION69Anna Fali
1003Isabel A DoeCanada2026-05-25Chemel, James L Cpa PROPOSAL92Asiya Javayant
1004Ricardo D KuskoAustralia2026-05-30Feltz Printing Service NEW13Onyama Limba
1005Rodrigues K FerenczRussia2026-05-26Truhlar And Truhlar Attys RENEWAL87Ivan Magalhaes
1006Antonio X RimFrance2026-06-06Morlong Associates RENEWAL10Elwin Sharvill
1007Kaitlin Z MacleadRussia2026-06-18Rousseaux, Michael Esq UNQUALIFIED89Amy Elsner
1008Julie P InouyeBrazil2026-06-11Chemel, James L Cpa NEW23Xuxue Feng
1009Kadeem Q ButtItaly2026-06-11Printing Dimensions RENEWAL25Anna Fali
1010Jennifer H MorascaIndia2026-05-24Rousseaux, Michael Esq QUALIFIED71Stephen Shaw
1011Alejandro F PerinFrance2026-06-14Chemel, James L Cpa RENEWAL48Asiya Javayant
1012Deepesh I FigeroaIndia2026-06-04Feltz Printing Service QUALIFIED24Asiya Javayant
1013Kadeem E OstroskyFrance2026-06-15Chanay, Jeffrey A Esq NEW0Ioni Bowcher
1014Octavia C StockhamSpain2026-06-04Commercial Press NEGOTIATION4Amy Elsner
1015Aika T VenereBrazil2026-06-19King, Christopher A Esq UNQUALIFIED53Elwin Sharvill
1016Johnson C InouyeFrance2026-05-23Printing Dimensions UNQUALIFIED48Ioni Bowcher
1017Cody J ChuiIndia2026-06-16Rousseaux, Michael Esq NEGOTIATION13Stephen Shaw
1018Ricardo N StensethCanada2026-06-09Feltz Printing Service RENEWAL11Asiya Javayant
1019James C AlbaresUnited Kingdom2026-06-19Truhlar And Truhlar Attys QUALIFIED34Bernardo Dominic
1020Ashley V RoysterFrance2026-06-11Chemel, James L Cpa QUALIFIED51Stephen Shaw
1021Emily V KolmetzCanada2026-05-29Rangoni Of Florence NEGOTIATION45Xuxue Feng
1022Murillo Y OstroskyAustralia2026-06-16Rangoni Of Florence QUALIFIED78Elwin Sharvill
1023Mayumi I CaudyAustralia2026-05-30Feiner Bros UNQUALIFIED70Ioni Bowcher
1024Arvin C CampainSpain2026-06-08Buckley Miller Wright QUALIFIED63Xuxue Feng
1025Smith E DilliardUnited Kingdom2026-05-30Feiner Bros RENEWAL28Stephen Shaw
1026Mujtaba I ButtUnited Kingdom2026-06-16Feltz Printing Service NEGOTIATION29Elwin Sharvill
1027Jones M FigeroaSpain2026-05-30Dorl, James J Esq NEW5Stephen Shaw
1028James R SchemmerBrazil2026-06-04Buckley Miller Wright PROPOSAL34Asiya Javayant
1029Isabel W GlickRussia2026-06-08Benton, John B Jr RENEWAL61Stephen Shaw
1030Izzy V AlbaresGermany2026-05-21Printing Dimensions NEW20Bernardo Dominic
1031Smith E VenereItaly2026-05-26Feltz Printing Service NEGOTIATION15Xuxue Feng
1032Mayumi F KolmetzUnited Kingdom2026-06-01Chemel, James L Cpa QUALIFIED25Onyama Limba
1033Alejandro Y CampainBrazil2026-05-21Printing Dimensions QUALIFIED54Elwin Sharvill
1034Smith F MaletArgentina2026-06-08Buckley Miller Wright UNQUALIFIED62Bernardo Dominic
1035James R NestleUnited Kingdom2026-05-31Rousseaux, Michael Esq NEW30Ioni Bowcher
1036Murillo Y TollnerJapan2026-06-14Chapman, Ross E Esq RENEWAL51Ivan Magalhaes
1037Alejandro J RutaCanada2026-06-03Morlong Associates UNQUALIFIED95Xuxue Feng
1038Rodrigues V MaletBrazil2026-05-23Commercial Press NEGOTIATION52Xuxue Feng
1039Ashley V SchemmerRussia2026-06-05Printing Dimensions NEW58Asiya Javayant
1040Alejandro T ButtArgentina2026-06-10Printing Dimensions UNQUALIFIED82Onyama Limba
1041Antonio J SlusarskiRussia2026-06-17Buckley Miller Wright UNQUALIFIED10Ioni Bowcher
1042Mayumi E VenereSpain2026-06-16Benton, John B Jr QUALIFIED85Asiya Javayant
1043Alejandro A ShinkoBrazil2026-06-13Commercial Press NEGOTIATION26Amy Elsner
1044Jefferson G DarakjyBrazil2026-06-02Feltz Printing Service PROPOSAL27Bernardo Dominic
1045Claire G NestleJapan2026-06-13Chapman, Ross E Esq QUALIFIED48Amy Elsner
1046Aika J SaylorsGermany2026-05-26Commercial Press QUALIFIED68Asiya Javayant
1047Jeanfrancois O MarrierUnited Kingdom2026-06-18Commercial Press RENEWAL53Onyama Limba
1048Leja D BriddickBrazil2026-06-16Chanay, Jeffrey A Esq NEGOTIATION95Amy Elsner
1049Smith I WieserBrazil2026-06-10Rangoni Of Florence QUALIFIED18Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Aruna B FigeroaUnited KingdomIoni Bowcher UNQUALIFIED
Juan T PaprockiGermanyAsiya Javayant QUALIFIED
Nicolas K SaylorsJapanBernardo Dominic RENEWAL
Murillo C OstroskyUnited KingdomStephen Shaw NEGOTIATION
Rodrigues O SchemmerBrazilIvan Magalhaes RENEWAL
Ivar Y MaletIndiaAnna Fali NEW
Aditya J DarakjySpainIoni Bowcher NEW
Arvin Z CampainAustraliaIoni Bowcher NEGOTIATION
Adams F SergiAustraliaIvan Magalhaes RENEWAL
Clifford D InouyeUnited KingdomAmy Elsner QUALIFIED
David O WhobreyCanadaIvan Magalhaes RENEWAL
Wickens O IturbideSpainAmy Elsner NEGOTIATION
Alejandro P StensethGermanyAnna Fali NEW
Ashley I BowleyIndiaAmy Elsner RENEWAL
Darci F FlosiItalyOnyama Limba NEW
Jeanfrancois Y FigeroaAustraliaAsiya Javayant NEW
Leon M InouyeRussiaStephen Shaw RENEWAL
Deepesh U FollerGermanyBernardo Dominic RENEWAL
Jefferson F CaudySpainStephen Shaw NEW
Salvatore H DarakjyArgentinaIoni Bowcher UNQUALIFIED
Johnson P MorascaArgentinaStephen Shaw QUALIFIED
Ashley N FollerArgentinaAsiya Javayant NEW
Nicolas U GarufiItalyElwin Sharvill NEW
Chavez J PoquetteBrazilXuxue Feng UNQUALIFIED
Rodrigues B ChuiCanadaIoni Bowcher PROPOSAL
Julie K KolmetzBrazilIvan Magalhaes QUALIFIED
Mujtaba J BriddickIndiaOnyama Limba PROPOSAL
Wickens S StensethItalyAmy Elsner PROPOSAL
Costa W SergiArgentinaStephen Shaw NEW
Emily K GauchoCanadaXuxue Feng UNQUALIFIED
Alejandro K WaycottArgentinaOnyama Limba UNQUALIFIED
Ivar T DarakjyArgentinaAnna Fali NEW
Salvatore W RimCanadaElwin Sharvill NEW
Jones J VocelkaRussiaBernardo Dominic PROPOSAL
Maria S ChuiCanadaIoni Bowcher RENEWAL
Ashley R OstroskyGermanyIvan Magalhaes NEW
Antonio T RimBrazilIoni Bowcher NEGOTIATION
Kadeem P RutaGermanyStephen Shaw UNQUALIFIED
Morrow W BologniaBrazilStephen Shaw UNQUALIFIED
Salvatore F AmigonBrazilIvan Magalhaes QUALIFIED
Jeanfrancois X CampainRussiaElwin Sharvill PROPOSAL
Smith G BriddickBrazilIvan Magalhaes PROPOSAL
Jefferson U KolmetzCanadaIoni Bowcher UNQUALIFIED
Jennifer I OldroydSpainAmy Elsner UNQUALIFIED
Munro Y FollerArgentinaIvan Magalhaes UNQUALIFIED
Izzy Y MarrierAustraliaXuxue Feng RENEWAL
Faith C FerenczAustraliaOnyama Limba NEGOTIATION
Stacey B SaylorsBrazilAsiya Javayant RENEWAL
Claire N SchemmerRussiaAnna Fali UNQUALIFIED
Munro D InouyeBrazilBernardo Dominic QUALIFIED
Frozen Columns
Name
Julie N Albares
Nicolas R Glick
Jefferson N Campain
Isabel G Slusarski
Kadeem M Albares
James A Vocelka
Deepesh H Vocelka
Adams R Paprocki
Adams I Iturbide
Cody C Albares
Claire B Dilliard
Nicolas M Caudy
Johnson F Oldroyd
Juan E Malet
Misaki D Ruta
Ivar E Bowley
Kadeem Y Caudy
Maisha H Oldroyd
Mujtaba G Saylors
Wickens S Nestle
Faith K Bolognia
Antonio X Gillian
Aditya X Gillian
Octavia E Malet
Arvin V Flosi
Tony L Perin
Izzy S Amigon
Maisha Z Stockham
Alejandro Y Stockham
David M Dilliard
Julie Z Poquette
Leja U Rim
Jones W Butt
Octavia C Garufi
Sinclair W Malet
Faith Z Poquette
Smith U Darakjy
Faith F Foller
Cody H Tollner
Rodrigues P Caudy
Aruna O Vocelka
Greenwood W Waycott
Aika V Caldarera
Maisha J Maclead
Jefferson Q Vocelka
Francesco H Perin
Emily G Schemmer
Leja S Royster
Emily Z Flosi
Darci C Marrier
IdCountryDate
1000Argentina2026-06-15
1001Japan2026-06-07
1002France2026-06-07
1003Brazil2026-06-02
1004Australia2026-06-13
1005India2026-06-05
1006Australia2026-06-12
1007France2026-06-09
1008Russia2026-06-05
1009Russia2026-05-27
1010United Kingdom2026-06-05
1011Argentina2026-05-31
1012Germany2026-06-03
1013India2026-06-02
1014Japan2026-06-06
1015Argentina2026-06-08
1016Russia2026-06-11
1017France2026-05-23
1018Argentina2026-05-21
1019India2026-06-04
1020United Kingdom2026-06-19
1021India2026-06-09
1022Japan2026-05-23
1023Italy2026-06-06
1024Brazil2026-06-12
1025France2026-05-21
1026Spain2026-06-15
1027Italy2026-05-31
1028Brazil2026-06-08
1029India2026-05-25
1030France2026-06-07
1031Russia2026-05-25
1032India2026-06-02
1033Germany2026-05-31
1034Canada2026-05-31
1035United Kingdom2026-06-13
1036Canada2026-06-11
1037Italy2026-06-01
1038Russia2026-05-27
1039Germany2026-05-24
1040United Kingdom2026-06-10
1041Canada2026-06-16
1042Italy2026-06-09
1043Japan2026-06-13
1044Canada2026-05-28
1045France2026-05-23
1046Italy2026-06-05
1047India2026-05-26
1048Canada2026-06-01
1049France2026-05-25

On-Demand Data

NameIdCountryDate
Tony C Marrier1000Brazil2026-05-26
Juan V Malet1001Brazil2026-05-31
Ashley M Bolognia1002India2026-05-30
Jones N Caudy1003United Kingdom2026-05-31
Rodrigues B Malet1004Canada2026-06-10
Greenwood U Gillian1005Germany2026-05-29
Morrow H Poquette1006France2026-06-04
Ricardo J Gillian1007India2026-05-29
Mayumi Q Saylors1008Russia2026-06-17
Leja B Maclead1009India2026-05-25
Deepesh B Ostrosky1010Russia2026-06-11
Alejandro C Flosi1011Brazil2026-05-31
Silvio V Rulapaugh1012Germany2026-06-11
Octavia M Figeroa1013France2026-05-22
Isabel M Oldroyd1014United Kingdom2026-06-09
Ivar K Kolmetz1015Canada2026-06-18
Clifford D Iturbide1016Argentina2026-06-09
Izzy C Perin1017Brazil2026-05-26
Rodrigues R Gillian1018Australia2026-06-16
Smith Z Sergi1019Canada2026-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens M GillianSpainBernardo Dominic NEGOTIATION
Julie L BriddickSpainIvan Magalhaes PROPOSAL
Juan D OldroydBrazilIoni Bowcher NEW
Alejandro J InouyeUnited KingdomStephen Shaw PROPOSAL
Alejandro J PerinAustraliaOnyama Limba PROPOSAL
Alejandro J CaudyFranceElwin Sharvill RENEWAL
Greenwood Z KolmetzJapanAnna Fali NEW
Greenwood F KuskoJapanAsiya Javayant PROPOSAL
Mayumi W MacleadSpainIoni Bowcher NEGOTIATION
Stacey Z BriddickIndiaAmy Elsner PROPOSAL
Aruna E RulapaughBrazilIoni Bowcher UNQUALIFIED
Chavez Y MaletBrazilElwin Sharvill RENEWAL
Julie L WhobreyIndiaAnna Fali PROPOSAL
Ashley V NickaRussiaAnna Fali UNQUALIFIED
Misaki O OldroydIndiaIoni Bowcher QUALIFIED
Antonio A RoysterJapanAsiya Javayant QUALIFIED
Ashley R RimRussiaAsiya Javayant QUALIFIED
Costa V ButtGermanyAsiya Javayant RENEWAL
Izzy H FigeroaUnited KingdomAmy Elsner PROPOSAL
Cody V GarufiRussiaXuxue Feng RENEWAL
Morrow W NestleUnited KingdomAsiya Javayant NEGOTIATION
Kadeem G FollerBrazilAmy Elsner QUALIFIED
Emily X CaudyCanadaBernardo Dominic RENEWAL
Clifford V StockhamArgentinaAmy Elsner QUALIFIED
Aditya B PaprockiCanadaIvan Magalhaes PROPOSAL
Aditya V MaletIndiaElwin Sharvill UNQUALIFIED
Kaitlin A BriddickGermanyXuxue Feng PROPOSAL
David L BowleyIndiaXuxue Feng NEW
Sinclair Q NickaFranceAsiya Javayant QUALIFIED
Francesco R NestleItalyAnna Fali RENEWAL
Kaitlin C ButtFranceStephen Shaw NEGOTIATION
Mujtaba R VocelkaArgentinaXuxue Feng UNQUALIFIED
Claire V IturbideUnited KingdomElwin Sharvill UNQUALIFIED
Mayumi D DilliardCanadaAnna Fali QUALIFIED
Maria C VocelkaFranceBernardo Dominic NEW
Jefferson M SchemmerJapanOnyama Limba PROPOSAL
Antonio R SaylorsJapanAmy Elsner UNQUALIFIED
Faith E ChuiAustraliaOnyama Limba RENEWAL
Leja L DoeBrazilAmy Elsner UNQUALIFIED
Octavia M AmigonCanadaAmy Elsner 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.