November Deals: Limited Coupons Available! 🎁 Claim Your Coupon

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
Bangla
Bosnian
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
Uzbek
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Blue Saga Blue
Vela Blue Vela Blue
Arya Blue Arya Blue
Bootstrap
Bootstrap Blue Light Bootstrap Blue Light
Bootstrap Purple Light Bootstrap Purple Light
Bootstrap Blue Dark Bootstrap Blue Dark
Bootstrap Purple Dark Bootstrap Purple Dark
Material Design
Material Indigo Light Material Indigo Light
Material Deep Purple Light Material Deep Purple Light
Material Indigo Dark Material Indigo Dark
Material Deep Purple Dark Material Deep Purple Dark
Material Design Compact
Material Compact Indigo Light Material Compact Indigo Light
Material Compact Deep Purple Light Material Compact Deep Purple Light
Material Compact Indigo Dark Material Compact Indigo Dark
Material Compact Deep Purple Dark Material Compact Deep Purple Dark
Legacy
Nova Light Nova Light
Nova Dark Nova Dark
Nova Colored Nova Colored
Luna Amber Luna Amber
Luna Blue Luna Blue
Luna Green Luna Green
Luna Pink Luna Pink

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Greenwood Q WaycottAustraliaIoni Bowcher RENEWAL
Mayumi B AmigonCanadaAmy Elsner QUALIFIED
Faith L OstroskyItalyAnna Fali NEGOTIATION
Cody R RulapaughRussiaElwin Sharvill PROPOSAL
Mujtaba N FollerJapanElwin Sharvill NEW
Jeanfrancois E CampainCanadaIoni Bowcher NEGOTIATION
Ashley G KolmetzUnited KingdomOnyama Limba QUALIFIED
Izzy H RulapaughCanadaOnyama Limba NEW
Kadeem G FerenczItalyBernardo Dominic NEW
Ricardo T BologniaIndiaBernardo Dominic PROPOSAL
Darci V PerinSpainStephen Shaw PROPOSAL
Octavia T MaletArgentinaAsiya Javayant UNQUALIFIED
Rodrigues K StockhamFranceBernardo Dominic QUALIFIED
Murillo B MacleadSpainBernardo Dominic NEGOTIATION
Stacey M SergiAustraliaStephen Shaw NEGOTIATION
Faith A CaldareraIndiaAmy Elsner NEGOTIATION
Maria G FigeroaBrazilStephen Shaw NEGOTIATION
Izzy N StensethCanadaIvan Magalhaes RENEWAL
Cody N DoeBrazilElwin Sharvill PROPOSAL
Maria N OstroskyArgentinaAsiya Javayant RENEWAL
Smith B DilliardIndiaOnyama Limba PROPOSAL
Nicolas B KolmetzSpainStephen Shaw QUALIFIED
Maisha N GarufiRussiaElwin Sharvill QUALIFIED
David Z CampainArgentinaAmy Elsner NEGOTIATION
Deepesh X NickaUnited KingdomAnna Fali PROPOSAL
Arvin X OstroskyRussiaIvan Magalhaes NEW
Murillo M MarrierCanadaAnna Fali QUALIFIED
Mayumi C StensethUnited KingdomIvan Magalhaes QUALIFIED
David A CaudyUnited KingdomAmy Elsner QUALIFIED
Aika O DoeUnited KingdomStephen Shaw NEGOTIATION
Maisha X SaylorsBrazilXuxue Feng PROPOSAL
Kadeem R NestleIndiaStephen Shaw RENEWAL
Wickens A WhobreyGermanyIvan Magalhaes RENEWAL
Murillo F VocelkaBrazilBernardo Dominic NEGOTIATION
Alejandro M InouyeRussiaBernardo Dominic NEGOTIATION
Smith D StensethAustraliaXuxue Feng NEW
Johnson S WieserUnited KingdomAmy Elsner RENEWAL
Morrow V ChuiBrazilIoni Bowcher PROPOSAL
James X DoeItalyIoni Bowcher RENEWAL
Leon W SergiGermanyBernardo Dominic NEGOTIATION
Leja U OstroskyBrazilElwin Sharvill UNQUALIFIED
Antonio W ButtRussiaAsiya Javayant RENEWAL
Jefferson P NestleJapanIvan Magalhaes RENEWAL
Ricardo X BowleyBrazilBernardo Dominic UNQUALIFIED
Leon E MarrierSpainAsiya Javayant NEGOTIATION
Kadeem R BowleyArgentinaAmy Elsner NEGOTIATION
Nicolas D ShinkoJapanBernardo Dominic QUALIFIED
Rodrigues B NestleBrazilIoni Bowcher UNQUALIFIED
David A BologniaBrazilAnna Fali PROPOSAL
Arvin S AlbaresAustraliaXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leja I SchemmerAustraliaElwin Sharvill NEGOTIATION
Ashley I PoquetteArgentinaOnyama Limba RENEWAL
Costa N CaldareraJapanAnna Fali NEGOTIATION
Cody B FlosiArgentinaElwin Sharvill NEGOTIATION
Chavez U BologniaSpainAnna Fali RENEWAL
Stacey Y InouyeAustraliaAmy Elsner PROPOSAL
Salvatore P RutaJapanIvan Magalhaes RENEWAL
Maisha O KuskoSpainIvan Magalhaes RENEWAL
Emily Y RulapaughAustraliaXuxue Feng PROPOSAL
Cody Y WieserBrazilIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel C RulapaughArgentina2026-10-07Rousseaux, Michael Esq NEGOTIATION29Bernardo Dominic
1001Isabel J GillianUnited Kingdom2026-10-11Truhlar And Truhlar Attys UNQUALIFIED93Anna Fali
1002Salvatore L GauchoJapan2026-10-31Truhlar And Truhlar Attys NEGOTIATION71Bernardo Dominic
1003Stacey F MaletIndia2026-10-25Commercial Press PROPOSAL9Elwin Sharvill
1004Greenwood S MaletUnited Kingdom2026-10-23Dorl, James J Esq RENEWAL75Bernardo Dominic
1005Arvin E OldroydItaly2026-10-14Chanay, Jeffrey A Esq NEW96Stephen Shaw
1006Maisha E BriddickItaly2026-10-20Commercial Press QUALIFIED87Elwin Sharvill
1007Maria X PaprockiIndia2026-10-16Commercial Press UNQUALIFIED19Stephen Shaw
1008Jefferson Z GarufiIndia2026-10-12Printing Dimensions RENEWAL65Xuxue Feng
1009Morrow L SchemmerBrazil2026-10-11Chemel, James L Cpa NEW96Anna Fali
1010Cody P GillianRussia2026-10-16Feiner Bros QUALIFIED60Ioni Bowcher
1011Jefferson Z DoeUnited Kingdom2026-10-11King, Christopher A Esq PROPOSAL75Elwin Sharvill
1012Emily Y MaletRussia2026-10-15King, Christopher A Esq NEW94Anna Fali
1013Faith J CampainGermany2026-10-08King, Christopher A Esq NEW21Bernardo Dominic
1014Adams F NestleArgentina2026-10-29King, Christopher A Esq NEGOTIATION95Stephen Shaw
1015Salvatore T PaprockiAustralia2026-10-26Feltz Printing Service NEW79Bernardo Dominic
1016Costa Z DoeFrance2026-10-23Rangoni Of Florence QUALIFIED19Anna Fali
1017David D TollnerItaly2026-11-04Chemel, James L Cpa QUALIFIED23Ioni Bowcher
1018Silvio X IturbideFrance2026-10-11Rousseaux, Michael Esq NEW4Ioni Bowcher
1019Aruna Y CaldareraBrazil2026-10-16Morlong Associates NEGOTIATION32Xuxue Feng
1020Silvio D WaycottGermany2026-10-25Chapman, Ross E Esq NEGOTIATION66Amy Elsner
1021Aruna K InouyeCanada2026-10-18Rangoni Of Florence QUALIFIED79Anna Fali
1022Julie B VocelkaFrance2026-10-15Chemel, James L Cpa PROPOSAL7Asiya Javayant
1023Mayumi F BologniaCanada2026-11-03Buckley Miller Wright RENEWAL31Anna Fali
1024Aruna U AmigonBrazil2026-10-07Benton, John B Jr QUALIFIED71Stephen Shaw
1025Julie Q GauchoIndia2026-10-19Chanay, Jeffrey A Esq QUALIFIED70Onyama Limba
1026Ricardo L MacleadSpain2026-11-04Chemel, James L Cpa NEGOTIATION96Bernardo Dominic
1027Murillo F GillianItaly2026-10-21Commercial Press NEW23Onyama Limba
1028Sinclair S RutaIndia2026-10-30Chanay, Jeffrey A Esq NEW92Onyama Limba
1029Ivar D GarufiJapan2026-10-30Commercial Press PROPOSAL63Elwin Sharvill
1030Cody A KuskoFrance2026-10-19Chemel, James L Cpa RENEWAL40Ioni Bowcher
1031Aika B MaletCanada2026-10-20Chemel, James L Cpa QUALIFIED79Anna Fali
1032Deepesh X StockhamArgentina2026-10-12Dorl, James J Esq NEW97Ivan Magalhaes
1033Sinclair W StensethUnited Kingdom2026-10-22Truhlar And Truhlar Attys NEW87Ivan Magalhaes
1034Misaki G VocelkaUnited Kingdom2026-10-27Chapman, Ross E Esq PROPOSAL68Elwin Sharvill
1035Clifford K RutaSpain2026-10-30Chemel, James L Cpa QUALIFIED72Ivan Magalhaes
1036Deepesh C ShinkoFrance2026-10-28Chemel, James L Cpa PROPOSAL30Stephen Shaw
1037Maria Z RulapaughAustralia2026-10-29Commercial Press UNQUALIFIED88Bernardo Dominic
1038David K MaletSpain2026-11-03Benton, John B Jr PROPOSAL49Onyama Limba
1039Clifford D GillianItaly2026-10-20Printing Dimensions NEW94Asiya Javayant
1040Cody M GarufiGermany2026-10-06Buckley Miller Wright UNQUALIFIED35Anna Fali
1041Mayumi D BologniaAustralia2026-10-22Feiner Bros RENEWAL11Amy Elsner
1042Maria A KolmetzArgentina2026-11-03Chapman, Ross E Esq UNQUALIFIED88Stephen Shaw
1043Antonio C SchemmerIndia2026-10-21Rangoni Of Florence PROPOSAL69Bernardo Dominic
1044Juan T RutaRussia2026-11-02Dorl, James J Esq NEGOTIATION39Ioni Bowcher
1045Maisha U KuskoSpain2026-10-26Commercial Press QUALIFIED45Ivan Magalhaes
1046Maria M ChuiAustralia2026-11-03Chanay, Jeffrey A Esq UNQUALIFIED64Ivan Magalhaes
1047Misaki L PoquetteBrazil2026-10-11Chapman, Ross E Esq NEGOTIATION40Xuxue Feng
1048Jennifer F RimIndia2026-11-03Rangoni Of Florence UNQUALIFIED88Xuxue Feng
1049Sinclair S RimItaly2026-11-02Commercial Press UNQUALIFIED85Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Juan A AlbaresCanadaXuxue Feng NEGOTIATION
Chavez E PoquetteUnited KingdomStephen Shaw PROPOSAL
Mujtaba B TollnerItalyBernardo Dominic QUALIFIED
Juan D NestleRussiaBernardo Dominic PROPOSAL
Izzy P MarrierIndiaElwin Sharvill NEGOTIATION
Kadeem O NickaSpainElwin Sharvill NEW
Leon U SaylorsUnited KingdomIvan Magalhaes NEGOTIATION
Kaitlin N AlbaresRussiaAmy Elsner NEGOTIATION
Johnson A WieserAustraliaElwin Sharvill NEW
Deepesh B GauchoAustraliaElwin Sharvill QUALIFIED
Izzy X MarrierFranceStephen Shaw UNQUALIFIED
Claire Y OldroydRussiaStephen Shaw RENEWAL
Alejandro R MaletItalyBernardo Dominic UNQUALIFIED
James B WieserIndiaBernardo Dominic QUALIFIED
James A MarrierIndiaAmy Elsner RENEWAL
Cody D WhobreyUnited KingdomXuxue Feng NEW
Munro M ButtCanadaElwin Sharvill QUALIFIED
Isabel D FerenczIndiaBernardo Dominic NEGOTIATION
Ivar M WhobreyGermanyAnna Fali NEW
Julie T VenereAustraliaBernardo Dominic UNQUALIFIED
Emily P WhobreyItalyIvan Magalhaes RENEWAL
Ivar U StensethGermanyAsiya Javayant NEW
Kaitlin Z CaudyAustraliaIvan Magalhaes PROPOSAL
Isabel Y StockhamArgentinaAmy Elsner NEW
Nicolas Y FerenczItalyIoni Bowcher NEGOTIATION
Leja F SchemmerGermanyIoni Bowcher NEW
Emily S OldroydRussiaXuxue Feng RENEWAL
Claire D DoeCanadaBernardo Dominic QUALIFIED
Johnson R BologniaRussiaIoni Bowcher NEGOTIATION
Sinclair B RutaUnited KingdomBernardo Dominic UNQUALIFIED
Faith W SlusarskiRussiaOnyama Limba NEW
Jeanfrancois R FlosiAustraliaAsiya Javayant RENEWAL
Silvio M MarrierGermanyAmy Elsner NEW
Jefferson K FollerGermanyBernardo Dominic NEGOTIATION
David Y DarakjyIndiaIvan Magalhaes PROPOSAL
Ivar D PerinBrazilBernardo Dominic NEGOTIATION
Nicolas C MorascaUnited KingdomStephen Shaw QUALIFIED
Ivar U KuskoArgentinaAsiya Javayant NEGOTIATION
David F MorascaArgentinaIoni Bowcher RENEWAL
Faith O GauchoRussiaElwin Sharvill NEGOTIATION
Emily S WaycottGermanyAsiya Javayant NEW
Munro K SlusarskiRussiaAmy Elsner NEW
Murillo Z NestleFranceAsiya Javayant PROPOSAL
Arvin D DoeArgentinaStephen Shaw UNQUALIFIED
Juan F FigeroaFranceStephen Shaw PROPOSAL
Octavia B RulapaughJapanOnyama Limba UNQUALIFIED
Leja R FlosiFranceAnna Fali NEW
Julie J SaylorsJapanIoni Bowcher NEGOTIATION
Deepesh I VenereItalyAnna Fali RENEWAL
Smith Q SergiIndiaIvan Magalhaes NEW
Frozen Columns
Name
Emily S Flosi
Maria O Ostrosky
Smith P Ostrosky
Isabel N Malet
Tony K Foller
Tony M Briddick
Deepesh X Sergi
Alejandro T Marrier
Greenwood O Garufi
Jones R Royster
Ivar T Dilliard
Aika G Gaucho
Maisha T Wieser
Murillo Z Iturbide
Greenwood I Slusarski
Leja Q Dilliard
Aika E Kusko
Silvio F Stockham
Greenwood B Wieser
Smith Q Morasca
Ricardo R Nicka
Costa N Stenseth
Aditya Z Butt
Octavia E Rim
Francesco C Bolognia
Julie J Malet
Jones V Butt
Stacey M Poquette
Jones T Stenseth
Murillo E Kusko
Deepesh U Kusko
Izzy W Doe
Arvin B Kolmetz
Leja Z Campain
Isabel D Gillian
Greenwood E Vocelka
Jennifer I Tollner
Johnson F Nicka
Leja B Caudy
Rodrigues B Darakjy
Stacey W Amigon
Misaki W Sergi
Adams L Doe
Misaki D Vocelka
Claire Q Wieser
Aika D Tollner
Tony O Vocelka
James N Ostrosky
Cody R Nestle
Mujtaba N Gillian
IdCountryDate
1000Italy2026-10-18
1001Italy2026-10-24
1002United Kingdom2026-10-06
1003Spain2026-10-16
1004Italy2026-10-11
1005United Kingdom2026-10-20
1006Canada2026-10-26
1007Canada2026-10-26
1008United Kingdom2026-11-04
1009Italy2026-10-29
1010Russia2026-10-23
1011Australia2026-10-10
1012India2026-10-09
1013Brazil2026-10-19
1014Italy2026-10-11
1015France2026-10-22
1016Canada2026-10-29
1017France2026-10-09
1018Germany2026-10-08
1019Italy2026-11-01
1020Brazil2026-10-20
1021Argentina2026-11-04
1022Australia2026-10-28
1023India2026-10-26
1024Canada2026-10-22
1025United Kingdom2026-11-03
1026Australia2026-11-02
1027United Kingdom2026-11-03
1028Germany2026-10-18
1029Japan2026-10-12
1030France2026-10-11
1031Germany2026-10-09
1032Russia2026-10-11
1033Spain2026-10-31
1034Brazil2026-10-29
1035Canada2026-10-31
1036France2026-10-26
1037Germany2026-10-08
1038Argentina2026-10-27
1039Brazil2026-10-22
1040United Kingdom2026-10-06
1041Spain2026-10-22
1042France2026-10-20
1043Argentina2026-10-12
1044Australia2026-10-28
1045Canada2026-10-22
1046United Kingdom2026-11-02
1047Australia2026-10-31
1048Germany2026-10-12
1049Germany2026-10-09

