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 M InouyeFranceOnyama Limba PROPOSAL
Johnson G FlosiUnited KingdomStephen Shaw RENEWAL
Jones H StockhamGermanyElwin Sharvill PROPOSAL
Murillo W MaletItalyIvan Magalhaes UNQUALIFIED
Cody R KuskoArgentinaAmy Elsner RENEWAL
Kadeem N GarufiIndiaStephen Shaw UNQUALIFIED
Wickens D CampainRussiaIvan Magalhaes PROPOSAL
Silvio Q MaletSpainElwin Sharvill NEW
Emily P ChuiBrazilElwin Sharvill UNQUALIFIED
Jennifer N SaylorsAustraliaAnna Fali NEGOTIATION
Isabel J MorascaBrazilAsiya Javayant RENEWAL
Jennifer C BologniaSpainStephen Shaw UNQUALIFIED
Misaki U RutaArgentinaXuxue Feng QUALIFIED
Juan T StockhamJapanElwin Sharvill NEW
Sinclair R MaletGermanyXuxue Feng NEW
Silvio W StockhamRussiaElwin Sharvill UNQUALIFIED
Antonio F CampainAustraliaOnyama Limba RENEWAL
Deepesh E MaletIndiaBernardo Dominic QUALIFIED
Maria P CampainUnited KingdomElwin Sharvill UNQUALIFIED
Jeanfrancois T FollerJapanStephen Shaw UNQUALIFIED
David S ShinkoSpainElwin Sharvill RENEWAL
Ashley N RoysterJapanAnna Fali UNQUALIFIED
Darci O VenereRussiaAsiya Javayant PROPOSAL
Jefferson W WieserFranceOnyama Limba NEGOTIATION
Aruna Z ShinkoFranceAmy Elsner NEGOTIATION
Francesco T DarakjyRussiaIoni Bowcher RENEWAL
Isabel F BriddickAustraliaOnyama Limba UNQUALIFIED
Isabel W FollerArgentinaOnyama Limba QUALIFIED
Murillo K StensethCanadaIoni Bowcher QUALIFIED
Darci H CampainArgentinaAmy Elsner PROPOSAL
Aruna N KolmetzFranceOnyama Limba NEW
Greenwood E GauchoFranceOnyama Limba RENEWAL
Chavez H SaylorsBrazilXuxue Feng UNQUALIFIED
Mayumi R RimCanadaXuxue Feng NEGOTIATION
Tony K FlosiItalyXuxue Feng NEW
Izzy A RimJapanXuxue Feng QUALIFIED
Julie E SergiItalyAsiya Javayant UNQUALIFIED
Mayumi D MorascaItalyBernardo Dominic UNQUALIFIED
Leja C NickaJapanXuxue Feng NEGOTIATION
Izzy A InouyeBrazilStephen Shaw RENEWAL
Nicolas A MaletItalyBernardo Dominic QUALIFIED
Izzy Z VenereAustraliaStephen Shaw PROPOSAL
Rodrigues F RutaItalyElwin Sharvill UNQUALIFIED
James W DilliardUnited KingdomAnna Fali PROPOSAL
Sinclair A GillianArgentinaIvan Magalhaes NEGOTIATION
Jones Q RutaBrazilAmy Elsner NEW
Jones E PoquetteFranceBernardo Dominic PROPOSAL
Silvio U MaletAustraliaBernardo Dominic UNQUALIFIED
Francesco Q GarufiRussiaAmy Elsner RENEWAL
Izzy Q OldroydJapanAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Julie K WhobreyItalyOnyama Limba UNQUALIFIED
Jeanfrancois C ShinkoUnited KingdomIoni Bowcher UNQUALIFIED
Greenwood U SergiIndiaOnyama Limba UNQUALIFIED
Cody T StensethFranceIvan Magalhaes RENEWAL
Munro V NestleSpainOnyama Limba QUALIFIED
Mayumi P StensethCanadaOnyama Limba NEW
Arvin C AlbaresCanadaAsiya Javayant NEGOTIATION
Kadeem B StensethGermanyIoni Bowcher UNQUALIFIED
Izzy N MaletSpainStephen Shaw NEW
Jefferson T TollnerCanadaAsiya Javayant UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer C GillianBrazil2026-05-24Dorl, James J Esq RENEWAL2Anna Fali
1001Rodrigues C SchemmerIndia2026-06-09Commercial Press NEGOTIATION40Amy Elsner
1002Jennifer S CampainCanada2026-06-02Rousseaux, Michael Esq PROPOSAL87Onyama Limba
1003Wickens P StockhamUnited Kingdom2026-05-30Chanay, Jeffrey A Esq QUALIFIED38Bernardo Dominic
1004Juan Y OstroskyArgentina2026-05-17Feiner Bros RENEWAL65Onyama Limba
1005Cody R WieserJapan2026-06-14Buckley Miller Wright PROPOSAL38Anna Fali
1006Nicolas Z SaylorsSpain2026-06-06Buckley Miller Wright UNQUALIFIED63Ioni Bowcher
1007Darci E SaylorsArgentina2026-06-13Feltz Printing Service NEGOTIATION11Xuxue Feng
1008David M FerenczItaly2026-05-18Dorl, James J Esq NEW10Elwin Sharvill
1009Silvio H KolmetzRussia2026-06-14Chemel, James L Cpa RENEWAL89Amy Elsner
1010Claire V ChuiUnited Kingdom2026-06-10Chanay, Jeffrey A Esq RENEWAL1Amy Elsner
1011Ashley G StensethAustralia2026-06-09Benton, John B Jr NEW65Stephen Shaw
1012Clifford I ButtUnited Kingdom2026-05-24Feltz Printing Service RENEWAL98Elwin Sharvill
1013Chavez A ShinkoBrazil2026-06-10Commercial Press QUALIFIED5Stephen Shaw
1014Octavia B OstroskyUnited Kingdom2026-05-28Chanay, Jeffrey A Esq RENEWAL43Stephen Shaw
1015Francesco F StensethIndia2026-06-13Chanay, Jeffrey A Esq PROPOSAL19Bernardo Dominic
1016Juan Z SchemmerAustralia2026-05-23Rousseaux, Michael Esq PROPOSAL82Anna Fali
1017Aika L FigeroaArgentina2026-05-18Feltz Printing Service NEW30Ivan Magalhaes
1018Jeanfrancois R BriddickRussia2026-05-20Feltz Printing Service RENEWAL11Bernardo Dominic
1019Jennifer J TollnerJapan2026-05-19Commercial Press PROPOSAL76Stephen Shaw
1020Silvio D BologniaAustralia2026-05-27Buckley Miller Wright NEW35Ivan Magalhaes
1021Kaitlin I DilliardGermany2026-05-29Truhlar And Truhlar Attys QUALIFIED89Amy Elsner
1022Claire I WhobreyBrazil2026-05-21Feiner Bros PROPOSAL15Amy Elsner
1023James V SergiArgentina2026-06-07Rousseaux, Michael Esq UNQUALIFIED71Elwin Sharvill
1024Mayumi F GarufiSpain2026-05-21Chemel, James L Cpa NEGOTIATION41Xuxue Feng
1025Rodrigues B DarakjyBrazil2026-06-01Dorl, James J Esq UNQUALIFIED57Elwin Sharvill
1026Arvin B FlosiRussia2026-05-19Morlong Associates UNQUALIFIED18Stephen Shaw
1027Munro L WhobreyArgentina2026-05-27Printing Dimensions NEGOTIATION73Bernardo Dominic
1028Antonio A GlickRussia2026-05-19Feltz Printing Service RENEWAL19Elwin Sharvill
1029Leja L WieserUnited Kingdom2026-05-21Feltz Printing Service QUALIFIED3Asiya Javayant
1030Claire J MacleadBrazil2026-05-22Printing Dimensions PROPOSAL33Bernardo Dominic
1031Emily F NestleRussia2026-06-13Printing Dimensions QUALIFIED63Bernardo Dominic
1032Aditya H DarakjyBrazil2026-06-04King, Christopher A Esq NEGOTIATION76Onyama Limba
1033Misaki V InouyeCanada2026-05-24Rousseaux, Michael Esq PROPOSAL40Asiya Javayant
1034Alejandro I FlosiSpain2026-06-06Rousseaux, Michael Esq UNQUALIFIED92Stephen Shaw
1035Jefferson S AmigonUnited Kingdom2026-05-31Morlong Associates NEGOTIATION28Onyama Limba
1036Clifford F DarakjyAustralia2026-05-17Feltz Printing Service UNQUALIFIED93Anna Fali
1037Ivar B SergiRussia2026-06-06Printing Dimensions NEW78Anna Fali
1038Emily C OldroydGermany2026-05-18Printing Dimensions NEGOTIATION58Amy Elsner
1039Cody D ShinkoFrance2026-05-25Printing Dimensions RENEWAL97Stephen Shaw
1040Salvatore O DilliardCanada2026-06-06Feltz Printing Service NEGOTIATION99Ioni Bowcher
1041Leon J CaldareraJapan2026-05-29Feltz Printing Service UNQUALIFIED81Stephen Shaw
1042Ashley B AlbaresFrance2026-05-21Printing Dimensions PROPOSAL68Elwin Sharvill
1043Johnson J IturbideItaly2026-06-01Feiner Bros UNQUALIFIED17Xuxue Feng
1044Aika N StockhamFrance2026-05-29Feiner Bros UNQUALIFIED72Xuxue Feng
1045Alejandro A MarrierUnited Kingdom2026-05-18Feltz Printing Service PROPOSAL98Asiya Javayant
1046Jones A SchemmerRussia2026-06-15Benton, John B Jr UNQUALIFIED69Amy Elsner
1047Jeanfrancois K FlosiUnited Kingdom2026-05-20Printing Dimensions RENEWAL9Onyama Limba
1048Isabel T MacleadRussia2026-06-10Dorl, James J Esq NEGOTIATION74Elwin Sharvill
1049Aika Z DoeItaly2026-05-17Benton, John B Jr NEW21Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
James R ButtGermanyElwin Sharvill PROPOSAL
Misaki K NickaItalyBernardo Dominic NEGOTIATION
Cody I NestleJapanOnyama Limba NEGOTIATION
Maria Y PerinJapanAmy Elsner NEW
Darci V WhobreyGermanyBernardo Dominic NEGOTIATION
Jeanfrancois V RutaAustraliaAmy Elsner NEW
Smith N BowleyCanadaAsiya Javayant NEW
Aruna D SergiGermanyXuxue Feng RENEWAL
Morrow I WhobreyBrazilIoni Bowcher RENEWAL
Tony I CaldareraSpainBernardo Dominic NEW
Francesco C RulapaughCanadaAsiya Javayant QUALIFIED
Ricardo F GarufiAustraliaBernardo Dominic PROPOSAL
Arvin W GillianUnited KingdomIoni Bowcher PROPOSAL
Costa A IturbideGermanyAnna Fali QUALIFIED
Ricardo R FerenczArgentinaElwin Sharvill PROPOSAL
Aruna M PaprockiIndiaElwin Sharvill RENEWAL
Emily P ChuiIndiaIoni Bowcher NEGOTIATION
Alejandro U GlickAustraliaXuxue Feng NEGOTIATION
Nicolas T VocelkaUnited KingdomElwin Sharvill UNQUALIFIED
Francesco V SchemmerBrazilAmy Elsner RENEWAL
Kaitlin T GauchoRussiaXuxue Feng QUALIFIED
Salvatore H ChuiJapanElwin Sharvill NEGOTIATION
Arvin B SaylorsAustraliaAsiya Javayant UNQUALIFIED
James K WieserJapanIoni Bowcher NEW
Deepesh E FollerFranceAmy Elsner RENEWAL
James F ButtBrazilAnna Fali RENEWAL
Maisha U ShinkoBrazilOnyama Limba RENEWAL
Kadeem O GarufiSpainAsiya Javayant UNQUALIFIED
Francesco Q WaycottGermanyAmy Elsner PROPOSAL
Aika W KolmetzIndiaAmy Elsner NEW
Silvio C FlosiRussiaAmy Elsner QUALIFIED
Mujtaba F GlickCanadaAnna Fali UNQUALIFIED
Deepesh I AlbaresGermanyIvan Magalhaes PROPOSAL
Jones H KuskoFranceOnyama Limba RENEWAL
Francesco O BowleyJapanXuxue Feng RENEWAL
Darci G AmigonCanadaOnyama Limba RENEWAL
Munro K MarrierBrazilXuxue Feng NEGOTIATION
Mujtaba V CaudySpainBernardo Dominic RENEWAL
Costa L KuskoSpainIoni Bowcher NEW
Claire Y PoquetteBrazilBernardo Dominic UNQUALIFIED
Murillo K AlbaresSpainAsiya Javayant NEW
Rodrigues T RimItalyAsiya Javayant QUALIFIED
Clifford G IturbideUnited KingdomIvan Magalhaes QUALIFIED
Juan F StensethCanadaOnyama Limba RENEWAL
Cody K StockhamBrazilIoni Bowcher QUALIFIED
James O BriddickBrazilIvan Magalhaes UNQUALIFIED
Cody E CaudyArgentinaIoni Bowcher NEW
Murillo F MaletGermanyAmy Elsner PROPOSAL
Jeanfrancois Y KuskoArgentinaXuxue Feng NEW
Costa K GauchoBrazilAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Sinclair O Paprocki
Aika S Kolmetz
Kadeem A Kolmetz
Murillo H Oldroyd
Jones E Rulapaugh
Cody P Caldarera
Arvin W Gaucho
Ivar K Ostrosky
Maria L Caudy
Rodrigues J Glick
Jeanfrancois O Iturbide
David R Venere
Julie K Caldarera
Claire F Waycott
Darci I Marrier
Ivar Z Malet
Leja D Oldroyd
Jefferson M Ruta
Nicolas B Gillian
Sinclair S Iturbide
Ivar M Malet
Darci F Caudy
Aika M Kusko
Octavia I Bowley
Julie R Waycott
Isabel S Dilliard
Jefferson B Rulapaugh
Octavia A Inouye
Aditya V Sergi
Jeanfrancois M Vocelka
Izzy X Dilliard
Mujtaba E Stenseth
Isabel G Foller
Emily S Foller
Aika D Kusko
Johnson L Paprocki
Darci D Bowley
Faith A Glick
Costa R Garufi
Morrow U Darakjy
Arvin D Doe
Leon G Rim
Emily L Butt
Juan R Chui
Claire Y Rulapaugh
Alejandro O Caldarera
Tony K Saylors
Rodrigues W Slusarski
Jennifer Q Darakjy
Claire W Malet
IdCountryDate
1000France2026-06-14
1001India2026-05-25
1002France2026-06-05
1003Spain2026-05-26
1004France2026-06-04
1005France2026-05-23
1006Italy2026-05-22
1007Germany2026-05-24
1008Italy2026-05-25
1009Canada2026-05-28
1010Spain2026-05-24
1011Japan2026-05-22
1012Canada2026-06-05
1013Italy2026-05-22
1014Spain2026-05-30
1015United Kingdom2026-06-13
1016Germany2026-05-28
1017France2026-06-14
1018Japan2026-05-30
1019Brazil2026-06-13
1020United Kingdom2026-05-30
1021Canada2026-06-07
1022Spain2026-06-11
1023Canada2026-05-21
1024United Kingdom2026-05-23
1025Brazil2026-05-28
1026Canada2026-05-20
1027France2026-06-10
1028France2026-05-29
1029France2026-06-12
1030Russia2026-05-21
1031Russia2026-05-20
1032Argentina2026-05-19
1033Australia2026-06-01
1034Argentina2026-06-10
1035Italy2026-05-21
1036India2026-06-07
1037India2026-05-19
1038Australia2026-06-08
1039Australia2026-06-10
1040Italy2026-06-08
1041India2026-06-05
1042France2026-05-27
1043India2026-06-08
1044Italy2026-05-18
1045Italy2026-06-15
1046Japan2026-05-30
1047India2026-06-10
1048Germany2026-05-19
1049United Kingdom2026-06-05

