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
Alejandro K OldroydRussiaAmy Elsner QUALIFIED
Kaitlin U DilliardIndiaAmy Elsner PROPOSAL
Greenwood O MarrierIndiaIvan Magalhaes UNQUALIFIED
Maisha Z OldroydGermanyStephen Shaw NEW
Jefferson U OldroydSpainXuxue Feng PROPOSAL
Ashley X SchemmerAustraliaIoni Bowcher QUALIFIED
Faith R FollerRussiaAnna Fali NEGOTIATION
Kaitlin J ButtItalyElwin Sharvill QUALIFIED
Jeanfrancois A InouyeGermanyStephen Shaw PROPOSAL
James W RutaJapanAnna Fali NEGOTIATION
Chavez J DilliardFranceXuxue Feng UNQUALIFIED
Chavez D RoysterGermanyElwin Sharvill PROPOSAL
Alejandro P MaletUnited KingdomElwin Sharvill NEGOTIATION
Jefferson S SergiIndiaOnyama Limba PROPOSAL
Jennifer K TollnerGermanyOnyama Limba QUALIFIED
Clifford T InouyeItalyAnna Fali NEW
Stacey A InouyeGermanyStephen Shaw PROPOSAL
Leon R IturbideFranceAmy Elsner NEGOTIATION
Maisha F RimBrazilBernardo Dominic NEW
Adams C CampainSpainElwin Sharvill NEGOTIATION
Francesco P DoeArgentinaAmy Elsner NEW
Cody C KolmetzArgentinaAsiya Javayant UNQUALIFIED
Tony D KolmetzCanadaAsiya Javayant NEW
Wickens G BologniaIndiaAmy Elsner NEW
Izzy O StensethUnited KingdomElwin Sharvill NEW
Smith E SchemmerSpainOnyama Limba QUALIFIED
Octavia A SaylorsFranceAsiya Javayant RENEWAL
Murillo E BowleyArgentinaAnna Fali NEGOTIATION
Julie S FigeroaSpainBernardo Dominic NEGOTIATION
Jones K FlosiJapanAnna Fali NEGOTIATION
Smith N BriddickRussiaOnyama Limba QUALIFIED
Silvio G TollnerItalyIoni Bowcher NEW
Octavia U OldroydAustraliaOnyama Limba PROPOSAL
Kaitlin H StockhamArgentinaIoni Bowcher NEW
Chavez I PaprockiFranceStephen Shaw NEGOTIATION
Munro U RulapaughRussiaStephen Shaw UNQUALIFIED
Tony W ShinkoSpainElwin Sharvill PROPOSAL
Ivar R AlbaresCanadaIoni Bowcher NEW
Darci F DoeArgentinaIvan Magalhaes NEW
Jeanfrancois E RimBrazilAmy Elsner RENEWAL
Mayumi P RulapaughFranceIoni Bowcher RENEWAL
Stacey N MacleadItalyIoni Bowcher NEW
Mayumi Z MacleadGermanyStephen Shaw NEGOTIATION
Salvatore N CaudyIndiaIoni Bowcher NEGOTIATION
Antonio Q CaudyJapanIoni Bowcher UNQUALIFIED
Jones Z SaylorsIndiaIoni Bowcher QUALIFIED
James S SaylorsAustraliaAsiya Javayant QUALIFIED
Maria E SaylorsCanadaXuxue Feng QUALIFIED
Johnson S SchemmerSpainBernardo Dominic UNQUALIFIED
Maisha C BologniaGermanyStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Faith M FlosiSpainOnyama Limba NEW
David V WhobreyJapanIoni Bowcher NEGOTIATION
Chavez Z DoeGermanyXuxue Feng NEGOTIATION
Leja H GillianSpainIoni Bowcher QUALIFIED
Morrow L FlosiJapanAsiya Javayant NEW
Rodrigues B KuskoAustraliaOnyama Limba RENEWAL
Cody Z StockhamItalyIoni Bowcher NEW
Murillo S CaldareraSpainAnna Fali QUALIFIED
Clifford V RulapaughUnited KingdomOnyama Limba NEW
Maisha Z RoysterGermanyIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha Y ButtAustralia2026-02-20Rousseaux, Michael Esq PROPOSAL57Xuxue Feng
1001Silvio O OldroydBrazil2026-01-26Rangoni Of Florence RENEWAL37Anna Fali
1002Izzy I GarufiRussia2026-01-31King, Christopher A Esq UNQUALIFIED38Elwin Sharvill
1003Chavez N KuskoCanada2026-02-19Printing Dimensions QUALIFIED72Xuxue Feng
1004Ivar F SergiRussia2026-02-04Chemel, James L Cpa RENEWAL22Stephen Shaw
1005Sinclair E WhobreySpain2026-02-01Feltz Printing Service QUALIFIED7Anna Fali
1006Wickens N SaylorsRussia2026-02-12Feltz Printing Service RENEWAL94Elwin Sharvill
1007Silvio L RulapaughAustralia2026-02-01Truhlar And Truhlar Attys QUALIFIED56Ivan Magalhaes
1008Rodrigues P WieserGermany2026-01-24Morlong Associates RENEWAL41Bernardo Dominic
1009Ivar Q FerenczArgentina2026-02-15Rousseaux, Michael Esq NEW98Amy Elsner
1010Jeanfrancois G NickaAustralia2026-02-17Rousseaux, Michael Esq QUALIFIED37Bernardo Dominic
1011Murillo A TollnerIndia2026-02-17Commercial Press UNQUALIFIED22Asiya Javayant
1012Emily F FlosiArgentina2026-01-27Commercial Press NEW45Ivan Magalhaes
1013Sinclair A GillianJapan2026-02-11Buckley Miller Wright UNQUALIFIED86Ivan Magalhaes
1014Emily Q AlbaresRussia2026-01-29Rangoni Of Florence PROPOSAL5Amy Elsner
1015Salvatore H ChuiAustralia2026-01-27Feiner Bros NEW71Ioni Bowcher
1016Claire W WhobreyArgentina2026-02-21Rousseaux, Michael Esq UNQUALIFIED35Ioni Bowcher
1017Salvatore Y GauchoGermany2026-01-25Chemel, James L Cpa UNQUALIFIED15Stephen Shaw
1018Kaitlin T AlbaresBrazil2026-02-05Feiner Bros NEW94Elwin Sharvill
1019Emily G WhobreyJapan2026-01-24Benton, John B Jr RENEWAL55Anna Fali
1020James K NestleFrance2026-01-31Buckley Miller Wright PROPOSAL45Bernardo Dominic
1021Francesco Q StockhamSpain2026-02-09Chanay, Jeffrey A Esq UNQUALIFIED47Elwin Sharvill
1022Rodrigues T BologniaRussia2026-02-04Benton, John B Jr PROPOSAL94Asiya Javayant
1023Deepesh V WhobreyAustralia2026-01-24Morlong Associates UNQUALIFIED29Asiya Javayant
1024Murillo D VocelkaSpain2026-02-13King, Christopher A Esq PROPOSAL61Amy Elsner
1025Tony P NestleUnited Kingdom2026-02-13Printing Dimensions NEGOTIATION65Onyama Limba
1026Maisha J MarrierItaly2026-02-05King, Christopher A Esq QUALIFIED66Bernardo Dominic
1027Leon U StensethArgentina2026-01-31Chanay, Jeffrey A Esq QUALIFIED73Ioni Bowcher
1028Faith O OstroskyAustralia2026-02-04Benton, John B Jr UNQUALIFIED80Ivan Magalhaes
1029Sinclair B WhobreyBrazil2026-02-05Commercial Press NEW48Bernardo Dominic
1030Murillo G ChuiSpain2026-02-10Chemel, James L Cpa UNQUALIFIED74Ivan Magalhaes
1031Octavia S AlbaresBrazil2026-02-11Chemel, James L Cpa NEW46Amy Elsner
1032Munro V FollerCanada2026-02-10Rangoni Of Florence NEGOTIATION1Ioni Bowcher
1033Johnson F OldroydJapan2026-02-02Printing Dimensions UNQUALIFIED78Ivan Magalhaes
1034Adams B KuskoRussia2026-01-24Truhlar And Truhlar Attys PROPOSAL34Ivan Magalhaes
1035Emily P AlbaresRussia2026-02-08Chapman, Ross E Esq RENEWAL78Asiya Javayant
1036Antonio O InouyeIndia2026-02-06Feiner Bros RENEWAL50Ioni Bowcher
1037Maria E StensethGermany2026-02-12Feltz Printing Service RENEWAL49Bernardo Dominic
1038Rodrigues S GauchoAustralia2026-02-09Feltz Printing Service PROPOSAL77Xuxue Feng
1039Wickens V MorascaRussia2026-01-25Chanay, Jeffrey A Esq UNQUALIFIED44Asiya Javayant
1040Jefferson S GarufiArgentina2026-02-19Truhlar And Truhlar Attys NEGOTIATION12Stephen Shaw
1041Jeanfrancois H StensethGermany2026-02-06Benton, John B Jr PROPOSAL20Asiya Javayant
1042Aika N RulapaughAustralia2026-02-18Truhlar And Truhlar Attys PROPOSAL17Stephen Shaw
1043Francesco F ShinkoArgentina2026-02-02Commercial Press PROPOSAL92Ivan Magalhaes
1044Mayumi E AmigonFrance2026-01-26Printing Dimensions QUALIFIED48Xuxue Feng
1045Tony P MorascaRussia2026-02-08Commercial Press UNQUALIFIED78Asiya Javayant
1046James N TollnerBrazil2026-02-15Truhlar And Truhlar Attys PROPOSAL17Onyama Limba
1047Francesco C DarakjyIndia2026-02-15Rangoni Of Florence QUALIFIED2Xuxue Feng
1048Jefferson E SergiUnited Kingdom2026-01-24Benton, John B Jr UNQUALIFIED6Bernardo Dominic
1049Emily D MaletBrazil2026-02-01Feltz Printing Service UNQUALIFIED85Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Maisha Z RutaSpainAsiya Javayant NEW
Johnson E AlbaresBrazilAmy Elsner QUALIFIED
Maria P NickaItalyXuxue Feng PROPOSAL
Ricardo N PoquetteFranceStephen Shaw RENEWAL
Leja K WaycottGermanyOnyama Limba RENEWAL
Leja Y PoquetteBrazilElwin Sharvill PROPOSAL
Chavez M KuskoArgentinaAsiya Javayant UNQUALIFIED
Misaki D KolmetzArgentinaStephen Shaw QUALIFIED
Mujtaba P ButtSpainStephen Shaw UNQUALIFIED
Ricardo Y GlickSpainAmy Elsner PROPOSAL
Stacey Y BowleyUnited KingdomAnna Fali NEGOTIATION
Stacey R SaylorsFranceAmy Elsner RENEWAL
Isabel C KuskoCanadaAsiya Javayant NEW
Isabel H AmigonItalyOnyama Limba PROPOSAL
Mayumi D CaldareraSpainAnna Fali NEGOTIATION
Kadeem E DoeGermanyElwin Sharvill PROPOSAL
Kadeem O DarakjySpainElwin Sharvill PROPOSAL
Adams J PoquetteAustraliaOnyama Limba NEW
Aditya G OstroskyArgentinaXuxue Feng PROPOSAL
Chavez F RimUnited KingdomBernardo Dominic NEW
Johnson D DilliardArgentinaOnyama Limba UNQUALIFIED
Smith A PaprockiIndiaIvan Magalhaes UNQUALIFIED
Smith F RimGermanyStephen Shaw NEGOTIATION
Clifford X DarakjyGermanyAnna Fali UNQUALIFIED
Stacey F KolmetzAustraliaXuxue Feng UNQUALIFIED
Emily R MaletJapanIoni Bowcher QUALIFIED
Wickens D BowleyRussiaElwin Sharvill UNQUALIFIED
Rodrigues R OstroskyBrazilAsiya Javayant NEGOTIATION
Francesco W KolmetzJapanIvan Magalhaes NEW
Cody N InouyeUnited KingdomIvan Magalhaes PROPOSAL
Maisha K RulapaughRussiaOnyama Limba NEW
Costa M MorascaSpainAsiya Javayant QUALIFIED
Julie N ChuiArgentinaOnyama Limba RENEWAL
Clifford P SchemmerCanadaIoni Bowcher QUALIFIED
Jefferson C GauchoUnited KingdomBernardo Dominic NEGOTIATION
Clifford A GarufiGermanyXuxue Feng NEW
Sinclair B SergiBrazilStephen Shaw NEGOTIATION
Ashley N FlosiCanadaAsiya Javayant NEGOTIATION
Johnson K NickaBrazilElwin Sharvill UNQUALIFIED
Faith K FollerSpainOnyama Limba RENEWAL
Cody N DoeBrazilBernardo Dominic RENEWAL
Smith V VenereRussiaIoni Bowcher NEW
Clifford P AmigonRussiaElwin Sharvill RENEWAL
Francesco X SaylorsUnited KingdomIvan Magalhaes UNQUALIFIED
Johnson P GlickCanadaXuxue Feng PROPOSAL
Arvin R GillianUnited KingdomXuxue Feng NEW
Jefferson P MaletArgentinaStephen Shaw NEGOTIATION
Arvin Y ShinkoArgentinaXuxue Feng NEW
Antonio I ChuiUnited KingdomIoni Bowcher UNQUALIFIED
Rodrigues T BriddickJapanIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Aruna X Stenseth
Francesco U Amigon
Greenwood W Ruta
Salvatore U Stenseth
Jefferson Y Morasca
Maisha C Slusarski
Octavia R Nestle
Faith C Paprocki
Sinclair L Stenseth
Maisha B Campain
Antonio K Flosi
Leon D Garufi
Murillo Z Ostrosky
Mujtaba R Ferencz
Antonio O Stenseth
Arvin D Slusarski
Emily A Flosi
Sinclair R Saylors
Faith Y Briddick
Aruna P Sergi
Salvatore O Saylors
Leja X Bowley
David D Wieser
Arvin R Kusko
Claire Q Royster
James O Ostrosky
Nicolas P Stockham
Izzy B Kolmetz
Salvatore Y Inouye
Nicolas F Campain
Alejandro C Malet
Leon U Sergi
Leon V Glick
Smith K Iturbide
David N Saylors
Kaitlin I Inouye
Mayumi Q Nicka
Chavez L Foller
Clifford L Marrier
Kadeem S Kusko
Silvio S Malet
Francesco N Gaucho
Adams Z Briddick
Misaki H Caldarera
Ashley N Venere
Cody X Venere
Tony E Inouye
David A Venere
Ivar E Malet
Leon C Amigon
IdCountryDate
1000Italy2026-01-24
1001Germany2026-01-26
1002Japan2026-02-17
1003Australia2026-02-21
1004Australia2026-02-13
1005Japan2026-02-21
1006Brazil2026-02-05
1007Canada2026-01-29
1008Argentina2026-01-26
1009United Kingdom2026-01-31
1010Canada2026-01-25
1011Russia2026-01-30
1012France2026-01-26
1013Germany2026-01-26
1014Spain2026-01-30
1015France2026-02-18
1016Italy2026-02-21
1017United Kingdom2026-02-06
1018Spain2026-02-05
1019Canada2026-02-11
1020Spain2026-02-04
1021Brazil2026-02-09
1022India2026-01-27
1023Argentina2026-02-07
1024Germany2026-02-21
1025France2026-02-20
1026Japan2026-02-20
1027Canada2026-02-03
1028Japan2026-02-01
1029Russia2026-02-12
1030Japan2026-01-31
1031Brazil2026-02-16
1032India2026-02-16
1033Russia2026-02-04
1034Russia2026-02-14
1035India2026-01-31
1036Australia2026-02-11
1037Italy2026-02-14
1038Japan2026-02-21
1039Russia2026-01-25
1040Australia2026-02-02
1041India2026-01-31
1042Australia2026-02-20
1043United Kingdom2026-01-23
1044Canada2026-02-14
1045United Kingdom2026-02-13
1046France2026-02-16
1047Canada2026-02-03
1048Canada2026-02-14
1049Japan2026-02-16

