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
Deepesh E GauchoIndiaAsiya Javayant NEW
Murillo I KuskoRussiaOnyama Limba QUALIFIED
Aruna C CaldareraSpainOnyama Limba UNQUALIFIED
Leon H BowleyArgentinaXuxue Feng NEW
Jeanfrancois L PerinFranceAnna Fali NEGOTIATION
Antonio M NickaArgentinaIoni Bowcher NEGOTIATION
Costa H MaletFranceStephen Shaw NEGOTIATION
Ashley S FlosiGermanyXuxue Feng UNQUALIFIED
Kaitlin Y RulapaughCanadaAsiya Javayant UNQUALIFIED
Leon P SergiAustraliaAmy Elsner NEGOTIATION
Salvatore N SaylorsBrazilXuxue Feng UNQUALIFIED
Isabel M MarrierCanadaAnna Fali NEGOTIATION
Misaki R RulapaughArgentinaAsiya Javayant QUALIFIED
Greenwood V DilliardCanadaAmy Elsner PROPOSAL
Mujtaba U TollnerGermanyElwin Sharvill NEGOTIATION
Isabel D PerinIndiaStephen Shaw UNQUALIFIED
Rodrigues C DoeArgentinaIvan Magalhaes NEGOTIATION
Sinclair P BriddickUnited KingdomAsiya Javayant NEW
Salvatore J GauchoIndiaAnna Fali NEW
Greenwood H SchemmerIndiaIoni Bowcher NEGOTIATION
Aruna G OstroskyFranceBernardo Dominic NEW
Deepesh P FerenczBrazilBernardo Dominic QUALIFIED
Octavia S CaldareraUnited KingdomAmy Elsner PROPOSAL
Antonio R VocelkaArgentinaElwin Sharvill UNQUALIFIED
Stacey K DoeGermanyIoni Bowcher RENEWAL
Mujtaba U KolmetzRussiaIoni Bowcher NEW
Darci C WhobreyArgentinaOnyama Limba RENEWAL
Jefferson Z RulapaughArgentinaIoni Bowcher UNQUALIFIED
Kadeem O KuskoItalyXuxue Feng NEGOTIATION
Maria I RutaRussiaIvan Magalhaes RENEWAL
Julie I FerenczUnited KingdomAnna Fali NEW
Sinclair I VocelkaSpainXuxue Feng NEGOTIATION
Ivar E KolmetzAustraliaIoni Bowcher QUALIFIED
Maisha M RimCanadaAnna Fali QUALIFIED
Juan F SaylorsJapanAnna Fali NEW
Salvatore S SlusarskiIndiaAsiya Javayant RENEWAL
Aditya Y MarrierIndiaAmy Elsner NEGOTIATION
Ashley R FollerJapanAmy Elsner QUALIFIED
Maisha F OstroskyGermanyAnna Fali UNQUALIFIED
Cody W MaletItalyAmy Elsner PROPOSAL
Misaki D MaletBrazilIvan Magalhaes QUALIFIED
Munro P OldroydAustraliaOnyama Limba NEW
Isabel S GauchoIndiaOnyama Limba QUALIFIED
Alejandro U OldroydUnited KingdomIoni Bowcher PROPOSAL
Ricardo M GarufiGermanyAnna Fali NEGOTIATION
Antonio I StensethJapanIoni Bowcher NEW
Antonio P MorascaUnited KingdomIoni Bowcher NEGOTIATION
Kadeem Q IturbideRussiaIoni Bowcher UNQUALIFIED
Ivar U GillianItalyOnyama Limba NEW
Silvio P BriddickCanadaElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Nicolas H StensethArgentinaAnna Fali QUALIFIED
Francesco W RimUnited KingdomAmy Elsner NEGOTIATION
Ashley Y GarufiItalyXuxue Feng PROPOSAL
Morrow A GauchoGermanyElwin Sharvill PROPOSAL
Julie H MarrierAustraliaBernardo Dominic NEGOTIATION
Aditya D GlickAustraliaIvan Magalhaes NEW
Aruna H GlickGermanyBernardo Dominic UNQUALIFIED
Stacey J ChuiArgentinaElwin Sharvill NEW
Johnson H ChuiCanadaXuxue Feng RENEWAL
Antonio Z PerinFranceAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria L StensethItaly2026-10-07Feltz Printing Service QUALIFIED2Asiya Javayant
1001Wickens L VenereAustralia2026-09-26Dorl, James J Esq RENEWAL64Xuxue Feng
1002Arvin A KolmetzGermany2026-10-12Truhlar And Truhlar Attys NEW94Bernardo Dominic
1003Costa L CaudyArgentina2026-09-28Benton, John B Jr NEGOTIATION76Ioni Bowcher
1004Jeanfrancois D MorascaItaly2026-10-10Commercial Press RENEWAL16Bernardo Dominic
1005Ashley Y SlusarskiIndia2026-10-11Chanay, Jeffrey A Esq RENEWAL37Ivan Magalhaes
1006Maisha W DilliardAustralia2026-09-21Rousseaux, Michael Esq RENEWAL56Amy Elsner
1007Isabel A WhobreyArgentina2026-10-15Morlong Associates NEW21Ivan Magalhaes
1008Isabel C PaprockiIndia2026-10-12Dorl, James J Esq QUALIFIED11Amy Elsner
1009Kaitlin G FlosiUnited Kingdom2026-10-09Benton, John B Jr PROPOSAL34Amy Elsner
1010Ashley V AmigonArgentina2026-09-18Printing Dimensions NEW80Ivan Magalhaes
1011Izzy M SchemmerFrance2026-10-16Printing Dimensions RENEWAL81Bernardo Dominic
1012Clifford E DarakjyArgentina2026-10-06Chapman, Ross E Esq UNQUALIFIED28Ioni Bowcher
1013Isabel P MaletCanada2026-10-10Rangoni Of Florence PROPOSAL0Asiya Javayant
1014Deepesh N SergiJapan2026-10-04Rangoni Of Florence QUALIFIED64Bernardo Dominic
1015Juan V CaudyJapan2026-10-16Feiner Bros NEW68Anna Fali
1016Maria I PoquetteGermany2026-09-24Chapman, Ross E Esq RENEWAL93Anna Fali
1017Tony I PerinFrance2026-09-20Chanay, Jeffrey A Esq NEW50Onyama Limba
1018Tony S ChuiFrance2026-09-22Benton, John B Jr NEGOTIATION20Anna Fali
1019Aditya R PaprockiJapan2026-10-06Printing Dimensions UNQUALIFIED70Onyama Limba
1020Leja F KuskoFrance2026-09-23Buckley Miller Wright NEGOTIATION38Asiya Javayant
1021Mayumi L DilliardItaly2026-09-27Printing Dimensions NEW47Anna Fali
1022Ricardo K FigeroaRussia2026-10-04King, Christopher A Esq QUALIFIED31Ivan Magalhaes
1023Stacey Z FlosiAustralia2026-09-30Buckley Miller Wright UNQUALIFIED92Onyama Limba
1024Jefferson O ButtCanada2026-10-01Chemel, James L Cpa NEW5Ivan Magalhaes
1025Antonio N ShinkoArgentina2026-10-14Chanay, Jeffrey A Esq QUALIFIED68Onyama Limba
1026Mujtaba T ButtUnited Kingdom2026-10-12Feltz Printing Service UNQUALIFIED71Amy Elsner
1027Kaitlin F RimUnited Kingdom2026-09-28Morlong Associates UNQUALIFIED80Ioni Bowcher
1028Izzy Z MaletAustralia2026-10-04King, Christopher A Esq QUALIFIED60Bernardo Dominic
1029Murillo O StensethIndia2026-10-17Chemel, James L Cpa QUALIFIED64Asiya Javayant
1030Salvatore M MarrierJapan2026-10-10Chapman, Ross E Esq RENEWAL97Asiya Javayant
1031David Y StensethRussia2026-09-26Feiner Bros QUALIFIED31Ivan Magalhaes
1032Faith Z DilliardIndia2026-10-17Rangoni Of Florence NEW31Amy Elsner
1033Kadeem A PerinIndia2026-09-21Dorl, James J Esq QUALIFIED66Amy Elsner
1034Greenwood P CaudyJapan2026-09-29Buckley Miller Wright QUALIFIED96Ivan Magalhaes
1035Tony J PoquetteJapan2026-10-02Printing Dimensions NEGOTIATION29Anna Fali
1036Mayumi C SchemmerAustralia2026-10-02Benton, John B Jr PROPOSAL99Ivan Magalhaes
1037Mujtaba M FlosiAustralia2026-10-01Truhlar And Truhlar Attys NEW6Ivan Magalhaes
1038Maria X SlusarskiUnited Kingdom2026-10-01Benton, John B Jr QUALIFIED15Bernardo Dominic
1039Ricardo W VocelkaArgentina2026-10-13Benton, John B Jr UNQUALIFIED3Ivan Magalhaes
1040Nicolas E CaudyItaly2026-09-24Rangoni Of Florence RENEWAL80Xuxue Feng
1041Kadeem N SchemmerCanada2026-10-16Rangoni Of Florence NEW99Ivan Magalhaes
1042Isabel S IturbideRussia2026-10-07Benton, John B Jr RENEWAL1Ioni Bowcher
1043Costa D ShinkoItaly2026-09-24Truhlar And Truhlar Attys RENEWAL32Elwin Sharvill
1044Jeanfrancois K MarrierRussia2026-09-29Morlong Associates RENEWAL11Ioni Bowcher
1045Murillo F MarrierGermany2026-10-01Printing Dimensions NEW98Onyama Limba
1046Johnson T GlickGermany2026-09-19Benton, John B Jr NEGOTIATION10Bernardo Dominic
1047Ivar C SergiBrazil2026-09-21Dorl, James J Esq PROPOSAL99Amy Elsner
1048Leon K CaudyRussia2026-10-10Printing Dimensions NEW86Xuxue Feng
1049Smith R KolmetzAustralia2026-09-22Truhlar And Truhlar Attys UNQUALIFIED2Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Munro E KuskoGermanyElwin Sharvill PROPOSAL
David Y RulapaughAustraliaXuxue Feng QUALIFIED
Maisha R FerenczGermanyAmy Elsner NEW
Julie F TollnerArgentinaOnyama Limba UNQUALIFIED
Maisha X MaletArgentinaXuxue Feng NEGOTIATION
Octavia A RoysterItalyBernardo Dominic NEGOTIATION
Tony I VocelkaRussiaAmy Elsner UNQUALIFIED
Octavia E TollnerJapanOnyama Limba QUALIFIED
Costa J NickaSpainElwin Sharvill NEGOTIATION
Rodrigues U FigeroaArgentinaStephen Shaw PROPOSAL
Izzy B BowleySpainIvan Magalhaes QUALIFIED
Emily R GlickAustraliaOnyama Limba NEW
Claire W FigeroaArgentinaAsiya Javayant UNQUALIFIED
Clifford G RulapaughGermanyBernardo Dominic RENEWAL
Silvio W WhobreyItalyAnna Fali NEW
David X CaldareraJapanIoni Bowcher UNQUALIFIED
David J SlusarskiIndiaAmy Elsner NEGOTIATION
Smith C InouyeItalyAnna Fali QUALIFIED
Deepesh P KuskoArgentinaIoni Bowcher PROPOSAL
Tony E ChuiArgentinaElwin Sharvill RENEWAL
Leja G KolmetzItalyAmy Elsner QUALIFIED
Morrow U RutaAustraliaElwin Sharvill NEGOTIATION
Izzy A SergiFranceAsiya Javayant NEW
Munro M MaletArgentinaIvan Magalhaes NEGOTIATION
Nicolas U PoquetteItalyAnna Fali PROPOSAL
Francesco N SchemmerUnited KingdomBernardo Dominic RENEWAL
Izzy D MaletCanadaOnyama Limba PROPOSAL
Ricardo J ShinkoBrazilIoni Bowcher PROPOSAL
Misaki I ChuiCanadaStephen Shaw QUALIFIED
Jones Z AlbaresJapanElwin Sharvill RENEWAL
Murillo K InouyeArgentinaIvan Magalhaes NEGOTIATION
Misaki A AlbaresItalyAmy Elsner PROPOSAL
Aruna Q SlusarskiUnited KingdomXuxue Feng QUALIFIED
Kaitlin J DarakjyBrazilIoni Bowcher PROPOSAL
Rodrigues R KolmetzAustraliaIvan Magalhaes NEGOTIATION
Leja P ButtAustraliaIoni Bowcher UNQUALIFIED
Rodrigues X AlbaresBrazilAnna Fali NEW
Leon E IturbideIndiaStephen Shaw QUALIFIED
Rodrigues J SaylorsIndiaAnna Fali RENEWAL
Faith H WaycottSpainElwin Sharvill QUALIFIED
Adams G KolmetzGermanyBernardo Dominic UNQUALIFIED
Rodrigues E ShinkoRussiaIoni Bowcher PROPOSAL
Costa K GauchoUnited KingdomAmy Elsner NEW
Aditya S FlosiFranceBernardo Dominic QUALIFIED
Jeanfrancois C FollerAustraliaOnyama Limba UNQUALIFIED
Silvio R ButtGermanyOnyama Limba NEGOTIATION
Smith E DarakjyRussiaAsiya Javayant PROPOSAL
Leon U CampainGermanyBernardo Dominic UNQUALIFIED
Jennifer A InouyeGermanyXuxue Feng QUALIFIED
Kaitlin X PoquetteBrazilIvan Magalhaes PROPOSAL
Frozen Columns
Name
Kadeem X Ostrosky
Aika A Caldarera
Murillo R Briddick
Emily T Rulapaugh
Deepesh L Ostrosky
Maisha P Oldroyd
Deepesh C Caudy
Mujtaba L Waycott
Francesco C Malet
Chavez N Sergi
Chavez G Shinko
Rodrigues G Doe
Costa I Glick
Arvin R Ostrosky
Aruna V Dilliard
Aruna U Briddick
Alejandro Z Waycott
Francesco O Whobrey
Adams O Royster
Ivar D Poquette
Antonio G Waycott
Maria K Bowley
Tony U Sergi
Aditya P Iturbide
Kaitlin Y Doe
Jennifer H Whobrey
Nicolas C Royster
Mayumi M Nestle
Octavia H Kusko
Maisha Q Nestle
Julie Q Maclead
Stacey M Paprocki
Ashley G Malet
Chavez D Tollner
Darci K Saylors
Maria C Gaucho
Leon Q Inouye
Juan C Nicka
Aika D Chui
Rodrigues R Kusko
Morrow T Sergi
Misaki Z Nestle
Ashley Q Morasca
Johnson P Ostrosky
Aditya Y Schemmer
Kadeem Y Kusko
Silvio Y Campain
Aditya A Nicka
Jefferson N Royster
Aika S Stockham
IdCountryDate
1000Italy2026-10-06
1001India2026-09-29
1002Italy2026-10-07
1003Japan2026-10-05
1004Spain2026-09-23
1005India2026-10-01
1006Russia2026-10-07
1007Spain2026-09-29
1008Italy2026-09-29
1009Japan2026-10-07
1010Italy2026-09-24
1011Germany2026-10-01
1012Spain2026-10-17
1013Australia2026-10-04
1014Italy2026-10-15
1015Brazil2026-10-08
1016Spain2026-09-21
1017Italy2026-10-08
1018Canada2026-10-05
1019Russia2026-09-25
1020United Kingdom2026-09-28
1021Argentina2026-10-03
1022United Kingdom2026-09-30
1023Italy2026-10-01
1024Australia2026-09-21
1025Brazil2026-09-20
1026Canada2026-10-09
1027Italy2026-10-17
1028Argentina2026-09-21
1029Spain2026-10-11
1030Germany2026-09-20
1031Canada2026-09-26
1032Argentina2026-10-15
1033Canada2026-10-11
1034Australia2026-10-14
1035Brazil2026-09-22
1036Australia2026-09-19
1037France2026-09-25
1038France2026-09-22
1039Argentina2026-10-02
1040United Kingdom2026-09-22
1041India2026-09-20
1042Australia2026-10-08
1043Canada2026-09-28
1044Brazil2026-09-23
1045Spain2026-10-03
1046Russia2026-09-19
1047India2026-09-22
1048Australia2026-09-30
1049France2026-09-18