On-Demand Data

NameIdCountryDate
Jennifer S Amigon1000Canada2026-10-10
Stacey Z Whobrey1001Canada2026-10-27
Jones T Doe1002Germany2026-10-06
Wickens G Garufi1003Canada2026-10-13
Leon L Gaucho1004United Kingdom2026-10-09
Silvio C Chui1005Canada2026-10-19
Johnson G Bolognia1006Spain2026-11-03
Juan B Albares1007India2026-10-26
Rodrigues X Poquette1008United Kingdom2026-10-24
Kadeem J Wieser1009United Kingdom2026-10-31
Ricardo G Garufi1010Japan2026-10-14
Nicolas H Kusko1011Argentina2026-10-14
Clifford P Gillian1012Japan2026-10-08
Chavez Q Butt1013Italy2026-10-08
Chavez O Rim1014Japan2026-10-11
Nicolas U Poquette1015Italy2026-10-17
Francesco F Garufi1016Australia2026-10-25
Sinclair X Butt1017Spain2026-10-20
Nicolas Y Malet1018Canada2026-10-13
Salvatore W Darakjy1019Brazil2026-10-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams Y StockhamFranceStephen Shaw NEW
Chavez J PerinItalyElwin Sharvill PROPOSAL
Ricardo J CaldareraRussiaBernardo Dominic NEGOTIATION
Maria J CaldareraSpainOnyama Limba QUALIFIED
Greenwood D DilliardIndiaOnyama Limba NEGOTIATION
Greenwood Z FerenczBrazilXuxue Feng PROPOSAL
Greenwood C GlickUnited KingdomStephen Shaw NEGOTIATION
Francesco M VenereGermanyAmy Elsner NEW
Francesco R StensethItalyIvan Magalhaes UNQUALIFIED
Julie O WieserCanadaBernardo Dominic UNQUALIFIED
Tony H SlusarskiCanadaAsiya Javayant NEGOTIATION
Julie A RutaIndiaAnna Fali QUALIFIED
Salvatore U PerinGermanyAmy Elsner PROPOSAL
Maria S SergiAustraliaStephen Shaw UNQUALIFIED
Aika N KuskoRussiaAnna Fali NEW
Ashley E GauchoFranceBernardo Dominic RENEWAL
Clifford J WhobreyAustraliaBernardo Dominic NEGOTIATION
Greenwood Z WhobreyArgentinaAmy Elsner NEW
Ivar M KolmetzBrazilAsiya Javayant PROPOSAL
Aditya Z RimJapanStephen Shaw RENEWAL
Kaitlin S CampainUnited KingdomXuxue Feng NEW
Smith S GillianJapanAnna Fali NEW
Ivar L PerinArgentinaStephen Shaw NEGOTIATION
Munro G GauchoIndiaOnyama Limba NEW
Leon S CaldareraUnited KingdomIvan Magalhaes RENEWAL
Octavia F DarakjyRussiaIoni Bowcher QUALIFIED
Jennifer J VocelkaItalyOnyama Limba UNQUALIFIED
Jennifer N CaldareraArgentinaBernardo Dominic NEW
Jones Q MaletArgentinaStephen Shaw UNQUALIFIED
Faith K PaprockiBrazilAnna Fali UNQUALIFIED
Alejandro C TollnerRussiaOnyama Limba RENEWAL
Ivar S PerinIndiaAsiya Javayant RENEWAL
Smith K DilliardIndiaIoni Bowcher RENEWAL
Smith M AlbaresCanadaAsiya Javayant NEW
Clifford B MaletFranceIoni Bowcher PROPOSAL
Stacey W PoquetteUnited KingdomAsiya Javayant UNQUALIFIED
Aruna T CaldareraGermanyOnyama Limba PROPOSAL
Cody G OldroydGermanyBernardo Dominic RENEWAL
Isabel G MaletUnited KingdomAnna Fali NEGOTIATION
James H ShinkoItalyBernardo Dominic RENEWAL

<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" frozenColumnsAlignment="left">
            <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>