On-Demand Data

NameIdCountryDate
Isabel S Dilliard1000Australia2026-05-20
Morrow J Royster1001Italy2026-06-01
Faith J Inouye1002United Kingdom2026-06-05
David M Nestle1003Argentina2026-05-30
Darci I Saylors1004Brazil2026-05-22
Sinclair P Darakjy1005Brazil2026-05-29
Arvin I Sergi1006India2026-05-29
Smith U Nicka1007Japan2026-06-14
Cody V Shinko1008Germany2026-06-03
David W Glick1009Germany2026-05-19
Aruna I Rim1010Argentina2026-06-12
Maisha B Darakjy1011Russia2026-06-08
Alejandro W Briddick1012Brazil2026-06-04
Jennifer K Kusko1013Italy2026-05-22
Morrow D Campain1014Russia2026-06-14
Misaki X Venere1015Italy2026-05-23
Smith Y Figeroa1016Japan2026-05-17
Isabel Y Kusko1017Italy2026-06-09
Emily D Slusarski1018Argentina2026-05-19
Aruna Y Kusko1019France2026-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem K DarakjyJapanIoni Bowcher RENEWAL
Mayumi A GauchoFranceXuxue Feng PROPOSAL
Octavia M BriddickItalyXuxue Feng NEW
Tony M MaletRussiaBernardo Dominic RENEWAL
Leon T CaldareraJapanBernardo Dominic PROPOSAL
Leja B OstroskyUnited KingdomAmy Elsner QUALIFIED
Faith E TollnerAustraliaElwin Sharvill QUALIFIED
Darci Z ButtUnited KingdomAmy Elsner UNQUALIFIED
Rodrigues X FollerAustraliaOnyama Limba UNQUALIFIED
James E GillianArgentinaAsiya Javayant PROPOSAL
Maisha N MorascaItalyAsiya Javayant RENEWAL
Juan E RimFranceAnna Fali PROPOSAL
Mayumi T GillianAustraliaIvan Magalhaes NEW
Arvin Y FerenczIndiaAnna Fali NEGOTIATION
Leon C WieserSpainBernardo Dominic NEW
Ashley T NestleSpainIvan Magalhaes PROPOSAL
Sinclair C DarakjyItalyIvan Magalhaes UNQUALIFIED
David N DarakjyIndiaAnna Fali QUALIFIED
Aditya X DarakjyAustraliaElwin Sharvill UNQUALIFIED
David T KolmetzSpainAsiya Javayant QUALIFIED
Smith H CaldareraUnited KingdomElwin Sharvill RENEWAL
Arvin H DoeAustraliaBernardo Dominic PROPOSAL
Octavia B CaudyArgentinaAsiya Javayant PROPOSAL
Octavia Z PaprockiFranceIvan Magalhaes NEW
Johnson O BriddickUnited KingdomStephen Shaw UNQUALIFIED
Clifford D ChuiGermanyIvan Magalhaes QUALIFIED
Arvin H IturbideSpainOnyama Limba NEW
Ricardo L BriddickSpainStephen Shaw RENEWAL
Chavez W GlickRussiaIoni Bowcher NEW
Maria P MaletItalyXuxue Feng NEW
Alejandro A FollerBrazilAmy Elsner UNQUALIFIED
Murillo O GauchoAustraliaAnna Fali PROPOSAL
Julie F OstroskyAustraliaElwin Sharvill RENEWAL
Smith B VenereSpainAnna Fali PROPOSAL
Clifford K ButtCanadaXuxue Feng QUALIFIED
Kaitlin N InouyeRussiaStephen Shaw QUALIFIED
Munro U FollerIndiaBernardo Dominic PROPOSAL
Clifford S ShinkoUnited KingdomIvan Magalhaes UNQUALIFIED
Alejandro F SaylorsRussiaAsiya Javayant PROPOSAL
Isabel C StensethAustraliaIvan Magalhaes QUALIFIED

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