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
Juan X NestleItalyElwin Sharvill RENEWAL
Jeanfrancois B GlickAustraliaIoni Bowcher PROPOSAL
Octavia X GauchoArgentinaElwin Sharvill QUALIFIED
Isabel Q CaudyRussiaOnyama Limba RENEWAL
Jones R OstroskyAustraliaIvan Magalhaes NEW
Murillo F PoquetteJapanXuxue Feng NEW
Julie D NickaIndiaAmy Elsner RENEWAL
Julie J WaycottIndiaIvan Magalhaes UNQUALIFIED
Rodrigues U BologniaRussiaElwin Sharvill RENEWAL
Jones N WieserAustraliaIvan Magalhaes NEW
Costa W RoysterSpainAnna Fali PROPOSAL
Nicolas C GillianUnited KingdomXuxue Feng RENEWAL
Ricardo E FollerBrazilXuxue Feng NEGOTIATION
Silvio H CaudyBrazilAsiya Javayant NEW
Murillo Z OldroydSpainXuxue Feng QUALIFIED
Munro C FlosiArgentinaStephen Shaw PROPOSAL
Ashley Y VenereItalyOnyama Limba RENEWAL
Adams B PerinUnited KingdomAnna Fali UNQUALIFIED
Darci U DoeGermanyAsiya Javayant NEW
Aditya P SaylorsGermanyXuxue Feng RENEWAL
Arvin G ChuiArgentinaBernardo Dominic UNQUALIFIED
Emily F RoysterSpainOnyama Limba NEGOTIATION
Munro G PerinRussiaAmy Elsner NEGOTIATION
Ashley K MarrierRussiaStephen Shaw QUALIFIED
Mujtaba E AmigonItalyAnna Fali NEGOTIATION
Wickens K FigeroaGermanyAnna Fali QUALIFIED
Salvatore K RimUnited KingdomBernardo Dominic NEW
Ashley V ChuiCanadaStephen Shaw RENEWAL
Aditya X MarrierItalyAsiya Javayant RENEWAL
Faith A DilliardCanadaIvan Magalhaes UNQUALIFIED
Octavia Z NestleFranceAsiya Javayant NEGOTIATION
Ivar W WhobreyUnited KingdomAmy Elsner UNQUALIFIED
Johnson K WieserIndiaAnna Fali UNQUALIFIED
Chavez E CaldareraGermanyIvan Magalhaes UNQUALIFIED
Murillo X RulapaughAustraliaAnna Fali UNQUALIFIED
Munro O DarakjyBrazilBernardo Dominic NEW
James L AlbaresIndiaBernardo Dominic PROPOSAL
James O CaudyAustraliaOnyama Limba RENEWAL
Kadeem Z InouyeItalyAnna Fali RENEWAL
Aika X SchemmerArgentinaOnyama Limba NEGOTIATION
Costa T FollerItalyOnyama Limba NEW
Salvatore R VocelkaAustraliaIvan Magalhaes UNQUALIFIED
Jeanfrancois T WieserCanadaIoni Bowcher NEW
Stacey C DoeFranceAmy Elsner NEGOTIATION
Emily V DoeSpainIvan Magalhaes NEW
Clifford K MaletBrazilElwin Sharvill RENEWAL
Aruna N SergiUnited KingdomStephen Shaw UNQUALIFIED
Ivar A MaletSpainAnna Fali QUALIFIED
Silvio C SlusarskiSpainAnna Fali UNQUALIFIED
Izzy M RutaArgentinaIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Wickens H RutaArgentinaOnyama Limba UNQUALIFIED
Ashley R CaldareraGermanyElwin Sharvill NEGOTIATION
Arvin N VocelkaSpainBernardo Dominic NEW
Morrow Y AmigonAustraliaIvan Magalhaes NEW
Munro S KuskoAustraliaAsiya Javayant QUALIFIED
Jones C ButtCanadaXuxue Feng NEGOTIATION
Jennifer K StensethIndiaAsiya Javayant QUALIFIED
Murillo N StensethGermanyXuxue Feng PROPOSAL
Chavez Z SaylorsRussiaXuxue Feng NEW
David G GarufiUnited KingdomStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya B GlickItaly2026-10-16Commercial Press RENEWAL96Amy Elsner
1001Ricardo N StockhamUnited Kingdom2026-10-28Dorl, James J Esq PROPOSAL75Ioni Bowcher
1002James Z StockhamCanada2026-10-19Dorl, James J Esq UNQUALIFIED9Asiya Javayant
1003Maria T MaletIndia2026-10-24Rousseaux, Michael Esq NEGOTIATION29Elwin Sharvill
1004Munro H GarufiGermany2026-10-20King, Christopher A Esq UNQUALIFIED70Amy Elsner
1005Misaki W BologniaUnited Kingdom2026-10-22Commercial Press UNQUALIFIED87Asiya Javayant
1006Mujtaba R SaylorsGermany2026-11-01Truhlar And Truhlar Attys NEW91Bernardo Dominic
1007Alejandro G StensethFrance2026-10-19Rangoni Of Florence QUALIFIED50Onyama Limba
1008David W RutaArgentina2026-10-21King, Christopher A Esq NEW53Onyama Limba
1009Misaki X PoquetteArgentina2026-10-28Dorl, James J Esq QUALIFIED68Anna Fali
1010Misaki Z PaprockiCanada2026-11-07Benton, John B Jr NEW21Asiya Javayant
1011Alejandro P SlusarskiArgentina2026-10-27King, Christopher A Esq PROPOSAL73Asiya Javayant
1012Morrow G NickaSpain2026-10-19Truhlar And Truhlar Attys UNQUALIFIED59Stephen Shaw
1013Jefferson D SergiAustralia2026-10-14Rousseaux, Michael Esq QUALIFIED21Stephen Shaw
1014Izzy C PerinIndia2026-10-31King, Christopher A Esq NEW53Bernardo Dominic
1015Juan V VocelkaUnited Kingdom2026-10-31Feltz Printing Service PROPOSAL30Bernardo Dominic
1016Francesco P KuskoArgentina2026-10-18Dorl, James J Esq PROPOSAL69Ioni Bowcher
1017Alejandro G BologniaCanada2026-10-18Benton, John B Jr UNQUALIFIED2Asiya Javayant
1018Julie T KuskoSpain2026-11-03Rousseaux, Michael Esq UNQUALIFIED96Bernardo Dominic
1019Izzy V DarakjyGermany2026-10-13Chapman, Ross E Esq NEW1Asiya Javayant
1020Maisha W DoeJapan2026-10-16Chemel, James L Cpa PROPOSAL43Anna Fali
1021Tony T StockhamUnited Kingdom2026-10-29Rangoni Of Florence RENEWAL13Ivan Magalhaes
1022Salvatore B SaylorsCanada2026-10-18Chemel, James L Cpa UNQUALIFIED93Anna Fali
1023David N DoeAustralia2026-11-06King, Christopher A Esq QUALIFIED84Bernardo Dominic
1024Juan J BowleyUnited Kingdom2026-10-31Benton, John B Jr RENEWAL7Asiya Javayant
1025Aruna Z WieserCanada2026-10-12Commercial Press PROPOSAL50Bernardo Dominic
1026Tony L FlosiRussia2026-11-01Buckley Miller Wright UNQUALIFIED21Anna Fali
1027Salvatore J SaylorsUnited Kingdom2026-11-07Benton, John B Jr RENEWAL95Xuxue Feng
1028Silvio T BowleyItaly2026-10-12Dorl, James J Esq QUALIFIED10Ivan Magalhaes
1029Nicolas R InouyeAustralia2026-11-06Chapman, Ross E Esq RENEWAL83Stephen Shaw
1030Morrow V TollnerBrazil2026-10-30Printing Dimensions NEGOTIATION96Ivan Magalhaes
1031Izzy D FollerRussia2026-10-13Feiner Bros UNQUALIFIED34Stephen Shaw
1032Stacey O GarufiItaly2026-10-28King, Christopher A Esq UNQUALIFIED36Ioni Bowcher
1033Mujtaba J NestleSpain2026-10-24Truhlar And Truhlar Attys PROPOSAL7Amy Elsner
1034Francesco P OstroskyUnited Kingdom2026-10-29Chemel, James L Cpa NEW82Stephen Shaw
1035Cody D RutaBrazil2026-10-17Chanay, Jeffrey A Esq NEW98Ioni Bowcher
1036Alejandro F PoquetteBrazil2026-10-30Dorl, James J Esq NEW19Ivan Magalhaes
1037Jones L ShinkoArgentina2026-10-24Feiner Bros RENEWAL9Amy Elsner
1038Isabel D FigeroaIndia2026-11-03Morlong Associates NEW15Asiya Javayant
1039Octavia A GillianRussia2026-11-01Rousseaux, Michael Esq NEGOTIATION15Elwin Sharvill
1040Aruna D KuskoAustralia2026-11-10Morlong Associates QUALIFIED90Ioni Bowcher
1041Tony M SergiBrazil2026-10-13Printing Dimensions QUALIFIED71Amy Elsner
1042Adams Q CaudyRussia2026-11-05Buckley Miller Wright NEGOTIATION31Xuxue Feng
1043Wickens W PerinAustralia2026-10-15Rangoni Of Florence RENEWAL92Elwin Sharvill
1044Munro X VocelkaAustralia2026-10-29Rangoni Of Florence NEW55Xuxue Feng
1045Mujtaba D MaletArgentina2026-11-02Rangoni Of Florence NEW73Bernardo Dominic
1046Ricardo D CampainItaly2026-11-06Benton, John B Jr UNQUALIFIED67Elwin Sharvill
1047Maria X StockhamItaly2026-10-13Benton, John B Jr NEGOTIATION15Asiya Javayant
1048Misaki S AlbaresGermany2026-10-27Rangoni Of Florence NEGOTIATION8Onyama Limba
1049Cody W GarufiJapan2026-10-14Morlong Associates PROPOSAL1Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ricardo A RutaUnited KingdomStephen Shaw UNQUALIFIED
Smith H ShinkoItalyAnna Fali UNQUALIFIED
Leja M ChuiCanadaBernardo Dominic PROPOSAL
Emily A MorascaArgentinaElwin Sharvill NEGOTIATION
David H KolmetzJapanIoni Bowcher NEW
Morrow X KuskoRussiaStephen Shaw RENEWAL
Octavia L GauchoUnited KingdomElwin Sharvill NEW
Costa Z GarufiSpainOnyama Limba NEW
Greenwood V DarakjyGermanyAmy Elsner PROPOSAL
Rodrigues P DilliardFranceIoni Bowcher PROPOSAL
Smith W MaletGermanyAnna Fali PROPOSAL
Juan V FollerJapanAsiya Javayant QUALIFIED
Juan E WhobreyUnited KingdomElwin Sharvill PROPOSAL
Ivar E ButtCanadaAmy Elsner NEW
Chavez I NickaFranceAnna Fali NEW
Salvatore D SaylorsAustraliaAmy Elsner PROPOSAL
Munro P BologniaArgentinaAsiya Javayant NEGOTIATION
Jeanfrancois Q FigeroaCanadaIvan Magalhaes UNQUALIFIED
Faith W StensethJapanBernardo Dominic NEW
Jennifer X FigeroaBrazilAsiya Javayant NEGOTIATION
Silvio L VenereIndiaAmy Elsner RENEWAL
Tony M RulapaughIndiaOnyama Limba UNQUALIFIED
Mujtaba H FerenczCanadaAmy Elsner UNQUALIFIED
Maisha N FigeroaUnited KingdomStephen Shaw NEGOTIATION
Smith X FollerCanadaStephen Shaw RENEWAL
Antonio A DoeBrazilElwin Sharvill PROPOSAL
Jennifer Q MarrierGermanyAnna Fali QUALIFIED
Antonio Q ShinkoAustraliaIoni Bowcher PROPOSAL
Octavia L RimRussiaAsiya Javayant PROPOSAL
Ivar Q WaycottArgentinaAnna Fali PROPOSAL
Ivar K BriddickBrazilStephen Shaw NEW
Kadeem L FigeroaUnited KingdomAsiya Javayant PROPOSAL
Leon A VocelkaArgentinaElwin Sharvill NEGOTIATION
Cody A MorascaRussiaAnna Fali RENEWAL
Faith Z ButtFranceElwin Sharvill UNQUALIFIED
Johnson U CaldareraUnited KingdomOnyama Limba RENEWAL
Sinclair P CaudyIndiaAnna Fali RENEWAL
Chavez M DoeRussiaAnna Fali PROPOSAL
Arvin D PaprockiUnited KingdomXuxue Feng UNQUALIFIED
Mujtaba B FollerArgentinaStephen Shaw NEW
Nicolas M AmigonUnited KingdomStephen Shaw NEGOTIATION
Leja L PerinRussiaIvan Magalhaes NEGOTIATION
Deepesh S FlosiSpainBernardo Dominic RENEWAL
Adams H WieserJapanIvan Magalhaes RENEWAL
Greenwood E MaletIndiaXuxue Feng UNQUALIFIED
Izzy Y ButtIndiaAnna Fali QUALIFIED
Smith H IturbideArgentinaStephen Shaw RENEWAL
Maisha A FlosiFranceBernardo Dominic QUALIFIED
Maisha P PaprockiUnited KingdomBernardo Dominic NEW
Jeanfrancois V BologniaArgentinaAsiya Javayant RENEWAL
Frozen Columns
Name
Aditya I Chui
Tony M Oldroyd
Aika G Perin
Leja Y Dilliard
Morrow H Campain
Rodrigues J Iturbide
Alejandro Z Stenseth
Aruna W Bolognia
Aruna K Amigon
Kadeem K Gaucho
Leon S Rulapaugh
Munro R Poquette
Izzy Z Malet
Izzy X Wieser
Jennifer Q Doe
David Y Doe
Silvio H Albares
Ricardo V Royster
Tony I Schemmer
Nicolas E Kusko
Adams S Inouye
Nicolas O Butt
Juan D Dilliard
Rodrigues M Darakjy
Maria Y Darakjy
Claire G Glick
Aika V Marrier
Arvin Q Gaucho
Mujtaba G Rulapaugh
Deepesh U Kolmetz
Jefferson B Oldroyd
Antonio R Iturbide
Maisha L Tollner
David P Amigon
Silvio X Poquette
Isabel U Venere
Deepesh O Vocelka
Mayumi L Royster
Johnson T Nestle
Johnson P Vocelka
Sinclair L Flosi
Ricardo Y Vocelka
Octavia A Stockham
Nicolas N Ostrosky
Mujtaba T Caldarera
Ricardo J Nicka
Misaki E Malet
Morrow G Figeroa
Sinclair U Rulapaugh
Johnson K Albares
IdCountryDate
1000Australia2026-10-27
1001India2026-10-20
1002Russia2026-11-10
1003Canada2026-11-09
1004Argentina2026-10-19
1005United Kingdom2026-10-29
1006Argentina2026-10-23
1007Italy2026-11-04
1008United Kingdom2026-10-26
1009Canada2026-10-20
1010India2026-11-03
1011Germany2026-10-24
1012Australia2026-10-30
1013Italy2026-10-29
1014Canada2026-11-01
1015Germany2026-11-01
1016France2026-10-21
1017Japan2026-10-29
1018Canada2026-10-12
1019India2026-11-04
1020Argentina2026-10-28
1021Japan2026-11-01
1022United Kingdom2026-11-07
1023India2026-11-07
1024Germany2026-10-18
1025Spain2026-11-09
1026Russia2026-10-20
1027Brazil2026-11-06
1028Canada2026-11-07
1029Brazil2026-10-25
1030Spain2026-10-15
1031United Kingdom2026-10-23
1032United Kingdom2026-10-19
1033Japan2026-11-04
1034Russia2026-11-07
1035Japan2026-11-10
1036Germany2026-11-08
1037Spain2026-10-23
1038Australia2026-10-12
1039France2026-10-23
1040Argentina2026-10-12
1041Spain2026-11-10
1042Japan2026-10-29
1043Argentina2026-10-13
1044Brazil2026-10-19
1045Brazil2026-10-21
1046Italy2026-10-23
1047United Kingdom2026-10-23
1048Brazil2026-11-09
1049India2026-10-12

