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
Ashley I GauchoCanadaAnna Fali RENEWAL
Smith S SaylorsItalyStephen Shaw RENEWAL
Julie W MacleadAustraliaIoni Bowcher UNQUALIFIED
Isabel Q VenereUnited KingdomXuxue Feng PROPOSAL
David O MorascaGermanyElwin Sharvill NEW
Rodrigues M ButtItalyXuxue Feng RENEWAL
Darci Y CampainRussiaElwin Sharvill RENEWAL
Wickens D GlickAustraliaIoni Bowcher QUALIFIED
Arvin F RutaSpainOnyama Limba UNQUALIFIED
Alejandro W FlosiJapanAmy Elsner RENEWAL
Ashley S FollerArgentinaOnyama Limba PROPOSAL
Emily C StockhamJapanIoni Bowcher NEGOTIATION
Emily F KolmetzJapanBernardo Dominic NEGOTIATION
Maisha C GauchoItalyAmy Elsner UNQUALIFIED
Aruna V VocelkaSpainAsiya Javayant RENEWAL
Murillo F GlickJapanStephen Shaw PROPOSAL
James Z CampainItalyAmy Elsner UNQUALIFIED
Munro G ButtJapanAmy Elsner RENEWAL
Mujtaba J RimJapanAnna Fali RENEWAL
Arvin R KuskoIndiaStephen Shaw RENEWAL
Stacey V KolmetzFranceIvan Magalhaes NEW
Francesco C ChuiUnited KingdomIvan Magalhaes RENEWAL
Wickens H GillianSpainStephen Shaw PROPOSAL
Alejandro N SlusarskiJapanAmy Elsner NEGOTIATION
Misaki E SaylorsArgentinaStephen Shaw QUALIFIED
Cody C RutaSpainIoni Bowcher NEW
Sinclair F CaudyArgentinaXuxue Feng PROPOSAL
Silvio X KuskoCanadaElwin Sharvill RENEWAL
Jones C NickaIndiaOnyama Limba QUALIFIED
Claire F MacleadRussiaStephen Shaw QUALIFIED
Jones D FollerFranceOnyama Limba RENEWAL
Aika C MorascaRussiaAnna Fali NEGOTIATION
Leja E CampainIndiaStephen Shaw RENEWAL
Izzy A MarrierBrazilAsiya Javayant NEW
Tony U FlosiCanadaOnyama Limba UNQUALIFIED
Maisha Z CaudyGermanyIvan Magalhaes QUALIFIED
Izzy U RoysterUnited KingdomStephen Shaw NEGOTIATION
Emily Z DilliardRussiaStephen Shaw NEW
Cody U CampainFranceElwin Sharvill PROPOSAL
Costa A SlusarskiGermanyAmy Elsner QUALIFIED
Jones K OstroskyUnited KingdomBernardo Dominic QUALIFIED
Izzy L GauchoAustraliaAsiya Javayant NEW
Aika A BriddickJapanAmy Elsner NEGOTIATION
Tony P GillianItalyOnyama Limba NEGOTIATION
Jeanfrancois T BriddickSpainIoni Bowcher QUALIFIED
Ashley T FerenczAustraliaIvan Magalhaes NEGOTIATION
Kadeem N StensethCanadaAnna Fali PROPOSAL
Antonio H IturbideAustraliaBernardo Dominic QUALIFIED
Francesco B DoeBrazilOnyama Limba PROPOSAL
Ricardo Z TollnerJapanOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois T ButtCanadaAmy Elsner PROPOSAL
Costa K FollerUnited KingdomIoni Bowcher RENEWAL
Arvin I OstroskySpainAmy Elsner UNQUALIFIED
Adams H StensethGermanyOnyama Limba NEW
Costa Q RutaArgentinaIoni Bowcher UNQUALIFIED
Murillo H InouyeBrazilIvan Magalhaes RENEWAL
Maisha L MaletUnited KingdomBernardo Dominic QUALIFIED
Cody D AlbaresJapanIvan Magalhaes QUALIFIED
Clifford H PoquetteBrazilStephen Shaw NEW
Claire V PoquetteAustraliaAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo C GillianBrazil2026-10-15Rousseaux, Michael Esq RENEWAL27Anna Fali
1001Smith D OldroydIndia2026-09-25Rousseaux, Michael Esq NEW71Asiya Javayant
1002Jennifer N DarakjyItaly2026-10-16King, Christopher A Esq PROPOSAL19Xuxue Feng
1003Arvin A StockhamIndia2026-10-19Chanay, Jeffrey A Esq UNQUALIFIED86Asiya Javayant
1004Izzy E CampainCanada2026-10-20Chemel, James L Cpa RENEWAL8Elwin Sharvill
1005Emily Y StensethItaly2026-10-23Dorl, James J Esq NEW67Asiya Javayant
1006Ivar U FlosiGermany2026-09-27Feltz Printing Service UNQUALIFIED24Bernardo Dominic
1007Jefferson R RulapaughArgentina2026-09-25Morlong Associates NEW2Stephen Shaw
1008Tony Y SaylorsAustralia2026-10-06Chanay, Jeffrey A Esq QUALIFIED81Asiya Javayant
1009Maria M StockhamRussia2026-10-02Chanay, Jeffrey A Esq NEGOTIATION62Ioni Bowcher
1010Jeanfrancois A VenereSpain2026-10-23King, Christopher A Esq RENEWAL82Asiya Javayant
1011Misaki W KuskoSpain2026-09-30Buckley Miller Wright PROPOSAL6Asiya Javayant
1012Emily X SlusarskiAustralia2026-10-22Chapman, Ross E Esq UNQUALIFIED38Amy Elsner
1013Jennifer T ButtFrance2026-10-01Chapman, Ross E Esq PROPOSAL3Ioni Bowcher
1014Costa N IturbideRussia2026-10-22Benton, John B Jr NEW43Stephen Shaw
1015Munro H OldroydGermany2026-10-01Truhlar And Truhlar Attys RENEWAL82Ivan Magalhaes
1016Silvio M SchemmerItaly2026-10-24Buckley Miller Wright PROPOSAL25Ivan Magalhaes
1017Costa O VenereUnited Kingdom2026-10-19Benton, John B Jr NEW30Onyama Limba
1018Aika Y SchemmerSpain2026-10-17Morlong Associates NEGOTIATION36Anna Fali
1019Claire Z MaletItaly2026-10-16Rousseaux, Michael Esq QUALIFIED27Elwin Sharvill
1020Aruna L MorascaBrazil2026-10-18Rousseaux, Michael Esq UNQUALIFIED1Ivan Magalhaes
1021Johnson F PaprockiSpain2026-10-22Rousseaux, Michael Esq QUALIFIED44Asiya Javayant
1022Aditya F FollerArgentina2026-10-18Benton, John B Jr NEW71Amy Elsner
1023Izzy B CaldareraArgentina2026-10-11Chapman, Ross E Esq UNQUALIFIED24Asiya Javayant
1024Leon S DoeGermany2026-10-16Chanay, Jeffrey A Esq UNQUALIFIED28Amy Elsner
1025Clifford P FerenczSpain2026-10-08Chanay, Jeffrey A Esq NEW59Amy Elsner
1026Greenwood Q NestleSpain2026-10-04Feiner Bros NEW12Asiya Javayant
1027Francesco L InouyeRussia2026-09-30Benton, John B Jr RENEWAL38Xuxue Feng
1028Wickens Q BologniaIndia2026-10-05Dorl, James J Esq NEW4Onyama Limba
1029Sinclair O BologniaIndia2026-10-14Chanay, Jeffrey A Esq UNQUALIFIED25Ivan Magalhaes
1030Munro Q KolmetzFrance2026-09-28Dorl, James J Esq RENEWAL67Anna Fali
1031Emily P SergiRussia2026-09-25Buckley Miller Wright PROPOSAL19Anna Fali
1032Munro W SchemmerArgentina2026-10-15Printing Dimensions NEGOTIATION26Asiya Javayant
1033Darci I StensethSpain2026-10-05Benton, John B Jr NEGOTIATION91Xuxue Feng
1034Sinclair P MaletUnited Kingdom2026-10-07Dorl, James J Esq RENEWAL74Ioni Bowcher
1035Johnson I CaudyItaly2026-09-28Truhlar And Truhlar Attys QUALIFIED33Xuxue Feng
1036Clifford E OldroydFrance2026-10-08Truhlar And Truhlar Attys UNQUALIFIED14Asiya Javayant
1037Juan U RoysterUnited Kingdom2026-10-24Feiner Bros RENEWAL10Elwin Sharvill
1038Arvin P AlbaresGermany2026-10-20King, Christopher A Esq QUALIFIED45Amy Elsner
1039Jeanfrancois F RulapaughSpain2026-10-23Feiner Bros RENEWAL90Elwin Sharvill
1040Faith V FollerRussia2026-10-20Rangoni Of Florence QUALIFIED58Anna Fali
1041David T WieserArgentina2026-10-16Truhlar And Truhlar Attys QUALIFIED38Amy Elsner
1042Smith G InouyeBrazil2026-09-30Feltz Printing Service UNQUALIFIED78Elwin Sharvill
1043Ivar F PoquetteBrazil2026-10-15Commercial Press RENEWAL71Ivan Magalhaes
1044Jennifer A FollerJapan2026-10-06Printing Dimensions NEGOTIATION95Asiya Javayant
1045Aruna O SlusarskiCanada2026-10-03Buckley Miller Wright QUALIFIED17Xuxue Feng
1046Greenwood B ButtFrance2026-10-01Feltz Printing Service NEW95Onyama Limba
1047Izzy X WieserArgentina2026-10-24Rousseaux, Michael Esq UNQUALIFIED98Elwin Sharvill
1048Wickens A KuskoAustralia2026-10-22Chanay, Jeffrey A Esq PROPOSAL98Onyama Limba
1049Munro W TollnerRussia2026-10-13Commercial Press QUALIFIED54Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Octavia U NestleIndiaAnna Fali QUALIFIED
Emily J RulapaughGermanyAmy Elsner RENEWAL
Ricardo J BowleyIndiaAmy Elsner RENEWAL
Adams O CaudyItalyIvan Magalhaes UNQUALIFIED
Leon S ChuiGermanyAnna Fali UNQUALIFIED
Claire M AmigonCanadaOnyama Limba UNQUALIFIED
Misaki X GarufiUnited KingdomIvan Magalhaes QUALIFIED
Julie D WhobreyFranceOnyama Limba QUALIFIED
Salvatore H BriddickIndiaIoni Bowcher NEW
Sinclair K TollnerRussiaAmy Elsner UNQUALIFIED
Morrow P CaldareraArgentinaElwin Sharvill UNQUALIFIED
Antonio A InouyeIndiaBernardo Dominic PROPOSAL
Smith A SergiGermanyOnyama Limba RENEWAL
Antonio B GauchoIndiaAsiya Javayant RENEWAL
Julie V FlosiAustraliaAnna Fali RENEWAL
Mujtaba S IturbideGermanyIvan Magalhaes PROPOSAL
Morrow H MacleadBrazilStephen Shaw RENEWAL
Julie E GauchoRussiaXuxue Feng UNQUALIFIED
Cody L FollerFranceAmy Elsner PROPOSAL
Salvatore I PoquetteBrazilAnna Fali PROPOSAL
Adams K IturbideUnited KingdomOnyama Limba PROPOSAL
Jones U SlusarskiCanadaBernardo Dominic QUALIFIED
Arvin D BriddickSpainAmy Elsner NEW
Ivar I CampainUnited KingdomStephen Shaw UNQUALIFIED
Alejandro L SaylorsFranceAsiya Javayant RENEWAL
Maria P BologniaCanadaIoni Bowcher UNQUALIFIED
Rodrigues T PaprockiBrazilIoni Bowcher PROPOSAL
Morrow W CampainRussiaAmy Elsner UNQUALIFIED
Faith I MarrierSpainAnna Fali NEGOTIATION
Claire C StensethFranceXuxue Feng QUALIFIED
Antonio U KuskoAustraliaAmy Elsner RENEWAL
Arvin X MarrierItalyAsiya Javayant PROPOSAL
Morrow Y PoquetteRussiaElwin Sharvill UNQUALIFIED
Izzy A DoeJapanBernardo Dominic NEGOTIATION
Sinclair G PerinIndiaAsiya Javayant PROPOSAL
Mayumi I RoysterCanadaAnna Fali NEGOTIATION
David P ShinkoCanadaBernardo Dominic PROPOSAL
Julie H AmigonItalyElwin Sharvill NEGOTIATION
Nicolas N DarakjyFranceElwin Sharvill NEW
Rodrigues F FerenczSpainAmy Elsner NEGOTIATION
Maisha L BowleySpainBernardo Dominic PROPOSAL
Antonio V MorascaGermanyIoni Bowcher NEGOTIATION
Emily R KolmetzAustraliaAnna Fali NEGOTIATION
Alejandro V FlosiGermanyAnna Fali NEGOTIATION
Kadeem V ChuiItalyAmy Elsner PROPOSAL
Munro R ShinkoSpainBernardo Dominic QUALIFIED
Jones K MarrierBrazilOnyama Limba UNQUALIFIED
Izzy S GauchoUnited KingdomIvan Magalhaes QUALIFIED
Wickens B GarufiGermanyIvan Magalhaes QUALIFIED
Antonio N PaprockiCanadaStephen Shaw NEW
Frozen Columns
Name
Isabel B Rim
Kaitlin J Garufi
Salvatore V Nicka
Francesco R Whobrey
Mayumi M Stockham
Jeanfrancois D Whobrey
Maisha Y Malet
Jeanfrancois B Oldroyd
Julie C Chui
Smith X Morasca
Arvin L Amigon
Ivar E Saylors
Francesco E Maclead
Kaitlin E Chui
Alejandro G Foller
Sinclair Z Tollner
Silvio N Figeroa
Costa P Schemmer
Arvin O Gaucho
Mayumi I Caldarera
Isabel A Kolmetz
Kadeem D Bolognia
Octavia S Gillian
Juan F Rulapaugh
Ashley R Butt
Leja Q Figeroa
Aruna V Campain
Mayumi K Caudy
Maisha W Maclead
Salvatore P Wieser
Isabel G Vocelka
Antonio P Malet
Octavia J Inouye
Francesco Y Vocelka
Wickens O Butt
Darci S Chui
Jeanfrancois A Bowley
Jennifer C Doe
Munro Q Venere
Emily N Maclead
Misaki L Albares
Aika D Rulapaugh
Murillo S Ferencz
Cody G Schemmer
Leja X Morasca
Nicolas P Butt
Deepesh V Schemmer
Munro Q Schemmer
Leja T Glick
Leon I Bolognia
IdCountryDate
1000Japan2026-10-06
1001United Kingdom2026-09-30
1002Spain2026-10-20
1003Russia2026-10-16
1004Brazil2026-10-11
1005Brazil2026-10-23
1006France2026-10-07
1007Russia2026-10-11
1008France2026-10-05
1009Australia2026-09-30
1010United Kingdom2026-10-08
1011Brazil2026-09-26
1012Japan2026-10-01
1013Spain2026-10-10
1014Argentina2026-10-17
1015Russia2026-10-08
1016Canada2026-10-04
1017Spain2026-10-22
1018United Kingdom2026-10-04
1019India2026-10-19
1020Russia2026-09-25
1021Australia2026-10-12
1022Italy2026-10-10
1023Brazil2026-10-05
1024Russia2026-10-09
1025India2026-10-16
1026Australia2026-10-24
1027Brazil2026-10-12
1028Canada2026-10-22
1029Brazil2026-10-21
1030India2026-10-07
1031Spain2026-10-24
1032India2026-10-22
1033Argentina2026-10-15
1034Argentina2026-09-28
1035Brazil2026-10-19
1036Argentina2026-09-29
1037Germany2026-10-08
1038France2026-10-21
1039Japan2026-10-24
1040India2026-10-19
1041Canada2026-10-20
1042Russia2026-09-27
1043France2026-09-26
1044Russia2026-09-30
1045Japan2026-10-06
1046Spain2026-09-30
1047Spain2026-10-22
1048Australia2026-10-16
1049United Kingdom2026-10-23

