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
Munro K MaletFranceElwin Sharvill QUALIFIED
Juan Z InouyeSpainBernardo Dominic NEGOTIATION
Juan B MacleadSpainIoni Bowcher NEW
Clifford M MaletItalyAmy Elsner QUALIFIED
Munro B RoysterBrazilAsiya Javayant NEW
Greenwood Z OldroydIndiaOnyama Limba QUALIFIED
Rodrigues F SlusarskiItalyElwin Sharvill NEGOTIATION
Leja Q VocelkaJapanStephen Shaw QUALIFIED
Jennifer K InouyeAustraliaAnna Fali NEW
Aika L GarufiArgentinaBernardo Dominic UNQUALIFIED
Emily F NestleUnited KingdomIoni Bowcher QUALIFIED
Maria Z RimAustraliaBernardo Dominic UNQUALIFIED
Claire A RimUnited KingdomBernardo Dominic NEW
Wickens O MaletGermanyElwin Sharvill NEGOTIATION
Silvio L KuskoFranceXuxue Feng RENEWAL
Jones W RimBrazilXuxue Feng RENEWAL
Jennifer P AmigonGermanyStephen Shaw RENEWAL
Greenwood B BowleyItalyAnna Fali QUALIFIED
Leja Q OldroydFranceElwin Sharvill QUALIFIED
Jeanfrancois G IturbideFranceOnyama Limba QUALIFIED
Aika E MarrierBrazilOnyama Limba NEW
Wickens N DilliardFranceXuxue Feng NEGOTIATION
Ivar P ButtIndiaOnyama Limba QUALIFIED
Leja F MorascaSpainStephen Shaw RENEWAL
Jeanfrancois Q WhobreyCanadaAnna Fali PROPOSAL
Claire K CaudyCanadaOnyama Limba PROPOSAL
Isabel A InouyeBrazilXuxue Feng PROPOSAL
Emily Z TollnerArgentinaAnna Fali NEGOTIATION
Stacey U RulapaughGermanyAsiya Javayant PROPOSAL
Chavez R StockhamGermanyXuxue Feng QUALIFIED
Isabel L GarufiJapanOnyama Limba UNQUALIFIED
Johnson W NestleBrazilIvan Magalhaes QUALIFIED
Alejandro R WhobreyGermanyAmy Elsner UNQUALIFIED
Julie F MarrierArgentinaElwin Sharvill NEGOTIATION
Alejandro N BologniaUnited KingdomAnna Fali NEW
Claire V WieserGermanyXuxue Feng NEGOTIATION
Deepesh P DilliardSpainXuxue Feng RENEWAL
Julie Z RulapaughIndiaIoni Bowcher PROPOSAL
Aditya N SlusarskiFranceOnyama Limba UNQUALIFIED
Murillo G ShinkoBrazilXuxue Feng QUALIFIED
Silvio V PaprockiBrazilAsiya Javayant NEGOTIATION
Mujtaba U OldroydBrazilAnna Fali PROPOSAL
Arvin H FlosiItalyIvan Magalhaes NEGOTIATION
Ivar B StensethIndiaOnyama Limba NEW
Aditya W ButtItalyIvan Magalhaes UNQUALIFIED
Salvatore G ChuiGermanyIvan Magalhaes UNQUALIFIED
Julie V StockhamIndiaElwin Sharvill QUALIFIED
Chavez D NestleRussiaStephen Shaw NEGOTIATION
Jennifer P BologniaIndiaBernardo Dominic NEW
Stacey P BowleyJapanStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Maria G AlbaresRussiaStephen Shaw NEGOTIATION
Maria F DarakjyItalyElwin Sharvill NEGOTIATION
Aditya N TollnerFranceIvan Magalhaes NEGOTIATION
Jennifer F RutaCanadaAsiya Javayant PROPOSAL
Maria P InouyeAustraliaXuxue Feng NEGOTIATION
Chavez L SchemmerSpainStephen Shaw PROPOSAL
Leja M PerinFranceBernardo Dominic QUALIFIED
Ivar X TollnerItalyAsiya Javayant NEGOTIATION
Ivar Q DilliardIndiaAmy Elsner UNQUALIFIED
Juan Y DoeSpainAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar H SchemmerJapan2026-10-09Chemel, James L Cpa NEGOTIATION8Asiya Javayant
1001Isabel K CampainIndia2026-10-30Buckley Miller Wright QUALIFIED91Amy Elsner
1002Aika E ButtFrance2026-10-31Benton, John B Jr NEW17Ioni Bowcher
1003Jennifer R MaletIndia2026-10-23Chemel, James L Cpa QUALIFIED48Ivan Magalhaes
1004Faith L VocelkaItaly2026-10-22Rousseaux, Michael Esq QUALIFIED98Elwin Sharvill
1005Francesco W SchemmerBrazil2026-10-18Rangoni Of Florence QUALIFIED59Ioni Bowcher
1006Claire D InouyeGermany2026-10-25Chemel, James L Cpa UNQUALIFIED23Bernardo Dominic
1007Isabel D MacleadUnited Kingdom2026-10-16Chemel, James L Cpa NEW30Amy Elsner
1008Aika F BowleyFrance2026-10-13Dorl, James J Esq PROPOSAL19Ioni Bowcher
1009Jefferson T VocelkaFrance2026-10-20Feiner Bros UNQUALIFIED84Anna Fali
1010Silvio H FlosiSpain2026-10-03Feiner Bros NEGOTIATION90Asiya Javayant
1011James K BologniaFrance2026-10-02Benton, John B Jr PROPOSAL72Stephen Shaw
1012Misaki W SlusarskiSpain2026-10-21Printing Dimensions QUALIFIED17Amy Elsner
1013Smith D DilliardSpain2026-10-16King, Christopher A Esq QUALIFIED30Onyama Limba
1014Stacey I GarufiFrance2026-10-31Feltz Printing Service PROPOSAL80Bernardo Dominic
1015Salvatore D RulapaughRussia2026-10-09Benton, John B Jr QUALIFIED61Ioni Bowcher
1016Aditya H RutaBrazil2026-10-07Chapman, Ross E Esq UNQUALIFIED0Stephen Shaw
1017Silvio H MacleadItaly2026-10-03Printing Dimensions QUALIFIED30Amy Elsner
1018Silvio I DilliardJapan2026-10-26Chanay, Jeffrey A Esq QUALIFIED85Xuxue Feng
1019Silvio B KolmetzItaly2026-10-06Rangoni Of Florence PROPOSAL59Elwin Sharvill
1020Isabel L VocelkaArgentina2026-10-26Dorl, James J Esq NEW70Anna Fali
1021Chavez W CaldareraRussia2026-10-08Chapman, Ross E Esq RENEWAL15Amy Elsner
1022Misaki P MaletUnited Kingdom2026-10-03Printing Dimensions NEW52Amy Elsner
1023Julie J BologniaGermany2026-10-28Dorl, James J Esq RENEWAL55Anna Fali
1024Ricardo B MaletIndia2026-10-27King, Christopher A Esq PROPOSAL41Onyama Limba
1025Emily V OldroydArgentina2026-10-02Benton, John B Jr QUALIFIED9Anna Fali
1026Aruna T WaycottFrance2026-10-19Feltz Printing Service NEGOTIATION7Bernardo Dominic
1027Tony J ButtItaly2026-10-19Chemel, James L Cpa NEGOTIATION99Elwin Sharvill
1028Jeanfrancois K MacleadFrance2026-10-14Feltz Printing Service RENEWAL88Ivan Magalhaes
1029Ashley E OstroskyCanada2026-10-09King, Christopher A Esq UNQUALIFIED95Xuxue Feng
1030Maria R NickaRussia2026-10-23Chanay, Jeffrey A Esq NEGOTIATION22Asiya Javayant
1031Costa B BriddickItaly2026-10-05King, Christopher A Esq NEW97Asiya Javayant
1032Jeanfrancois X MacleadAustralia2026-10-13Chemel, James L Cpa QUALIFIED71Elwin Sharvill
1033Leja D VenereIndia2026-10-20Truhlar And Truhlar Attys NEGOTIATION12Elwin Sharvill
1034Mayumi F RoysterFrance2026-10-31King, Christopher A Esq NEW97Elwin Sharvill
1035Silvio N StensethBrazil2026-10-09Chemel, James L Cpa QUALIFIED22Onyama Limba
1036Ricardo C DarakjyAustralia2026-10-21Feltz Printing Service NEW76Stephen Shaw
1037Sinclair M KolmetzSpain2026-10-05Commercial Press NEW48Asiya Javayant
1038Jennifer H BriddickIndia2026-10-22King, Christopher A Esq UNQUALIFIED92Elwin Sharvill
1039Mayumi Q NestleArgentina2026-10-30Rousseaux, Michael Esq UNQUALIFIED30Onyama Limba
1040David V TollnerSpain2026-10-29King, Christopher A Esq QUALIFIED35Onyama Limba
1041Kaitlin P BowleyFrance2026-10-18Chemel, James L Cpa NEGOTIATION64Ioni Bowcher
1042Aika W RulapaughBrazil2026-10-13Dorl, James J Esq UNQUALIFIED60Asiya Javayant
1043Darci S BologniaUnited Kingdom2026-10-28Chanay, Jeffrey A Esq RENEWAL10Ivan Magalhaes
1044Costa D WhobreyItaly2026-10-08Chanay, Jeffrey A Esq NEW69Asiya Javayant
1045Silvio L WieserArgentina2026-10-08King, Christopher A Esq RENEWAL49Elwin Sharvill
1046Julie O ShinkoItaly2026-10-03Rangoni Of Florence UNQUALIFIED5Asiya Javayant
1047Mujtaba W BologniaGermany2026-10-08Chanay, Jeffrey A Esq PROPOSAL22Stephen Shaw
1048Faith I FlosiGermany2026-10-28Feltz Printing Service RENEWAL25Bernardo Dominic
1049Ricardo E KolmetzFrance2026-10-29King, Christopher A Esq PROPOSAL1Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
David I MaletItalyXuxue Feng PROPOSAL
Aditya G FerenczSpainIvan Magalhaes NEW
Deepesh M PoquetteIndiaStephen Shaw NEW
Leon W AlbaresSpainXuxue Feng UNQUALIFIED
Salvatore K MaletArgentinaBernardo Dominic RENEWAL
Maria X FollerGermanyAmy Elsner PROPOSAL
James T AlbaresCanadaIoni Bowcher QUALIFIED
Nicolas W DarakjyIndiaIoni Bowcher PROPOSAL
Mayumi R MarrierAustraliaStephen Shaw NEGOTIATION
Leja B PoquetteItalyAmy Elsner QUALIFIED
Sinclair L WieserUnited KingdomStephen Shaw QUALIFIED
Smith H StensethItalyIvan Magalhaes NEW
Murillo M BriddickSpainBernardo Dominic UNQUALIFIED
Wickens V DarakjySpainIvan Magalhaes UNQUALIFIED
Misaki A VocelkaAustraliaIoni Bowcher QUALIFIED
Julie C GauchoUnited KingdomOnyama Limba QUALIFIED
Juan J SchemmerFranceAmy Elsner NEGOTIATION
Aruna V ShinkoAustraliaBernardo Dominic NEGOTIATION
James O NestleIndiaAsiya Javayant NEW
Claire N VocelkaJapanAnna Fali UNQUALIFIED
James I GillianAustraliaStephen Shaw RENEWAL
Kaitlin I FigeroaArgentinaBernardo Dominic RENEWAL
Salvatore H MarrierGermanyAsiya Javayant NEGOTIATION
James D NestleCanadaBernardo Dominic PROPOSAL
Tony T MorascaRussiaBernardo Dominic NEGOTIATION
Nicolas K DarakjySpainAnna Fali RENEWAL
Maisha A DoeIndiaIvan Magalhaes UNQUALIFIED
Kadeem Z WieserRussiaOnyama Limba RENEWAL
Smith G MaletArgentinaXuxue Feng NEGOTIATION
Greenwood J StockhamAustraliaXuxue Feng NEGOTIATION
Sinclair K ChuiAustraliaAmy Elsner RENEWAL
Alejandro H MaletSpainStephen Shaw RENEWAL
Darci P SaylorsAustraliaElwin Sharvill RENEWAL
Leja F GauchoItalyAnna Fali UNQUALIFIED
Leja H StockhamItalyOnyama Limba QUALIFIED
Misaki F IturbideSpainAmy Elsner UNQUALIFIED
Nicolas D FollerUnited KingdomIoni Bowcher UNQUALIFIED
Maria T BologniaSpainStephen Shaw NEW
Octavia C BriddickRussiaAmy Elsner RENEWAL
Jones H FlosiRussiaOnyama Limba QUALIFIED
Julie J MaletItalyBernardo Dominic RENEWAL
Alejandro E WhobreyIndiaAsiya Javayant NEW
Antonio V CaldareraAustraliaOnyama Limba QUALIFIED
Mayumi T RulapaughArgentinaIvan Magalhaes NEGOTIATION
Mayumi S AmigonIndiaBernardo Dominic NEW
Nicolas J RimFranceAsiya Javayant UNQUALIFIED
Juan Y NickaArgentinaIoni Bowcher QUALIFIED
Costa F RoysterItalyAsiya Javayant QUALIFIED
Kaitlin L DarakjySpainIoni Bowcher NEW
Silvio D GarufiRussiaElwin Sharvill NEGOTIATION
Frozen Columns
Name
Aika M Kolmetz
Maria D Kusko
Ivar T Albares
Ricardo B Waycott
David S Maclead
Ashley I Schemmer
Johnson V Nestle
Kadeem D Inouye
Cody C Whobrey
Leja V Sergi
Costa H Perin
Claire M Figeroa
James Z Shinko
Maisha Z Wieser
Rodrigues N Iturbide
Salvatore W Caudy
Francesco S Darakjy
Maria H Stenseth
Octavia V Ferencz
Misaki B Butt
Munro H Garufi
Maria G Vocelka
Leon B Rim
Jones O Gillian
Misaki Z Flosi
Octavia K Caldarera
Misaki U Marrier
Morrow T Bowley
Greenwood E Amigon
Wickens G Bowley
Leja A Doe
Aditya D Morasca
Mayumi L Venere
Aruna V Ruta
Jeanfrancois U Flosi
Sinclair Q Vocelka
Tony D Gillian
Julie N Gillian
Mujtaba K Ruta
Ricardo M Bolognia
Murillo J Bowley
Aruna N Ostrosky
Antonio R Sergi
Clifford T Stockham
Jeanfrancois Z Paprocki
Ashley H Sergi
Maisha U Saylors
Munro C Butt
Deepesh B Glick
Maria A Iturbide
IdCountryDate
1000Argentina2026-10-25
1001Germany2026-10-05
1002India2026-10-30
1003Germany2026-10-04
1004Japan2026-10-25
1005France2026-10-26
1006Argentina2026-10-31
1007Germany2026-10-13
1008Argentina2026-10-05
1009Russia2026-10-19
1010Japan2026-10-09
1011Germany2026-10-15
1012Brazil2026-10-15
1013Brazil2026-10-27
1014Canada2026-10-25
1015Argentina2026-10-07
1016Italy2026-10-02
1017France2026-10-22
1018Canada2026-10-24
1019Brazil2026-10-31
1020Canada2026-10-11
1021Canada2026-10-31
1022Argentina2026-10-06
1023Russia2026-10-03
1024Canada2026-10-22
1025United Kingdom2026-10-18
1026Argentina2026-10-15
1027France2026-10-21
1028Brazil2026-10-08
1029Australia2026-10-05
1030Brazil2026-10-10
1031Russia2026-10-19
1032United Kingdom2026-10-19
1033France2026-10-20
1034Brazil2026-10-27
1035Italy2026-10-08
1036Russia2026-10-25
1037France2026-10-19
1038France2026-10-30
1039Canada2026-10-19
1040Germany2026-10-28
1041Argentina2026-10-04
1042Spain2026-10-03
1043Italy2026-10-25
1044United Kingdom2026-10-03
1045Brazil2026-10-05
1046Italy2026-10-11
1047France2026-10-18
1048Brazil2026-10-07
1049Brazil2026-10-23