On-Demand Data

NameIdCountryDate
Faith G Gaucho1000Germany2026-10-18
Cody X Malet1001Argentina2026-10-26
Chavez A Albares1002India2026-11-01
Isabel I Ruta1003United Kingdom2026-10-21
Stacey V Slusarski1004Russia2026-11-04
Julie C Poquette1005Russia2026-10-25
Misaki B Tollner1006Germany2026-10-21
Costa H Tollner1007Spain2026-10-15
Jefferson T Waycott1008United Kingdom2026-10-29
Greenwood M Whobrey1009Brazil2026-10-14
Munro I Butt1010Germany2026-11-10
Darci A Nestle1011Russia2026-10-29
Izzy B Stenseth1012France2026-10-23
Murillo E Vocelka1013Japan2026-10-14
Antonio Z Maclead1014France2026-11-07
Leon W Shinko1015Argentina2026-10-14
Ashley K Nestle1016Brazil2026-10-27
Stacey Z Chui1017Japan2026-11-05
Johnson D Glick1018Germany2026-10-18
Tony Z Stenseth1019Argentina2026-10-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna Z KuskoJapanOnyama Limba QUALIFIED
James O MaletSpainAnna Fali RENEWAL
Octavia X MarrierIndiaIoni Bowcher UNQUALIFIED
Murillo F TollnerAustraliaStephen Shaw RENEWAL
Misaki R RoysterAustraliaXuxue Feng RENEWAL
Aruna Q PerinGermanyBernardo Dominic PROPOSAL
David H OldroydSpainXuxue Feng PROPOSAL
Clifford S FigeroaIndiaIvan Magalhaes PROPOSAL
Francesco S DilliardGermanyStephen Shaw RENEWAL
Smith T VocelkaBrazilAmy Elsner UNQUALIFIED
Chavez C CampainUnited KingdomAmy Elsner QUALIFIED
Adams D DarakjyGermanyIoni Bowcher NEGOTIATION
Izzy R AmigonRussiaXuxue Feng QUALIFIED
Chavez H FigeroaRussiaOnyama Limba NEW
Nicolas G InouyeAustraliaElwin Sharvill PROPOSAL
Aditya P MorascaIndiaStephen Shaw QUALIFIED
Faith I MaletSpainOnyama Limba PROPOSAL
Greenwood O GlickItalyIvan Magalhaes NEW
Aruna J RimCanadaOnyama Limba RENEWAL
Rodrigues X RutaIndiaAsiya Javayant RENEWAL
Mujtaba R FollerAustraliaAnna Fali NEGOTIATION
Stacey F NestleCanadaIvan Magalhaes NEW
Cody J AlbaresUnited KingdomStephen Shaw PROPOSAL
Tony Z BriddickArgentinaAnna Fali RENEWAL
Ricardo V PerinRussiaIvan Magalhaes NEGOTIATION
Cody D StensethBrazilXuxue Feng UNQUALIFIED
Aika T DoeCanadaAmy Elsner UNQUALIFIED
Faith N AmigonArgentinaXuxue Feng UNQUALIFIED
Aika I NestleIndiaBernardo Dominic PROPOSAL
Jeanfrancois Z StensethAustraliaAnna Fali NEW
Julie J MorascaJapanBernardo Dominic NEGOTIATION
Costa L SchemmerItalyStephen Shaw PROPOSAL
Julie C GauchoRussiaAsiya Javayant NEGOTIATION
Isabel P DarakjySpainAsiya Javayant NEGOTIATION
Antonio P CampainCanadaAnna Fali QUALIFIED
Leon L RutaSpainStephen Shaw NEW
Claire N CampainArgentinaAsiya Javayant PROPOSAL
Leja N MaletCanadaStephen Shaw RENEWAL
Jefferson J VocelkaFranceXuxue Feng NEGOTIATION
Clifford C RoysterCanadaOnyama Limba 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>