On-Demand Data

NameIdCountryDate
Greenwood Z Iturbide1000Australia2026-09-23
Greenwood W Doe1001Brazil2026-09-20
Leon Q Kusko1002Spain2026-09-23
Aruna S Foller1003Brazil2026-10-16
Ricardo M Dilliard1004Australia2026-09-24
Silvio F Darakjy1005Germany2026-10-04
Jennifer L Marrier1006United Kingdom2026-09-30
Jeanfrancois U Rulapaugh1007Spain2026-10-13
Morrow T Butt1008Russia2026-10-06
Maisha I Poquette1009Canada2026-09-25
Maisha J Saylors1010Canada2026-09-18
David P Campain1011Germany2026-09-23
Wickens E Maclead1012Spain2026-09-20
Julie T Sergi1013Germany2026-10-16
David N Kolmetz1014India2026-10-16
Leja K Garufi1015Spain2026-10-14
Alejandro Y Gaucho1016India2026-10-12
Claire X Tollner1017Italy2026-09-24
Ricardo R Caudy1018Spain2026-10-11
Greenwood P Doe1019Canada2026-10-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood J PoquetteFranceElwin Sharvill QUALIFIED
Leon J StockhamFranceAsiya Javayant PROPOSAL
Jeanfrancois M BologniaSpainStephen Shaw QUALIFIED
Salvatore C NickaCanadaIoni Bowcher NEW
Clifford L RutaIndiaBernardo Dominic UNQUALIFIED
Ashley O RimCanadaElwin Sharvill QUALIFIED
Jennifer W MacleadSpainElwin Sharvill PROPOSAL
Adams Z CampainBrazilAmy Elsner NEGOTIATION
Cody N PerinBrazilIvan Magalhaes NEGOTIATION
Maisha W KolmetzJapanXuxue Feng QUALIFIED
Leja Q MarrierCanadaStephen Shaw NEGOTIATION
Ricardo Z FlosiJapanIoni Bowcher PROPOSAL
Maria J SlusarskiSpainStephen Shaw PROPOSAL
Morrow F WaycottBrazilXuxue Feng RENEWAL
Wickens M CaudySpainElwin Sharvill RENEWAL
Jennifer W KuskoAustraliaIoni Bowcher UNQUALIFIED
Smith X RulapaughCanadaXuxue Feng QUALIFIED
Sinclair C ButtFranceOnyama Limba QUALIFIED
Ricardo P WieserJapanXuxue Feng PROPOSAL
Smith Y VenereRussiaBernardo Dominic PROPOSAL
Claire K MacleadArgentinaOnyama Limba NEW
Kaitlin G SlusarskiIndiaAnna Fali UNQUALIFIED
Smith X MaletBrazilAmy Elsner RENEWAL
Stacey M WieserArgentinaBernardo Dominic PROPOSAL
Mayumi A PaprockiCanadaAsiya Javayant UNQUALIFIED
Stacey L BriddickCanadaBernardo Dominic PROPOSAL
Aruna R NickaSpainOnyama Limba NEW
Ashley R InouyeArgentinaAmy Elsner RENEWAL
Ricardo N PerinRussiaBernardo Dominic RENEWAL
Munro X ChuiBrazilAmy Elsner NEGOTIATION
Ashley Z AmigonRussiaAmy Elsner PROPOSAL
Rodrigues B FerenczJapanAsiya Javayant QUALIFIED
Stacey Z GillianItalyAsiya Javayant UNQUALIFIED
Aika H RulapaughGermanyElwin Sharvill UNQUALIFIED
Murillo X IturbideAustraliaAmy Elsner QUALIFIED
Juan Q BriddickAustraliaBernardo Dominic UNQUALIFIED
Izzy D WhobreyArgentinaAmy Elsner NEW
Alejandro F CampainFranceBernardo Dominic RENEWAL
Clifford Q ShinkoItalyOnyama Limba PROPOSAL
Greenwood N GauchoRussiaIoni Bowcher 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>