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
Silvio E KuskoFranceAsiya Javayant QUALIFIED
Rodrigues W MacleadCanadaIoni Bowcher QUALIFIED
Jennifer Z TollnerSpainAmy Elsner RENEWAL
Deepesh A KolmetzFranceXuxue Feng NEW
Aruna E VenereUnited KingdomOnyama Limba NEGOTIATION
Clifford V SlusarskiAustraliaOnyama Limba NEGOTIATION
Munro U BowleyItalyElwin Sharvill UNQUALIFIED
Chavez X NickaIndiaAmy Elsner QUALIFIED
Maria P FollerGermanyAsiya Javayant PROPOSAL
Octavia B MacleadAustraliaOnyama Limba UNQUALIFIED
Smith Q PerinBrazilIoni Bowcher PROPOSAL
Deepesh R ShinkoCanadaAmy Elsner RENEWAL
Greenwood F KuskoFranceIoni Bowcher NEW
Francesco X SlusarskiRussiaAsiya Javayant PROPOSAL
Cody R TollnerGermanyElwin Sharvill RENEWAL
Mayumi T GillianBrazilStephen Shaw PROPOSAL
Misaki C VocelkaItalyIoni Bowcher NEW
Mayumi U ChuiIndiaIoni Bowcher NEW
Salvatore C StensethFranceBernardo Dominic QUALIFIED
Salvatore Q GillianBrazilAsiya Javayant NEW
Faith X StensethItalyXuxue Feng QUALIFIED
Greenwood V OstroskyGermanyElwin Sharvill QUALIFIED
Nicolas U DilliardAustraliaIoni Bowcher NEGOTIATION
Faith V ButtRussiaStephen Shaw PROPOSAL
Isabel Y CaldareraBrazilElwin Sharvill NEW
Tony I GillianGermanyStephen Shaw RENEWAL
Octavia L ButtAustraliaElwin Sharvill PROPOSAL
Salvatore W GarufiArgentinaElwin Sharvill RENEWAL
Arvin O PerinRussiaAsiya Javayant RENEWAL
Kadeem Y MaletAustraliaXuxue Feng PROPOSAL
Leon Q SergiRussiaIoni Bowcher NEGOTIATION
Izzy O ChuiBrazilAmy Elsner NEW
Rodrigues S BriddickUnited KingdomAnna Fali NEGOTIATION
Ricardo H AlbaresIndiaBernardo Dominic RENEWAL
Julie U AlbaresItalyAmy Elsner RENEWAL
Isabel N MorascaUnited KingdomAsiya Javayant UNQUALIFIED
Murillo A MarrierSpainStephen Shaw QUALIFIED
Faith I AlbaresItalyAnna Fali RENEWAL
Morrow N VocelkaGermanyAsiya Javayant NEW
Octavia N StockhamItalyStephen Shaw RENEWAL
Aditya E MorascaBrazilIoni Bowcher NEGOTIATION
Jeanfrancois U IturbideArgentinaStephen Shaw RENEWAL
Izzy R FollerJapanIvan Magalhaes QUALIFIED
Aika P ButtCanadaStephen Shaw UNQUALIFIED
Cody K NestleCanadaOnyama Limba NEGOTIATION
Ricardo J SergiAustraliaIoni Bowcher NEGOTIATION
Rodrigues B AlbaresItalyAsiya Javayant RENEWAL
Tony Z BriddickJapanOnyama Limba PROPOSAL
David Q PaprockiCanadaAnna Fali PROPOSAL
Alejandro W AmigonGermanyIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Munro L MaletArgentinaBernardo Dominic PROPOSAL
David G BologniaCanadaXuxue Feng NEGOTIATION
James C StockhamCanadaElwin Sharvill QUALIFIED
Ivar K FlosiRussiaIvan Magalhaes PROPOSAL
Rodrigues J MorascaItalyAsiya Javayant NEGOTIATION
Costa T FlosiBrazilAmy Elsner NEW
Maria L GillianJapanAmy Elsner PROPOSAL
Maisha C DarakjyIndiaIoni Bowcher RENEWAL
Johnson C GillianItalyOnyama Limba RENEWAL
Juan J SchemmerBrazilAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey X SchemmerRussia2026-05-14Chemel, James L Cpa RENEWAL24Ivan Magalhaes
1001Salvatore Z PerinCanada2026-05-04Dorl, James J Esq RENEWAL51Onyama Limba
1002Nicolas E StockhamBrazil2026-05-17Feiner Bros UNQUALIFIED78Asiya Javayant
1003Arvin S BriddickCanada2026-05-14Dorl, James J Esq PROPOSAL34Onyama Limba
1004Claire C PoquetteGermany2026-05-19Printing Dimensions NEGOTIATION18Ivan Magalhaes
1005Costa X PaprockiGermany2026-05-14Truhlar And Truhlar Attys NEW38Amy Elsner
1006Rodrigues L DilliardUnited Kingdom2026-05-16Benton, John B Jr UNQUALIFIED26Anna Fali
1007Julie J BologniaArgentina2026-04-26Chemel, James L Cpa RENEWAL18Bernardo Dominic
1008Cody N DilliardBrazil2026-05-15Chemel, James L Cpa PROPOSAL64Bernardo Dominic
1009Claire X KuskoRussia2026-05-01Rangoni Of Florence PROPOSAL70Onyama Limba
1010Smith K FigeroaJapan2026-05-17Dorl, James J Esq PROPOSAL96Anna Fali
1011Adams X SergiCanada2026-04-28Chemel, James L Cpa QUALIFIED24Amy Elsner
1012Clifford H MaletArgentina2026-05-21Chemel, James L Cpa RENEWAL61Elwin Sharvill
1013Alejandro U GarufiGermany2026-05-17Rangoni Of Florence PROPOSAL58Xuxue Feng
1014Stacey B KolmetzIndia2026-04-27Truhlar And Truhlar Attys NEGOTIATION60Xuxue Feng
1015Faith K OstroskyGermany2026-05-13Feiner Bros RENEWAL24Onyama Limba
1016Smith F NestleRussia2026-05-13Chemel, James L Cpa NEGOTIATION33Onyama Limba
1017Antonio L MaletRussia2026-04-29Commercial Press RENEWAL21Ioni Bowcher
1018Jeanfrancois S MaletGermany2026-05-01Buckley Miller Wright NEW75Xuxue Feng
1019David V WieserJapan2026-04-30King, Christopher A Esq PROPOSAL95Ioni Bowcher
1020Juan R KuskoJapan2026-05-18Rousseaux, Michael Esq NEGOTIATION68Ioni Bowcher
1021Ricardo L SchemmerUnited Kingdom2026-05-07Rangoni Of Florence PROPOSAL99Bernardo Dominic
1022Rodrigues J NickaSpain2026-05-16Benton, John B Jr NEW98Elwin Sharvill
1023Nicolas D MaletBrazil2026-05-06Morlong Associates NEGOTIATION79Bernardo Dominic
1024Cody E MorascaGermany2026-04-28Rangoni Of Florence PROPOSAL93Anna Fali
1025Adams B FerenczRussia2026-04-28King, Christopher A Esq UNQUALIFIED10Xuxue Feng
1026Aditya L WhobreySpain2026-05-06Commercial Press QUALIFIED91Ivan Magalhaes
1027Aruna B SergiIndia2026-05-20Rousseaux, Michael Esq UNQUALIFIED99Bernardo Dominic
1028Claire S WhobreyAustralia2026-05-22Chanay, Jeffrey A Esq NEW59Amy Elsner
1029Izzy S GlickBrazil2026-05-10Truhlar And Truhlar Attys RENEWAL27Asiya Javayant
1030Costa C FlosiGermany2026-05-23Feltz Printing Service PROPOSAL1Ivan Magalhaes
1031James Q DilliardItaly2026-05-01Feiner Bros PROPOSAL33Ivan Magalhaes
1032Kaitlin W StensethArgentina2026-05-07Morlong Associates NEW18Xuxue Feng
1033Ricardo E SergiFrance2026-05-25Chapman, Ross E Esq RENEWAL41Onyama Limba
1034Jefferson D DoeCanada2026-05-11Chapman, Ross E Esq NEW6Onyama Limba
1035Juan S OstroskyAustralia2026-04-26Printing Dimensions PROPOSAL47Onyama Limba
1036Mayumi D StensethUnited Kingdom2026-05-07Benton, John B Jr NEW78Elwin Sharvill
1037Nicolas M NickaIndia2026-05-08Benton, John B Jr QUALIFIED56Anna Fali
1038Greenwood B PerinIndia2026-05-02Rangoni Of Florence UNQUALIFIED58Ioni Bowcher
1039Chavez I MorascaGermany2026-05-01Commercial Press PROPOSAL51Bernardo Dominic
1040Nicolas P StensethSpain2026-05-21Morlong Associates PROPOSAL2Stephen Shaw
1041Alejandro D CampainItaly2026-04-27Truhlar And Truhlar Attys UNQUALIFIED51Amy Elsner
1042Rodrigues E VenereSpain2026-05-08Dorl, James J Esq PROPOSAL79Ioni Bowcher
1043James X CampainFrance2026-05-09Benton, John B Jr RENEWAL17Elwin Sharvill
1044Jones K InouyeAustralia2026-05-05Rangoni Of Florence UNQUALIFIED84Anna Fali
1045Nicolas O BriddickGermany2026-05-09Chemel, James L Cpa UNQUALIFIED91Bernardo Dominic
1046Jones C MarrierSpain2026-04-28Commercial Press QUALIFIED60Stephen Shaw
1047Leja Z AlbaresFrance2026-04-27Chemel, James L Cpa PROPOSAL10Ivan Magalhaes
1048Sinclair N KuskoFrance2026-04-28Buckley Miller Wright QUALIFIED29Onyama Limba
1049Adams F MarrierBrazil2026-05-14Rangoni Of Florence PROPOSAL93Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Arvin M PaprockiGermanyAnna Fali QUALIFIED
Clifford W GauchoUnited KingdomStephen Shaw QUALIFIED
Emily T RutaGermanyStephen Shaw UNQUALIFIED
Maria M MaletBrazilIoni Bowcher UNQUALIFIED
Antonio E StensethSpainAmy Elsner PROPOSAL
Silvio A RoysterSpainAsiya Javayant UNQUALIFIED
Tony J SchemmerRussiaOnyama Limba PROPOSAL
Ivar C KuskoUnited KingdomIvan Magalhaes UNQUALIFIED
Misaki C WieserUnited KingdomAsiya Javayant NEW
Maisha V BowleyBrazilXuxue Feng QUALIFIED
Adams Y PerinAustraliaIoni Bowcher QUALIFIED
Cody B GarufiGermanyAsiya Javayant UNQUALIFIED
Misaki Q StockhamJapanAsiya Javayant UNQUALIFIED
Misaki B MorascaBrazilAsiya Javayant QUALIFIED
Morrow U AmigonArgentinaAnna Fali QUALIFIED
Salvatore C SlusarskiSpainBernardo Dominic NEW
Alejandro D StensethJapanOnyama Limba QUALIFIED
Darci X BologniaArgentinaAmy Elsner UNQUALIFIED
Jennifer O MaletGermanyIvan Magalhaes UNQUALIFIED
Sinclair U RimJapanBernardo Dominic NEW
Francesco Z FollerFranceElwin Sharvill UNQUALIFIED
Julie G RimArgentinaOnyama Limba QUALIFIED
Izzy A NestleAustraliaIvan Magalhaes UNQUALIFIED
Francesco E GarufiBrazilXuxue Feng NEGOTIATION
Maria L GlickSpainAnna Fali UNQUALIFIED
Aruna X WaycottIndiaXuxue Feng UNQUALIFIED
Francesco O VenereFranceXuxue Feng PROPOSAL
Kadeem H GillianAustraliaIoni Bowcher PROPOSAL
Clifford C TollnerItalyBernardo Dominic NEW
Faith D FigeroaRussiaAmy Elsner RENEWAL
Mujtaba U SergiFranceAnna Fali RENEWAL
Maisha Z StensethBrazilIvan Magalhaes PROPOSAL
Ashley K DarakjyIndiaOnyama Limba NEW
Maria K PoquetteCanadaAsiya Javayant RENEWAL
Stacey P MaletJapanIoni Bowcher PROPOSAL
Leja E VenereGermanyAmy Elsner UNQUALIFIED
Smith T GauchoSpainIoni Bowcher NEW
Maisha G KuskoArgentinaAnna Fali NEGOTIATION
Izzy V SaylorsIndiaStephen Shaw RENEWAL
Leon Z AlbaresUnited KingdomAnna Fali NEGOTIATION
James Z SergiJapanAmy Elsner QUALIFIED
Chavez Z RoysterUnited KingdomAmy Elsner PROPOSAL
Nicolas B TollnerSpainElwin Sharvill NEW
Tony D FlosiGermanyAsiya Javayant NEGOTIATION
Cody B RutaCanadaElwin Sharvill PROPOSAL
Silvio W MacleadGermanyStephen Shaw RENEWAL
Misaki S BowleyUnited KingdomBernardo Dominic NEGOTIATION
Chavez S MaletGermanyBernardo Dominic NEW
Alejandro N FerenczFranceAnna Fali NEW
Misaki I WieserGermanyIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Nicolas M Chui
Tony S Poquette
Adams N Malet
Arvin I Garufi
Octavia H Inouye
Faith L Venere
Rodrigues J Butt
Jefferson D Nestle
Maria P Rim
Murillo K Poquette
Rodrigues D Ferencz
Mujtaba Y Waycott
Leja Y Maclead
Adams Z Maclead
Maisha K Slusarski
Stacey R Bolognia
Adams X Shinko
Ivar M Garufi
Mayumi L Slusarski
Johnson C Whobrey
Faith R Garufi
Cody F Ostrosky
Juan N Stenseth
David L Marrier
Arvin W Sergi
Sinclair V Waycott
Johnson Z Kusko
Jefferson W Rulapaugh
Silvio X Perin
Murillo R Flosi
Costa L Flosi
Leon D Albares
David B Oldroyd
Silvio Q Albares
Antonio N Waycott
Kaitlin L Foller
Alejandro Q Whobrey
Isabel W Ruta
Emily P Marrier
Misaki N Stenseth
Morrow Z Saylors
Stacey E Butt
Munro B Flosi
Tony N Ruta
Deepesh X Royster
Antonio W Slusarski
James W Ferencz
Costa Y Ruta
Antonio A Paprocki
Jones T Figeroa
IdCountryDate
1000Spain2026-04-27
1001Japan2026-05-08
1002Russia2026-05-05
1003Germany2026-05-19
1004Russia2026-05-25
1005Germany2026-05-12
1006Australia2026-05-20
1007Germany2026-05-16
1008Spain2026-05-19
1009Spain2026-05-07
1010Canada2026-05-20
1011Brazil2026-05-09
1012Germany2026-05-23
1013France2026-04-28
1014Argentina2026-05-23
1015India2026-05-03
1016Brazil2026-05-10
1017France2026-05-19
1018Canada2026-05-02
1019India2026-05-09
1020Brazil2026-05-14
1021Canada2026-05-21
1022United Kingdom2026-05-16
1023Japan2026-04-28
1024Brazil2026-04-29
1025Japan2026-05-12
1026Russia2026-05-21
1027Germany2026-05-23
1028United Kingdom2026-05-18
1029Russia2026-05-09
1030Russia2026-05-05
1031Australia2026-05-21
1032Japan2026-05-18
1033Japan2026-05-15
1034Spain2026-05-12
1035Germany2026-05-11
1036Canada2026-05-20
1037Brazil2026-05-09
1038Japan2026-04-29
1039Germany2026-05-19
1040France2026-05-09
1041Australia2026-05-04
1042Italy2026-05-03
1043Australia2026-05-20
1044Germany2026-04-30
1045Japan2026-05-02
1046Japan2026-05-18
1047Russia2026-04-29
1048Brazil2026-05-21
1049Japan2026-05-15

