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
Aika C DoeSpainIoni Bowcher UNQUALIFIED
Arvin M BriddickSpainOnyama Limba QUALIFIED
Mujtaba A PerinAustraliaBernardo Dominic UNQUALIFIED
Aruna M WaycottGermanyStephen Shaw UNQUALIFIED
Ashley F KolmetzIndiaAnna Fali QUALIFIED
Alejandro I MaletRussiaStephen Shaw UNQUALIFIED
Isabel G KuskoJapanStephen Shaw PROPOSAL
Smith J GarufiJapanAmy Elsner RENEWAL
Mayumi K CaudyGermanyIvan Magalhaes NEGOTIATION
Emily F SergiUnited KingdomStephen Shaw NEGOTIATION
Juan B WieserSpainBernardo Dominic UNQUALIFIED
Mujtaba T RoysterCanadaIvan Magalhaes NEGOTIATION
Kaitlin D RimRussiaAnna Fali NEW
Ivar V BologniaItalyXuxue Feng NEGOTIATION
Julie R BologniaRussiaStephen Shaw QUALIFIED
Nicolas K MarrierArgentinaIvan Magalhaes NEGOTIATION
Clifford T PoquetteGermanyXuxue Feng PROPOSAL
Aruna H VenereArgentinaXuxue Feng UNQUALIFIED
David Q GauchoCanadaIvan Magalhaes NEW
Chavez Y DarakjySpainAmy Elsner NEGOTIATION
Mujtaba S WhobreySpainOnyama Limba QUALIFIED
Jefferson R DilliardJapanAmy Elsner UNQUALIFIED
Clifford B RoysterCanadaStephen Shaw NEW
Francesco C GillianJapanBernardo Dominic QUALIFIED
Ricardo S PaprockiIndiaStephen Shaw NEGOTIATION
Maisha A AlbaresGermanyBernardo Dominic QUALIFIED
Morrow E GarufiRussiaAnna Fali NEGOTIATION
James H ChuiSpainXuxue Feng NEW
Ivar O WieserJapanIoni Bowcher RENEWAL
Silvio J BriddickFranceOnyama Limba PROPOSAL
Jefferson O SaylorsItalyAsiya Javayant QUALIFIED
Silvio Y IturbideJapanBernardo Dominic PROPOSAL
Murillo A StockhamRussiaAmy Elsner NEW
Morrow X MorascaRussiaAnna Fali RENEWAL
Murillo N BriddickSpainXuxue Feng NEGOTIATION
Alejandro L WieserCanadaIvan Magalhaes QUALIFIED
Maria S TollnerRussiaStephen Shaw UNQUALIFIED
Jefferson Z ChuiJapanBernardo Dominic QUALIFIED
Leon A TollnerUnited KingdomIvan Magalhaes QUALIFIED
Mujtaba Y GarufiSpainAnna Fali RENEWAL
Jennifer X MaletIndiaXuxue Feng PROPOSAL
Emily D FerenczJapanOnyama Limba NEGOTIATION
Chavez S NickaSpainAsiya Javayant NEGOTIATION
Morrow P RoysterSpainElwin Sharvill PROPOSAL
Deepesh X ShinkoSpainIvan Magalhaes PROPOSAL
Claire D AmigonIndiaXuxue Feng UNQUALIFIED
Kaitlin B FigeroaIndiaXuxue Feng NEW
Kadeem L AlbaresSpainIvan Magalhaes RENEWAL
Clifford N MarrierGermanyAsiya Javayant QUALIFIED
Kadeem I RoysterFranceAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Smith D OldroydFranceAsiya Javayant PROPOSAL
David P DarakjyArgentinaBernardo Dominic QUALIFIED
Faith S CaudyItalyIoni Bowcher NEW
Tony H BowleyCanadaIvan Magalhaes QUALIFIED
Silvio I CampainJapanElwin Sharvill QUALIFIED
Salvatore Y ChuiRussiaBernardo Dominic UNQUALIFIED
Stacey T InouyeFranceAmy Elsner UNQUALIFIED
David Y IturbideGermanyOnyama Limba UNQUALIFIED
Morrow F RutaItalyStephen Shaw PROPOSAL
Jones L AlbaresAustraliaAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily G ChuiUnited Kingdom2026-11-12Chemel, James L Cpa PROPOSAL44Ioni Bowcher
1001Jefferson O ButtAustralia2026-10-19Chapman, Ross E Esq UNQUALIFIED30Ivan Magalhaes
1002Jennifer L DoeGermany2026-10-16Feltz Printing Service NEW14Asiya Javayant
1003Julie C PoquetteJapan2026-11-02Dorl, James J Esq UNQUALIFIED73Amy Elsner
1004Nicolas B CaudyUnited Kingdom2026-10-28Morlong Associates NEGOTIATION69Amy Elsner
1005Murillo W RoysterRussia2026-10-22Chanay, Jeffrey A Esq QUALIFIED40Asiya Javayant
1006Ricardo F FigeroaCanada2026-10-20Rangoni Of Florence QUALIFIED13Anna Fali
1007Maria V WhobreyJapan2026-10-22Chanay, Jeffrey A Esq NEGOTIATION11Amy Elsner
1008Emily P SergiBrazil2026-10-31Feltz Printing Service QUALIFIED49Onyama Limba
1009Darci F FlosiArgentina2026-11-09Dorl, James J Esq NEGOTIATION27Elwin Sharvill
1010Nicolas S InouyeBrazil2026-10-17King, Christopher A Esq NEW54Bernardo Dominic
1011Leja P RutaRussia2026-10-16Dorl, James J Esq UNQUALIFIED77Xuxue Feng
1012Wickens N OstroskyIndia2026-11-11Feiner Bros QUALIFIED65Bernardo Dominic
1013Octavia N PerinCanada2026-11-09Printing Dimensions NEW25Onyama Limba
1014Kaitlin F GauchoArgentina2026-11-11Benton, John B Jr PROPOSAL47Onyama Limba
1015Kaitlin S ButtSpain2026-10-29King, Christopher A Esq UNQUALIFIED19Amy Elsner
1016Jones M FigeroaJapan2026-11-01Commercial Press UNQUALIFIED77Amy Elsner
1017Salvatore L KolmetzRussia2026-10-24King, Christopher A Esq RENEWAL38Stephen Shaw
1018Izzy O PaprockiItaly2026-11-04Morlong Associates PROPOSAL83Amy Elsner
1019Ivar A FerenczItaly2026-10-16Feltz Printing Service QUALIFIED51Bernardo Dominic
1020Tony C WhobreyArgentina2026-10-14Truhlar And Truhlar Attys NEW71Onyama Limba
1021Ricardo K BriddickRussia2026-10-27Printing Dimensions PROPOSAL95Xuxue Feng
1022Smith X PoquetteArgentina2026-10-24Commercial Press NEGOTIATION20Bernardo Dominic
1023Antonio E DoeArgentina2026-10-25Chanay, Jeffrey A Esq QUALIFIED54Ioni Bowcher
1024Cody T PoquetteUnited Kingdom2026-11-02Commercial Press UNQUALIFIED76Ivan Magalhaes
1025Juan N GauchoRussia2026-10-19Commercial Press PROPOSAL93Ivan Magalhaes
1026Jones X BriddickIndia2026-11-08Feltz Printing Service UNQUALIFIED73Asiya Javayant
1027Jennifer W SaylorsArgentina2026-10-26Printing Dimensions PROPOSAL69Xuxue Feng
1028Leja I WieserJapan2026-10-20Rousseaux, Michael Esq QUALIFIED42Ioni Bowcher
1029Emily I PoquetteArgentina2026-10-31Rangoni Of Florence NEGOTIATION11Xuxue Feng
1030Emily H OstroskyArgentina2026-11-12Printing Dimensions NEGOTIATION72Onyama Limba
1031Kadeem U BowleyItaly2026-11-05Chanay, Jeffrey A Esq PROPOSAL20Amy Elsner
1032Jeanfrancois B BowleyBrazil2026-10-21Feiner Bros UNQUALIFIED37Ioni Bowcher
1033Murillo J MorascaAustralia2026-10-19Chemel, James L Cpa PROPOSAL96Onyama Limba
1034Chavez H BriddickUnited Kingdom2026-10-29Rangoni Of Florence NEW26Bernardo Dominic
1035Jefferson P ButtCanada2026-10-28Rangoni Of Florence UNQUALIFIED57Asiya Javayant
1036Salvatore N StockhamIndia2026-10-29Chapman, Ross E Esq RENEWAL80Ivan Magalhaes
1037Isabel W SlusarskiIndia2026-11-02Printing Dimensions UNQUALIFIED80Elwin Sharvill
1038Johnson O VenereJapan2026-10-25Chapman, Ross E Esq NEGOTIATION49Asiya Javayant
1039Alejandro R ButtAustralia2026-10-28Feltz Printing Service NEGOTIATION96Anna Fali
1040Mayumi K CampainRussia2026-10-28King, Christopher A Esq UNQUALIFIED96Amy Elsner
1041Mayumi D VocelkaBrazil2026-10-14Printing Dimensions RENEWAL95Amy Elsner
1042Ivar S SaylorsCanada2026-10-29Printing Dimensions NEW20Bernardo Dominic
1043Octavia V FlosiBrazil2026-10-21Buckley Miller Wright PROPOSAL15Elwin Sharvill
1044Octavia K DoeFrance2026-11-06Feltz Printing Service NEW32Elwin Sharvill
1045Costa R KolmetzIndia2026-10-14Rousseaux, Michael Esq NEW6Elwin Sharvill
1046Clifford Z StensethItaly2026-10-16Morlong Associates UNQUALIFIED72Onyama Limba
1047Darci P BologniaUnited Kingdom2026-10-29Chapman, Ross E Esq NEW86Stephen Shaw
1048Smith N MorascaItaly2026-10-27Truhlar And Truhlar Attys QUALIFIED62Xuxue Feng
1049Nicolas A SlusarskiJapan2026-11-04Feltz Printing Service UNQUALIFIED96Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Smith V RimIndiaIvan Magalhaes NEGOTIATION
Salvatore O MacleadAustraliaAmy Elsner NEW
Jennifer W FlosiSpainAsiya Javayant NEW
Jones J RulapaughArgentinaAnna Fali NEW
Alejandro T PoquetteCanadaIvan Magalhaes RENEWAL
Smith T MacleadSpainStephen Shaw UNQUALIFIED
Stacey U TollnerItalyAmy Elsner UNQUALIFIED
Jefferson V MaletIndiaAsiya Javayant PROPOSAL
Smith I InouyeAustraliaAnna Fali UNQUALIFIED
Aditya E TollnerUnited KingdomStephen Shaw QUALIFIED
Emily B GauchoItalyIvan Magalhaes NEGOTIATION
Juan M VenereJapanIoni Bowcher QUALIFIED
Ivar J SergiFranceIvan Magalhaes RENEWAL
Aditya J DarakjyItalyAsiya Javayant PROPOSAL
Sinclair K DarakjyFranceElwin Sharvill NEW
Morrow X BriddickAustraliaAnna Fali QUALIFIED
Julie H SaylorsArgentinaAnna Fali QUALIFIED
Munro I RulapaughCanadaIoni Bowcher NEW
Darci Q TollnerSpainXuxue Feng NEGOTIATION
Chavez K SergiCanadaIoni Bowcher UNQUALIFIED
Johnson C MacleadGermanyXuxue Feng PROPOSAL
Juan M FigeroaGermanyElwin Sharvill PROPOSAL
Mayumi V RoysterArgentinaAnna Fali QUALIFIED
Salvatore L StockhamAustraliaAnna Fali NEGOTIATION
Jennifer C BowleyArgentinaIoni Bowcher NEGOTIATION
Faith S OstroskyJapanBernardo Dominic QUALIFIED
Maria U OldroydJapanXuxue Feng RENEWAL
Rodrigues K FigeroaArgentinaAnna Fali QUALIFIED
Smith E WieserFranceOnyama Limba RENEWAL
Kaitlin W PoquetteRussiaAmy Elsner NEGOTIATION
Mayumi B SaylorsCanadaOnyama Limba RENEWAL
Adams G MacleadUnited KingdomOnyama Limba PROPOSAL
Kaitlin X KolmetzRussiaAsiya Javayant PROPOSAL
Ricardo F ChuiRussiaOnyama Limba RENEWAL
Francesco B IturbideIndiaBernardo Dominic QUALIFIED
Kadeem D NestleArgentinaBernardo Dominic RENEWAL
Munro B DoeRussiaAmy Elsner NEW
Leja M RoysterArgentinaStephen Shaw NEGOTIATION
David P GillianGermanyAnna Fali NEW
Octavia A VocelkaBrazilElwin Sharvill NEGOTIATION
Darci F OldroydUnited KingdomBernardo Dominic NEW
Juan T IturbideRussiaIvan Magalhaes QUALIFIED
Juan C MarrierIndiaAnna Fali NEW
Munro F SaylorsSpainIvan Magalhaes UNQUALIFIED
Ashley H FerenczRussiaAmy Elsner NEW
Aditya A MaletIndiaIvan Magalhaes UNQUALIFIED
Stacey Q GlickCanadaIoni Bowcher QUALIFIED
Salvatore W GauchoAustraliaStephen Shaw PROPOSAL
Silvio O FollerAustraliaAsiya Javayant NEW
Munro U VenereIndiaStephen Shaw UNQUALIFIED
Frozen Columns
Name
Salvatore P Butt
Nicolas E Rim
Deepesh U Amigon
Octavia X Bolognia
Aditya G Campain
Stacey X Caudy
Leja Y Dilliard
Wickens P Nestle
Emily X Ruta
Deepesh B Stockham
Ashley K Ruta
Stacey W Kusko
Maisha O Kolmetz
Aika P Caldarera
Alejandro Q Waycott
Faith A Malet
Darci D Royster
Izzy G Morasca
Darci V Inouye
Faith B Shinko
Ivar W Dilliard
Faith R Campain
Clifford S Whobrey
Leja O Whobrey
Emily V Chui
Kaitlin L Morasca
Mujtaba R Waycott
Maisha T Glick
Mujtaba C Gillian
Leon F Chui
Julie R Darakjy
Kadeem N Glick
Darci U Morasca
Tony O Slusarski
Kadeem F Briddick
Sinclair N Wieser
Costa F Gaucho
Francesco G Doe
Aruna Z Caldarera
Isabel G Malet
Isabel D Tollner
Julie B Stenseth
Juan Z Oldroyd
Ricardo K Malet
Aruna G Bowley
Nicolas M Caldarera
Murillo U Malet
James N Gillian
Aruna A Flosi
Julie N Garufi
IdCountryDate
1000Italy2026-11-01
1001Japan2026-10-20
1002Canada2026-10-16
1003France2026-10-16
1004Germany2026-10-19
1005United Kingdom2026-10-17
1006United Kingdom2026-10-22
1007United Kingdom2026-10-21
1008Spain2026-10-24
1009Canada2026-10-17
1010Italy2026-11-06
1011Spain2026-11-10
1012India2026-10-25
1013Canada2026-10-17
1014Brazil2026-11-01
1015United Kingdom2026-11-09
1016United Kingdom2026-11-10
1017France2026-11-08
1018Canada2026-10-23
1019Russia2026-10-16
1020Japan2026-10-21
1021Germany2026-10-20
1022Italy2026-10-21
1023Japan2026-10-24
1024United Kingdom2026-11-04
1025Japan2026-10-31
1026Japan2026-10-27
1027Japan2026-10-29
1028Canada2026-11-04
1029India2026-11-01
1030India2026-10-28
1031United Kingdom2026-11-09
1032United Kingdom2026-10-24
1033Brazil2026-11-08
1034Argentina2026-11-08
1035Russia2026-11-11
1036Canada2026-11-10
1037France2026-10-30
1038India2026-11-01
1039France2026-11-01
1040Germany2026-11-05
1041Japan2026-10-21
1042Australia2026-10-14
1043Argentina2026-10-23
1044Argentina2026-11-11
1045Germany2026-10-14
1046Russia2026-10-31
1047Russia2026-11-06
1048France2026-11-06
1049India2026-10-22