On-Demand Data

NameIdCountryDate
Jeanfrancois O Figeroa1000Canada2026-10-17
Aika T Wieser1001France2026-10-04
Kadeem G Chui1002Japan2026-10-29
Murillo Z Shinko1003Japan2026-10-03
Chavez R Wieser1004Italy2026-10-17
Morrow Y Royster1005Spain2026-10-23
Maria P Chui1006Australia2026-10-16
Johnson N Maclead1007Japan2026-10-26
Jeanfrancois O Slusarski1008Brazil2026-10-16
Sinclair H Marrier1009Japan2026-10-03
Maria D Morasca1010Japan2026-10-07
Salvatore H Bowley1011United Kingdom2026-10-14
Aika B Foller1012Germany2026-10-26
Faith A Figeroa1013Argentina2026-10-04
Greenwood D Bolognia1014France2026-10-29
Munro W Slusarski1015Canada2026-10-20
Kadeem S Caudy1016Spain2026-10-07
Octavia U Dilliard1017Canada2026-10-31
Rodrigues L Ostrosky1018Japan2026-10-15
Jeanfrancois C Caldarera1019Argentina2026-10-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire N IturbideFranceIoni Bowcher UNQUALIFIED
Adams G MaletBrazilXuxue Feng PROPOSAL
Stacey U WhobreyIndiaXuxue Feng RENEWAL
Octavia V FigeroaJapanStephen Shaw NEW
Antonio C StensethBrazilBernardo Dominic NEGOTIATION
Julie D DilliardSpainIvan Magalhaes QUALIFIED
Smith B DarakjyArgentinaOnyama Limba RENEWAL
Mayumi L FlosiBrazilIoni Bowcher RENEWAL
Cody C DoeArgentinaAnna Fali UNQUALIFIED
Octavia E AmigonIndiaElwin Sharvill QUALIFIED
Deepesh Q CaldareraCanadaAsiya Javayant NEW
Nicolas Z GauchoIndiaStephen Shaw QUALIFIED
Isabel R RutaRussiaElwin Sharvill RENEWAL
Silvio L MaletFranceElwin Sharvill UNQUALIFIED
Adams I PoquetteSpainOnyama Limba PROPOSAL
Costa A MaletAustraliaAmy Elsner QUALIFIED
Jefferson S VenereArgentinaElwin Sharvill QUALIFIED
Leon K GillianBrazilElwin Sharvill UNQUALIFIED
James D CampainUnited KingdomIvan Magalhaes PROPOSAL
Chavez H DarakjyAustraliaBernardo Dominic QUALIFIED
Chavez K OldroydItalyOnyama Limba NEGOTIATION
Julie O ButtSpainAsiya Javayant QUALIFIED
Clifford L PoquetteGermanyIvan Magalhaes PROPOSAL
Mujtaba Q ChuiCanadaOnyama Limba QUALIFIED
Darci J MaletIndiaAsiya Javayant RENEWAL
Ivar O KolmetzAustraliaOnyama Limba NEGOTIATION
Francesco Z RulapaughBrazilAmy Elsner NEGOTIATION
Smith Q MaletCanadaStephen Shaw UNQUALIFIED
Emily S RimItalyElwin Sharvill QUALIFIED
Costa P ShinkoItalyAmy Elsner NEGOTIATION
Antonio A AlbaresJapanOnyama Limba NEW
Smith Y GarufiRussiaAnna Fali UNQUALIFIED
Johnson B BowleyRussiaStephen Shaw NEGOTIATION
Isabel C DilliardArgentinaAnna Fali NEGOTIATION
Salvatore L ButtGermanyIvan Magalhaes UNQUALIFIED
Misaki D ButtRussiaAsiya Javayant PROPOSAL
Nicolas N MaletBrazilIvan Magalhaes UNQUALIFIED
Izzy R MaletRussiaAmy Elsner NEGOTIATION
Jeanfrancois L ChuiCanadaIoni Bowcher NEW
Stacey S BowleyFranceIoni Bowcher QUALIFIED

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