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
Emily E PaprockiSpainIvan Magalhaes NEGOTIATION
Salvatore C FollerAustraliaIvan Magalhaes NEW
Maisha O IturbideIndiaXuxue Feng QUALIFIED
Arvin I AmigonSpainBernardo Dominic NEGOTIATION
Leja Z NickaAustraliaXuxue Feng NEGOTIATION
Jefferson Z MorascaArgentinaXuxue Feng NEW
Juan N PaprockiUnited KingdomIoni Bowcher RENEWAL
Isabel U FollerSpainIvan Magalhaes NEGOTIATION
Deepesh V FerenczFranceIvan Magalhaes NEW
Ivar I IturbideGermanyStephen Shaw RENEWAL
Jeanfrancois O MacleadItalyXuxue Feng PROPOSAL
Silvio Y StensethRussiaIvan Magalhaes QUALIFIED
Johnson K RimUnited KingdomIoni Bowcher PROPOSAL
Deepesh C GarufiRussiaAnna Fali NEW
Costa M DilliardArgentinaAmy Elsner RENEWAL
Smith G GillianJapanAnna Fali UNQUALIFIED
Mayumi F PoquetteUnited KingdomStephen Shaw QUALIFIED
James O WaycottFranceAmy Elsner PROPOSAL
Clifford M OldroydItalyBernardo Dominic NEGOTIATION
Silvio Y PerinGermanyStephen Shaw NEW
Morrow W PerinBrazilIoni Bowcher UNQUALIFIED
Claire K SaylorsIndiaStephen Shaw QUALIFIED
Nicolas M ButtSpainIvan Magalhaes PROPOSAL
Alejandro I GauchoGermanyXuxue Feng RENEWAL
Claire B FlosiFranceAnna Fali QUALIFIED
Ricardo N BowleyIndiaOnyama Limba QUALIFIED
Jennifer B VenereUnited KingdomXuxue Feng NEW
David N InouyeAustraliaIoni Bowcher PROPOSAL
Silvio T RoysterSpainIoni Bowcher NEW
Kaitlin G MorascaFranceBernardo Dominic NEGOTIATION
Morrow Y BowleyRussiaAsiya Javayant NEGOTIATION
Mayumi X GauchoItalyXuxue Feng QUALIFIED
Antonio R BologniaIndiaAsiya Javayant QUALIFIED
Misaki D FigeroaUnited KingdomXuxue Feng RENEWAL
Deepesh M PerinAustraliaAmy Elsner NEGOTIATION
Julie Q RimBrazilAnna Fali RENEWAL
Johnson F ButtGermanyElwin Sharvill NEW
Kaitlin H OldroydJapanStephen Shaw RENEWAL
Salvatore M VenereArgentinaAmy Elsner RENEWAL
Aditya M GarufiArgentinaElwin Sharvill UNQUALIFIED
Clifford M KuskoJapanAmy Elsner QUALIFIED
Claire K InouyeJapanOnyama Limba NEW
David P StockhamJapanAmy Elsner NEW
Kaitlin K SchemmerGermanyAmy Elsner NEW
Deepesh D MaletSpainAmy Elsner NEGOTIATION
Greenwood P WhobreyFranceAmy Elsner PROPOSAL
Johnson V MaletBrazilIoni Bowcher QUALIFIED
Stacey T WaycottAustraliaElwin Sharvill NEGOTIATION
Aika Z MaletJapanAmy Elsner RENEWAL
Deepesh G RutaFranceStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Alejandro V CaudyCanadaAsiya Javayant RENEWAL
Sinclair Y GarufiSpainOnyama Limba NEGOTIATION
Adams Q SaylorsAustraliaOnyama Limba RENEWAL
Leja N MorascaItalyElwin Sharvill NEW
Ricardo M DarakjyFranceAnna Fali UNQUALIFIED
Aruna C FollerGermanyOnyama Limba PROPOSAL
Mayumi J GarufiCanadaAnna Fali QUALIFIED
Sinclair H VocelkaSpainXuxue Feng UNQUALIFIED
Emily E CaudyCanadaBernardo Dominic UNQUALIFIED
Emily Y StockhamItalyAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan U RimSpain2026-03-19Morlong Associates NEW66Bernardo Dominic
1001Murillo P AmigonJapan2026-04-02Commercial Press PROPOSAL4Ivan Magalhaes
1002Maisha Z AlbaresJapan2026-04-15Dorl, James J Esq NEGOTIATION91Amy Elsner
1003Juan Y CaldareraFrance2026-04-01Feltz Printing Service PROPOSAL41Onyama Limba
1004Chavez R FollerArgentina2026-04-14Benton, John B Jr NEW99Elwin Sharvill
1005Maria D KuskoAustralia2026-03-23Morlong Associates UNQUALIFIED79Ivan Magalhaes
1006Ricardo L BowleyIndia2026-04-15Rousseaux, Michael Esq UNQUALIFIED47Stephen Shaw
1007Nicolas U GlickItaly2026-03-29Truhlar And Truhlar Attys QUALIFIED26Asiya Javayant
1008Salvatore S MaletItaly2026-03-19Truhlar And Truhlar Attys RENEWAL92Ioni Bowcher
1009Silvio Z KolmetzCanada2026-04-11Feltz Printing Service NEW57Ioni Bowcher
1010Stacey H FlosiAustralia2026-03-21Benton, John B Jr NEW24Asiya Javayant
1011Sinclair L SergiUnited Kingdom2026-04-03Feltz Printing Service NEGOTIATION14Amy Elsner
1012Greenwood U MacleadIndia2026-04-14Dorl, James J Esq PROPOSAL8Ioni Bowcher
1013Claire D GillianBrazil2026-04-07Printing Dimensions PROPOSAL69Ioni Bowcher
1014Ashley P CampainBrazil2026-04-04Chemel, James L Cpa NEW88Asiya Javayant
1015Smith J PoquetteIndia2026-03-18Feltz Printing Service NEW84Ivan Magalhaes
1016Sinclair V BowleyFrance2026-03-30Printing Dimensions NEW84Stephen Shaw
1017Adams L FollerBrazil2026-04-12Buckley Miller Wright PROPOSAL86Ioni Bowcher
1018Claire A CaudyUnited Kingdom2026-03-27King, Christopher A Esq NEW74Bernardo Dominic
1019Arvin Q BowleyBrazil2026-03-20Morlong Associates RENEWAL7Xuxue Feng
1020Aruna T CaldareraArgentina2026-04-04Buckley Miller Wright PROPOSAL11Ioni Bowcher
1021Cody C BologniaItaly2026-03-26Rangoni Of Florence UNQUALIFIED91Bernardo Dominic
1022Aditya O CaudyCanada2026-03-28Dorl, James J Esq RENEWAL33Ioni Bowcher
1023Deepesh X CampainSpain2026-03-28Printing Dimensions NEGOTIATION34Ioni Bowcher
1024Kadeem S WhobreyArgentina2026-03-28Printing Dimensions QUALIFIED15Ioni Bowcher
1025Octavia Q TollnerCanada2026-03-17Morlong Associates RENEWAL53Onyama Limba
1026Tony R ChuiUnited Kingdom2026-03-24Benton, John B Jr NEW84Xuxue Feng
1027Deepesh F VenereJapan2026-03-20Rangoni Of Florence NEGOTIATION19Ioni Bowcher
1028Chavez D NestleSpain2026-03-28Printing Dimensions NEW24Amy Elsner
1029Greenwood E StensethArgentina2026-03-17Rangoni Of Florence QUALIFIED70Ivan Magalhaes
1030James S DoeCanada2026-03-17Printing Dimensions UNQUALIFIED82Onyama Limba
1031Aditya M GarufiItaly2026-03-29Rangoni Of Florence UNQUALIFIED37Bernardo Dominic
1032Izzy S WaycottItaly2026-03-26Chemel, James L Cpa NEGOTIATION84Ivan Magalhaes
1033Kadeem S MacleadBrazil2026-03-25Truhlar And Truhlar Attys RENEWAL90Xuxue Feng
1034Ivar R DarakjyBrazil2026-04-06Dorl, James J Esq NEGOTIATION92Stephen Shaw
1035Mayumi L GarufiRussia2026-04-08Chapman, Ross E Esq PROPOSAL49Asiya Javayant
1036Claire E RoysterIndia2026-04-10Benton, John B Jr PROPOSAL35Ioni Bowcher
1037Ashley C ShinkoUnited Kingdom2026-04-15Commercial Press PROPOSAL81Xuxue Feng
1038Alejandro W NickaFrance2026-04-11Feltz Printing Service UNQUALIFIED2Onyama Limba
1039Arvin Y SergiGermany2026-03-20Feltz Printing Service PROPOSAL95Ioni Bowcher
1040Adams V GillianCanada2026-04-01Printing Dimensions RENEWAL92Ioni Bowcher
1041Aditya Q RutaIndia2026-03-20Dorl, James J Esq NEGOTIATION78Asiya Javayant
1042Nicolas D RoysterBrazil2026-03-20Truhlar And Truhlar Attys QUALIFIED61Stephen Shaw
1043Octavia Y FlosiArgentina2026-04-14Printing Dimensions NEW33Amy Elsner
1044Morrow D GillianIndia2026-03-26Printing Dimensions RENEWAL85Anna Fali
1045Alejandro N KuskoJapan2026-04-10Morlong Associates PROPOSAL0Ioni Bowcher
1046Emily V KuskoIndia2026-04-03Feltz Printing Service NEGOTIATION81Ioni Bowcher
1047Emily X WieserBrazil2026-03-20Buckley Miller Wright UNQUALIFIED53Anna Fali
1048Arvin Y PaprockiIndia2026-03-25Rangoni Of Florence UNQUALIFIED97Onyama Limba
1049Jones C StockhamUnited Kingdom2026-03-27Rousseaux, Michael Esq NEW56Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Aditya B DilliardRussiaAsiya Javayant QUALIFIED
Darci A FerenczIndiaStephen Shaw QUALIFIED
Silvio X WaycottFranceOnyama Limba UNQUALIFIED
Kaitlin W GlickBrazilAmy Elsner UNQUALIFIED
Isabel Z BologniaBrazilIvan Magalhaes NEGOTIATION
Kaitlin R VocelkaBrazilElwin Sharvill UNQUALIFIED
Leja F ButtIndiaElwin Sharvill QUALIFIED
Jones U NestleSpainXuxue Feng QUALIFIED
Cody J CaudyArgentinaAsiya Javayant NEGOTIATION
Cody C SergiIndiaAsiya Javayant RENEWAL
Aditya J PoquetteBrazilBernardo Dominic UNQUALIFIED
James D PerinUnited KingdomOnyama Limba NEW
Munro C FlosiBrazilOnyama Limba RENEWAL
Isabel X FerenczRussiaAsiya Javayant NEGOTIATION
James Z ButtArgentinaIvan Magalhaes QUALIFIED
Mujtaba P SlusarskiUnited KingdomElwin Sharvill NEW
Isabel G RulapaughUnited KingdomElwin Sharvill PROPOSAL
Isabel X StensethUnited KingdomIoni Bowcher PROPOSAL
Izzy Z MorascaItalyAmy Elsner PROPOSAL
Misaki C MacleadUnited KingdomIvan Magalhaes QUALIFIED
Stacey T InouyeBrazilAmy Elsner QUALIFIED
Chavez I ChuiBrazilOnyama Limba PROPOSAL
Alejandro L CampainItalyAmy Elsner RENEWAL
Morrow B GarufiRussiaXuxue Feng QUALIFIED
Costa E PoquetteItalyOnyama Limba NEW
Aika X FollerJapanIoni Bowcher RENEWAL
Jefferson I OldroydUnited KingdomElwin Sharvill QUALIFIED
Kadeem G IturbideJapanAmy Elsner UNQUALIFIED
Kadeem I MorascaJapanStephen Shaw QUALIFIED
Kaitlin E InouyeItalyIvan Magalhaes NEGOTIATION
Sinclair K GillianArgentinaAnna Fali NEGOTIATION
Julie M SaylorsSpainAnna Fali QUALIFIED
Maisha M InouyeBrazilAnna Fali NEGOTIATION
Stacey Q OldroydIndiaXuxue Feng NEW
David K PoquetteIndiaIoni Bowcher RENEWAL
Aruna J TollnerSpainIvan Magalhaes PROPOSAL
Jones Y WieserJapanOnyama Limba RENEWAL
Isabel V ButtSpainAmy Elsner NEGOTIATION
Ivar C IturbideUnited KingdomAsiya Javayant UNQUALIFIED
Jefferson I DilliardArgentinaStephen Shaw QUALIFIED
Salvatore N InouyeGermanyIvan Magalhaes RENEWAL
Silvio X VenereGermanyStephen Shaw NEW
Emily L TollnerItalyStephen Shaw RENEWAL
Arvin H MacleadUnited KingdomAnna Fali UNQUALIFIED
Ricardo R KolmetzCanadaBernardo Dominic NEW
Munro V GlickArgentinaAnna Fali RENEWAL
Mujtaba U SergiJapanAsiya Javayant NEW
Mayumi L MarrierAustraliaIvan Magalhaes UNQUALIFIED
Smith U KuskoJapanElwin Sharvill NEGOTIATION
Morrow O ShinkoAustraliaStephen Shaw QUALIFIED
Frozen Columns
Name
Maisha E Ruta
Deepesh A Nicka
Aika B Darakjy
Aditya U Stenseth
Ashley Y Oldroyd
Silvio S Briddick
Claire C Gillian
Leon M Whobrey
Costa O Kolmetz
Cody E Ostrosky
Kaitlin F Caudy
Kaitlin C Saylors
Ivar C Slusarski
Misaki F Stockham
Darci U Rulapaugh
Leja R Waycott
Ivar A Maclead
Stacey Z Ostrosky
Julie A Rim
Alejandro K Bowley
Mujtaba N Flosi
Ivar X Nestle
Johnson Z Rulapaugh
Ricardo Y Venere
Leja P Inouye
Johnson U Kusko
Mujtaba J Kusko
Darci G Malet
Isabel C Dilliard
Maisha B Morasca
Ivar C Butt
Misaki C Poquette
Nicolas H Schemmer
Misaki X Oldroyd
Maisha G Ruta
Deepesh T Royster
Leja H Perin
Jeanfrancois H Rulapaugh
Darci T Garufi
Salvatore T Nestle
Morrow Y Malet
Jeanfrancois S Caudy
Rodrigues L Amigon
Nicolas E Briddick
Chavez R Shinko
Salvatore B Oldroyd
Greenwood N Stockham
Greenwood V Malet
Arvin T Kusko
James B Rulapaugh
IdCountryDate
1000France2026-04-14
1001Russia2026-04-04
1002Canada2026-04-10
1003India2026-04-05
1004Russia2026-04-03
1005Russia2026-04-05
1006India2026-04-07
1007United Kingdom2026-04-09
1008Argentina2026-04-06
1009Canada2026-03-20
1010Russia2026-04-09
1011Spain2026-04-03
1012Germany2026-03-17
1013Brazil2026-03-28
1014Russia2026-03-25
1015Australia2026-04-03
1016Germany2026-03-27
1017Brazil2026-04-02
1018Canada2026-04-02
1019United Kingdom2026-04-03
1020Japan2026-03-18
1021Italy2026-03-27
1022France2026-03-27
1023Germany2026-03-19
1024Brazil2026-03-25
1025Russia2026-03-31
1026Canada2026-04-08
1027Spain2026-04-01
1028Italy2026-03-22
1029Russia2026-03-17
1030Argentina2026-04-13
1031India2026-04-08
1032Russia2026-03-25
1033Japan2026-04-08
1034Australia2026-04-09
1035Germany2026-03-17
1036Germany2026-03-29
1037India2026-04-08
1038Germany2026-03-20
1039France2026-03-29
1040Brazil2026-04-06
1041Australia2026-03-31
1042Italy2026-03-18
1043Brazil2026-03-20
1044United Kingdom2026-04-06
1045Germany2026-03-26
1046Canada2026-04-07
1047Japan2026-04-03
1048United Kingdom2026-04-11
1049France2026-03-29

