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
Silvio I PerinItalyBernardo Dominic NEW
Chavez F MaletGermanyBernardo Dominic NEGOTIATION
Kaitlin U StensethJapanAmy Elsner NEGOTIATION
Smith X SlusarskiCanadaStephen Shaw QUALIFIED
Maisha G WieserSpainOnyama Limba PROPOSAL
Isabel N WieserIndiaElwin Sharvill PROPOSAL
Nicolas B NestleRussiaAmy Elsner UNQUALIFIED
Adams A KolmetzItalyXuxue Feng RENEWAL
Mujtaba I MaletCanadaStephen Shaw NEW
Izzy F SchemmerBrazilXuxue Feng RENEWAL
Tony M BologniaCanadaAmy Elsner UNQUALIFIED
Jefferson R BriddickJapanBernardo Dominic UNQUALIFIED
Deepesh P BologniaFranceAnna Fali NEW
Emily S NestleItalyAsiya Javayant UNQUALIFIED
Kaitlin V CaudyItalyIvan Magalhaes UNQUALIFIED
Octavia A MaletAustraliaBernardo Dominic RENEWAL
Leja G MorascaAustraliaElwin Sharvill PROPOSAL
Antonio L SchemmerJapanXuxue Feng RENEWAL
Salvatore Y SlusarskiJapanElwin Sharvill PROPOSAL
Adams Z BologniaUnited KingdomIoni Bowcher UNQUALIFIED
Jones B SaylorsItalyOnyama Limba NEGOTIATION
Julie T ButtArgentinaIvan Magalhaes UNQUALIFIED
Jefferson R InouyeUnited KingdomElwin Sharvill PROPOSAL
Maria D GauchoItalyBernardo Dominic RENEWAL
Murillo F StockhamAustraliaElwin Sharvill NEGOTIATION
Deepesh J PoquetteArgentinaAsiya Javayant PROPOSAL
Greenwood K ShinkoIndiaIoni Bowcher RENEWAL
James C DilliardJapanBernardo Dominic QUALIFIED
Maria J WhobreyRussiaIvan Magalhaes NEW
Alejandro P ButtBrazilOnyama Limba NEW
Aika S GlickRussiaIvan Magalhaes RENEWAL
James X InouyeRussiaXuxue Feng NEGOTIATION
Alejandro P PerinUnited KingdomXuxue Feng RENEWAL
Ashley A SchemmerJapanXuxue Feng PROPOSAL
Darci Q IturbideJapanIoni Bowcher NEGOTIATION
Jennifer S MaletArgentinaOnyama Limba QUALIFIED
Tony M IturbideJapanXuxue Feng NEGOTIATION
Julie I CaldareraAustraliaAmy Elsner QUALIFIED
Ricardo K NickaJapanBernardo Dominic NEGOTIATION
James I SlusarskiJapanIoni Bowcher RENEWAL
Jeanfrancois T WhobreyRussiaElwin Sharvill UNQUALIFIED
Ivar I BriddickGermanyElwin Sharvill UNQUALIFIED
Leon O BriddickSpainIvan Magalhaes PROPOSAL
Ashley H ButtFranceStephen Shaw UNQUALIFIED
Mayumi L PoquetteJapanIoni Bowcher NEGOTIATION
Nicolas N ShinkoGermanyXuxue Feng UNQUALIFIED
Aruna K CampainCanadaIoni Bowcher NEGOTIATION
James Y NestleCanadaIvan Magalhaes NEW
Nicolas G MaletFranceAsiya Javayant UNQUALIFIED
Mujtaba N WhobreyCanadaXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mujtaba P GlickRussiaOnyama Limba RENEWAL
Salvatore O KuskoAustraliaBernardo Dominic RENEWAL
Jennifer N SchemmerRussiaAsiya Javayant UNQUALIFIED
Nicolas A BowleyArgentinaOnyama Limba NEW
Leon J SlusarskiSpainIvan Magalhaes UNQUALIFIED
Emily D DoeArgentinaAsiya Javayant NEGOTIATION
Silvio K DarakjyIndiaBernardo Dominic PROPOSAL
Misaki U NickaItalyBernardo Dominic NEGOTIATION
Deepesh U OldroydRussiaStephen Shaw RENEWAL
Alejandro U GauchoItalyXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson R RoysterCanada2026-09-15Rousseaux, Michael Esq UNQUALIFIED54Ivan Magalhaes
1001James P RimIndia2026-10-01Feltz Printing Service NEGOTIATION73Stephen Shaw
1002Johnson U BriddickJapan2026-09-12Dorl, James J Esq QUALIFIED91Bernardo Dominic
1003Alejandro H FerenczSpain2026-09-30Printing Dimensions PROPOSAL67Asiya Javayant
1004Nicolas S FerenczGermany2026-09-16King, Christopher A Esq PROPOSAL3Bernardo Dominic
1005Clifford Y PoquetteBrazil2026-09-27Printing Dimensions UNQUALIFIED28Onyama Limba
1006Darci D WhobreyRussia2026-09-17Dorl, James J Esq UNQUALIFIED85Ivan Magalhaes
1007Nicolas I FollerBrazil2026-09-11Buckley Miller Wright QUALIFIED70Ioni Bowcher
1008Ivar A StensethIndia2026-10-04Chanay, Jeffrey A Esq UNQUALIFIED35Anna Fali
1009Ashley X GlickGermany2026-09-21Printing Dimensions RENEWAL90Ioni Bowcher
1010Wickens X KolmetzSpain2026-09-12Morlong Associates NEGOTIATION86Asiya Javayant
1011Izzy Y IturbideIndia2026-09-27Feiner Bros QUALIFIED63Asiya Javayant
1012Jeanfrancois O RulapaughCanada2026-10-08Printing Dimensions QUALIFIED75Ivan Magalhaes
1013Emily Q ShinkoGermany2026-09-15Commercial Press NEGOTIATION41Elwin Sharvill
1014James Y AlbaresArgentina2026-09-12Buckley Miller Wright UNQUALIFIED66Onyama Limba
1015Morrow V DilliardItaly2026-09-20King, Christopher A Esq QUALIFIED18Stephen Shaw
1016Alejandro E AlbaresCanada2026-09-12Morlong Associates NEGOTIATION40Onyama Limba
1017Aika Y CampainFrance2026-09-23Buckley Miller Wright NEGOTIATION85Ivan Magalhaes
1018Kadeem O WhobreyJapan2026-09-27Chemel, James L Cpa PROPOSAL25Onyama Limba
1019Stacey E RoysterRussia2026-09-24Commercial Press NEW90Onyama Limba
1020Sinclair Q DarakjyJapan2026-10-06Morlong Associates NEW89Elwin Sharvill
1021Isabel Y MarrierIndia2026-09-26Feltz Printing Service NEGOTIATION99Ivan Magalhaes
1022Leon P InouyeGermany2026-10-04Chapman, Ross E Esq RENEWAL88Amy Elsner
1023Deepesh Y PerinIndia2026-09-11King, Christopher A Esq NEW14Xuxue Feng
1024Ricardo V WieserGermany2026-09-30Feiner Bros PROPOSAL86Ivan Magalhaes
1025Jefferson C ButtAustralia2026-09-26Rousseaux, Michael Esq PROPOSAL51Ivan Magalhaes
1026Jeanfrancois D DilliardBrazil2026-09-23Morlong Associates NEGOTIATION68Ivan Magalhaes
1027Octavia Y OldroydIndia2026-09-17King, Christopher A Esq NEGOTIATION10Bernardo Dominic
1028Jennifer K WieserArgentina2026-09-24King, Christopher A Esq NEGOTIATION78Onyama Limba
1029Izzy Y AmigonIndia2026-10-08Truhlar And Truhlar Attys PROPOSAL29Anna Fali
1030Jefferson H RoysterUnited Kingdom2026-10-08Feiner Bros RENEWAL41Onyama Limba
1031Arvin A GarufiJapan2026-09-26Chanay, Jeffrey A Esq QUALIFIED83Amy Elsner
1032James O RutaJapan2026-10-01Rousseaux, Michael Esq NEGOTIATION56Amy Elsner
1033Kadeem E AmigonArgentina2026-09-30Truhlar And Truhlar Attys QUALIFIED63Stephen Shaw
1034Greenwood N SlusarskiBrazil2026-09-13Rangoni Of Florence PROPOSAL37Ioni Bowcher
1035Maria M GlickBrazil2026-10-04Commercial Press RENEWAL53Amy Elsner
1036Faith W SlusarskiRussia2026-09-16Feltz Printing Service NEGOTIATION29Stephen Shaw
1037Claire F TollnerIndia2026-09-18Chapman, Ross E Esq NEGOTIATION54Ivan Magalhaes
1038Francesco W MaletSpain2026-09-10Commercial Press NEGOTIATION66Amy Elsner
1039Isabel E MaletUnited Kingdom2026-10-01Feiner Bros RENEWAL81Anna Fali
1040Kaitlin H PaprockiRussia2026-09-09Rousseaux, Michael Esq PROPOSAL59Ivan Magalhaes
1041Sinclair O GillianCanada2026-09-11Truhlar And Truhlar Attys UNQUALIFIED54Anna Fali
1042Tony P DarakjyGermany2026-09-14Chapman, Ross E Esq QUALIFIED49Ivan Magalhaes
1043Leja B DilliardFrance2026-09-21Benton, John B Jr PROPOSAL41Onyama Limba
1044Emily A NestleRussia2026-10-01Chanay, Jeffrey A Esq NEW93Xuxue Feng
1045Faith A GlickGermany2026-09-21Benton, John B Jr QUALIFIED98Amy Elsner
1046Wickens Q SaylorsGermany2026-09-27Benton, John B Jr RENEWAL19Amy Elsner
1047Francesco Z GauchoSpain2026-09-21Buckley Miller Wright PROPOSAL32Bernardo Dominic
1048Faith Y AlbaresFrance2026-09-11Chanay, Jeffrey A Esq UNQUALIFIED71Stephen Shaw
1049Munro P AlbaresJapan2026-09-22Benton, John B Jr QUALIFIED81Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Arvin X CampainAustraliaIoni Bowcher NEGOTIATION
Deepesh S ShinkoSpainIvan Magalhaes NEGOTIATION
Cody L AlbaresGermanyXuxue Feng RENEWAL
Chavez F MacleadIndiaAmy Elsner PROPOSAL
Ivar C KuskoAustraliaAnna Fali NEW
Adams R RulapaughBrazilXuxue Feng RENEWAL
Ashley Q ChuiArgentinaAsiya Javayant NEW
Claire T CaldareraSpainBernardo Dominic QUALIFIED
Murillo T VocelkaArgentinaElwin Sharvill RENEWAL
Jones I MaletCanadaIoni Bowcher NEGOTIATION
Ricardo M ShinkoBrazilIvan Magalhaes PROPOSAL
Alejandro L MaletSpainElwin Sharvill UNQUALIFIED
Cody N SaylorsUnited KingdomAsiya Javayant NEGOTIATION
Octavia G FlosiRussiaElwin Sharvill UNQUALIFIED
James J MorascaJapanIoni Bowcher NEW
Maisha F DarakjyJapanElwin Sharvill RENEWAL
Johnson K StockhamIndiaElwin Sharvill QUALIFIED
Salvatore O BriddickAustraliaAsiya Javayant NEGOTIATION
Alejandro D NickaIndiaXuxue Feng RENEWAL
Deepesh I TollnerFranceStephen Shaw PROPOSAL
Francesco S BriddickFranceIoni Bowcher NEW
Johnson F PaprockiCanadaStephen Shaw NEW
Aditya D RulapaughUnited KingdomAnna Fali NEW
Aruna U VenereItalyOnyama Limba PROPOSAL
Maria X IturbideJapanIvan Magalhaes UNQUALIFIED
Cody O ButtJapanAsiya Javayant RENEWAL
Izzy I WaycottSpainStephen Shaw NEGOTIATION
Darci O DoeBrazilIoni Bowcher RENEWAL
James E RulapaughAustraliaStephen Shaw RENEWAL
Smith D PaprockiBrazilOnyama Limba PROPOSAL
Jefferson P FigeroaUnited KingdomIoni Bowcher QUALIFIED
Octavia J FollerUnited KingdomIoni Bowcher NEGOTIATION
Smith J OldroydAustraliaElwin Sharvill UNQUALIFIED
Salvatore U VenereItalyAmy Elsner UNQUALIFIED
Ivar O PoquetteBrazilAsiya Javayant PROPOSAL
Claire A ChuiArgentinaAmy Elsner QUALIFIED
Johnson F BologniaAustraliaBernardo Dominic PROPOSAL
Isabel A BriddickGermanyStephen Shaw UNQUALIFIED
Ricardo K MaletFranceAmy Elsner QUALIFIED
Emily Y RoysterBrazilStephen Shaw NEW
Maisha D RimFranceStephen Shaw PROPOSAL
Jennifer X NickaJapanAnna Fali NEW
Ricardo G StockhamItalyOnyama Limba UNQUALIFIED
Mayumi J RoysterBrazilIoni Bowcher NEGOTIATION
Nicolas L WaycottFranceElwin Sharvill UNQUALIFIED
Octavia G FlosiAustraliaAsiya Javayant QUALIFIED
Morrow K RimCanadaAnna Fali NEGOTIATION
Emily W RimUnited KingdomElwin Sharvill NEW
Johnson Z SlusarskiJapanOnyama Limba NEW
Nicolas T CampainGermanyXuxue Feng RENEWAL
Frozen Columns
Name
Alejandro E Campain
Ivar M Kusko
Mujtaba V Iturbide
Mayumi R Gaucho
Izzy S Slusarski
Stacey X Iturbide
Murillo U Chui
Ivar M Rim
Claire N Ferencz
Aika V Saylors
Smith I Campain
Stacey P Doe
Octavia Y Chui
Leja B Ostrosky
Adams P Royster
Cody O Glick
Tony V Perin
Morrow Q Campain
Leon Q Garufi
Kadeem R Waycott
Kaitlin K Gillian
Mayumi B Ruta
Adams V Inouye
Murillo Y Briddick
Julie W Saylors
Aika S Kolmetz
Nicolas O Schemmer
Clifford X Vocelka
Aruna J Poquette
Aditya I Butt
Jeanfrancois H Iturbide
Maria H Stenseth
Isabel M Chui
Nicolas Q Figeroa
Juan B Amigon
Octavia D Sergi
David Q Flosi
Francesco G Doe
David E Royster
Morrow R Malet
Salvatore H Caudy
Julie A Ostrosky
Antonio I Campain
Deepesh W Poquette
Rodrigues R Whobrey
Octavia S Figeroa
Julie V Caldarera
Claire K Nicka
Morrow F Morasca
Adams F Saylors
IdCountryDate
1000India2026-10-01
1001Canada2026-09-22
1002Germany2026-10-07
1003India2026-10-06
1004Australia2026-10-06
1005India2026-09-10
1006Spain2026-09-24
1007Australia2026-09-27
1008Italy2026-10-02
1009Argentina2026-09-28
1010Japan2026-09-09
1011France2026-10-03
1012Italy2026-09-21
1013Argentina2026-09-20
1014Spain2026-09-30
1015Japan2026-09-19
1016Australia2026-10-02
1017Brazil2026-10-08
1018Canada2026-09-29
1019Argentina2026-09-27
1020Brazil2026-10-01
1021Russia2026-09-15
1022France2026-09-18
1023Japan2026-09-17
1024Italy2026-09-10
1025Argentina2026-09-29
1026Canada2026-09-25
1027Australia2026-10-05
1028Australia2026-09-28
1029Russia2026-10-01
1030Canada2026-10-03
1031Australia2026-10-03
1032Japan2026-09-17
1033Russia2026-09-19
1034Japan2026-09-18
1035United Kingdom2026-09-21
1036Germany2026-09-11
1037Russia2026-09-18
1038Japan2026-10-08
1039Australia2026-09-21
1040Germany2026-09-19
1041India2026-10-03
1042Spain2026-10-06
1043Argentina2026-09-29
1044Australia2026-09-18
1045Japan2026-09-27
1046Australia2026-09-27
1047Australia2026-09-09
1048Australia2026-09-28
1049Germany2026-09-10

