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
Sinclair H FlosiCanadaAsiya Javayant PROPOSAL
Arvin K MaletCanadaAnna Fali UNQUALIFIED
Antonio A ChuiCanadaAsiya Javayant RENEWAL
Salvatore X VenereCanadaXuxue Feng QUALIFIED
Greenwood I VocelkaCanadaElwin Sharvill NEGOTIATION
Wickens O NestleJapanBernardo Dominic NEW
Izzy P SaylorsAustraliaAsiya Javayant NEGOTIATION
Mayumi Q SergiSpainBernardo Dominic UNQUALIFIED
Maria R TollnerAustraliaBernardo Dominic UNQUALIFIED
Emily G SlusarskiArgentinaAsiya Javayant PROPOSAL
Jennifer Z MorascaCanadaIoni Bowcher UNQUALIFIED
Faith I RutaSpainAsiya Javayant UNQUALIFIED
Johnson F PaprockiFranceIoni Bowcher NEGOTIATION
Mujtaba L ButtArgentinaAsiya Javayant NEGOTIATION
Sinclair O CaldareraRussiaOnyama Limba QUALIFIED
Izzy X GlickFranceAnna Fali RENEWAL
Alejandro Z KolmetzArgentinaIoni Bowcher PROPOSAL
Mujtaba V RulapaughFranceIoni Bowcher UNQUALIFIED
Costa U CaudyFranceStephen Shaw PROPOSAL
Maisha K SlusarskiArgentinaAmy Elsner NEGOTIATION
Clifford H RutaAustraliaElwin Sharvill RENEWAL
Greenwood Q WaycottAustraliaIoni Bowcher UNQUALIFIED
Rodrigues F StockhamSpainAmy Elsner PROPOSAL
Jefferson J GauchoAustraliaIvan Magalhaes UNQUALIFIED
Alejandro D NickaSpainStephen Shaw NEW
Francesco S StensethJapanOnyama Limba RENEWAL
Munro C BologniaUnited KingdomStephen Shaw QUALIFIED
Jennifer C IturbideGermanyAsiya Javayant QUALIFIED
Ivar Q IturbideIndiaIoni Bowcher RENEWAL
Silvio F RimCanadaBernardo Dominic QUALIFIED
Ashley Y GlickArgentinaStephen Shaw UNQUALIFIED
Julie E InouyeIndiaStephen Shaw QUALIFIED
Wickens S DilliardIndiaBernardo Dominic NEGOTIATION
Jennifer V ChuiFranceStephen Shaw UNQUALIFIED
Maria K RimRussiaIoni Bowcher NEGOTIATION
Chavez D GlickBrazilIoni Bowcher NEW
Ivar M RimAustraliaOnyama Limba NEGOTIATION
Claire T CaldareraUnited KingdomElwin Sharvill QUALIFIED
Juan W TollnerSpainXuxue Feng RENEWAL
Jones J CaldareraFranceIoni Bowcher PROPOSAL
Ricardo S MarrierSpainIvan Magalhaes NEW
Tony N MacleadRussiaElwin Sharvill QUALIFIED
Leon T CaldareraBrazilBernardo Dominic NEW
Maria N GillianGermanyElwin Sharvill QUALIFIED
Nicolas R RulapaughIndiaOnyama Limba NEGOTIATION
Darci Z PoquetteUnited KingdomXuxue Feng RENEWAL
Nicolas H WhobreyIndiaBernardo Dominic NEGOTIATION
Jeanfrancois N DarakjyIndiaStephen Shaw UNQUALIFIED
Juan T KolmetzCanadaAnna Fali NEGOTIATION
Darci C RulapaughArgentinaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Claire M OldroydSpainAsiya Javayant NEW
Faith H FerenczSpainAmy Elsner PROPOSAL
Nicolas N FollerArgentinaXuxue Feng NEGOTIATION
Kadeem U FlosiRussiaAnna Fali NEGOTIATION
Morrow S StensethIndiaStephen Shaw PROPOSAL
Leon A InouyeFranceIvan Magalhaes QUALIFIED
Ivar M BologniaItalyAsiya Javayant UNQUALIFIED
Izzy U VocelkaCanadaBernardo Dominic NEGOTIATION
Costa K StensethItalyBernardo Dominic UNQUALIFIED
Silvio T DilliardSpainIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez H RutaBrazil2026-06-11Feiner Bros QUALIFIED30Stephen Shaw
1001Johnson X SchemmerGermany2026-06-09Morlong Associates RENEWAL59Amy Elsner
1002Clifford I MarrierIndia2026-06-22Buckley Miller Wright QUALIFIED84Anna Fali
1003Mujtaba F MarrierArgentina2026-06-11Buckley Miller Wright NEGOTIATION28Ivan Magalhaes
1004Johnson P GauchoGermany2026-06-22Feltz Printing Service NEGOTIATION57Xuxue Feng
1005Jennifer B PerinJapan2026-06-10Chemel, James L Cpa NEW3Ioni Bowcher
1006Ricardo Y IturbideAustralia2026-06-19Truhlar And Truhlar Attys UNQUALIFIED74Stephen Shaw
1007Nicolas B ChuiCanada2026-06-08Chanay, Jeffrey A Esq RENEWAL12Anna Fali
1008Mayumi Q SaylorsBrazil2026-05-24Truhlar And Truhlar Attys NEGOTIATION79Onyama Limba
1009Octavia S SchemmerIndia2026-05-26Printing Dimensions RENEWAL97Anna Fali
1010Maria C GarufiAustralia2026-06-05Dorl, James J Esq QUALIFIED49Ioni Bowcher
1011Johnson T WaycottSpain2026-05-30Rousseaux, Michael Esq PROPOSAL94Stephen Shaw
1012Jefferson I NickaUnited Kingdom2026-06-21Morlong Associates RENEWAL66Ivan Magalhaes
1013Clifford Y StockhamCanada2026-06-08Morlong Associates PROPOSAL40Onyama Limba
1014Leja P SlusarskiArgentina2026-06-15Chanay, Jeffrey A Esq UNQUALIFIED42Asiya Javayant
1015Nicolas T GlickIndia2026-06-03Feltz Printing Service QUALIFIED55Xuxue Feng
1016Smith J NestleItaly2026-06-21King, Christopher A Esq NEW41Asiya Javayant
1017Sinclair V FlosiSpain2026-06-10Dorl, James J Esq NEGOTIATION7Elwin Sharvill
1018Aika H GillianJapan2026-06-06Buckley Miller Wright UNQUALIFIED34Bernardo Dominic
1019Ashley V PerinFrance2026-06-03Rangoni Of Florence PROPOSAL87Ivan Magalhaes
1020Izzy H CaudyFrance2026-06-10Commercial Press NEGOTIATION99Anna Fali
1021Leja Z FerenczJapan2026-06-21Feltz Printing Service QUALIFIED99Xuxue Feng
1022Tony I GauchoSpain2026-06-20Feltz Printing Service NEW62Amy Elsner
1023Izzy O KolmetzCanada2026-05-26Truhlar And Truhlar Attys NEW40Elwin Sharvill
1024Ivar R KuskoBrazil2026-06-05Chemel, James L Cpa NEGOTIATION1Ioni Bowcher
1025James Y CaldareraUnited Kingdom2026-05-28Printing Dimensions NEW94Asiya Javayant
1026Kaitlin L MacleadSpain2026-06-12Commercial Press UNQUALIFIED32Elwin Sharvill
1027Julie J DilliardRussia2026-05-30Chapman, Ross E Esq PROPOSAL47Ioni Bowcher
1028Mujtaba N BowleyGermany2026-06-14King, Christopher A Esq UNQUALIFIED60Stephen Shaw
1029Juan W PoquetteArgentina2026-06-16Printing Dimensions QUALIFIED6Bernardo Dominic
1030David Z SergiSpain2026-06-11Feiner Bros RENEWAL62Amy Elsner
1031Jefferson Q RulapaughAustralia2026-06-06Rangoni Of Florence QUALIFIED41Ioni Bowcher
1032Jefferson Q AmigonArgentina2026-06-17Morlong Associates NEGOTIATION11Onyama Limba
1033Ashley Y SergiRussia2026-06-06Chemel, James L Cpa PROPOSAL94Amy Elsner
1034Wickens D BowleyItaly2026-06-14Rangoni Of Florence RENEWAL56Bernardo Dominic
1035Ricardo P FerenczGermany2026-05-31Rangoni Of Florence UNQUALIFIED89Asiya Javayant
1036Darci N SergiBrazil2026-05-29Commercial Press PROPOSAL55Asiya Javayant
1037Leon Y SlusarskiAustralia2026-05-29King, Christopher A Esq QUALIFIED34Elwin Sharvill
1038Leon E AlbaresArgentina2026-06-08Printing Dimensions RENEWAL3Ivan Magalhaes
1039Smith K StockhamItaly2026-06-01Commercial Press UNQUALIFIED81Anna Fali
1040David F WhobreyUnited Kingdom2026-05-24King, Christopher A Esq QUALIFIED0Ivan Magalhaes
1041Faith T MarrierRussia2026-06-12Chapman, Ross E Esq UNQUALIFIED93Amy Elsner
1042Maisha T OldroydAustralia2026-05-26King, Christopher A Esq NEW38Onyama Limba
1043Aditya Y MaletGermany2026-06-07Buckley Miller Wright QUALIFIED8Anna Fali
1044Adams Y SaylorsAustralia2026-06-05Rangoni Of Florence QUALIFIED28Elwin Sharvill
1045Greenwood V KuskoSpain2026-05-31Morlong Associates NEW11Elwin Sharvill
1046Alejandro N FigeroaBrazil2026-06-03Dorl, James J Esq UNQUALIFIED88Anna Fali
1047Rodrigues J CaudyAustralia2026-05-24King, Christopher A Esq UNQUALIFIED60Xuxue Feng
1048Silvio L FollerSpain2026-06-12Buckley Miller Wright NEGOTIATION20Bernardo Dominic
1049Faith Z WieserItaly2026-06-02King, Christopher A Esq UNQUALIFIED8Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Cody K BowleyBrazilIoni Bowcher NEW
Kaitlin B KolmetzIndiaAsiya Javayant NEW
Emily K FerenczArgentinaIoni Bowcher NEW
Misaki M WhobreyCanadaOnyama Limba RENEWAL
Jeanfrancois E GlickCanadaAmy Elsner UNQUALIFIED
Mayumi O WaycottAustraliaBernardo Dominic PROPOSAL
Julie M RutaJapanAsiya Javayant NEW
Alejandro Q GauchoCanadaIvan Magalhaes RENEWAL
Sinclair V PerinRussiaXuxue Feng QUALIFIED
Maisha Y PoquetteRussiaElwin Sharvill RENEWAL
Kadeem Z SlusarskiItalyAsiya Javayant PROPOSAL
Johnson X FlosiIndiaAmy Elsner RENEWAL
Aruna X RoysterSpainIoni Bowcher RENEWAL
Aditya H WhobreyCanadaAmy Elsner NEGOTIATION
Chavez V GarufiItalyIvan Magalhaes RENEWAL
Deepesh Y OldroydCanadaOnyama Limba NEW
Jefferson I IturbideGermanyBernardo Dominic RENEWAL
Adams Z BowleyCanadaAsiya Javayant NEGOTIATION
Wickens P PerinUnited KingdomBernardo Dominic RENEWAL
Aruna K ChuiJapanAnna Fali NEW
Isabel J WieserUnited KingdomIvan Magalhaes PROPOSAL
Leja Q VocelkaIndiaAmy Elsner PROPOSAL
James U RimCanadaElwin Sharvill PROPOSAL
Isabel M RutaIndiaOnyama Limba QUALIFIED
Nicolas D FerenczJapanAnna Fali NEW
James N GlickUnited KingdomBernardo Dominic RENEWAL
Deepesh Q StensethSpainIoni Bowcher NEGOTIATION
Antonio S OldroydBrazilBernardo Dominic UNQUALIFIED
Sinclair Y RoysterSpainOnyama Limba QUALIFIED
Francesco M MorascaGermanyStephen Shaw QUALIFIED
Smith U RoysterGermanyBernardo Dominic NEGOTIATION
Rodrigues R NickaArgentinaIoni Bowcher QUALIFIED
Adams A MaletUnited KingdomXuxue Feng PROPOSAL
Juan J ButtJapanIvan Magalhaes NEW
Maisha U PaprockiIndiaAsiya Javayant UNQUALIFIED
David V ChuiAustraliaAsiya Javayant RENEWAL
Antonio O CaudyIndiaElwin Sharvill NEW
Wickens L PerinSpainAnna Fali RENEWAL
Adams F PoquetteUnited KingdomElwin Sharvill UNQUALIFIED
Rodrigues L WieserSpainOnyama Limba NEGOTIATION
Clifford B AlbaresUnited KingdomBernardo Dominic RENEWAL
Francesco A SaylorsBrazilStephen Shaw QUALIFIED
Jones I CampainUnited KingdomIvan Magalhaes NEW
Jennifer Z TollnerItalyBernardo Dominic PROPOSAL
Jones T MaletBrazilStephen Shaw RENEWAL
Aditya E KolmetzArgentinaAmy Elsner UNQUALIFIED
Chavez U KuskoCanadaElwin Sharvill NEW
Deepesh E VenereRussiaAnna Fali NEW
Antonio G MorascaRussiaBernardo Dominic NEW
Juan K TollnerItalyAsiya Javayant NEGOTIATION
Frozen Columns
Name
Chavez K Bowley
Aruna R Royster
Faith A Ferencz
Aruna Q Schemmer
Aruna S Morasca
Alejandro U Kolmetz
Kaitlin Y Slusarski
Izzy B Venere
Claire F Doe
Izzy K Marrier
Salvatore A Royster
Ivar J Gillian
Kaitlin E Maclead
David H Campain
Juan A Kusko
Emily V Marrier
Jones M Schemmer
Tony G Waycott
Isabel M Rulapaugh
Darci L Oldroyd
Emily W Saylors
Smith J Albares
Juan C Malet
Ivar A Bowley
Jennifer X Wieser
Greenwood I Figeroa
Jones T Doe
Ivar H Nicka
Murillo L Ferencz
Aika N Campain
Morrow S Flosi
Juan E Dilliard
Tony W Ruta
Mayumi R Garufi
Misaki S Gaucho
Leja G Bolognia
Jefferson F Caldarera
Leja P Kusko
Murillo O Bolognia
Isabel C Butt
Wickens V Sergi
Leja Q Venere
Morrow C Kolmetz
Wickens M Morasca
Leon Q Saylors
Stacey V Paprocki
Antonio A Venere
Rodrigues B Kolmetz
Francesco S Shinko
Morrow T Albares
IdCountryDate
1000Canada2026-06-14
1001Japan2026-06-21
1002Argentina2026-06-10
1003France2026-06-14
1004Canada2026-05-24
1005Germany2026-05-24
1006Italy2026-05-26
1007Australia2026-06-03
1008United Kingdom2026-06-11
1009Australia2026-05-27
1010Japan2026-06-08
1011United Kingdom2026-05-25
1012Germany2026-05-26
1013Japan2026-06-01
1014Brazil2026-05-26
1015Argentina2026-06-03
1016Canada2026-06-07
1017Brazil2026-05-31
1018Argentina2026-06-22
1019Japan2026-06-10
1020India2026-06-11
1021Italy2026-06-05
1022Spain2026-05-27
1023Russia2026-05-25
1024Spain2026-06-15
1025United Kingdom2026-06-10
1026Italy2026-06-16
1027Japan2026-06-16
1028France2026-06-12
1029India2026-05-24
1030Argentina2026-05-28
1031Brazil2026-05-27
1032Italy2026-06-04
1033Brazil2026-06-05
1034Japan2026-06-04
1035Argentina2026-06-08
1036Australia2026-05-24
1037India2026-06-06
1038Argentina2026-06-09
1039Spain2026-06-03
1040Canada2026-06-10
1041Italy2026-06-07
1042Japan2026-05-25
1043Australia2026-06-05
1044Brazil2026-05-27
1045Brazil2026-06-22
1046Russia2026-06-14
1047France2026-05-29
1048Canada2026-06-14
1049Brazil2026-06-17

