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
Jennifer X MaletItalyStephen Shaw PROPOSAL
Murillo I OstroskyGermanyAmy Elsner NEGOTIATION
Ashley Z VocelkaArgentinaAnna Fali PROPOSAL
Alejandro E MarrierItalyAmy Elsner NEGOTIATION
Izzy C GillianSpainIoni Bowcher UNQUALIFIED
Leja V StensethFranceAmy Elsner QUALIFIED
Mujtaba N SchemmerJapanBernardo Dominic UNQUALIFIED
Stacey L VenereRussiaXuxue Feng RENEWAL
Alejandro R MaletJapanElwin Sharvill NEW
Alejandro E RoysterGermanyStephen Shaw NEGOTIATION
Julie P GauchoUnited KingdomElwin Sharvill UNQUALIFIED
Morrow D BriddickBrazilIvan Magalhaes RENEWAL
Ashley K GlickGermanyAnna Fali NEW
Kadeem F KuskoJapanAsiya Javayant QUALIFIED
Mayumi K SaylorsItalyAnna Fali UNQUALIFIED
Isabel U AlbaresArgentinaOnyama Limba NEW
Morrow T NickaRussiaAmy Elsner UNQUALIFIED
Faith G MarrierBrazilIoni Bowcher RENEWAL
Kaitlin Z RimUnited KingdomAmy Elsner UNQUALIFIED
Salvatore A CampainBrazilBernardo Dominic RENEWAL
Leja B MorascaBrazilIoni Bowcher PROPOSAL
Octavia S KuskoJapanAnna Fali RENEWAL
Tony Z StensethBrazilStephen Shaw PROPOSAL
Murillo U MaletIndiaIoni Bowcher NEW
Alejandro Q StockhamRussiaElwin Sharvill PROPOSAL
Misaki R KuskoRussiaElwin Sharvill PROPOSAL
Munro M SergiRussiaBernardo Dominic NEGOTIATION
Emily T StockhamAustraliaElwin Sharvill UNQUALIFIED
Silvio A GlickCanadaAmy Elsner NEW
Ivar N VocelkaBrazilIvan Magalhaes UNQUALIFIED
Jones N RutaUnited KingdomIvan Magalhaes QUALIFIED
Leja P BowleyAustraliaOnyama Limba NEGOTIATION
Alejandro W DoeUnited KingdomStephen Shaw QUALIFIED
Isabel X DilliardGermanyStephen Shaw RENEWAL
Izzy G MarrierUnited KingdomElwin Sharvill UNQUALIFIED
Mujtaba T DarakjyArgentinaStephen Shaw RENEWAL
Ashley S FlosiIndiaIvan Magalhaes NEGOTIATION
Costa B DilliardRussiaIvan Magalhaes NEW
Clifford J WieserItalyAsiya Javayant NEGOTIATION
Adams J PerinRussiaAsiya Javayant NEW
Munro R OldroydAustraliaAsiya Javayant NEW
Misaki S AlbaresUnited KingdomIvan Magalhaes PROPOSAL
Kadeem T CaldareraIndiaXuxue Feng NEW
Cody H BologniaSpainIoni Bowcher QUALIFIED
Smith S SaylorsItalyAnna Fali RENEWAL
Rodrigues E CaudyBrazilStephen Shaw QUALIFIED
Aditya Q DilliardArgentinaElwin Sharvill QUALIFIED
Leja E FerenczIndiaIvan Magalhaes PROPOSAL
David W StockhamCanadaXuxue Feng QUALIFIED
Clifford T BologniaItalyXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Claire C BriddickAustraliaIoni Bowcher NEGOTIATION
Leja O TollnerItalyBernardo Dominic NEGOTIATION
Claire U SchemmerJapanOnyama Limba PROPOSAL
Darci L KuskoSpainIoni Bowcher NEGOTIATION
Maisha S StensethUnited KingdomAnna Fali NEW
Munro Y StockhamCanadaElwin Sharvill NEW
Aditya T VocelkaJapanAnna Fali UNQUALIFIED
Wickens H MarrierBrazilStephen Shaw PROPOSAL
Jefferson D GauchoJapanAmy Elsner UNQUALIFIED
Jones W AmigonUnited KingdomStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan U BowleyItaly2026-09-10Chapman, Ross E Esq NEGOTIATION93Asiya Javayant
1001Jennifer R GlickCanada2026-10-05Dorl, James J Esq QUALIFIED20Stephen Shaw
1002Arvin Q MarrierGermany2026-09-24Chemel, James L Cpa PROPOSAL7Anna Fali
1003Jefferson T NestleCanada2026-09-28Commercial Press NEGOTIATION88Anna Fali
1004Sinclair L DarakjySpain2026-09-16Truhlar And Truhlar Attys QUALIFIED30Ioni Bowcher
1005James V BriddickItaly2026-09-18Chapman, Ross E Esq NEW45Asiya Javayant
1006Mujtaba U WieserIndia2026-10-04Truhlar And Truhlar Attys RENEWAL39Amy Elsner
1007Jefferson U ChuiIndia2026-09-28Printing Dimensions NEW59Bernardo Dominic
1008Murillo S FollerIndia2026-09-26Printing Dimensions NEW72Anna Fali
1009Maisha G IturbideUnited Kingdom2026-09-11Rangoni Of Florence QUALIFIED69Onyama Limba
1010Salvatore I BriddickItaly2026-10-05Dorl, James J Esq NEW96Asiya Javayant
1011Nicolas K FollerIndia2026-09-18Feltz Printing Service PROPOSAL52Onyama Limba
1012Nicolas S StockhamCanada2026-10-03Rangoni Of Florence NEW35Onyama Limba
1013Rodrigues F DilliardUnited Kingdom2026-09-26Chanay, Jeffrey A Esq NEGOTIATION99Amy Elsner
1014Chavez K RimItaly2026-10-02Dorl, James J Esq NEGOTIATION3Anna Fali
1015Leon D ShinkoCanada2026-10-01Printing Dimensions NEW44Onyama Limba
1016Aditya R CaudySpain2026-09-26Buckley Miller Wright RENEWAL77Stephen Shaw
1017Antonio L CaudyFrance2026-10-08Printing Dimensions RENEWAL29Anna Fali
1018Darci F WieserUnited Kingdom2026-09-27Rangoni Of Florence NEGOTIATION68Onyama Limba
1019Leja Z PoquetteArgentina2026-09-29Chanay, Jeffrey A Esq PROPOSAL64Xuxue Feng
1020Jones E DoeSpain2026-10-03King, Christopher A Esq NEW94Stephen Shaw
1021Darci L CaudyFrance2026-09-24Morlong Associates NEGOTIATION18Ivan Magalhaes
1022Jennifer Q AmigonAustralia2026-10-06Rousseaux, Michael Esq PROPOSAL20Anna Fali
1023Deepesh S DarakjyGermany2026-09-29Buckley Miller Wright PROPOSAL35Asiya Javayant
1024Silvio B RulapaughRussia2026-09-26King, Christopher A Esq PROPOSAL21Ivan Magalhaes
1025Mujtaba L TollnerIndia2026-09-13Buckley Miller Wright RENEWAL60Bernardo Dominic
1026Costa U PerinRussia2026-09-24Feltz Printing Service PROPOSAL79Elwin Sharvill
1027Rodrigues Q SlusarskiFrance2026-10-04Benton, John B Jr UNQUALIFIED26Onyama Limba
1028Isabel W AlbaresItaly2026-09-23Buckley Miller Wright NEW71Ivan Magalhaes
1029Octavia V StensethGermany2026-09-24Chanay, Jeffrey A Esq NEW1Asiya Javayant
1030Smith P IturbideAustralia2026-09-18Chanay, Jeffrey A Esq PROPOSAL80Anna Fali
1031Costa S GlickJapan2026-10-09Feltz Printing Service RENEWAL63Ivan Magalhaes
1032Tony U RoysterSpain2026-09-28Chanay, Jeffrey A Esq NEW27Onyama Limba
1033Jeanfrancois W GarufiBrazil2026-09-26Chemel, James L Cpa PROPOSAL98Amy Elsner
1034Munro R GillianFrance2026-09-27Chemel, James L Cpa RENEWAL94Ivan Magalhaes
1035Wickens D WieserArgentina2026-09-10Buckley Miller Wright RENEWAL66Onyama Limba
1036Izzy Z KuskoBrazil2026-09-18Chapman, Ross E Esq UNQUALIFIED47Anna Fali
1037Leja C DarakjyRussia2026-09-22King, Christopher A Esq UNQUALIFIED12Stephen Shaw
1038Emily Z IturbideRussia2026-09-24Rousseaux, Michael Esq PROPOSAL99Asiya Javayant
1039Darci M WaycottCanada2026-09-13Feiner Bros NEW50Anna Fali
1040Aruna N CaldareraUnited Kingdom2026-09-21Feiner Bros NEGOTIATION57Stephen Shaw
1041Salvatore Y KolmetzSpain2026-09-11Chanay, Jeffrey A Esq PROPOSAL41Ivan Magalhaes
1042Octavia F MaletSpain2026-09-26Printing Dimensions QUALIFIED72Elwin Sharvill
1043Costa J OldroydCanada2026-09-13Benton, John B Jr RENEWAL13Anna Fali
1044Darci C ChuiItaly2026-09-12Printing Dimensions NEGOTIATION43Ivan Magalhaes
1045Johnson R RoysterRussia2026-10-08Benton, John B Jr NEGOTIATION21Amy Elsner
1046Aika Y TollnerFrance2026-09-20Commercial Press PROPOSAL64Elwin Sharvill
1047Leon B WaycottSpain2026-09-23Chanay, Jeffrey A Esq NEGOTIATION85Elwin Sharvill
1048Murillo I NestleIndia2026-09-18Rangoni Of Florence PROPOSAL86Ivan Magalhaes
1049Nicolas A DoeFrance2026-09-29Benton, John B Jr UNQUALIFIED2Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Arvin D GauchoFranceIoni Bowcher RENEWAL
Deepesh B FerenczJapanAsiya Javayant RENEWAL
Greenwood U GlickCanadaIoni Bowcher QUALIFIED
Isabel K WieserItalyElwin Sharvill NEW
Kaitlin Z SergiArgentinaAsiya Javayant RENEWAL
Cody Z MaletBrazilIvan Magalhaes PROPOSAL
Stacey B MacleadItalyXuxue Feng RENEWAL
Chavez B TollnerGermanyIoni Bowcher UNQUALIFIED
Isabel B RoysterCanadaAmy Elsner RENEWAL
Kaitlin D WieserGermanyIvan Magalhaes QUALIFIED
Nicolas E TollnerRussiaIoni Bowcher NEW
Smith X PoquetteGermanyElwin Sharvill NEGOTIATION
Salvatore P ChuiBrazilIvan Magalhaes UNQUALIFIED
Izzy P WhobreyCanadaIoni Bowcher UNQUALIFIED
Sinclair A GauchoJapanOnyama Limba QUALIFIED
Kaitlin A WhobreyBrazilOnyama Limba NEGOTIATION
Greenwood K MaletIndiaAmy Elsner NEW
Sinclair X NickaFranceElwin Sharvill QUALIFIED
Aruna N FollerUnited KingdomElwin Sharvill PROPOSAL
Wickens W BriddickArgentinaXuxue Feng UNQUALIFIED
Ricardo O SlusarskiCanadaElwin Sharvill UNQUALIFIED
Maisha E MaletRussiaBernardo Dominic QUALIFIED
Izzy S PoquetteGermanyBernardo Dominic NEGOTIATION
Sinclair V OldroydFranceOnyama Limba NEW
Smith J NestleIndiaOnyama Limba QUALIFIED
Isabel G BowleyGermanyAnna Fali PROPOSAL
Kadeem Y GlickArgentinaStephen Shaw NEW
Smith Y StensethFranceBernardo Dominic PROPOSAL
Wickens K VenereJapanElwin Sharvill QUALIFIED
Nicolas C GillianItalyElwin Sharvill NEGOTIATION
Murillo K WhobreyCanadaAsiya Javayant QUALIFIED
Adams Z ShinkoBrazilAmy Elsner UNQUALIFIED
Sinclair Q VocelkaUnited KingdomIvan Magalhaes RENEWAL
Octavia L BologniaSpainIoni Bowcher QUALIFIED
Jennifer G WieserGermanyIvan Magalhaes UNQUALIFIED
Costa N SaylorsRussiaOnyama Limba PROPOSAL
Alejandro U PerinBrazilAmy Elsner PROPOSAL
Jennifer X RimFranceAsiya Javayant NEW
Nicolas H PerinGermanyIoni Bowcher RENEWAL
Rodrigues W DarakjyUnited KingdomIvan Magalhaes RENEWAL
Jeanfrancois O PaprockiJapanXuxue Feng UNQUALIFIED
Octavia W GillianCanadaOnyama Limba RENEWAL
Darci M GlickAustraliaIvan Magalhaes RENEWAL
Maria X WieserCanadaXuxue Feng RENEWAL
Adams X RulapaughBrazilAsiya Javayant QUALIFIED
Alejandro N MaletUnited KingdomIoni Bowcher RENEWAL
Leon I DarakjyCanadaOnyama Limba QUALIFIED
Ivar F WieserItalyAmy Elsner RENEWAL
Johnson V SlusarskiBrazilIoni Bowcher PROPOSAL
Greenwood S StensethBrazilAnna Fali QUALIFIED
Frozen Columns
Name
Greenwood A Poquette
Silvio B Iturbide
Cody T Marrier
Stacey N Caudy
Morrow F Stenseth
Adams U Perin
Emily O Whobrey
Ricardo Q Saylors
Julie O Ostrosky
Greenwood M Iturbide
Ashley B Campain
Izzy H Caudy
Jeanfrancois H Schemmer
Alejandro W Albares
Leon Q Morasca
Stacey W Foller
Jefferson U Amigon
Morrow Q Bolognia
Juan R Poquette
Wickens C Perin
Juan I Gaucho
Deepesh A Venere
Clifford F Venere
Deepesh E Ferencz
Octavia X Chui
Deepesh U Rim
Stacey Q Glick
Juan G Glick
Costa H Caldarera
Leja P Dilliard
Wickens S Rulapaugh
Aditya Q Caudy
Jeanfrancois S Tollner
James Q Malet
Murillo K Rulapaugh
Salvatore S Schemmer
Ivar Y Saylors
Antonio P Ostrosky
Nicolas D Bowley
Mujtaba J Sergi
Ashley N Doe
Isabel J Tollner
Wickens D Foller
Jeanfrancois H Doe
Costa B Flosi
Ricardo L Ostrosky
Clifford A Caldarera
Deepesh H Kolmetz
Claire B Garufi
Leon G Waycott
IdCountryDate
1000Japan2026-09-14
1001France2026-09-22
1002Germany2026-09-20
1003France2026-09-13
1004Australia2026-09-29
1005Japan2026-10-07
1006Spain2026-09-19
1007Argentina2026-10-05
1008India2026-09-13
1009Brazil2026-09-28
1010Brazil2026-09-14
1011Italy2026-09-30
1012Canada2026-09-30
1013Brazil2026-10-06
1014Australia2026-10-09
1015India2026-10-02
1016United Kingdom2026-10-03
1017Canada2026-10-08
1018Spain2026-10-04
1019Spain2026-09-25
1020India2026-09-25
1021India2026-09-28
1022Canada2026-09-25
1023Germany2026-10-05
1024France2026-09-24
1025Russia2026-09-20
1026Argentina2026-10-06
1027Canada2026-09-28
1028Spain2026-10-02
1029Spain2026-09-22
1030Brazil2026-10-02
1031India2026-09-17
1032Brazil2026-10-07
1033Japan2026-09-26
1034Spain2026-09-10
1035Australia2026-09-19
1036Italy2026-09-14
1037Argentina2026-09-22
1038India2026-09-23
1039India2026-10-02
1040Brazil2026-09-10
1041France2026-09-12
1042Germany2026-09-29
1043Italy2026-09-28
1044Spain2026-09-12
1045Spain2026-09-20
1046Russia2026-09-19
1047Germany2026-10-02
1048Australia2026-09-28
1049Canada2026-09-18