On-Demand Data

NameIdCountryDate
Costa F Perin1000India2026-09-21
Munro O Malet1001Canada2026-09-17
Jones H Rim1002Russia2026-09-25
Leon G Stenseth1003United Kingdom2026-09-11
Smith E Nestle1004Argentina2026-09-15
Greenwood V Doe1005Italy2026-09-09
Kadeem F Doe1006France2026-09-13
Julie I Oldroyd1007Italy2026-09-14
Octavia L Poquette1008Italy2026-09-13
Arvin T Saylors1009Canada2026-09-11
Ivar Q Paprocki1010Argentina2026-09-12
Arvin T Caudy1011France2026-09-09
Darci U Shinko1012India2026-10-02
Alejandro F Stockham1013Brazil2026-10-08
Emily I Paprocki1014United Kingdom2026-09-15
Nicolas J Waycott1015Australia2026-09-14
Mujtaba L Poquette1016Italy2026-09-13
Maisha J Iturbide1017Spain2026-09-09
Stacey Y Stenseth1018Brazil2026-09-28
Cody C Sergi1019Germany2026-09-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas W NestleUnited KingdomAnna Fali QUALIFIED
Rodrigues W MaletGermanyStephen Shaw UNQUALIFIED
Silvio Q AmigonAustraliaBernardo Dominic NEW
Francesco C BriddickArgentinaStephen Shaw QUALIFIED
Morrow Z DoeAustraliaIvan Magalhaes QUALIFIED
Johnson O AmigonSpainIoni Bowcher RENEWAL
Johnson A CampainJapanXuxue Feng QUALIFIED
Isabel O PerinGermanyBernardo Dominic QUALIFIED
Sinclair R WieserFranceBernardo Dominic QUALIFIED
Sinclair Z CampainSpainIoni Bowcher RENEWAL
Juan A IturbideRussiaOnyama Limba PROPOSAL
Kadeem Z DarakjyItalyElwin Sharvill NEW
Juan Y SchemmerArgentinaStephen Shaw UNQUALIFIED
Antonio R GarufiBrazilIoni Bowcher NEW
Jones B ButtGermanyAsiya Javayant QUALIFIED
Jennifer F RimUnited KingdomElwin Sharvill QUALIFIED
Darci O CaudyCanadaBernardo Dominic PROPOSAL
Juan J BowleyArgentinaOnyama Limba QUALIFIED
Julie E KuskoSpainBernardo Dominic QUALIFIED
Jennifer M FlosiGermanyOnyama Limba PROPOSAL
Morrow C MarrierUnited KingdomOnyama Limba NEGOTIATION
Faith Y FerenczGermanyAnna Fali NEW
Mujtaba J ShinkoSpainIvan Magalhaes RENEWAL
Octavia F RutaGermanyAsiya Javayant QUALIFIED
Mujtaba C GillianCanadaIoni Bowcher QUALIFIED
Maisha J MarrierItalyAnna Fali NEGOTIATION
Costa M GlickAustraliaIoni Bowcher QUALIFIED
Maria F GillianArgentinaStephen Shaw UNQUALIFIED
Greenwood B MacleadJapanAnna Fali RENEWAL
Izzy D SaylorsJapanAmy Elsner RENEWAL
Leon X PaprockiRussiaElwin Sharvill QUALIFIED
Chavez V CampainFranceAsiya Javayant PROPOSAL
Clifford J BologniaAustraliaAmy Elsner QUALIFIED
Sinclair U ChuiSpainAnna Fali NEGOTIATION
Aruna G SergiUnited KingdomElwin Sharvill QUALIFIED
Greenwood T KolmetzIndiaXuxue Feng RENEWAL
Darci E WhobreyFranceStephen Shaw PROPOSAL
Silvio C ShinkoBrazilAsiya Javayant QUALIFIED
Salvatore K DarakjyIndiaStephen Shaw RENEWAL
Nicolas F RutaCanadaXuxue Feng PROPOSAL

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