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
Kaitlin E FigeroaBrazilOnyama Limba PROPOSAL
James Q MaletAustraliaOnyama Limba UNQUALIFIED
Murillo A MarrierRussiaAmy Elsner UNQUALIFIED
Antonio R DarakjyJapanIvan Magalhaes NEGOTIATION
Emily S NickaAustraliaIvan Magalhaes PROPOSAL
Deepesh D InouyeUnited KingdomAmy Elsner PROPOSAL
Jefferson T VenereRussiaOnyama Limba PROPOSAL
Antonio I RoysterBrazilAsiya Javayant NEGOTIATION
Jeanfrancois R WhobreyAustraliaBernardo Dominic UNQUALIFIED
Izzy M VocelkaGermanyAnna Fali NEW
Darci C FollerUnited KingdomStephen Shaw NEW
Maria C PoquetteRussiaIoni Bowcher RENEWAL
Misaki M PerinGermanyAnna Fali UNQUALIFIED
Jeanfrancois Z FlosiJapanIoni Bowcher UNQUALIFIED
Salvatore I FollerArgentinaAnna Fali NEGOTIATION
Octavia D DarakjyJapanOnyama Limba NEGOTIATION
Clifford B WieserRussiaIvan Magalhaes PROPOSAL
Nicolas R DoeItalyIvan Magalhaes NEW
Munro L MaletJapanBernardo Dominic NEGOTIATION
Chavez K ButtCanadaAmy Elsner QUALIFIED
Ivar F CampainArgentinaElwin Sharvill PROPOSAL
Ivar J SlusarskiFranceAnna Fali UNQUALIFIED
Ivar E DoeUnited KingdomBernardo Dominic QUALIFIED
Faith J CaldareraCanadaAnna Fali PROPOSAL
Johnson X RimUnited KingdomIvan Magalhaes PROPOSAL
Kadeem R AlbaresGermanyAmy Elsner PROPOSAL
Nicolas J RutaBrazilBernardo Dominic QUALIFIED
Darci K MacleadRussiaAnna Fali NEW
James C NickaAustraliaAsiya Javayant NEW
Aika R WieserAustraliaBernardo Dominic NEW
Maria T RoysterArgentinaIvan Magalhaes UNQUALIFIED
Kadeem X KolmetzFranceIoni Bowcher PROPOSAL
Stacey D AmigonCanadaAsiya Javayant QUALIFIED
Octavia V FollerArgentinaAsiya Javayant UNQUALIFIED
Juan L CaldareraCanadaAnna Fali NEGOTIATION
Silvio T KolmetzFranceOnyama Limba UNQUALIFIED
Kaitlin Z RoysterGermanyAmy Elsner NEW
David C AlbaresIndiaAnna Fali NEGOTIATION
Jeanfrancois G FerenczRussiaAnna Fali UNQUALIFIED
Maria I FerenczCanadaElwin Sharvill NEW
Darci N BologniaUnited KingdomAsiya Javayant PROPOSAL
Julie W PaprockiGermanyBernardo Dominic NEW
Kadeem F VenereArgentinaXuxue Feng UNQUALIFIED
Wickens X CaudyUnited KingdomStephen Shaw NEW
Leja Q MorascaIndiaIvan Magalhaes NEGOTIATION
Ivar Z WaycottUnited KingdomOnyama Limba NEW
Isabel K AlbaresRussiaAmy Elsner NEGOTIATION
Costa Z OldroydSpainIoni Bowcher RENEWAL
Chavez E SaylorsGermanyElwin Sharvill QUALIFIED
Kadeem N NickaIndiaAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maisha P TollnerArgentinaIvan Magalhaes QUALIFIED
Cody O ShinkoArgentinaElwin Sharvill QUALIFIED
Mayumi U NickaSpainElwin Sharvill UNQUALIFIED
Isabel D KolmetzRussiaOnyama Limba UNQUALIFIED
Isabel T OldroydArgentinaIoni Bowcher QUALIFIED
Juan S SchemmerIndiaOnyama Limba NEW
Nicolas J CaudyArgentinaOnyama Limba QUALIFIED
Morrow Y StockhamIndiaOnyama Limba RENEWAL
Jennifer D CaldareraItalyAsiya Javayant QUALIFIED
Chavez D FigeroaGermanyXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony F PerinRussia2026-02-28Chanay, Jeffrey A Esq RENEWAL87Stephen Shaw
1001Tony B MaletIndia2026-03-19Chapman, Ross E Esq NEGOTIATION59Amy Elsner
1002Misaki V KolmetzSpain2026-03-08King, Christopher A Esq RENEWAL24Ivan Magalhaes
1003Deepesh E PerinAustralia2026-03-12Printing Dimensions UNQUALIFIED76Xuxue Feng
1004Morrow N DilliardCanada2026-03-17Buckley Miller Wright UNQUALIFIED64Xuxue Feng
1005Chavez K DoeSpain2026-03-19Buckley Miller Wright UNQUALIFIED23Asiya Javayant
1006Misaki O AmigonJapan2026-03-04Truhlar And Truhlar Attys UNQUALIFIED83Xuxue Feng
1007Jefferson Y GarufiAustralia2026-03-12Feltz Printing Service PROPOSAL35Stephen Shaw
1008Clifford O DarakjySpain2026-03-04Printing Dimensions QUALIFIED31Asiya Javayant
1009Aika T NestleRussia2026-03-08Benton, John B Jr UNQUALIFIED53Onyama Limba
1010Mayumi E SlusarskiAustralia2026-02-27Morlong Associates UNQUALIFIED20Anna Fali
1011Costa V StensethCanada2026-03-19Commercial Press NEGOTIATION9Stephen Shaw
1012Ricardo T BowleyJapan2026-03-04King, Christopher A Esq UNQUALIFIED15Asiya Javayant
1013Claire K ButtCanada2026-02-22Benton, John B Jr QUALIFIED44Elwin Sharvill
1014Octavia Y GarufiArgentina2026-03-19Printing Dimensions NEGOTIATION27Bernardo Dominic
1015Aruna P NickaGermany2026-03-05Rousseaux, Michael Esq RENEWAL9Xuxue Feng
1016Rodrigues N PoquetteRussia2026-02-28Rousseaux, Michael Esq UNQUALIFIED64Bernardo Dominic
1017Leja T WhobreyRussia2026-03-03Feltz Printing Service UNQUALIFIED22Asiya Javayant
1018Octavia D AmigonSpain2026-03-09Rangoni Of Florence PROPOSAL17Onyama Limba
1019Maisha O BologniaGermany2026-03-17Chapman, Ross E Esq UNQUALIFIED26Asiya Javayant
1020Leon Y OldroydCanada2026-03-03Rangoni Of Florence UNQUALIFIED47Amy Elsner
1021Izzy T FigeroaBrazil2026-03-01Printing Dimensions UNQUALIFIED23Bernardo Dominic
1022Ricardo J StockhamArgentina2026-03-04Buckley Miller Wright RENEWAL47Ivan Magalhaes
1023Rodrigues P MorascaRussia2026-03-04Benton, John B Jr UNQUALIFIED60Bernardo Dominic
1024Kaitlin O AmigonJapan2026-02-27Rangoni Of Florence UNQUALIFIED15Ioni Bowcher
1025David U OstroskyAustralia2026-03-17Chemel, James L Cpa RENEWAL27Elwin Sharvill
1026Silvio C PaprockiFrance2026-03-18Chemel, James L Cpa NEGOTIATION43Onyama Limba
1027Isabel Q MaletJapan2026-03-10King, Christopher A Esq NEW57Anna Fali
1028Morrow K GillianGermany2026-02-24Truhlar And Truhlar Attys QUALIFIED9Anna Fali
1029Jennifer Z RutaUnited Kingdom2026-02-23Dorl, James J Esq NEGOTIATION1Anna Fali
1030Maria P OstroskyBrazil2026-03-19Rangoni Of Florence UNQUALIFIED47Onyama Limba
1031Maria R OstroskyItaly2026-03-04King, Christopher A Esq PROPOSAL60Ioni Bowcher
1032Claire Y BowleyGermany2026-02-25Rousseaux, Michael Esq NEGOTIATION29Xuxue Feng
1033Ivar V AlbaresGermany2026-03-17Rousseaux, Michael Esq RENEWAL69Xuxue Feng
1034Mayumi C WaycottAustralia2026-03-17Commercial Press RENEWAL95Amy Elsner
1035Wickens I SchemmerFrance2026-03-12Chemel, James L Cpa QUALIFIED99Elwin Sharvill
1036David I MacleadCanada2026-03-03Buckley Miller Wright NEW93Ioni Bowcher
1037Silvio V VocelkaAustralia2026-03-17Commercial Press RENEWAL66Bernardo Dominic
1038Misaki A StockhamGermany2026-02-24Printing Dimensions UNQUALIFIED79Bernardo Dominic
1039Julie J OstroskyUnited Kingdom2026-03-14Rangoni Of Florence PROPOSAL59Ioni Bowcher
1040Deepesh Y StockhamRussia2026-02-25Morlong Associates NEW79Onyama Limba
1041Faith G MaletBrazil2026-02-21Commercial Press NEGOTIATION25Amy Elsner
1042Mujtaba X KuskoUnited Kingdom2026-02-27Feiner Bros RENEWAL36Onyama Limba
1043Ricardo R ChuiFrance2026-02-23Buckley Miller Wright PROPOSAL83Bernardo Dominic
1044Arvin P VenereCanada2026-02-26Rangoni Of Florence RENEWAL17Ioni Bowcher
1045Costa O GillianArgentina2026-03-11Benton, John B Jr UNQUALIFIED46Stephen Shaw
1046Kadeem W WhobreyCanada2026-03-02Feltz Printing Service UNQUALIFIED87Stephen Shaw
1047Murillo P KolmetzSpain2026-02-23Morlong Associates UNQUALIFIED27Ioni Bowcher
1048Jefferson F DilliardArgentina2026-03-17Chanay, Jeffrey A Esq QUALIFIED10Amy Elsner
1049Darci G SchemmerItaly2026-03-20Chemel, James L Cpa UNQUALIFIED9Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues X SaylorsIndiaStephen Shaw RENEWAL
Arvin V DarakjyCanadaOnyama Limba NEW
Aditya R DarakjyIndiaIvan Magalhaes UNQUALIFIED
Aika U PoquetteFranceOnyama Limba QUALIFIED
David C PoquetteRussiaAmy Elsner RENEWAL
Izzy J BowleyIndiaXuxue Feng NEGOTIATION
Faith A WaycottArgentinaIoni Bowcher UNQUALIFIED
Juan Z BriddickItalyAsiya Javayant UNQUALIFIED
Ivar A BowleyGermanyXuxue Feng NEW
David S KuskoJapanAmy Elsner RENEWAL
Mayumi J TollnerCanadaElwin Sharvill RENEWAL
Rodrigues L PerinFranceAsiya Javayant PROPOSAL
Claire W SergiUnited KingdomAsiya Javayant NEGOTIATION
Rodrigues H SaylorsRussiaOnyama Limba PROPOSAL
Smith Z OldroydJapanAmy Elsner PROPOSAL
Maisha D PaprockiJapanAsiya Javayant PROPOSAL
Aika I KolmetzRussiaElwin Sharvill QUALIFIED
Misaki H RoysterAustraliaXuxue Feng QUALIFIED
Julie A DarakjyIndiaIoni Bowcher UNQUALIFIED
Kaitlin Y KuskoAustraliaBernardo Dominic UNQUALIFIED
Jeanfrancois O BriddickJapanAsiya Javayant NEGOTIATION
Jones R GarufiJapanElwin Sharvill RENEWAL
Mujtaba S WieserFranceIvan Magalhaes RENEWAL
Deepesh K CampainRussiaStephen Shaw UNQUALIFIED
Aruna N AlbaresArgentinaAsiya Javayant UNQUALIFIED
Tony W NestleArgentinaXuxue Feng PROPOSAL
Isabel X KuskoCanadaElwin Sharvill NEGOTIATION
Chavez H KolmetzArgentinaXuxue Feng QUALIFIED
Deepesh Z BowleyBrazilAmy Elsner NEGOTIATION
Murillo V PaprockiItalyIoni Bowcher QUALIFIED
Julie H CampainSpainXuxue Feng PROPOSAL
Costa P MacleadGermanyStephen Shaw NEGOTIATION
Ricardo N WaycottBrazilAmy Elsner PROPOSAL
Jones R WhobreyAustraliaStephen Shaw PROPOSAL
Morrow N AmigonGermanyOnyama Limba NEGOTIATION
Clifford F CaldareraCanadaOnyama Limba NEGOTIATION
Munro O StockhamBrazilAsiya Javayant PROPOSAL
Greenwood W WieserUnited KingdomAnna Fali UNQUALIFIED
Antonio X FigeroaIndiaOnyama Limba UNQUALIFIED
Julie I WhobreyArgentinaIvan Magalhaes NEW
Arvin N SergiCanadaElwin Sharvill NEW
Jeanfrancois R NickaIndiaOnyama Limba PROPOSAL
Emily Q OldroydCanadaIoni Bowcher NEGOTIATION
Stacey X DarakjyIndiaIoni Bowcher NEW
Costa A WhobreyItalyBernardo Dominic RENEWAL
Francesco J BologniaRussiaIvan Magalhaes QUALIFIED
Mujtaba B GlickRussiaStephen Shaw PROPOSAL
Salvatore S RoysterFranceStephen Shaw PROPOSAL
Costa K MaletBrazilAnna Fali NEGOTIATION
Ricardo M DilliardRussiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Octavia P Bowley
Misaki Y Sergi
Nicolas D Bolognia
Salvatore Q Amigon
Clifford I Flosi
Rodrigues Q Venere
Greenwood C Venere
Morrow Y Royster
Tony C Figeroa
Kaitlin L Kolmetz
Sinclair E Inouye
Juan P Perin
Salvatore Y Wieser
Aruna A Maclead
Claire I Gillian
Isabel H Rim
Leon A Vocelka
Misaki A Rulapaugh
Kaitlin P Ferencz
Ivar I Garufi
Ivar W Ferencz
Isabel H Whobrey
James O Royster
Costa U Chui
Mujtaba D Stockham
Ivar F Shinko
Izzy A Oldroyd
Cody I Dilliard
Aika B Kolmetz
Clifford Y Bowley
Aruna R Bolognia
Jones Q Maclead
David O Morasca
Kadeem V Iturbide
Sinclair S Caldarera
Greenwood C Shinko
Antonio J Stenseth
Arvin O Malet
Mujtaba L Gaucho
Smith U Nicka
Rodrigues X Flosi
Wickens F Flosi
Johnson D Sergi
Leon M Vocelka
Deepesh R Darakjy
Chavez J Nicka
Octavia F Chui
David W Paprocki
Leja K Stockham
Cody F Slusarski
IdCountryDate
1000Argentina2026-03-19
1001Germany2026-02-19
1002Brazil2026-03-07
1003United Kingdom2026-02-21
1004Russia2026-03-05
1005Japan2026-03-03
1006Brazil2026-03-06
1007Russia2026-03-04
1008France2026-03-05
1009Spain2026-02-25
1010India2026-02-21
1011Australia2026-03-18
1012France2026-03-07
1013France2026-03-13
1014France2026-03-09
1015Germany2026-02-27
1016Italy2026-03-15
1017United Kingdom2026-03-15
1018India2026-02-24
1019India2026-02-23
1020France2026-02-22
1021Spain2026-03-19
1022Spain2026-03-09
1023Canada2026-02-21
1024Australia2026-02-26
1025Spain2026-03-12
1026Brazil2026-03-14
1027Brazil2026-03-14
1028United Kingdom2026-03-09
1029France2026-02-22
1030Germany2026-02-21
1031Italy2026-03-03
1032Germany2026-03-14
1033Russia2026-02-21
1034Germany2026-03-10
1035Japan2026-02-23
1036Australia2026-02-26
1037Brazil2026-02-28
1038United Kingdom2026-03-09
1039Australia2026-02-21
1040Argentina2026-03-04
1041France2026-03-02
1042France2026-02-24
1043Japan2026-03-07
1044Russia2026-03-19
1045Argentina2026-03-04
1046Germany2026-02-28
1047Australia2026-03-05
1048Brazil2026-03-02
1049India2026-02-21