On-Demand Data

NameIdCountryDate
Aruna R Doe1000Italy2026-11-05
Clifford T Nestle1001Australia2026-11-02
Wickens C Kolmetz1002Canada2026-10-21
Leja D Vocelka1003Australia2026-11-07
Kadeem S Caudy1004India2026-10-28
Maria W Marrier1005Germany2026-11-05
Munro U Dilliard1006United Kingdom2026-10-20
Misaki Q Rulapaugh1007Italy2026-10-24
Silvio N Garufi1008United Kingdom2026-11-09
Stacey X Malet1009Japan2026-10-15
Johnson S Bowley1010United Kingdom2026-11-12
Francesco W Figeroa1011Australia2026-10-23
Octavia R Maclead1012Canada2026-10-25
Jefferson Z Wieser1013Argentina2026-10-23
Jeanfrancois E Gaucho1014Russia2026-10-16
Isabel Q Royster1015Russia2026-10-21
Mujtaba Z Schemmer1016Italy2026-10-16
Clifford Q Figeroa1017Russia2026-10-16
Ashley P Gillian1018Italy2026-10-30
Octavia T Wieser1019Russia2026-10-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan N StockhamRussiaIvan Magalhaes NEW
Faith N InouyeGermanyOnyama Limba NEGOTIATION
James A CampainRussiaIvan Magalhaes UNQUALIFIED
Salvatore C StockhamJapanOnyama Limba PROPOSAL
Chavez M FigeroaJapanIvan Magalhaes RENEWAL
Murillo A BriddickCanadaOnyama Limba RENEWAL
Maisha L IturbideSpainOnyama Limba NEW
Sinclair D NestleAustraliaStephen Shaw NEW
Ashley T FlosiArgentinaAmy Elsner PROPOSAL
Silvio W ShinkoIndiaXuxue Feng NEW
Leja H StockhamFranceAsiya Javayant NEW
Morrow Q SergiRussiaStephen Shaw NEW
Isabel T MorascaJapanAsiya Javayant RENEWAL
Maisha H GarufiIndiaStephen Shaw NEGOTIATION
Rodrigues U SlusarskiRussiaAsiya Javayant NEGOTIATION
Nicolas M OldroydFranceIvan Magalhaes UNQUALIFIED
Chavez M RulapaughJapanOnyama Limba QUALIFIED
Jennifer I FlosiSpainElwin Sharvill UNQUALIFIED
Mayumi G ShinkoRussiaAsiya Javayant NEGOTIATION
Jennifer I PerinItalyStephen Shaw NEW
Kaitlin G SergiArgentinaIvan Magalhaes PROPOSAL
Jones C KuskoFranceIoni Bowcher PROPOSAL
Leja M RoysterFranceIoni Bowcher RENEWAL
Kadeem J TollnerRussiaStephen Shaw NEGOTIATION
Faith F AmigonFranceStephen Shaw QUALIFIED
Wickens Q SchemmerItalyBernardo Dominic UNQUALIFIED
Nicolas G PerinFranceAsiya Javayant QUALIFIED
Clifford M ButtSpainIvan Magalhaes NEGOTIATION
Isabel M WaycottCanadaStephen Shaw NEW
Aditya N WhobreyBrazilBernardo Dominic QUALIFIED
James Y WhobreyRussiaIoni Bowcher QUALIFIED
Greenwood L SlusarskiGermanyIvan Magalhaes NEW
Greenwood E GauchoSpainBernardo Dominic NEW
Greenwood O SlusarskiCanadaAsiya Javayant QUALIFIED
Juan W FigeroaArgentinaStephen Shaw PROPOSAL
Isabel G BowleySpainStephen Shaw QUALIFIED
Isabel D GarufiAustraliaAsiya Javayant NEGOTIATION
Morrow C VenereArgentinaAmy Elsner NEW
Maria D InouyeArgentinaStephen Shaw QUALIFIED
Mujtaba Q SchemmerUnited KingdomAsiya Javayant NEGOTIATION

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