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
Greenwood R CaldareraItalyElwin Sharvill PROPOSAL
David W FerenczIndiaAmy Elsner QUALIFIED
Isabel Q VocelkaIndiaIvan Magalhaes UNQUALIFIED
Mayumi I KolmetzJapanOnyama Limba RENEWAL
Aika Y WhobreyBrazilOnyama Limba PROPOSAL
Izzy Y StensethBrazilBernardo Dominic PROPOSAL
Izzy T ChuiUnited KingdomXuxue Feng RENEWAL
Cody E NickaRussiaBernardo Dominic UNQUALIFIED
Aika V PaprockiUnited KingdomOnyama Limba UNQUALIFIED
Morrow W VocelkaSpainIvan Magalhaes UNQUALIFIED
Faith H DilliardFranceElwin Sharvill RENEWAL
Greenwood M PerinCanadaOnyama Limba RENEWAL
Murillo M KuskoCanadaElwin Sharvill NEGOTIATION
Ricardo C ChuiBrazilBernardo Dominic PROPOSAL
Rodrigues C PoquetteCanadaIvan Magalhaes RENEWAL
Johnson U DarakjyItalyStephen Shaw UNQUALIFIED
Kadeem C InouyeFranceOnyama Limba UNQUALIFIED
Jones I FollerAustraliaElwin Sharvill RENEWAL
Aditya C RulapaughArgentinaBernardo Dominic PROPOSAL
Darci Q IturbideIndiaXuxue Feng PROPOSAL
Morrow Z GauchoCanadaBernardo Dominic PROPOSAL
Alejandro K RulapaughFranceAmy Elsner PROPOSAL
Kadeem Y PerinGermanyOnyama Limba NEW
Antonio N VocelkaSpainAmy Elsner UNQUALIFIED
Wickens I StockhamSpainAsiya Javayant RENEWAL
Arvin V BriddickBrazilOnyama Limba UNQUALIFIED
Kaitlin M BriddickFranceAmy Elsner NEW
Juan J FigeroaFranceAsiya Javayant NEW
Ricardo E PoquetteFranceIoni Bowcher NEW
Claire H VocelkaSpainAmy Elsner NEGOTIATION
Salvatore V RutaItalyOnyama Limba RENEWAL
Ashley M KolmetzBrazilBernardo Dominic UNQUALIFIED
Leon X GillianFranceElwin Sharvill RENEWAL
Mujtaba K SchemmerCanadaIoni Bowcher QUALIFIED
Darci C TollnerCanadaAsiya Javayant PROPOSAL
Johnson D BowleyGermanyStephen Shaw NEW
Arvin D CampainRussiaAnna Fali QUALIFIED
Johnson F SchemmerSpainElwin Sharvill UNQUALIFIED
Leon X MarrierAustraliaStephen Shaw NEGOTIATION
Morrow U RoysterGermanyXuxue Feng NEW
Murillo F BologniaJapanStephen Shaw NEGOTIATION
Arvin D RutaArgentinaAmy Elsner QUALIFIED
Munro I MarrierAustraliaAmy Elsner PROPOSAL
Kaitlin F MarrierItalyStephen Shaw QUALIFIED
David S IturbideCanadaStephen Shaw RENEWAL
Smith Y MaletIndiaBernardo Dominic PROPOSAL
Maisha M GillianGermanyAsiya Javayant RENEWAL
Chavez Q DoeRussiaBernardo Dominic UNQUALIFIED
Francesco B StockhamSpainIvan Magalhaes QUALIFIED
Aruna X BriddickBrazilAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
David X GarufiFranceBernardo Dominic UNQUALIFIED
Arvin L CampainBrazilIoni Bowcher QUALIFIED
Nicolas O SlusarskiItalyAmy Elsner QUALIFIED
Julie Q KuskoUnited KingdomAmy Elsner NEW
David D RimFranceAsiya Javayant PROPOSAL
Tony X CampainUnited KingdomIvan Magalhaes RENEWAL
Antonio C ButtIndiaStephen Shaw RENEWAL
Alejandro X WhobreyArgentinaAsiya Javayant PROPOSAL
James Y OldroydGermanyBernardo Dominic NEW
Silvio Q NestleGermanyElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio N OstroskyArgentina2026-05-11Truhlar And Truhlar Attys QUALIFIED49Elwin Sharvill
1001Maria T RulapaughFrance2026-05-22Chapman, Ross E Esq UNQUALIFIED66Amy Elsner
1002Greenwood X MaletBrazil2026-05-19Morlong Associates PROPOSAL4Ioni Bowcher
1003Murillo P NestleFrance2026-05-07Morlong Associates NEW38Stephen Shaw
1004Nicolas H FollerUnited Kingdom2026-05-20Chanay, Jeffrey A Esq RENEWAL84Elwin Sharvill
1005Leja R MarrierBrazil2026-05-17Benton, John B Jr PROPOSAL84Elwin Sharvill
1006Claire A VocelkaBrazil2026-05-19Buckley Miller Wright NEW57Anna Fali
1007Mujtaba A BriddickJapan2026-05-25Truhlar And Truhlar Attys QUALIFIED95Onyama Limba
1008Aruna U StockhamJapan2026-05-23Chapman, Ross E Esq NEW86Stephen Shaw
1009Chavez O AlbaresCanada2026-05-13Benton, John B Jr RENEWAL30Elwin Sharvill
1010Rodrigues P SlusarskiItaly2026-05-30Feiner Bros NEGOTIATION41Xuxue Feng
1011Johnson I DilliardAustralia2026-05-17Benton, John B Jr PROPOSAL76Elwin Sharvill
1012Claire G RutaRussia2026-05-14Commercial Press NEGOTIATION15Asiya Javayant
1013Silvio O VocelkaItaly2026-06-03Chemel, James L Cpa UNQUALIFIED39Stephen Shaw
1014Darci L DoeIndia2026-05-14King, Christopher A Esq NEGOTIATION50Bernardo Dominic
1015Rodrigues C MacleadAustralia2026-05-10Rangoni Of Florence PROPOSAL85Amy Elsner
1016Ivar I NestleAustralia2026-05-26Commercial Press NEW9Asiya Javayant
1017Salvatore I PaprockiRussia2026-05-15Printing Dimensions QUALIFIED59Asiya Javayant
1018Arvin K MaletIndia2026-05-20Benton, John B Jr RENEWAL57Bernardo Dominic
1019Octavia T VocelkaFrance2026-05-26King, Christopher A Esq NEGOTIATION21Bernardo Dominic
1020Arvin V WaycottUnited Kingdom2026-05-28Buckley Miller Wright NEW18Ioni Bowcher
1021Faith Y MarrierIndia2026-05-08Chapman, Ross E Esq PROPOSAL38Onyama Limba
1022James V WieserAustralia2026-06-03King, Christopher A Esq UNQUALIFIED33Elwin Sharvill
1023Aika Y OldroydSpain2026-05-15Feltz Printing Service PROPOSAL36Stephen Shaw
1024Darci F DoeGermany2026-05-24Rangoni Of Florence RENEWAL85Bernardo Dominic
1025Nicolas R GillianFrance2026-05-12Printing Dimensions PROPOSAL28Xuxue Feng
1026Rodrigues T OstroskyArgentina2026-05-27Chanay, Jeffrey A Esq UNQUALIFIED55Bernardo Dominic
1027Smith R FlosiItaly2026-05-25Buckley Miller Wright PROPOSAL85Ioni Bowcher
1028Greenwood A PerinIndia2026-05-15Commercial Press RENEWAL79Onyama Limba
1029Salvatore G PaprockiBrazil2026-05-12Truhlar And Truhlar Attys RENEWAL93Elwin Sharvill
1030Clifford V PoquetteIndia2026-05-06Benton, John B Jr NEGOTIATION71Xuxue Feng
1031Izzy B TollnerArgentina2026-05-22Rousseaux, Michael Esq NEGOTIATION24Stephen Shaw
1032Rodrigues A StensethFrance2026-05-09Feiner Bros NEW28Stephen Shaw
1033Leja L ButtJapan2026-05-23Buckley Miller Wright NEW90Xuxue Feng
1034Mujtaba I BologniaUnited Kingdom2026-05-20Printing Dimensions NEGOTIATION88Anna Fali
1035Ricardo T WhobreyBrazil2026-05-11Benton, John B Jr UNQUALIFIED47Anna Fali
1036Chavez A FigeroaJapan2026-06-03Benton, John B Jr UNQUALIFIED42Bernardo Dominic
1037David V InouyeIndia2026-05-21Printing Dimensions PROPOSAL96Bernardo Dominic
1038James Q MaletFrance2026-05-21Feiner Bros NEGOTIATION26Anna Fali
1039Darci J WaycottRussia2026-05-23Benton, John B Jr NEW52Anna Fali
1040Costa Z GauchoGermany2026-05-09Rangoni Of Florence PROPOSAL74Bernardo Dominic
1041Adams G GauchoBrazil2026-05-06Feiner Bros UNQUALIFIED80Ioni Bowcher
1042Deepesh T RoysterArgentina2026-05-30Rousseaux, Michael Esq UNQUALIFIED14Xuxue Feng
1043Claire A FerenczCanada2026-05-27Dorl, James J Esq RENEWAL7Elwin Sharvill
1044Ricardo E PerinUnited Kingdom2026-06-03Commercial Press QUALIFIED22Bernardo Dominic
1045Jefferson R PaprockiArgentina2026-05-23Benton, John B Jr NEW97Xuxue Feng
1046Darci V ChuiFrance2026-05-18Printing Dimensions RENEWAL17Amy Elsner
1047Kaitlin D IturbideUnited Kingdom2026-05-08Printing Dimensions PROPOSAL33Bernardo Dominic
1048Claire R BowleyIndia2026-05-19Feiner Bros NEGOTIATION41Ivan Magalhaes
1049Maisha O WaycottArgentina2026-05-21Rousseaux, Michael Esq NEW94Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois T OstroskyJapanOnyama Limba PROPOSAL
Juan A ButtSpainIoni Bowcher UNQUALIFIED
Maria E DilliardBrazilOnyama Limba UNQUALIFIED
Claire V StensethRussiaAsiya Javayant RENEWAL
Leon C FollerJapanAsiya Javayant NEGOTIATION
Misaki P StockhamGermanyIvan Magalhaes UNQUALIFIED
Stacey N DarakjyRussiaAnna Fali NEW
James I SaylorsIndiaBernardo Dominic UNQUALIFIED
Faith T MacleadGermanyBernardo Dominic RENEWAL
Arvin J NickaItalyAnna Fali QUALIFIED
Claire W AmigonJapanAsiya Javayant NEGOTIATION
Claire J GillianGermanyAnna Fali PROPOSAL
Salvatore Q KuskoFranceBernardo Dominic QUALIFIED
Morrow L GarufiItalyStephen Shaw NEW
Deepesh D PoquetteAustraliaBernardo Dominic NEW
Salvatore Q GauchoBrazilElwin Sharvill RENEWAL
Izzy R MorascaCanadaBernardo Dominic UNQUALIFIED
Greenwood J BriddickIndiaIoni Bowcher UNQUALIFIED
Emily Q KuskoFranceAnna Fali NEGOTIATION
Kaitlin D StensethAustraliaIvan Magalhaes NEGOTIATION
Alejandro K GauchoAustraliaIoni Bowcher QUALIFIED
Ashley W OstroskyJapanStephen Shaw QUALIFIED
Deepesh C DoeJapanAsiya Javayant UNQUALIFIED
Aika T IturbideArgentinaBernardo Dominic QUALIFIED
Arvin V FerenczItalyAnna Fali UNQUALIFIED
Johnson N RutaItalyIoni Bowcher RENEWAL
Costa K MarrierSpainAmy Elsner RENEWAL
Emily E BologniaJapanAmy Elsner QUALIFIED
David N TollnerSpainAnna Fali PROPOSAL
Aruna N WaycottSpainAsiya Javayant QUALIFIED
Ricardo F GauchoItalyOnyama Limba NEGOTIATION
Juan Y AlbaresUnited KingdomAmy Elsner PROPOSAL
Jeanfrancois N DarakjyAustraliaAnna Fali QUALIFIED
Alejandro Z StensethAustraliaAmy Elsner UNQUALIFIED
Aruna N RoysterBrazilAmy Elsner NEW
Salvatore A WaycottSpainXuxue Feng RENEWAL
Juan U StensethArgentinaElwin Sharvill PROPOSAL
Deepesh Z ChuiJapanIvan Magalhaes NEW
Maria A RulapaughGermanyAsiya Javayant NEGOTIATION
Ashley D AlbaresItalyAnna Fali PROPOSAL
Maisha K SergiUnited KingdomXuxue Feng UNQUALIFIED
Deepesh Q DoeGermanyIoni Bowcher UNQUALIFIED
Ivar X GarufiJapanOnyama Limba UNQUALIFIED
Stacey E WhobreyGermanyAsiya Javayant UNQUALIFIED
Kaitlin Y CaudyGermanyXuxue Feng RENEWAL
Wickens X MaletItalyXuxue Feng PROPOSAL
Jennifer V RulapaughUnited KingdomAsiya Javayant RENEWAL
Jones R MaletCanadaBernardo Dominic PROPOSAL
Deepesh K DarakjyItalyAsiya Javayant PROPOSAL
Tony K GarufiUnited KingdomBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Cody Z Doe
Ashley B Glick
James X Stenseth
Jeanfrancois A Schemmer
Smith N Ruta
Misaki D Kusko
Maisha D Shinko
Kadeem U Saylors
Nicolas K Marrier
Deepesh H Vocelka
Julie M Glick
Misaki H Nestle
Cody V Butt
Morrow U Paprocki
Greenwood V Shinko
Kadeem W Oldroyd
Francesco L Waycott
Aruna Q Garufi
Alejandro W Nicka
Deepesh G Butt
Francesco Q Shinko
Silvio G Inouye
Maria G Venere
Misaki F Malet
Leja B Morasca
Isabel F Glick
Emily H Iturbide
Alejandro M Ruta
Stacey N Dilliard
Jeanfrancois H Poquette
Kaitlin Z Campain
Jeanfrancois I Marrier
Salvatore Y Kolmetz
Ivar G Dilliard
Aika E Stockham
Emily E Vocelka
Munro I Kolmetz
Claire I Butt
Alejandro R Gaucho
Aditya S Slusarski
Chavez K Flosi
Francesco Y Shinko
Aditya R Malet
Deepesh W Garufi
Misaki E Bowley
Greenwood N Ostrosky
Munro Y Butt
Greenwood M Bowley
Jones Y Tollner
Francesco G Kusko
IdCountryDate
1000Brazil2026-05-20
1001Germany2026-05-09
1002France2026-05-14
1003Russia2026-05-12
1004Russia2026-05-25
1005Germany2026-05-07
1006Australia2026-05-19
1007Argentina2026-05-06
1008Argentina2026-05-28
1009France2026-05-20
1010Germany2026-05-23
1011Spain2026-05-28
1012India2026-05-30
1013Argentina2026-05-14
1014Australia2026-05-05
1015Japan2026-05-07
1016Brazil2026-05-31
1017France2026-05-28
1018Australia2026-05-30
1019Russia2026-05-20
1020France2026-06-02
1021India2026-05-16
1022India2026-05-06
1023United Kingdom2026-05-31
1024Germany2026-05-25
1025Australia2026-05-19
1026Brazil2026-05-20
1027Germany2026-05-20
1028Australia2026-05-14
1029Germany2026-05-06
1030Japan2026-05-16
1031Japan2026-05-16
1032India2026-05-31
1033Argentina2026-05-09
1034United Kingdom2026-05-24
1035France2026-05-20
1036Brazil2026-05-07
1037Brazil2026-05-11
1038Spain2026-06-01
1039Italy2026-05-24
1040United Kingdom2026-05-13
1041Spain2026-05-08
1042Spain2026-05-26
1043Australia2026-05-28
1044Germany2026-05-05
1045United Kingdom2026-05-12
1046Spain2026-05-27
1047Japan2026-05-25
1048Russia2026-06-03
1049Japan2026-05-23

