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
Leon P BriddickJapanAnna Fali RENEWAL
Salvatore G RimSpainOnyama Limba NEW
Darci M CaudyFranceOnyama Limba RENEWAL
Darci C SergiUnited KingdomAnna Fali PROPOSAL
Octavia I RulapaughCanadaStephen Shaw PROPOSAL
Kadeem T NestleBrazilAmy Elsner NEGOTIATION
Juan A VenereBrazilBernardo Dominic NEGOTIATION
Maria D FigeroaArgentinaIvan Magalhaes NEGOTIATION
Antonio Y CampainArgentinaIoni Bowcher RENEWAL
Costa N BowleyFranceOnyama Limba QUALIFIED
Jennifer F GillianIndiaOnyama Limba UNQUALIFIED
Deepesh R OstroskyJapanIoni Bowcher UNQUALIFIED
Ivar K WhobreyBrazilOnyama Limba NEGOTIATION
Stacey J DarakjyAustraliaAmy Elsner NEW
Ivar B MaletCanadaIvan Magalhaes NEW
Jeanfrancois I GauchoSpainAnna Fali NEW
Kadeem M CampainRussiaXuxue Feng NEGOTIATION
Jefferson C FigeroaIndiaStephen Shaw QUALIFIED
Cody U CaudyIndiaIoni Bowcher UNQUALIFIED
Morrow S TollnerArgentinaAmy Elsner PROPOSAL
Leja Z OldroydFranceAnna Fali UNQUALIFIED
Jones V KolmetzAustraliaStephen Shaw NEGOTIATION
Faith A DarakjyItalyElwin Sharvill RENEWAL
Salvatore E RimJapanAnna Fali NEGOTIATION
Kadeem T PoquetteUnited KingdomAsiya Javayant PROPOSAL
James G AmigonGermanyIvan Magalhaes NEGOTIATION
Clifford K PaprockiGermanyXuxue Feng QUALIFIED
Izzy K BriddickIndiaIoni Bowcher PROPOSAL
Mayumi O MorascaArgentinaBernardo Dominic RENEWAL
Emily M GauchoSpainAnna Fali UNQUALIFIED
Adams O SaylorsFranceOnyama Limba NEGOTIATION
Emily V BologniaUnited KingdomAmy Elsner PROPOSAL
James O IturbideArgentinaBernardo Dominic QUALIFIED
Maria L MorascaBrazilIoni Bowcher RENEWAL
Greenwood F AlbaresUnited KingdomAsiya Javayant QUALIFIED
Ricardo V FerenczGermanyElwin Sharvill RENEWAL
David I RoysterIndiaAnna Fali QUALIFIED
Leon G WaycottCanadaXuxue Feng QUALIFIED
Arvin I KolmetzFranceXuxue Feng NEGOTIATION
Leja K OstroskyRussiaXuxue Feng NEW
Munro H RulapaughAustraliaAmy Elsner UNQUALIFIED
Costa B DarakjyFranceOnyama Limba QUALIFIED
Maisha J InouyeSpainAsiya Javayant UNQUALIFIED
Jennifer Q FollerCanadaAsiya Javayant QUALIFIED
Juan R ButtItalyXuxue Feng PROPOSAL
Salvatore W MacleadBrazilAnna Fali QUALIFIED
Wickens L DarakjyItalyIvan Magalhaes NEW
Emily C MorascaAustraliaAsiya Javayant UNQUALIFIED
Greenwood Z ButtCanadaElwin Sharvill QUALIFIED
Costa D NestleBrazilElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
James Q MacleadSpainBernardo Dominic NEGOTIATION
Ashley W DilliardFranceBernardo Dominic NEGOTIATION
Johnson E BowleyCanadaIvan Magalhaes UNQUALIFIED
Adams M OstroskyItalyXuxue Feng QUALIFIED
Aika I GillianFranceIoni Bowcher RENEWAL
Greenwood U GarufiFranceAsiya Javayant PROPOSAL
Mujtaba Z InouyeUnited KingdomIoni Bowcher UNQUALIFIED
Arvin B CaudyUnited KingdomXuxue Feng PROPOSAL
Stacey V ChuiCanadaIoni Bowcher PROPOSAL
Misaki K FlosiArgentinaAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson E InouyeRussia2026-05-27Morlong Associates UNQUALIFIED66Anna Fali
1001Clifford S RimRussia2026-05-18Feltz Printing Service NEGOTIATION56Ioni Bowcher
1002Murillo P RimRussia2026-06-13Chanay, Jeffrey A Esq QUALIFIED15Ivan Magalhaes
1003Julie B InouyeBrazil2026-05-23Printing Dimensions PROPOSAL23Amy Elsner
1004Smith N OldroydJapan2026-06-03Commercial Press NEGOTIATION43Bernardo Dominic
1005Morrow C CaudyFrance2026-06-01Feiner Bros QUALIFIED83Ivan Magalhaes
1006Mayumi L DilliardCanada2026-05-30Dorl, James J Esq NEGOTIATION38Bernardo Dominic
1007Johnson H CampainAustralia2026-05-17Feiner Bros PROPOSAL63Xuxue Feng
1008Nicolas A WhobreyUnited Kingdom2026-06-12Truhlar And Truhlar Attys NEW9Elwin Sharvill
1009Mayumi I DilliardArgentina2026-05-20Commercial Press RENEWAL11Elwin Sharvill
1010Octavia I SergiUnited Kingdom2026-05-31Chapman, Ross E Esq UNQUALIFIED42Ioni Bowcher
1011Silvio M InouyeSpain2026-05-21Rangoni Of Florence PROPOSAL76Stephen Shaw
1012Adams U BriddickUnited Kingdom2026-06-08Printing Dimensions RENEWAL7Bernardo Dominic
1013Johnson S MarrierFrance2026-06-12Chanay, Jeffrey A Esq NEW0Elwin Sharvill
1014Greenwood P OldroydSpain2026-05-19Commercial Press PROPOSAL97Asiya Javayant
1015Kaitlin H FlosiGermany2026-05-31Rangoni Of Florence NEW52Ivan Magalhaes
1016Stacey R VenereFrance2026-06-01Buckley Miller Wright PROPOSAL10Onyama Limba
1017Julie B DoeCanada2026-06-14Benton, John B Jr RENEWAL88Xuxue Feng
1018Arvin H CampainGermany2026-05-18Truhlar And Truhlar Attys PROPOSAL91Ioni Bowcher
1019Morrow U CaudySpain2026-05-26Benton, John B Jr QUALIFIED48Onyama Limba
1020Chavez V MorascaJapan2026-05-30Morlong Associates PROPOSAL27Ivan Magalhaes
1021Jefferson P WieserFrance2026-05-23King, Christopher A Esq UNQUALIFIED49Stephen Shaw
1022Stacey M WaycottItaly2026-06-13Feltz Printing Service PROPOSAL27Stephen Shaw
1023Jefferson R FollerItaly2026-06-04Benton, John B Jr PROPOSAL58Asiya Javayant
1024Morrow G SlusarskiRussia2026-05-24Feltz Printing Service QUALIFIED14Ioni Bowcher
1025Adams Z WaycottRussia2026-06-12Truhlar And Truhlar Attys NEGOTIATION9Xuxue Feng
1026Leon P WaycottUnited Kingdom2026-06-07Rangoni Of Florence RENEWAL39Ioni Bowcher
1027Morrow M MacleadAustralia2026-05-25Chanay, Jeffrey A Esq RENEWAL40Anna Fali
1028Jefferson C MaletIndia2026-05-19Truhlar And Truhlar Attys PROPOSAL11Onyama Limba
1029James P FollerFrance2026-05-23Feiner Bros RENEWAL36Xuxue Feng
1030Julie R FerenczSpain2026-06-03King, Christopher A Esq PROPOSAL61Elwin Sharvill
1031Greenwood T KolmetzCanada2026-06-04King, Christopher A Esq PROPOSAL53Ivan Magalhaes
1032Tony E AmigonGermany2026-05-20Rousseaux, Michael Esq QUALIFIED44Elwin Sharvill
1033Aditya Z GauchoCanada2026-06-15Chanay, Jeffrey A Esq QUALIFIED93Asiya Javayant
1034Ashley S InouyeRussia2026-06-04Commercial Press QUALIFIED83Onyama Limba
1035Wickens N ShinkoArgentina2026-05-20Printing Dimensions NEGOTIATION37Anna Fali
1036Izzy Z AlbaresCanada2026-05-20Printing Dimensions QUALIFIED18Stephen Shaw
1037Leon H SchemmerItaly2026-06-06Printing Dimensions NEGOTIATION63Stephen Shaw
1038Chavez P FerenczGermany2026-05-22Chapman, Ross E Esq UNQUALIFIED50Ioni Bowcher
1039Mayumi Z OstroskyCanada2026-06-13Benton, John B Jr NEW25Asiya Javayant
1040Isabel F RimCanada2026-06-08Printing Dimensions PROPOSAL84Asiya Javayant
1041Smith I IturbideSpain2026-06-14Truhlar And Truhlar Attys NEGOTIATION99Bernardo Dominic
1042Kadeem C MorascaCanada2026-06-05Benton, John B Jr QUALIFIED35Ivan Magalhaes
1043Leja I BologniaRussia2026-05-22Truhlar And Truhlar Attys UNQUALIFIED47Bernardo Dominic
1044Alejandro P RutaItaly2026-06-03Benton, John B Jr QUALIFIED62Ivan Magalhaes
1045Leja Z ChuiArgentina2026-06-03Morlong Associates NEGOTIATION51Ivan Magalhaes
1046Izzy K NickaUnited Kingdom2026-05-23King, Christopher A Esq NEGOTIATION19Bernardo Dominic
1047Deepesh P CampainBrazil2026-06-04Chanay, Jeffrey A Esq NEW0Stephen Shaw
1048Mujtaba B BowleyIndia2026-05-22King, Christopher A Esq NEW79Ioni Bowcher
1049Isabel P MacleadFrance2026-05-31Buckley Miller Wright NEW86Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Izzy M DarakjyJapanStephen Shaw NEW
Jeanfrancois M TollnerCanadaOnyama Limba PROPOSAL
Kaitlin A WhobreyGermanyAmy Elsner UNQUALIFIED
Francesco P NestleFranceAmy Elsner QUALIFIED
Johnson S IturbideAustraliaAnna Fali PROPOSAL
Greenwood F FlosiIndiaXuxue Feng UNQUALIFIED
Juan V KolmetzAustraliaStephen Shaw QUALIFIED
Jeanfrancois K CaldareraBrazilBernardo Dominic NEW
Aditya S OldroydIndiaIoni Bowcher PROPOSAL
James G SlusarskiJapanIoni Bowcher NEGOTIATION
Mayumi D CaudyJapanStephen Shaw UNQUALIFIED
Aruna J SergiFranceStephen Shaw NEGOTIATION
Rodrigues Y PoquetteBrazilAsiya Javayant UNQUALIFIED
Darci G WhobreyUnited KingdomAmy Elsner UNQUALIFIED
Sinclair M ShinkoFranceOnyama Limba PROPOSAL
Kadeem Y MarrierJapanXuxue Feng UNQUALIFIED
Francesco T WieserBrazilOnyama Limba PROPOSAL
Alejandro B KolmetzSpainStephen Shaw NEW
Ricardo M MarrierIndiaIoni Bowcher NEGOTIATION
Claire G MarrierJapanAsiya Javayant NEW
Greenwood A MacleadGermanyIvan Magalhaes PROPOSAL
Ivar P ChuiGermanyIvan Magalhaes PROPOSAL
Kaitlin Q MaletSpainElwin Sharvill QUALIFIED
Aditya I BowleyAustraliaOnyama Limba PROPOSAL
Claire V FerenczSpainBernardo Dominic NEW
Kaitlin G ShinkoUnited KingdomStephen Shaw NEGOTIATION
Emily P SergiArgentinaIoni Bowcher QUALIFIED
Munro E GlickBrazilBernardo Dominic RENEWAL
Emily J RoysterJapanIoni Bowcher PROPOSAL
Juan G WieserRussiaAsiya Javayant NEGOTIATION
Silvio R RoysterFranceAmy Elsner NEGOTIATION
Leon L WieserBrazilAsiya Javayant UNQUALIFIED
Costa V RulapaughItalyAsiya Javayant PROPOSAL
Mujtaba M AmigonBrazilOnyama Limba PROPOSAL
Morrow R AmigonIndiaOnyama Limba PROPOSAL
Maria A ShinkoJapanOnyama Limba QUALIFIED
Emily K OldroydFranceOnyama Limba UNQUALIFIED
Wickens N InouyeAustraliaIoni Bowcher UNQUALIFIED
Faith L MaletUnited KingdomAnna Fali RENEWAL
Sinclair H TollnerCanadaIoni Bowcher NEW
Smith M BriddickGermanyElwin Sharvill UNQUALIFIED
Julie T CaldareraFranceBernardo Dominic NEW
Aruna G AmigonRussiaAsiya Javayant QUALIFIED
Claire N PaprockiBrazilAmy Elsner RENEWAL
Jennifer E WaycottRussiaElwin Sharvill NEGOTIATION
Leja I AlbaresBrazilAsiya Javayant RENEWAL
James E NestleUnited KingdomIvan Magalhaes RENEWAL
Wickens X MarrierRussiaXuxue Feng NEGOTIATION
Ivar M GillianJapanElwin Sharvill QUALIFIED
Alejandro H WaycottUnited KingdomAmy Elsner PROPOSAL
Frozen Columns
Name
Deepesh G Gaucho
Clifford Y Malet
Aika M Oldroyd
Ivar K Glick
Nicolas J Stockham
Arvin T Poquette
Leon S Poquette
Sinclair X Whobrey
Johnson X Iturbide
Stacey Z Malet
Rodrigues Y Nestle
Leja Q Gaucho
Cody I Rim
Clifford O Waycott
Aditya V Poquette
David B Nicka
Tony L Sergi
Ivar V Doe
Aruna W Bowley
Ricardo F Ruta
Mayumi L Albares
Salvatore J Caudy
Antonio E Figeroa
Ashley F Stenseth
Munro J Malet
Mujtaba M Malet
Faith Z Foller
Alejandro F Poquette
Jeanfrancois Y Nestle
Mayumi A Darakjy
Arvin K Poquette
Maisha X Paprocki
Jones F Nestle
James H Waycott
Ricardo H Malet
Leon B Royster
Adams M Shinko
Juan Y Nestle
Maisha D Glick
Misaki P Kusko
Deepesh M Rim
Darci C Paprocki
James S Kusko
Antonio L Rulapaugh
Jones Q Doe
Jefferson V Oldroyd
Mayumi M Campain
Johnson T Venere
Johnson Y Chui
Deepesh T Kusko
IdCountryDate
1000Argentina2026-06-10
1001United Kingdom2026-05-25
1002Germany2026-05-29
1003Japan2026-05-20
1004Japan2026-05-30
1005Brazil2026-05-31
1006Japan2026-06-10
1007Japan2026-06-08
1008Japan2026-06-10
1009Spain2026-05-27
1010Argentina2026-05-22
1011Argentina2026-06-15
1012Australia2026-06-10
1013France2026-05-20
1014Argentina2026-06-14
1015France2026-06-01
1016Japan2026-06-06
1017Australia2026-06-14
1018Japan2026-06-01
1019Spain2026-05-29
1020Italy2026-06-10
1021Spain2026-06-04
1022India2026-05-23
1023Argentina2026-05-27
1024Italy2026-05-24
1025Germany2026-05-21
1026Japan2026-06-03
1027Japan2026-05-18
1028Italy2026-05-24
1029Russia2026-05-28
1030France2026-05-18
1031Australia2026-06-09
1032Canada2026-05-18
1033Japan2026-05-31
1034Argentina2026-05-17
1035Argentina2026-05-29
1036Australia2026-06-01
1037Russia2026-05-18
1038United Kingdom2026-05-22
1039Italy2026-06-13
1040Germany2026-06-12
1041France2026-06-02
1042Australia2026-05-28
1043India2026-06-06
1044Brazil2026-05-24
1045Canada2026-06-02
1046Argentina2026-05-21
1047Japan2026-05-25
1048Spain2026-05-23
1049Brazil2026-05-30

