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
Smith A OstroskyJapanOnyama Limba QUALIFIED
Kadeem V WaycottAustraliaAsiya Javayant UNQUALIFIED
Kaitlin Y SaylorsRussiaBernardo Dominic QUALIFIED
Kadeem S CampainUnited KingdomAsiya Javayant NEGOTIATION
Silvio X ChuiSpainBernardo Dominic NEGOTIATION
Antonio G GarufiUnited KingdomAnna Fali RENEWAL
Tony X NestleBrazilOnyama Limba NEGOTIATION
Kadeem M SergiCanadaAnna Fali NEW
Kaitlin R ShinkoRussiaXuxue Feng UNQUALIFIED
Faith P RutaRussiaOnyama Limba QUALIFIED
Sinclair J IturbideUnited KingdomXuxue Feng RENEWAL
Kadeem G AlbaresBrazilOnyama Limba PROPOSAL
Maisha Q OstroskyCanadaIvan Magalhaes PROPOSAL
Leja S ButtCanadaIvan Magalhaes NEW
Sinclair U GarufiGermanyStephen Shaw RENEWAL
Mayumi Q StockhamAustraliaAmy Elsner PROPOSAL
Rodrigues U PaprockiArgentinaIvan Magalhaes QUALIFIED
Isabel P FigeroaArgentinaBernardo Dominic NEGOTIATION
Izzy Y OstroskyIndiaElwin Sharvill QUALIFIED
Greenwood Y GauchoRussiaAsiya Javayant QUALIFIED
Mujtaba P GillianIndiaOnyama Limba NEGOTIATION
Faith F DarakjyRussiaXuxue Feng UNQUALIFIED
Aditya Z StockhamAustraliaOnyama Limba RENEWAL
Maria S ChuiBrazilStephen Shaw RENEWAL
Alejandro C KuskoCanadaIvan Magalhaes UNQUALIFIED
Jennifer Z NickaBrazilAnna Fali UNQUALIFIED
Jeanfrancois B GarufiBrazilElwin Sharvill NEGOTIATION
Johnson W AlbaresBrazilOnyama Limba RENEWAL
Kaitlin X VocelkaSpainXuxue Feng UNQUALIFIED
Claire C NestleUnited KingdomElwin Sharvill QUALIFIED
Leon V CaudySpainAnna Fali UNQUALIFIED
Aika X KolmetzIndiaBernardo Dominic PROPOSAL
Maisha O MaletUnited KingdomAmy Elsner NEGOTIATION
Maisha B AlbaresRussiaOnyama Limba QUALIFIED
Mayumi N MarrierFranceAmy Elsner NEW
Sinclair Q OldroydArgentinaAmy Elsner UNQUALIFIED
Arvin S IturbideBrazilAnna Fali NEW
Jones K MarrierJapanIvan Magalhaes NEW
Jeanfrancois M GarufiBrazilOnyama Limba QUALIFIED
Mayumi Y SergiBrazilIoni Bowcher QUALIFIED
Jennifer F FerenczUnited KingdomBernardo Dominic RENEWAL
Jones F RimBrazilIoni Bowcher RENEWAL
Mujtaba S StensethGermanyXuxue Feng UNQUALIFIED
Clifford Z SergiArgentinaElwin Sharvill NEW
Kadeem C FerenczItalyBernardo Dominic PROPOSAL
Izzy K CaldareraBrazilOnyama Limba QUALIFIED
Rodrigues W MorascaGermanyBernardo Dominic NEW
Ivar I KuskoArgentinaAmy Elsner UNQUALIFIED
Smith N PaprockiBrazilOnyama Limba PROPOSAL
Misaki W AmigonUnited KingdomAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Clifford G CampainItalyStephen Shaw UNQUALIFIED
Tony Q ChuiUnited KingdomAmy Elsner RENEWAL
Morrow X RoysterJapanAsiya Javayant NEW
Costa E WieserAustraliaElwin Sharvill QUALIFIED
Sinclair N BologniaSpainBernardo Dominic NEGOTIATION
Jeanfrancois F FollerGermanyBernardo Dominic NEW
Octavia C RulapaughRussiaAsiya Javayant QUALIFIED
Emily S KolmetzAustraliaElwin Sharvill PROPOSAL
Julie I OstroskyBrazilOnyama Limba QUALIFIED
Nicolas M NestleCanadaOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez E SchemmerRussia2026-09-28Feiner Bros UNQUALIFIED64Asiya Javayant
1001Murillo G WieserRussia2026-10-19Truhlar And Truhlar Attys QUALIFIED90Amy Elsner
1002David A FlosiUnited Kingdom2026-10-25Morlong Associates NEW16Anna Fali
1003Greenwood S AmigonSpain2026-10-08Chapman, Ross E Esq RENEWAL85Anna Fali
1004Adams U VocelkaGermany2026-10-12Benton, John B Jr NEW6Stephen Shaw
1005Mayumi E StockhamJapan2026-10-03Rangoni Of Florence PROPOSAL43Ioni Bowcher
1006Johnson N KolmetzGermany2026-10-18Benton, John B Jr QUALIFIED59Amy Elsner
1007Jefferson R CampainJapan2026-10-02Feiner Bros PROPOSAL74Asiya Javayant
1008Jeanfrancois L SlusarskiSpain2026-10-04Feiner Bros NEW70Xuxue Feng
1009Jefferson K FerenczCanada2026-10-27Dorl, James J Esq NEW38Amy Elsner
1010Julie O RoysterRussia2026-10-15Morlong Associates UNQUALIFIED81Anna Fali
1011Jones F OldroydCanada2026-10-01King, Christopher A Esq NEGOTIATION88Anna Fali
1012Adams T GlickUnited Kingdom2026-10-13Feiner Bros UNQUALIFIED95Anna Fali
1013Octavia K SergiItaly2026-10-22Commercial Press NEW1Onyama Limba
1014Sinclair Y RimGermany2026-09-30Commercial Press NEGOTIATION56Xuxue Feng
1015Jennifer C WhobreyCanada2026-10-02Chanay, Jeffrey A Esq UNQUALIFIED49Elwin Sharvill
1016Misaki U MaletCanada2026-10-26Rangoni Of Florence NEGOTIATION64Anna Fali
1017Cody D PoquetteArgentina2026-10-13Printing Dimensions NEW86Stephen Shaw
1018Deepesh H GillianItaly2026-10-17Commercial Press RENEWAL96Onyama Limba
1019Julie F MarrierItaly2026-09-28Feltz Printing Service UNQUALIFIED17Amy Elsner
1020Johnson G WhobreyCanada2026-10-17Chapman, Ross E Esq PROPOSAL54Onyama Limba
1021Jennifer O BowleyBrazil2026-10-21Printing Dimensions NEW48Ioni Bowcher
1022David Y RoysterJapan2026-09-30Chanay, Jeffrey A Esq NEW91Onyama Limba
1023Aditya O CaudyUnited Kingdom2026-10-10Rangoni Of Florence UNQUALIFIED69Anna Fali
1024Aruna A MorascaIndia2026-10-16Buckley Miller Wright QUALIFIED2Xuxue Feng
1025Silvio Y FollerItaly2026-10-10Buckley Miller Wright RENEWAL85Anna Fali
1026Aruna N OstroskyCanada2026-10-26Morlong Associates RENEWAL92Elwin Sharvill
1027Jennifer K NestleSpain2026-10-14Feltz Printing Service RENEWAL86Asiya Javayant
1028Octavia M GlickJapan2026-10-05Chanay, Jeffrey A Esq QUALIFIED37Ioni Bowcher
1029Leon W SchemmerBrazil2026-10-24Benton, John B Jr NEGOTIATION42Elwin Sharvill
1030Francesco G WieserBrazil2026-10-08Printing Dimensions QUALIFIED54Stephen Shaw
1031Izzy S GarufiBrazil2026-10-13Rousseaux, Michael Esq RENEWAL55Ioni Bowcher
1032Misaki J NestleIndia2026-10-20Chemel, James L Cpa NEGOTIATION2Xuxue Feng
1033Adams E BowleyBrazil2026-09-30Rousseaux, Michael Esq QUALIFIED96Xuxue Feng
1034Leon V CampainRussia2026-10-23Dorl, James J Esq NEGOTIATION49Ivan Magalhaes
1035Octavia T SaylorsUnited Kingdom2026-10-18Printing Dimensions PROPOSAL85Elwin Sharvill
1036Claire K NickaCanada2026-10-27Rangoni Of Florence QUALIFIED33Stephen Shaw
1037Octavia V NickaSpain2026-10-24Commercial Press RENEWAL40Bernardo Dominic
1038Leja L CaudyRussia2026-10-05Printing Dimensions NEGOTIATION41Onyama Limba
1039James T FerenczIndia2026-10-08Rangoni Of Florence QUALIFIED95Stephen Shaw
1040James J DilliardBrazil2026-10-27Feiner Bros NEGOTIATION69Stephen Shaw
1041Ivar V WhobreyGermany2026-10-03Dorl, James J Esq NEGOTIATION1Anna Fali
1042Izzy Y VenereBrazil2026-10-19Chanay, Jeffrey A Esq NEW16Asiya Javayant
1043Alejandro M WaycottCanada2026-10-04Commercial Press NEW94Ivan Magalhaes
1044Francesco T FerenczIndia2026-10-23Chemel, James L Cpa QUALIFIED82Elwin Sharvill
1045Johnson E RulapaughGermany2026-10-24Feltz Printing Service RENEWAL8Onyama Limba
1046Antonio R PaprockiSpain2026-10-05Rangoni Of Florence PROPOSAL83Onyama Limba
1047Silvio N MarrierItaly2026-10-02Rousseaux, Michael Esq NEGOTIATION66Asiya Javayant
1048Darci O StensethCanada2026-10-19Benton, John B Jr PROPOSAL86Bernardo Dominic
1049Greenwood M TollnerSpain2026-10-27Buckley Miller Wright PROPOSAL12Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Aika H PerinIndiaIvan Magalhaes PROPOSAL
Rodrigues V AmigonFranceAmy Elsner NEGOTIATION
Aditya O CaudySpainBernardo Dominic PROPOSAL
Maisha A VocelkaJapanElwin Sharvill NEGOTIATION
Clifford L DilliardAustraliaIvan Magalhaes NEW
David F WaycottIndiaAsiya Javayant UNQUALIFIED
Aika I PaprockiRussiaXuxue Feng NEGOTIATION
David D FigeroaAustraliaXuxue Feng PROPOSAL
Wickens Z FerenczIndiaAnna Fali PROPOSAL
Ricardo B MarrierSpainIoni Bowcher QUALIFIED
Costa G NestleBrazilElwin Sharvill QUALIFIED
Morrow C BriddickUnited KingdomAsiya Javayant NEGOTIATION
Adams E InouyeUnited KingdomStephen Shaw NEGOTIATION
Misaki A GarufiAustraliaIvan Magalhaes RENEWAL
Antonio C AlbaresUnited KingdomAmy Elsner UNQUALIFIED
Silvio N IturbideFranceStephen Shaw NEW
Ashley V CaudyBrazilAsiya Javayant PROPOSAL
Wickens Q MaletRussiaXuxue Feng NEGOTIATION
Deepesh D BriddickGermanyAsiya Javayant UNQUALIFIED
Alejandro I NestleItalyIoni Bowcher QUALIFIED
Leon K CaudyIndiaOnyama Limba QUALIFIED
Emily K DarakjyArgentinaStephen Shaw NEW
Mayumi A RutaItalyIvan Magalhaes NEGOTIATION
Maria H AmigonFranceStephen Shaw RENEWAL
Greenwood E PoquetteFranceIvan Magalhaes RENEWAL
Ricardo G NickaSpainIvan Magalhaes RENEWAL
Clifford Q BriddickBrazilBernardo Dominic RENEWAL
Chavez L MacleadItalyIoni Bowcher UNQUALIFIED
Francesco Q MaletFranceIoni Bowcher RENEWAL
Misaki V KuskoCanadaOnyama Limba RENEWAL
Juan G CaldareraBrazilAmy Elsner QUALIFIED
Clifford L WaycottUnited KingdomXuxue Feng PROPOSAL
Salvatore A MaletUnited KingdomAsiya Javayant NEW
Claire Z GlickRussiaAmy Elsner PROPOSAL
Jones H MarrierSpainStephen Shaw NEW
Aditya U StockhamUnited KingdomAnna Fali UNQUALIFIED
Isabel Q PaprockiArgentinaAsiya Javayant UNQUALIFIED
Deepesh Z TollnerSpainIoni Bowcher RENEWAL
Greenwood G AlbaresAustraliaStephen Shaw RENEWAL
Rodrigues X AlbaresIndiaAnna Fali UNQUALIFIED
Jefferson C MorascaIndiaIoni Bowcher QUALIFIED
Rodrigues V ChuiSpainIoni Bowcher QUALIFIED
David J ButtBrazilXuxue Feng QUALIFIED
Costa J BologniaRussiaStephen Shaw NEGOTIATION
Salvatore T BriddickSpainIoni Bowcher PROPOSAL
Kadeem H GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Ricardo L VocelkaSpainXuxue Feng RENEWAL
Smith Y StockhamFranceAsiya Javayant NEW
Arvin N WhobreyBrazilIoni Bowcher RENEWAL
James E OldroydUnited KingdomOnyama Limba RENEWAL
Frozen Columns
Name
Johnson W Kolmetz
Misaki D Gillian
Deepesh W Caldarera
Murillo R Briddick
Juan M Marrier
Munro M Stockham
Julie I Saylors
Rodrigues G Slusarski
Adams L Morasca
Nicolas Y Stockham
Silvio B Malet
Octavia S Sergi
Mayumi A Tollner
Stacey S Perin
Misaki Z Vocelka
Salvatore V Oldroyd
Octavia M Schemmer
Aika O Nicka
Stacey W Caudy
Darci Q Rulapaugh
Jeanfrancois A Dilliard
Jeanfrancois J Albares
Munro Z Foller
Kadeem R Malet
Munro A Butt
Kaitlin R Venere
Jefferson U Stockham
Adams L Rulapaugh
Munro R Nicka
Jennifer B Malet
Ashley J Bowley
Ashley I Rim
Kadeem A Oldroyd
David G Doe
Francesco P Rulapaugh
Cody T Royster
Clifford Z Ferencz
Faith A Slusarski
Mayumi G Caldarera
Maria L Caudy
Antonio O Albares
Tony B Venere
Leja Q Paprocki
Misaki H Caldarera
Maisha Q Slusarski
Murillo Z Glick
Costa G Glick
Chavez P Shinko
Ivar C Poquette
Claire K Schemmer
IdCountryDate
1000United Kingdom2026-10-13
1001Canada2026-10-05
1002Brazil2026-10-21
1003Japan2026-09-30
1004Canada2026-10-09
1005United Kingdom2026-10-18
1006Russia2026-10-25
1007France2026-10-24
1008Spain2026-10-09
1009United Kingdom2026-09-30
1010Spain2026-10-16
1011India2026-10-15
1012Australia2026-10-01
1013Canada2026-10-03
1014Canada2026-10-04
1015Spain2026-10-13
1016Spain2026-10-27
1017Argentina2026-10-06
1018Argentina2026-10-17
1019Spain2026-10-01
1020Italy2026-10-09
1021Japan2026-10-15
1022Italy2026-09-29
1023Brazil2026-10-11
1024Italy2026-09-28
1025Spain2026-10-12
1026Argentina2026-10-19
1027Brazil2026-10-20
1028United Kingdom2026-10-11
1029France2026-10-11
1030Canada2026-10-22
1031Canada2026-10-13
1032Italy2026-10-10
1033Germany2026-10-24
1034Italy2026-10-06
1035Japan2026-10-25
1036India2026-10-21
1037Australia2026-10-16
1038Canada2026-10-18
1039Spain2026-10-01
1040India2026-10-14
1041Brazil2026-10-20
1042Germany2026-10-09
1043United Kingdom2026-09-30
1044Argentina2026-10-13
1045Canada2026-10-23
1046India2026-10-25
1047Russia2026-10-17
1048Russia2026-10-02
1049Brazil2026-10-22

