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 V OldroydArgentinaElwin Sharvill NEGOTIATION
Adams Y FlosiCanadaOnyama Limba QUALIFIED
Chavez G RulapaughUnited KingdomIoni Bowcher NEW
Jefferson N PoquetteItalyBernardo Dominic PROPOSAL
Ricardo W StockhamRussiaAmy Elsner RENEWAL
Mayumi S VocelkaGermanyAnna Fali PROPOSAL
Misaki G GauchoSpainBernardo Dominic UNQUALIFIED
Johnson X BologniaGermanyIvan Magalhaes RENEWAL
Octavia B VenereItalyAmy Elsner PROPOSAL
Clifford P GarufiItalyIvan Magalhaes UNQUALIFIED
Alejandro Y RulapaughAustraliaAsiya Javayant NEGOTIATION
Aika H CaudyCanadaElwin Sharvill QUALIFIED
Kaitlin I StensethBrazilBernardo Dominic QUALIFIED
Aika W WaycottSpainAmy Elsner NEGOTIATION
Ricardo N KolmetzUnited KingdomAsiya Javayant NEW
Jones P WieserSpainXuxue Feng UNQUALIFIED
David W VenereRussiaAmy Elsner NEW
Darci P MarrierIndiaIvan Magalhaes QUALIFIED
Ricardo L VocelkaSpainElwin Sharvill QUALIFIED
Morrow X GauchoAustraliaStephen Shaw RENEWAL
Francesco M BowleyIndiaAnna Fali RENEWAL
Claire I MaletBrazilStephen Shaw PROPOSAL
Aika R NestleGermanyAsiya Javayant NEGOTIATION
Johnson F InouyeArgentinaStephen Shaw UNQUALIFIED
Tony P FerenczRussiaAnna Fali NEGOTIATION
Claire X RulapaughJapanAsiya Javayant UNQUALIFIED
Cody S PoquetteItalyElwin Sharvill NEW
Rodrigues Y SchemmerCanadaXuxue Feng NEW
Ivar R NickaUnited KingdomAnna Fali QUALIFIED
Jones F AlbaresGermanyAmy Elsner NEW
Clifford X PoquetteRussiaXuxue Feng NEW
Kadeem T AmigonJapanIoni Bowcher RENEWAL
Jeanfrancois M DoeGermanyAnna Fali PROPOSAL
Leja L CampainArgentinaIoni Bowcher RENEWAL
Kaitlin I BriddickRussiaAsiya Javayant RENEWAL
James K CaudyBrazilXuxue Feng NEW
Murillo L AmigonRussiaAsiya Javayant RENEWAL
Costa R FollerUnited KingdomIoni Bowcher UNQUALIFIED
James Q BriddickFranceStephen Shaw NEGOTIATION
Alejandro E CaldareraRussiaXuxue Feng PROPOSAL
Aruna I WieserItalyStephen Shaw NEW
Adams Y RoysterBrazilAmy Elsner PROPOSAL
Stacey W PerinArgentinaStephen Shaw RENEWAL
Antonio J WaycottArgentinaAmy Elsner QUALIFIED
Izzy A VocelkaItalyXuxue Feng UNQUALIFIED
Mayumi B GlickSpainIoni Bowcher RENEWAL
Mujtaba U BologniaCanadaOnyama Limba UNQUALIFIED
Morrow T RoysterFranceIvan Magalhaes QUALIFIED
Aditya Y SergiIndiaOnyama Limba NEGOTIATION
Mayumi V GarufiUnited KingdomElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Adams C RulapaughGermanyIoni Bowcher QUALIFIED
Aika I RoysterItalyAmy Elsner PROPOSAL
Kadeem A FigeroaGermanyIvan Magalhaes UNQUALIFIED
Ivar B SchemmerGermanyAsiya Javayant PROPOSAL
Jefferson I KuskoAustraliaAnna Fali PROPOSAL
Faith U MacleadIndiaIvan Magalhaes NEGOTIATION
Jennifer Z PoquetteArgentinaElwin Sharvill RENEWAL
Leja F OstroskyUnited KingdomIoni Bowcher PROPOSAL
Rodrigues X RoysterCanadaAnna Fali NEGOTIATION
Francesco A GlickAustraliaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens F NestleJapan2026-09-23Rangoni Of Florence UNQUALIFIED22Anna Fali
1001Octavia C BowleyItaly2026-09-25Chemel, James L Cpa UNQUALIFIED73Asiya Javayant
1002Silvio B CaldareraRussia2026-09-13Rousseaux, Michael Esq UNQUALIFIED39Elwin Sharvill
1003Morrow E SergiUnited Kingdom2026-09-06Dorl, James J Esq QUALIFIED91Amy Elsner
1004Antonio Q GlickFrance2026-09-13Morlong Associates RENEWAL15Ivan Magalhaes
1005James A OldroydGermany2026-09-16Commercial Press PROPOSAL0Xuxue Feng
1006Juan Y VenereRussia2026-10-03Benton, John B Jr PROPOSAL92Onyama Limba
1007Isabel U CaudyUnited Kingdom2026-09-18Truhlar And Truhlar Attys QUALIFIED42Elwin Sharvill
1008Maisha W RoysterFrance2026-09-23King, Christopher A Esq RENEWAL81Xuxue Feng
1009Faith Y ShinkoAustralia2026-09-16Chanay, Jeffrey A Esq RENEWAL9Asiya Javayant
1010Stacey V OldroydFrance2026-09-08Buckley Miller Wright QUALIFIED93Bernardo Dominic
1011Silvio A BriddickIndia2026-09-12Chapman, Ross E Esq PROPOSAL8Elwin Sharvill
1012Tony T VenereJapan2026-09-23Rousseaux, Michael Esq PROPOSAL84Amy Elsner
1013Kaitlin U NickaGermany2026-09-20Feiner Bros QUALIFIED67Elwin Sharvill
1014Morrow T CampainRussia2026-09-17Benton, John B Jr UNQUALIFIED48Xuxue Feng
1015James B BowleyItaly2026-09-27Feiner Bros RENEWAL19Stephen Shaw
1016Johnson N RulapaughFrance2026-09-04Morlong Associates UNQUALIFIED58Ivan Magalhaes
1017Arvin D WaycottItaly2026-09-20Morlong Associates UNQUALIFIED32Xuxue Feng
1018Aruna P StensethRussia2026-09-26Truhlar And Truhlar Attys RENEWAL40Xuxue Feng
1019Nicolas W DilliardFrance2026-10-03Morlong Associates UNQUALIFIED67Amy Elsner
1020Maria I GlickSpain2026-09-04Chemel, James L Cpa UNQUALIFIED65Asiya Javayant
1021Faith J TollnerAustralia2026-09-10Rangoni Of Florence NEW64Stephen Shaw
1022Mujtaba R SlusarskiUnited Kingdom2026-09-07Benton, John B Jr QUALIFIED11Ioni Bowcher
1023Costa G KolmetzArgentina2026-09-11Benton, John B Jr UNQUALIFIED49Stephen Shaw
1024Leja K AlbaresItaly2026-09-18Feiner Bros RENEWAL5Stephen Shaw
1025Claire N FigeroaGermany2026-09-09Chanay, Jeffrey A Esq NEGOTIATION82Ivan Magalhaes
1026Leon U KuskoGermany2026-09-13Feiner Bros UNQUALIFIED80Anna Fali
1027Greenwood V BowleyUnited Kingdom2026-09-24Morlong Associates NEGOTIATION82Xuxue Feng
1028Mujtaba X SlusarskiJapan2026-09-23Chapman, Ross E Esq RENEWAL48Asiya Javayant
1029Aika A AmigonCanada2026-09-12Rousseaux, Michael Esq NEW42Onyama Limba
1030Emily Z GlickAustralia2026-09-22Morlong Associates NEGOTIATION61Stephen Shaw
1031Costa A ButtCanada2026-09-23Morlong Associates UNQUALIFIED22Ioni Bowcher
1032Francesco E BologniaArgentina2026-09-13Rangoni Of Florence UNQUALIFIED32Anna Fali
1033Wickens O KuskoSpain2026-10-02Chapman, Ross E Esq NEW2Xuxue Feng
1034Juan Z CaudyCanada2026-09-21King, Christopher A Esq QUALIFIED10Stephen Shaw
1035Claire X MaletIndia2026-09-11Commercial Press PROPOSAL36Stephen Shaw
1036Wickens L CaudySpain2026-09-21Chemel, James L Cpa QUALIFIED33Ioni Bowcher
1037Juan I WhobreyGermany2026-10-01Feiner Bros UNQUALIFIED26Bernardo Dominic
1038Aruna E TollnerBrazil2026-09-10Chapman, Ross E Esq QUALIFIED48Onyama Limba
1039James Z SchemmerUnited Kingdom2026-09-22Chanay, Jeffrey A Esq NEW31Ioni Bowcher
1040Maria K ChuiCanada2026-09-19Benton, John B Jr PROPOSAL46Bernardo Dominic
1041Faith Z AlbaresBrazil2026-09-10Printing Dimensions PROPOSAL41Onyama Limba
1042Mujtaba D WhobreyIndia2026-09-08Chanay, Jeffrey A Esq RENEWAL49Ivan Magalhaes
1043Isabel S StockhamFrance2026-10-03Rousseaux, Michael Esq RENEWAL3Amy Elsner
1044Clifford X SchemmerUnited Kingdom2026-09-09Chemel, James L Cpa NEW8Ivan Magalhaes
1045Murillo L IturbideArgentina2026-09-07Commercial Press QUALIFIED97Bernardo Dominic
1046Ivar G MacleadUnited Kingdom2026-09-27Dorl, James J Esq QUALIFIED28Ivan Magalhaes
1047Claire I DoeFrance2026-09-16Chemel, James L Cpa NEW67Bernardo Dominic
1048Antonio B InouyeRussia2026-09-21Buckley Miller Wright UNQUALIFIED25Asiya Javayant
1049Nicolas J ShinkoIndia2026-09-11Chanay, Jeffrey A Esq NEGOTIATION71Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Aruna M CaudyIndiaStephen Shaw RENEWAL
Smith U WieserBrazilAmy Elsner RENEWAL
Juan O VocelkaItalyIoni Bowcher NEW
Juan K TollnerSpainAnna Fali UNQUALIFIED
Munro H WieserIndiaStephen Shaw PROPOSAL
Claire W KuskoJapanAnna Fali UNQUALIFIED
Kadeem Z ShinkoJapanAsiya Javayant NEGOTIATION
Tony S PerinJapanXuxue Feng QUALIFIED
Jennifer J ChuiFranceAnna Fali UNQUALIFIED
Greenwood O RoysterIndiaIvan Magalhaes PROPOSAL
Emily M ChuiItalyStephen Shaw NEW
Ashley M BologniaJapanAsiya Javayant PROPOSAL
Silvio R MarrierIndiaAmy Elsner NEGOTIATION
Maisha A MarrierIndiaStephen Shaw UNQUALIFIED
Maisha H NickaRussiaStephen Shaw NEGOTIATION
Emily U RutaItalyBernardo Dominic RENEWAL
Costa I TollnerUnited KingdomOnyama Limba QUALIFIED
Stacey M CampainAustraliaOnyama Limba RENEWAL
Aika V CaldareraCanadaStephen Shaw NEGOTIATION
Tony D IturbideFranceBernardo Dominic NEW
James N VenereJapanStephen Shaw NEW
Darci V WhobreySpainOnyama Limba NEGOTIATION
Cody A OldroydSpainElwin Sharvill QUALIFIED
Johnson G RulapaughJapanStephen Shaw QUALIFIED
Nicolas M GlickJapanIoni Bowcher RENEWAL
Clifford W GillianFranceAmy Elsner NEW
Salvatore P InouyeFranceAmy Elsner RENEWAL
Johnson V MaletSpainAmy Elsner RENEWAL
Wickens Q CampainItalyStephen Shaw UNQUALIFIED
Claire S RulapaughItalyIvan Magalhaes NEW
Wickens C ShinkoRussiaIvan Magalhaes NEGOTIATION
Murillo K GlickFranceXuxue Feng NEW
Kadeem X RoysterIndiaIoni Bowcher QUALIFIED
Arvin D NickaArgentinaBernardo Dominic UNQUALIFIED
Adams O SchemmerItalyAmy Elsner RENEWAL
Adams A FerenczArgentinaElwin Sharvill NEW
Chavez N FigeroaBrazilAmy Elsner PROPOSAL
Chavez Q CaudyFranceOnyama Limba NEGOTIATION
Jennifer N DarakjyUnited KingdomOnyama Limba RENEWAL
Rodrigues P BriddickIndiaIoni Bowcher RENEWAL
Maisha T RoysterCanadaBernardo Dominic PROPOSAL
Kaitlin B PerinAustraliaIoni Bowcher PROPOSAL
Jones R RulapaughFranceAsiya Javayant QUALIFIED
Faith U AmigonBrazilStephen Shaw PROPOSAL
Greenwood C CaldareraSpainAsiya Javayant NEGOTIATION
Claire V TollnerFranceElwin Sharvill NEGOTIATION
James S WhobreyJapanStephen Shaw UNQUALIFIED
Julie D GauchoAustraliaAsiya Javayant RENEWAL
Maisha S NestleIndiaElwin Sharvill PROPOSAL
Ricardo C SchemmerBrazilOnyama Limba NEW
Frozen Columns
Name
Stacey R Flosi
Chavez A Foller
Johnson H Inouye
Adams I Butt
Isabel G Kusko
Leon Z Amigon
Rodrigues F Caudy
Emily C Butt
Octavia J Paprocki
Juan P Darakjy
Silvio H Nestle
James Y Figeroa
Aruna K Amigon
Costa P Nicka
Smith H Waycott
Stacey Z Caudy
Darci S Campain
Maria L Royster
Antonio A Kolmetz
Ivar X Darakjy
Izzy I Kusko
Maisha F Tollner
Misaki K Vocelka
Silvio Q Saylors
Sinclair N Ostrosky
Nicolas E Rulapaugh
Francesco Z Ruta
Arvin U Campain
Morrow C Iturbide
David W Bolognia
Izzy J Darakjy
Ashley Y Rulapaugh
Izzy G Shinko
Tony V Gillian
Darci W Stockham
Kadeem O Caudy
Stacey I Stenseth
Jeanfrancois M Tollner
Rodrigues K Waycott
Aika E Ferencz
Mayumi K Nestle
Arvin Z Malet
Clifford X Venere
Jones D Kolmetz
Tony T Morasca
Claire N Figeroa
Salvatore X Caldarera
Stacey Q Sergi
Smith X Poquette
Rodrigues B Oldroyd
IdCountryDate
1000United Kingdom2026-09-12
1001Italy2026-09-18
1002Japan2026-09-30
1003Argentina2026-09-19
1004Germany2026-09-22
1005Australia2026-09-04
1006Japan2026-09-26
1007Italy2026-09-17
1008Italy2026-09-10
1009Spain2026-09-08
1010France2026-09-22
1011Germany2026-10-03
1012Russia2026-09-08
1013Germany2026-09-19
1014Brazil2026-09-11
1015Australia2026-09-09
1016Argentina2026-09-10
1017Argentina2026-09-27
1018United Kingdom2026-09-08
1019Germany2026-09-10
1020United Kingdom2026-09-17
1021Argentina2026-09-19
1022Germany2026-09-28
1023Russia2026-09-23
1024India2026-09-11
1025France2026-09-12
1026Spain2026-10-01
1027Germany2026-09-19
1028India2026-09-06
1029Germany2026-09-22
1030France2026-09-12
1031Russia2026-09-26
1032France2026-09-16
1033Australia2026-10-01
1034Italy2026-09-24
1035Spain2026-09-15
1036Argentina2026-09-23
1037Spain2026-09-15
1038Italy2026-09-29
1039France2026-09-13
1040Spain2026-09-16
1041India2026-09-17
1042Spain2026-09-14
1043Brazil2026-10-01
1044Argentina2026-09-26
1045Germany2026-09-04
1046Australia2026-09-07
1047Japan2026-09-10
1048Canada2026-09-08
1049Canada2026-09-09

