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
Adams C RimBrazilIoni Bowcher QUALIFIED
Ashley R GillianArgentinaAsiya Javayant PROPOSAL
Chavez B VocelkaAustraliaXuxue Feng RENEWAL
Munro K AmigonBrazilOnyama Limba UNQUALIFIED
Tony U GauchoIndiaBernardo Dominic RENEWAL
Ricardo F FlosiFranceAmy Elsner UNQUALIFIED
Cody L GlickRussiaStephen Shaw NEGOTIATION
Ivar T BowleyGermanyIoni Bowcher PROPOSAL
Emily M CampainItalyXuxue Feng UNQUALIFIED
Silvio L RimJapanAmy Elsner QUALIFIED
Maria J BriddickItalyIvan Magalhaes UNQUALIFIED
Salvatore H NickaJapanElwin Sharvill NEW
Francesco N TollnerJapanElwin Sharvill QUALIFIED
Aruna U ShinkoRussiaBernardo Dominic QUALIFIED
Maria Q GauchoGermanyIvan Magalhaes NEGOTIATION
Silvio J DoeItalyIvan Magalhaes NEW
Nicolas P RoysterBrazilAmy Elsner PROPOSAL
Deepesh Y PerinItalyIoni Bowcher NEW
Nicolas I TollnerArgentinaAnna Fali NEGOTIATION
Maria B DilliardAustraliaAnna Fali QUALIFIED
Chavez I AmigonIndiaBernardo Dominic UNQUALIFIED
Stacey K BriddickRussiaAnna Fali QUALIFIED
Chavez Q BowleyFranceBernardo Dominic NEW
Silvio H CaldareraJapanOnyama Limba UNQUALIFIED
Emily A FigeroaAustraliaAnna Fali NEW
Francesco U KolmetzFranceXuxue Feng UNQUALIFIED
Kaitlin F CaldareraBrazilAnna Fali NEW
Adams D NestleCanadaIoni Bowcher NEGOTIATION
Adams Q WaycottItalyStephen Shaw RENEWAL
Octavia N WaycottBrazilStephen Shaw NEW
Wickens T MarrierUnited KingdomStephen Shaw QUALIFIED
Chavez K PaprockiGermanyIvan Magalhaes RENEWAL
Kadeem C MaletJapanElwin Sharvill NEGOTIATION
David O OstroskyRussiaIoni Bowcher QUALIFIED
Jones H OstroskyAustraliaStephen Shaw NEGOTIATION
Stacey H AmigonSpainStephen Shaw QUALIFIED
Chavez T ButtIndiaOnyama Limba PROPOSAL
Leon E RulapaughCanadaIvan Magalhaes NEGOTIATION
Juan R FlosiCanadaAsiya Javayant RENEWAL
Salvatore R TollnerJapanAnna Fali PROPOSAL
Mujtaba R CaldareraJapanAsiya Javayant RENEWAL
Isabel B SchemmerItalyXuxue Feng PROPOSAL
Darci I WhobreyBrazilXuxue Feng PROPOSAL
Arvin I FigeroaItalyXuxue Feng NEW
Sinclair H ShinkoGermanyOnyama Limba QUALIFIED
Jennifer R FlosiIndiaStephen Shaw RENEWAL
Faith Z SergiRussiaStephen Shaw UNQUALIFIED
Clifford K AlbaresRussiaAnna Fali RENEWAL
Ivar N AlbaresFranceXuxue Feng PROPOSAL
Silvio D PerinSpainStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin Z FigeroaBrazilOnyama Limba NEGOTIATION
Jefferson T MacleadFranceElwin Sharvill NEGOTIATION
Nicolas H RulapaughUnited KingdomElwin Sharvill RENEWAL
Claire D ShinkoFranceStephen Shaw PROPOSAL
Munro N NickaArgentinaOnyama Limba RENEWAL
Mayumi G NickaIndiaAsiya Javayant NEGOTIATION
James K FigeroaRussiaAsiya Javayant RENEWAL
Ricardo R PoquetteArgentinaAnna Fali QUALIFIED
Emily E MorascaArgentinaIoni Bowcher UNQUALIFIED
Jones S WaycottArgentinaStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James Q DilliardFrance2026-10-11Feiner Bros RENEWAL40Elwin Sharvill
1001James B CaudySpain2026-10-04Rangoni Of Florence UNQUALIFIED96Ioni Bowcher
1002Wickens J GauchoBrazil2026-10-11Benton, John B Jr NEGOTIATION48Ivan Magalhaes
1003Silvio R FollerArgentina2026-09-29Feiner Bros UNQUALIFIED6Ioni Bowcher
1004Wickens V MorascaGermany2026-10-05Rousseaux, Michael Esq NEGOTIATION88Asiya Javayant
1005Leja E BologniaFrance2026-10-15Commercial Press UNQUALIFIED44Ioni Bowcher
1006Julie Y AlbaresAustralia2026-10-06Dorl, James J Esq NEGOTIATION28Ivan Magalhaes
1007Kadeem O ButtUnited Kingdom2026-10-03Truhlar And Truhlar Attys NEW96Asiya Javayant
1008Smith F GlickUnited Kingdom2026-10-12Chapman, Ross E Esq NEW16Onyama Limba
1009Aruna T FlosiArgentina2026-09-29King, Christopher A Esq PROPOSAL58Bernardo Dominic
1010Tony O SaylorsRussia2026-09-24Feiner Bros NEW21Ivan Magalhaes
1011Octavia N SergiArgentina2026-10-20Morlong Associates PROPOSAL22Elwin Sharvill
1012Sinclair U SlusarskiAustralia2026-10-15Dorl, James J Esq QUALIFIED16Stephen Shaw
1013Cody W ShinkoFrance2026-10-10Chemel, James L Cpa NEW91Amy Elsner
1014Sinclair H NestleSpain2026-10-10Morlong Associates PROPOSAL5Amy Elsner
1015Francesco U SlusarskiArgentina2026-10-19Commercial Press UNQUALIFIED94Stephen Shaw
1016Chavez K MaletIndia2026-10-14King, Christopher A Esq QUALIFIED67Onyama Limba
1017Smith Z GlickBrazil2026-09-25Commercial Press RENEWAL56Asiya Javayant
1018Stacey P FerenczSpain2026-10-18Rousseaux, Michael Esq NEW19Bernardo Dominic
1019Silvio J BriddickFrance2026-10-19Feiner Bros QUALIFIED25Asiya Javayant
1020Claire Q ChuiJapan2026-09-24Rangoni Of Florence RENEWAL74Ioni Bowcher
1021Aruna V MorascaFrance2026-10-11Truhlar And Truhlar Attys RENEWAL84Amy Elsner
1022Johnson H MarrierFrance2026-10-16Commercial Press NEW86Stephen Shaw
1023Mayumi I RimArgentina2026-09-24Printing Dimensions UNQUALIFIED31Anna Fali
1024Maisha E StensethGermany2026-10-15Commercial Press UNQUALIFIED8Stephen Shaw
1025Ivar L PaprockiBrazil2026-10-04Truhlar And Truhlar Attys PROPOSAL46Xuxue Feng
1026Jones L PerinIndia2026-10-13Truhlar And Truhlar Attys PROPOSAL5Anna Fali
1027Jefferson M GlickAustralia2026-10-07Buckley Miller Wright RENEWAL93Asiya Javayant
1028Darci W SaylorsIndia2026-10-11Chanay, Jeffrey A Esq NEW55Ivan Magalhaes
1029Rodrigues I PerinGermany2026-10-08Feiner Bros RENEWAL41Xuxue Feng
1030Aditya A FigeroaUnited Kingdom2026-09-27Printing Dimensions NEW0Ivan Magalhaes
1031Emily M PaprockiFrance2026-09-22Chemel, James L Cpa PROPOSAL94Ioni Bowcher
1032Cody I NestleAustralia2026-10-19Truhlar And Truhlar Attys QUALIFIED18Elwin Sharvill
1033Ashley B StockhamJapan2026-10-07Printing Dimensions NEW69Stephen Shaw
1034Kaitlin Q VenereItaly2026-09-29Benton, John B Jr NEW17Asiya Javayant
1035Emily R OldroydBrazil2026-10-18Feiner Bros UNQUALIFIED3Stephen Shaw
1036Chavez V RulapaughCanada2026-09-22Chemel, James L Cpa UNQUALIFIED70Ivan Magalhaes
1037Jones E CaudyArgentina2026-10-10Buckley Miller Wright RENEWAL7Amy Elsner
1038Jennifer B DoeItaly2026-10-13Printing Dimensions NEGOTIATION9Ioni Bowcher
1039Salvatore W SchemmerJapan2026-10-18Printing Dimensions QUALIFIED15Onyama Limba
1040Alejandro I MacleadUnited Kingdom2026-10-14Chanay, Jeffrey A Esq NEGOTIATION94Xuxue Feng
1041Stacey C FigeroaItaly2026-09-22Printing Dimensions QUALIFIED98Asiya Javayant
1042Alejandro Y SlusarskiIndia2026-10-10Rousseaux, Michael Esq NEGOTIATION52Stephen Shaw
1043Alejandro A KuskoRussia2026-09-24Feltz Printing Service PROPOSAL10Ioni Bowcher
1044Arvin S GlickCanada2026-09-22Rousseaux, Michael Esq RENEWAL73Elwin Sharvill
1045Wickens U SaylorsJapan2026-09-21Truhlar And Truhlar Attys RENEWAL40Onyama Limba
1046Jeanfrancois Z BriddickBrazil2026-10-05King, Christopher A Esq UNQUALIFIED64Asiya Javayant
1047Izzy I StensethRussia2026-10-14Feltz Printing Service PROPOSAL18Asiya Javayant
1048Julie S RoysterBrazil2026-10-13Printing Dimensions PROPOSAL27Xuxue Feng
1049Jones O InouyeJapan2026-10-16Chapman, Ross E Esq QUALIFIED72Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Nicolas Q KolmetzJapanOnyama Limba RENEWAL
Aika V MaletRussiaAsiya Javayant RENEWAL
James I PerinArgentinaIvan Magalhaes NEGOTIATION
Munro N MarrierCanadaAnna Fali RENEWAL
Tony I BologniaRussiaIvan Magalhaes NEGOTIATION
Arvin U RoysterIndiaAmy Elsner QUALIFIED
Nicolas U PerinIndiaIoni Bowcher QUALIFIED
David D WhobreySpainAsiya Javayant PROPOSAL
Nicolas X DilliardFranceIoni Bowcher NEW
Rodrigues U PerinJapanIvan Magalhaes RENEWAL
Francesco D MorascaUnited KingdomAnna Fali RENEWAL
Kadeem Z FerenczFranceAnna Fali QUALIFIED
Adams O KuskoUnited KingdomElwin Sharvill QUALIFIED
Izzy F VenereItalyAnna Fali QUALIFIED
Mayumi A FollerArgentinaBernardo Dominic RENEWAL
Claire I KolmetzIndiaOnyama Limba NEW
Jones D NickaSpainBernardo Dominic PROPOSAL
Aika V WhobreyRussiaXuxue Feng UNQUALIFIED
Claire S DarakjyBrazilElwin Sharvill RENEWAL
James S SergiGermanyAnna Fali NEGOTIATION
Mujtaba U VocelkaAustraliaIvan Magalhaes PROPOSAL
Aika V DoeFranceIvan Magalhaes PROPOSAL
Silvio M KuskoSpainAsiya Javayant NEGOTIATION
Maisha L SergiGermanyOnyama Limba QUALIFIED
Misaki Y RoysterJapanIvan Magalhaes RENEWAL
Chavez R ChuiItalyAnna Fali NEGOTIATION
Ivar T MorascaCanadaAmy Elsner RENEWAL
Murillo G NestleIndiaAnna Fali QUALIFIED
Leja S InouyeSpainElwin Sharvill PROPOSAL
Maria Q MacleadIndiaIoni Bowcher NEW
Misaki R SchemmerAustraliaElwin Sharvill NEGOTIATION
Aika F MacleadUnited KingdomAsiya Javayant NEGOTIATION
Silvio V OstroskyUnited KingdomAnna Fali RENEWAL
Mujtaba H BologniaFranceAnna Fali UNQUALIFIED
Morrow I DarakjyIndiaElwin Sharvill RENEWAL
Silvio G WaycottArgentinaIoni Bowcher UNQUALIFIED
Mayumi X KuskoGermanyBernardo Dominic PROPOSAL
Francesco H GlickSpainXuxue Feng RENEWAL
Emily Q ChuiUnited KingdomAnna Fali UNQUALIFIED
Costa Z AmigonFranceBernardo Dominic NEGOTIATION
Jeanfrancois U AlbaresSpainIvan Magalhaes UNQUALIFIED
Darci C DarakjyCanadaAsiya Javayant RENEWAL
Jeanfrancois A KuskoUnited KingdomElwin Sharvill NEW
Smith L NestleGermanyOnyama Limba QUALIFIED
Murillo K StensethSpainAsiya Javayant UNQUALIFIED
Arvin R OstroskyCanadaIoni Bowcher QUALIFIED
Nicolas M AlbaresCanadaOnyama Limba RENEWAL
Kaitlin N WaycottGermanyAnna Fali QUALIFIED
Octavia J FlosiArgentinaElwin Sharvill QUALIFIED
Mujtaba D StensethJapanBernardo Dominic NEW
Frozen Columns
Name
Wickens K Gaucho
Clifford B Albares
James W Stockham
Maria D Inouye
Mujtaba A Malet
Kadeem B Waycott
Jefferson T Amigon
Morrow V Caldarera
Mujtaba B Sergi
Maria L Stenseth
Alejandro S Chui
Jefferson G Stenseth
Kaitlin M Iturbide
Aruna F Royster
Salvatore E Campain
Morrow L Flosi
Ashley Y Malet
Claire X Inouye
Chavez M Butt
Mayumi L Doe
Jefferson W Rulapaugh
Tony N Bowley
Alejandro Z Malet
Claire R Perin
Ricardo I Doe
Isabel K Wieser
Costa R Briddick
Sinclair X Rulapaugh
Aika M Schemmer
Francesco A Vocelka
Salvatore B Iturbide
Darci N Caudy
Jeanfrancois G Garufi
Faith B Perin
Alejandro U Ruta
Aditya F Doe
Aruna D Royster
Adams Z Caudy
Sinclair V Schemmer
Adams H Glick
Faith V Nicka
Leon L Royster
Jefferson V Doe
Misaki M Oldroyd
Arvin T Dilliard
Silvio B Chui
Francesco L Tollner
Juan U Briddick
Clifford W Foller
Wickens C Shinko
IdCountryDate
1000United Kingdom2026-10-10
1001India2026-09-24
1002Australia2026-09-25
1003France2026-10-04
1004Germany2026-10-08
1005France2026-10-07
1006Canada2026-10-08
1007India2026-10-11
1008Canada2026-10-10
1009United Kingdom2026-09-27
1010Australia2026-10-08
1011Germany2026-10-02
1012France2026-09-21
1013Germany2026-09-28
1014Spain2026-10-01
1015United Kingdom2026-09-21
1016Canada2026-10-03
1017Brazil2026-10-02
1018Brazil2026-10-07
1019Russia2026-10-10
1020Germany2026-10-20
1021United Kingdom2026-10-16
1022Russia2026-09-26
1023India2026-10-19
1024Brazil2026-10-09
1025Spain2026-10-20
1026Argentina2026-10-11
1027Australia2026-10-02
1028United Kingdom2026-10-15
1029Brazil2026-10-12
1030Argentina2026-10-09
1031India2026-10-06
1032United Kingdom2026-10-17
1033Australia2026-10-14
1034United Kingdom2026-10-15
1035Argentina2026-10-11
1036Argentina2026-09-27
1037Australia2026-10-05
1038Germany2026-10-04
1039India2026-10-08
1040France2026-10-20
1041Brazil2026-09-25
1042Canada2026-10-04
1043Canada2026-10-20
1044United Kingdom2026-09-23
1045Germany2026-10-09
1046Germany2026-09-26
1047India2026-10-16
1048Argentina2026-10-09
1049Canada2026-10-18

