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
Johnson Z RoysterArgentinaXuxue Feng PROPOSAL
Juan X GarufiFranceAmy Elsner UNQUALIFIED
Juan U GauchoItalyXuxue Feng UNQUALIFIED
James Q TollnerArgentinaXuxue Feng NEGOTIATION
David V BologniaBrazilIvan Magalhaes UNQUALIFIED
Cody D AmigonIndiaBernardo Dominic NEW
Izzy I RimUnited KingdomIoni Bowcher RENEWAL
Alejandro G InouyeGermanyXuxue Feng PROPOSAL
Smith O NickaFranceIvan Magalhaes NEGOTIATION
Adams Z WhobreyRussiaStephen Shaw UNQUALIFIED
Francesco R RoysterBrazilAnna Fali UNQUALIFIED
Deepesh E PoquetteArgentinaIoni Bowcher UNQUALIFIED
Chavez S IturbideRussiaStephen Shaw RENEWAL
Isabel R RimItalyAsiya Javayant QUALIFIED
Alejandro N StockhamJapanAmy Elsner NEGOTIATION
Jones M ShinkoCanadaAsiya Javayant QUALIFIED
Clifford P KolmetzSpainAnna Fali UNQUALIFIED
Faith L SergiRussiaIoni Bowcher RENEWAL
Leja D ShinkoIndiaIoni Bowcher PROPOSAL
Claire P GauchoSpainIoni Bowcher PROPOSAL
Maisha D CaldareraGermanyAsiya Javayant QUALIFIED
Murillo M NestleSpainIoni Bowcher UNQUALIFIED
Aruna V StensethArgentinaAsiya Javayant PROPOSAL
Claire W StockhamItalyStephen Shaw RENEWAL
Jennifer A FerenczArgentinaIvan Magalhaes RENEWAL
Deepesh P DoeJapanXuxue Feng QUALIFIED
Aika F AmigonRussiaAsiya Javayant RENEWAL
Jefferson H PaprockiUnited KingdomIoni Bowcher PROPOSAL
Mujtaba X KolmetzJapanBernardo Dominic RENEWAL
Izzy R KuskoCanadaAsiya Javayant UNQUALIFIED
Darci L BriddickUnited KingdomIvan Magalhaes PROPOSAL
Greenwood L StockhamCanadaIoni Bowcher NEGOTIATION
Mayumi E ButtUnited KingdomStephen Shaw NEGOTIATION
Aika H WieserFranceBernardo Dominic NEGOTIATION
Stacey K PaprockiIndiaElwin Sharvill NEGOTIATION
Izzy B CaldareraAustraliaBernardo Dominic QUALIFIED
Octavia M PerinItalyIoni Bowcher NEGOTIATION
Leon D PerinJapanElwin Sharvill QUALIFIED
Ashley E FollerGermanyXuxue Feng UNQUALIFIED
Mayumi Q WieserAustraliaIvan Magalhaes QUALIFIED
Emily K RutaSpainIvan Magalhaes NEGOTIATION
Tony H RoysterCanadaBernardo Dominic NEGOTIATION
Francesco G RutaSpainAmy Elsner NEGOTIATION
Sinclair K KuskoArgentinaStephen Shaw UNQUALIFIED
Ivar V NickaBrazilAnna Fali UNQUALIFIED
Izzy U TollnerArgentinaXuxue Feng UNQUALIFIED
Aika F FigeroaSpainElwin Sharvill QUALIFIED
Leja Y AlbaresRussiaAnna Fali PROPOSAL
Julie M RutaUnited KingdomXuxue Feng PROPOSAL
Faith Q VocelkaArgentinaIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Chavez T MarrierItalyAmy Elsner NEGOTIATION
Ricardo A GauchoJapanAsiya Javayant PROPOSAL
Jennifer N IturbideAustraliaXuxue Feng PROPOSAL
Julie I RimAustraliaXuxue Feng NEW
Maisha O FerenczItalyIvan Magalhaes NEGOTIATION
Cody L PoquetteRussiaStephen Shaw NEW
Jefferson B StockhamIndiaAmy Elsner UNQUALIFIED
Jones M GauchoGermanyOnyama Limba PROPOSAL
Jones L ShinkoIndiaStephen Shaw RENEWAL
Ivar O SergiRussiaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria O OldroydBrazil2026-11-01Truhlar And Truhlar Attys RENEWAL70Stephen Shaw
1001Jefferson O GillianAustralia2026-11-10Buckley Miller Wright NEW68Asiya Javayant
1002Juan Y NestleJapan2026-11-11Feltz Printing Service NEW8Amy Elsner
1003Octavia F NestleJapan2026-11-02Morlong Associates QUALIFIED4Onyama Limba
1004Silvio G AlbaresBrazil2026-11-11Commercial Press RENEWAL88Anna Fali
1005Mayumi T FerenczFrance2026-11-05Benton, John B Jr QUALIFIED62Bernardo Dominic
1006Kadeem T MaletSpain2026-11-13Chemel, James L Cpa NEGOTIATION42Asiya Javayant
1007Misaki S AmigonBrazil2026-10-23Commercial Press UNQUALIFIED89Anna Fali
1008Murillo C KolmetzGermany2026-11-11Buckley Miller Wright PROPOSAL26Xuxue Feng
1009Mayumi I MacleadUnited Kingdom2026-10-17Chapman, Ross E Esq PROPOSAL28Xuxue Feng
1010Jefferson J OstroskyBrazil2026-11-01Rangoni Of Florence NEGOTIATION0Ioni Bowcher
1011Jennifer U ButtGermany2026-10-19Morlong Associates NEW69Onyama Limba
1012James I GlickBrazil2026-11-11Buckley Miller Wright NEW61Onyama Limba
1013Mujtaba D BologniaBrazil2026-11-05Chemel, James L Cpa NEGOTIATION42Xuxue Feng
1014Munro K FerenczUnited Kingdom2026-11-08King, Christopher A Esq UNQUALIFIED82Asiya Javayant
1015Chavez O StockhamFrance2026-10-23Printing Dimensions UNQUALIFIED89Onyama Limba
1016Kadeem J StockhamFrance2026-11-12Commercial Press RENEWAL91Onyama Limba
1017Maria R StensethIndia2026-10-23Chanay, Jeffrey A Esq NEGOTIATION4Elwin Sharvill
1018Stacey V KolmetzGermany2026-10-26Commercial Press QUALIFIED23Anna Fali
1019Smith B NestleItaly2026-10-23King, Christopher A Esq NEW97Ivan Magalhaes
1020Faith R ShinkoAustralia2026-10-21Buckley Miller Wright NEW7Amy Elsner
1021Octavia U ButtCanada2026-10-17Dorl, James J Esq PROPOSAL10Anna Fali
1022Smith M KolmetzBrazil2026-10-30Rangoni Of Florence NEW91Amy Elsner
1023Arvin Q GlickUnited Kingdom2026-10-28Chanay, Jeffrey A Esq PROPOSAL68Ioni Bowcher
1024Ricardo M InouyeJapan2026-10-18Rangoni Of Florence UNQUALIFIED45Xuxue Feng
1025Chavez P KolmetzIndia2026-10-18King, Christopher A Esq NEW53Elwin Sharvill
1026Aruna W ShinkoUnited Kingdom2026-10-30Chapman, Ross E Esq NEW69Bernardo Dominic
1027Alejandro Z NestleAustralia2026-10-27Chemel, James L Cpa NEGOTIATION44Elwin Sharvill
1028Alejandro N FlosiGermany2026-11-13King, Christopher A Esq RENEWAL79Ivan Magalhaes
1029Stacey M AlbaresRussia2026-10-22Chapman, Ross E Esq QUALIFIED38Asiya Javayant
1030Jones Z OldroydAustralia2026-10-24Truhlar And Truhlar Attys NEW88Stephen Shaw
1031Aditya B SaylorsIndia2026-10-28Feiner Bros RENEWAL82Xuxue Feng
1032Costa G SchemmerUnited Kingdom2026-10-22Feiner Bros QUALIFIED48Bernardo Dominic
1033Kadeem V PoquetteArgentina2026-10-29Chemel, James L Cpa RENEWAL7Elwin Sharvill
1034Nicolas Q ButtAustralia2026-10-19Chemel, James L Cpa UNQUALIFIED16Xuxue Feng
1035Jefferson Y NestleRussia2026-10-17Chemel, James L Cpa NEW22Stephen Shaw
1036Izzy Q FlosiItaly2026-11-10Truhlar And Truhlar Attys UNQUALIFIED4Bernardo Dominic
1037Rodrigues C RimSpain2026-11-02Commercial Press RENEWAL84Asiya Javayant
1038Isabel J FigeroaSpain2026-10-26Truhlar And Truhlar Attys UNQUALIFIED80Anna Fali
1039Costa S WhobreyRussia2026-11-10Morlong Associates PROPOSAL76Xuxue Feng
1040Adams B GarufiAustralia2026-10-18Benton, John B Jr QUALIFIED63Asiya Javayant
1041Aruna K DilliardAustralia2026-11-05Truhlar And Truhlar Attys NEGOTIATION45Ioni Bowcher
1042Mayumi P NestleJapan2026-10-30Morlong Associates RENEWAL35Bernardo Dominic
1043David U WhobreyFrance2026-10-23Truhlar And Truhlar Attys QUALIFIED94Ioni Bowcher
1044Smith L AmigonAustralia2026-11-02Truhlar And Truhlar Attys PROPOSAL4Ioni Bowcher
1045Juan K KuskoCanada2026-11-06Chemel, James L Cpa PROPOSAL46Ivan Magalhaes
1046Arvin L MaletJapan2026-11-14Morlong Associates NEW96Anna Fali
1047Johnson X InouyeGermany2026-11-02Printing Dimensions PROPOSAL66Xuxue Feng
1048Jeanfrancois F AmigonArgentina2026-10-17Morlong Associates RENEWAL66Elwin Sharvill
1049Jennifer T InouyeUnited Kingdom2026-10-30Feltz Printing Service QUALIFIED96Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Costa F DilliardSpainBernardo Dominic UNQUALIFIED
Murillo W FerenczUnited KingdomStephen Shaw RENEWAL
Rodrigues L CaldareraIndiaAnna Fali PROPOSAL
Aditya V RulapaughCanadaIvan Magalhaes PROPOSAL
Maisha G MaletItalyIoni Bowcher RENEWAL
Misaki J WaycottCanadaStephen Shaw QUALIFIED
Darci V RutaRussiaXuxue Feng PROPOSAL
Juan I OstroskyBrazilIoni Bowcher UNQUALIFIED
Deepesh H BologniaGermanyAmy Elsner NEW
Octavia R ShinkoJapanIoni Bowcher NEW
Mayumi C MarrierAustraliaElwin Sharvill QUALIFIED
Ashley Y BologniaCanadaOnyama Limba QUALIFIED
Stacey M StensethCanadaAnna Fali NEW
Wickens H SlusarskiItalyBernardo Dominic RENEWAL
Adams T CaudyJapanAnna Fali UNQUALIFIED
Greenwood E FollerUnited KingdomXuxue Feng NEW
James K DarakjyFranceBernardo Dominic QUALIFIED
Faith R SaylorsSpainBernardo Dominic NEW
Silvio M DoeIndiaElwin Sharvill NEGOTIATION
Antonio U SergiGermanyStephen Shaw RENEWAL
Izzy B ButtBrazilAsiya Javayant UNQUALIFIED
Isabel B BologniaBrazilAsiya Javayant UNQUALIFIED
Cody B OstroskyFranceIvan Magalhaes UNQUALIFIED
Julie J MarrierRussiaXuxue Feng NEGOTIATION
Chavez O CaudyBrazilIoni Bowcher UNQUALIFIED
Morrow C MarrierGermanyAsiya Javayant UNQUALIFIED
Nicolas V PerinRussiaAsiya Javayant QUALIFIED
Aruna E MaletBrazilStephen Shaw NEW
Antonio B TollnerFranceIoni Bowcher PROPOSAL
Maisha U PoquetteRussiaOnyama Limba NEGOTIATION
Chavez Z SchemmerAustraliaElwin Sharvill RENEWAL
Deepesh A PoquetteCanadaIvan Magalhaes NEW
Isabel H MarrierUnited KingdomIvan Magalhaes RENEWAL
Sinclair W RoysterRussiaElwin Sharvill RENEWAL
Darci T ShinkoJapanAmy Elsner NEGOTIATION
Munro G OldroydItalyOnyama Limba NEW
Alejandro T MarrierAustraliaOnyama Limba RENEWAL
Kadeem Y CaldareraJapanBernardo Dominic UNQUALIFIED
Nicolas S VenereUnited KingdomBernardo Dominic PROPOSAL
Nicolas X FerenczItalyIoni Bowcher NEGOTIATION
Smith X CaldareraGermanyElwin Sharvill RENEWAL
Jefferson P ChuiArgentinaAnna Fali PROPOSAL
Misaki I OldroydIndiaIvan Magalhaes UNQUALIFIED
Munro R OstroskyFranceAsiya Javayant NEW
Darci G RoysterGermanyAmy Elsner QUALIFIED
Johnson I MaletBrazilAsiya Javayant UNQUALIFIED
Greenwood L FlosiRussiaAsiya Javayant NEGOTIATION
Octavia P StensethArgentinaAnna Fali NEGOTIATION
Misaki R DarakjySpainIvan Magalhaes PROPOSAL
Jeanfrancois K GauchoArgentinaAmy Elsner NEGOTIATION
Frozen Columns
Name
Costa W Schemmer
David M Wieser
Ashley V Wieser
Aruna B Nicka
Jeanfrancois H Morasca
Jones M Sergi
Jefferson V Albares
Aruna Y Ostrosky
Maria Z Venere
Costa Z Campain
James L Bowley
Sinclair V Schemmer
Aditya Z Caldarera
David I Briddick
Murillo Q Briddick
Misaki K Wieser
Tony G Stockham
Adams U Rulapaugh
Aika G Maclead
Murillo P Kolmetz
Ivar Q Tollner
Munro S Darakjy
Kaitlin D Perin
Morrow B Paprocki
Antonio B Garufi
James I Caudy
Claire U Shinko
Antonio T Figeroa
Emily I Stenseth
Morrow N Perin
Nicolas U Saylors
Mayumi L Glick
Isabel U Rulapaugh
Murillo W Chui
Sinclair E Foller
Leja O Dilliard
Alejandro N Schemmer
Johnson W Rim
Munro O Tollner
Maria D Figeroa
David J Caldarera
Tony K Doe
Leon M Royster
Maisha C Iturbide
Salvatore G Ostrosky
Sinclair K Marrier
Morrow C Kolmetz
Claire I Nicka
Salvatore Z Butt
Ashley W Shinko
IdCountryDate
1000Argentina2026-10-31
1001Spain2026-11-05
1002Japan2026-11-12
1003Canada2026-11-02
1004United Kingdom2026-11-03
1005Japan2026-11-12
1006France2026-10-23
1007India2026-10-26
1008Japan2026-11-12
1009Spain2026-10-27
1010Spain2026-11-14
1011Argentina2026-11-02
1012Argentina2026-11-04
1013Canada2026-10-17
1014Italy2026-10-30
1015France2026-11-10
1016United Kingdom2026-10-26
1017India2026-11-03
1018Germany2026-11-12
1019Italy2026-10-18
1020Australia2026-10-19
1021Germany2026-10-23
1022Brazil2026-11-10
1023Russia2026-11-14
1024Italy2026-11-13
1025Australia2026-10-23
1026Brazil2026-11-04
1027Argentina2026-10-24
1028Germany2026-10-28
1029Spain2026-11-05
1030India2026-10-23
1031Brazil2026-11-08
1032Spain2026-10-21
1033Russia2026-10-28
1034United Kingdom2026-11-06
1035Germany2026-11-14
1036Japan2026-11-07
1037Canada2026-10-17
1038Japan2026-11-08
1039Australia2026-10-23
1040United Kingdom2026-11-07
1041Russia2026-11-12
1042Canada2026-11-02
1043Japan2026-10-31
1044Argentina2026-11-09
1045Russia2026-10-18
1046Argentina2026-11-09
1047Canada2026-10-27
1048United Kingdom2026-10-19
1049Russia2026-11-09

