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
Aruna E GarufiGermanyStephen Shaw NEW
Munro W MarrierFranceStephen Shaw NEGOTIATION
Ivar M ButtArgentinaAnna Fali PROPOSAL
Misaki Y MorascaUnited KingdomXuxue Feng NEW
Silvio A DilliardJapanElwin Sharvill RENEWAL
Isabel C OstroskyRussiaElwin Sharvill QUALIFIED
Adams T VenereIndiaAnna Fali NEW
Aruna E SchemmerCanadaOnyama Limba NEW
Jennifer E IturbideRussiaIvan Magalhaes UNQUALIFIED
Misaki B RutaRussiaBernardo Dominic PROPOSAL
Cody S PoquetteCanadaIvan Magalhaes PROPOSAL
Maria D PerinFranceAsiya Javayant RENEWAL
Munro J WieserFranceAmy Elsner NEW
Jennifer L BriddickJapanElwin Sharvill RENEWAL
Adams O NestleAustraliaBernardo Dominic UNQUALIFIED
Ivar V VocelkaFranceAsiya Javayant RENEWAL
Aruna J SergiJapanBernardo Dominic NEW
Aruna N KuskoItalyIvan Magalhaes NEGOTIATION
Costa P CaudyIndiaStephen Shaw RENEWAL
Aruna R GlickCanadaXuxue Feng NEGOTIATION
Clifford I DoeJapanIoni Bowcher NEGOTIATION
Leon I FollerBrazilElwin Sharvill NEGOTIATION
Leja D MorascaJapanAmy Elsner RENEWAL
Leja I BologniaRussiaAmy Elsner NEW
Aruna K GlickBrazilElwin Sharvill QUALIFIED
Octavia I InouyeAustraliaAnna Fali RENEWAL
Aditya B BowleyFranceIoni Bowcher RENEWAL
Octavia I ChuiIndiaOnyama Limba UNQUALIFIED
Jennifer W SergiJapanAmy Elsner QUALIFIED
Cody L MarrierSpainAsiya Javayant UNQUALIFIED
Juan K MaletJapanAnna Fali UNQUALIFIED
Julie G CaudyItalyOnyama Limba QUALIFIED
Darci T MorascaIndiaStephen Shaw NEW
Jefferson Q FerenczUnited KingdomOnyama Limba NEW
Johnson B RimUnited KingdomAmy Elsner NEW
Costa H IturbideIndiaAmy Elsner QUALIFIED
Arvin Z IturbideJapanAmy Elsner NEGOTIATION
Juan H BowleyCanadaIvan Magalhaes UNQUALIFIED
Deepesh G StockhamIndiaIvan Magalhaes NEW
Julie I VenereIndiaAmy Elsner PROPOSAL
Johnson U MorascaArgentinaIoni Bowcher RENEWAL
Greenwood G WieserGermanyAmy Elsner PROPOSAL
Tony M VocelkaArgentinaAnna Fali PROPOSAL
Clifford E MaletRussiaElwin Sharvill UNQUALIFIED
Ashley C GarufiJapanBernardo Dominic PROPOSAL
Arvin L FigeroaAustraliaOnyama Limba PROPOSAL
Misaki Y InouyeItalyElwin Sharvill UNQUALIFIED
Ashley N RimUnited KingdomXuxue Feng RENEWAL
Kaitlin U MaletJapanOnyama Limba UNQUALIFIED
Munro Z DarakjyItalyOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Mayumi L IturbideAustraliaIvan Magalhaes PROPOSAL
Chavez Y MaletArgentinaAsiya Javayant UNQUALIFIED
Johnson D StockhamUnited KingdomIvan Magalhaes QUALIFIED
Jefferson P FollerUnited KingdomXuxue Feng PROPOSAL
Francesco N StensethBrazilAmy Elsner RENEWAL
Jeanfrancois N FollerUnited KingdomIvan Magalhaes RENEWAL
Jennifer X PoquetteIndiaElwin Sharvill PROPOSAL
Leon P SlusarskiCanadaAnna Fali NEW
Salvatore Y MaletIndiaXuxue Feng UNQUALIFIED
Misaki I ButtJapanXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy D MaletGermany2026-11-12Chanay, Jeffrey A Esq RENEWAL8Xuxue Feng
1001Aika O SlusarskiItaly2026-11-06Chanay, Jeffrey A Esq NEGOTIATION91Elwin Sharvill
1002Julie T FlosiFrance2026-11-02Dorl, James J Esq NEW3Bernardo Dominic
1003Izzy F MarrierFrance2026-10-23Benton, John B Jr QUALIFIED79Ivan Magalhaes
1004Adams E IturbideIndia2026-10-25Printing Dimensions NEW25Ivan Magalhaes
1005Jefferson C SaylorsIndia2026-10-15Rangoni Of Florence PROPOSAL17Ioni Bowcher
1006Maria P RimArgentina2026-11-02Commercial Press QUALIFIED37Ioni Bowcher
1007Greenwood L MacleadAustralia2026-11-06Commercial Press QUALIFIED81Bernardo Dominic
1008Kadeem H SergiBrazil2026-10-20Buckley Miller Wright RENEWAL53Stephen Shaw
1009Aika F InouyeCanada2026-10-24Truhlar And Truhlar Attys UNQUALIFIED95Ioni Bowcher
1010Johnson C DarakjyCanada2026-10-29Chapman, Ross E Esq NEGOTIATION82Ioni Bowcher
1011Emily Z AmigonIndia2026-10-16Chemel, James L Cpa NEW92Ioni Bowcher
1012Costa U BowleyGermany2026-10-16Chapman, Ross E Esq NEW76Asiya Javayant
1013Alejandro Z OldroydCanada2026-10-20Morlong Associates RENEWAL47Bernardo Dominic
1014Johnson X DilliardFrance2026-11-11Commercial Press UNQUALIFIED32Stephen Shaw
1015Misaki E OldroydItaly2026-10-26Truhlar And Truhlar Attys QUALIFIED24Ioni Bowcher
1016Stacey O NickaItaly2026-10-31Buckley Miller Wright UNQUALIFIED76Stephen Shaw
1017Mayumi F SlusarskiJapan2026-10-16Morlong Associates QUALIFIED7Ivan Magalhaes
1018Kadeem E ShinkoSpain2026-10-28Benton, John B Jr QUALIFIED49Bernardo Dominic
1019Silvio T RoysterAustralia2026-11-01Chanay, Jeffrey A Esq PROPOSAL14Onyama Limba
1020Ashley E CaldareraSpain2026-11-04Commercial Press PROPOSAL55Amy Elsner
1021Costa J BologniaCanada2026-11-08King, Christopher A Esq PROPOSAL98Asiya Javayant
1022Alejandro Q SergiItaly2026-10-22Commercial Press RENEWAL46Elwin Sharvill
1023Tony P SaylorsIndia2026-10-27Commercial Press UNQUALIFIED38Amy Elsner
1024Misaki H ChuiAustralia2026-10-25Chanay, Jeffrey A Esq UNQUALIFIED78Amy Elsner
1025David X RutaArgentina2026-10-28Morlong Associates QUALIFIED7Amy Elsner
1026Aruna M AmigonCanada2026-10-20Dorl, James J Esq NEW67Bernardo Dominic
1027Ricardo O GauchoItaly2026-10-23Rousseaux, Michael Esq RENEWAL28Elwin Sharvill
1028Aika E RutaArgentina2026-11-08Rangoni Of Florence NEGOTIATION70Asiya Javayant
1029Tony X RoysterGermany2026-11-07Chemel, James L Cpa UNQUALIFIED71Elwin Sharvill
1030Isabel D BologniaGermany2026-11-11Chemel, James L Cpa QUALIFIED56Stephen Shaw
1031Ivar M RoysterGermany2026-11-02Truhlar And Truhlar Attys RENEWAL18Ivan Magalhaes
1032Jefferson W AmigonCanada2026-10-21Chanay, Jeffrey A Esq UNQUALIFIED77Asiya Javayant
1033Jeanfrancois D StockhamUnited Kingdom2026-11-05Chanay, Jeffrey A Esq UNQUALIFIED27Anna Fali
1034Greenwood O DarakjyGermany2026-10-26Chapman, Ross E Esq UNQUALIFIED56Onyama Limba
1035Faith W MacleadIndia2026-10-29Morlong Associates RENEWAL34Onyama Limba
1036Deepesh Z GillianCanada2026-10-22Feiner Bros NEW88Onyama Limba
1037Kadeem M WaycottIndia2026-10-14Chapman, Ross E Esq NEGOTIATION59Ioni Bowcher
1038David N FlosiItaly2026-10-18Chapman, Ross E Esq NEW42Anna Fali
1039Munro W ShinkoArgentina2026-10-19Chapman, Ross E Esq NEW82Bernardo Dominic
1040Chavez B PaprockiItaly2026-11-06Truhlar And Truhlar Attys PROPOSAL87Xuxue Feng
1041Mujtaba D CaldareraUnited Kingdom2026-11-07Chemel, James L Cpa QUALIFIED92Asiya Javayant
1042Maisha A GillianRussia2026-10-14Benton, John B Jr QUALIFIED25Stephen Shaw
1043Maisha M VenereSpain2026-10-23Chanay, Jeffrey A Esq PROPOSAL33Stephen Shaw
1044Jones M SaylorsIndia2026-10-26King, Christopher A Esq RENEWAL34Asiya Javayant
1045Morrow D VenereSpain2026-10-23Rousseaux, Michael Esq UNQUALIFIED94Elwin Sharvill
1046Sinclair T StockhamRussia2026-10-27Printing Dimensions QUALIFIED51Amy Elsner
1047Silvio M SlusarskiJapan2026-10-23Buckley Miller Wright UNQUALIFIED59Anna Fali
1048Deepesh M MaletIndia2026-10-23Chapman, Ross E Esq QUALIFIED43Onyama Limba
1049Mayumi Z MaletRussia2026-11-10Benton, John B Jr NEGOTIATION23Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Jones Y SlusarskiCanadaAsiya Javayant NEGOTIATION
Maria G FollerUnited KingdomAsiya Javayant RENEWAL
Claire F StockhamGermanyBernardo Dominic NEW
Costa T MaletAustraliaAmy Elsner UNQUALIFIED
Kadeem Y WhobreyItalyIvan Magalhaes RENEWAL
Cody H FigeroaAustraliaIoni Bowcher RENEWAL
Juan J WieserIndiaAsiya Javayant QUALIFIED
Morrow M BriddickItalyOnyama Limba RENEWAL
Maisha P CaudyItalyIoni Bowcher QUALIFIED
Jefferson E GlickAustraliaElwin Sharvill NEGOTIATION
Munro E MaletRussiaStephen Shaw PROPOSAL
Leon X WieserBrazilAnna Fali QUALIFIED
Arvin A RutaJapanAnna Fali NEGOTIATION
Munro A ChuiAustraliaAnna Fali NEGOTIATION
Munro M VocelkaGermanyAmy Elsner UNQUALIFIED
Misaki M ChuiJapanIvan Magalhaes RENEWAL
Isabel F CampainCanadaAmy Elsner NEGOTIATION
Maria Z DarakjyGermanyAmy Elsner RENEWAL
Silvio Q MarrierJapanStephen Shaw RENEWAL
Silvio C AlbaresSpainIvan Magalhaes PROPOSAL
Adams X WaycottAustraliaBernardo Dominic RENEWAL
Octavia M GillianItalyAnna Fali QUALIFIED
Greenwood I TollnerBrazilIvan Magalhaes NEW
Jefferson U StensethArgentinaAnna Fali PROPOSAL
Leon X GarufiBrazilBernardo Dominic PROPOSAL
Silvio T OstroskySpainOnyama Limba QUALIFIED
Jeanfrancois F GauchoGermanyStephen Shaw NEGOTIATION
Isabel W GlickFranceAnna Fali QUALIFIED
Juan F SaylorsSpainAsiya Javayant PROPOSAL
Ashley T MorascaItalyAsiya Javayant QUALIFIED
Greenwood C GarufiArgentinaAmy Elsner NEGOTIATION
Leja A PoquetteFranceBernardo Dominic PROPOSAL
Faith K NestleIndiaAsiya Javayant NEGOTIATION
Aika E MaletSpainBernardo Dominic QUALIFIED
Alejandro A RutaGermanyAsiya Javayant NEW
Leja W PerinSpainElwin Sharvill UNQUALIFIED
Jennifer B VenereBrazilBernardo Dominic QUALIFIED
Kadeem O KolmetzUnited KingdomXuxue Feng QUALIFIED
Mayumi N RimUnited KingdomElwin Sharvill NEGOTIATION
Maisha B PoquetteItalyBernardo Dominic NEGOTIATION
Nicolas Q PaprockiUnited KingdomIoni Bowcher NEGOTIATION
Clifford P MorascaItalyXuxue Feng NEGOTIATION
Morrow U CaldareraCanadaStephen Shaw RENEWAL
Munro Q DoeIndiaAsiya Javayant NEW
Deepesh I MorascaUnited KingdomIoni Bowcher QUALIFIED
Deepesh V ButtArgentinaIoni Bowcher QUALIFIED
Deepesh D IturbideJapanElwin Sharvill NEGOTIATION
Darci T BriddickAustraliaAnna Fali QUALIFIED
Ivar N SlusarskiGermanyAmy Elsner NEGOTIATION
Jennifer Y SaylorsBrazilBernardo Dominic NEW
Frozen Columns
Name
Kaitlin Y Caldarera
Silvio D Foller
Aika P Perin
Jefferson L Flosi
Jennifer E Maclead
Jefferson V Garufi
Octavia R Flosi
Cody E Poquette
Francesco E Kusko
Aika V Figeroa
Ricardo Y Campain
Morrow H Waycott
Maisha J Shinko
Silvio U Oldroyd
Jones I Malet
Mayumi Q Schemmer
Maria X Kusko
Isabel D Nestle
Maisha R Nestle
Faith A Caldarera
Octavia V Maclead
Leon E Stenseth
Arvin W Poquette
Wickens Q Dilliard
Munro P Kusko
Jennifer G Chui
Nicolas R Venere
Claire V Campain
Mujtaba D Foller
Sinclair H Venere
Octavia M Sergi
Aditya I Foller
Chavez Q Malet
Adams K Kolmetz
Kadeem E Figeroa
Octavia A Slusarski
Emily E Malet
Izzy P Morasca
Tony F Foller
Clifford W Bowley
Jennifer K Figeroa
Deepesh I Albares
Izzy V Waycott
Claire D Whobrey
Sinclair Y Stockham
Aruna Y Poquette
Izzy L Dilliard
Ivar X Inouye
Costa C Caudy
Isabel S Albares
IdCountryDate
1000Argentina2026-10-28
1001Australia2026-11-06
1002India2026-10-22
1003India2026-11-02
1004France2026-10-18
1005India2026-10-27
1006Spain2026-11-01
1007Australia2026-10-15
1008United Kingdom2026-10-24
1009France2026-10-20
1010India2026-10-30
1011Brazil2026-10-29
1012Canada2026-10-18
1013Australia2026-10-25
1014United Kingdom2026-10-19
1015Australia2026-11-10
1016Argentina2026-10-28
1017Argentina2026-10-18
1018Italy2026-11-01
1019Argentina2026-11-10
1020Italy2026-11-05
1021Spain2026-10-16
1022Germany2026-11-06
1023Australia2026-10-24
1024India2026-11-05
1025Canada2026-10-26
1026Spain2026-10-17
1027Japan2026-11-12
1028Brazil2026-10-19
1029France2026-10-21
1030Russia2026-11-12
1031United Kingdom2026-10-31
1032Australia2026-11-08
1033Argentina2026-11-01
1034Japan2026-10-27
1035Russia2026-11-02
1036Australia2026-10-24
1037Russia2026-10-22
1038Argentina2026-10-15
1039Spain2026-11-02
1040Spain2026-11-04
1041Japan2026-10-30
1042India2026-10-26
1043United Kingdom2026-11-01
1044Canada2026-11-04
1045Italy2026-10-24
1046Brazil2026-10-15
1047Spain2026-11-02
1048Spain2026-10-15
1049Russia2026-11-05

