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
Izzy A PaprockiFranceBernardo Dominic NEW
Ricardo E AmigonArgentinaAnna Fali RENEWAL
Stacey L BriddickAustraliaAnna Fali PROPOSAL
Ricardo Z WieserUnited KingdomIoni Bowcher PROPOSAL
Jeanfrancois L GauchoRussiaStephen Shaw PROPOSAL
Julie O InouyeFranceBernardo Dominic NEGOTIATION
Julie U WieserSpainAnna Fali QUALIFIED
Jones N AlbaresRussiaElwin Sharvill NEW
Isabel M BriddickAustraliaAsiya Javayant QUALIFIED
Jeanfrancois O PoquetteRussiaAsiya Javayant NEGOTIATION
Johnson L AmigonUnited KingdomAnna Fali PROPOSAL
Maria D DarakjyIndiaXuxue Feng RENEWAL
Jones Z AlbaresFranceOnyama Limba QUALIFIED
Octavia F GauchoArgentinaStephen Shaw RENEWAL
Murillo H GarufiJapanAnna Fali QUALIFIED
Smith M MorascaGermanyAsiya Javayant RENEWAL
Emily X PaprockiRussiaAsiya Javayant UNQUALIFIED
Jones X StockhamFranceOnyama Limba NEGOTIATION
Maria W NestleFranceAsiya Javayant UNQUALIFIED
Greenwood H WieserUnited KingdomIoni Bowcher NEGOTIATION
Murillo E MorascaIndiaAsiya Javayant PROPOSAL
Greenwood O ShinkoGermanyXuxue Feng NEGOTIATION
Misaki B MaletBrazilAsiya Javayant UNQUALIFIED
Sinclair W NickaJapanIoni Bowcher UNQUALIFIED
Smith A SlusarskiSpainXuxue Feng RENEWAL
Tony B AlbaresBrazilOnyama Limba RENEWAL
Aika Z WhobreyRussiaAmy Elsner RENEWAL
Maria Q CaldareraIndiaXuxue Feng UNQUALIFIED
Ashley I VocelkaUnited KingdomElwin Sharvill NEW
Tony I MarrierBrazilAnna Fali NEGOTIATION
Aika O ShinkoRussiaOnyama Limba QUALIFIED
Arvin B BriddickGermanyOnyama Limba RENEWAL
Smith R MarrierSpainElwin Sharvill UNQUALIFIED
Izzy Z RutaGermanyBernardo Dominic QUALIFIED
Ashley K SlusarskiJapanElwin Sharvill RENEWAL
Jennifer F FollerCanadaAnna Fali NEW
Leon T GillianSpainOnyama Limba NEGOTIATION
Juan P DoeRussiaAsiya Javayant NEGOTIATION
Emily E OldroydArgentinaStephen Shaw QUALIFIED
Wickens X VenereBrazilOnyama Limba UNQUALIFIED
Mujtaba P StensethJapanIvan Magalhaes NEGOTIATION
Tony T IturbideBrazilStephen Shaw NEW
Leon V GauchoCanadaAnna Fali PROPOSAL
Ivar Y WhobreyBrazilOnyama Limba PROPOSAL
Ricardo Y MaletFranceIoni Bowcher NEGOTIATION
Ashley F SchemmerUnited KingdomBernardo Dominic RENEWAL
Mujtaba C GauchoIndiaAmy Elsner UNQUALIFIED
Silvio J RulapaughGermanyAmy Elsner QUALIFIED
Misaki J RulapaughIndiaAnna Fali RENEWAL
Ivar R OstroskyUnited KingdomIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Izzy J IturbideSpainIvan Magalhaes PROPOSAL
Jeanfrancois W FerenczJapanAnna Fali PROPOSAL
Izzy H OstroskyCanadaAmy Elsner QUALIFIED
Cody Q StensethCanadaAnna Fali RENEWAL
Stacey O AmigonRussiaIoni Bowcher QUALIFIED
Kadeem Z ChuiSpainStephen Shaw RENEWAL
Leja X DarakjyUnited KingdomAsiya Javayant PROPOSAL
Juan Q OstroskyCanadaElwin Sharvill QUALIFIED
Kadeem S ChuiArgentinaOnyama Limba NEGOTIATION
Jones Y WaycottSpainAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson Z ShinkoUnited Kingdom2026-11-05Printing Dimensions NEW31Asiya Javayant
1001Wickens Y MorascaBrazil2026-10-29Chapman, Ross E Esq RENEWAL82Ioni Bowcher
1002Rodrigues M CaldareraAustralia2026-10-21Truhlar And Truhlar Attys NEW62Ioni Bowcher
1003Sinclair U RoysterUnited Kingdom2026-10-29King, Christopher A Esq NEGOTIATION41Xuxue Feng
1004Mujtaba M BriddickUnited Kingdom2026-11-04Truhlar And Truhlar Attys RENEWAL42Elwin Sharvill
1005Arvin Y WaycottSpain2026-11-01Feiner Bros QUALIFIED89Onyama Limba
1006Munro X WieserRussia2026-10-30Benton, John B Jr UNQUALIFIED0Asiya Javayant
1007Emily B StensethFrance2026-11-08Rangoni Of Florence NEW78Stephen Shaw
1008Arvin W RimRussia2026-10-25Chanay, Jeffrey A Esq UNQUALIFIED8Bernardo Dominic
1009Costa K BologniaRussia2026-11-12Rousseaux, Michael Esq UNQUALIFIED60Onyama Limba
1010David Z SergiUnited Kingdom2026-10-22Dorl, James J Esq UNQUALIFIED69Bernardo Dominic
1011Julie Y MarrierRussia2026-10-25Feiner Bros NEW11Elwin Sharvill
1012Juan K OstroskyBrazil2026-11-10Chanay, Jeffrey A Esq QUALIFIED73Elwin Sharvill
1013Jefferson I WhobreyFrance2026-11-02Chapman, Ross E Esq NEW91Asiya Javayant
1014Murillo E BowleyRussia2026-10-24Printing Dimensions UNQUALIFIED51Ioni Bowcher
1015Smith V BowleyItaly2026-10-24Morlong Associates QUALIFIED55Stephen Shaw
1016Chavez F VocelkaItaly2026-10-28Chemel, James L Cpa RENEWAL97Bernardo Dominic
1017Adams N MaletArgentina2026-10-19Chemel, James L Cpa PROPOSAL40Anna Fali
1018Morrow A FollerFrance2026-10-16Rangoni Of Florence PROPOSAL1Onyama Limba
1019Costa D OstroskyGermany2026-10-14Commercial Press QUALIFIED4Onyama Limba
1020Julie Y SchemmerSpain2026-10-31Truhlar And Truhlar Attys NEW24Anna Fali
1021Nicolas H DoeCanada2026-10-21Rousseaux, Michael Esq PROPOSAL9Ivan Magalhaes
1022Ivar S KuskoGermany2026-10-21Feltz Printing Service NEW20Stephen Shaw
1023Francesco S StockhamRussia2026-10-21Feiner Bros NEW46Bernardo Dominic
1024Leja E AlbaresUnited Kingdom2026-10-20Feltz Printing Service QUALIFIED26Xuxue Feng
1025Stacey M StensethUnited Kingdom2026-10-22Truhlar And Truhlar Attys NEW84Elwin Sharvill
1026Costa D NickaArgentina2026-10-18Printing Dimensions NEW99Elwin Sharvill
1027Clifford D VocelkaAustralia2026-10-27Buckley Miller Wright UNQUALIFIED40Amy Elsner
1028Kadeem L ChuiUnited Kingdom2026-10-29Chapman, Ross E Esq PROPOSAL49Anna Fali
1029Rodrigues G StensethCanada2026-10-23King, Christopher A Esq QUALIFIED28Elwin Sharvill
1030Leja W NickaItaly2026-11-06Feltz Printing Service QUALIFIED90Stephen Shaw
1031Adams U FlosiUnited Kingdom2026-10-30Rangoni Of Florence UNQUALIFIED22Ioni Bowcher
1032Kaitlin I FlosiSpain2026-11-12Benton, John B Jr RENEWAL55Ivan Magalhaes
1033Kaitlin H KuskoItaly2026-11-12Chanay, Jeffrey A Esq NEW17Bernardo Dominic
1034Aika P RulapaughGermany2026-10-23Chemel, James L Cpa UNQUALIFIED93Ioni Bowcher
1035Ivar O FerenczCanada2026-10-26Printing Dimensions NEGOTIATION72Asiya Javayant
1036Jones G ShinkoJapan2026-11-10Buckley Miller Wright UNQUALIFIED26Onyama Limba
1037Aika O OldroydRussia2026-10-22Benton, John B Jr NEGOTIATION3Elwin Sharvill
1038Mayumi I GauchoBrazil2026-11-02Buckley Miller Wright PROPOSAL57Asiya Javayant
1039Antonio S MorascaFrance2026-10-28Buckley Miller Wright UNQUALIFIED53Onyama Limba
1040Costa Z PoquetteCanada2026-10-24Feltz Printing Service PROPOSAL94Asiya Javayant
1041Smith H StockhamAustralia2026-11-06Rousseaux, Michael Esq PROPOSAL2Ivan Magalhaes
1042Aditya L MaletBrazil2026-10-18Chanay, Jeffrey A Esq UNQUALIFIED12Asiya Javayant
1043Leja D BowleyFrance2026-10-21Feltz Printing Service UNQUALIFIED41Ivan Magalhaes
1044Costa C GillianUnited Kingdom2026-10-27Chapman, Ross E Esq QUALIFIED53Xuxue Feng
1045Morrow G CaudyUnited Kingdom2026-10-18Rousseaux, Michael Esq NEW55Anna Fali
1046Mujtaba F CampainIndia2026-11-09Dorl, James J Esq NEGOTIATION52Ivan Magalhaes
1047Nicolas A AlbaresGermany2026-10-30Buckley Miller Wright NEGOTIATION81Amy Elsner
1048Deepesh Q OstroskyJapan2026-10-14Chapman, Ross E Esq PROPOSAL88Onyama Limba
1049Jones V PoquetteFrance2026-10-19Printing Dimensions PROPOSAL99Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Deepesh D RoysterGermanyAnna Fali NEW
Silvio L GauchoBrazilBernardo Dominic UNQUALIFIED
Juan R RulapaughFranceBernardo Dominic NEGOTIATION
Maisha S DarakjyIndiaOnyama Limba PROPOSAL
Chavez F WhobreyBrazilElwin Sharvill NEW
Antonio Y DilliardArgentinaStephen Shaw NEGOTIATION
Greenwood Q DoeGermanyStephen Shaw PROPOSAL
Izzy I PerinArgentinaIvan Magalhaes NEW
Mujtaba L RoysterUnited KingdomElwin Sharvill QUALIFIED
Chavez P MarrierJapanBernardo Dominic UNQUALIFIED
Ivar B VocelkaFranceAsiya Javayant NEW
Murillo A SaylorsUnited KingdomAsiya Javayant RENEWAL
Chavez O DarakjyAustraliaOnyama Limba UNQUALIFIED
Kadeem P KuskoCanadaAnna Fali PROPOSAL
Ricardo S InouyeFranceAsiya Javayant PROPOSAL
Clifford N FigeroaCanadaXuxue Feng PROPOSAL
Mujtaba J PaprockiRussiaAsiya Javayant QUALIFIED
Jennifer S PoquetteAustraliaAnna Fali NEW
James X WieserGermanyIoni Bowcher QUALIFIED
Sinclair V PaprockiBrazilAsiya Javayant QUALIFIED
Mayumi I VocelkaGermanyIvan Magalhaes NEW
Leon E CaudyJapanAsiya Javayant NEGOTIATION
Greenwood W OldroydSpainIvan Magalhaes QUALIFIED
Maisha E CaudyIndiaAmy Elsner UNQUALIFIED
Octavia C GlickItalyAmy Elsner NEGOTIATION
Kaitlin J NestleBrazilAnna Fali QUALIFIED
Maria G NickaItalyXuxue Feng NEGOTIATION
Ashley C WieserGermanyStephen Shaw PROPOSAL
Greenwood I BologniaArgentinaXuxue Feng NEGOTIATION
Mujtaba P FollerGermanyBernardo Dominic UNQUALIFIED
Jones H MacleadItalyOnyama Limba NEGOTIATION
Mayumi C SergiFranceBernardo Dominic NEW
Murillo K MaletArgentinaIvan Magalhaes RENEWAL
Jeanfrancois H FollerBrazilElwin Sharvill UNQUALIFIED
Aditya F WaycottArgentinaIvan Magalhaes RENEWAL
David Y CaldareraCanadaOnyama Limba QUALIFIED
Claire N GillianSpainOnyama Limba RENEWAL
Nicolas R FerenczGermanyElwin Sharvill NEW
Silvio D NickaGermanyAnna Fali PROPOSAL
Antonio L PoquetteBrazilStephen Shaw RENEWAL
Tony M GauchoFranceIoni Bowcher RENEWAL
Deepesh S ShinkoCanadaIvan Magalhaes QUALIFIED
Claire C AmigonItalyElwin Sharvill QUALIFIED
Claire Z FigeroaItalyXuxue Feng NEGOTIATION
Chavez C FerenczRussiaBernardo Dominic NEW
Greenwood Z OldroydJapanAsiya Javayant NEGOTIATION
Emily P FlosiUnited KingdomStephen Shaw NEGOTIATION
Arvin L NickaGermanyElwin Sharvill NEGOTIATION
Aditya Z ButtArgentinaXuxue Feng QUALIFIED
Izzy F DarakjyFranceBernardo Dominic NEW
Frozen Columns
Name
Leja L Doe
Mujtaba P Kolmetz
Sinclair W Dilliard
Maisha W Royster
Ivar T Nicka
Sinclair T Venere
Mujtaba H Perin
Claire U Ostrosky
Clifford L Ostrosky
Greenwood F Iturbide
Maria Q Royster
James V Gaucho
Juan F Briddick
Antonio Y Stockham
Leon Q Doe
Isabel S Inouye
Julie V Gaucho
Kaitlin G Ferencz
Antonio B Morasca
Francesco Y Royster
Nicolas L Maclead
Salvatore P Iturbide
Rodrigues X Flosi
Cody H Nestle
Ashley W Slusarski
Octavia B Caldarera
Arvin M Malet
Kaitlin C Nicka
Arvin S Royster
Morrow C Briddick
Mayumi S Schemmer
Sinclair B Vocelka
Sinclair H Schemmer
Alejandro C Butt
Kaitlin S Schemmer
Morrow E Schemmer
Misaki B Saylors
Emily W Ostrosky
Claire M Albares
Adams A Nestle
James L Oldroyd
Antonio F Campain
Emily M Amigon
Aruna E Chui
Aruna Q Glick
Jennifer O Nicka
Jefferson R Caldarera
Misaki K Vocelka
Darci T Morasca
Murillo S Tollner
IdCountryDate
1000Germany2026-10-23
1001United Kingdom2026-11-06
1002France2026-10-23
1003Italy2026-10-27
1004Germany2026-10-27
1005Spain2026-11-01
1006Canada2026-11-03
1007Spain2026-10-17
1008Italy2026-11-11
1009United Kingdom2026-10-30
1010Italy2026-11-12
1011Brazil2026-10-24
1012Germany2026-10-17
1013Australia2026-10-21
1014Italy2026-11-12
1015Japan2026-11-04
1016Germany2026-11-08
1017Japan2026-10-18
1018France2026-10-17
1019Canada2026-11-07
1020Spain2026-10-30
1021Spain2026-10-25
1022Argentina2026-10-21
1023United Kingdom2026-11-05
1024Spain2026-11-09
1025Russia2026-11-12
1026Brazil2026-10-21
1027India2026-11-01
1028France2026-11-01
1029Australia2026-10-15
1030India2026-10-21
1031United Kingdom2026-11-03
1032Brazil2026-10-24
1033France2026-10-17
1034Russia2026-11-08
1035France2026-10-31
1036Spain2026-10-31
1037United Kingdom2026-10-15
1038Spain2026-11-11
1039Russia2026-11-01
1040Italy2026-10-19
1041Italy2026-10-18
1042Spain2026-10-23
1043United Kingdom2026-11-06
1044Japan2026-11-09
1045Italy2026-10-24
1046Spain2026-11-04
1047Germany2026-10-30
1048Italy2026-11-08
1049Argentina2026-10-19

