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
Ivar K RulapaughSpainStephen Shaw NEW
Johnson A MacleadSpainXuxue Feng NEGOTIATION
Kadeem W ChuiCanadaOnyama Limba PROPOSAL
Faith V FlosiIndiaBernardo Dominic RENEWAL
Silvio J SergiJapanIvan Magalhaes NEW
Jefferson J DilliardFranceAsiya Javayant RENEWAL
Sinclair O NickaRussiaElwin Sharvill NEW
Stacey U FlosiSpainAnna Fali RENEWAL
Kaitlin Q FerenczUnited KingdomIvan Magalhaes NEW
Silvio P ButtIndiaIvan Magalhaes NEW
Deepesh K NickaRussiaStephen Shaw PROPOSAL
Deepesh P PaprockiIndiaOnyama Limba PROPOSAL
Aruna B GillianRussiaAsiya Javayant NEGOTIATION
Aika J DoeFranceAmy Elsner RENEWAL
Jefferson J GarufiCanadaOnyama Limba PROPOSAL
Murillo J RoysterFranceIoni Bowcher QUALIFIED
David D PerinFranceOnyama Limba NEGOTIATION
Aditya O RoysterArgentinaIvan Magalhaes QUALIFIED
Costa D RoysterArgentinaIoni Bowcher NEW
Antonio X RoysterArgentinaElwin Sharvill NEGOTIATION
Octavia G ShinkoFranceOnyama Limba NEW
Alejandro L PoquetteGermanyIoni Bowcher UNQUALIFIED
Darci S ButtSpainAmy Elsner NEGOTIATION
Izzy U CampainCanadaIoni Bowcher UNQUALIFIED
Adams Y TollnerSpainStephen Shaw NEW
Kadeem Y WaycottJapanIvan Magalhaes PROPOSAL
Kadeem G ButtSpainXuxue Feng NEW
Silvio U CampainCanadaStephen Shaw UNQUALIFIED
Kadeem P VocelkaAustraliaAmy Elsner UNQUALIFIED
Clifford U ChuiJapanStephen Shaw NEW
Tony Q DilliardUnited KingdomElwin Sharvill QUALIFIED
Silvio T RutaArgentinaXuxue Feng PROPOSAL
Claire H CaldareraItalyStephen Shaw PROPOSAL
Julie Y ButtAustraliaIoni Bowcher NEGOTIATION
Johnson T RoysterItalyIvan Magalhaes NEGOTIATION
Salvatore T MarrierFranceBernardo Dominic RENEWAL
Greenwood N PoquetteCanadaBernardo Dominic PROPOSAL
Ricardo Y WhobreyAustraliaAnna Fali NEW
Smith H KuskoUnited KingdomAsiya Javayant QUALIFIED
Cody E PaprockiSpainBernardo Dominic NEW
Alejandro D MaletItalyElwin Sharvill RENEWAL
Ashley D SaylorsFranceStephen Shaw NEGOTIATION
Aika I DilliardArgentinaIvan Magalhaes QUALIFIED
Darci R PerinItalyAmy Elsner UNQUALIFIED
Smith K RimBrazilStephen Shaw NEW
David U FlosiGermanyAnna Fali RENEWAL
Arvin R PerinFranceAsiya Javayant QUALIFIED
Arvin P CaldareraAustraliaElwin Sharvill QUALIFIED
Mayumi H DoeGermanyAsiya Javayant UNQUALIFIED
Izzy R GauchoBrazilAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Jones J TollnerUnited KingdomElwin Sharvill UNQUALIFIED
Aruna M WaycottArgentinaIvan Magalhaes RENEWAL
Aditya G PoquetteCanadaOnyama Limba PROPOSAL
Clifford M TollnerFranceIvan Magalhaes NEGOTIATION
Sinclair Q RimCanadaIvan Magalhaes PROPOSAL
Faith L KuskoFranceXuxue Feng UNQUALIFIED
Octavia X GillianIndiaAnna Fali QUALIFIED
Costa R KuskoAustraliaIvan Magalhaes NEGOTIATION
Ashley T BriddickIndiaIoni Bowcher RENEWAL
Costa Z RulapaughSpainStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore M CampainSpain2026-08-21Rousseaux, Michael Esq RENEWAL98Ioni Bowcher
1001Salvatore S GillianItaly2026-08-22Rangoni Of Florence PROPOSAL40Asiya Javayant
1002Jefferson T FollerItaly2026-08-25Chapman, Ross E Esq QUALIFIED27Bernardo Dominic
1003Darci P GarufiJapan2026-08-30Feiner Bros NEGOTIATION48Stephen Shaw
1004Isabel L NickaRussia2026-08-18Commercial Press RENEWAL32Xuxue Feng
1005Maria I RoysterCanada2026-09-01Dorl, James J Esq NEW72Elwin Sharvill
1006Adams Y BriddickRussia2026-09-03Chemel, James L Cpa NEW73Elwin Sharvill
1007Leja L MaletUnited Kingdom2026-08-25Chanay, Jeffrey A Esq UNQUALIFIED88Stephen Shaw
1008Mujtaba A TollnerAustralia2026-08-29Benton, John B Jr QUALIFIED65Onyama Limba
1009Kadeem L CaldareraAustralia2026-08-24Morlong Associates NEGOTIATION62Ivan Magalhaes
1010Darci K GarufiArgentina2026-08-24Chanay, Jeffrey A Esq RENEWAL69Elwin Sharvill
1011Costa U IturbideSpain2026-09-14Feltz Printing Service NEW56Onyama Limba
1012Mayumi T RutaRussia2026-09-02Chanay, Jeffrey A Esq UNQUALIFIED68Anna Fali
1013Greenwood G PerinSpain2026-09-06Benton, John B Jr NEW98Bernardo Dominic
1014Jones B FigeroaRussia2026-08-31Dorl, James J Esq NEW35Onyama Limba
1015Rodrigues V BowleyBrazil2026-09-01Printing Dimensions QUALIFIED78Onyama Limba
1016Jeanfrancois F FollerUnited Kingdom2026-09-16King, Christopher A Esq QUALIFIED55Elwin Sharvill
1017Jones K RimSpain2026-09-02King, Christopher A Esq QUALIFIED21Stephen Shaw
1018Jennifer V DilliardItaly2026-09-08Commercial Press RENEWAL99Anna Fali
1019Kaitlin Z MorascaAustralia2026-08-26Morlong Associates NEGOTIATION10Onyama Limba
1020Greenwood V NestleFrance2026-09-09Feiner Bros PROPOSAL96Stephen Shaw
1021Juan H FigeroaIndia2026-09-15King, Christopher A Esq QUALIFIED19Asiya Javayant
1022Leja C MorascaAustralia2026-08-18Buckley Miller Wright PROPOSAL71Asiya Javayant
1023Arvin J ShinkoArgentina2026-08-28Morlong Associates QUALIFIED69Stephen Shaw
1024Costa E ButtBrazil2026-08-29Chanay, Jeffrey A Esq NEGOTIATION38Anna Fali
1025Ricardo S TollnerUnited Kingdom2026-09-03Commercial Press NEGOTIATION73Onyama Limba
1026Greenwood H BowleyItaly2026-09-04Buckley Miller Wright UNQUALIFIED68Stephen Shaw
1027Clifford E RimIndia2026-09-14Morlong Associates UNQUALIFIED15Xuxue Feng
1028Ivar W GauchoItaly2026-09-12Rangoni Of Florence QUALIFIED1Asiya Javayant
1029Maria H RulapaughArgentina2026-08-31Chapman, Ross E Esq PROPOSAL62Anna Fali
1030Francesco Z SchemmerRussia2026-09-06Feltz Printing Service QUALIFIED29Amy Elsner
1031Tony R GauchoSpain2026-08-20Chemel, James L Cpa NEGOTIATION61Anna Fali
1032Morrow S AlbaresSpain2026-09-06Benton, John B Jr PROPOSAL97Xuxue Feng
1033Johnson I MacleadJapan2026-08-21Buckley Miller Wright RENEWAL59Xuxue Feng
1034Isabel E SergiSpain2026-09-03Dorl, James J Esq NEW8Amy Elsner
1035Isabel A RulapaughRussia2026-08-31Rousseaux, Michael Esq UNQUALIFIED90Xuxue Feng
1036Francesco J InouyeRussia2026-09-10King, Christopher A Esq UNQUALIFIED38Bernardo Dominic
1037Aika X KolmetzJapan2026-09-16Truhlar And Truhlar Attys NEW3Ioni Bowcher
1038Aruna X MaletUnited Kingdom2026-08-18King, Christopher A Esq QUALIFIED91Amy Elsner
1039Alejandro Q OstroskyItaly2026-08-30Feiner Bros RENEWAL15Stephen Shaw
1040Wickens Z CaudyJapan2026-08-21Printing Dimensions NEGOTIATION81Stephen Shaw
1041Chavez B VenereAustralia2026-09-06Dorl, James J Esq RENEWAL56Amy Elsner
1042Leja E CaudyAustralia2026-08-19Dorl, James J Esq QUALIFIED96Amy Elsner
1043Izzy Z StensethItaly2026-09-13Dorl, James J Esq NEGOTIATION79Amy Elsner
1044Silvio P MorascaAustralia2026-08-21Rousseaux, Michael Esq NEW89Onyama Limba
1045Silvio E RimRussia2026-09-06King, Christopher A Esq QUALIFIED9Onyama Limba
1046Silvio E StensethIndia2026-08-26Rousseaux, Michael Esq PROPOSAL74Ivan Magalhaes
1047Maria A RulapaughItaly2026-09-16Chemel, James L Cpa QUALIFIED70Asiya Javayant
1048Aika K WieserCanada2026-09-15Benton, John B Jr PROPOSAL57Ivan Magalhaes
1049James Q SchemmerRussia2026-08-29King, Christopher A Esq NEGOTIATION90Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Faith H WieserGermanyBernardo Dominic UNQUALIFIED
Aruna L RutaFranceBernardo Dominic RENEWAL
Clifford F DoeUnited KingdomIoni Bowcher UNQUALIFIED
Kaitlin D WhobreyUnited KingdomElwin Sharvill RENEWAL
Leon M StensethItalyBernardo Dominic NEW
Chavez D GlickBrazilAmy Elsner NEGOTIATION
Isabel T SlusarskiGermanyAnna Fali QUALIFIED
Octavia I MaletItalyAmy Elsner NEGOTIATION
Misaki X CampainArgentinaElwin Sharvill NEW
Maisha P IturbideAustraliaStephen Shaw QUALIFIED
Arvin G PerinAustraliaStephen Shaw NEW
Silvio R CaldareraFranceAmy Elsner PROPOSAL
Smith K StensethBrazilAmy Elsner NEW
Emily N SaylorsBrazilBernardo Dominic NEW
Costa U CampainIndiaXuxue Feng UNQUALIFIED
Jeanfrancois J FollerUnited KingdomElwin Sharvill QUALIFIED
Isabel G MaletArgentinaAsiya Javayant NEGOTIATION
Ricardo S ChuiGermanyStephen Shaw UNQUALIFIED
Leon G FigeroaIndiaAnna Fali NEGOTIATION
Smith K InouyeArgentinaAmy Elsner RENEWAL
Rodrigues Q SlusarskiSpainAsiya Javayant QUALIFIED
Stacey U StockhamJapanBernardo Dominic NEW
Arvin V RimGermanyIoni Bowcher NEW
Francesco O SaylorsJapanXuxue Feng NEW
Faith V AmigonGermanyStephen Shaw PROPOSAL
Adams O OstroskyBrazilBernardo Dominic PROPOSAL
Octavia S GillianItalyXuxue Feng NEGOTIATION
Wickens B InouyeCanadaIoni Bowcher PROPOSAL
Julie K GauchoItalyElwin Sharvill NEGOTIATION
Jefferson Q InouyeAustraliaAmy Elsner UNQUALIFIED
Tony Q KolmetzSpainXuxue Feng PROPOSAL
Juan O PaprockiUnited KingdomXuxue Feng RENEWAL
Costa C BowleyJapanElwin Sharvill NEW
Jeanfrancois S VenereAustraliaStephen Shaw NEW
Murillo O GauchoItalyAmy Elsner UNQUALIFIED
David P WhobreyFranceIvan Magalhaes QUALIFIED
Wickens C ChuiArgentinaOnyama Limba UNQUALIFIED
Kadeem J PoquetteAustraliaIoni Bowcher NEW
Arvin Z WieserArgentinaBernardo Dominic NEW
Mujtaba V DilliardRussiaStephen Shaw PROPOSAL
Maisha Y CaudyIndiaStephen Shaw NEGOTIATION
Greenwood V AmigonAustraliaXuxue Feng RENEWAL
Kadeem T MaletBrazilElwin Sharvill PROPOSAL
Ivar H GlickRussiaOnyama Limba PROPOSAL
Smith O SaylorsUnited KingdomBernardo Dominic PROPOSAL
Smith K WaycottJapanElwin Sharvill NEGOTIATION
Ricardo E PerinFranceAmy Elsner RENEWAL
Maria L DilliardSpainOnyama Limba QUALIFIED
Munro N PerinItalyStephen Shaw RENEWAL
James I BowleyBrazilElwin Sharvill RENEWAL
Frozen Columns
Name
Deepesh J Gillian
Emily Z Nestle
Aruna J Butt
Jones W Wieser
Kadeem B Malet
Clifford U Bowley
Greenwood N Whobrey
Wickens D Briddick
Ricardo I Caldarera
Antonio K Stenseth
Tony K Malet
Isabel O Royster
Mayumi W Glick
Leja R Morasca
Munro C Figeroa
Chavez Z Darakjy
Maisha B Gillian
Costa E Vocelka
Wickens T Oldroyd
Julie K Maclead
Cody L Wieser
Misaki R Waycott
Leon E Rim
Murillo E Ostrosky
Kadeem U Ferencz
Leja N Chui
James D Slusarski
David F Darakjy
Claire Y Kusko
Nicolas L Gaucho
Isabel U Sergi
Maisha H Stockham
Morrow B Stockham
Murillo J Royster
Faith W Paprocki
Aruna I Glick
Arvin E Sergi
Cody D Royster
Murillo F Rim
Aruna H Caldarera
Misaki J Ferencz
James C Darakjy
Costa B Flosi
Misaki N Caldarera
Tony J Doe
Maria T Nicka
Kaitlin G Nicka
Misaki U Garufi
Claire Z Caldarera
Juan F Albares
IdCountryDate
1000Argentina2026-08-23
1001France2026-09-03
1002Argentina2026-09-03
1003Australia2026-08-30
1004Spain2026-09-04
1005Japan2026-08-23
1006Brazil2026-09-07
1007Japan2026-09-12
1008Germany2026-09-03
1009Brazil2026-08-31
1010Russia2026-08-23
1011France2026-09-16
1012Canada2026-09-06
1013Spain2026-08-26
1014Russia2026-09-11
1015Russia2026-08-22
1016Spain2026-08-24
1017Argentina2026-08-23
1018Russia2026-08-20
1019Japan2026-09-12
1020Canada2026-09-06
1021France2026-08-21
1022Japan2026-09-07
1023France2026-09-12
1024Spain2026-08-30
1025Italy2026-08-24
1026Canada2026-09-16
1027Italy2026-09-04
1028Russia2026-09-07
1029Australia2026-08-27
1030Canada2026-09-06
1031Germany2026-09-15
1032Argentina2026-09-03
1033Spain2026-08-31
1034Australia2026-09-13
1035Argentina2026-09-12
1036France2026-08-31
1037Spain2026-09-05
1038United Kingdom2026-08-23
1039Italy2026-08-25
1040Australia2026-09-07
1041Argentina2026-09-06
1042Australia2026-09-05
1043France2026-08-23
1044Canada2026-08-21
1045United Kingdom2026-09-02
1046France2026-08-23
1047India2026-08-31
1048Japan2026-08-28
1049Italy2026-09-09

