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
Julie A KolmetzItalyBernardo Dominic NEGOTIATION
Aruna R CampainSpainAnna Fali PROPOSAL
Silvio B RimBrazilOnyama Limba NEW
Johnson T DoeAustraliaAsiya Javayant PROPOSAL
Emily G StockhamIndiaElwin Sharvill RENEWAL
Costa P MaletArgentinaXuxue Feng RENEWAL
Antonio P WieserBrazilBernardo Dominic NEGOTIATION
Alejandro Y PoquetteBrazilAmy Elsner NEW
Kadeem Q AmigonRussiaAsiya Javayant QUALIFIED
Morrow W PoquetteBrazilAmy Elsner NEW
Jeanfrancois I ChuiItalyBernardo Dominic RENEWAL
Costa K FigeroaGermanyAmy Elsner NEW
Darci V GarufiCanadaAsiya Javayant UNQUALIFIED
Ivar Y DoeGermanyOnyama Limba RENEWAL
Tony X GauchoAustraliaXuxue Feng NEW
Misaki M InouyeGermanyOnyama Limba QUALIFIED
Octavia F NestleJapanIvan Magalhaes QUALIFIED
Maisha D RoysterAustraliaXuxue Feng RENEWAL
Greenwood P GillianSpainElwin Sharvill PROPOSAL
Mayumi D RimGermanyIoni Bowcher QUALIFIED
David N ChuiCanadaElwin Sharvill UNQUALIFIED
Chavez J WieserUnited KingdomOnyama Limba PROPOSAL
Ivar A NickaFranceStephen Shaw UNQUALIFIED
Nicolas T WieserGermanyBernardo Dominic RENEWAL
David L WieserAustraliaAsiya Javayant PROPOSAL
Antonio J SaylorsSpainElwin Sharvill NEW
Maisha I AlbaresSpainIvan Magalhaes PROPOSAL
Aruna E PaprockiJapanAmy Elsner QUALIFIED
Smith F BologniaCanadaAmy Elsner UNQUALIFIED
Salvatore P MacleadRussiaXuxue Feng RENEWAL
Arvin F SergiItalyAnna Fali NEGOTIATION
Aditya R KuskoArgentinaAnna Fali QUALIFIED
Munro M NestleSpainOnyama Limba NEW
Leon E DarakjyFranceElwin Sharvill PROPOSAL
Greenwood Z SlusarskiIndiaAnna Fali UNQUALIFIED
Jefferson V WhobreyFranceAnna Fali NEW
Mayumi G WieserCanadaAsiya Javayant UNQUALIFIED
Isabel D KuskoBrazilAsiya Javayant NEW
Adams J DoeAustraliaAsiya Javayant NEGOTIATION
Deepesh M ButtAustraliaAnna Fali RENEWAL
Emily M CampainItalyIoni Bowcher UNQUALIFIED
Jefferson J FerenczArgentinaBernardo Dominic NEW
Kaitlin V MorascaSpainAmy Elsner QUALIFIED
Leon G VenereFranceAmy Elsner RENEWAL
Julie M StensethItalyStephen Shaw UNQUALIFIED
Chavez X DilliardSpainAmy Elsner PROPOSAL
Mayumi Z MorascaArgentinaAsiya Javayant NEW
Stacey R ButtGermanyIoni Bowcher NEW
Kaitlin E BowleyUnited KingdomAmy Elsner NEW
Stacey B CaudyArgentinaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Julie L ChuiSpainBernardo Dominic NEGOTIATION
Maria Y CaudyAustraliaAnna Fali RENEWAL
Morrow H BowleyJapanAnna Fali UNQUALIFIED
Juan U WieserFranceAnna Fali RENEWAL
Tony Q BowleyRussiaAsiya Javayant PROPOSAL
Nicolas W NestleJapanIvan Magalhaes UNQUALIFIED
Misaki W OldroydUnited KingdomIoni Bowcher RENEWAL
Greenwood A CampainUnited KingdomIvan Magalhaes PROPOSAL
Isabel Q RulapaughBrazilIoni Bowcher QUALIFIED
Adams A TollnerFranceXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood X CaudyArgentina2026-06-08Dorl, James J Esq PROPOSAL94Anna Fali
1001Claire W KuskoBrazil2026-05-29Benton, John B Jr QUALIFIED12Asiya Javayant
1002Aditya U FerenczArgentina2026-05-14Commercial Press NEW31Elwin Sharvill
1003Smith L InouyeArgentina2026-05-11Feiner Bros QUALIFIED52Bernardo Dominic
1004Deepesh K SlusarskiItaly2026-05-28Printing Dimensions QUALIFIED27Elwin Sharvill
1005Jefferson N GauchoUnited Kingdom2026-05-16Buckley Miller Wright NEGOTIATION90Anna Fali
1006Rodrigues F FlosiUnited Kingdom2026-06-07Benton, John B Jr QUALIFIED89Onyama Limba
1007Costa B BologniaItaly2026-05-31King, Christopher A Esq RENEWAL8Ivan Magalhaes
1008Arvin P RutaAustralia2026-05-12Chanay, Jeffrey A Esq NEW90Ivan Magalhaes
1009Jefferson C KolmetzArgentina2026-05-25Benton, John B Jr PROPOSAL94Amy Elsner
1010Faith F ButtFrance2026-05-27Morlong Associates NEW48Ioni Bowcher
1011Nicolas N InouyeRussia2026-06-02Dorl, James J Esq UNQUALIFIED22Onyama Limba
1012Isabel G FollerGermany2026-05-20Chapman, Ross E Esq RENEWAL97Ioni Bowcher
1013Costa Q WaycottAustralia2026-06-05Chapman, Ross E Esq NEW73Asiya Javayant
1014Salvatore S BriddickItaly2026-05-16Dorl, James J Esq PROPOSAL19Amy Elsner
1015Deepesh E StensethJapan2026-06-03Dorl, James J Esq RENEWAL46Asiya Javayant
1016Deepesh O CampainSpain2026-05-16Feiner Bros NEGOTIATION3Elwin Sharvill
1017Isabel T GillianUnited Kingdom2026-05-27Morlong Associates QUALIFIED71Elwin Sharvill
1018David N SlusarskiFrance2026-06-02Feiner Bros PROPOSAL43Elwin Sharvill
1019Faith I AlbaresCanada2026-06-03Benton, John B Jr PROPOSAL33Ioni Bowcher
1020Rodrigues K RutaAustralia2026-06-04Morlong Associates NEW42Ivan Magalhaes
1021Murillo C KolmetzSpain2026-05-14Buckley Miller Wright NEGOTIATION78Stephen Shaw
1022Adams P KuskoFrance2026-05-17Truhlar And Truhlar Attys RENEWAL71Anna Fali
1023Silvio Q FlosiUnited Kingdom2026-05-30Rousseaux, Michael Esq RENEWAL28Stephen Shaw
1024Juan P SchemmerItaly2026-06-02Rangoni Of Florence NEGOTIATION53Anna Fali
1025Leon D MorascaItaly2026-05-11Benton, John B Jr UNQUALIFIED68Amy Elsner
1026Stacey T DoeItaly2026-06-05Truhlar And Truhlar Attys UNQUALIFIED99Xuxue Feng
1027Aika A MaletArgentina2026-05-13Printing Dimensions NEGOTIATION38Asiya Javayant
1028Misaki O PoquetteFrance2026-06-08Dorl, James J Esq QUALIFIED20Onyama Limba
1029Tony P PoquetteIndia2026-05-26King, Christopher A Esq QUALIFIED25Ioni Bowcher
1030Antonio T PoquetteIndia2026-05-11Buckley Miller Wright UNQUALIFIED82Asiya Javayant
1031Sinclair C CampainCanada2026-05-23Commercial Press RENEWAL87Stephen Shaw
1032Leon P WieserGermany2026-05-22King, Christopher A Esq NEGOTIATION85Onyama Limba
1033Costa F MarrierCanada2026-06-03Benton, John B Jr RENEWAL8Bernardo Dominic
1034Julie I KuskoBrazil2026-06-02Feiner Bros PROPOSAL23Stephen Shaw
1035Julie G SaylorsCanada2026-05-17Chapman, Ross E Esq NEGOTIATION70Ivan Magalhaes
1036Stacey U FlosiArgentina2026-05-10Rousseaux, Michael Esq RENEWAL88Elwin Sharvill
1037Leon J GauchoArgentina2026-05-11Dorl, James J Esq RENEWAL73Ioni Bowcher
1038Adams V SchemmerSpain2026-05-20Chapman, Ross E Esq UNQUALIFIED36Ioni Bowcher
1039Munro J IturbideArgentina2026-05-15Rangoni Of Florence RENEWAL26Stephen Shaw
1040Smith L FerenczJapan2026-06-05Dorl, James J Esq UNQUALIFIED56Ioni Bowcher
1041Silvio W MorascaRussia2026-05-13Rangoni Of Florence NEGOTIATION75Stephen Shaw
1042Mujtaba R AlbaresItaly2026-05-19Morlong Associates RENEWAL19Onyama Limba
1043Rodrigues Q OldroydFrance2026-05-17Rousseaux, Michael Esq NEW54Ivan Magalhaes
1044Silvio L CampainAustralia2026-05-23Feltz Printing Service NEW97Bernardo Dominic
1045James N SergiRussia2026-06-04Chapman, Ross E Esq NEW0Ioni Bowcher
1046Jeanfrancois C OstroskyFrance2026-05-17Feltz Printing Service QUALIFIED39Bernardo Dominic
1047Clifford P RulapaughCanada2026-06-08Rousseaux, Michael Esq UNQUALIFIED71Xuxue Feng
1048Kadeem C PaprockiFrance2026-05-21Rangoni Of Florence QUALIFIED14Stephen Shaw
1049Jones T BowleyRussia2026-05-19Rousseaux, Michael Esq NEW19Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
David T VenereSpainAnna Fali NEW
Jones E GillianArgentinaOnyama Limba NEGOTIATION
Tony F KuskoJapanStephen Shaw NEGOTIATION
Darci L NickaRussiaIoni Bowcher QUALIFIED
Misaki X StensethArgentinaOnyama Limba PROPOSAL
James O SchemmerBrazilAsiya Javayant RENEWAL
Mujtaba Y FollerItalyElwin Sharvill RENEWAL
Ricardo E MorascaUnited KingdomOnyama Limba RENEWAL
Darci E ShinkoGermanyIoni Bowcher NEGOTIATION
Ashley C PerinJapanAmy Elsner UNQUALIFIED
Ricardo Z PoquetteFranceAsiya Javayant UNQUALIFIED
Wickens J StensethArgentinaOnyama Limba RENEWAL
Maria I PoquetteGermanyAnna Fali NEW
Cody Y SaylorsArgentinaXuxue Feng PROPOSAL
Jeanfrancois H CaldareraIndiaOnyama Limba PROPOSAL
Leja M VenereSpainStephen Shaw RENEWAL
Ashley D DoeJapanAnna Fali UNQUALIFIED
Misaki V NickaGermanyAmy Elsner RENEWAL
Tony I CaudyArgentinaAsiya Javayant NEW
Jones O VocelkaIndiaAsiya Javayant RENEWAL
Chavez L WaycottBrazilOnyama Limba NEW
Cody Q MarrierRussiaIoni Bowcher RENEWAL
Cody V DilliardFranceElwin Sharvill UNQUALIFIED
Juan G RulapaughBrazilIvan Magalhaes UNQUALIFIED
Kaitlin U OstroskyBrazilXuxue Feng NEGOTIATION
Juan I BowleyJapanStephen Shaw NEGOTIATION
Jennifer I PaprockiAustraliaXuxue Feng UNQUALIFIED
Stacey M BriddickAustraliaElwin Sharvill NEGOTIATION
David O MarrierItalyAsiya Javayant RENEWAL
Jennifer L WaycottCanadaStephen Shaw NEW
Deepesh F RutaCanadaOnyama Limba PROPOSAL
Nicolas R NestleItalyIvan Magalhaes RENEWAL
Nicolas S MaletItalyIoni Bowcher NEW
Arvin E SlusarskiCanadaIvan Magalhaes RENEWAL
Rodrigues W BologniaArgentinaBernardo Dominic UNQUALIFIED
Aruna M FlosiFranceIvan Magalhaes QUALIFIED
Alejandro R ShinkoFranceIvan Magalhaes NEW
Munro Q PoquetteIndiaXuxue Feng NEGOTIATION
Ashley H InouyeBrazilIvan Magalhaes NEW
Jones D MacleadFranceIvan Magalhaes PROPOSAL
Emily N PaprockiIndiaAsiya Javayant QUALIFIED
Nicolas W DarakjyRussiaAnna Fali QUALIFIED
Misaki M ShinkoAustraliaOnyama Limba RENEWAL
Mayumi U FerenczSpainAmy Elsner RENEWAL
Greenwood M AmigonCanadaStephen Shaw NEW
Sinclair O StockhamCanadaXuxue Feng QUALIFIED
Smith X IturbideArgentinaAmy Elsner UNQUALIFIED
Smith Y ShinkoBrazilAsiya Javayant UNQUALIFIED
Tony F DilliardCanadaStephen Shaw NEW
Kadeem G MacleadIndiaBernardo Dominic RENEWAL
Frozen Columns
Name
Julie N Caudy
Ivar T Morasca
Kadeem G Iturbide
Aruna Q Doe
Rodrigues H Albares
Mujtaba O Nestle
Kadeem W Sergi
Wickens E Schemmer
Jefferson R Shinko
Ivar C Rim
Aika O Wieser
Munro I Bowley
Claire V Malet
Rodrigues U Nestle
Chavez S Iturbide
Adams Y Morasca
Alejandro W Gillian
Chavez X Shinko
Kadeem D Ferencz
Sinclair M Kolmetz
Darci E Poquette
Cody H Perin
Smith B Figeroa
Wickens J Caldarera
Tony G Waycott
Mujtaba K Sergi
Darci N Doe
Darci A Morasca
Stacey O Inouye
Aika T Sergi
Jennifer H Gillian
Costa R Albares
James I Glick
Aika U Dilliard
Misaki X Whobrey
Ivar Y Vocelka
Ivar Z Foller
Aditya X Flosi
Aruna Q Paprocki
Aditya V Marrier
Maria Z Figeroa
Clifford W Stenseth
Faith S Kolmetz
Jefferson A Stenseth
Tony C Nicka
Ashley O Ostrosky
Leja K Maclead
Claire X Caldarera
Cody K Ferencz
Wickens F Whobrey
IdCountryDate
1000France2026-05-17
1001Germany2026-05-16
1002United Kingdom2026-06-05
1003India2026-05-30
1004Argentina2026-05-26
1005Argentina2026-05-25
1006India2026-05-13
1007Brazil2026-05-11
1008Brazil2026-06-01
1009Canada2026-06-07
1010India2026-06-04
1011Brazil2026-05-29
1012Australia2026-05-29
1013France2026-05-21
1014India2026-06-07
1015Argentina2026-06-01
1016Brazil2026-05-15
1017Canada2026-05-16
1018United Kingdom2026-06-05
1019United Kingdom2026-05-19
1020Germany2026-05-12
1021Russia2026-05-27
1022United Kingdom2026-05-22
1023United Kingdom2026-06-07
1024India2026-05-15
1025Japan2026-05-25
1026United Kingdom2026-05-30
1027France2026-05-10
1028France2026-05-12
1029Argentina2026-05-27
1030Argentina2026-05-19
1031Russia2026-05-30
1032United Kingdom2026-05-10
1033Spain2026-05-27
1034Australia2026-05-16
1035Australia2026-06-08
1036India2026-05-13
1037Russia2026-05-10
1038France2026-05-21
1039Russia2026-05-23
1040India2026-06-04
1041Argentina2026-05-27
1042Russia2026-06-03
1043Australia2026-05-20
1044Japan2026-05-23
1045India2026-05-22
1046Spain2026-05-26
1047France2026-05-21
1048United Kingdom2026-05-25
1049Japan2026-05-12

