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
Mayumi O TollnerSpainXuxue Feng NEW
Francesco Z VocelkaItalyAnna Fali NEGOTIATION
Ashley Z FerenczArgentinaAnna Fali RENEWAL
Maria M MaletArgentinaBernardo Dominic QUALIFIED
Rodrigues H PerinCanadaOnyama Limba NEW
Jefferson V StensethFranceXuxue Feng UNQUALIFIED
Ivar J AlbaresJapanAsiya Javayant NEW
Salvatore Z VenereGermanyXuxue Feng NEGOTIATION
Chavez D IturbideJapanOnyama Limba NEW
Silvio L KuskoAustraliaAmy Elsner NEW
Morrow K GarufiAustraliaIoni Bowcher NEW
Jeanfrancois T DoeBrazilAmy Elsner RENEWAL
Maria Q PerinJapanIoni Bowcher NEW
Ivar O KolmetzGermanyElwin Sharvill RENEWAL
Johnson L NestleSpainBernardo Dominic UNQUALIFIED
Nicolas R BologniaAustraliaAnna Fali UNQUALIFIED
Emily G VenereCanadaAsiya Javayant RENEWAL
Chavez Z KuskoFranceIoni Bowcher QUALIFIED
Izzy T MorascaBrazilAsiya Javayant NEW
Juan Y OldroydAustraliaIvan Magalhaes QUALIFIED
Izzy T NickaItalyStephen Shaw RENEWAL
Adams G VenereJapanStephen Shaw PROPOSAL
Isabel G AlbaresItalyOnyama Limba QUALIFIED
Sinclair K GauchoSpainAnna Fali NEW
Sinclair Q VenereUnited KingdomIoni Bowcher NEGOTIATION
Johnson W KolmetzUnited KingdomIvan Magalhaes NEW
Julie U DarakjyFranceElwin Sharvill RENEWAL
Smith D KuskoSpainAsiya Javayant UNQUALIFIED
Emily U FerenczGermanyBernardo Dominic RENEWAL
Darci U NestleGermanyStephen Shaw RENEWAL
Jennifer Y BriddickSpainIvan Magalhaes QUALIFIED
Cody D FigeroaBrazilStephen Shaw QUALIFIED
Chavez P KolmetzUnited KingdomStephen Shaw UNQUALIFIED
Ricardo B PaprockiAustraliaOnyama Limba PROPOSAL
Jeanfrancois C GillianItalyXuxue Feng NEW
Octavia S NestleRussiaElwin Sharvill PROPOSAL
Jefferson R GlickJapanIvan Magalhaes NEGOTIATION
Greenwood U OldroydFranceOnyama Limba QUALIFIED
David W BologniaUnited KingdomIoni Bowcher RENEWAL
Greenwood R ChuiAustraliaIoni Bowcher NEW
Tony D SaylorsCanadaOnyama Limba QUALIFIED
Darci F DoeRussiaIvan Magalhaes NEGOTIATION
Murillo T BowleyBrazilAnna Fali PROPOSAL
Murillo J VenereArgentinaOnyama Limba RENEWAL
Misaki N BriddickFranceAnna Fali RENEWAL
Antonio L WieserArgentinaIoni Bowcher UNQUALIFIED
Octavia I IturbideBrazilXuxue Feng UNQUALIFIED
Octavia E CaldareraRussiaStephen Shaw NEW
Maisha B SlusarskiIndiaAmy Elsner UNQUALIFIED
Leja W RoysterJapanAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
James N TollnerJapanIoni Bowcher RENEWAL
Jennifer O ChuiArgentinaXuxue Feng RENEWAL
Isabel L SergiItalyAsiya Javayant NEW
Jones W PaprockiBrazilElwin Sharvill UNQUALIFIED
Kadeem H SchemmerBrazilXuxue Feng RENEWAL
Emily Z KuskoRussiaStephen Shaw NEGOTIATION
Arvin A FerenczUnited KingdomAmy Elsner NEW
Mujtaba S FollerFranceElwin Sharvill PROPOSAL
Tony M GarufiAustraliaBernardo Dominic PROPOSAL
Isabel E FlosiAustraliaAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams U MaletBrazil2026-08-31King, Christopher A Esq RENEWAL28Onyama Limba
1001Chavez K AlbaresUnited Kingdom2026-09-03Buckley Miller Wright RENEWAL91Amy Elsner
1002Adams B IturbideIndia2026-08-31Feiner Bros NEW92Ivan Magalhaes
1003Mujtaba A FigeroaGermany2026-09-02Chemel, James L Cpa NEGOTIATION28Amy Elsner
1004Leja T WieserBrazil2026-09-10Chanay, Jeffrey A Esq UNQUALIFIED8Stephen Shaw
1005Wickens T CampainBrazil2026-09-15Feiner Bros PROPOSAL2Onyama Limba
1006Kadeem T AmigonJapan2026-09-12Benton, John B Jr QUALIFIED16Elwin Sharvill
1007Antonio L SchemmerGermany2026-09-06Printing Dimensions RENEWAL87Stephen Shaw
1008Claire R SergiUnited Kingdom2026-09-12Buckley Miller Wright QUALIFIED32Elwin Sharvill
1009Ashley N VenereCanada2026-08-30Truhlar And Truhlar Attys QUALIFIED43Anna Fali
1010Stacey U FigeroaFrance2026-09-07Chanay, Jeffrey A Esq PROPOSAL26Amy Elsner
1011Leon Q RoysterUnited Kingdom2026-09-08Rangoni Of Florence NEGOTIATION0Ivan Magalhaes
1012Claire R CaudyRussia2026-08-25Morlong Associates UNQUALIFIED56Onyama Limba
1013Faith Q ButtSpain2026-09-03Feltz Printing Service QUALIFIED92Asiya Javayant
1014Adams Z GlickIndia2026-09-13Truhlar And Truhlar Attys NEGOTIATION89Bernardo Dominic
1015Jeanfrancois C ButtBrazil2026-08-31Morlong Associates UNQUALIFIED35Ivan Magalhaes
1016Silvio E GillianGermany2026-09-14Benton, John B Jr PROPOSAL4Ivan Magalhaes
1017Munro Z BologniaRussia2026-09-05Feiner Bros QUALIFIED97Asiya Javayant
1018Adams A IturbideArgentina2026-08-30Printing Dimensions RENEWAL64Ioni Bowcher
1019Isabel Z BologniaJapan2026-09-10Morlong Associates QUALIFIED10Elwin Sharvill
1020Stacey I WaycottGermany2026-09-04Chanay, Jeffrey A Esq UNQUALIFIED10Asiya Javayant
1021Deepesh I MaletAustralia2026-08-30King, Christopher A Esq PROPOSAL98Bernardo Dominic
1022Jones J AmigonBrazil2026-08-30Feiner Bros NEGOTIATION17Bernardo Dominic
1023Silvio L RoysterGermany2026-09-02Buckley Miller Wright QUALIFIED38Elwin Sharvill
1024Chavez J FlosiFrance2026-09-06Morlong Associates UNQUALIFIED11Ioni Bowcher
1025Nicolas D StensethBrazil2026-09-05Chanay, Jeffrey A Esq UNQUALIFIED6Elwin Sharvill
1026Wickens C SaylorsGermany2026-09-11Truhlar And Truhlar Attys NEGOTIATION58Anna Fali
1027Emily Y ChuiGermany2026-09-19Feltz Printing Service NEGOTIATION11Elwin Sharvill
1028Tony P PaprockiArgentina2026-09-15Morlong Associates RENEWAL0Amy Elsner
1029Claire F SergiBrazil2026-09-20Rousseaux, Michael Esq NEGOTIATION58Asiya Javayant
1030Misaki B KuskoArgentina2026-09-10King, Christopher A Esq NEGOTIATION87Xuxue Feng
1031Greenwood Y CaldareraGermany2026-09-09Chanay, Jeffrey A Esq RENEWAL4Stephen Shaw
1032Julie U MaletRussia2026-09-16Truhlar And Truhlar Attys UNQUALIFIED35Onyama Limba
1033Clifford D OstroskyItaly2026-09-07Dorl, James J Esq RENEWAL25Onyama Limba
1034Stacey H GarufiJapan2026-09-01Rousseaux, Michael Esq UNQUALIFIED53Ivan Magalhaes
1035Nicolas T BologniaIndia2026-09-10Benton, John B Jr PROPOSAL92Ioni Bowcher
1036Arvin L GillianIndia2026-09-11Rousseaux, Michael Esq NEGOTIATION81Onyama Limba
1037Aika N MorascaUnited Kingdom2026-08-24Feltz Printing Service NEGOTIATION53Ivan Magalhaes
1038Tony F FigeroaIndia2026-09-09Feiner Bros RENEWAL94Onyama Limba
1039Aruna C NickaRussia2026-08-29Morlong Associates NEW2Amy Elsner
1040Aruna D GillianRussia2026-09-18Printing Dimensions RENEWAL88Amy Elsner
1041Claire O SergiCanada2026-08-26Rangoni Of Florence NEW86Stephen Shaw
1042Francesco E MaletJapan2026-09-12Chapman, Ross E Esq UNQUALIFIED33Asiya Javayant
1043Mujtaba A DilliardAustralia2026-09-15Benton, John B Jr NEW94Onyama Limba
1044Rodrigues I FlosiFrance2026-08-31Benton, John B Jr NEW37Bernardo Dominic
1045Alejandro R KuskoUnited Kingdom2026-08-29Feiner Bros NEW58Anna Fali
1046Murillo G RoysterFrance2026-09-05Dorl, James J Esq QUALIFIED91Ioni Bowcher
1047Cody M OldroydItaly2026-09-03Feltz Printing Service NEGOTIATION9Bernardo Dominic
1048Greenwood E PoquetteFrance2026-09-01Rousseaux, Michael Esq RENEWAL42Bernardo Dominic
1049Ivar X NickaJapan2026-09-09Printing Dimensions NEW0Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Leon N FigeroaBrazilIvan Magalhaes UNQUALIFIED
Aruna K SlusarskiGermanyBernardo Dominic RENEWAL
Rodrigues T AlbaresJapanBernardo Dominic RENEWAL
Jones T DilliardGermanyXuxue Feng NEW
Ivar J WieserFranceOnyama Limba QUALIFIED
Mujtaba M KuskoSpainAsiya Javayant NEGOTIATION
Jones U NestleIndiaAmy Elsner QUALIFIED
Emily B MaletCanadaElwin Sharvill QUALIFIED
Emily P GauchoSpainStephen Shaw NEW
Johnson V PerinSpainXuxue Feng QUALIFIED
Chavez I WieserCanadaBernardo Dominic NEGOTIATION
Maria H SergiJapanIvan Magalhaes RENEWAL
Deepesh B TollnerItalyAsiya Javayant UNQUALIFIED
Greenwood F RulapaughGermanyAmy Elsner UNQUALIFIED
Jeanfrancois W AmigonItalyAsiya Javayant NEGOTIATION
Aika X FollerUnited KingdomAsiya Javayant RENEWAL
Greenwood N DilliardArgentinaAnna Fali UNQUALIFIED
Juan H StensethFranceAnna Fali RENEWAL
Munro C StockhamFranceAmy Elsner PROPOSAL
Munro H CaldareraBrazilAsiya Javayant NEGOTIATION
Wickens A MaletIndiaAmy Elsner NEW
Sinclair V WieserArgentinaBernardo Dominic RENEWAL
Jones Y FigeroaArgentinaIoni Bowcher NEW
Octavia C BriddickUnited KingdomOnyama Limba PROPOSAL
Alejandro B BowleyFranceAsiya Javayant NEW
Claire Z AmigonJapanBernardo Dominic PROPOSAL
Rodrigues F VocelkaRussiaIoni Bowcher NEW
Jefferson G DilliardJapanIvan Magalhaes PROPOSAL
Morrow I BowleyArgentinaAsiya Javayant PROPOSAL
Aruna O KuskoUnited KingdomStephen Shaw NEGOTIATION
Adams Y StensethJapanOnyama Limba NEGOTIATION
Isabel N CaudyRussiaBernardo Dominic PROPOSAL
Octavia W SlusarskiItalyIvan Magalhaes NEGOTIATION
Jeanfrancois F PerinAustraliaOnyama Limba RENEWAL
Rodrigues W DilliardJapanIoni Bowcher PROPOSAL
Clifford O GauchoItalyStephen Shaw UNQUALIFIED
Francesco W GauchoBrazilElwin Sharvill RENEWAL
James A CaudyGermanyBernardo Dominic RENEWAL
Izzy M InouyeCanadaAsiya Javayant UNQUALIFIED
Morrow A DoeGermanyStephen Shaw UNQUALIFIED
Alejandro U BowleyCanadaOnyama Limba PROPOSAL
Ricardo A CaudyArgentinaStephen Shaw NEGOTIATION
Emily F FerenczItalyBernardo Dominic RENEWAL
Aditya Y MorascaCanadaOnyama Limba QUALIFIED
Aditya T RutaAustraliaOnyama Limba NEGOTIATION
Clifford G CaudyRussiaBernardo Dominic PROPOSAL
Mujtaba V IturbideRussiaIvan Magalhaes NEGOTIATION
Salvatore Y WaycottAustraliaElwin Sharvill RENEWAL
Greenwood U WhobreyJapanIoni Bowcher RENEWAL
Izzy P KolmetzBrazilXuxue Feng PROPOSAL
Frozen Columns
Name
Kadeem S Figeroa
Sinclair M Saylors
Nicolas G Venere
Juan H Ostrosky
David N Foller
Maria R Vocelka
Sinclair A Rulapaugh
Maria H Whobrey
Darci T Paprocki
Jeanfrancois D Saylors
Octavia X Dilliard
Morrow G Briddick
Emily S Nicka
Kaitlin P Iturbide
Emily F Rim
Sinclair G Waycott
Jones H Slusarski
Nicolas W Perin
Sinclair M Briddick
David N Rulapaugh
Julie C Butt
Misaki A Malet
Aditya U Figeroa
Jones H Amigon
Francesco H Inouye
Octavia D Paprocki
Arvin Z Stockham
Jones W Flosi
Wickens H Darakjy
Francesco B Glick
Isabel T Whobrey
Morrow V Inouye
Adams C Doe
Isabel N Gaucho
Stacey Y Kusko
Mayumi S Paprocki
Costa Y Malet
Murillo R Stockham
Salvatore W Saylors
Cody X Garufi
Misaki F Vocelka
Chavez E Venere
Nicolas E Malet
Isabel L Rulapaugh
Tony T Whobrey
Maisha X Stockham
Isabel C Caudy
Adams U Tollner
Mayumi G Figeroa
Adams Z Rim
IdCountryDate
1000Russia2026-09-13
1001Spain2026-09-02
1002India2026-09-01
1003Japan2026-09-10
1004Germany2026-09-14
1005Russia2026-09-21
1006Germany2026-09-22
1007Italy2026-09-19
1008Germany2026-09-20
1009Australia2026-08-28
1010France2026-09-09
1011France2026-08-25
1012Argentina2026-09-08
1013Spain2026-08-24
1014Brazil2026-09-04
1015Australia2026-08-27
1016United Kingdom2026-09-11
1017Japan2026-09-01
1018Japan2026-09-09
1019Australia2026-08-26
1020Italy2026-09-04
1021Canada2026-09-01
1022Australia2026-09-22
1023Germany2026-09-05
1024Argentina2026-09-20
1025India2026-09-05
1026Germany2026-09-08
1027France2026-09-05
1028Germany2026-09-03
1029Argentina2026-09-01
1030United Kingdom2026-08-29
1031Australia2026-09-03
1032Germany2026-09-14
1033India2026-08-30
1034United Kingdom2026-09-21
1035Australia2026-09-08
1036Brazil2026-09-18
1037Argentina2026-09-18
1038Germany2026-09-06
1039Russia2026-09-10
1040Germany2026-09-14
1041Germany2026-09-13
1042Argentina2026-09-20
1043United Kingdom2026-08-30
1044Argentina2026-09-22
1045United Kingdom2026-09-19
1046Australia2026-08-27
1047Italy2026-09-11
1048Russia2026-09-14
1049Japan2026-09-16

