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
Jones N CampainArgentinaOnyama Limba QUALIFIED
Johnson B GillianUnited KingdomAsiya Javayant UNQUALIFIED
Jones A CaudyIndiaAsiya Javayant RENEWAL
Jones R DarakjyItalyIvan Magalhaes UNQUALIFIED
Morrow G WaycottRussiaXuxue Feng NEW
Salvatore P DarakjyArgentinaIvan Magalhaes NEGOTIATION
Kadeem K RoysterCanadaStephen Shaw NEW
Isabel D DarakjyBrazilElwin Sharvill RENEWAL
Ivar G FollerRussiaAmy Elsner NEW
Alejandro C ShinkoRussiaAsiya Javayant NEGOTIATION
Ricardo V NickaFranceBernardo Dominic NEGOTIATION
Greenwood T NickaArgentinaElwin Sharvill RENEWAL
Faith D MarrierGermanyOnyama Limba PROPOSAL
Kaitlin W KuskoIndiaElwin Sharvill UNQUALIFIED
Ricardo R KolmetzJapanIoni Bowcher NEGOTIATION
Smith X GarufiJapanAmy Elsner PROPOSAL
Johnson R FollerFranceBernardo Dominic PROPOSAL
Nicolas C BologniaArgentinaBernardo Dominic QUALIFIED
Wickens J StensethBrazilIvan Magalhaes NEW
Jennifer M DarakjyItalyAmy Elsner NEGOTIATION
David X VocelkaJapanAnna Fali UNQUALIFIED
Wickens D CaudyIndiaStephen Shaw UNQUALIFIED
Ricardo A KuskoIndiaBernardo Dominic UNQUALIFIED
Aika H FollerSpainBernardo Dominic QUALIFIED
Mujtaba N SergiAustraliaIoni Bowcher UNQUALIFIED
Clifford C BowleyItalyAmy Elsner QUALIFIED
Francesco L CaldareraArgentinaStephen Shaw NEW
Ivar N PoquetteItalyAsiya Javayant RENEWAL
Juan I NestleSpainIvan Magalhaes QUALIFIED
Jefferson M RutaAustraliaAsiya Javayant NEW
Kaitlin P BriddickFranceAsiya Javayant NEGOTIATION
Jefferson S GarufiBrazilAnna Fali PROPOSAL
Costa H OstroskyItalyAmy Elsner NEGOTIATION
Stacey K ShinkoGermanyIvan Magalhaes UNQUALIFIED
Octavia T SergiGermanyXuxue Feng QUALIFIED
Izzy Y OstroskyArgentinaAnna Fali NEGOTIATION
Emily L WhobreyCanadaIoni Bowcher UNQUALIFIED
Maria H PoquetteBrazilAsiya Javayant PROPOSAL
Leja T ShinkoAustraliaAmy Elsner NEW
James J DoeBrazilAsiya Javayant UNQUALIFIED
Jennifer F NestleJapanAnna Fali UNQUALIFIED
Ricardo I FollerCanadaAmy Elsner NEGOTIATION
Stacey T RulapaughIndiaBernardo Dominic QUALIFIED
Jefferson C DilliardAustraliaStephen Shaw UNQUALIFIED
Maria S KuskoArgentinaBernardo Dominic UNQUALIFIED
Nicolas U GillianBrazilXuxue Feng RENEWAL
Aditya F SchemmerUnited KingdomStephen Shaw UNQUALIFIED
Leon H OstroskyFranceIoni Bowcher PROPOSAL
Clifford R PerinItalyAnna Fali UNQUALIFIED
Aruna G GlickArgentinaBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Kaitlin F GarufiItalyAsiya Javayant PROPOSAL
Aika Q WhobreyBrazilIoni Bowcher RENEWAL
Jones B NestleFranceBernardo Dominic RENEWAL
Tony U AmigonIndiaXuxue Feng UNQUALIFIED
Adams R RoysterFranceAmy Elsner RENEWAL
Julie B DoeFranceBernardo Dominic NEW
Tony W ButtGermanyStephen Shaw NEW
Arvin C IturbideItalyIoni Bowcher NEW
Octavia N RutaRussiaStephen Shaw UNQUALIFIED
Faith C PoquetteSpainIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie W GlickRussia2026-10-04King, Christopher A Esq PROPOSAL22Stephen Shaw
1001Leon Q PerinIndia2026-10-03Rousseaux, Michael Esq UNQUALIFIED56Amy Elsner
1002Ricardo R FollerJapan2026-09-09Morlong Associates QUALIFIED97Ioni Bowcher
1003Jennifer S ButtAustralia2026-09-23Chapman, Ross E Esq NEW50Ioni Bowcher
1004Wickens J NestleArgentina2026-10-02Feltz Printing Service QUALIFIED35Elwin Sharvill
1005Francesco H FollerRussia2026-09-09Chemel, James L Cpa PROPOSAL73Asiya Javayant
1006Emily Q MacleadUnited Kingdom2026-09-19Printing Dimensions NEW93Onyama Limba
1007Emily A GlickAustralia2026-09-13Dorl, James J Esq PROPOSAL92Bernardo Dominic
1008Sinclair T MorascaAustralia2026-09-19Rousseaux, Michael Esq UNQUALIFIED19Elwin Sharvill
1009Izzy R FlosiSpain2026-09-21Feltz Printing Service QUALIFIED36Elwin Sharvill
1010Aditya G FerenczArgentina2026-10-03Truhlar And Truhlar Attys NEGOTIATION17Stephen Shaw
1011Rodrigues W FollerFrance2026-09-17Feiner Bros UNQUALIFIED51Asiya Javayant
1012Emily I OstroskyItaly2026-09-15King, Christopher A Esq NEW84Ioni Bowcher
1013Julie R FigeroaItaly2026-09-16Commercial Press NEGOTIATION86Ivan Magalhaes
1014Aruna Z DarakjyCanada2026-09-25Chemel, James L Cpa RENEWAL95Anna Fali
1015Misaki O OldroydFrance2026-09-26Chanay, Jeffrey A Esq NEGOTIATION31Anna Fali
1016Francesco J AlbaresSpain2026-09-16Commercial Press NEGOTIATION17Onyama Limba
1017Stacey B MaletRussia2026-09-19Morlong Associates PROPOSAL79Stephen Shaw
1018Arvin G BriddickSpain2026-09-23Feiner Bros QUALIFIED54Xuxue Feng
1019Aika E ButtUnited Kingdom2026-09-16Commercial Press RENEWAL24Amy Elsner
1020Ivar K ShinkoIndia2026-09-26Truhlar And Truhlar Attys NEGOTIATION70Elwin Sharvill
1021Munro W SaylorsAustralia2026-09-08Rangoni Of Florence NEGOTIATION6Bernardo Dominic
1022Maisha Q GauchoFrance2026-09-24Printing Dimensions NEW40Elwin Sharvill
1023Arvin Z DilliardCanada2026-09-24Chemel, James L Cpa PROPOSAL88Amy Elsner
1024Leon K GarufiUnited Kingdom2026-10-02Buckley Miller Wright QUALIFIED54Ioni Bowcher
1025Cody N MarrierAustralia2026-09-24Buckley Miller Wright UNQUALIFIED44Ivan Magalhaes
1026Deepesh T AlbaresJapan2026-09-14Truhlar And Truhlar Attys QUALIFIED51Anna Fali
1027Darci Y StockhamSpain2026-09-08Rousseaux, Michael Esq QUALIFIED35Elwin Sharvill
1028Salvatore N GillianCanada2026-09-23Chanay, Jeffrey A Esq NEGOTIATION83Elwin Sharvill
1029Wickens Q MacleadCanada2026-10-02Feiner Bros NEW38Elwin Sharvill
1030Maisha V IturbideArgentina2026-09-18Feltz Printing Service QUALIFIED97Bernardo Dominic
1031Maisha P MaletItaly2026-10-03Rangoni Of Florence NEW54Amy Elsner
1032Mujtaba X AmigonArgentina2026-09-10Dorl, James J Esq UNQUALIFIED96Ioni Bowcher
1033Arvin B AlbaresItaly2026-09-12Chapman, Ross E Esq PROPOSAL56Ivan Magalhaes
1034Clifford M DarakjyArgentina2026-09-23Truhlar And Truhlar Attys NEGOTIATION70Stephen Shaw
1035Sinclair L VenereItaly2026-09-29Morlong Associates QUALIFIED44Ivan Magalhaes
1036Alejandro C PoquetteIndia2026-09-06Rousseaux, Michael Esq NEGOTIATION60Onyama Limba
1037Stacey G InouyeArgentina2026-09-27Dorl, James J Esq UNQUALIFIED19Onyama Limba
1038Maria B StockhamUnited Kingdom2026-09-26Chapman, Ross E Esq PROPOSAL72Amy Elsner
1039Aditya V ChuiCanada2026-09-14Truhlar And Truhlar Attys PROPOSAL84Elwin Sharvill
1040Mayumi Q IturbideSpain2026-09-10Truhlar And Truhlar Attys RENEWAL29Xuxue Feng
1041Juan X RoysterGermany2026-09-08Benton, John B Jr RENEWAL98Stephen Shaw
1042Aika G CaldareraUnited Kingdom2026-09-19Morlong Associates RENEWAL37Xuxue Feng
1043Deepesh M WhobreyArgentina2026-09-08Dorl, James J Esq QUALIFIED13Anna Fali
1044Morrow M MacleadFrance2026-09-06Dorl, James J Esq UNQUALIFIED13Asiya Javayant
1045Rodrigues W FlosiIndia2026-09-24Dorl, James J Esq UNQUALIFIED1Xuxue Feng
1046David W PaprockiGermany2026-09-30King, Christopher A Esq PROPOSAL23Stephen Shaw
1047Jones R RutaRussia2026-09-20Feiner Bros PROPOSAL74Xuxue Feng
1048Wickens V FlosiGermany2026-09-13Chanay, Jeffrey A Esq QUALIFIED25Elwin Sharvill
1049Nicolas U DarakjySpain2026-09-11Feiner Bros QUALIFIED39Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Faith S CaldareraArgentinaIoni Bowcher QUALIFIED
Ricardo H MaletArgentinaAsiya Javayant QUALIFIED
Alejandro W InouyeJapanOnyama Limba PROPOSAL
Alejandro Y TollnerItalyStephen Shaw RENEWAL
Tony B MacleadBrazilOnyama Limba UNQUALIFIED
Wickens P FollerItalyXuxue Feng NEGOTIATION
Ashley E PaprockiBrazilAnna Fali QUALIFIED
David W IturbideFranceStephen Shaw NEW
Claire W AlbaresFranceXuxue Feng NEW
Leja F CaldareraBrazilXuxue Feng RENEWAL
Wickens P WhobreyCanadaXuxue Feng QUALIFIED
Aruna J CaudyRussiaAnna Fali QUALIFIED
Francesco S WieserIndiaAmy Elsner RENEWAL
Maria I GillianFranceIvan Magalhaes NEW
David U SlusarskiGermanyAnna Fali NEGOTIATION
Chavez V StockhamBrazilIoni Bowcher NEW
David U MorascaJapanBernardo Dominic QUALIFIED
Leon L RulapaughItalyElwin Sharvill RENEWAL
Faith W VenereArgentinaXuxue Feng NEW
Julie J AmigonJapanAnna Fali PROPOSAL
Adams M SaylorsIndiaAsiya Javayant NEGOTIATION
Jefferson Y ButtItalyOnyama Limba RENEWAL
Tony W StensethIndiaIvan Magalhaes UNQUALIFIED
Juan M WieserAustraliaElwin Sharvill PROPOSAL
James T GlickFranceXuxue Feng PROPOSAL
Arvin A DarakjyBrazilIoni Bowcher QUALIFIED
Stacey L AlbaresRussiaElwin Sharvill PROPOSAL
Stacey C FigeroaRussiaElwin Sharvill PROPOSAL
Leja Q DoeSpainAnna Fali QUALIFIED
Antonio Q SchemmerBrazilAsiya Javayant UNQUALIFIED
David W CaldareraBrazilStephen Shaw RENEWAL
Jeanfrancois V ShinkoUnited KingdomAsiya Javayant QUALIFIED
Aditya P SlusarskiGermanyElwin Sharvill QUALIFIED
Chavez H GlickFranceAnna Fali NEGOTIATION
Clifford B DilliardAustraliaBernardo Dominic QUALIFIED
Leon W RimRussiaAnna Fali RENEWAL
Wickens V WaycottBrazilStephen Shaw NEGOTIATION
Kaitlin Q WhobreySpainIoni Bowcher RENEWAL
Wickens V SchemmerIndiaXuxue Feng UNQUALIFIED
Misaki K DoeCanadaXuxue Feng NEW
Claire M OldroydSpainStephen Shaw UNQUALIFIED
Salvatore Q NickaItalyAsiya Javayant PROPOSAL
Maria S DoeArgentinaElwin Sharvill UNQUALIFIED
Sinclair O WaycottSpainOnyama Limba NEW
Mayumi V CampainGermanyOnyama Limba RENEWAL
Cody J SergiBrazilStephen Shaw NEW
Leja T AlbaresAustraliaAsiya Javayant NEW
Maria O CampainBrazilStephen Shaw RENEWAL
Isabel L OldroydArgentinaAsiya Javayant NEW
Murillo Y WhobreyArgentinaIvan Magalhaes NEW
Frozen Columns
Name
Clifford D Vocelka
Chavez N Venere
Ashley W Amigon
Sinclair P Stockham
Murillo T Darakjy
Francesco D Perin
Munro E Whobrey
Costa Z Paprocki
Leja R Ruta
Ricardo C Glick
Johnson P Morasca
Maisha N Tollner
Leon D Stenseth
Misaki X Darakjy
Cody U Albares
Smith U Butt
Mayumi A Rulapaugh
Aruna E Bowley
Ashley W Nicka
Ricardo I Kusko
Jennifer I Kusko
Costa S Poquette
Smith A Caudy
Aruna X Nicka
Aruna E Sergi
Deepesh E Slusarski
Kaitlin A Royster
Greenwood M Whobrey
Maisha W Gaucho
Ashley V Slusarski
Chavez P Shinko
Jefferson M Saylors
Izzy L Paprocki
Julie S Stenseth
Leja N Campain
Leon E Bolognia
Chavez M Paprocki
Leon M Amigon
Misaki W Saylors
Aika Q Albares
Adams C Maclead
Claire W Schemmer
Misaki S Briddick
Jefferson A Vocelka
Misaki S Oldroyd
Aika G Rim
Deepesh C Paprocki
Costa G Sergi
Cody U Saylors
Octavia O Oldroyd
IdCountryDate
1000United Kingdom2026-09-13
1001France2026-09-23
1002Canada2026-09-12
1003Australia2026-09-06
1004Brazil2026-10-04
1005Russia2026-10-01
1006Spain2026-09-18
1007France2026-09-19
1008Japan2026-09-29
1009Japan2026-09-12
1010Italy2026-09-20
1011Germany2026-09-12
1012Spain2026-09-28
1013United Kingdom2026-09-11
1014United Kingdom2026-10-03
1015Brazil2026-09-21
1016Canada2026-09-12
1017Brazil2026-09-30
1018Canada2026-09-23
1019Brazil2026-09-28
1020Russia2026-09-18
1021Argentina2026-09-13
1022Spain2026-09-08
1023Australia2026-09-06
1024Argentina2026-09-25
1025Italy2026-09-16
1026Japan2026-09-13
1027Canada2026-09-12
1028France2026-09-06
1029Brazil2026-09-25
1030Germany2026-09-25
1031Japan2026-09-22
1032Canada2026-09-30
1033Australia2026-09-25
1034Argentina2026-09-10
1035Germany2026-09-05
1036Italy2026-10-02
1037Germany2026-09-22
1038Italy2026-09-09
1039Italy2026-09-27
1040Brazil2026-09-22
1041India2026-09-27
1042United Kingdom2026-09-23
1043Brazil2026-09-17
1044India2026-09-23
1045United Kingdom2026-09-09
1046India2026-09-11
1047Argentina2026-09-20
1048Japan2026-09-19
1049Canada2026-09-23

