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
Jennifer H MorascaRussiaIvan Magalhaes PROPOSAL
Adams Z SergiIndiaAsiya Javayant RENEWAL
Clifford J InouyeCanadaAmy Elsner UNQUALIFIED
Wickens V ButtAustraliaStephen Shaw NEGOTIATION
Antonio S KuskoUnited KingdomAmy Elsner NEGOTIATION
Munro I PaprockiRussiaStephen Shaw NEGOTIATION
Maria U CampainSpainStephen Shaw NEW
Morrow P AmigonArgentinaElwin Sharvill QUALIFIED
Jones E GillianCanadaXuxue Feng UNQUALIFIED
Ashley D SchemmerIndiaAmy Elsner QUALIFIED
Kadeem N FigeroaItalyIvan Magalhaes UNQUALIFIED
Arvin R SergiItalyBernardo Dominic NEW
Cody T RimRussiaElwin Sharvill NEW
Kaitlin Q MaletSpainStephen Shaw QUALIFIED
Smith T VenereCanadaAsiya Javayant PROPOSAL
Nicolas V WhobreyRussiaOnyama Limba NEW
James M RimSpainAsiya Javayant QUALIFIED
Johnson D SchemmerFranceXuxue Feng QUALIFIED
James K InouyeFranceBernardo Dominic UNQUALIFIED
Adams K InouyeItalyIvan Magalhaes UNQUALIFIED
Rodrigues V NestleAustraliaIvan Magalhaes QUALIFIED
Munro N DilliardArgentinaAnna Fali NEW
Francesco I ButtItalyElwin Sharvill NEGOTIATION
Jennifer A MacleadFranceIvan Magalhaes UNQUALIFIED
Maria V OstroskyAustraliaOnyama Limba PROPOSAL
Izzy I ShinkoAustraliaAnna Fali PROPOSAL
Kaitlin L MaletCanadaIvan Magalhaes NEW
Leon J AmigonAustraliaElwin Sharvill PROPOSAL
Jefferson E FigeroaUnited KingdomAsiya Javayant PROPOSAL
Sinclair V PerinIndiaAnna Fali NEW
James S DoeFranceBernardo Dominic RENEWAL
Maisha F VenereJapanElwin Sharvill NEGOTIATION
Ricardo S MarrierCanadaAnna Fali UNQUALIFIED
James W OstroskyBrazilIoni Bowcher UNQUALIFIED
Ivar J StensethBrazilAnna Fali NEW
Johnson F VenereBrazilStephen Shaw PROPOSAL
Francesco Q RutaItalyOnyama Limba UNQUALIFIED
Morrow X CampainArgentinaXuxue Feng NEGOTIATION
Aruna R ButtSpainXuxue Feng UNQUALIFIED
Julie H KuskoItalyIvan Magalhaes RENEWAL
Kadeem Z RimIndiaXuxue Feng PROPOSAL
Salvatore S MarrierUnited KingdomIoni Bowcher PROPOSAL
Mujtaba K InouyeUnited KingdomElwin Sharvill NEW
Leon I DarakjyCanadaAmy Elsner NEW
Jennifer Y GarufiRussiaAmy Elsner QUALIFIED
Tony S GlickFranceBernardo Dominic NEGOTIATION
Izzy P StensethFranceAnna Fali RENEWAL
Kadeem G KolmetzItalyIoni Bowcher UNQUALIFIED
Costa A FollerAustraliaAmy Elsner QUALIFIED
Greenwood B AlbaresJapanXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Smith R AlbaresGermanyOnyama Limba PROPOSAL
David E ButtIndiaElwin Sharvill NEW
Juan Q RulapaughBrazilXuxue Feng NEW
Isabel I CaldareraItalyElwin Sharvill QUALIFIED
Smith F SchemmerJapanElwin Sharvill NEGOTIATION
Wickens F FollerCanadaElwin Sharvill RENEWAL
Johnson Q NestleItalyIoni Bowcher NEGOTIATION
Munro R ChuiGermanyStephen Shaw QUALIFIED
Emily S DilliardArgentinaOnyama Limba NEGOTIATION
Clifford U KolmetzSpainAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon S FlosiCanada2026-09-21Buckley Miller Wright RENEWAL55Asiya Javayant
1001Leon U FlosiArgentina2026-09-05King, Christopher A Esq NEGOTIATION90Amy Elsner
1002Smith G ChuiBrazil2026-09-07Benton, John B Jr RENEWAL53Stephen Shaw
1003Alejandro Q MaletCanada2026-09-09Truhlar And Truhlar Attys RENEWAL41Stephen Shaw
1004David C ButtItaly2026-09-10Chanay, Jeffrey A Esq QUALIFIED90Bernardo Dominic
1005Leon I DarakjyRussia2026-09-01Buckley Miller Wright RENEWAL4Amy Elsner
1006Antonio W BriddickFrance2026-09-06Feltz Printing Service UNQUALIFIED97Asiya Javayant
1007Francesco T GlickAustralia2026-09-06Dorl, James J Esq NEGOTIATION44Asiya Javayant
1008Emily Z BowleyFrance2026-08-29King, Christopher A Esq NEW57Asiya Javayant
1009Mayumi W VenereSpain2026-09-04Buckley Miller Wright UNQUALIFIED10Onyama Limba
1010Aditya S ChuiBrazil2026-09-15Chemel, James L Cpa NEGOTIATION90Onyama Limba
1011Salvatore T PerinCanada2026-09-26Feltz Printing Service NEW60Elwin Sharvill
1012Jennifer Q WieserRussia2026-09-03Feiner Bros RENEWAL84Onyama Limba
1013Julie S GarufiItaly2026-09-12Feiner Bros QUALIFIED74Asiya Javayant
1014James N SaylorsIndia2026-09-17Feiner Bros QUALIFIED88Asiya Javayant
1015Jeanfrancois A DarakjyBrazil2026-09-07Chanay, Jeffrey A Esq UNQUALIFIED95Amy Elsner
1016Antonio V RoysterRussia2026-09-10Buckley Miller Wright NEGOTIATION2Asiya Javayant
1017Johnson A StensethIndia2026-09-10King, Christopher A Esq QUALIFIED27Ioni Bowcher
1018Aika M RoysterFrance2026-09-13Rousseaux, Michael Esq PROPOSAL32Asiya Javayant
1019Tony Q FlosiIndia2026-09-18Printing Dimensions QUALIFIED70Xuxue Feng
1020Clifford C SchemmerJapan2026-09-22Feltz Printing Service NEGOTIATION10Amy Elsner
1021Jefferson A KolmetzJapan2026-09-06Truhlar And Truhlar Attys NEGOTIATION86Stephen Shaw
1022Juan F VocelkaCanada2026-09-02Benton, John B Jr QUALIFIED96Xuxue Feng
1023Clifford V PerinGermany2026-08-29Benton, John B Jr RENEWAL60Onyama Limba
1024Arvin B MaletUnited Kingdom2026-09-26Commercial Press QUALIFIED13Ioni Bowcher
1025Mayumi W MaletSpain2026-09-18Morlong Associates NEGOTIATION79Stephen Shaw
1026Jefferson J AmigonBrazil2026-09-02King, Christopher A Esq NEGOTIATION78Amy Elsner
1027Leja J StockhamJapan2026-09-13King, Christopher A Esq RENEWAL93Bernardo Dominic
1028Aika K PoquetteRussia2026-09-15Morlong Associates QUALIFIED30Xuxue Feng
1029Salvatore Q WhobreyIndia2026-09-25Truhlar And Truhlar Attys NEGOTIATION79Onyama Limba
1030Rodrigues H PaprockiIndia2026-09-17Chanay, Jeffrey A Esq RENEWAL46Onyama Limba
1031Chavez W BriddickCanada2026-08-30Commercial Press QUALIFIED54Ioni Bowcher
1032Jeanfrancois K KuskoIndia2026-09-14Printing Dimensions RENEWAL40Asiya Javayant
1033Mayumi G MaletBrazil2026-09-16Commercial Press PROPOSAL70Anna Fali
1034Leja S FlosiCanada2026-09-15Rousseaux, Michael Esq PROPOSAL88Anna Fali
1035Deepesh S VenereRussia2026-09-24Morlong Associates UNQUALIFIED61Anna Fali
1036Aika U MaletRussia2026-09-18Chemel, James L Cpa NEW55Elwin Sharvill
1037Johnson F MaletFrance2026-08-31Truhlar And Truhlar Attys NEW27Ivan Magalhaes
1038Tony L FollerIndia2026-09-09Buckley Miller Wright NEGOTIATION23Xuxue Feng
1039Jennifer P FerenczJapan2026-09-08Printing Dimensions QUALIFIED3Stephen Shaw
1040Smith B WhobreyJapan2026-09-17Benton, John B Jr PROPOSAL11Bernardo Dominic
1041Antonio Z StockhamFrance2026-09-25Benton, John B Jr RENEWAL58Bernardo Dominic
1042Mayumi J CaldareraFrance2026-09-09Rangoni Of Florence NEW98Amy Elsner
1043Mujtaba H BriddickUnited Kingdom2026-09-01Feiner Bros NEW67Asiya Javayant
1044Munro W DarakjyArgentina2026-09-09Printing Dimensions NEW34Amy Elsner
1045Ashley T PerinCanada2026-09-04Dorl, James J Esq UNQUALIFIED60Anna Fali
1046Murillo K BowleyFrance2026-09-27King, Christopher A Esq PROPOSAL14Onyama Limba
1047Greenwood Y NestleAustralia2026-09-20Feltz Printing Service NEGOTIATION55Ivan Magalhaes
1048Julie C OstroskySpain2026-09-16Chanay, Jeffrey A Esq QUALIFIED98Elwin Sharvill
1049Jefferson I PoquetteJapan2026-09-02Feltz Printing Service PROPOSAL97Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Leja M InouyeSpainOnyama Limba QUALIFIED
Chavez G WieserUnited KingdomElwin Sharvill NEGOTIATION
Salvatore V AlbaresIndiaStephen Shaw PROPOSAL
Salvatore V SergiIndiaIoni Bowcher RENEWAL
Maria P GlickCanadaIvan Magalhaes PROPOSAL
Antonio N FigeroaUnited KingdomStephen Shaw RENEWAL
Octavia U InouyeCanadaAnna Fali QUALIFIED
Juan E GarufiRussiaBernardo Dominic UNQUALIFIED
Leon U ButtRussiaAmy Elsner RENEWAL
Octavia M KolmetzUnited KingdomAsiya Javayant PROPOSAL
Deepesh T StensethIndiaBernardo Dominic NEGOTIATION
Leja R InouyeItalyStephen Shaw RENEWAL
Ivar K RoysterSpainBernardo Dominic RENEWAL
Rodrigues M CaudyUnited KingdomBernardo Dominic RENEWAL
David L FigeroaCanadaAnna Fali RENEWAL
Julie Y FigeroaGermanyAmy Elsner NEW
Clifford P FlosiGermanyBernardo Dominic QUALIFIED
Stacey H BriddickItalyIoni Bowcher QUALIFIED
Murillo C RoysterBrazilElwin Sharvill RENEWAL
Faith B TollnerRussiaAnna Fali UNQUALIFIED
Isabel K ChuiSpainAnna Fali NEGOTIATION
Jones N SergiCanadaXuxue Feng QUALIFIED
Deepesh O FerenczItalyIvan Magalhaes NEW
Leon B GarufiJapanBernardo Dominic NEW
Maisha M RimItalyIvan Magalhaes PROPOSAL
Deepesh S RoysterUnited KingdomIoni Bowcher PROPOSAL
Smith V KuskoIndiaXuxue Feng UNQUALIFIED
David X DoeSpainAmy Elsner RENEWAL
Chavez L PaprockiItalyAsiya Javayant RENEWAL
Ivar Z BriddickBrazilAnna Fali NEW
Mayumi P KolmetzJapanAmy Elsner PROPOSAL
Munro S BriddickIndiaOnyama Limba NEW
Nicolas M TollnerJapanElwin Sharvill UNQUALIFIED
Antonio P GlickIndiaOnyama Limba NEW
Jones I AmigonJapanAmy Elsner QUALIFIED
Francesco U WaycottArgentinaOnyama Limba PROPOSAL
Munro H WhobreyIndiaIvan Magalhaes UNQUALIFIED
Julie U OldroydJapanElwin Sharvill NEW
Cody J DarakjyCanadaStephen Shaw UNQUALIFIED
Johnson R GauchoUnited KingdomAmy Elsner UNQUALIFIED
Juan X GillianBrazilElwin Sharvill RENEWAL
Claire K CaudyGermanyXuxue Feng RENEWAL
Chavez H DarakjyGermanyIoni Bowcher NEW
Johnson U BologniaIndiaIoni Bowcher NEW
David S WhobreyFranceXuxue Feng PROPOSAL
Adams V FollerItalyBernardo Dominic PROPOSAL
Mayumi Q NestleIndiaIoni Bowcher NEW
Silvio A BologniaFranceIvan Magalhaes NEGOTIATION
James Z MaletGermanyIvan Magalhaes NEGOTIATION
Leon N RutaGermanyIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Jennifer M Morasca
Silvio T Dilliard
Tony T Malet
Izzy W Briddick
Jefferson E Glick
Cody K Chui
Leon O Nicka
Jeanfrancois Q Schemmer
Johnson N Paprocki
Nicolas F Ferencz
Clifford W Nicka
Stacey T Glick
Costa E Butt
Francesco I Rim
Murillo E Slusarski
Silvio H Bolognia
Ivar Z Ostrosky
Faith O Caldarera
Silvio F Briddick
Jennifer F Stenseth
Ivar X Rim
Aruna S Caldarera
Deepesh W Rim
Kaitlin V Kusko
Ivar L Kolmetz
Isabel A Sergi
Maria E Butt
Mujtaba P Caldarera
Kaitlin L Slusarski
Salvatore L Malet
Tony S Flosi
Costa F Briddick
Murillo K Morasca
Aditya B Tollner
Kaitlin U Stenseth
Chavez R Stenseth
Francesco J Perin
Jeanfrancois U Waycott
Costa X Kusko
Munro Y Oldroyd
Alejandro I Bowley
James V Stockham
Munro B Maclead
Nicolas C Kolmetz
Juan X Stockham
Octavia U Flosi
Chavez W Ferencz
Aruna G Amigon
Maria Q Amigon
Salvatore E Campain
IdCountryDate
1000Canada2026-09-15
1001Spain2026-08-30
1002Japan2026-08-29
1003India2026-09-01
1004Japan2026-09-15
1005Japan2026-09-19
1006Canada2026-09-27
1007India2026-09-15
1008Italy2026-09-07
1009Russia2026-09-26
1010France2026-09-20
1011Argentina2026-09-01
1012Canada2026-09-08
1013Australia2026-09-09
1014France2026-08-30
1015Brazil2026-09-02
1016Australia2026-09-20
1017Spain2026-09-10
1018France2026-09-23
1019Germany2026-09-15
1020Brazil2026-08-29
1021Germany2026-09-21
1022Spain2026-09-22
1023United Kingdom2026-08-30
1024United Kingdom2026-09-19
1025France2026-09-16
1026Spain2026-09-08
1027India2026-09-10
1028France2026-08-29
1029India2026-09-07
1030Japan2026-09-13
1031Italy2026-09-10
1032Australia2026-09-21
1033Japan2026-09-25
1034Japan2026-09-09
1035Argentina2026-09-17
1036Canada2026-09-26
1037Italy2026-09-14
1038Germany2026-09-27
1039Spain2026-09-26
1040Spain2026-09-03
1041Brazil2026-09-14
1042Italy2026-09-20
1043Brazil2026-09-14
1044Spain2026-09-12
1045Italy2026-09-24
1046India2026-09-02
1047Brazil2026-09-05
1048Spain2026-09-07
1049Russia2026-09-13