On-Demand Data

NameIdCountryDate
Juan T Sergi1000Australia2026-09-09
Mujtaba D Briddick1001France2026-09-01
Leon B Shinko1002France2026-09-04
Emily A Nicka1003Spain2026-09-14
Mayumi Y Malet1004Italy2026-08-29
Emily B Oldroyd1005Canada2026-09-10
Maria U Butt1006Japan2026-09-11
Arvin G Maclead1007Germany2026-09-12
Mayumi I Venere1008Australia2026-08-31
Stacey R Marrier1009Canada2026-09-12
Emily I Shinko1010Germany2026-09-18
Kaitlin R Chui1011Brazil2026-09-21
Morrow R Bowley1012Germany2026-09-18
Stacey O Chui1013Australia2026-09-05
Morrow G Amigon1014Italy2026-09-06
Johnson U Nestle1015India2026-09-15
Juan H Wieser1016Brazil2026-09-14
Leon F Slusarski1017India2026-09-02
Clifford H Royster1018Spain2026-09-08
Sinclair Y Caldarera1019Australia2026-08-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci O ChuiFranceAsiya Javayant QUALIFIED
Ivar D OldroydIndiaStephen Shaw UNQUALIFIED
Mayumi T AlbaresSpainAnna Fali NEGOTIATION
Murillo V FigeroaIndiaAsiya Javayant NEW
Aruna X NickaJapanAnna Fali NEGOTIATION
Jennifer Q MorascaRussiaIoni Bowcher UNQUALIFIED
Mujtaba W CaldareraItalyAnna Fali UNQUALIFIED
Alejandro D InouyeJapanAmy Elsner UNQUALIFIED
Aruna M WaycottRussiaIvan Magalhaes UNQUALIFIED
Clifford U MaletGermanyAmy Elsner UNQUALIFIED
Silvio P ShinkoAustraliaAsiya Javayant RENEWAL
Murillo L WhobreyGermanyAnna Fali RENEWAL
Johnson Y ButtBrazilAsiya Javayant QUALIFIED
Salvatore X StensethJapanOnyama Limba PROPOSAL
James U NickaUnited KingdomBernardo Dominic QUALIFIED
Octavia H IturbideFranceAsiya Javayant NEGOTIATION
Mujtaba A NickaUnited KingdomBernardo Dominic NEGOTIATION
Izzy G InouyeItalyStephen Shaw PROPOSAL
Wickens A AmigonCanadaAnna Fali QUALIFIED
Sinclair O SaylorsItalyXuxue Feng NEGOTIATION
Johnson N RulapaughFranceStephen Shaw RENEWAL
Stacey Y RoysterJapanElwin Sharvill PROPOSAL
Tony C AmigonGermanyAsiya Javayant QUALIFIED
Morrow A BologniaJapanAnna Fali NEGOTIATION
Morrow R FigeroaAustraliaBernardo Dominic RENEWAL
Aruna Q SchemmerItalyElwin Sharvill UNQUALIFIED
Wickens A TollnerSpainAsiya Javayant QUALIFIED
Darci A MarrierGermanyElwin Sharvill UNQUALIFIED
Silvio H ButtIndiaElwin Sharvill RENEWAL
David J ShinkoGermanyElwin Sharvill UNQUALIFIED
Morrow L PerinItalyStephen Shaw NEW
Ivar Z GlickRussiaElwin Sharvill PROPOSAL
Clifford D FollerFranceIoni Bowcher RENEWAL
Mayumi Y OldroydUnited KingdomXuxue Feng RENEWAL
Mayumi Y ChuiUnited KingdomElwin Sharvill UNQUALIFIED
Maisha A SlusarskiCanadaIoni Bowcher RENEWAL
Mayumi I RulapaughSpainXuxue Feng NEGOTIATION
Aruna L GlickArgentinaElwin Sharvill NEGOTIATION
Cody J RulapaughBrazilXuxue Feng PROPOSAL
Aruna I ButtCanadaElwin Sharvill NEW

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