On-Demand Data

NameIdCountryDate
Adams O Briddick1000Spain2026-02-18
Chavez F Venere1001Brazil2026-02-06
Ricardo A Nestle1002Italy2026-01-23
Silvio M Stenseth1003Italy2026-02-17
Aika T Bowley1004Australia2026-01-23
Izzy W Flosi1005Germany2026-01-29
Claire N Schemmer1006Argentina2026-02-17
Salvatore M Morasca1007Canada2026-02-16
Morrow G Kusko1008Spain2026-02-03
Leja W Dilliard1009France2026-02-01
Maria C Albares1010France2026-02-11
Kaitlin U Slusarski1011Japan2026-02-16
Salvatore C Bowley1012France2026-01-31
Mujtaba E Saylors1013Italy2026-01-26
Jennifer X Ruta1014Italy2026-01-26
Jennifer P Briddick1015France2026-02-07
Wickens P Morasca1016Argentina2026-02-13
Stacey Q Doe1017India2026-02-21
Cody X Stockham1018Italy2026-01-23
Jefferson V Royster1019France2026-02-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues I RutaIndiaAmy Elsner NEGOTIATION
Maria Q VocelkaIndiaAnna Fali PROPOSAL
Alejandro F SlusarskiUnited KingdomStephen Shaw RENEWAL
Jeanfrancois B FerenczAustraliaBernardo Dominic NEW
Ashley Q WaycottBrazilStephen Shaw NEGOTIATION
David C FigeroaFranceElwin Sharvill PROPOSAL
Ashley U GarufiJapanXuxue Feng UNQUALIFIED
Faith M GauchoJapanStephen Shaw RENEWAL
Jennifer R SergiUnited KingdomIvan Magalhaes PROPOSAL
Antonio F CaudyBrazilBernardo Dominic PROPOSAL
Julie X BowleyItalyXuxue Feng NEGOTIATION
Maria P MorascaJapanAnna Fali PROPOSAL
Aruna N FerenczSpainAmy Elsner RENEWAL
Arvin D CaudyFranceBernardo Dominic NEW
Mayumi R SchemmerAustraliaIoni Bowcher NEW
Morrow M NestleFranceXuxue Feng QUALIFIED
Munro W VenereIndiaIoni Bowcher RENEWAL
Mayumi P BowleyArgentinaAnna Fali PROPOSAL
Mayumi D RutaCanadaIoni Bowcher NEGOTIATION
Wickens H FlosiArgentinaStephen Shaw NEW
Francesco A MacleadCanadaElwin Sharvill QUALIFIED
Juan L OstroskyJapanXuxue Feng RENEWAL
Salvatore D NestleGermanyIvan Magalhaes QUALIFIED
Leja L StockhamIndiaAmy Elsner RENEWAL
Antonio T SaylorsRussiaIoni Bowcher PROPOSAL
Leja J PaprockiSpainStephen Shaw UNQUALIFIED
Adams X RimArgentinaElwin Sharvill PROPOSAL
Darci D InouyeBrazilXuxue Feng QUALIFIED
Emily X BowleyJapanAsiya Javayant NEW
Leja I NestleItalyAnna Fali NEW
Smith V MacleadUnited KingdomAmy Elsner PROPOSAL
Nicolas H NestleRussiaAnna Fali UNQUALIFIED
Ricardo U BriddickIndiaOnyama Limba NEGOTIATION
Aruna N AlbaresIndiaXuxue Feng QUALIFIED
Ivar P PerinGermanyIoni Bowcher RENEWAL
Deepesh Q GarufiUnited KingdomAsiya Javayant UNQUALIFIED
Faith M GillianCanadaElwin Sharvill NEGOTIATION
Costa D CaudyIndiaXuxue Feng PROPOSAL
Juan G SlusarskiRussiaOnyama Limba QUALIFIED
Leon I GarufiRussiaBernardo Dominic 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.