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
Mayumi O GauchoGermanyIvan Magalhaes NEGOTIATION
Ricardo E GlickJapanOnyama Limba RENEWAL
Emily P KuskoGermanyIoni Bowcher RENEWAL
Murillo K WaycottGermanyBernardo Dominic RENEWAL
Clifford C GauchoAustraliaOnyama Limba NEGOTIATION
Alejandro L GillianItalyXuxue Feng NEW
Misaki O GarufiIndiaIvan Magalhaes UNQUALIFIED
Leon N WieserGermanyOnyama Limba PROPOSAL
Cody P GauchoAustraliaIvan Magalhaes NEW
Arvin U BologniaAustraliaElwin Sharvill RENEWAL
Ivar T CaldareraCanadaAmy Elsner QUALIFIED
Jennifer S MaletSpainAnna Fali QUALIFIED
Cody G RulapaughIndiaBernardo Dominic NEGOTIATION
Salvatore G BriddickIndiaBernardo Dominic NEGOTIATION
Leon T MorascaFranceIoni Bowcher PROPOSAL
Juan H IturbideBrazilAsiya Javayant NEW
James T KuskoRussiaStephen Shaw RENEWAL
Stacey Y FerenczUnited KingdomAmy Elsner QUALIFIED
Wickens G CaudyBrazilIoni Bowcher NEGOTIATION
Cody I IturbideRussiaAsiya Javayant PROPOSAL
Isabel I BowleyUnited KingdomAsiya Javayant RENEWAL
Costa V RoysterJapanAsiya Javayant QUALIFIED
Silvio X KolmetzRussiaStephen Shaw RENEWAL
Adams T GauchoCanadaStephen Shaw QUALIFIED
Costa V SlusarskiJapanElwin Sharvill NEGOTIATION
Clifford C BowleyAustraliaAnna Fali PROPOSAL
Octavia X BriddickGermanyAnna Fali QUALIFIED
Julie T RoysterCanadaOnyama Limba RENEWAL
Rodrigues T PaprockiArgentinaXuxue Feng QUALIFIED
Johnson I GauchoArgentinaOnyama Limba QUALIFIED
Jefferson P ButtIndiaIoni Bowcher PROPOSAL
Maria Q SchemmerIndiaElwin Sharvill PROPOSAL
Kaitlin J FerenczFranceAnna Fali UNQUALIFIED
Deepesh Q TollnerBrazilAsiya Javayant NEGOTIATION
Ashley J BowleySpainOnyama Limba NEW
Jeanfrancois Q DarakjyUnited KingdomAmy Elsner RENEWAL
Chavez G MaletItalyElwin Sharvill RENEWAL
Octavia Q OstroskyCanadaBernardo Dominic QUALIFIED
Aika G NestleAustraliaOnyama Limba QUALIFIED
Aditya C GauchoCanadaBernardo Dominic QUALIFIED
Faith Q VenereFranceAnna Fali UNQUALIFIED
Murillo P PerinItalyBernardo Dominic NEGOTIATION
Maria A StensethJapanIvan Magalhaes QUALIFIED
Silvio Q StensethBrazilXuxue Feng NEW
Octavia V PerinGermanyStephen Shaw RENEWAL
Jeanfrancois L SaylorsGermanyAnna Fali QUALIFIED
Mujtaba F PoquetteAustraliaStephen Shaw NEW
Izzy I NestleItalyAnna Fali NEGOTIATION
Wickens H BowleyAustraliaAsiya Javayant QUALIFIED
Isabel H WhobreyBrazilBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja D FollerArgentinaBernardo Dominic PROPOSAL
David B CaldareraGermanyAmy Elsner UNQUALIFIED
Rodrigues E KolmetzGermanyAnna Fali QUALIFIED
Isabel D OldroydItalyStephen Shaw UNQUALIFIED
Faith G SlusarskiFranceElwin Sharvill NEGOTIATION
Darci K KuskoArgentinaAmy Elsner NEGOTIATION
Leon D BowleyCanadaOnyama Limba NEGOTIATION
Ivar Q InouyeIndiaElwin Sharvill PROPOSAL
Julie I RoysterItalyOnyama Limba RENEWAL
Ashley R KolmetzIndiaOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois R BriddickUnited Kingdom2026-05-31Benton, John B Jr RENEWAL95Ioni Bowcher
1001Aditya Z DarakjyGermany2026-06-20Commercial Press PROPOSAL92Ivan Magalhaes
1002Maisha A WhobreyFrance2026-05-31Rousseaux, Michael Esq RENEWAL36Asiya Javayant
1003Greenwood P StensethIndia2026-06-13Printing Dimensions NEGOTIATION37Stephen Shaw
1004Arvin W StockhamAustralia2026-06-01Chanay, Jeffrey A Esq PROPOSAL57Elwin Sharvill
1005Smith R WhobreyRussia2026-06-11Printing Dimensions NEW31Anna Fali
1006Leja S IturbideArgentina2026-06-02Truhlar And Truhlar Attys QUALIFIED82Amy Elsner
1007Morrow M IturbideAustralia2026-06-03Truhlar And Truhlar Attys NEGOTIATION20Asiya Javayant
1008Clifford R VocelkaBrazil2026-06-06Benton, John B Jr RENEWAL65Stephen Shaw
1009Maria Z OldroydSpain2026-05-30Chapman, Ross E Esq PROPOSAL65Amy Elsner
1010Munro W SaylorsIndia2026-06-01Printing Dimensions NEW55Elwin Sharvill
1011Salvatore X RutaIndia2026-06-23Commercial Press QUALIFIED18Elwin Sharvill
1012Jefferson Z KolmetzJapan2026-06-01Feiner Bros UNQUALIFIED78Amy Elsner
1013Morrow C MarrierBrazil2026-06-07Chanay, Jeffrey A Esq NEW6Asiya Javayant
1014Aditya O SergiSpain2026-06-15Chemel, James L Cpa QUALIFIED78Xuxue Feng
1015Tony H SaylorsFrance2026-06-02King, Christopher A Esq RENEWAL44Anna Fali
1016Kadeem D AmigonGermany2026-06-26Morlong Associates PROPOSAL49Asiya Javayant
1017Murillo V CampainAustralia2026-06-17Rangoni Of Florence UNQUALIFIED74Bernardo Dominic
1018Ashley Y TollnerCanada2026-06-16Truhlar And Truhlar Attys UNQUALIFIED36Elwin Sharvill
1019Costa O MorascaRussia2026-06-05Rangoni Of Florence UNQUALIFIED88Ioni Bowcher
1020Rodrigues F TollnerRussia2026-06-27Feltz Printing Service UNQUALIFIED13Ivan Magalhaes
1021Mujtaba N DoeItaly2026-06-18Printing Dimensions NEGOTIATION66Ivan Magalhaes
1022Tony O NestleItaly2026-06-19Rousseaux, Michael Esq NEW31Asiya Javayant
1023Claire A SlusarskiGermany2026-06-26Rousseaux, Michael Esq NEW58Xuxue Feng
1024Clifford I RulapaughSpain2026-06-25Feltz Printing Service UNQUALIFIED40Amy Elsner
1025Sinclair U CaudyUnited Kingdom2026-06-11Chapman, Ross E Esq QUALIFIED60Elwin Sharvill
1026Alejandro J SaylorsSpain2026-06-19Truhlar And Truhlar Attys RENEWAL24Onyama Limba
1027Clifford G MorascaUnited Kingdom2026-06-17Rangoni Of Florence QUALIFIED31Ioni Bowcher
1028Isabel D OldroydArgentina2026-06-27Commercial Press UNQUALIFIED27Bernardo Dominic
1029Kadeem W IturbideSpain2026-06-26Morlong Associates UNQUALIFIED74Stephen Shaw
1030Wickens Z CampainJapan2026-06-23King, Christopher A Esq RENEWAL46Ivan Magalhaes
1031Johnson G MaletGermany2026-06-12Rangoni Of Florence PROPOSAL82Asiya Javayant
1032Leja H ButtFrance2026-06-06Benton, John B Jr NEW14Anna Fali
1033Murillo G CaudyItaly2026-05-29Chemel, James L Cpa UNQUALIFIED71Ivan Magalhaes
1034Clifford J InouyeUnited Kingdom2026-06-08Dorl, James J Esq RENEWAL65Xuxue Feng
1035Ricardo F VocelkaArgentina2026-06-22Feltz Printing Service UNQUALIFIED46Xuxue Feng
1036Munro P SaylorsSpain2026-06-15Rangoni Of Florence QUALIFIED72Xuxue Feng
1037Leja I CampainItaly2026-06-03Benton, John B Jr NEGOTIATION92Ioni Bowcher
1038Arvin Q ChuiUnited Kingdom2026-06-16Dorl, James J Esq NEW66Asiya Javayant
1039James R FigeroaJapan2026-06-03Buckley Miller Wright NEGOTIATION78Ioni Bowcher
1040Jeanfrancois A FerenczSpain2026-06-23Chemel, James L Cpa PROPOSAL32Amy Elsner
1041Clifford E CampainBrazil2026-06-03Rousseaux, Michael Esq PROPOSAL65Asiya Javayant
1042Mujtaba G SergiBrazil2026-06-12Chemel, James L Cpa NEGOTIATION7Xuxue Feng
1043Arvin K MacleadAustralia2026-06-06Printing Dimensions NEW70Ivan Magalhaes
1044Maria F DoeUnited Kingdom2026-06-18Chapman, Ross E Esq NEGOTIATION26Bernardo Dominic
1045Maisha X TollnerAustralia2026-06-18Benton, John B Jr NEGOTIATION26Asiya Javayant
1046Juan Y BowleyBrazil2026-06-18Commercial Press RENEWAL46Bernardo Dominic
1047Wickens Y CaldareraIndia2026-06-05Dorl, James J Esq QUALIFIED50Asiya Javayant
1048Nicolas B CaudyJapan2026-06-27Benton, John B Jr RENEWAL89Onyama Limba
1049Aditya K AmigonSpain2026-06-02Rousseaux, Michael Esq QUALIFIED26Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Leon X WhobreyGermanyIoni Bowcher RENEWAL
Antonio D MarrierSpainBernardo Dominic UNQUALIFIED
Chavez Y WieserSpainIoni Bowcher NEGOTIATION
Morrow D ChuiGermanyOnyama Limba NEW
Cody A InouyeBrazilAnna Fali PROPOSAL
Rodrigues P SchemmerRussiaAnna Fali NEW
Wickens J IturbideItalyIoni Bowcher NEW
Claire W MaletRussiaElwin Sharvill UNQUALIFIED
Maisha H NickaItalyAnna Fali QUALIFIED
Jennifer T AlbaresSpainAnna Fali NEGOTIATION
Mujtaba D IturbideUnited KingdomAmy Elsner NEW
Faith F RutaFranceOnyama Limba NEGOTIATION
Ashley T FollerSpainAmy Elsner UNQUALIFIED
Alejandro Q FlosiGermanyElwin Sharvill RENEWAL
Arvin J PoquetteAustraliaXuxue Feng RENEWAL
Arvin W RutaIndiaIoni Bowcher UNQUALIFIED
Ivar I FlosiBrazilElwin Sharvill RENEWAL
Jennifer X DilliardArgentinaBernardo Dominic UNQUALIFIED
Maria L MorascaIndiaAmy Elsner QUALIFIED
Aruna R PoquetteRussiaXuxue Feng PROPOSAL
Julie J GauchoSpainIvan Magalhaes NEGOTIATION
Jeanfrancois P GauchoJapanBernardo Dominic NEGOTIATION
Jeanfrancois O MaletArgentinaAsiya Javayant QUALIFIED
Costa L OstroskyIndiaIvan Magalhaes NEGOTIATION
Johnson L AmigonSpainBernardo Dominic RENEWAL
Chavez P RulapaughRussiaAsiya Javayant PROPOSAL
Ashley A VocelkaRussiaXuxue Feng NEGOTIATION
Kaitlin A CaudyCanadaElwin Sharvill RENEWAL
Darci Q GillianArgentinaElwin Sharvill NEW
Deepesh C PerinFranceAsiya Javayant PROPOSAL
David P CaudyIndiaIvan Magalhaes QUALIFIED
Greenwood Z StensethJapanStephen Shaw PROPOSAL
Julie I GillianJapanAmy Elsner UNQUALIFIED
Wickens F BriddickUnited KingdomAmy Elsner NEGOTIATION
Maria Y KuskoIndiaIoni Bowcher NEW
Mayumi W ShinkoIndiaBernardo Dominic PROPOSAL
Kadeem T VocelkaArgentinaXuxue Feng PROPOSAL
Emily Z KuskoFranceAsiya Javayant UNQUALIFIED
Wickens K PaprockiFranceBernardo Dominic NEW
Greenwood W NickaGermanyIoni Bowcher RENEWAL
Rodrigues X NestleIndiaElwin Sharvill UNQUALIFIED
Isabel I FigeroaJapanElwin Sharvill QUALIFIED
Jefferson G OldroydUnited KingdomElwin Sharvill QUALIFIED
Nicolas L AmigonRussiaElwin Sharvill UNQUALIFIED
Greenwood L WaycottCanadaXuxue Feng NEGOTIATION
Munro C RulapaughUnited KingdomOnyama Limba NEGOTIATION
Kaitlin Q KolmetzCanadaIvan Magalhaes UNQUALIFIED
Aditya L MaletUnited KingdomXuxue Feng UNQUALIFIED
Clifford L DoeGermanyAmy Elsner NEW
Mayumi M OldroydIndiaXuxue Feng UNQUALIFIED
Frozen Columns
Name
Morrow Z Foller
Salvatore T Rim
Aika L Maclead
Stacey F Morasca
Rodrigues I Venere
Antonio A Rulapaugh
Smith N Campain
James K Nicka
Jeanfrancois N Amigon
Salvatore Y Campain
Mayumi D Chui
Aika P Ferencz
Adams I Bowley
Maria M Gillian
Wickens X Royster
Greenwood E Poquette
Tony Q Saylors
Nicolas N Ostrosky
Rodrigues J Kusko
Silvio A Bolognia
David X Briddick
Salvatore C Ferencz
Jefferson R Saylors
Maria V Doe
Aditya X Garufi
James L Vocelka
Jennifer M Paprocki
James C Perin
Cody Q Flosi
Sinclair Q Maclead
Morrow V Slusarski
Aika M Maclead
Deepesh P Figeroa
Ivar O Schemmer
Nicolas I Campain
Murillo A Campain
David T Glick
Ivar E Chui
Smith K Kolmetz
Tony G Stockham
Munro U Rim
Murillo H Tollner
Ricardo W Iturbide
James C Rim
Maisha R Royster
Alejandro D Briddick
Sinclair M Perin
Tony F Paprocki
Morrow Q Ruta
Julie Y Marrier
IdCountryDate
1000Italy2026-06-09
1001Canada2026-06-25
1002Argentina2026-06-05
1003Brazil2026-06-12
1004Canada2026-06-10
1005France2026-06-02
1006Italy2026-06-20
1007Japan2026-06-25
1008Brazil2026-06-08
1009Germany2026-06-24
1010Italy2026-06-07
1011Canada2026-06-26
1012Spain2026-06-01
1013Argentina2026-06-12
1014Japan2026-06-26
1015Argentina2026-06-04
1016Italy2026-06-02
1017India2026-06-06
1018India2026-06-17
1019United Kingdom2026-06-23
1020United Kingdom2026-06-02
1021Canada2026-06-06
1022Japan2026-06-18
1023Japan2026-06-01
1024Germany2026-06-24
1025United Kingdom2026-06-05
1026Spain2026-06-23
1027Brazil2026-06-19
1028Argentina2026-06-08
1029Russia2026-06-19
1030Italy2026-06-15
1031Brazil2026-06-09
1032Australia2026-05-29
1033Argentina2026-06-17
1034Russia2026-06-12
1035Japan2026-06-23
1036Russia2026-06-18
1037Argentina2026-06-20
1038France2026-06-22
1039Argentina2026-06-21
1040Spain2026-05-29
1041Spain2026-06-24
1042Argentina2026-05-30
1043Canada2026-06-22
1044France2026-06-18
1045Canada2026-06-16
1046France2026-06-22
1047India2026-06-15
1048India2026-06-14
1049United Kingdom2026-05-31