On-Demand Data

NameIdCountryDate
Chavez W Butt1000United Kingdom2026-10-31
Darci D Flosi1001Russia2026-10-20
David Q Ostrosky1002India2026-10-28
Leja I Figeroa1003India2026-10-26
Misaki T Campain1004Spain2026-11-01
Costa L Waycott1005France2026-10-28
Ricardo Q Morasca1006France2026-11-03
Kaitlin C Whobrey1007Australia2026-11-07
Maisha A Gillian1008Japan2026-11-03
Wickens M Rulapaugh1009United Kingdom2026-11-11
Misaki N Caudy1010Australia2026-10-23
Jones V Caldarera1011Canada2026-10-17
Ivar T Iturbide1012Germany2026-10-22
Stacey Z Malet1013Germany2026-10-29
Smith P Ruta1014France2026-10-15
Munro H Briddick1015India2026-11-06
Ricardo R Poquette1016Germany2026-11-05
Maisha K Campain1017Canada2026-11-07
Wickens Y Paprocki1018United Kingdom2026-10-28
Ricardo D Amigon1019Canada2026-10-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin P PoquetteGermanyElwin Sharvill QUALIFIED
Arvin T FollerFranceStephen Shaw NEW
Silvio H FerenczRussiaOnyama Limba NEGOTIATION
Smith M FollerRussiaIoni Bowcher NEGOTIATION
James F SchemmerUnited KingdomXuxue Feng NEGOTIATION
Emily G SlusarskiGermanyStephen Shaw NEGOTIATION
Kaitlin C GauchoAustraliaStephen Shaw QUALIFIED
Alejandro N DarakjyItalyElwin Sharvill NEW
Smith Y ShinkoItalyAmy Elsner RENEWAL
Ashley R SchemmerAustraliaElwin Sharvill UNQUALIFIED
Costa I FigeroaFranceBernardo Dominic QUALIFIED
Leon Y NestleBrazilIoni Bowcher QUALIFIED
Adams G KuskoGermanyStephen Shaw PROPOSAL
Stacey P AlbaresGermanyXuxue Feng NEW
Chavez W GauchoItalyIoni Bowcher RENEWAL
Jones O GillianAustraliaAnna Fali RENEWAL
Chavez Y OstroskySpainIoni Bowcher UNQUALIFIED
Rodrigues R MaletRussiaAmy Elsner UNQUALIFIED
Faith X ShinkoIndiaXuxue Feng NEW
Isabel J OstroskyCanadaIoni Bowcher RENEWAL
Deepesh C BologniaJapanStephen Shaw UNQUALIFIED
Kadeem L GillianAustraliaAnna Fali QUALIFIED
Deepesh W MaletBrazilAsiya Javayant NEW
Sinclair O MaletFranceXuxue Feng QUALIFIED
David U GarufiRussiaIoni Bowcher PROPOSAL
Sinclair E StensethBrazilElwin Sharvill RENEWAL
Maisha O VocelkaSpainAnna Fali PROPOSAL
Silvio P FigeroaJapanOnyama Limba QUALIFIED
Maisha U SergiItalyAsiya Javayant UNQUALIFIED
Rodrigues C GillianRussiaAmy Elsner UNQUALIFIED
Emily J SergiBrazilBernardo Dominic NEGOTIATION
Smith W MacleadArgentinaAsiya Javayant PROPOSAL
Ivar A SaylorsIndiaIvan Magalhaes QUALIFIED
Salvatore A FlosiCanadaAnna Fali UNQUALIFIED
Silvio L NickaRussiaIoni Bowcher UNQUALIFIED
Isabel T GarufiAustraliaStephen Shaw RENEWAL
Kadeem X DarakjyCanadaAnna Fali RENEWAL
Darci J PaprockiJapanAsiya Javayant UNQUALIFIED
Isabel I MarrierCanadaStephen Shaw QUALIFIED
Clifford B WhobreyUnited KingdomElwin Sharvill 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>