On-Demand Data

NameIdCountryDate
Darci H Dilliard1000Brazil2026-09-29
Isabel A Sergi1001United Kingdom2026-09-22
Mayumi B Inouye1002Italy2026-09-13
Ashley T Bowley1003Japan2026-10-02
Faith U Garufi1004Spain2026-09-21
Jennifer Y Dilliard1005Brazil2026-09-09
Greenwood M Flosi1006Canada2026-09-15
Ricardo W Rulapaugh1007Australia2026-09-11
Silvio Z Ostrosky1008Japan2026-10-01
Mayumi T Sergi1009Australia2026-09-13
Octavia A Gillian1010Germany2026-09-25
David L Vocelka1011United Kingdom2026-09-26
Deepesh A Waycott1012Russia2026-09-13
Darci Q Oldroyd1013Canada2026-09-08
Ricardo Z Briddick1014Brazil2026-09-22
Deepesh F Nicka1015Argentina2026-09-05
Juan U Slusarski1016India2026-10-03
Stacey F Sergi1017Russia2026-09-17
Jennifer U Shinko1018Russia2026-09-28
Maria Y Whobrey1019Italy2026-09-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey O GauchoArgentinaAmy Elsner NEGOTIATION
Emily V RimIndiaIvan Magalhaes NEGOTIATION
Rodrigues B StockhamAustraliaAsiya Javayant NEW
Chavez E PaprockiGermanyAsiya Javayant NEW
Johnson G PerinArgentinaIoni Bowcher NEGOTIATION
Francesco G SchemmerArgentinaIvan Magalhaes PROPOSAL
Stacey I OldroydJapanOnyama Limba PROPOSAL
Aruna E SergiSpainBernardo Dominic QUALIFIED
Jeanfrancois P SlusarskiFranceAmy Elsner PROPOSAL
Ricardo Z FigeroaItalyAnna Fali NEGOTIATION
Chavez B FerenczJapanXuxue Feng PROPOSAL
Isabel A DarakjyFranceAmy Elsner QUALIFIED
Jones H CaldareraIndiaAmy Elsner NEW
Morrow F OstroskyFranceOnyama Limba NEGOTIATION
Misaki Z FollerItalyBernardo Dominic NEW
Munro Z MaletArgentinaStephen Shaw UNQUALIFIED
Faith M AmigonUnited KingdomStephen Shaw NEGOTIATION
Chavez L GarufiGermanyBernardo Dominic NEGOTIATION
Juan C RimRussiaBernardo Dominic PROPOSAL
Arvin S MarrierItalyBernardo Dominic UNQUALIFIED
Silvio O DilliardRussiaIoni Bowcher NEGOTIATION
Faith D CaldareraSpainAnna Fali PROPOSAL
Ivar V RoysterBrazilBernardo Dominic UNQUALIFIED
Clifford Y PerinIndiaOnyama Limba NEGOTIATION
Maisha O GauchoFranceElwin Sharvill NEW
Deepesh O GillianIndiaIoni Bowcher NEGOTIATION
Claire U BowleyCanadaBernardo Dominic NEW
Isabel J RimBrazilOnyama Limba QUALIFIED
Deepesh I InouyeItalyElwin Sharvill NEGOTIATION
Faith V SaylorsAustraliaIoni Bowcher RENEWAL
Morrow Y CampainRussiaIoni Bowcher RENEWAL
Stacey G RoysterItalyIoni Bowcher PROPOSAL
Francesco W PerinSpainAmy Elsner PROPOSAL
Ivar L SchemmerCanadaIvan Magalhaes NEW
Morrow E KuskoArgentinaElwin Sharvill PROPOSAL
James S PaprockiGermanyElwin Sharvill QUALIFIED
Arvin A KuskoArgentinaIoni Bowcher UNQUALIFIED
Stacey X ButtRussiaIvan Magalhaes NEW
Antonio M GauchoAustraliaIoni Bowcher UNQUALIFIED
Greenwood C CampainRussiaBernardo Dominic QUALIFIED

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