On-Demand Data

NameIdCountryDate
Jefferson A Rulapaugh1000France2026-04-10
Aditya M Glick1001France2026-04-05
Adams T Poquette1002Argentina2026-03-29
Costa J Nestle1003India2026-04-09
Emily Q Paprocki1004Italy2026-04-02
Misaki W Oldroyd1005Spain2026-04-04
Tony N Royster1006India2026-03-19
Rodrigues O Butt1007Italy2026-03-27
Clifford A Poquette1008Canada2026-04-15
Antonio K Wieser1009Brazil2026-04-15
Smith C Maclead1010India2026-04-15
Tony T Nestle1011United Kingdom2026-03-24
Costa T Sergi1012Germany2026-04-08
Aruna K Wieser1013United Kingdom2026-03-30
Antonio H Whobrey1014Brazil2026-04-04
Antonio T Malet1015Japan2026-04-14
Mujtaba Q Bolognia1016India2026-03-19
Julie H Saylors1017France2026-04-01
Nicolas T Bowley1018Russia2026-03-21
Tony B Chui1019Italy2026-03-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco P DoeFranceIvan Magalhaes NEW
Cody N DoeAustraliaBernardo Dominic QUALIFIED
Misaki T MorascaGermanyAnna Fali QUALIFIED
Maria X VenereRussiaAnna Fali UNQUALIFIED
Chavez T PaprockiSpainIvan Magalhaes NEW
Francesco H GauchoArgentinaAmy Elsner RENEWAL
Wickens G CaldareraArgentinaOnyama Limba NEGOTIATION
Darci Q OldroydRussiaBernardo Dominic NEGOTIATION
Chavez L WieserFranceBernardo Dominic NEGOTIATION
Sinclair D AlbaresFranceStephen Shaw QUALIFIED
Maisha T BologniaRussiaXuxue Feng RENEWAL
Kadeem D FlosiCanadaStephen Shaw PROPOSAL
Leja J PaprockiAustraliaIvan Magalhaes NEGOTIATION
Misaki E AmigonBrazilOnyama Limba NEGOTIATION
Johnson S PerinIndiaAmy Elsner PROPOSAL
Jones E SchemmerFranceXuxue Feng PROPOSAL
Aika N CampainFranceAnna Fali QUALIFIED
Salvatore Y GlickGermanyIvan Magalhaes PROPOSAL
Chavez E ChuiSpainAmy Elsner PROPOSAL
Mayumi P MorascaBrazilIvan Magalhaes QUALIFIED
Morrow Z FollerGermanyAnna Fali NEW
Deepesh I TollnerArgentinaAnna Fali NEW
Jennifer U MacleadAustraliaAsiya Javayant NEW
Izzy H GillianSpainXuxue Feng UNQUALIFIED
Ricardo F GarufiBrazilElwin Sharvill QUALIFIED
Cody A BriddickArgentinaIoni Bowcher PROPOSAL
Juan O FlosiCanadaIvan Magalhaes RENEWAL
Leon K StensethRussiaElwin Sharvill NEW
Jefferson O AlbaresSpainStephen Shaw RENEWAL
Sinclair K StensethJapanOnyama Limba NEGOTIATION
Sinclair V ChuiAustraliaAnna Fali NEGOTIATION
Greenwood E BologniaGermanyStephen Shaw NEGOTIATION
Tony T ChuiIndiaXuxue Feng NEW
Munro X BowleyUnited KingdomElwin Sharvill UNQUALIFIED
David Y CampainItalyXuxue Feng UNQUALIFIED
Jeanfrancois L FerenczRussiaBernardo Dominic NEGOTIATION
Cody L SlusarskiSpainXuxue Feng PROPOSAL
Jones O ShinkoAustraliaElwin Sharvill UNQUALIFIED
Octavia P BriddickAustraliaOnyama Limba UNQUALIFIED
Jeanfrancois Z WhobreyBrazilOnyama 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.