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
Antonio R PaprockiItalyOnyama Limba UNQUALIFIED
Leja U IturbideBrazilBernardo Dominic NEGOTIATION
Claire W SlusarskiAustraliaStephen Shaw QUALIFIED
Kaitlin X BologniaBrazilAmy Elsner NEW
Faith S MorascaUnited KingdomBernardo Dominic NEGOTIATION
Octavia S TollnerCanadaOnyama Limba PROPOSAL
Morrow C DilliardSpainAnna Fali UNQUALIFIED
Maisha Q MorascaJapanAsiya Javayant UNQUALIFIED
Francesco B PerinGermanyAnna Fali NEGOTIATION
Maisha I FigeroaJapanAnna Fali NEW
Rodrigues T PaprockiArgentinaIvan Magalhaes QUALIFIED
Mayumi T SchemmerJapanAmy Elsner NEGOTIATION
Faith P SlusarskiJapanBernardo Dominic PROPOSAL
Murillo Z BologniaIndiaStephen Shaw NEW
Isabel E WaycottGermanyElwin Sharvill RENEWAL
Silvio X FlosiBrazilElwin Sharvill NEGOTIATION
Aruna U StockhamSpainIvan Magalhaes NEGOTIATION
Francesco N MorascaIndiaIoni Bowcher NEW
Stacey L MorascaUnited KingdomIvan Magalhaes PROPOSAL
Misaki R FigeroaAustraliaElwin Sharvill NEW
Isabel F OldroydIndiaAnna Fali QUALIFIED
Jones D PoquetteCanadaIvan Magalhaes QUALIFIED
Claire N DilliardArgentinaOnyama Limba NEGOTIATION
Aruna U ShinkoArgentinaXuxue Feng NEW
Jefferson N RulapaughArgentinaBernardo Dominic RENEWAL
Emily I StensethRussiaAmy Elsner NEGOTIATION
Costa A SlusarskiArgentinaIoni Bowcher NEGOTIATION
Alejandro G SchemmerFranceBernardo Dominic PROPOSAL
Faith X BriddickJapanAnna Fali UNQUALIFIED
Deepesh K ShinkoSpainOnyama Limba UNQUALIFIED
Faith N ShinkoIndiaAnna Fali NEW
Izzy E RutaSpainAnna Fali UNQUALIFIED
Smith J NickaItalyAsiya Javayant PROPOSAL
Murillo G PaprockiSpainStephen Shaw UNQUALIFIED
Kadeem Q WaycottCanadaAsiya Javayant NEW
Maria H AlbaresSpainIvan Magalhaes UNQUALIFIED
Mujtaba K WhobreyFranceOnyama Limba UNQUALIFIED
Tony W MarrierUnited KingdomOnyama Limba QUALIFIED
Emily L PaprockiSpainOnyama Limba PROPOSAL
Darci E MarrierIndiaAsiya Javayant NEW
David Z RulapaughItalyAsiya Javayant PROPOSAL
Jefferson X GlickRussiaIvan Magalhaes UNQUALIFIED
Clifford G PerinItalyStephen Shaw NEGOTIATION
Deepesh H RulapaughUnited KingdomIvan Magalhaes QUALIFIED
Murillo Z MarrierUnited KingdomIvan Magalhaes UNQUALIFIED
Emily C DilliardAustraliaAsiya Javayant PROPOSAL
Julie X CampainAustraliaBernardo Dominic NEW
Maisha F FollerGermanyElwin Sharvill QUALIFIED
Rodrigues F PoquetteCanadaAnna Fali QUALIFIED
Leja Q FlosiJapanAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Aditya U NestleUnited KingdomIvan Magalhaes QUALIFIED
Ashley Q BriddickCanadaBernardo Dominic NEW
Silvio U VocelkaJapanAsiya Javayant NEGOTIATION
Costa K GarufiRussiaIoni Bowcher PROPOSAL
Silvio T PaprockiSpainIvan Magalhaes RENEWAL
Salvatore J BologniaGermanyAmy Elsner NEW
Rodrigues W GarufiItalyIoni Bowcher PROPOSAL
Silvio L MacleadSpainElwin Sharvill NEW
Greenwood T SergiSpainXuxue Feng NEGOTIATION
Maisha C SergiSpainAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin O MorascaItaly2026-10-08Dorl, James J Esq NEW68Ivan Magalhaes
1001Octavia M BologniaJapan2026-10-10Buckley Miller Wright RENEWAL44Ioni Bowcher
1002Jennifer G FigeroaJapan2026-10-12Chapman, Ross E Esq UNQUALIFIED99Asiya Javayant
1003Octavia J MarrierItaly2026-11-04Morlong Associates QUALIFIED89Elwin Sharvill
1004Ivar B GlickJapan2026-10-24Rangoni Of Florence PROPOSAL90Bernardo Dominic
1005Antonio V DilliardItaly2026-10-24Dorl, James J Esq NEGOTIATION46Elwin Sharvill
1006Leja W NickaRussia2026-10-25Chapman, Ross E Esq NEW29Ivan Magalhaes
1007Murillo Z PoquetteUnited Kingdom2026-10-25Morlong Associates PROPOSAL53Anna Fali
1008Octavia B WaycottFrance2026-10-25Chanay, Jeffrey A Esq NEW72Bernardo Dominic
1009Octavia F SlusarskiArgentina2026-10-20King, Christopher A Esq RENEWAL58Stephen Shaw
1010Aruna L SaylorsSpain2026-10-12Truhlar And Truhlar Attys QUALIFIED46Anna Fali
1011Morrow J KolmetzGermany2026-11-02Rangoni Of Florence UNQUALIFIED55Xuxue Feng
1012Nicolas N GillianCanada2026-10-17Chanay, Jeffrey A Esq NEW36Amy Elsner
1013Ashley Z FlosiItaly2026-10-25Feltz Printing Service NEW20Xuxue Feng
1014Silvio P MarrierSpain2026-10-23Dorl, James J Esq RENEWAL86Stephen Shaw
1015Nicolas E VocelkaCanada2026-10-29Benton, John B Jr QUALIFIED5Anna Fali
1016Julie Z NickaGermany2026-10-15King, Christopher A Esq NEGOTIATION92Xuxue Feng
1017Arvin G FerenczRussia2026-10-23Morlong Associates NEGOTIATION92Elwin Sharvill
1018Munro T AmigonRussia2026-10-26Chanay, Jeffrey A Esq UNQUALIFIED81Xuxue Feng
1019Murillo X RulapaughUnited Kingdom2026-10-11Buckley Miller Wright QUALIFIED35Amy Elsner
1020Kadeem A ShinkoArgentina2026-10-09Truhlar And Truhlar Attys QUALIFIED45Bernardo Dominic
1021Smith K PerinIndia2026-10-22Dorl, James J Esq PROPOSAL76Anna Fali
1022Adams A ChuiGermany2026-10-10Rousseaux, Michael Esq NEGOTIATION97Stephen Shaw
1023Kadeem N RulapaughIndia2026-10-28Buckley Miller Wright RENEWAL19Amy Elsner
1024Adams F VenereArgentina2026-10-16Feltz Printing Service RENEWAL70Asiya Javayant
1025Deepesh G SaylorsSpain2026-10-31Dorl, James J Esq NEW85Stephen Shaw
1026Antonio N SlusarskiCanada2026-11-04Chanay, Jeffrey A Esq PROPOSAL95Anna Fali
1027Costa Z WaycottRussia2026-10-13Buckley Miller Wright NEW54Bernardo Dominic
1028Nicolas H DarakjyGermany2026-10-20King, Christopher A Esq NEGOTIATION37Bernardo Dominic
1029Costa D RutaUnited Kingdom2026-10-25Rousseaux, Michael Esq UNQUALIFIED2Xuxue Feng
1030Morrow N SergiUnited Kingdom2026-10-26Feltz Printing Service UNQUALIFIED89Amy Elsner
1031David X InouyeGermany2026-11-01Rangoni Of Florence QUALIFIED67Xuxue Feng
1032Murillo F CaudyUnited Kingdom2026-10-12Printing Dimensions QUALIFIED54Asiya Javayant
1033Greenwood N PerinUnited Kingdom2026-11-06Chemel, James L Cpa PROPOSAL53Anna Fali
1034Mayumi P GarufiAustralia2026-10-21Truhlar And Truhlar Attys NEW60Ivan Magalhaes
1035Nicolas U ShinkoCanada2026-10-26Printing Dimensions RENEWAL4Ivan Magalhaes
1036Munro M DoeIndia2026-11-03Truhlar And Truhlar Attys RENEWAL6Anna Fali
1037Alejandro Q BowleyGermany2026-10-08Benton, John B Jr RENEWAL95Ivan Magalhaes
1038Kadeem R DarakjyFrance2026-10-08Chanay, Jeffrey A Esq NEW23Stephen Shaw
1039Cody E MarrierBrazil2026-10-15Chemel, James L Cpa RENEWAL24Ioni Bowcher
1040Claire Y CaudyArgentina2026-10-08Printing Dimensions NEGOTIATION92Xuxue Feng
1041Wickens X ShinkoIndia2026-11-05Morlong Associates UNQUALIFIED13Ivan Magalhaes
1042Mujtaba E DilliardAustralia2026-10-24Truhlar And Truhlar Attys PROPOSAL78Ioni Bowcher
1043Tony S AlbaresAustralia2026-11-01Rousseaux, Michael Esq NEGOTIATION89Xuxue Feng
1044James D KuskoIndia2026-10-16Rousseaux, Michael Esq PROPOSAL45Asiya Javayant
1045Emily M TollnerCanada2026-10-08Dorl, James J Esq UNQUALIFIED70Amy Elsner
1046Clifford W KuskoGermany2026-10-23Dorl, James J Esq QUALIFIED62Anna Fali
1047Sinclair X AlbaresItaly2026-10-19Chapman, Ross E Esq QUALIFIED28Elwin Sharvill
1048Jeanfrancois Z WaycottBrazil2026-10-16Buckley Miller Wright UNQUALIFIED84Bernardo Dominic
1049Arvin B VenereGermany2026-10-30Truhlar And Truhlar Attys QUALIFIED18Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Isabel U BriddickFranceAmy Elsner QUALIFIED
Morrow Q PaprockiRussiaIoni Bowcher QUALIFIED
Mujtaba B DilliardIndiaXuxue Feng UNQUALIFIED
Rodrigues W OldroydArgentinaBernardo Dominic QUALIFIED
Salvatore K PoquetteGermanyElwin Sharvill NEW
Costa V BologniaFranceAmy Elsner QUALIFIED
Alejandro R WaycottJapanIvan Magalhaes RENEWAL
Ivar N InouyeSpainElwin Sharvill NEW
Kadeem G BowleyFranceElwin Sharvill RENEWAL
Antonio A BriddickAustraliaAmy Elsner UNQUALIFIED
Sinclair Y FollerGermanyOnyama Limba QUALIFIED
Mujtaba J ChuiItalyOnyama Limba UNQUALIFIED
Mujtaba Y KuskoUnited KingdomStephen Shaw NEW
Chavez G GarufiItalyIvan Magalhaes QUALIFIED
Cody C CampainFranceStephen Shaw UNQUALIFIED
Silvio J BowleyBrazilStephen Shaw NEW
Maria F GauchoCanadaAmy Elsner RENEWAL
Aditya F VocelkaArgentinaXuxue Feng RENEWAL
David K FigeroaUnited KingdomIoni Bowcher RENEWAL
Alejandro I BriddickItalyStephen Shaw NEGOTIATION
Munro T FlosiAustraliaAnna Fali RENEWAL
Rodrigues C IturbideRussiaAmy Elsner NEW
Kaitlin J SchemmerAustraliaAmy Elsner RENEWAL
Tony J FerenczRussiaElwin Sharvill UNQUALIFIED
Chavez N SlusarskiIndiaXuxue Feng PROPOSAL
Clifford A SaylorsItalyIvan Magalhaes NEGOTIATION
Rodrigues X StockhamCanadaBernardo Dominic NEW
Costa A VocelkaArgentinaBernardo Dominic QUALIFIED
Munro D VenereArgentinaAnna Fali QUALIFIED
Maria S InouyeAustraliaElwin Sharvill RENEWAL
Stacey I RoysterGermanyIvan Magalhaes RENEWAL
Wickens I MaletIndiaElwin Sharvill PROPOSAL
Rodrigues R KolmetzUnited KingdomAsiya Javayant PROPOSAL
Octavia L InouyeFranceIoni Bowcher QUALIFIED
Emily P KuskoRussiaXuxue Feng NEGOTIATION
Maisha C StensethJapanIoni Bowcher QUALIFIED
Izzy H FollerUnited KingdomBernardo Dominic QUALIFIED
Morrow G SergiCanadaIoni Bowcher RENEWAL
Kadeem Q RutaJapanIoni Bowcher PROPOSAL
Aruna H CaldareraBrazilAnna Fali UNQUALIFIED
Juan Y VocelkaBrazilElwin Sharvill PROPOSAL
Stacey H RulapaughIndiaIvan Magalhaes QUALIFIED
Rodrigues U MarrierUnited KingdomIoni Bowcher RENEWAL
Aruna T NickaUnited KingdomBernardo Dominic NEW
Greenwood A PaprockiFranceBernardo Dominic QUALIFIED
Munro Y BologniaAustraliaOnyama Limba UNQUALIFIED
Silvio Z BowleyItalyElwin Sharvill NEGOTIATION
Jefferson F PaprockiAustraliaStephen Shaw NEW
Greenwood N GillianJapanStephen Shaw NEGOTIATION
Maisha Q CaldareraUnited KingdomBernardo Dominic NEGOTIATION
Frozen Columns
Name
Johnson B Doe
Julie S Perin
Alejandro K Figeroa
Ricardo V Caudy
Julie W Malet
Munro K Ferencz
Rodrigues C Malet
Sinclair X Paprocki
Ivar N Royster
Jefferson J Whobrey
Salvatore F Doe
Clifford N Nestle
Leon A Sergi
Ivar K Whobrey
Nicolas B Nicka
Isabel N Malet
Silvio B Waycott
Ashley E Iturbide
Munro I Venere
Julie C Saylors
Leja C Iturbide
Jefferson T Kusko
Stacey G Nestle
Cody Q Glick
Jeanfrancois N Briddick
Smith X Venere
Chavez D Kusko
Clifford V Nestle
Aditya X Waycott
Izzy Z Nicka
Tony F Amigon
Maisha A Flosi
Isabel P Malet
Mayumi A Butt
Maria E Foller
Murillo Q Poquette
Faith D Whobrey
Francesco X Schemmer
Juan A Gillian
Greenwood N Gaucho
Arvin W Kusko
Jennifer F Dilliard
Darci U Stockham
Arvin W Chui
Munro Y Flosi
Kaitlin J Schemmer
Jeanfrancois L Ostrosky
Murillo B Iturbide
Johnson E Kolmetz
Julie K Iturbide
IdCountryDate
1000Brazil2026-10-16
1001India2026-11-01
1002Japan2026-10-09
1003Italy2026-10-08
1004Germany2026-10-21
1005Australia2026-10-28
1006India2026-10-11
1007Russia2026-10-18
1008Spain2026-10-09
1009Germany2026-10-23
1010France2026-10-18
1011Australia2026-10-23
1012United Kingdom2026-11-04
1013Spain2026-11-03
1014United Kingdom2026-10-22
1015Australia2026-10-18
1016Brazil2026-10-17
1017Japan2026-10-30
1018Italy2026-10-18
1019Spain2026-10-15
1020Australia2026-10-29
1021India2026-10-21
1022Russia2026-10-26
1023United Kingdom2026-10-14
1024Russia2026-10-17
1025United Kingdom2026-10-08
1026Brazil2026-10-21
1027India2026-10-12
1028Canada2026-10-30
1029Brazil2026-10-18
1030Spain2026-10-27
1031Germany2026-10-26
1032Canada2026-11-01
1033Argentina2026-10-30
1034Germany2026-10-31
1035United Kingdom2026-10-31
1036Japan2026-10-15
1037Brazil2026-10-24
1038Russia2026-10-18
1039Spain2026-10-26
1040France2026-10-26
1041Germany2026-10-19
1042Australia2026-10-09
1043Brazil2026-10-14
1044Italy2026-10-11
1045Japan2026-10-16
1046Brazil2026-11-01
1047Russia2026-10-15
1048Canada2026-11-04
1049Argentina2026-10-17

