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
James V MorascaFranceXuxue Feng QUALIFIED
Adams K ChuiCanadaOnyama Limba NEGOTIATION
Ashley Q CaldareraGermanyAmy Elsner QUALIFIED
Cody F StensethIndiaIvan Magalhaes RENEWAL
Darci C NickaItalyIoni Bowcher UNQUALIFIED
Munro I RimFranceXuxue Feng NEW
Emily D GillianGermanyAnna Fali NEGOTIATION
Chavez V PerinItalyStephen Shaw PROPOSAL
Ashley H FlosiIndiaElwin Sharvill NEW
Izzy I AlbaresArgentinaStephen Shaw RENEWAL
Maisha C DoeGermanyElwin Sharvill NEW
Rodrigues P GillianIndiaAsiya Javayant NEW
Antonio D CaldareraUnited KingdomIoni Bowcher NEW
Jeanfrancois G TollnerIndiaAsiya Javayant UNQUALIFIED
Tony Y KolmetzUnited KingdomAmy Elsner PROPOSAL
Aika L DoeBrazilIoni Bowcher NEW
Misaki R WhobreyJapanStephen Shaw NEW
Wickens B GlickBrazilOnyama Limba UNQUALIFIED
Silvio T AlbaresGermanyXuxue Feng NEGOTIATION
Tony L SlusarskiFranceOnyama Limba UNQUALIFIED
Octavia A KolmetzFranceAsiya Javayant QUALIFIED
Ashley L FlosiBrazilAmy Elsner PROPOSAL
Izzy M MaletRussiaOnyama Limba NEGOTIATION
Deepesh R CampainFranceBernardo Dominic PROPOSAL
Arvin Z MaletUnited KingdomAnna Fali NEGOTIATION
Ricardo H SchemmerRussiaBernardo Dominic UNQUALIFIED
Greenwood A StockhamJapanBernardo Dominic NEW
Tony A FollerIndiaXuxue Feng UNQUALIFIED
Adams L NestleJapanBernardo Dominic UNQUALIFIED
Morrow M KolmetzCanadaAmy Elsner QUALIFIED
Claire A WieserIndiaStephen Shaw NEW
Juan K BowleyFranceAmy Elsner UNQUALIFIED
Isabel A BriddickItalyOnyama Limba NEGOTIATION
Jennifer U StockhamCanadaIoni Bowcher PROPOSAL
Ivar D KolmetzItalyXuxue Feng NEGOTIATION
Greenwood F NickaArgentinaAnna Fali NEW
Clifford C WieserSpainBernardo Dominic PROPOSAL
Silvio R MacleadUnited KingdomOnyama Limba NEGOTIATION
Morrow A FollerSpainStephen Shaw NEW
Aika P DilliardBrazilAnna Fali NEGOTIATION
Stacey Y SlusarskiAustraliaAmy Elsner UNQUALIFIED
Arvin K OldroydSpainAnna Fali UNQUALIFIED
Tony W BowleyArgentinaBernardo Dominic PROPOSAL
Ashley R CaldareraSpainAnna Fali RENEWAL
Nicolas S DarakjyBrazilAnna Fali QUALIFIED
Stacey R PerinCanadaOnyama Limba QUALIFIED
Morrow U PerinItalyOnyama Limba PROPOSAL
Nicolas N FigeroaItalyBernardo Dominic QUALIFIED
Cody M CampainAustraliaAmy Elsner RENEWAL
Greenwood I RoysterItalyIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Silvio T GauchoSpainIoni Bowcher UNQUALIFIED
Emily A SergiArgentinaXuxue Feng RENEWAL
Tony T GillianGermanyElwin Sharvill NEGOTIATION
Greenwood D VenereIndiaIvan Magalhaes NEW
Sinclair A InouyeUnited KingdomAsiya Javayant RENEWAL
Alejandro F StensethBrazilOnyama Limba UNQUALIFIED
Antonio K GlickRussiaElwin Sharvill PROPOSAL
Faith N CampainJapanBernardo Dominic QUALIFIED
Juan L StensethItalyAsiya Javayant PROPOSAL
Leon V MarrierIndiaAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones F PerinFrance2026-04-15Benton, John B Jr UNQUALIFIED54Xuxue Feng
1001Darci O FigeroaBrazil2026-03-29Benton, John B Jr NEGOTIATION7Anna Fali
1002Alejandro L SergiGermany2026-03-27Printing Dimensions RENEWAL47Anna Fali
1003Mujtaba V MaletIndia2026-03-31Truhlar And Truhlar Attys PROPOSAL6Asiya Javayant
1004Morrow I KuskoBrazil2026-04-03Chanay, Jeffrey A Esq UNQUALIFIED8Ivan Magalhaes
1005Claire V MarrierSpain2026-03-26Buckley Miller Wright NEW34Ioni Bowcher
1006Izzy V PerinRussia2026-03-28Rousseaux, Michael Esq QUALIFIED5Ivan Magalhaes
1007Claire S WaycottGermany2026-03-26King, Christopher A Esq UNQUALIFIED7Ivan Magalhaes
1008Clifford G AlbaresGermany2026-04-13Truhlar And Truhlar Attys NEW93Anna Fali
1009Smith N PaprockiAustralia2026-03-21Dorl, James J Esq PROPOSAL84Ioni Bowcher
1010Murillo T RoysterRussia2026-03-21Morlong Associates RENEWAL83Xuxue Feng
1011Faith F StensethUnited Kingdom2026-03-27King, Christopher A Esq UNQUALIFIED91Amy Elsner
1012Leon X FollerGermany2026-04-08Printing Dimensions QUALIFIED17Bernardo Dominic
1013Leon A SchemmerUnited Kingdom2026-04-02Chapman, Ross E Esq RENEWAL30Stephen Shaw
1014Alejandro Q NickaSpain2026-04-01Dorl, James J Esq UNQUALIFIED99Elwin Sharvill
1015Costa F DarakjyJapan2026-04-18Printing Dimensions NEGOTIATION45Xuxue Feng
1016Octavia R WhobreyArgentina2026-03-28Truhlar And Truhlar Attys RENEWAL1Bernardo Dominic
1017Salvatore X RutaArgentina2026-04-13Commercial Press RENEWAL51Anna Fali
1018Aditya C NestleArgentina2026-04-18Benton, John B Jr QUALIFIED60Stephen Shaw
1019Aditya V GillianFrance2026-04-14Printing Dimensions NEW28Ioni Bowcher
1020Maisha C MaletGermany2026-04-04Commercial Press NEGOTIATION73Ivan Magalhaes
1021Juan Y StensethArgentina2026-04-17Commercial Press NEGOTIATION99Onyama Limba
1022Kaitlin N OstroskyItaly2026-03-21Buckley Miller Wright NEW0Elwin Sharvill
1023Wickens T SlusarskiCanada2026-04-05Feiner Bros QUALIFIED13Anna Fali
1024Aika N MaletSpain2026-04-05Truhlar And Truhlar Attys RENEWAL29Amy Elsner
1025Murillo G WaycottRussia2026-04-10Feiner Bros PROPOSAL54Asiya Javayant
1026Murillo D MacleadFrance2026-03-24Commercial Press RENEWAL7Onyama Limba
1027Salvatore U WieserCanada2026-04-11Feiner Bros NEGOTIATION47Amy Elsner
1028Johnson J SlusarskiUnited Kingdom2026-04-18Chanay, Jeffrey A Esq QUALIFIED61Stephen Shaw
1029James H StockhamSpain2026-03-24Feltz Printing Service QUALIFIED73Ivan Magalhaes
1030Nicolas C PerinBrazil2026-04-07Benton, John B Jr NEGOTIATION72Anna Fali
1031Aruna Q DarakjyBrazil2026-03-26Chapman, Ross E Esq NEW82Stephen Shaw
1032Munro S RutaAustralia2026-04-10Chapman, Ross E Esq PROPOSAL35Amy Elsner
1033Kaitlin A FlosiGermany2026-04-18Benton, John B Jr QUALIFIED59Asiya Javayant
1034Julie Y WhobreyGermany2026-03-22Truhlar And Truhlar Attys QUALIFIED80Ivan Magalhaes
1035Rodrigues X KolmetzGermany2026-04-04Feiner Bros RENEWAL63Onyama Limba
1036Julie C RulapaughItaly2026-04-16Chemel, James L Cpa NEW63Asiya Javayant
1037Isabel W CampainItaly2026-03-24Chemel, James L Cpa RENEWAL69Bernardo Dominic
1038Kadeem U FlosiCanada2026-04-19Feiner Bros QUALIFIED59Ivan Magalhaes
1039Costa J ShinkoBrazil2026-03-28Commercial Press RENEWAL91Onyama Limba
1040Wickens A CaldareraBrazil2026-03-25Rousseaux, Michael Esq RENEWAL17Asiya Javayant
1041Kaitlin Z FigeroaRussia2026-04-07Feltz Printing Service RENEWAL65Stephen Shaw
1042Clifford E MorascaJapan2026-04-03Truhlar And Truhlar Attys NEW77Amy Elsner
1043Clifford J GauchoFrance2026-04-13Morlong Associates NEW92Bernardo Dominic
1044Sinclair W InouyeRussia2026-04-05Feltz Printing Service PROPOSAL97Ivan Magalhaes
1045Deepesh P SchemmerFrance2026-04-15Rousseaux, Michael Esq NEGOTIATION76Anna Fali
1046Morrow J VocelkaJapan2026-04-15Chapman, Ross E Esq RENEWAL76Onyama Limba
1047Juan P OldroydFrance2026-04-11Feltz Printing Service UNQUALIFIED15Ivan Magalhaes
1048Octavia V PerinCanada2026-03-24Printing Dimensions NEW99Xuxue Feng
1049Juan S RoysterArgentina2026-04-12King, Christopher A Esq RENEWAL51Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Tony A InouyeCanadaElwin Sharvill QUALIFIED
Kaitlin X SergiAustraliaBernardo Dominic NEW
Antonio Q GauchoUnited KingdomOnyama Limba NEGOTIATION
Nicolas W ShinkoRussiaElwin Sharvill NEW
Stacey F BriddickItalyElwin Sharvill NEGOTIATION
Faith J RoysterIndiaIvan Magalhaes NEGOTIATION
Francesco V FerenczArgentinaAnna Fali QUALIFIED
Costa X WaycottJapanAmy Elsner QUALIFIED
Maisha Q SchemmerJapanOnyama Limba PROPOSAL
Emily D GauchoItalyOnyama Limba NEGOTIATION
Emily K WaycottFranceAsiya Javayant PROPOSAL
Jeanfrancois T RimArgentinaAmy Elsner PROPOSAL
Emily Q KolmetzRussiaAnna Fali PROPOSAL
Ivar P NestleSpainIvan Magalhaes NEW
Cody K KolmetzArgentinaStephen Shaw QUALIFIED
Murillo N GarufiArgentinaBernardo Dominic UNQUALIFIED
Claire G GlickArgentinaAnna Fali NEW
Silvio J RimAustraliaXuxue Feng QUALIFIED
Nicolas B PerinSpainBernardo Dominic NEW
Smith Z DilliardFranceIvan Magalhaes NEW
Faith B WieserUnited KingdomXuxue Feng NEW
Jones F CaldareraGermanyBernardo Dominic NEGOTIATION
Misaki H AlbaresJapanXuxue Feng NEW
Sinclair C OstroskyGermanyBernardo Dominic UNQUALIFIED
Salvatore J ButtCanadaAnna Fali NEW
Munro B MarrierJapanStephen Shaw UNQUALIFIED
Mujtaba H BowleyGermanyXuxue Feng RENEWAL
Rodrigues V InouyeUnited KingdomAmy Elsner QUALIFIED
Chavez E RoysterBrazilAmy Elsner UNQUALIFIED
Sinclair Y DarakjyBrazilAsiya Javayant UNQUALIFIED
Faith D VenereArgentinaIvan Magalhaes NEGOTIATION
Smith V InouyeJapanOnyama Limba NEW
Johnson D KuskoArgentinaElwin Sharvill UNQUALIFIED
Cody Y ButtSpainBernardo Dominic NEW
Johnson A FerenczGermanyOnyama Limba RENEWAL
David G BriddickCanadaAnna Fali RENEWAL
Arvin R WaycottCanadaXuxue Feng RENEWAL
Maria U WaycottFranceIvan Magalhaes UNQUALIFIED
Wickens N GillianBrazilOnyama Limba RENEWAL
David O SergiIndiaBernardo Dominic PROPOSAL
Alejandro W MorascaItalyXuxue Feng QUALIFIED
Nicolas I RimUnited KingdomElwin Sharvill NEW
Maria Q NestleUnited KingdomOnyama Limba QUALIFIED
Jeanfrancois J DoeBrazilElwin Sharvill RENEWAL
Faith Y IturbideSpainOnyama Limba NEW
Isabel M GarufiFranceAmy Elsner QUALIFIED
Jones M OstroskyItalyBernardo Dominic UNQUALIFIED
Greenwood D AmigonSpainIvan Magalhaes QUALIFIED
James L SaylorsCanadaIvan Magalhaes QUALIFIED
Francesco X IturbideUnited KingdomElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Murillo L Dilliard
Izzy J Whobrey
Silvio H Slusarski
Antonio M Bolognia
Jennifer L Foller
Mujtaba T Marrier
Nicolas H Malet
Rodrigues Y Ferencz
Juan R Dilliard
Leja D Nicka
Costa G Ruta
Aika N Figeroa
Faith N Figeroa
Mujtaba G Albares
Clifford M Maclead
Isabel V Bowley
Claire N Paprocki
Antonio D Ruta
Mujtaba Q Ferencz
Rodrigues W Stenseth
Greenwood P Saylors
Costa P Perin
Smith I Stenseth
Maisha F Poquette
Morrow L Waycott
Smith X Ruta
Octavia F Morasca
Deepesh W Foller
Kadeem Z Stenseth
Salvatore N Ferencz
Chavez F Figeroa
Johnson C Malet
Emily D Butt
Jennifer J Flosi
Costa Z Inouye
Greenwood Z Campain
Munro N Schemmer
Ricardo Q Inouye
Jeanfrancois F Poquette
Kaitlin J Schemmer
Claire K Gillian
Silvio A Kusko
James Q Foller
Ivar T Amigon
Kadeem V Perin
Kaitlin C Poquette
Kaitlin A Sergi
Leja S Ostrosky
David T Shinko
Tony C Caldarera
IdCountryDate
1000Australia2026-03-28
1001Italy2026-03-31
1002Germany2026-04-15
1003Germany2026-04-02
1004Japan2026-04-10
1005India2026-04-07
1006United Kingdom2026-04-11
1007Canada2026-04-12
1008Argentina2026-04-11
1009Australia2026-03-25
1010Spain2026-04-14
1011Japan2026-03-28
1012Italy2026-04-17
1013United Kingdom2026-03-25
1014France2026-03-21
1015Italy2026-04-19
1016Spain2026-04-01
1017Germany2026-03-22
1018Brazil2026-04-16
1019India2026-04-06
1020Italy2026-04-16
1021Japan2026-03-31
1022Japan2026-04-13
1023Canada2026-03-23
1024Australia2026-03-23
1025Russia2026-03-22
1026France2026-04-02
1027Canada2026-04-19
1028Japan2026-04-12
1029Australia2026-04-01
1030France2026-04-14
1031Germany2026-04-11
1032France2026-04-18
1033Australia2026-04-18
1034Japan2026-04-11
1035Canada2026-04-06
1036Argentina2026-04-15
1037France2026-04-13
1038United Kingdom2026-03-23
1039Brazil2026-04-01
1040Japan2026-03-30
1041Germany2026-04-12
1042Russia2026-03-27
1043India2026-04-06
1044Russia2026-04-16
1045Italy2026-04-10
1046Brazil2026-04-19
1047United Kingdom2026-03-23
1048Italy2026-04-15
1049Argentina2026-04-10

