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
Darci E PoquetteAustraliaIoni Bowcher UNQUALIFIED
Ricardo C StensethGermanyIvan Magalhaes QUALIFIED
Kaitlin V FerenczUnited KingdomIoni Bowcher RENEWAL
Tony R ShinkoCanadaOnyama Limba RENEWAL
Arvin U WhobreySpainBernardo Dominic PROPOSAL
Silvio M RutaItalyXuxue Feng NEGOTIATION
Wickens O KolmetzJapanBernardo Dominic UNQUALIFIED
Darci P KolmetzCanadaBernardo Dominic NEW
Stacey J DilliardGermanyAmy Elsner PROPOSAL
Maisha U WaycottIndiaOnyama Limba PROPOSAL
Chavez O CampainAustraliaIvan Magalhaes QUALIFIED
Alejandro N GlickAustraliaAmy Elsner RENEWAL
Isabel T GauchoGermanyAmy Elsner RENEWAL
Leon W GlickAustraliaIvan Magalhaes QUALIFIED
Jennifer M WieserFranceIoni Bowcher NEGOTIATION
Munro W FlosiAustraliaXuxue Feng RENEWAL
Salvatore K AlbaresJapanIoni Bowcher NEW
Sinclair K OldroydUnited KingdomElwin Sharvill PROPOSAL
Kadeem Y PoquetteFranceOnyama Limba PROPOSAL
Antonio M FigeroaFranceBernardo Dominic NEW
Jennifer C FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Murillo D NestleCanadaIoni Bowcher NEW
Munro B CaudyFranceStephen Shaw UNQUALIFIED
Wickens Z NickaIndiaXuxue Feng NEW
Leon C NickaJapanIoni Bowcher UNQUALIFIED
Maria P DarakjyArgentinaIoni Bowcher PROPOSAL
Isabel O VocelkaJapanStephen Shaw PROPOSAL
Leja M StockhamCanadaAmy Elsner PROPOSAL
Clifford B RimArgentinaOnyama Limba RENEWAL
David P CaudyAustraliaIoni Bowcher QUALIFIED
Isabel W NestleFranceAmy Elsner QUALIFIED
Silvio Z FlosiSpainBernardo Dominic NEW
Maria C BriddickUnited KingdomElwin Sharvill PROPOSAL
Mayumi I AlbaresSpainIoni Bowcher QUALIFIED
Munro D CaldareraRussiaBernardo Dominic UNQUALIFIED
Morrow X WieserSpainXuxue Feng PROPOSAL
Claire H CaudyFranceBernardo Dominic RENEWAL
Izzy M BowleyBrazilIvan Magalhaes QUALIFIED
Kadeem V ShinkoBrazilBernardo Dominic PROPOSAL
Misaki D PoquetteCanadaAnna Fali NEGOTIATION
Octavia X DoeGermanyAnna Fali NEW
Aditya S CaudyRussiaStephen Shaw NEW
Rodrigues V AmigonBrazilStephen Shaw QUALIFIED
Cody F BriddickItalyXuxue Feng NEGOTIATION
Aditya X PoquetteCanadaStephen Shaw NEGOTIATION
Adams Q WaycottGermanyAsiya Javayant RENEWAL
Francesco V NestleItalyOnyama Limba PROPOSAL
David O FerenczSpainIoni Bowcher NEGOTIATION
Francesco R WhobreySpainAsiya Javayant NEW
Murillo I KolmetzAustraliaOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ivar D SchemmerGermanyIoni Bowcher RENEWAL
Misaki L GillianIndiaStephen Shaw QUALIFIED
Ashley Y TollnerAustraliaElwin Sharvill RENEWAL
Claire Q GauchoJapanBernardo Dominic PROPOSAL
Nicolas Q SergiSpainAnna Fali NEW
Ivar S BowleyArgentinaAmy Elsner RENEWAL
Kaitlin S CampainIndiaElwin Sharvill RENEWAL
Arvin Z NestleBrazilXuxue Feng UNQUALIFIED
Stacey L StockhamArgentinaAmy Elsner NEW
Clifford A AlbaresBrazilAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson E FollerRussia2026-10-25Buckley Miller Wright NEGOTIATION56Bernardo Dominic
1001Morrow O RimGermany2026-10-26Chanay, Jeffrey A Esq RENEWAL67Xuxue Feng
1002Arvin G CaudySpain2026-10-16Benton, John B Jr UNQUALIFIED3Stephen Shaw
1003Mayumi S SlusarskiFrance2026-10-19Truhlar And Truhlar Attys NEW15Elwin Sharvill
1004Jennifer L MaletItaly2026-10-31Benton, John B Jr UNQUALIFIED3Xuxue Feng
1005Ashley F CaldareraCanada2026-11-06Chemel, James L Cpa PROPOSAL20Anna Fali
1006Kaitlin S FigeroaUnited Kingdom2026-10-12Feltz Printing Service QUALIFIED80Xuxue Feng
1007Cody I MaletAustralia2026-10-12Chanay, Jeffrey A Esq UNQUALIFIED57Ioni Bowcher
1008Antonio R KuskoFrance2026-10-22Benton, John B Jr RENEWAL48Onyama Limba
1009Mayumi P SchemmerGermany2026-10-20Morlong Associates PROPOSAL44Ivan Magalhaes
1010Aruna A RutaRussia2026-11-03Feiner Bros RENEWAL65Bernardo Dominic
1011Morrow N FigeroaUnited Kingdom2026-10-12Feiner Bros UNQUALIFIED98Xuxue Feng
1012Munro T KuskoAustralia2026-10-27Buckley Miller Wright QUALIFIED42Amy Elsner
1013Octavia D FigeroaAustralia2026-11-02Chemel, James L Cpa PROPOSAL46Elwin Sharvill
1014Jennifer R BriddickAustralia2026-11-08Chemel, James L Cpa QUALIFIED20Asiya Javayant
1015Salvatore U WieserSpain2026-10-18King, Christopher A Esq PROPOSAL91Stephen Shaw
1016Maisha A CaudyRussia2026-11-08Chanay, Jeffrey A Esq UNQUALIFIED71Onyama Limba
1017Maria A MaletFrance2026-10-13Feltz Printing Service NEW36Elwin Sharvill
1018Leon G PoquetteFrance2026-10-15Feiner Bros NEGOTIATION38Ivan Magalhaes
1019Octavia M GillianIndia2026-10-27Truhlar And Truhlar Attys PROPOSAL81Anna Fali
1020Alejandro I InouyeIndia2026-10-16Rangoni Of Florence PROPOSAL14Onyama Limba
1021Adams W RulapaughAustralia2026-10-18Feiner Bros UNQUALIFIED17Amy Elsner
1022Maria B BowleySpain2026-11-09Dorl, James J Esq UNQUALIFIED51Asiya Javayant
1023Mujtaba T PaprockiIndia2026-10-17Feiner Bros QUALIFIED70Stephen Shaw
1024James I TollnerArgentina2026-10-15Rousseaux, Michael Esq RENEWAL58Ivan Magalhaes
1025Julie Q BowleyUnited Kingdom2026-10-16Printing Dimensions NEW86Stephen Shaw
1026James B MaletUnited Kingdom2026-10-17Chapman, Ross E Esq NEGOTIATION82Amy Elsner
1027Darci P WieserFrance2026-10-24Truhlar And Truhlar Attys QUALIFIED34Ioni Bowcher
1028Nicolas G MaletFrance2026-10-14Feiner Bros PROPOSAL73Ivan Magalhaes
1029Mayumi N BowleyAustralia2026-10-21Benton, John B Jr UNQUALIFIED15Elwin Sharvill
1030Julie H DarakjyItaly2026-10-19Chanay, Jeffrey A Esq UNQUALIFIED30Bernardo Dominic
1031Silvio A SlusarskiArgentina2026-10-16Morlong Associates PROPOSAL70Ivan Magalhaes
1032Francesco N FollerUnited Kingdom2026-10-27Morlong Associates NEW24Amy Elsner
1033Ricardo K RutaIndia2026-10-16Feiner Bros NEGOTIATION93Ivan Magalhaes
1034Jeanfrancois I DilliardUnited Kingdom2026-11-04King, Christopher A Esq PROPOSAL30Stephen Shaw
1035Leja T GarufiIndia2026-11-02Morlong Associates NEGOTIATION60Onyama Limba
1036Greenwood X GauchoGermany2026-11-02Chanay, Jeffrey A Esq RENEWAL7Onyama Limba
1037Jeanfrancois Q CaudyItaly2026-11-02Rousseaux, Michael Esq NEGOTIATION0Asiya Javayant
1038Maria S KolmetzItaly2026-11-02Buckley Miller Wright NEGOTIATION51Xuxue Feng
1039David L RimSpain2026-10-31Buckley Miller Wright QUALIFIED24Xuxue Feng
1040Ashley D SergiCanada2026-10-26Dorl, James J Esq UNQUALIFIED18Onyama Limba
1041David H RimAustralia2026-11-01Truhlar And Truhlar Attys QUALIFIED93Xuxue Feng
1042Kaitlin R RimAustralia2026-11-06Feiner Bros NEW82Ioni Bowcher
1043Adams B CaldareraIndia2026-11-08Benton, John B Jr NEGOTIATION86Elwin Sharvill
1044Aruna C RimCanada2026-10-29Chanay, Jeffrey A Esq QUALIFIED94Bernardo Dominic
1045Leon F NickaJapan2026-11-07Feiner Bros NEW73Amy Elsner
1046Costa U MacleadUnited Kingdom2026-10-30Feiner Bros PROPOSAL17Stephen Shaw
1047Ivar A WieserAustralia2026-10-20Printing Dimensions NEGOTIATION96Elwin Sharvill
1048Morrow S InouyeRussia2026-10-27Morlong Associates NEW44Onyama Limba
1049Kadeem I RulapaughRussia2026-10-27King, Christopher A Esq NEGOTIATION39Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Ivar L NestleIndiaStephen Shaw UNQUALIFIED
David H BriddickBrazilBernardo Dominic QUALIFIED
David X ShinkoFranceStephen Shaw RENEWAL
Silvio V SergiAustraliaOnyama Limba RENEWAL
Morrow H CampainItalyOnyama Limba NEGOTIATION
Deepesh J IturbideBrazilAsiya Javayant NEGOTIATION
Antonio U CaudyAustraliaAmy Elsner QUALIFIED
Murillo H SergiBrazilElwin Sharvill NEW
Leja T KolmetzRussiaBernardo Dominic NEGOTIATION
Clifford N WaycottRussiaIoni Bowcher NEGOTIATION
Izzy W RutaRussiaStephen Shaw NEGOTIATION
Clifford I OstroskyIndiaAmy Elsner UNQUALIFIED
Francesco K VocelkaIndiaStephen Shaw UNQUALIFIED
Jennifer S StockhamItalyBernardo Dominic UNQUALIFIED
Ashley L GillianBrazilElwin Sharvill NEW
Ivar Z CaldareraFranceIvan Magalhaes RENEWAL
Jefferson A PoquetteSpainElwin Sharvill NEGOTIATION
Arvin N ShinkoFranceAnna Fali NEW
Mujtaba F SchemmerSpainXuxue Feng PROPOSAL
Rodrigues V OldroydUnited KingdomXuxue Feng NEGOTIATION
Leon O PerinJapanAnna Fali NEW
Jones T StockhamCanadaBernardo Dominic NEGOTIATION
Maisha X ChuiFranceXuxue Feng RENEWAL
Nicolas S MarrierJapanAnna Fali PROPOSAL
Leja V KuskoRussiaIoni Bowcher NEGOTIATION
Emily U OstroskyCanadaBernardo Dominic QUALIFIED
Cody Z RimFranceAnna Fali NEW
Juan A SchemmerRussiaAsiya Javayant RENEWAL
Misaki S ShinkoFranceStephen Shaw NEGOTIATION
Adams B MacleadFranceAnna Fali PROPOSAL
Aditya J ChuiRussiaStephen Shaw UNQUALIFIED
Munro X NickaAustraliaOnyama Limba QUALIFIED
Aika Q OldroydGermanyAsiya Javayant NEGOTIATION
Emily K SergiAustraliaOnyama Limba UNQUALIFIED
Julie P SergiBrazilElwin Sharvill QUALIFIED
Mayumi H WieserArgentinaAnna Fali NEGOTIATION
Munro R FerenczSpainAmy Elsner PROPOSAL
Julie B InouyeRussiaElwin Sharvill NEGOTIATION
David S OldroydUnited KingdomIvan Magalhaes UNQUALIFIED
Ricardo F PerinGermanyAsiya Javayant QUALIFIED
Greenwood H KolmetzBrazilIoni Bowcher RENEWAL
Jeanfrancois F SlusarskiSpainBernardo Dominic NEGOTIATION
David W WieserSpainAsiya Javayant UNQUALIFIED
David V ButtRussiaBernardo Dominic UNQUALIFIED
Smith B BriddickGermanyElwin Sharvill NEGOTIATION
Ricardo B RimBrazilAmy Elsner UNQUALIFIED
Adams B BologniaArgentinaIoni Bowcher UNQUALIFIED
Costa T MaletCanadaIoni Bowcher RENEWAL
Izzy P FlosiRussiaStephen Shaw UNQUALIFIED
Sinclair U PoquetteAustraliaElwin Sharvill NEGOTIATION
Frozen Columns
Name
Isabel N Oldroyd
Octavia Z Malet
Murillo T Bowley
Alejandro M Bowley
Ricardo S Ruta
Faith G Paprocki
Smith T Bolognia
Maria M Flosi
Jefferson S Tollner
Ricardo E Butt
Mujtaba Y Nestle
Antonio O Sergi
Isabel B Kusko
James Q Campain
Jeanfrancois Q Venere
Stacey V Ruta
Salvatore P Ostrosky
Greenwood V Stockham
Clifford X Ruta
Faith G Nicka
Ivar L Malet
Rodrigues Q Campain
Izzy I Malet
Maria R Gillian
Costa C Kolmetz
Isabel F Albares
Jeanfrancois Y Caldarera
Jeanfrancois F Stenseth
Wickens N Butt
Costa M Doe
Aditya S Albares
Smith S Sergi
Juan C Figeroa
Francesco W Paprocki
Emily E Slusarski
Francesco W Iturbide
Antonio H Nicka
Adams K Paprocki
Izzy A Ostrosky
Morrow V Stenseth
Arvin W Slusarski
Kaitlin Z Dilliard
Juan M Albares
Antonio X Campain
Jennifer I Inouye
Jeanfrancois P Figeroa
Salvatore Y Kusko
Mujtaba B Butt
Leja J Rulapaugh
Antonio H Gillian
IdCountryDate
1000Spain2026-10-12
1001United Kingdom2026-10-16
1002Canada2026-10-22
1003Italy2026-10-27
1004Argentina2026-10-20
1005Germany2026-11-01
1006Germany2026-10-12
1007India2026-11-03
1008India2026-10-31
1009India2026-10-13
1010Japan2026-10-15
1011Spain2026-11-04
1012India2026-10-13
1013Japan2026-10-13
1014India2026-10-21
1015Argentina2026-10-31
1016Australia2026-11-09
1017Italy2026-11-08
1018Argentina2026-10-13
1019Germany2026-10-27
1020Italy2026-10-31
1021Australia2026-10-19
1022Australia2026-10-23
1023Japan2026-10-14
1024Russia2026-10-27
1025Brazil2026-11-06
1026Brazil2026-10-26
1027Canada2026-11-04
1028Spain2026-10-12
1029Argentina2026-10-29
1030Brazil2026-10-17
1031United Kingdom2026-11-08
1032Brazil2026-10-26
1033Brazil2026-10-29
1034Japan2026-10-18
1035India2026-11-07
1036France2026-10-24
1037Japan2026-10-13
1038India2026-10-30
1039Spain2026-10-17
1040Spain2026-10-26
1041France2026-11-03
1042Spain2026-10-19
1043Russia2026-10-27
1044Germany2026-11-06
1045Russia2026-10-30
1046Canada2026-10-20
1047Spain2026-10-21
1048Japan2026-10-25
1049Russia2026-10-24