On-Demand Data

NameIdCountryDate
Jeanfrancois T Chui1000Brazil2026-09-15
Izzy N Maclead1001Canada2026-08-31
Jennifer M Iturbide1002India2026-09-15
Murillo B Doe1003Russia2026-09-07
Ricardo T Garufi1004Argentina2026-09-13
Emily O Rim1005Brazil2026-09-15
Francesco V Stenseth1006Argentina2026-09-11
Darci Q Whobrey1007United Kingdom2026-09-25
Aika Y Perin1008Canada2026-09-21
Chavez U Nicka1009Italy2026-08-29
Johnson V Poquette1010Australia2026-09-13
Ivar E Sergi1011Germany2026-09-22
Alejandro S Foller1012Germany2026-09-09
Leon I Kolmetz1013Australia2026-09-19
Octavia P Campain1014Brazil2026-08-29
Faith N Ostrosky1015Japan2026-09-10
Aditya F Iturbide1016United Kingdom2026-08-29
Aika E Tollner1017India2026-09-10
Deepesh H Whobrey1018France2026-09-23
Mayumi P Briddick1019France2026-09-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy U GillianAustraliaAmy Elsner NEW
Morrow Q RimGermanyIvan Magalhaes RENEWAL
Munro P AlbaresIndiaStephen Shaw RENEWAL
Kaitlin P ChuiBrazilIvan Magalhaes UNQUALIFIED
Ricardo L PoquetteItalyElwin Sharvill UNQUALIFIED
Chavez Z PerinBrazilStephen Shaw NEW
David N DilliardRussiaOnyama Limba UNQUALIFIED
Aika M ChuiArgentinaIvan Magalhaes RENEWAL
Morrow O BologniaIndiaAmy Elsner NEW
Izzy F GauchoUnited KingdomElwin Sharvill RENEWAL
Ricardo H MarrierGermanyElwin Sharvill RENEWAL
Adams G NestleItalyAnna Fali UNQUALIFIED
Leja U MaletJapanIvan Magalhaes UNQUALIFIED
Maisha B FollerCanadaOnyama Limba NEGOTIATION
Ivar F SlusarskiArgentinaStephen Shaw NEGOTIATION
Rodrigues U StockhamJapanAmy Elsner NEW
Alejandro K RimIndiaAmy Elsner PROPOSAL
Munro I NickaBrazilAnna Fali UNQUALIFIED
Misaki X MaletAustraliaAsiya Javayant QUALIFIED
Arvin C ButtCanadaIoni Bowcher NEW
Rodrigues P GillianSpainBernardo Dominic UNQUALIFIED
Misaki H NickaGermanyAnna Fali UNQUALIFIED
Misaki D InouyeSpainOnyama Limba NEGOTIATION
Antonio W SergiCanadaAnna Fali PROPOSAL
Octavia Q StockhamUnited KingdomOnyama Limba NEGOTIATION
Sinclair X IturbideUnited KingdomStephen Shaw NEW
Kadeem L MarrierUnited KingdomOnyama Limba NEGOTIATION
Julie F DarakjyAustraliaStephen Shaw QUALIFIED
Alejandro P MaletGermanyIvan Magalhaes UNQUALIFIED
Mujtaba N FerenczGermanyIoni Bowcher PROPOSAL
Costa Q WieserJapanAmy Elsner PROPOSAL
Tony N MaletCanadaBernardo Dominic NEW
Maisha X CaldareraArgentinaElwin Sharvill NEW
Stacey A TollnerItalyStephen Shaw PROPOSAL
Francesco U VocelkaItalyElwin Sharvill PROPOSAL
Ivar I FigeroaArgentinaIvan Magalhaes UNQUALIFIED
Antonio H WieserRussiaBernardo Dominic QUALIFIED
Misaki T BowleyIndiaAnna Fali QUALIFIED
Antonio V FerenczBrazilOnyama Limba NEGOTIATION
Johnson F BriddickBrazilAsiya Javayant RENEWAL

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