On-Demand Data

NameIdCountryDate
Izzy W Rulapaugh1000France2026-09-30
Mayumi C Garufi1001Germany2026-10-12
Alejandro E Perin1002Argentina2026-10-18
Leja G Flosi1003Germany2026-09-27
Arvin B Malet1004United Kingdom2026-10-13
Jennifer C Venere1005Brazil2026-10-11
Maria H Caldarera1006Russia2026-09-29
Smith E Venere1007India2026-10-07
Izzy E Stenseth1008Brazil2026-10-16
Aditya X Flosi1009Spain2026-10-10
Aika J Garufi1010United Kingdom2026-10-13
Wickens Z Slusarski1011Germany2026-10-02
Deepesh Q Albares1012India2026-09-30
Salvatore J Ruta1013Germany2026-10-07
Maisha Y Stockham1014Russia2026-09-28
Leon T Doe1015Russia2026-10-15
Morrow U Gaucho1016France2026-10-02
Mujtaba Z Slusarski1017Spain2026-10-07
Johnson V Foller1018Canada2026-09-21
Mayumi O Marrier1019Canada2026-09-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo J VenereGermanyAsiya Javayant RENEWAL
Leon K FlosiSpainElwin Sharvill QUALIFIED
Aditya X DarakjySpainIoni Bowcher QUALIFIED
Maria D WieserItalyStephen Shaw PROPOSAL
Clifford J PerinSpainIoni Bowcher QUALIFIED
Ivar A RulapaughAustraliaIvan Magalhaes NEGOTIATION
Mayumi L FlosiGermanyAmy Elsner NEGOTIATION
Jefferson G PaprockiArgentinaAsiya Javayant NEW
Murillo Y FollerRussiaStephen Shaw NEGOTIATION
Leon C InouyeSpainStephen Shaw NEW
Clifford G SlusarskiItalyBernardo Dominic UNQUALIFIED
Aruna P BriddickAustraliaIvan Magalhaes NEGOTIATION
Aruna S FigeroaFranceXuxue Feng NEGOTIATION
Wickens X AmigonRussiaIvan Magalhaes PROPOSAL
Isabel U DoeArgentinaAnna Fali RENEWAL
Kadeem N RulapaughSpainIvan Magalhaes PROPOSAL
Greenwood H FerenczJapanAmy Elsner QUALIFIED
Julie N WaycottGermanyAsiya Javayant UNQUALIFIED
Tony D DoeBrazilStephen Shaw RENEWAL
Francesco V FlosiFranceIoni Bowcher PROPOSAL
Aika L SlusarskiFranceBernardo Dominic NEGOTIATION
Isabel P KolmetzGermanyAsiya Javayant PROPOSAL
Darci E OstroskyGermanyElwin Sharvill RENEWAL
Aruna I FlosiAustraliaElwin Sharvill PROPOSAL
Arvin V VenereFranceElwin Sharvill UNQUALIFIED
James L IturbideFranceStephen Shaw UNQUALIFIED
Costa I TollnerUnited KingdomElwin Sharvill RENEWAL
Johnson J StensethFranceElwin Sharvill RENEWAL
Rodrigues A DoeFranceElwin Sharvill NEGOTIATION
Ivar T AlbaresItalyXuxue Feng RENEWAL
Smith H KolmetzRussiaAnna Fali NEGOTIATION
Cody F FlosiGermanyBernardo Dominic UNQUALIFIED
Johnson D StockhamItalyIvan Magalhaes NEW
Arvin Q PoquetteSpainIvan Magalhaes NEGOTIATION
Murillo Q FlosiItalyElwin Sharvill RENEWAL
Jones V SchemmerUnited KingdomIvan Magalhaes UNQUALIFIED
Kadeem K ShinkoAustraliaStephen Shaw RENEWAL
Maisha C RutaRussiaIvan Magalhaes NEGOTIATION
Aditya F VenereGermanyXuxue Feng RENEWAL
Rodrigues F AmigonArgentinaElwin Sharvill NEW

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