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
Jeanfrancois L RutaGermanyAnna Fali QUALIFIED
Tony H GarufiIndiaOnyama Limba NEGOTIATION
Costa U PoquetteRussiaElwin Sharvill QUALIFIED
Juan O DarakjyArgentinaElwin Sharvill NEGOTIATION
Morrow R OldroydArgentinaBernardo Dominic NEGOTIATION
Maisha K FlosiRussiaAmy Elsner RENEWAL
Emily Y GillianCanadaAmy Elsner NEW
Murillo B DilliardUnited KingdomAnna Fali NEW
Costa O StockhamItalyIvan Magalhaes QUALIFIED
Kadeem T VenereCanadaIvan Magalhaes UNQUALIFIED
Isabel O AmigonFranceIvan Magalhaes UNQUALIFIED
Deepesh X VenereJapanElwin Sharvill UNQUALIFIED
Leja W GlickIndiaStephen Shaw PROPOSAL
Mujtaba V BowleyRussiaAmy Elsner RENEWAL
Deepesh T RulapaughArgentinaIoni Bowcher PROPOSAL
Clifford S NickaAustraliaElwin Sharvill NEW
Nicolas K VenereIndiaElwin Sharvill NEW
Aika E KolmetzJapanAnna Fali RENEWAL
Morrow V KolmetzArgentinaIoni Bowcher NEGOTIATION
Jennifer J AlbaresAustraliaXuxue Feng PROPOSAL
Maria Y GillianCanadaStephen Shaw NEGOTIATION
Kaitlin B ButtGermanyIoni Bowcher NEW
Francesco D FollerSpainAnna Fali RENEWAL
Arvin E CaudyCanadaStephen Shaw NEGOTIATION
Adams N SlusarskiGermanyAmy Elsner NEGOTIATION
Jennifer A MorascaArgentinaIoni Bowcher NEW
Murillo I StensethCanadaBernardo Dominic PROPOSAL
Clifford K GarufiRussiaIvan Magalhaes NEGOTIATION
Julie O RulapaughJapanIoni Bowcher UNQUALIFIED
Wickens D FerenczBrazilBernardo Dominic NEGOTIATION
Murillo K BriddickBrazilAsiya Javayant QUALIFIED
Maria X BologniaJapanElwin Sharvill NEGOTIATION
Ivar C IturbideRussiaIvan Magalhaes NEW
Clifford J CaudyUnited KingdomAsiya Javayant QUALIFIED
Ashley A DilliardGermanyStephen Shaw NEW
Jefferson F AlbaresItalyBernardo Dominic UNQUALIFIED
Cody K DilliardUnited KingdomAmy Elsner QUALIFIED
Misaki Z SergiBrazilElwin Sharvill NEW
Nicolas W CaudyBrazilAsiya Javayant PROPOSAL
Rodrigues X RimJapanAmy Elsner RENEWAL
Faith N TollnerUnited KingdomAmy Elsner QUALIFIED
Kaitlin C RutaJapanBernardo Dominic QUALIFIED
Darci C ChuiBrazilIoni Bowcher UNQUALIFIED
Arvin A MarrierIndiaAnna Fali RENEWAL
Jeanfrancois X KuskoArgentinaAsiya Javayant QUALIFIED
Wickens G KolmetzIndiaStephen Shaw RENEWAL
Murillo U PerinAustraliaAsiya Javayant PROPOSAL
Maisha C FigeroaFranceAsiya Javayant QUALIFIED
Leon Z CaudyGermanyOnyama Limba NEGOTIATION
Antonio B CaldareraArgentinaOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Claire Q WhobreyItalyStephen Shaw PROPOSAL
Cody L MaletUnited KingdomStephen Shaw PROPOSAL
Arvin B GauchoFranceIoni Bowcher UNQUALIFIED
Salvatore H IturbideIndiaStephen Shaw QUALIFIED
Jeanfrancois U DoeUnited KingdomStephen Shaw UNQUALIFIED
Maria Z InouyeUnited KingdomXuxue Feng NEW
Tony U WieserItalyStephen Shaw NEW
Aruna U SergiGermanyElwin Sharvill PROPOSAL
Jeanfrancois F FlosiAustraliaAmy Elsner NEW
Jeanfrancois Z MaletItalyBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer G FerenczUnited Kingdom2026-11-10Chemel, James L Cpa RENEWAL70Xuxue Feng
1001Ashley P PaprockiGermany2026-11-02Rangoni Of Florence PROPOSAL8Stephen Shaw
1002Aika Q GillianArgentina2026-10-29Buckley Miller Wright NEGOTIATION55Ioni Bowcher
1003Ivar C SergiCanada2026-11-08Feltz Printing Service NEW49Ioni Bowcher
1004Ivar D MorascaRussia2026-11-08Feltz Printing Service NEW46Bernardo Dominic
1005Leon S ChuiJapan2026-10-27Dorl, James J Esq PROPOSAL28Amy Elsner
1006Nicolas W NestleSpain2026-10-28Printing Dimensions NEGOTIATION36Asiya Javayant
1007Misaki X PoquetteGermany2026-11-06Truhlar And Truhlar Attys NEGOTIATION45Ivan Magalhaes
1008Wickens F PaprockiCanada2026-10-28Chanay, Jeffrey A Esq NEW84Amy Elsner
1009Maisha D TollnerGermany2026-10-28Chemel, James L Cpa PROPOSAL83Stephen Shaw
1010Chavez Q FerenczGermany2026-11-01Morlong Associates PROPOSAL97Bernardo Dominic
1011Mujtaba Q GillianAustralia2026-10-29Printing Dimensions UNQUALIFIED60Stephen Shaw
1012Jennifer A SlusarskiFrance2026-10-30Truhlar And Truhlar Attys PROPOSAL21Onyama Limba
1013Adams O BowleySpain2026-11-08Feltz Printing Service NEGOTIATION75Asiya Javayant
1014Adams U AlbaresJapan2026-11-05Truhlar And Truhlar Attys NEGOTIATION87Elwin Sharvill
1015Silvio C MarrierRussia2026-10-25King, Christopher A Esq UNQUALIFIED68Stephen Shaw
1016Arvin A ButtGermany2026-11-03Printing Dimensions RENEWAL70Anna Fali
1017Smith M VenereFrance2026-10-17Rangoni Of Florence RENEWAL7Elwin Sharvill
1018Alejandro O FlosiSpain2026-10-21Chanay, Jeffrey A Esq NEW52Onyama Limba
1019Chavez Y DoeBrazil2026-11-06Benton, John B Jr RENEWAL90Xuxue Feng
1020Johnson Z GauchoJapan2026-10-20Rangoni Of Florence PROPOSAL94Stephen Shaw
1021Stacey A BriddickSpain2026-11-09Chemel, James L Cpa NEGOTIATION32Bernardo Dominic
1022Wickens U VenereIndia2026-11-03Rangoni Of Florence QUALIFIED6Anna Fali
1023Ashley I SchemmerArgentina2026-10-15Truhlar And Truhlar Attys PROPOSAL80Asiya Javayant
1024Isabel C FollerFrance2026-11-11Chapman, Ross E Esq NEGOTIATION58Elwin Sharvill
1025Julie X DilliardSpain2026-11-02Benton, John B Jr NEW84Asiya Javayant
1026Jefferson V OstroskyArgentina2026-11-01Buckley Miller Wright UNQUALIFIED79Xuxue Feng
1027Antonio H PerinArgentina2026-10-26Chapman, Ross E Esq NEGOTIATION81Elwin Sharvill
1028Smith Z GlickIndia2026-10-29Buckley Miller Wright QUALIFIED60Stephen Shaw
1029Wickens R ChuiArgentina2026-10-23Feltz Printing Service RENEWAL0Onyama Limba
1030Antonio P MorascaArgentina2026-10-17Chapman, Ross E Esq UNQUALIFIED55Ioni Bowcher
1031Isabel V CampainItaly2026-10-25Rangoni Of Florence QUALIFIED19Amy Elsner
1032Antonio W SchemmerRussia2026-11-05Feiner Bros UNQUALIFIED15Stephen Shaw
1033Wickens D CaudyCanada2026-11-01Rousseaux, Michael Esq RENEWAL85Elwin Sharvill
1034Francesco V DilliardGermany2026-10-20Feltz Printing Service NEGOTIATION71Ioni Bowcher
1035Clifford P IturbideFrance2026-10-20Printing Dimensions QUALIFIED2Amy Elsner
1036Jennifer G CaldareraIndia2026-11-05King, Christopher A Esq NEGOTIATION11Anna Fali
1037Darci H SergiIndia2026-11-03Commercial Press UNQUALIFIED55Asiya Javayant
1038Leon K CaldareraFrance2026-10-27Printing Dimensions NEGOTIATION4Amy Elsner
1039Faith K SchemmerUnited Kingdom2026-11-02Chanay, Jeffrey A Esq UNQUALIFIED50Amy Elsner
1040Jefferson W ChuiFrance2026-11-03Commercial Press UNQUALIFIED58Xuxue Feng
1041Chavez T PaprockiBrazil2026-11-11Chanay, Jeffrey A Esq PROPOSAL61Xuxue Feng
1042Morrow C FlosiArgentina2026-10-18Rangoni Of Florence QUALIFIED68Anna Fali
1043Darci D FerenczRussia2026-11-09Feiner Bros RENEWAL92Elwin Sharvill
1044Darci A BriddickCanada2026-11-12King, Christopher A Esq UNQUALIFIED44Elwin Sharvill
1045Darci W MaletAustralia2026-11-06Feltz Printing Service NEW80Anna Fali
1046Wickens N TollnerItaly2026-11-13Buckley Miller Wright NEGOTIATION50Ivan Magalhaes
1047David F AmigonItaly2026-10-21Commercial Press PROPOSAL16Asiya Javayant
1048Kadeem W RulapaughSpain2026-11-13Dorl, James J Esq NEGOTIATION38Elwin Sharvill
1049Ricardo T CampainAustralia2026-11-12Morlong Associates NEGOTIATION35Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Johnson Y SergiRussiaElwin Sharvill UNQUALIFIED
Claire Y FollerItalyStephen Shaw NEW
Ricardo Y DilliardItalyElwin Sharvill UNQUALIFIED
Aditya Q ShinkoBrazilAnna Fali QUALIFIED
Jennifer H RulapaughJapanElwin Sharvill NEW
Arvin O MacleadCanadaElwin Sharvill NEGOTIATION
Cody T PaprockiJapanElwin Sharvill NEW
Alejandro R PoquetteGermanyOnyama Limba NEGOTIATION
Sinclair E BowleyUnited KingdomBernardo Dominic PROPOSAL
Adams W NickaItalyAsiya Javayant NEGOTIATION
Salvatore P VenereUnited KingdomIvan Magalhaes QUALIFIED
Faith Q DilliardBrazilAnna Fali PROPOSAL
David C NestleAustraliaAmy Elsner NEGOTIATION
Johnson U AlbaresAustraliaStephen Shaw QUALIFIED
Nicolas Z DarakjyUnited KingdomXuxue Feng PROPOSAL
Maisha P SchemmerAustraliaBernardo Dominic RENEWAL
Leon F FigeroaArgentinaAsiya Javayant NEW
Kadeem Z CampainAustraliaElwin Sharvill QUALIFIED
Mujtaba R SaylorsBrazilStephen Shaw RENEWAL
Juan V KolmetzBrazilIvan Magalhaes UNQUALIFIED
Salvatore Q WhobreyArgentinaElwin Sharvill NEGOTIATION
Maisha U DoeJapanOnyama Limba UNQUALIFIED
Claire Z BowleyBrazilAsiya Javayant NEW
Cody Z SergiArgentinaAnna Fali UNQUALIFIED
Nicolas L ShinkoBrazilAmy Elsner NEGOTIATION
Maisha C WieserFranceIvan Magalhaes RENEWAL
Munro Z FlosiAustraliaAnna Fali NEGOTIATION
Aditya S GarufiArgentinaElwin Sharvill UNQUALIFIED
Deepesh C CaldareraArgentinaOnyama Limba NEW
Sinclair B RoysterRussiaStephen Shaw NEW
Jefferson U NickaJapanAsiya Javayant NEGOTIATION
Aditya M AlbaresSpainAsiya Javayant UNQUALIFIED
Jones Y IturbideGermanyAmy Elsner RENEWAL
Morrow B PoquetteItalyIoni Bowcher NEGOTIATION
Isabel D ButtFranceAmy Elsner UNQUALIFIED
Nicolas R RutaArgentinaXuxue Feng PROPOSAL
Kadeem Z FerenczBrazilIoni Bowcher NEGOTIATION
Maria Z SergiSpainAmy Elsner UNQUALIFIED
Arvin J SaylorsBrazilBernardo Dominic NEGOTIATION
Nicolas F FlosiBrazilIoni Bowcher NEGOTIATION
Claire F WaycottUnited KingdomOnyama Limba NEW
Arvin S SlusarskiUnited KingdomIvan Magalhaes NEGOTIATION
Maria L CaudyIndiaBernardo Dominic RENEWAL
Sinclair P CampainSpainElwin Sharvill NEGOTIATION
Octavia K MarrierUnited KingdomIoni Bowcher NEGOTIATION
Isabel L MaletIndiaOnyama Limba QUALIFIED
Munro G VenereArgentinaBernardo Dominic QUALIFIED
Jones G ButtJapanBernardo Dominic PROPOSAL
Silvio Y FlosiJapanElwin Sharvill NEW
Julie J SlusarskiItalyAmy Elsner NEGOTIATION
Frozen Columns
Name
Clifford R Campain
Juan P Maclead
Kaitlin N Amigon
Faith J Ruta
Mayumi M Malet
Leja H Paprocki
Isabel N Ferencz
Tony L Campain
Juan J Poquette
Smith R Iturbide
Jefferson L Garufi
Leon Q Ruta
Juan J Maclead
Rodrigues X Rim
Smith X Amigon
Claire V Inouye
Adams L Venere
Jennifer Y Ostrosky
David H Gaucho
Rodrigues V Caldarera
Jefferson W Albares
Smith S Amigon
Misaki T Morasca
Mujtaba K Maclead
Jennifer Y Morasca
Johnson Z Briddick
Julie D Kolmetz
Adams E Venere
Maisha H Schemmer
Rodrigues A Morasca
Jeanfrancois T Ferencz
James Y Shinko
Johnson W Slusarski
Chavez I Ferencz
Antonio G Maclead
Wickens H Bolognia
Mayumi R Iturbide
Smith Z Figeroa
Kadeem N Whobrey
Emily Z Rim
Jeanfrancois J Poquette
Ivar E Venere
Greenwood D Foller
Johnson A Glick
Claire B Caudy
Leja L Garufi
Murillo I Ruta
Chavez D Malet
Nicolas U Sergi
Maria F Foller
IdCountryDate
1000France2026-11-02
1001Australia2026-11-03
1002Spain2026-10-18
1003Argentina2026-10-21
1004Italy2026-10-25
1005Spain2026-11-02
1006Argentina2026-11-05
1007Italy2026-10-29
1008United Kingdom2026-10-24
1009Germany2026-11-04
1010France2026-11-01
1011Italy2026-10-16
1012Spain2026-10-25
1013France2026-11-09
1014India2026-10-18
1015Canada2026-11-01
1016Italy2026-10-23
1017Brazil2026-10-29
1018Russia2026-11-10
1019Argentina2026-10-16
1020United Kingdom2026-10-19
1021Russia2026-10-29
1022India2026-10-31
1023India2026-10-24
1024Italy2026-10-30
1025Canada2026-10-18
1026Argentina2026-10-17
1027Russia2026-10-17
1028Japan2026-10-22
1029Germany2026-10-24
1030Russia2026-11-11
1031Japan2026-10-28
1032Spain2026-11-12
1033Argentina2026-11-03
1034Brazil2026-10-16
1035Canada2026-10-31
1036Italy2026-11-02
1037Canada2026-11-10
1038Germany2026-10-17
1039United Kingdom2026-10-22
1040Italy2026-11-09
1041Japan2026-11-13
1042Germany2026-11-07
1043France2026-10-17
1044Brazil2026-11-10
1045Japan2026-10-27
1046Italy2026-11-12
1047Canada2026-11-13
1048Italy2026-11-02
1049Russia2026-11-09

