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
Costa J MacleadAustraliaXuxue Feng NEW
Jeanfrancois I WaycottAustraliaIvan Magalhaes NEW
Ivar Q FlosiIndiaBernardo Dominic QUALIFIED
Alejandro H WaycottItalyIoni Bowcher UNQUALIFIED
Aditya N NickaRussiaIvan Magalhaes NEGOTIATION
Morrow Q FollerCanadaIoni Bowcher QUALIFIED
Darci G BriddickArgentinaAnna Fali RENEWAL
Mujtaba B PerinSpainStephen Shaw QUALIFIED
Clifford N VocelkaJapanAmy Elsner RENEWAL
Chavez N OldroydCanadaElwin Sharvill UNQUALIFIED
Isabel P BriddickArgentinaXuxue Feng NEW
Leon V MarrierSpainBernardo Dominic UNQUALIFIED
Octavia C ChuiItalyIvan Magalhaes NEW
Leja S GauchoAustraliaAnna Fali UNQUALIFIED
Juan T FollerFranceOnyama Limba PROPOSAL
Maisha P CampainJapanOnyama Limba RENEWAL
Francesco E SlusarskiRussiaAnna Fali NEGOTIATION
Isabel F GarufiCanadaElwin Sharvill NEW
Isabel T ChuiArgentinaIvan Magalhaes QUALIFIED
Izzy Y GarufiBrazilIoni Bowcher NEGOTIATION
Claire C SergiArgentinaAmy Elsner UNQUALIFIED
Costa Z DoeBrazilAmy Elsner NEW
Octavia O MacleadCanadaXuxue Feng UNQUALIFIED
Francesco A DoeGermanyIvan Magalhaes UNQUALIFIED
Stacey Z VenereCanadaStephen Shaw RENEWAL
Munro P SchemmerAustraliaIvan Magalhaes NEW
Misaki M OstroskyFranceElwin Sharvill NEW
Jeanfrancois B CampainGermanyXuxue Feng UNQUALIFIED
Juan I FigeroaBrazilIoni Bowcher NEW
Darci Z WieserJapanStephen Shaw QUALIFIED
Murillo D FerenczBrazilIoni Bowcher QUALIFIED
Aika R FollerItalyIoni Bowcher PROPOSAL
Arvin A CaldareraAustraliaAnna Fali QUALIFIED
Silvio Y SlusarskiArgentinaXuxue Feng NEW
Ricardo I DoeItalyAnna Fali QUALIFIED
Isabel P FollerUnited KingdomIoni Bowcher UNQUALIFIED
Jennifer A BologniaFranceAmy Elsner NEGOTIATION
Greenwood Z FerenczGermanyElwin Sharvill PROPOSAL
Ivar V MacleadIndiaIvan Magalhaes UNQUALIFIED
Jennifer M SlusarskiFranceOnyama Limba RENEWAL
Munro E PaprockiArgentinaXuxue Feng RENEWAL
Juan S OstroskyFranceXuxue Feng NEW
Deepesh I InouyeSpainAnna Fali RENEWAL
Morrow R WieserArgentinaElwin Sharvill RENEWAL
Faith X FlosiAustraliaXuxue Feng PROPOSAL
Adams N DarakjyGermanyOnyama Limba UNQUALIFIED
Leon J RoysterGermanyAsiya Javayant NEW
Ashley Y FigeroaGermanyAnna Fali RENEWAL
Tony G SlusarskiArgentinaAsiya Javayant NEGOTIATION
Kadeem R VenereArgentinaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Sinclair J InouyeAustraliaAsiya Javayant PROPOSAL
Ricardo N DarakjyArgentinaStephen Shaw PROPOSAL
Costa F StensethAustraliaAsiya Javayant NEGOTIATION
Ricardo Z RutaItalyIoni Bowcher NEGOTIATION
Arvin G IturbideJapanAnna Fali PROPOSAL
Jones W PoquetteCanadaXuxue Feng NEGOTIATION
Mujtaba P ButtGermanyAnna Fali QUALIFIED
Murillo H StockhamGermanyXuxue Feng NEW
Jeanfrancois X WhobreyUnited KingdomBernardo Dominic QUALIFIED
Arvin H TollnerSpainStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams M OstroskySpain2026-05-17King, Christopher A Esq RENEWAL15Bernardo Dominic
1001Kaitlin X TollnerFrance2026-05-09Chemel, James L Cpa NEW1Ivan Magalhaes
1002Jennifer B AlbaresCanada2026-05-30Rousseaux, Michael Esq UNQUALIFIED8Bernardo Dominic
1003Costa Q DilliardItaly2026-06-06Buckley Miller Wright NEW58Bernardo Dominic
1004Tony W FollerArgentina2026-05-16Printing Dimensions QUALIFIED33Anna Fali
1005Ivar E PoquetteIndia2026-05-28Commercial Press UNQUALIFIED23Ivan Magalhaes
1006Silvio O GauchoBrazil2026-06-01Chapman, Ross E Esq PROPOSAL34Stephen Shaw
1007Jones B GauchoArgentina2026-05-13Dorl, James J Esq NEGOTIATION69Xuxue Feng
1008Silvio N VocelkaItaly2026-05-16Rousseaux, Michael Esq RENEWAL78Amy Elsner
1009Misaki U SergiUnited Kingdom2026-06-04Commercial Press UNQUALIFIED5Onyama Limba
1010Antonio X DarakjyIndia2026-05-29Morlong Associates NEW32Amy Elsner
1011Claire P AlbaresIndia2026-06-03Chanay, Jeffrey A Esq UNQUALIFIED46Asiya Javayant
1012Octavia D SergiGermany2026-05-19Printing Dimensions PROPOSAL89Stephen Shaw
1013Maisha R NickaBrazil2026-05-27Buckley Miller Wright PROPOSAL56Asiya Javayant
1014Julie D MacleadIndia2026-05-18Rangoni Of Florence NEW0Elwin Sharvill
1015Johnson T WieserItaly2026-06-03Rangoni Of Florence QUALIFIED50Anna Fali
1016Ashley C DarakjyAustralia2026-06-03Chanay, Jeffrey A Esq NEW38Bernardo Dominic
1017Clifford Y CaldareraGermany2026-05-22Printing Dimensions NEGOTIATION48Bernardo Dominic
1018Maria X IturbideArgentina2026-05-25Feltz Printing Service QUALIFIED59Bernardo Dominic
1019Antonio G ButtJapan2026-05-27Rousseaux, Michael Esq NEW95Bernardo Dominic
1020Deepesh B ChuiAustralia2026-05-24Printing Dimensions RENEWAL18Ivan Magalhaes
1021Kadeem T ChuiRussia2026-05-10Chemel, James L Cpa NEW55Xuxue Feng
1022Wickens J GarufiBrazil2026-05-24Chapman, Ross E Esq UNQUALIFIED41Amy Elsner
1023Salvatore A StensethItaly2026-05-31Chapman, Ross E Esq QUALIFIED1Bernardo Dominic
1024James J SaylorsIndia2026-05-11Truhlar And Truhlar Attys RENEWAL30Elwin Sharvill
1025Wickens W SchemmerFrance2026-06-05Buckley Miller Wright NEW53Ivan Magalhaes
1026Emily W CaldareraUnited Kingdom2026-05-15Rangoni Of Florence QUALIFIED62Xuxue Feng
1027Greenwood X CaldareraJapan2026-05-17Feltz Printing Service RENEWAL55Ivan Magalhaes
1028Kaitlin Q StockhamBrazil2026-06-05Commercial Press NEW92Xuxue Feng
1029Morrow H AmigonUnited Kingdom2026-05-28Feltz Printing Service NEGOTIATION41Bernardo Dominic
1030Ivar O MacleadCanada2026-05-31Feltz Printing Service PROPOSAL58Ioni Bowcher
1031Leon Q StockhamUnited Kingdom2026-05-10Chanay, Jeffrey A Esq UNQUALIFIED2Stephen Shaw
1032Jeanfrancois W BriddickBrazil2026-06-01Feiner Bros NEGOTIATION99Stephen Shaw
1033Alejandro V CaudySpain2026-05-24Chapman, Ross E Esq NEW4Ivan Magalhaes
1034Nicolas K DoeSpain2026-06-01Chemel, James L Cpa RENEWAL42Asiya Javayant
1035Kaitlin Z SchemmerBrazil2026-06-03Morlong Associates NEGOTIATION12Bernardo Dominic
1036Emily X WaycottCanada2026-05-19Dorl, James J Esq NEW50Onyama Limba
1037Tony O NickaItaly2026-05-25Chanay, Jeffrey A Esq QUALIFIED75Ivan Magalhaes
1038Silvio U OldroydUnited Kingdom2026-06-04Chanay, Jeffrey A Esq QUALIFIED33Elwin Sharvill
1039Jefferson I ChuiGermany2026-06-01Truhlar And Truhlar Attys NEGOTIATION89Asiya Javayant
1040Silvio E RutaArgentina2026-05-19Chanay, Jeffrey A Esq QUALIFIED28Stephen Shaw
1041Juan D KolmetzSpain2026-06-01Buckley Miller Wright QUALIFIED84Asiya Javayant
1042Morrow Z ChuiFrance2026-05-12King, Christopher A Esq PROPOSAL23Elwin Sharvill
1043Ricardo W DilliardBrazil2026-05-31Chapman, Ross E Esq PROPOSAL61Ivan Magalhaes
1044Deepesh O MacleadIndia2026-05-15Feiner Bros UNQUALIFIED19Elwin Sharvill
1045Stacey L RutaUnited Kingdom2026-05-30Commercial Press PROPOSAL14Xuxue Feng
1046Cody W NestleGermany2026-05-17Rangoni Of Florence UNQUALIFIED91Amy Elsner
1047Adams R AlbaresBrazil2026-05-31Commercial Press PROPOSAL5Bernardo Dominic
1048Smith Z CaudyRussia2026-05-22Rousseaux, Michael Esq NEW78Bernardo Dominic
1049Sinclair B FollerUnited Kingdom2026-05-31Chemel, James L Cpa PROPOSAL32Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Faith S KuskoFranceStephen Shaw NEW
Aika W ShinkoArgentinaAnna Fali NEW
Sinclair N CaudyRussiaIoni Bowcher UNQUALIFIED
Smith I GillianCanadaAnna Fali NEGOTIATION
Jones L RutaArgentinaAmy Elsner UNQUALIFIED
Silvio I NestleRussiaElwin Sharvill RENEWAL
Isabel A FollerGermanyElwin Sharvill NEGOTIATION
Johnson F DarakjyUnited KingdomOnyama Limba UNQUALIFIED
David Z MorascaBrazilAmy Elsner QUALIFIED
Claire Y CampainAustraliaXuxue Feng QUALIFIED
Clifford E NickaUnited KingdomIoni Bowcher UNQUALIFIED
Darci T NestleItalyIvan Magalhaes PROPOSAL
Jennifer N GlickAustraliaElwin Sharvill UNQUALIFIED
Cody Z BriddickBrazilStephen Shaw QUALIFIED
Rodrigues M GillianJapanElwin Sharvill NEGOTIATION
Emily O GillianSpainIvan Magalhaes UNQUALIFIED
Misaki V DarakjyUnited KingdomXuxue Feng QUALIFIED
Sinclair V AmigonGermanyAmy Elsner RENEWAL
Darci D ShinkoFranceElwin Sharvill NEGOTIATION
Chavez L DoeGermanyXuxue Feng RENEWAL
Smith K GlickFranceOnyama Limba NEGOTIATION
Faith S StensethGermanyAnna Fali NEW
Leja M NestleUnited KingdomAnna Fali NEW
James P StockhamIndiaBernardo Dominic NEGOTIATION
Juan H FerenczBrazilAsiya Javayant RENEWAL
Rodrigues B MarrierCanadaXuxue Feng RENEWAL
Mayumi A KuskoArgentinaIvan Magalhaes NEGOTIATION
Clifford V BologniaRussiaAmy Elsner QUALIFIED
Jones A BriddickArgentinaIvan Magalhaes RENEWAL
Murillo K BowleyUnited KingdomStephen Shaw UNQUALIFIED
Leon P CaldareraArgentinaAmy Elsner PROPOSAL
Juan Q SaylorsItalyIvan Magalhaes RENEWAL
Jeanfrancois Q GauchoBrazilIoni Bowcher QUALIFIED
Rodrigues L MaletFranceXuxue Feng NEGOTIATION
Aika R AlbaresItalyBernardo Dominic UNQUALIFIED
Clifford Y AmigonSpainIvan Magalhaes PROPOSAL
Sinclair G NickaBrazilAnna Fali UNQUALIFIED
Julie N PerinAustraliaStephen Shaw RENEWAL
Chavez T StockhamCanadaIoni Bowcher NEW
Johnson O GarufiIndiaAmy Elsner UNQUALIFIED
Aditya V BriddickItalyBernardo Dominic PROPOSAL
Johnson K ShinkoAustraliaXuxue Feng NEGOTIATION
Emily Q DarakjyBrazilIoni Bowcher NEGOTIATION
Darci V MarrierUnited KingdomStephen Shaw PROPOSAL
Chavez A PaprockiSpainIvan Magalhaes RENEWAL
Antonio I FollerRussiaAmy Elsner NEW
Smith Y InouyeAustraliaXuxue Feng QUALIFIED
Stacey F RutaCanadaIvan Magalhaes RENEWAL
Jefferson E PoquetteBrazilOnyama Limba NEW
Mayumi O MorascaAustraliaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Deepesh I Kolmetz
Izzy S Caudy
Alejandro W Iturbide
Arvin S Waycott
Leja F Albares
Juan B Doe
Smith T Flosi
Izzy F Bolognia
Tony G Bowley
Aditya S Vocelka
Clifford I Gaucho
Cody F Darakjy
Rodrigues J Rulapaugh
Mayumi E Tollner
Deepesh S Figeroa
Aditya J Albares
Misaki F Gaucho
Kaitlin K Chui
Chavez W Garufi
Mayumi V Campain
Mujtaba O Ferencz
Mayumi D Nicka
Chavez D Chui
Aditya B Stockham
Antonio Z Shinko
James F Butt
Aruna T Darakjy
Adams Y Figeroa
Maria E Doe
Ashley A Foller
Ashley I Perin
Aditya I Caldarera
David M Vocelka
Leon Z Kolmetz
Chavez A Foller
Jeanfrancois M Stenseth
Silvio E Gillian
Morrow T Amigon
Mujtaba Z Waycott
Costa F Morasca
Alejandro C Stockham
Jeanfrancois S Malet
Ricardo O Kusko
Ashley Z Bolognia
Aruna E Albares
Faith W Darakjy
Antonio E Bowley
Aruna H Oldroyd
Jefferson Z Perin
Adams P Shinko
IdCountryDate
1000Argentina2026-05-21
1001United Kingdom2026-06-06
1002Spain2026-05-16
1003United Kingdom2026-05-13
1004Japan2026-05-24
1005Russia2026-05-29
1006France2026-06-07
1007Japan2026-06-06
1008India2026-05-26
1009Germany2026-05-28
1010Japan2026-05-11
1011United Kingdom2026-06-07
1012United Kingdom2026-05-17
1013Argentina2026-05-18
1014Germany2026-06-06
1015Italy2026-06-05
1016Italy2026-06-04
1017Spain2026-06-06
1018Australia2026-06-04
1019Argentina2026-05-23
1020Germany2026-05-16
1021Argentina2026-05-27
1022Italy2026-05-19
1023Russia2026-05-23
1024Australia2026-06-06
1025Australia2026-05-18
1026Japan2026-05-19
1027Germany2026-05-28
1028Russia2026-06-03
1029Spain2026-05-10
1030Russia2026-05-15
1031Brazil2026-05-12
1032Canada2026-05-17
1033Brazil2026-05-22
1034Italy2026-06-01
1035Japan2026-05-24
1036Australia2026-05-18
1037Russia2026-05-09
1038Canada2026-05-31
1039India2026-05-31
1040Italy2026-05-27
1041Australia2026-06-04
1042Germany2026-05-28
1043India2026-05-16
1044Brazil2026-06-03
1045France2026-05-17
1046Japan2026-06-03
1047Japan2026-06-06
1048France2026-05-25
1049Brazil2026-05-12