On-Demand Data

NameIdCountryDate
Jones J Ruta1000United Kingdom2026-06-15
Jennifer L Maclead1001Spain2026-06-08
Izzy I Sergi1002Japan2026-06-16
Morrow J Figeroa1003Australia2026-06-10
Aditya G Flosi1004Spain2026-06-01
Deepesh N Schemmer1005United Kingdom2026-06-06
Julie I Inouye1006Australia2026-06-16
Rodrigues S Schemmer1007Argentina2026-06-21
Murillo E Garufi1008France2026-06-10
Jeanfrancois I Whobrey1009Germany2026-06-24
Jones H Albares1010India2026-06-01
Aika T Rulapaugh1011Canada2026-06-05
Clifford V Butt1012India2026-06-14
Juan P Kolmetz1013Italy2026-05-31
Misaki H Nestle1014Germany2026-06-15
Maisha T Briddick1015Argentina2026-05-30
Emily X Venere1016Brazil2026-06-23
Octavia F Dilliard1017India2026-05-29
Silvio W Flosi1018Russia2026-06-03
Claire V Campain1019Japan2026-06-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Munro S TollnerItalyAmy Elsner RENEWAL
Mujtaba W GauchoAustraliaBernardo Dominic PROPOSAL
Faith M StockhamJapanAnna Fali RENEWAL
Johnson T StockhamGermanyAmy Elsner PROPOSAL
Mayumi I PerinCanadaIvan Magalhaes QUALIFIED
Chavez R MarrierCanadaAmy Elsner UNQUALIFIED
Jennifer G SaylorsIndiaXuxue Feng QUALIFIED
James K StensethSpainOnyama Limba UNQUALIFIED
Aika W NickaUnited KingdomStephen Shaw NEW
Misaki S OstroskyBrazilStephen Shaw PROPOSAL
Salvatore G WhobreyFranceAmy Elsner RENEWAL
Clifford Q NestleIndiaElwin Sharvill UNQUALIFIED
Greenwood V WaycottRussiaAnna Fali UNQUALIFIED
Salvatore J IturbideItalyAnna Fali RENEWAL
Jones H StockhamFranceStephen Shaw UNQUALIFIED
Mayumi K PaprockiArgentinaAnna Fali NEW
Nicolas B WhobreyArgentinaElwin Sharvill NEW
Alejandro J WhobreyUnited KingdomAnna Fali NEGOTIATION
Mayumi K BologniaSpainStephen Shaw UNQUALIFIED
Julie S DilliardArgentinaXuxue Feng NEGOTIATION
Mujtaba Q GillianRussiaElwin Sharvill NEGOTIATION
Ivar O AmigonIndiaIoni Bowcher NEW
Stacey F SergiSpainOnyama Limba PROPOSAL
Francesco C GlickUnited KingdomElwin Sharvill QUALIFIED
James G DarakjyArgentinaAsiya Javayant UNQUALIFIED
David B OldroydBrazilIvan Magalhaes RENEWAL
Alejandro I RulapaughFranceAsiya Javayant NEGOTIATION
Jeanfrancois M CaldareraRussiaIoni Bowcher PROPOSAL
Aditya Z StockhamRussiaXuxue Feng QUALIFIED
Jefferson Y GlickJapanOnyama Limba UNQUALIFIED
Kadeem V MaletSpainAnna Fali PROPOSAL
Claire Y VenereJapanAsiya Javayant PROPOSAL
Mayumi D DilliardUnited KingdomStephen Shaw RENEWAL
Clifford Z CampainJapanElwin Sharvill NEW
Deepesh I FerenczIndiaAsiya Javayant UNQUALIFIED
Aditya O AlbaresAustraliaAnna Fali PROPOSAL
Salvatore G CaudyCanadaAnna Fali QUALIFIED
Rodrigues T PoquetteIndiaAnna Fali UNQUALIFIED
Mayumi N CampainAustraliaStephen Shaw NEW
Wickens X NestleFranceBernardo Dominic NEGOTIATION

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