On-Demand Data

NameIdCountryDate
Greenwood J Campain1000Australia2026-04-01
Leja X Bowley1001Spain2026-04-12
Ivar C Chui1002France2026-04-01
Aika H Dilliard1003Brazil2026-04-17
Emily D Poquette1004Spain2026-04-11
Jeanfrancois R Caldarera1005India2026-04-08
Sinclair G Stockham1006Spain2026-04-08
Emily U Schemmer1007United Kingdom2026-04-10
Claire G Sergi1008Spain2026-03-25
Aditya E Flosi1009Japan2026-04-11
Izzy W Dilliard1010Italy2026-04-12
Aditya L Gillian1011Australia2026-03-27
Kaitlin A Glick1012India2026-03-27
Wickens K Doe1013Spain2026-03-24
Octavia Q Albares1014Canada2026-04-01
Octavia G Amigon1015Germany2026-04-06
Stacey G Caldarera1016Germany2026-04-04
Kaitlin K Ferencz1017Spain2026-04-06
Francesco H Bowley1018Russia2026-04-17
Chavez P Foller1019Argentina2026-04-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo O CampainUnited KingdomOnyama Limba NEGOTIATION
Faith E RimBrazilXuxue Feng PROPOSAL
Murillo F VenereSpainIoni Bowcher UNQUALIFIED
Stacey C BriddickRussiaAmy Elsner QUALIFIED
David S IturbideItalyElwin Sharvill QUALIFIED
Nicolas Z KolmetzCanadaBernardo Dominic RENEWAL
David D BriddickRussiaIoni Bowcher UNQUALIFIED
Nicolas B BriddickSpainAmy Elsner PROPOSAL
Rodrigues C BologniaAustraliaXuxue Feng QUALIFIED
Chavez J MaletGermanyElwin Sharvill PROPOSAL
Antonio K ShinkoItalyXuxue Feng QUALIFIED
Leja W StensethBrazilAmy Elsner UNQUALIFIED
Julie V SergiIndiaXuxue Feng PROPOSAL
Juan N AmigonArgentinaAnna Fali PROPOSAL
Morrow O RimArgentinaIvan Magalhaes NEGOTIATION
Izzy S FollerCanadaAsiya Javayant QUALIFIED
Arvin F OstroskyJapanXuxue Feng RENEWAL
Claire J FlosiFranceAnna Fali RENEWAL
Claire B CaudyAustraliaStephen Shaw NEGOTIATION
Cody U AmigonArgentinaIoni Bowcher UNQUALIFIED
Emily C MacleadCanadaBernardo Dominic NEGOTIATION
Deepesh D SaylorsUnited KingdomAmy Elsner UNQUALIFIED
Clifford Y GillianBrazilAmy Elsner PROPOSAL
Aruna U NestleJapanAnna Fali NEGOTIATION
Jennifer D SaylorsArgentinaXuxue Feng PROPOSAL
Aruna G RoysterIndiaAnna Fali QUALIFIED
Ricardo Q FollerGermanyAmy Elsner RENEWAL
Johnson U WaycottFranceBernardo Dominic UNQUALIFIED
Kadeem Y RimUnited KingdomXuxue Feng NEW
Darci Z FlosiJapanAmy Elsner PROPOSAL
Octavia B GlickArgentinaXuxue Feng QUALIFIED
Ricardo W AlbaresUnited KingdomIoni Bowcher NEW
Juan B BriddickUnited KingdomElwin Sharvill NEW
Costa K OldroydBrazilAnna Fali QUALIFIED
Aditya I RoysterUnited KingdomBernardo Dominic QUALIFIED
Jefferson I MorascaArgentinaAnna Fali QUALIFIED
Nicolas J BriddickRussiaXuxue Feng NEGOTIATION
Deepesh R KuskoUnited KingdomIvan Magalhaes RENEWAL
Francesco R GillianGermanyAsiya Javayant RENEWAL
Morrow J WieserCanadaElwin Sharvill 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.