On-Demand Data

NameIdCountryDate
Arvin Q Ferencz1000Spain2026-11-02
Ivar D Saylors1001India2026-10-26
Wickens Q Waycott1002Italy2026-10-26
Greenwood A Gaucho1003Germany2026-11-06
Faith C Slusarski1004Germany2026-10-29
Rodrigues H Schemmer1005Argentina2026-11-14
Murillo L Poquette1006France2026-10-30
Stacey Q Kolmetz1007Japan2026-10-28
Tony B Stenseth1008Australia2026-10-20
Costa I Slusarski1009Canada2026-10-20
Smith J Nestle1010Spain2026-10-26
Arvin N Ostrosky1011Australia2026-10-30
Wickens V Kusko1012Brazil2026-10-30
Ivar E Caldarera1013Argentina2026-10-25
Aditya P Chui1014Argentina2026-10-25
Tony I Whobrey1015Australia2026-10-30
Ashley F Malet1016Canada2026-11-01
Octavia K Perin1017Argentina2026-10-31
Munro C Paprocki1018Argentina2026-11-05
Arvin U Whobrey1019France2026-10-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy W ChuiRussiaStephen Shaw RENEWAL
Silvio J ButtArgentinaAsiya Javayant NEW
Kaitlin L AlbaresItalyStephen Shaw NEW
Faith U GauchoFranceAsiya Javayant RENEWAL
Izzy G BologniaFranceStephen Shaw PROPOSAL
Adams S StensethUnited KingdomXuxue Feng NEGOTIATION
Misaki Z TollnerIndiaElwin Sharvill UNQUALIFIED
Jones C AlbaresJapanOnyama Limba UNQUALIFIED
Juan Z BriddickAustraliaXuxue Feng NEGOTIATION
Leon H WhobreySpainElwin Sharvill RENEWAL
Mayumi Q VenereFranceXuxue Feng RENEWAL
Tony F SlusarskiCanadaAsiya Javayant QUALIFIED
Kaitlin Y WieserAustraliaXuxue Feng UNQUALIFIED
Stacey E OstroskyRussiaOnyama Limba RENEWAL
Silvio S KuskoCanadaStephen Shaw NEW
Salvatore O InouyeRussiaIvan Magalhaes UNQUALIFIED
Munro X GarufiIndiaIvan Magalhaes NEW
Rodrigues N InouyeIndiaBernardo Dominic QUALIFIED
Darci E PaprockiJapanStephen Shaw NEW
Alejandro B ChuiArgentinaBernardo Dominic NEGOTIATION
Julie A ChuiUnited KingdomIoni Bowcher NEGOTIATION
Alejandro Z GillianRussiaStephen Shaw NEW
Antonio V SchemmerBrazilAsiya Javayant UNQUALIFIED
Jennifer I TollnerArgentinaStephen Shaw QUALIFIED
Leja U NickaUnited KingdomIvan Magalhaes PROPOSAL
Munro R CaudyGermanyAnna Fali RENEWAL
Aruna W SlusarskiArgentinaAnna Fali QUALIFIED
Julie J OldroydFranceElwin Sharvill RENEWAL
Octavia C RoysterUnited KingdomXuxue Feng PROPOSAL
Deepesh Z PoquetteArgentinaXuxue Feng NEW
Isabel A GillianJapanElwin Sharvill QUALIFIED
Isabel Z OldroydGermanyAsiya Javayant RENEWAL
Smith K SchemmerBrazilBernardo Dominic NEW
Salvatore T GillianRussiaStephen Shaw NEW
Salvatore D ChuiIndiaIoni Bowcher QUALIFIED
David U OldroydJapanAnna Fali PROPOSAL
David C SaylorsRussiaIvan Magalhaes NEW
Sinclair L MaletIndiaBernardo Dominic NEGOTIATION
Stacey O SaylorsSpainStephen Shaw PROPOSAL
Tony B PerinItalyOnyama Limba 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>