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
Adams B FerenczRussiaBernardo Dominic UNQUALIFIED
Julie K GarufiBrazilAmy Elsner NEGOTIATION
David K SchemmerBrazilStephen Shaw NEGOTIATION
Antonio J IturbideBrazilStephen Shaw PROPOSAL
Salvatore H DoeRussiaOnyama Limba QUALIFIED
Jefferson D RulapaughBrazilIvan Magalhaes RENEWAL
Ricardo S GauchoSpainStephen Shaw PROPOSAL
Clifford A CaldareraItalyAmy Elsner NEGOTIATION
Adams S DarakjyFranceElwin Sharvill PROPOSAL
Costa T DilliardBrazilOnyama Limba UNQUALIFIED
Silvio S FigeroaCanadaAsiya Javayant NEW
Ricardo P InouyeSpainIoni Bowcher PROPOSAL
James W WhobreyItalyAnna Fali QUALIFIED
Aditya L RulapaughCanadaAsiya Javayant RENEWAL
David C MaletAustraliaAsiya Javayant PROPOSAL
Maria V KuskoItalyIvan Magalhaes NEGOTIATION
Faith L WieserFranceBernardo Dominic PROPOSAL
Salvatore T DilliardRussiaAsiya Javayant PROPOSAL
Ashley C ShinkoSpainOnyama Limba RENEWAL
Jefferson Q RulapaughBrazilAmy Elsner UNQUALIFIED
Jefferson I GarufiJapanElwin Sharvill NEGOTIATION
Sinclair Q VocelkaAustraliaXuxue Feng RENEWAL
Nicolas J OstroskyIndiaIoni Bowcher QUALIFIED
Misaki D CampainGermanyStephen Shaw RENEWAL
Octavia Q BowleyRussiaStephen Shaw RENEWAL
Maisha X DoeJapanOnyama Limba NEGOTIATION
Costa P SergiAustraliaAmy Elsner NEW
Johnson K MaletIndiaXuxue Feng RENEWAL
Costa T ChuiRussiaXuxue Feng NEGOTIATION
Jefferson B SaylorsJapanOnyama Limba NEW
Clifford N VocelkaRussiaBernardo Dominic UNQUALIFIED
Morrow H RulapaughCanadaAsiya Javayant NEGOTIATION
Adams U MacleadBrazilBernardo Dominic RENEWAL
James E GarufiRussiaBernardo Dominic UNQUALIFIED
Morrow G VocelkaSpainXuxue Feng NEW
Julie N RulapaughItalyIvan Magalhaes NEW
Juan O WieserBrazilAsiya Javayant QUALIFIED
Munro J DoeRussiaOnyama Limba QUALIFIED
Kadeem N AlbaresJapanOnyama Limba PROPOSAL
Aika B VocelkaIndiaIvan Magalhaes NEGOTIATION
Isabel E BologniaItalyXuxue Feng QUALIFIED
Juan I AlbaresSpainStephen Shaw QUALIFIED
Jones Q CampainBrazilIvan Magalhaes RENEWAL
Antonio X DoeUnited KingdomIoni Bowcher UNQUALIFIED
Sinclair U MorascaSpainOnyama Limba NEGOTIATION
Octavia B GarufiArgentinaStephen Shaw UNQUALIFIED
Jennifer C ChuiArgentinaOnyama Limba NEGOTIATION
Sinclair A BowleyIndiaElwin Sharvill QUALIFIED
Julie O ButtJapanBernardo Dominic PROPOSAL
James P DilliardItalyAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Johnson W BowleyRussiaOnyama Limba UNQUALIFIED
Deepesh A DarakjyBrazilBernardo Dominic NEGOTIATION
Izzy L GauchoGermanyElwin Sharvill RENEWAL
Jeanfrancois W MacleadSpainAsiya Javayant UNQUALIFIED
Izzy J RutaArgentinaOnyama Limba NEGOTIATION
Smith N FigeroaUnited KingdomOnyama Limba RENEWAL
Salvatore A MaletItalyAmy Elsner UNQUALIFIED
Misaki M MacleadBrazilIvan Magalhaes NEGOTIATION
Smith K WaycottSpainXuxue Feng RENEWAL
Wickens J SlusarskiAustraliaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki L DoeIndia2026-10-08Commercial Press NEW34Onyama Limba
1001Silvio C SaylorsRussia2026-10-15Commercial Press NEGOTIATION40Stephen Shaw
1002Leja Q GauchoJapan2026-10-12Morlong Associates RENEWAL12Ioni Bowcher
1003Deepesh E InouyeBrazil2026-10-29Truhlar And Truhlar Attys UNQUALIFIED55Stephen Shaw
1004Salvatore I BriddickFrance2026-10-29Rousseaux, Michael Esq NEGOTIATION17Asiya Javayant
1005Misaki K BologniaRussia2026-10-11Chemel, James L Cpa QUALIFIED18Amy Elsner
1006Murillo D ShinkoItaly2026-11-04Chemel, James L Cpa PROPOSAL42Onyama Limba
1007Jones S GauchoBrazil2026-10-19Buckley Miller Wright UNQUALIFIED8Ioni Bowcher
1008Leon Q TollnerFrance2026-10-20Printing Dimensions RENEWAL77Elwin Sharvill
1009Mayumi D OstroskyGermany2026-10-27Rangoni Of Florence RENEWAL95Asiya Javayant
1010Maria M GarufiItaly2026-10-25King, Christopher A Esq RENEWAL39Anna Fali
1011Aruna X CaudyItaly2026-11-04Buckley Miller Wright PROPOSAL28Anna Fali
1012Costa M PoquetteGermany2026-10-24Buckley Miller Wright QUALIFIED18Amy Elsner
1013Ashley B FlosiFrance2026-10-10Chanay, Jeffrey A Esq QUALIFIED65Stephen Shaw
1014Stacey N CampainJapan2026-10-08Feltz Printing Service NEW22Ioni Bowcher
1015Leja Y DoeIndia2026-10-31Morlong Associates QUALIFIED36Ivan Magalhaes
1016Munro R PoquetteRussia2026-10-23Chemel, James L Cpa NEGOTIATION71Onyama Limba
1017Jefferson E KolmetzJapan2026-10-21Feiner Bros PROPOSAL33Stephen Shaw
1018Rodrigues D FerenczGermany2026-10-08Rangoni Of Florence QUALIFIED43Xuxue Feng
1019Murillo W CampainIndia2026-10-31Feltz Printing Service UNQUALIFIED31Ivan Magalhaes
1020Juan Z PerinArgentina2026-10-24Chapman, Ross E Esq NEGOTIATION90Xuxue Feng
1021Stacey N VenereRussia2026-10-11Chemel, James L Cpa PROPOSAL49Bernardo Dominic
1022Wickens O StensethUnited Kingdom2026-10-28Feiner Bros QUALIFIED75Stephen Shaw
1023Aika U ChuiUnited Kingdom2026-11-02Dorl, James J Esq PROPOSAL67Anna Fali
1024Aruna C MorascaJapan2026-10-23King, Christopher A Esq UNQUALIFIED39Ioni Bowcher
1025Adams U NestleCanada2026-10-14Chemel, James L Cpa PROPOSAL5Anna Fali
1026Munro E DilliardAustralia2026-10-12Benton, John B Jr UNQUALIFIED22Ivan Magalhaes
1027Aruna V PaprockiArgentina2026-10-22Feiner Bros NEGOTIATION95Ioni Bowcher
1028Johnson K MaletFrance2026-10-15Rangoni Of Florence NEW47Asiya Javayant
1029David X InouyeIndia2026-10-27Feltz Printing Service NEGOTIATION35Asiya Javayant
1030James M MaletJapan2026-11-05Truhlar And Truhlar Attys NEGOTIATION54Onyama Limba
1031Jeanfrancois X VenereSpain2026-11-04King, Christopher A Esq NEW59Ivan Magalhaes
1032Jennifer M BowleyBrazil2026-10-09Chapman, Ross E Esq NEGOTIATION38Onyama Limba
1033Isabel L GarufiUnited Kingdom2026-10-23Buckley Miller Wright UNQUALIFIED25Xuxue Feng
1034Ricardo W WhobreySpain2026-10-25Chapman, Ross E Esq NEGOTIATION85Bernardo Dominic
1035Alejandro Q SlusarskiIndia2026-10-10Rangoni Of Florence QUALIFIED29Xuxue Feng
1036Nicolas P GillianUnited Kingdom2026-10-18Chanay, Jeffrey A Esq QUALIFIED8Bernardo Dominic
1037Nicolas B OstroskySpain2026-10-29Chemel, James L Cpa QUALIFIED8Amy Elsner
1038Misaki H CaudyGermany2026-10-21Feiner Bros PROPOSAL31Asiya Javayant
1039Tony I WhobreyJapan2026-10-23Morlong Associates NEGOTIATION39Bernardo Dominic
1040Arvin A ButtRussia2026-10-19Truhlar And Truhlar Attys NEW22Xuxue Feng
1041Leja H SergiItaly2026-11-05Feltz Printing Service RENEWAL89Anna Fali
1042David J AmigonSpain2026-11-06King, Christopher A Esq RENEWAL77Anna Fali
1043Arvin B DoeArgentina2026-10-29Buckley Miller Wright UNQUALIFIED64Ivan Magalhaes
1044Mujtaba I SaylorsIndia2026-10-26Dorl, James J Esq QUALIFIED60Anna Fali
1045Claire N PoquetteIndia2026-10-16Rousseaux, Michael Esq NEGOTIATION39Ivan Magalhaes
1046Juan X ShinkoJapan2026-10-14King, Christopher A Esq NEGOTIATION1Onyama Limba
1047Nicolas Q SaylorsUnited Kingdom2026-10-18Rousseaux, Michael Esq RENEWAL45Ivan Magalhaes
1048Deepesh K WieserRussia2026-10-30Rousseaux, Michael Esq NEGOTIATION90Anna Fali
1049Sinclair J PoquetteUnited Kingdom2026-11-03Chapman, Ross E Esq NEGOTIATION26Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Juan B ChuiIndiaAsiya Javayant RENEWAL
Smith O DilliardRussiaIvan Magalhaes UNQUALIFIED
Smith C OstroskyGermanyAmy Elsner UNQUALIFIED
Tony L MaletFranceXuxue Feng PROPOSAL
Jones Z MaletSpainIoni Bowcher PROPOSAL
Nicolas E ShinkoGermanyAnna Fali PROPOSAL
Murillo D MacleadItalyBernardo Dominic RENEWAL
Cody R TollnerGermanyBernardo Dominic PROPOSAL
Aruna K ShinkoItalyIoni Bowcher RENEWAL
Kadeem I VocelkaGermanyAnna Fali PROPOSAL
Silvio G InouyeItalyStephen Shaw NEGOTIATION
Jefferson O SchemmerIndiaOnyama Limba PROPOSAL
Morrow P InouyeSpainAnna Fali PROPOSAL
Julie Z DilliardBrazilXuxue Feng RENEWAL
Misaki L VocelkaJapanStephen Shaw NEGOTIATION
Isabel M VenereGermanyStephen Shaw NEGOTIATION
David I BowleyRussiaIoni Bowcher NEW
Izzy N MaletRussiaAmy Elsner NEW
Maisha T SchemmerItalyAnna Fali NEGOTIATION
Arvin T MaletCanadaAmy Elsner QUALIFIED
Tony X NickaCanadaStephen Shaw RENEWAL
Munro Y PerinFranceIoni Bowcher QUALIFIED
Arvin T MarrierUnited KingdomElwin Sharvill PROPOSAL
Cody Q GarufiFranceOnyama Limba RENEWAL
Deepesh R DoeBrazilBernardo Dominic UNQUALIFIED
Maria F VocelkaArgentinaOnyama Limba NEW
Jefferson C AmigonItalyStephen Shaw PROPOSAL
Costa J AmigonIndiaBernardo Dominic NEW
Jennifer V DilliardArgentinaOnyama Limba UNQUALIFIED
Aika E DilliardIndiaXuxue Feng UNQUALIFIED
Ashley H VenereArgentinaXuxue Feng UNQUALIFIED
Nicolas Z GlickUnited KingdomIvan Magalhaes PROPOSAL
Izzy P SchemmerAustraliaIvan Magalhaes RENEWAL
Jennifer U BriddickUnited KingdomAsiya Javayant QUALIFIED
Greenwood I BowleyRussiaAnna Fali RENEWAL
Julie W RutaItalyStephen Shaw RENEWAL
Jeanfrancois M DarakjyArgentinaStephen Shaw NEGOTIATION
Jones L RutaUnited KingdomXuxue Feng QUALIFIED
Aruna F SergiAustraliaXuxue Feng NEGOTIATION
Stacey B VenereAustraliaIoni Bowcher NEW
Arvin N GauchoIndiaElwin Sharvill PROPOSAL
Jennifer V SchemmerIndiaAmy Elsner NEW
Wickens I SergiIndiaAmy Elsner NEW
Morrow I PerinIndiaStephen Shaw NEW
Darci N RimIndiaElwin Sharvill NEW
Deepesh Z WaycottSpainAmy Elsner PROPOSAL
Emily Z IturbideIndiaOnyama Limba NEW
Munro N DoeIndiaXuxue Feng PROPOSAL
Sinclair F AmigonAustraliaAsiya Javayant PROPOSAL
Maria R DoeRussiaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Silvio B Gillian
Chavez X Garufi
Juan Z Stockham
Aruna R Caudy
Murillo U Albares
Aditya N Albares
Julie T Saylors
Francesco T Whobrey
Jennifer N Darakjy
Aika A Flosi
Murillo N Ostrosky
Wickens V Malet
Arvin W Sergi
Emily D Stockham
Isabel N Doe
Ivar J Schemmer
Ashley S Ruta
Julie G Tollner
Munro U Slusarski
Jennifer Q Paprocki
Jeanfrancois A Gaucho
Kaitlin M Ostrosky
David D Slusarski
Jefferson M Briddick
David B Malet
Mayumi S Dilliard
Faith S Ruta
Julie S Foller
Jennifer P Bolognia
Leon D Malet
Ashley J Butt
Ashley D Bowley
Darci H Darakjy
Rodrigues N Iturbide
Claire B Perin
Wickens R Bowley
David C Nestle
David E Stenseth
Misaki S Stockham
Aika D Figeroa
Misaki Z Wieser
Mujtaba O Saylors
Octavia E Rulapaugh
Cody P Stenseth
Johnson I Glick
Jennifer N Gillian
Wickens Q Ostrosky
Ashley W Vocelka
Francesco M Dilliard
Mujtaba N Malet
IdCountryDate
1000France2026-10-12
1001India2026-10-25
1002India2026-10-18
1003Canada2026-10-15
1004Japan2026-10-14
1005Brazil2026-10-25
1006Spain2026-10-13
1007Brazil2026-10-20
1008Japan2026-11-06
1009United Kingdom2026-11-04
1010India2026-11-05
1011Russia2026-10-19
1012United Kingdom2026-11-05
1013Japan2026-10-28
1014United Kingdom2026-10-24
1015Germany2026-10-21
1016India2026-10-24
1017Germany2026-10-14
1018France2026-10-20
1019Argentina2026-10-12
1020Italy2026-10-29
1021Brazil2026-10-29
1022Spain2026-10-23
1023Brazil2026-11-05
1024Spain2026-10-08
1025United Kingdom2026-10-13
1026Argentina2026-11-02
1027Spain2026-11-06
1028Spain2026-10-19
1029Italy2026-10-13
1030Italy2026-10-15
1031Canada2026-10-26
1032France2026-10-08
1033Canada2026-10-23
1034Russia2026-10-26
1035United Kingdom2026-10-27
1036India2026-11-05
1037Canada2026-10-31
1038Australia2026-10-27
1039Canada2026-10-08
1040Spain2026-10-19
1041India2026-11-01
1042Italy2026-11-06
1043Spain2026-10-31
1044Australia2026-10-24
1045France2026-10-10
1046Italy2026-10-25
1047Canada2026-10-21
1048India2026-10-12
1049Brazil2026-10-14