On-Demand Data

NameIdCountryDate
Smith F Caldarera1000Canada2026-10-31
Clifford Z Vocelka1001Argentina2026-10-16
Misaki Y Foller1002Italy2026-11-04
David S Chui1003France2026-10-15
Julie C Campain1004Russia2026-11-09
Mayumi K Caudy1005Japan2026-10-31
Costa K Inouye1006Brazil2026-10-18
Cody Z Tollner1007Spain2026-10-20
Emily R Briddick1008Australia2026-11-02
Claire O Malet1009Russia2026-11-02
Maisha N Rim1010Spain2026-10-16
Maisha Y Stockham1011Russia2026-10-31
Maisha K Flosi1012Canada2026-11-03
Costa Q Rulapaugh1013Japan2026-10-17
Maria S Campain1014Russia2026-11-02
Jeanfrancois L Venere1015Italy2026-11-13
Aruna D Gillian1016Italy2026-10-19
Cody S Sergi1017Spain2026-11-12
Jones W Saylors1018Canada2026-11-10
James Q Royster1019Germany2026-11-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar L OldroydGermanyAsiya Javayant PROPOSAL
Octavia F GarufiGermanyBernardo Dominic UNQUALIFIED
Tony X SergiRussiaBernardo Dominic NEW
Alejandro L FollerFranceIvan Magalhaes PROPOSAL
Leon S GillianItalyAmy Elsner QUALIFIED
James K GarufiArgentinaStephen Shaw NEGOTIATION
Ivar C BriddickRussiaIvan Magalhaes UNQUALIFIED
Ricardo E AmigonAustraliaElwin Sharvill UNQUALIFIED
Octavia J MaletRussiaXuxue Feng QUALIFIED
Leon B AmigonIndiaAmy Elsner NEW
Maria Q FigeroaUnited KingdomAmy Elsner NEGOTIATION
Maisha I SaylorsCanadaStephen Shaw QUALIFIED
Smith C RoysterJapanAnna Fali NEW
Salvatore G FlosiUnited KingdomOnyama Limba QUALIFIED
Salvatore L ButtAustraliaAsiya Javayant RENEWAL
Jones G RoysterRussiaOnyama Limba RENEWAL
Jefferson W IturbideFranceXuxue Feng QUALIFIED
Aruna Y CaldareraFranceAsiya Javayant NEW
Claire O RutaRussiaAsiya Javayant PROPOSAL
Francesco P BologniaCanadaStephen Shaw NEW
Jennifer Q FlosiArgentinaOnyama Limba QUALIFIED
Izzy J RulapaughArgentinaBernardo Dominic UNQUALIFIED
Deepesh Y RulapaughBrazilOnyama Limba RENEWAL
Octavia R WieserArgentinaIoni Bowcher NEW
Juan T FollerGermanyStephen Shaw NEW
Leja J NestleGermanyAnna Fali PROPOSAL
Tony P NestleAustraliaAnna Fali UNQUALIFIED
Leja K NestleSpainIvan Magalhaes RENEWAL
Ashley W BowleyCanadaIoni Bowcher NEW
Chavez O RulapaughSpainAsiya Javayant QUALIFIED
Rodrigues O BologniaGermanyOnyama Limba NEW
Leja C CaldareraSpainAsiya Javayant QUALIFIED
Nicolas F BriddickCanadaBernardo Dominic NEGOTIATION
Murillo M IturbideItalyAnna Fali NEW
Rodrigues V MaletIndiaOnyama Limba QUALIFIED
Mayumi M DilliardJapanElwin Sharvill NEGOTIATION
Claire P WaycottIndiaOnyama Limba PROPOSAL
Claire B AlbaresIndiaAsiya Javayant PROPOSAL
Chavez G MorascaSpainStephen Shaw UNQUALIFIED
Emily C PerinBrazilAnna Fali 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>