On-Demand Data

NameIdCountryDate
Ivar K Figeroa1000Germany2026-05-15
Salvatore W Caudy1001Germany2026-04-27
Ashley K Ferencz1002United Kingdom2026-05-17
Clifford R Albares1003Australia2026-05-10
Jones T Ferencz1004Germany2026-05-22
Smith W Bowley1005Japan2026-05-12
Izzy K Bolognia1006Spain2026-05-02
Tony E Caudy1007Japan2026-05-19
Salvatore S Chui1008Japan2026-05-05
Octavia Y Iturbide1009Argentina2026-05-01
Mujtaba A Slusarski1010Russia2026-05-23
Cody K Gillian1011France2026-05-20
Juan T Venere1012Japan2026-05-14
Jones Q Figeroa1013Japan2026-05-05
Jefferson Z Ferencz1014Argentina2026-05-15
Ivar R Saylors1015Canada2026-05-03
Mujtaba M Stockham1016France2026-05-01
Maria N Nestle1017France2026-04-29
Octavia D Slusarski1018Australia2026-05-17
Jefferson J Poquette1019Italy2026-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio Y RulapaughItalyStephen Shaw NEW
Sinclair E CaudyBrazilAmy Elsner UNQUALIFIED
Deepesh N OstroskyRussiaAnna Fali PROPOSAL
Deepesh Z SchemmerRussiaAmy Elsner UNQUALIFIED
Adams V GarufiUnited KingdomAmy Elsner NEGOTIATION
Juan P StensethArgentinaElwin Sharvill RENEWAL
Greenwood C PoquetteSpainXuxue Feng RENEWAL
Rodrigues F OstroskyFranceOnyama Limba PROPOSAL
Maria V MaletItalyAnna Fali NEGOTIATION
Stacey J MaletUnited KingdomElwin Sharvill QUALIFIED
Octavia I OstroskyArgentinaOnyama Limba NEGOTIATION
Ashley F BowleySpainBernardo Dominic PROPOSAL
Nicolas D BriddickJapanXuxue Feng QUALIFIED
Ashley F OstroskySpainAmy Elsner QUALIFIED
Arvin S StockhamJapanIoni Bowcher RENEWAL
Octavia Z InouyeUnited KingdomAmy Elsner RENEWAL
Ivar X CampainSpainOnyama Limba QUALIFIED
Darci M FlosiIndiaBernardo Dominic QUALIFIED
Chavez S DilliardArgentinaIoni Bowcher RENEWAL
Cody K BologniaItalyIvan Magalhaes NEW
David H MaletCanadaIoni Bowcher PROPOSAL
Jefferson C GlickCanadaIvan Magalhaes QUALIFIED
Octavia D VenereAustraliaIoni Bowcher NEW
James U PoquetteAustraliaElwin Sharvill QUALIFIED
Antonio J IturbideRussiaAsiya Javayant NEGOTIATION
Murillo N WaycottJapanAmy Elsner NEW
Kaitlin N DilliardArgentinaIvan Magalhaes RENEWAL
Faith D MaletFranceIvan Magalhaes UNQUALIFIED
Juan H OstroskyGermanyXuxue Feng NEW
Maisha D BologniaBrazilIvan Magalhaes RENEWAL
Murillo X VenereCanadaAnna Fali NEGOTIATION
Aruna Z TollnerIndiaIvan Magalhaes NEW
Kadeem Z GlickCanadaOnyama Limba NEGOTIATION
Misaki C OstroskyIndiaStephen Shaw NEGOTIATION
Tony M RutaGermanyAnna Fali NEW
Ivar U MaletCanadaAnna Fali UNQUALIFIED
Ivar V IturbideRussiaBernardo Dominic UNQUALIFIED
Ashley I SergiCanadaAsiya Javayant UNQUALIFIED
Morrow R RoysterArgentinaOnyama Limba UNQUALIFIED
Octavia I StockhamCanadaOnyama Limba 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.