On-Demand Data

NameIdCountryDate
Julie M Poquette1000Argentina2026-10-13
Mujtaba P Glick1001Italy2026-10-22
Ashley Z Campain1002India2026-10-27
Arvin G Foller1003Argentina2026-10-19
Aditya X Stenseth1004Canada2026-11-01
Isabel N Flosi1005Australia2026-10-08
Maisha J Bowley1006Argentina2026-10-27
Wickens I Dilliard1007Argentina2026-10-09
Misaki T Briddick1008India2026-10-20
Tony F Venere1009Argentina2026-10-14
Maisha S Rim1010India2026-10-15
Johnson Z Caldarera1011Spain2026-10-24
David D Shinko1012Argentina2026-11-04
Adams M Ferencz1013Brazil2026-10-25
Julie U Albares1014Argentina2026-10-11
Greenwood I Dilliard1015United Kingdom2026-10-15
Cody U Royster1016Spain2026-10-25
Antonio K Gaucho1017Germany2026-11-01
Jennifer X Amigon1018Brazil2026-10-08
Munro C Figeroa1019Germany2026-10-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily K FigeroaRussiaBernardo Dominic NEW
Morrow E FerenczFranceElwin Sharvill UNQUALIFIED
Claire E SaylorsIndiaAmy Elsner NEGOTIATION
Ashley J OstroskyUnited KingdomXuxue Feng RENEWAL
Aruna M RulapaughGermanyStephen Shaw PROPOSAL
Munro G PaprockiBrazilAsiya Javayant QUALIFIED
Alejandro S TollnerItalyAnna Fali NEW
Sinclair Z OldroydArgentinaBernardo Dominic PROPOSAL
Wickens B RutaItalyAsiya Javayant NEW
Faith C MaletSpainStephen Shaw UNQUALIFIED
Mujtaba T NestleBrazilStephen Shaw NEGOTIATION
Johnson C FlosiUnited KingdomElwin Sharvill UNQUALIFIED
Morrow M BriddickUnited KingdomIoni Bowcher NEGOTIATION
Alejandro G ShinkoRussiaXuxue Feng NEGOTIATION
Tony N CaldareraIndiaStephen Shaw RENEWAL
Nicolas Y GlickGermanyStephen Shaw QUALIFIED
Murillo P NickaFranceAmy Elsner PROPOSAL
Maisha L KuskoSpainStephen Shaw QUALIFIED
Ricardo G TollnerSpainOnyama Limba UNQUALIFIED
Alejandro Q VenereUnited KingdomBernardo Dominic NEGOTIATION
Octavia C PoquetteAustraliaElwin Sharvill UNQUALIFIED
Octavia E SaylorsCanadaElwin Sharvill RENEWAL
Sinclair K InouyeJapanBernardo Dominic UNQUALIFIED
Leon H AmigonAustraliaStephen Shaw NEW
Isabel S MarrierFranceAsiya Javayant QUALIFIED
Adams O MorascaRussiaXuxue Feng NEW
Cody R VenereJapanAsiya Javayant QUALIFIED
Smith D BologniaIndiaAmy Elsner QUALIFIED
Alejandro E SlusarskiArgentinaAsiya Javayant UNQUALIFIED
Munro Q MaletBrazilAnna Fali QUALIFIED
Mujtaba Z SaylorsSpainOnyama Limba UNQUALIFIED
Maria X ShinkoIndiaElwin Sharvill UNQUALIFIED
Alejandro A ButtBrazilBernardo Dominic NEGOTIATION
Jennifer P AlbaresAustraliaAmy Elsner UNQUALIFIED
Isabel O MorascaSpainXuxue Feng UNQUALIFIED
Alejandro Y OldroydSpainElwin Sharvill QUALIFIED
Tony M WhobreySpainIoni Bowcher RENEWAL
Stacey J DarakjyBrazilAnna Fali PROPOSAL
Octavia L SlusarskiItalyElwin Sharvill PROPOSAL
Alejandro G RimItalyAmy Elsner NEW

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