On-Demand Data

NameIdCountryDate
Darci V Bolognia1000United Kingdom2026-10-26
Claire P Campain1001Canada2026-09-28
Aika S Vocelka1002Germany2026-10-15
Arvin N Shinko1003Germany2026-10-05
Cody N Perin1004Canada2026-09-29
Kaitlin D Poquette1005Australia2026-10-12
Leja C Nestle1006France2026-10-14
Antonio H Campain1007Italy2026-10-22
Ivar C Tollner1008Australia2026-10-12
Leja J Royster1009Spain2026-10-01
Leon M Malet1010Australia2026-10-12
Mujtaba L Malet1011Germany2026-10-18
Jefferson D Darakjy1012Australia2026-10-14
Jeanfrancois X Stockham1013Spain2026-10-05
Munro G Whobrey1014Brazil2026-10-08
Francesco Q Rulapaugh1015Australia2026-10-20
Murillo S Nestle1016India2026-10-11
Murillo P Saylors1017Russia2026-10-18
Julie Q Campain1018Canada2026-10-08
Ricardo W Perin1019Italy2026-10-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody G PoquetteArgentinaElwin Sharvill QUALIFIED
Kadeem R FlosiUnited KingdomXuxue Feng UNQUALIFIED
Smith X InouyeBrazilAsiya Javayant NEW
Clifford M SergiSpainBernardo Dominic QUALIFIED
Aruna I NickaJapanAnna Fali QUALIFIED
Wickens Y PerinSpainAmy Elsner RENEWAL
Kaitlin C GarufiUnited KingdomOnyama Limba QUALIFIED
Kaitlin C CampainItalyAsiya Javayant UNQUALIFIED
Munro P AlbaresGermanyAsiya Javayant NEW
Leon G NestleFranceIvan Magalhaes NEGOTIATION
Clifford M MorascaBrazilElwin Sharvill UNQUALIFIED
Cody X ChuiBrazilAmy Elsner QUALIFIED
Izzy J TollnerCanadaIvan Magalhaes NEGOTIATION
Alejandro L CampainIndiaBernardo Dominic NEW
Kadeem Y PerinUnited KingdomStephen Shaw PROPOSAL
Silvio G BriddickJapanStephen Shaw UNQUALIFIED
Greenwood A MaletBrazilElwin Sharvill UNQUALIFIED
Stacey K SergiItalyIvan Magalhaes RENEWAL
Faith G VenereGermanyIvan Magalhaes PROPOSAL
Kadeem G SlusarskiCanadaIvan Magalhaes PROPOSAL
Aditya Z ChuiJapanBernardo Dominic NEW
Cody D CaudyRussiaXuxue Feng QUALIFIED
Silvio H RulapaughJapanXuxue Feng PROPOSAL
Leja C CaldareraItalyIvan Magalhaes NEGOTIATION
Aditya R AmigonCanadaOnyama Limba QUALIFIED
Ivar K BriddickRussiaIoni Bowcher NEW
Leon L OstroskyGermanyOnyama Limba PROPOSAL
Costa I GauchoAustraliaXuxue Feng NEW
Nicolas M GauchoGermanyIvan Magalhaes PROPOSAL
Arvin L CaldareraGermanyXuxue Feng PROPOSAL
Julie O KolmetzBrazilOnyama Limba QUALIFIED
Johnson R StensethJapanIvan Magalhaes UNQUALIFIED
Salvatore U StensethAustraliaAnna Fali NEGOTIATION
Kadeem K FollerIndiaAnna Fali PROPOSAL
Murillo D IturbideSpainElwin Sharvill QUALIFIED
Costa C CaudyIndiaAsiya Javayant UNQUALIFIED
Stacey U FigeroaUnited KingdomXuxue Feng UNQUALIFIED
Claire Z CampainIndiaOnyama Limba UNQUALIFIED
Jennifer D GarufiSpainAmy Elsner RENEWAL
Isabel S VenereArgentinaAsiya Javayant 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>