On-Demand Data

NameIdCountryDate
Ivar W Darakjy1000Russia2026-11-02
Leja A Vocelka1001Australia2026-10-18
Ashley E Doe1002Germany2026-10-16
Greenwood G Rim1003Russia2026-10-18
Kaitlin K Garufi1004Brazil2026-10-16
Clifford Y Maclead1005Russia2026-10-27
Kadeem N Wieser1006Canada2026-10-15
Aika F Morasca1007Japan2026-10-17
Misaki K Albares1008United Kingdom2026-10-16
Costa F Nicka1009Argentina2026-10-18
Aditya D Garufi1010India2026-11-01
Juan A Kolmetz1011Germany2026-10-14
Jones K Paprocki1012Russia2026-10-24
Mayumi N Maclead1013Canada2026-11-02
Kaitlin E Darakjy1014Italy2026-10-19
Kaitlin A Oldroyd1015France2026-10-24
Emily E Gaucho1016United Kingdom2026-10-15
Munro T Royster1017United Kingdom2026-10-31
Alejandro Z Nestle1018Japan2026-10-13
Jeanfrancois K Darakjy1019Spain2026-11-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey Z MacleadFranceAnna Fali NEGOTIATION
Antonio E MarrierGermanyOnyama Limba QUALIFIED
Sinclair U SchemmerGermanyElwin Sharvill NEGOTIATION
Kadeem Y GillianFranceIvan Magalhaes PROPOSAL
Mayumi N TollnerItalyAnna Fali NEGOTIATION
Arvin I PoquetteFranceXuxue Feng RENEWAL
Antonio N GlickJapanXuxue Feng RENEWAL
Arvin J CaudyIndiaAsiya Javayant UNQUALIFIED
David P ShinkoArgentinaAmy Elsner PROPOSAL
Sinclair C MorascaFranceElwin Sharvill NEW
Antonio S MarrierArgentinaOnyama Limba RENEWAL
Leja L DilliardArgentinaBernardo Dominic PROPOSAL
Aika W KolmetzRussiaAnna Fali NEW
Adams M FollerArgentinaAsiya Javayant RENEWAL
Costa X MaletBrazilElwin Sharvill PROPOSAL
Jefferson L MaletRussiaIvan Magalhaes QUALIFIED
Maisha R MarrierUnited KingdomIvan Magalhaes RENEWAL
Maisha U BologniaAustraliaBernardo Dominic RENEWAL
Faith T DilliardGermanyXuxue Feng PROPOSAL
Munro M FerenczUnited KingdomXuxue Feng PROPOSAL
James R GlickBrazilAsiya Javayant UNQUALIFIED
James D PaprockiAustraliaIvan Magalhaes PROPOSAL
Antonio N RutaAustraliaElwin Sharvill RENEWAL
Jennifer X InouyeIndiaAmy Elsner NEW
Murillo G GauchoCanadaBernardo Dominic NEW
David G FollerGermanyAnna Fali QUALIFIED
Leja Y RulapaughFranceAnna Fali PROPOSAL
Aruna V FollerAustraliaElwin Sharvill QUALIFIED
Kadeem G FerenczFranceXuxue Feng QUALIFIED
Isabel J WieserCanadaIvan Magalhaes UNQUALIFIED
Ricardo R DarakjyIndiaElwin Sharvill RENEWAL
Aditya O FigeroaBrazilIvan Magalhaes RENEWAL
Kaitlin U PerinAustraliaAmy Elsner NEW
Jones V NestleUnited KingdomXuxue Feng PROPOSAL
Rodrigues I MacleadFranceStephen Shaw NEGOTIATION
Francesco O OstroskyAustraliaElwin Sharvill NEW
Morrow T FigeroaArgentinaIvan Magalhaes NEW
Munro A MacleadIndiaAnna Fali QUALIFIED
Leon F GillianIndiaAnna Fali UNQUALIFIED
Aruna E MarrierArgentinaElwin 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>