On-Demand Data

NameIdCountryDate
Leja C Amigon1000Argentina2026-05-30
Ricardo B Flosi1001Russia2026-05-19
Izzy A Ferencz1002Australia2026-05-20
Deepesh Z Figeroa1003Spain2026-06-03
Salvatore Y Oldroyd1004Japan2026-05-19
Antonio N Wieser1005Canada2026-05-26
Kaitlin I Chui1006Argentina2026-06-05
Antonio K Rulapaugh1007Japan2026-06-15
Morrow F Foller1008France2026-06-02
Ivar O Stenseth1009France2026-06-05
Nicolas Y Rim1010United Kingdom2026-06-12
Juan C Wieser1011India2026-05-29
Kaitlin W Amigon1012Japan2026-05-19
Octavia D Doe1013Italy2026-05-30
Sinclair A Flosi1014India2026-06-13
Faith G Chui1015Canada2026-06-15
Jeanfrancois A Poquette1016Germany2026-06-10
Octavia R Oldroyd1017Brazil2026-06-14
Kadeem C Figeroa1018United Kingdom2026-06-11
Costa Y Kusko1019Brazil2026-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo Q GauchoGermanyElwin Sharvill NEW
Greenwood E CaudyCanadaElwin Sharvill PROPOSAL
Munro C KuskoSpainAsiya Javayant NEGOTIATION
Antonio Z OstroskySpainStephen Shaw NEW
Ashley M GillianItalyBernardo Dominic QUALIFIED
Arvin N RimCanadaStephen Shaw RENEWAL
Julie V WaycottJapanOnyama Limba PROPOSAL
Silvio R AmigonAustraliaOnyama Limba RENEWAL
Morrow F MaletCanadaBernardo Dominic UNQUALIFIED
Izzy H ShinkoIndiaElwin Sharvill RENEWAL
Ashley K ButtUnited KingdomAnna Fali NEW
Antonio L BologniaRussiaAmy Elsner RENEWAL
Sinclair R IturbideItalyXuxue Feng RENEWAL
Jones B IturbideCanadaOnyama Limba UNQUALIFIED
Tony X MarrierGermanyStephen Shaw UNQUALIFIED
Kaitlin S BriddickRussiaAnna Fali RENEWAL
Francesco L SergiItalyOnyama Limba RENEWAL
Rodrigues N KuskoArgentinaAsiya Javayant QUALIFIED
Ashley N SlusarskiArgentinaIvan Magalhaes UNQUALIFIED
Juan E WieserGermanyAnna Fali NEW
Emily K DarakjyCanadaXuxue Feng NEW
Jones Q GauchoCanadaOnyama Limba UNQUALIFIED
Silvio I ShinkoAustraliaStephen Shaw NEW
David J WaycottFranceIvan Magalhaes NEW
Kaitlin J GauchoAustraliaIoni Bowcher UNQUALIFIED
Aditya E AmigonJapanXuxue Feng UNQUALIFIED
Leon E InouyeIndiaIoni Bowcher QUALIFIED
Misaki M CaudyCanadaBernardo Dominic NEW
Greenwood I MorascaCanadaAmy Elsner QUALIFIED
Faith K KolmetzFranceAmy Elsner RENEWAL
Ricardo Q CaldareraGermanyAmy Elsner RENEWAL
Munro D CampainBrazilAmy Elsner NEW
Misaki Q RulapaughSpainStephen Shaw QUALIFIED
Julie S PaprockiUnited KingdomElwin Sharvill UNQUALIFIED
Leja R OstroskyJapanBernardo Dominic PROPOSAL
Mayumi V MarrierCanadaIoni Bowcher NEW
Johnson B MarrierCanadaIoni Bowcher NEGOTIATION
Julie H DarakjyBrazilIvan Magalhaes UNQUALIFIED
Maria S OldroydJapanAsiya Javayant NEW
Tony F OstroskyAustraliaAsiya Javayant 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.