On-Demand Data

NameIdCountryDate
Aika D Maclead1000France2026-08-20
Stacey V Poquette1001Russia2026-08-25
Ricardo X Royster1002Italy2026-09-01
James E Glick1003Russia2026-08-29
Murillo U Venere1004France2026-09-10
Adams Q Ostrosky1005Italy2026-09-08
David P Poquette1006Brazil2026-08-30
Leja G Gillian1007Australia2026-09-11
Johnson R Caudy1008Germany2026-09-14
Morrow B Amigon1009India2026-09-07
Nicolas W Wieser1010United Kingdom2026-08-28
Ivar H Rulapaugh1011Argentina2026-08-20
Sinclair M Inouye1012Germany2026-08-30
Claire N Stenseth1013Brazil2026-09-08
Faith Q Gaucho1014Argentina2026-09-09
Deepesh M Kusko1015Russia2026-08-18
Silvio A Gaucho1016Canada2026-09-10
Juan H Briddick1017Canada2026-08-26
Misaki H Kusko1018Russia2026-08-28
Sinclair N Briddick1019Germany2026-08-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel J FerenczBrazilIvan Magalhaes UNQUALIFIED
Tony L NestleCanadaIoni Bowcher NEW
Mayumi G FerenczBrazilAsiya Javayant NEGOTIATION
Adams F ChuiIndiaElwin Sharvill UNQUALIFIED
Aditya R SergiAustraliaIoni Bowcher PROPOSAL
Aruna F FlosiRussiaIvan Magalhaes PROPOSAL
Isabel L RutaBrazilStephen Shaw NEGOTIATION
Ricardo I WaycottSpainXuxue Feng NEGOTIATION
Johnson Q RoysterSpainOnyama Limba RENEWAL
Greenwood L PaprockiFranceOnyama Limba RENEWAL
Wickens Q StockhamIndiaAnna Fali PROPOSAL
Costa H GlickBrazilOnyama Limba RENEWAL
Aika F NickaUnited KingdomOnyama Limba NEGOTIATION
Costa X SaylorsIndiaBernardo Dominic UNQUALIFIED
Sinclair O RoysterAustraliaXuxue Feng UNQUALIFIED
Faith G MaletIndiaOnyama Limba PROPOSAL
Kaitlin Z CaldareraFranceAmy Elsner PROPOSAL
Leon V OldroydIndiaBernardo Dominic RENEWAL
Antonio E OstroskyJapanStephen Shaw NEW
David P GlickCanadaAsiya Javayant NEGOTIATION
Francesco Y PoquetteItalyStephen Shaw QUALIFIED
Darci W RimJapanOnyama Limba NEW
Izzy S ChuiIndiaIoni Bowcher UNQUALIFIED
Kadeem D PerinArgentinaStephen Shaw NEW
Jeanfrancois D ButtSpainAnna Fali QUALIFIED
Aditya H FigeroaSpainElwin Sharvill NEGOTIATION
Mayumi D NestleJapanAmy Elsner NEW
Nicolas S CaldareraUnited KingdomAmy Elsner QUALIFIED
Salvatore B MacleadCanadaBernardo Dominic RENEWAL
Costa S GillianIndiaElwin Sharvill NEGOTIATION
Sinclair H WieserRussiaAmy Elsner NEW
Adams Q MarrierJapanAsiya Javayant NEGOTIATION
Wickens G FollerBrazilAmy Elsner RENEWAL
Ricardo U PoquetteSpainAnna Fali UNQUALIFIED
Antonio X SaylorsGermanyStephen Shaw NEGOTIATION
Salvatore Q WieserGermanyOnyama Limba NEGOTIATION
Salvatore D ButtJapanIvan Magalhaes QUALIFIED
Juan S SchemmerIndiaAsiya Javayant RENEWAL
Johnson W MaletSpainAsiya Javayant NEGOTIATION
Cody A PaprockiIndiaStephen Shaw 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>