On-Demand Data

NameIdCountryDate
Greenwood M Nestle1000Australia2026-05-22
Morrow T Slusarski1001Japan2026-05-31
Jeanfrancois H Stockham1002United Kingdom2026-05-26
Jones P Ostrosky1003United Kingdom2026-05-23
Leon L Stenseth1004Australia2026-06-06
Leon T Royster1005Italy2026-05-13
Cody N Kolmetz1006Argentina2026-05-28
Silvio J Foller1007Argentina2026-05-23
Faith U Shinko1008Italy2026-05-19
Alejandro Z Slusarski1009Spain2026-06-03
Mujtaba G Malet1010Australia2026-05-14
Ivar S Albares1011Canada2026-05-21
Greenwood I Bolognia1012Spain2026-05-21
Mujtaba X Saylors1013Canada2026-05-21
Costa G Schemmer1014Brazil2026-05-24
Costa D Tollner1015Brazil2026-05-23
Rodrigues Y Ferencz1016Argentina2026-05-13
Misaki P Poquette1017United Kingdom2026-05-15
Maisha Y Saylors1018Brazil2026-06-04
Murillo K Bowley1019Germany2026-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio T BologniaIndiaIoni Bowcher NEGOTIATION
Isabel Z SlusarskiIndiaBernardo Dominic UNQUALIFIED
Darci I SergiRussiaIoni Bowcher UNQUALIFIED
Salvatore D ShinkoArgentinaAnna Fali NEGOTIATION
Ivar A SchemmerJapanElwin Sharvill PROPOSAL
Maria P WaycottBrazilIoni Bowcher UNQUALIFIED
David J GarufiGermanyIoni Bowcher NEW
Leja Q InouyeRussiaAnna Fali QUALIFIED
Johnson B PerinRussiaIvan Magalhaes UNQUALIFIED
Costa M SchemmerItalyAnna Fali QUALIFIED
Arvin C ButtFranceIoni Bowcher QUALIFIED
Sinclair E TollnerGermanyAsiya Javayant RENEWAL
Arvin D CaudyArgentinaXuxue Feng PROPOSAL
Morrow O KuskoUnited KingdomOnyama Limba PROPOSAL
Silvio A WhobreyUnited KingdomAsiya Javayant NEW
Jefferson H SergiGermanyStephen Shaw RENEWAL
Stacey C PaprockiAustraliaAmy Elsner NEW
Kaitlin V GlickJapanStephen Shaw NEGOTIATION
Jefferson W OstroskyJapanAnna Fali RENEWAL
Johnson Q SaylorsSpainIoni Bowcher QUALIFIED
Jennifer L GillianGermanyAmy Elsner PROPOSAL
Clifford Y BriddickIndiaAsiya Javayant RENEWAL
Tony N DoeJapanAsiya Javayant NEW
Aika U OstroskyArgentinaIvan Magalhaes UNQUALIFIED
Mayumi I StockhamAustraliaBernardo Dominic PROPOSAL
Stacey N SchemmerUnited KingdomOnyama Limba NEW
Stacey E CaudyRussiaBernardo Dominic QUALIFIED
Costa U CaudyItalyAmy Elsner UNQUALIFIED
Sinclair K SaylorsRussiaXuxue Feng UNQUALIFIED
Juan S SchemmerItalyBernardo Dominic NEGOTIATION
Ivar Z MacleadGermanyAnna Fali QUALIFIED
Izzy S WieserIndiaIvan Magalhaes UNQUALIFIED
Deepesh A WhobreyGermanyStephen Shaw QUALIFIED
Morrow Z MarrierCanadaBernardo Dominic NEW
Salvatore T CampainArgentinaAmy Elsner QUALIFIED
Ashley I DarakjyCanadaAsiya Javayant NEW
Jefferson G KuskoAustraliaAmy Elsner UNQUALIFIED
Greenwood Z FlosiBrazilXuxue Feng NEGOTIATION
Deepesh Y VocelkaItalyStephen Shaw PROPOSAL
Izzy H WaycottJapanOnyama 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.