On-Demand Data

NameIdCountryDate
Alejandro B Iturbide1000United Kingdom2026-10-12
Faith P Bowley1001Argentina2026-10-21
Emily V Royster1002Canada2026-10-18
Leon N Rim1003Spain2026-09-26
Aika V Nicka1004Russia2026-10-10
Silvio S Nicka1005Brazil2026-10-20
Misaki X Iturbide1006Japan2026-10-12
Silvio W Stenseth1007Canada2026-10-02
David J Tollner1008Italy2026-10-14
Aruna E Venere1009Argentina2026-10-22
Mujtaba Z Foller1010Australia2026-10-19
Deepesh H Gaucho1011India2026-10-16
Alejandro X Shinko1012United Kingdom2026-10-14
Cody P Briddick1013Australia2026-10-19
Murillo B Maclead1014Canada2026-09-26
Misaki I Saylors1015India2026-09-29
Clifford J Nicka1016Italy2026-10-07
Cody L Nicka1017Brazil2026-10-12
James X Ostrosky1018Italy2026-10-20
Francesco B Bowley1019Italy2026-09-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin C OstroskyCanadaStephen Shaw RENEWAL
Emily W ChuiCanadaStephen Shaw PROPOSAL
Antonio T AlbaresRussiaOnyama Limba PROPOSAL
Greenwood U FollerAustraliaAnna Fali PROPOSAL
Deepesh X BologniaIndiaXuxue Feng UNQUALIFIED
Mayumi C PerinUnited KingdomIoni Bowcher NEGOTIATION
Salvatore W DilliardItalyXuxue Feng PROPOSAL
Stacey E GarufiUnited KingdomAmy Elsner NEW
Aika W VocelkaSpainAmy Elsner UNQUALIFIED
David A SlusarskiGermanyIoni Bowcher RENEWAL
Kadeem V GlickGermanyXuxue Feng PROPOSAL
Costa B SlusarskiBrazilXuxue Feng NEW
Deepesh Q ButtGermanyIvan Magalhaes RENEWAL
Jeanfrancois Q NestleUnited KingdomElwin Sharvill PROPOSAL
Adams F StockhamJapanOnyama Limba NEW
Cody X SergiAustraliaOnyama Limba NEGOTIATION
Faith G KolmetzArgentinaStephen Shaw PROPOSAL
Smith B RulapaughSpainIvan Magalhaes UNQUALIFIED
Izzy N AmigonJapanStephen Shaw NEGOTIATION
Octavia E GauchoSpainAnna Fali PROPOSAL
Morrow I InouyeGermanyBernardo Dominic NEW
Nicolas A WhobreyJapanElwin Sharvill NEW
Mujtaba V OldroydArgentinaStephen Shaw NEGOTIATION
James T GauchoItalyIvan Magalhaes QUALIFIED
Murillo T VocelkaRussiaAmy Elsner RENEWAL
Nicolas V WieserArgentinaIvan Magalhaes NEGOTIATION
Chavez S FlosiFranceAmy Elsner UNQUALIFIED
Julie J WhobreyGermanyStephen Shaw NEW
Octavia O AmigonGermanyAnna Fali NEGOTIATION
Alejandro R GlickFranceStephen Shaw NEW
Leja T StockhamAustraliaAsiya Javayant PROPOSAL
Antonio F SergiItalyIvan Magalhaes NEGOTIATION
Mujtaba L BologniaBrazilIvan Magalhaes PROPOSAL
James H KuskoItalyOnyama Limba UNQUALIFIED
Kaitlin I OstroskyItalyIoni Bowcher RENEWAL
Emily P GlickUnited KingdomIoni Bowcher UNQUALIFIED
Juan E VenereSpainIoni Bowcher QUALIFIED
Ricardo C GauchoUnited KingdomElwin Sharvill NEW
Murillo E MorascaSpainXuxue Feng RENEWAL
Greenwood Q RulapaughSpainAnna Fali NEGOTIATION

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