On-Demand Data

NameIdCountryDate
Murillo D Bolognia1000Japan2026-09-15
Aruna P Foller1001Germany2026-10-03
Arvin K Waycott1002Australia2026-10-02
Alejandro O Foller1003Canada2026-09-22
Tony L Poquette1004Spain2026-09-30
Jennifer H Nicka1005Brazil2026-09-26
Ashley P Royster1006Russia2026-09-18
Francesco T Flosi1007India2026-10-09
Johnson D Ruta1008Canada2026-09-27
Isabel D Doe1009France2026-09-11
Leon V Gillian1010India2026-09-22
Mujtaba R Gaucho1011Japan2026-09-11
Salvatore C Gaucho1012Brazil2026-09-22
Ashley H Darakjy1013Japan2026-09-27
Greenwood Y Darakjy1014France2026-09-23
Jefferson N Nestle1015Italy2026-10-04
Salvatore J Garufi1016Spain2026-09-10
Jefferson Z Ruta1017United Kingdom2026-09-17
Munro D Gaucho1018Japan2026-09-19
Ashley O Dilliard1019United Kingdom2026-09-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy H KolmetzUnited KingdomIoni Bowcher UNQUALIFIED
Greenwood E VocelkaJapanAnna Fali NEW
Jennifer E FollerCanadaAnna Fali UNQUALIFIED
Aditya B GlickUnited KingdomElwin Sharvill RENEWAL
Wickens Q PoquetteSpainStephen Shaw NEW
Munro B SergiSpainIoni Bowcher NEGOTIATION
Alejandro J VocelkaSpainElwin Sharvill NEW
Juan F AlbaresGermanyAnna Fali QUALIFIED
Claire C SlusarskiRussiaXuxue Feng NEGOTIATION
Jones W PaprockiGermanyAmy Elsner PROPOSAL
Kadeem G ShinkoRussiaOnyama Limba PROPOSAL
Misaki D DoeJapanAsiya Javayant RENEWAL
Darci Y SchemmerItalyBernardo Dominic RENEWAL
Sinclair D IturbideFranceOnyama Limba NEGOTIATION
Maisha P MarrierIndiaAmy Elsner NEGOTIATION
Juan O VocelkaItalyXuxue Feng PROPOSAL
Silvio R DilliardIndiaIvan Magalhaes NEGOTIATION
Salvatore M WaycottIndiaAsiya Javayant PROPOSAL
Arvin N IturbideAustraliaAmy Elsner UNQUALIFIED
Rodrigues M WieserUnited KingdomIoni Bowcher RENEWAL
Aditya I DarakjyItalyElwin Sharvill QUALIFIED
Izzy L AmigonSpainAmy Elsner RENEWAL
Maria N WhobreyRussiaIvan Magalhaes QUALIFIED
Mujtaba H PoquetteIndiaIoni Bowcher NEW
Adams E AlbaresItalyAsiya Javayant RENEWAL
Nicolas T WaycottAustraliaAnna Fali NEGOTIATION
Wickens H WhobreyArgentinaAsiya Javayant PROPOSAL
Salvatore X GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Kadeem T NickaJapanElwin Sharvill NEW
Smith R InouyeFranceIvan Magalhaes NEW
Leon L GarufiCanadaElwin Sharvill UNQUALIFIED
Smith R MaletJapanXuxue Feng QUALIFIED
Costa H OstroskyJapanAsiya Javayant QUALIFIED
Deepesh W KolmetzSpainXuxue Feng QUALIFIED
Costa C KolmetzItalyOnyama Limba RENEWAL
Faith O MaletAustraliaStephen Shaw NEGOTIATION
Maisha P FollerBrazilAsiya Javayant NEW
Jennifer S MarrierIndiaAsiya Javayant NEW
Sinclair R CaldareraRussiaAnna Fali NEGOTIATION
Murillo O AlbaresUnited KingdomStephen Shaw 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>