On-Demand Data

NameIdCountryDate
Jennifer I Saylors1000Germany2026-06-08
Jones Y Oldroyd1001Italy2026-05-31
David M Ferencz1002United Kingdom2026-06-03
Silvio S Royster1003Canada2026-06-17
Octavia E Campain1004Spain2026-06-08
Emily T Glick1005France2026-06-03
Kadeem Q Tollner1006France2026-05-30
Kaitlin J Malet1007France2026-05-29
Aruna Z Campain1008Argentina2026-06-14
David G Schemmer1009Japan2026-06-06
James U Garufi1010Canada2026-06-20
Sinclair R Foller1011Brazil2026-06-15
Adams R Gillian1012Brazil2026-06-04
Claire Y Schemmer1013India2026-05-24
Ricardo F Waycott1014France2026-05-30
David O Rulapaugh1015Japan2026-06-11
Rodrigues G Chui1016Italy2026-06-18
Rodrigues D Amigon1017Italy2026-06-01
Kaitlin E Glick1018United Kingdom2026-06-12
Chavez Y Glick1019Australia2026-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco N RimArgentinaOnyama Limba PROPOSAL
Aruna R PaprockiArgentinaOnyama Limba RENEWAL
Emily I MarrierUnited KingdomAsiya Javayant PROPOSAL
Misaki W ButtBrazilElwin Sharvill NEW
Deepesh R NestleSpainIvan Magalhaes UNQUALIFIED
Greenwood H WieserIndiaAmy Elsner UNQUALIFIED
Leja P CaldareraRussiaXuxue Feng QUALIFIED
Smith O VenereFranceStephen Shaw NEGOTIATION
Izzy Q MacleadBrazilStephen Shaw UNQUALIFIED
Jeanfrancois N MacleadUnited KingdomElwin Sharvill NEGOTIATION
David H GlickFranceBernardo Dominic QUALIFIED
Munro W CaldareraGermanyXuxue Feng QUALIFIED
Munro A DoeIndiaIoni Bowcher RENEWAL
Jones L GillianCanadaStephen Shaw NEGOTIATION
Chavez U BowleySpainBernardo Dominic NEGOTIATION
Leon L PerinItalyElwin Sharvill UNQUALIFIED
Salvatore W AlbaresAustraliaOnyama Limba UNQUALIFIED
Darci P MacleadUnited KingdomOnyama Limba NEW
Francesco X IturbideJapanXuxue Feng RENEWAL
Morrow I ButtSpainAmy Elsner UNQUALIFIED
Leja K GillianBrazilOnyama Limba QUALIFIED
Aruna C VocelkaSpainStephen Shaw RENEWAL
Alejandro I KolmetzFranceXuxue Feng NEW
Aruna K ChuiAustraliaXuxue Feng NEW
Julie G BologniaSpainAsiya Javayant PROPOSAL
Alejandro M InouyeItalyElwin Sharvill UNQUALIFIED
Alejandro R FigeroaFranceIvan Magalhaes QUALIFIED
Rodrigues Z DarakjyFranceAsiya Javayant NEW
Jefferson D GillianJapanIoni Bowcher NEGOTIATION
Salvatore J SlusarskiSpainElwin Sharvill QUALIFIED
Jefferson D MorascaItalyXuxue Feng RENEWAL
Juan A IturbideFranceBernardo Dominic UNQUALIFIED
Rodrigues S FlosiFranceOnyama Limba UNQUALIFIED
Deepesh C WhobreyBrazilBernardo Dominic PROPOSAL
Silvio Z StensethAustraliaBernardo Dominic NEGOTIATION
Murillo D MaletUnited KingdomBernardo Dominic NEGOTIATION
Tony L KuskoRussiaBernardo Dominic QUALIFIED
Maria T OstroskyIndiaXuxue Feng NEGOTIATION
Costa I KolmetzAustraliaAnna Fali NEGOTIATION
Tony Z GlickGermanyXuxue Feng RENEWAL

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