On-Demand Data

NameIdCountryDate
Leja F Gaucho1000Russia2026-09-16
Costa H Whobrey1001Spain2026-09-21
Maisha K Waycott1002Germany2026-09-09
Maisha O Malet1003Argentina2026-09-11
Wickens Z Vocelka1004United Kingdom2026-10-01
Adams R Stockham1005India2026-09-29
Ashley R Ruta1006India2026-09-06
Johnson W Albares1007Australia2026-09-09
Smith K Glick1008Brazil2026-09-28
Leja E Oldroyd1009Argentina2026-09-10
Munro R Schemmer1010Italy2026-10-01
Ricardo W Kolmetz1011Russia2026-09-17
Maisha Q Rim1012Canada2026-09-20
Maria F Albares1013India2026-09-22
Ashley D Kolmetz1014Japan2026-09-18
Nicolas X Rulapaugh1015Canada2026-10-02
Kaitlin P Stockham1016Australia2026-09-19
Johnson R Wieser1017Russia2026-09-28
Tony C Caudy1018Brazil2026-09-07
Greenwood U Glick1019Canada2026-10-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin X WaycottUnited KingdomAsiya Javayant PROPOSAL
Jones T MarrierIndiaXuxue Feng QUALIFIED
Leja M DoeItalyStephen Shaw UNQUALIFIED
Rodrigues I VenereGermanyBernardo Dominic UNQUALIFIED
James J RimIndiaOnyama Limba RENEWAL
Antonio I SchemmerArgentinaAsiya Javayant PROPOSAL
Faith H FerenczJapanAmy Elsner RENEWAL
Maisha A CaudyItalyIvan Magalhaes RENEWAL
Morrow A GauchoGermanyBernardo Dominic UNQUALIFIED
Aruna V IturbideIndiaElwin Sharvill RENEWAL
Faith Y GillianUnited KingdomIoni Bowcher PROPOSAL
Maisha F FigeroaArgentinaStephen Shaw QUALIFIED
Silvio H ChuiItalyOnyama Limba RENEWAL
Mujtaba C RimBrazilIoni Bowcher QUALIFIED
Kadeem X KuskoJapanElwin Sharvill NEW
Kaitlin T FerenczFranceElwin Sharvill NEW
Misaki T NestleAustraliaElwin Sharvill PROPOSAL
Ashley K ShinkoCanadaOnyama Limba NEW
Isabel G GauchoArgentinaAsiya Javayant QUALIFIED
Ricardo S IturbideJapanStephen Shaw NEGOTIATION
Maisha L ButtGermanyStephen Shaw QUALIFIED
Sinclair N FlosiIndiaIoni Bowcher PROPOSAL
Smith N AmigonCanadaIoni Bowcher NEW
Cody D PoquetteGermanyBernardo Dominic NEGOTIATION
Sinclair R MarrierFranceElwin Sharvill UNQUALIFIED
Maria W StensethJapanAmy Elsner QUALIFIED
Jefferson L NestleUnited KingdomAmy Elsner NEW
Kaitlin F MaletAustraliaAnna Fali NEGOTIATION
Arvin Q VocelkaGermanyAnna Fali PROPOSAL
Aika C SaylorsIndiaXuxue Feng PROPOSAL
Wickens T ShinkoRussiaElwin Sharvill RENEWAL
Stacey C BologniaIndiaElwin Sharvill NEW
Greenwood I NickaBrazilElwin Sharvill NEGOTIATION
Jennifer X BowleyRussiaXuxue Feng NEW
Stacey B MaletBrazilStephen Shaw UNQUALIFIED
Stacey L WaycottSpainAnna Fali PROPOSAL
Misaki I DoeUnited KingdomAsiya Javayant QUALIFIED
Nicolas H ButtSpainElwin Sharvill QUALIFIED
Mayumi U NickaBrazilIvan Magalhaes QUALIFIED
Aruna R FigeroaIndiaAnna Fali 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>