On-Demand Data

NameIdCountryDate
Arvin U Glick1000Germany2026-05-12
Alejandro U Amigon1001Canada2026-06-01
Jefferson Y Gaucho1002Argentina2026-05-05
Misaki P Morasca1003United Kingdom2026-05-05
Munro L Venere1004United Kingdom2026-06-01
Jefferson A Albares1005United Kingdom2026-05-17
Antonio F Saylors1006France2026-05-19
Wickens Y Kusko1007Canada2026-05-21
James S Darakjy1008Italy2026-05-19
Johnson T Poquette1009Russia2026-05-26
Silvio G Shinko1010Italy2026-05-13
Kadeem J Ruta1011United Kingdom2026-05-20
Leon R Caudy1012Canada2026-05-11
Julie N Marrier1013Japan2026-05-15
Clifford U Marrier1014Italy2026-05-28
Arvin W Whobrey1015United Kingdom2026-05-26
Alejandro K Dilliard1016France2026-05-12
Salvatore A Albares1017Japan2026-06-03
Tony T Morasca1018Germany2026-05-26
Jeanfrancois J Nicka1019Germany2026-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel K NickaSpainIvan Magalhaes NEW
Antonio V OldroydArgentinaXuxue Feng PROPOSAL
Jennifer X FlosiRussiaElwin Sharvill PROPOSAL
Morrow C MaletAustraliaIvan Magalhaes RENEWAL
Maisha G FigeroaUnited KingdomXuxue Feng UNQUALIFIED
Sinclair J WieserRussiaElwin Sharvill RENEWAL
Arvin B FlosiRussiaOnyama Limba NEW
Faith P MarrierArgentinaElwin Sharvill QUALIFIED
Juan Z BriddickArgentinaBernardo Dominic UNQUALIFIED
Costa D NestleGermanyIvan Magalhaes QUALIFIED
Stacey I VocelkaItalyAsiya Javayant NEW
Isabel S CaudyAustraliaIvan Magalhaes UNQUALIFIED
Faith N StensethFranceBernardo Dominic RENEWAL
Aika S TollnerCanadaBernardo Dominic NEGOTIATION
Johnson U RoysterAustraliaXuxue Feng RENEWAL
Silvio K MaletArgentinaAmy Elsner PROPOSAL
Cody F MaletArgentinaAsiya Javayant QUALIFIED
Maria V SchemmerGermanyElwin Sharvill UNQUALIFIED
Claire S OldroydJapanBernardo Dominic PROPOSAL
Kaitlin A VenereUnited KingdomAsiya Javayant UNQUALIFIED
Mayumi E DoeArgentinaBernardo Dominic QUALIFIED
Alejandro M SlusarskiFranceAmy Elsner RENEWAL
Jennifer I StockhamGermanyIvan Magalhaes RENEWAL
Jeanfrancois W SchemmerJapanAnna Fali PROPOSAL
Costa U ButtCanadaAmy Elsner UNQUALIFIED
Munro T DarakjySpainAsiya Javayant NEW
Maria B BologniaFranceOnyama Limba NEGOTIATION
Misaki I KolmetzUnited KingdomAmy Elsner UNQUALIFIED
Greenwood T BowleyJapanAmy Elsner NEW
Jeanfrancois Q SlusarskiArgentinaElwin Sharvill RENEWAL
Maisha Q BowleyUnited KingdomStephen Shaw NEGOTIATION
Smith O GarufiItalyAsiya Javayant NEGOTIATION
Ashley I GillianUnited KingdomXuxue Feng RENEWAL
Aditya W StockhamFranceElwin Sharvill NEGOTIATION
Chavez D SergiAustraliaIoni Bowcher PROPOSAL
Maria A AlbaresFranceStephen Shaw NEGOTIATION
Murillo X BriddickFranceElwin Sharvill QUALIFIED
Darci I OldroydRussiaAsiya Javayant PROPOSAL
Salvatore X MorascaBrazilBernardo Dominic NEW
Jeanfrancois P DilliardArgentinaIvan Magalhaes PROPOSAL

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