On-Demand Data

NameIdCountryDate
Tony O Paprocki1000Argentina2026-02-27
Ivar X Butt1001Brazil2026-03-16
Deepesh A Ruta1002Italy2026-03-05
Francesco D Amigon1003France2026-03-09
Aruna U Vocelka1004Russia2026-02-22
Misaki L Perin1005Japan2026-02-23
Wickens W Morasca1006Russia2026-02-19
Chavez G Rulapaugh1007Australia2026-02-24
Kadeem N Ostrosky1008Germany2026-03-12
Wickens K Oldroyd1009Japan2026-03-15
Smith W Stockham1010Germany2026-03-17
Isabel N Caudy1011Italy2026-03-03
James V Doe1012Spain2026-03-11
Adams K Nicka1013Spain2026-02-21
Isabel N Tollner1014Brazil2026-03-09
Julie H Malet1015Italy2026-03-01
Ashley S Iturbide1016Brazil2026-02-25
Mujtaba Y Bowley1017Japan2026-02-21
Deepesh X Paprocki1018Australia2026-03-02
Nicolas R Iturbide1019Australia2026-02-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan E PoquetteFranceXuxue Feng RENEWAL
Ricardo N GillianSpainAmy Elsner NEGOTIATION
Chavez N NickaJapanAmy Elsner NEGOTIATION
Emily I ShinkoSpainAnna Fali NEW
Kaitlin M BriddickRussiaBernardo Dominic RENEWAL
Ricardo I OldroydItalyAmy Elsner NEGOTIATION
Ricardo D MorascaBrazilAnna Fali UNQUALIFIED
Mujtaba N RimSpainAsiya Javayant RENEWAL
Clifford D WaycottIndiaIvan Magalhaes RENEWAL
Chavez L DilliardFranceAnna Fali NEGOTIATION
Mujtaba K RutaSpainIvan Magalhaes RENEWAL
Ricardo Y VocelkaRussiaElwin Sharvill UNQUALIFIED
Cody A StockhamAustraliaIoni Bowcher NEW
David B FollerUnited KingdomAmy Elsner NEGOTIATION
Isabel S DilliardRussiaAsiya Javayant NEGOTIATION
Ashley K AlbaresUnited KingdomStephen Shaw UNQUALIFIED
Sinclair M InouyeItalyAnna Fali RENEWAL
Cody D DilliardJapanElwin Sharvill QUALIFIED
Jennifer R NickaSpainStephen Shaw PROPOSAL
Salvatore M ChuiSpainStephen Shaw RENEWAL
Clifford V GarufiFranceBernardo Dominic UNQUALIFIED
Cody H KolmetzGermanyIoni Bowcher UNQUALIFIED
Adams H FerenczBrazilAsiya Javayant QUALIFIED
Aruna Z SergiFranceAnna Fali NEW
Stacey M GlickCanadaBernardo Dominic NEGOTIATION
Chavez D StockhamFranceIvan Magalhaes PROPOSAL
Kaitlin E VocelkaGermanyIoni Bowcher PROPOSAL
James K MacleadCanadaAmy Elsner PROPOSAL
Aika R FollerCanadaBernardo Dominic QUALIFIED
Jones G WhobreyItalyOnyama Limba PROPOSAL
Stacey E GauchoUnited KingdomStephen Shaw QUALIFIED
Cody D WaycottBrazilAmy Elsner QUALIFIED
Murillo D DilliardCanadaIvan Magalhaes UNQUALIFIED
James N ButtAustraliaIvan Magalhaes RENEWAL
Nicolas A FlosiItalyAsiya Javayant QUALIFIED
Mujtaba Y KuskoArgentinaIoni Bowcher NEGOTIATION
Maria M CampainSpainAsiya Javayant QUALIFIED
Maisha B OstroskySpainIvan Magalhaes QUALIFIED
Kadeem O ShinkoIndiaIoni Bowcher UNQUALIFIED
Jeanfrancois Y KolmetzArgentinaIvan Magalhaes 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.