On-Demand Data

NameIdCountryDate
Leon Y Darakjy1000Argentina2026-06-02
Alejandro X Ostrosky1001India2026-05-25
Costa K Darakjy1002Russia2026-05-22
David G Morasca1003Spain2026-06-02
Jennifer G Ruta1004United Kingdom2026-05-15
Alejandro H Venere1005India2026-05-14
Wickens G Inouye1006Italy2026-05-20
Smith Z Dilliard1007United Kingdom2026-05-29
Jones F Bolognia1008Russia2026-06-01
Francesco L Campain1009Italy2026-06-03
Aruna U Paprocki1010Canada2026-06-04
Alejandro O Inouye1011Spain2026-05-23
Deepesh N Malet1012Brazil2026-06-02
Clifford C Kolmetz1013Japan2026-05-10
Aruna E Ferencz1014India2026-06-05
Rodrigues O Shinko1015India2026-06-03
Izzy T Ruta1016Germany2026-05-18
Morrow W Flosi1017India2026-05-18
Sinclair G Rulapaugh1018France2026-05-21
Aika I Kusko1019Germany2026-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford G KuskoUnited KingdomAnna Fali PROPOSAL
Rodrigues Q GauchoCanadaBernardo Dominic QUALIFIED
Izzy E WhobreyIndiaXuxue Feng RENEWAL
Johnson T AmigonCanadaOnyama Limba QUALIFIED
Alejandro Q BologniaGermanyXuxue Feng NEGOTIATION
Ivar X SchemmerFranceXuxue Feng UNQUALIFIED
Kaitlin V VenereGermanyAmy Elsner NEGOTIATION
Morrow J ChuiItalyBernardo Dominic PROPOSAL
Mayumi D AlbaresRussiaElwin Sharvill NEW
Faith R SergiArgentinaAnna Fali NEW
Kaitlin E CampainAustraliaAmy Elsner NEW
Leja C GarufiUnited KingdomAnna Fali PROPOSAL
Maria W GillianSpainBernardo Dominic UNQUALIFIED
Aruna U SaylorsCanadaAnna Fali RENEWAL
Silvio U PaprockiSpainAsiya Javayant UNQUALIFIED
Sinclair G SergiArgentinaStephen Shaw PROPOSAL
Aruna E FerenczCanadaOnyama Limba PROPOSAL
Mayumi Q CampainRussiaAnna Fali PROPOSAL
Jones A FollerIndiaStephen Shaw UNQUALIFIED
Mayumi P AlbaresCanadaAnna Fali RENEWAL
Claire O IturbideJapanOnyama Limba QUALIFIED
Ashley I GillianItalyIoni Bowcher NEGOTIATION
Deepesh T AmigonCanadaAnna Fali RENEWAL
Costa E DilliardCanadaXuxue Feng UNQUALIFIED
Leon G MacleadRussiaStephen Shaw UNQUALIFIED
Deepesh T PaprockiJapanOnyama Limba PROPOSAL
Murillo A WieserAustraliaIvan Magalhaes PROPOSAL
Nicolas V GauchoRussiaAmy Elsner RENEWAL
Clifford B PaprockiJapanAsiya Javayant RENEWAL
Francesco F InouyeUnited KingdomBernardo Dominic PROPOSAL
Ricardo S FollerIndiaAmy Elsner RENEWAL
Isabel F FerenczItalyStephen Shaw NEGOTIATION
Octavia M PaprockiFranceIoni Bowcher QUALIFIED
Francesco R RoysterBrazilXuxue Feng RENEWAL
Ricardo F NickaSpainXuxue Feng QUALIFIED
Deepesh H SchemmerAustraliaStephen Shaw NEGOTIATION
Ashley Q PerinUnited KingdomElwin Sharvill NEW
Mujtaba G CaldareraAustraliaBernardo Dominic PROPOSAL
Costa P GillianAustraliaIvan Magalhaes NEW
Maisha G WaycottArgentinaAmy Elsner 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.