On-Demand Data

NameIdCountryDate
Wickens C Oldroyd1000Italy2026-10-16
Darci J Paprocki1001Brazil2026-10-17
Maria H Doe1002India2026-11-03
Octavia L Shinko1003Japan2026-10-24
Alejandro W Malet1004India2026-10-21
Silvio O Garufi1005Germany2026-10-28
Adams L Foller1006India2026-11-12
Sinclair R Butt1007Canada2026-11-09
Emily X Shinko1008United Kingdom2026-10-21
Deepesh K Glick1009India2026-10-26
Claire W Slusarski1010Spain2026-10-22
Maisha L Glick1011Brazil2026-11-05
Ivar G Inouye1012Italy2026-10-28
Smith S Inouye1013Argentina2026-10-14
Ivar E Tollner1014United Kingdom2026-10-31
Emily W Briddick1015Australia2026-10-16
Maria J Albares1016Argentina2026-11-11
Ricardo T Malet1017Japan2026-10-20
Deepesh N Venere1018India2026-10-21
Clifford Z Marrier1019Japan2026-10-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith Q FigeroaGermanyStephen Shaw PROPOSAL
Juan Z CaldareraSpainBernardo Dominic PROPOSAL
Jefferson E InouyeRussiaBernardo Dominic NEW
Isabel I AmigonRussiaIoni Bowcher NEW
Francesco B CaudyRussiaAnna Fali NEGOTIATION
Aditya X GlickIndiaElwin Sharvill UNQUALIFIED
Greenwood K WaycottGermanyIvan Magalhaes NEW
Jeanfrancois A VenereRussiaIoni Bowcher NEW
Jefferson D RutaUnited KingdomXuxue Feng NEW
James N FlosiFranceXuxue Feng UNQUALIFIED
Ashley U BowleyJapanXuxue Feng PROPOSAL
Jones C KolmetzRussiaStephen Shaw RENEWAL
Johnson M AlbaresSpainStephen Shaw QUALIFIED
Maisha C MarrierItalyIvan Magalhaes NEGOTIATION
Munro D IturbideIndiaElwin Sharvill QUALIFIED
Morrow K SchemmerBrazilElwin Sharvill NEW
Sinclair J MacleadIndiaIvan Magalhaes QUALIFIED
Sinclair B RimCanadaBernardo Dominic UNQUALIFIED
Morrow X VocelkaIndiaXuxue Feng UNQUALIFIED
Aruna W FerenczItalyIoni Bowcher RENEWAL
Aika H FlosiAustraliaElwin Sharvill QUALIFIED
Jefferson C DarakjyIndiaIoni Bowcher RENEWAL
Juan S StockhamGermanyStephen Shaw QUALIFIED
Jones X ChuiCanadaAsiya Javayant UNQUALIFIED
David K NestleCanadaIvan Magalhaes UNQUALIFIED
Munro E InouyeJapanAmy Elsner NEW
Rodrigues Q RulapaughArgentinaStephen Shaw RENEWAL
James G MorascaFranceXuxue Feng RENEWAL
Salvatore L GlickGermanyElwin Sharvill NEW
Murillo Z SergiAustraliaIvan Magalhaes PROPOSAL
Aika S FerenczJapanIoni Bowcher NEW
Aika P ShinkoIndiaAnna Fali PROPOSAL
Johnson A WhobreyUnited KingdomIvan Magalhaes UNQUALIFIED
Morrow B FigeroaJapanStephen Shaw RENEWAL
Jeanfrancois I CampainFranceAsiya Javayant NEGOTIATION
Faith M MarrierRussiaAnna Fali NEGOTIATION
Alejandro X VenereArgentinaElwin Sharvill PROPOSAL
Kaitlin H MaletSpainAnna Fali UNQUALIFIED
Clifford X SaylorsCanadaAnna Fali NEW
Isabel S WhobreyRussiaXuxue 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>