On-Demand Data

NameIdCountryDate
Adams I Garufi1000Argentina2026-10-25
Sinclair N Perin1001Brazil2026-10-30
Wickens O Iturbide1002Japan2026-10-28
Juan E Shinko1003Canada2026-10-24
Faith R Whobrey1004Italy2026-10-15
Ivar L Vocelka1005Japan2026-10-12
David I Kusko1006Canada2026-11-03
Aruna F Iturbide1007Argentina2026-10-19
Salvatore L Chui1008Argentina2026-10-09
Antonio Y Perin1009Canada2026-10-26
Costa B Saylors1010Germany2026-10-26
Maria D Schemmer1011Canada2026-10-19
Silvio U Paprocki1012Argentina2026-10-09
Juan D Wieser1013Russia2026-10-25
Silvio J Caldarera1014Russia2026-10-28
Greenwood U Nicka1015Spain2026-10-29
Costa Z Flosi1016United Kingdom2026-10-14
Kadeem C Sergi1017United Kingdom2026-11-03
Wickens H Oldroyd1018Canada2026-11-05
Antonio D Shinko1019Japan2026-10-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi O TollnerIndiaBernardo Dominic NEGOTIATION
Julie Z BowleyBrazilAsiya Javayant NEGOTIATION
Clifford T KuskoFranceBernardo Dominic PROPOSAL
Aika Z FigeroaCanadaIvan Magalhaes PROPOSAL
Ricardo C OstroskyCanadaBernardo Dominic NEGOTIATION
Aika R StockhamJapanIvan Magalhaes NEGOTIATION
Isabel V FollerJapanXuxue Feng PROPOSAL
Deepesh P GauchoJapanElwin Sharvill RENEWAL
Costa P MarrierBrazilBernardo Dominic UNQUALIFIED
Aruna A WhobreyFranceOnyama Limba PROPOSAL
Isabel F VenereArgentinaIvan Magalhaes NEGOTIATION
Maria W DoeCanadaElwin Sharvill NEW
Antonio G IturbideGermanyOnyama Limba RENEWAL
Ricardo A GlickCanadaElwin Sharvill UNQUALIFIED
Juan N InouyeItalyAnna Fali RENEWAL
Munro U StockhamRussiaStephen Shaw NEGOTIATION
Isabel A StockhamArgentinaXuxue Feng PROPOSAL
Stacey Q AlbaresJapanStephen Shaw NEGOTIATION
Adams Z NestleGermanyOnyama Limba UNQUALIFIED
Izzy W StensethRussiaOnyama Limba NEW
Leja B GillianSpainBernardo Dominic RENEWAL
Silvio F VocelkaBrazilIoni Bowcher NEGOTIATION
Claire V WieserArgentinaAnna Fali PROPOSAL
Isabel R NickaGermanyStephen Shaw NEW
Darci B DarakjyGermanyXuxue Feng QUALIFIED
Chavez U WhobreyItalyAmy Elsner RENEWAL
Jennifer M CaldareraArgentinaElwin Sharvill NEGOTIATION
Antonio M WhobreyJapanAnna Fali UNQUALIFIED
Munro M VocelkaCanadaElwin Sharvill NEW
Arvin J IturbideRussiaAsiya Javayant PROPOSAL
Ashley U KuskoAustraliaOnyama Limba NEGOTIATION
Izzy B VenereBrazilOnyama Limba NEGOTIATION
Aika C MorascaRussiaXuxue Feng QUALIFIED
Jones N DoeArgentinaBernardo Dominic PROPOSAL
Clifford L PerinSpainAsiya Javayant NEW
Izzy P AmigonFranceAmy Elsner UNQUALIFIED
Mayumi J WhobreyAustraliaXuxue Feng RENEWAL
Alejandro K PaprockiAustraliaAmy Elsner NEGOTIATION
Murillo C FigeroaJapanOnyama Limba UNQUALIFIED
Maria I PaprockiSpainIvan Magalhaes UNQUALIFIED

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