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
Ricardo Z RulapaughSpainBernardo Dominic QUALIFIED
Isabel X AmigonArgentinaIoni Bowcher NEW
Smith I RutaBrazilBernardo Dominic UNQUALIFIED
Kadeem B SergiAustraliaXuxue Feng NEGOTIATION
Aruna U ButtFranceOnyama Limba NEGOTIATION
Ivar T GlickGermanyBernardo Dominic PROPOSAL
Darci W RulapaughGermanyIoni Bowcher NEGOTIATION
Octavia A CampainSpainIvan Magalhaes QUALIFIED
Aruna L DoeArgentinaAsiya Javayant QUALIFIED
Smith K NickaJapanAnna Fali RENEWAL
Clifford H DoeRussiaAmy Elsner UNQUALIFIED
Izzy M NickaRussiaIvan Magalhaes NEW
Jones X AmigonJapanStephen Shaw QUALIFIED
Wickens G FerenczAustraliaBernardo Dominic UNQUALIFIED
Kaitlin G WhobreyUnited KingdomBernardo Dominic NEW
Leon Y GarufiRussiaOnyama Limba UNQUALIFIED
Alejandro Y RoysterSpainAmy Elsner RENEWAL
Misaki B MaletGermanyElwin Sharvill PROPOSAL
Juan Q DilliardRussiaElwin Sharvill UNQUALIFIED
Tony A InouyeCanadaAnna Fali RENEWAL
Ricardo J OstroskyCanadaAmy Elsner NEGOTIATION
Rodrigues T OldroydSpainAsiya Javayant QUALIFIED
Ashley J KuskoAustraliaBernardo Dominic QUALIFIED
Adams G BologniaItalyOnyama Limba UNQUALIFIED
Claire M RimRussiaAmy Elsner PROPOSAL
Kadeem V StockhamFranceXuxue Feng RENEWAL
Smith E TollnerBrazilBernardo Dominic QUALIFIED
Aditya T TollnerUnited KingdomElwin Sharvill UNQUALIFIED
Izzy R OldroydRussiaBernardo Dominic QUALIFIED
Aditya Q StensethAustraliaOnyama Limba QUALIFIED
Isabel F KolmetzRussiaAnna Fali RENEWAL
Sinclair U GauchoItalyOnyama Limba NEW
Deepesh I FollerUnited KingdomIoni Bowcher QUALIFIED
Salvatore W ButtFranceAmy Elsner QUALIFIED
Julie N IturbideSpainIvan Magalhaes QUALIFIED
Munro Z ShinkoArgentinaIoni Bowcher QUALIFIED
Izzy L SlusarskiFranceAnna Fali PROPOSAL
Aika E NestleRussiaXuxue Feng PROPOSAL
Greenwood J WhobreyIndiaAmy Elsner RENEWAL
Costa B RutaBrazilAsiya Javayant QUALIFIED
Julie T MorascaAustraliaBernardo Dominic UNQUALIFIED
Jefferson A GauchoJapanAnna Fali QUALIFIED
Leon S MacleadRussiaAsiya Javayant NEW
Misaki K RulapaughRussiaIoni Bowcher UNQUALIFIED
Ivar V CaldareraAustraliaAsiya Javayant UNQUALIFIED
Darci J InouyeRussiaOnyama Limba NEGOTIATION
Julie R WhobreyCanadaAsiya Javayant UNQUALIFIED
Mujtaba J AmigonJapanXuxue Feng PROPOSAL
Ashley E SergiSpainStephen Shaw NEGOTIATION
Munro O RimSpainElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Deepesh D RulapaughRussiaAnna Fali RENEWAL
Antonio V OldroydGermanyBernardo Dominic NEGOTIATION
Smith Y ShinkoFranceAnna Fali PROPOSAL
Maria J GauchoCanadaAmy Elsner NEGOTIATION
Leja G VocelkaRussiaOnyama Limba NEW
Aika T DilliardIndiaIvan Magalhaes NEGOTIATION
Chavez S SaylorsAustraliaStephen Shaw PROPOSAL
Leon Q MaletArgentinaIoni Bowcher NEW
Octavia T BologniaItalyIoni Bowcher QUALIFIED
Octavia R WhobreyBrazilAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco J DoeFrance2026-09-01Truhlar And Truhlar Attys NEW55Elwin Sharvill
1001Aruna X RimAustralia2026-09-10Rousseaux, Michael Esq UNQUALIFIED45Onyama Limba
1002Emily A FigeroaSpain2026-09-17Feltz Printing Service QUALIFIED36Ioni Bowcher
1003Izzy E BriddickJapan2026-08-25Rangoni Of Florence UNQUALIFIED30Bernardo Dominic
1004Ashley W MaletGermany2026-09-18Printing Dimensions NEW60Xuxue Feng
1005Antonio A SchemmerCanada2026-09-06Commercial Press PROPOSAL98Anna Fali
1006Emily Z GauchoAustralia2026-09-15Dorl, James J Esq PROPOSAL79Bernardo Dominic
1007Izzy H GauchoCanada2026-09-16Commercial Press NEW92Ivan Magalhaes
1008Cody Y BriddickFrance2026-08-30Feiner Bros NEGOTIATION49Onyama Limba
1009Ashley I GarufiItaly2026-08-26Morlong Associates PROPOSAL40Ivan Magalhaes
1010Morrow M PerinIndia2026-08-29Truhlar And Truhlar Attys UNQUALIFIED23Ioni Bowcher
1011Sinclair N NestleIndia2026-08-22Benton, John B Jr UNQUALIFIED31Ioni Bowcher
1012Salvatore Z FerenczItaly2026-09-07Rangoni Of Florence UNQUALIFIED52Anna Fali
1013Tony C RulapaughIndia2026-08-22Benton, John B Jr NEW64Stephen Shaw
1014Sinclair H CampainRussia2026-09-10Feiner Bros NEW31Xuxue Feng
1015Tony N MacleadCanada2026-09-07Feiner Bros UNQUALIFIED88Asiya Javayant
1016Maria Z TollnerGermany2026-08-21Truhlar And Truhlar Attys NEGOTIATION42Ioni Bowcher
1017Julie F WhobreyUnited Kingdom2026-09-11King, Christopher A Esq PROPOSAL31Xuxue Feng
1018Darci A AlbaresCanada2026-09-12Buckley Miller Wright NEGOTIATION83Ioni Bowcher
1019Mayumi V WhobreyFrance2026-09-15Feltz Printing Service RENEWAL88Ioni Bowcher
1020Alejandro Z MaletBrazil2026-09-16Chemel, James L Cpa NEGOTIATION3Stephen Shaw
1021Nicolas T IturbideIndia2026-08-31Chanay, Jeffrey A Esq PROPOSAL56Xuxue Feng
1022Jennifer P WieserUnited Kingdom2026-09-11Feltz Printing Service RENEWAL26Elwin Sharvill
1023Greenwood F GarufiJapan2026-09-10Chapman, Ross E Esq UNQUALIFIED50Amy Elsner
1024Alejandro G OldroydFrance2026-09-06Benton, John B Jr QUALIFIED5Amy Elsner
1025Emily R FlosiAustralia2026-08-20Dorl, James J Esq NEW41Anna Fali
1026Darci C FlosiFrance2026-08-29Chemel, James L Cpa RENEWAL60Ivan Magalhaes
1027Misaki H MarrierRussia2026-08-24Buckley Miller Wright UNQUALIFIED43Onyama Limba
1028Tony W MacleadFrance2026-09-16Rousseaux, Michael Esq RENEWAL79Stephen Shaw
1029Nicolas Q NestleArgentina2026-08-27Dorl, James J Esq QUALIFIED61Asiya Javayant
1030Aruna D MarrierItaly2026-09-17Dorl, James J Esq NEGOTIATION91Stephen Shaw
1031Jennifer B PaprockiGermany2026-09-13Rousseaux, Michael Esq QUALIFIED37Bernardo Dominic
1032Maisha H MarrierSpain2026-08-28Feltz Printing Service NEGOTIATION24Ioni Bowcher
1033Morrow M DoeUnited Kingdom2026-09-10King, Christopher A Esq NEGOTIATION35Amy Elsner
1034Costa E BowleyArgentina2026-09-16Benton, John B Jr RENEWAL79Onyama Limba
1035Aika D GlickJapan2026-08-27Feltz Printing Service PROPOSAL50Ivan Magalhaes
1036Aika Y NickaAustralia2026-09-04Feiner Bros NEW39Anna Fali
1037Darci Y DarakjyIndia2026-09-12Feltz Printing Service UNQUALIFIED78Onyama Limba
1038Cody W SlusarskiArgentina2026-08-24Chemel, James L Cpa PROPOSAL16Amy Elsner
1039Jeanfrancois M RoysterFrance2026-08-27King, Christopher A Esq QUALIFIED42Onyama Limba
1040Kadeem H KolmetzArgentina2026-08-30Chanay, Jeffrey A Esq RENEWAL72Onyama Limba
1041Maisha K PerinIndia2026-08-20Chemel, James L Cpa PROPOSAL46Onyama Limba
1042Darci Y GillianSpain2026-08-31Chapman, Ross E Esq UNQUALIFIED50Asiya Javayant
1043Juan P FerenczCanada2026-09-03Rousseaux, Michael Esq PROPOSAL49Ivan Magalhaes
1044Morrow B ShinkoAustralia2026-08-25Buckley Miller Wright NEW29Elwin Sharvill
1045Leja O NestleItaly2026-09-02Chanay, Jeffrey A Esq RENEWAL14Elwin Sharvill
1046Jennifer T GlickArgentina2026-08-22Truhlar And Truhlar Attys UNQUALIFIED11Anna Fali
1047Silvio P CaldareraFrance2026-08-23Rangoni Of Florence RENEWAL27Ivan Magalhaes
1048Munro B WieserJapan2026-08-28Feiner Bros RENEWAL63Asiya Javayant
1049Maisha T MorascaCanada2026-08-25Chapman, Ross E Esq RENEWAL55Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Ricardo O FigeroaArgentinaElwin Sharvill PROPOSAL
Ivar G MarrierArgentinaElwin Sharvill NEW
Munro A GlickGermanyIoni Bowcher QUALIFIED
Cody H ShinkoAustraliaAsiya Javayant UNQUALIFIED
Isabel R PerinCanadaBernardo Dominic NEW
Jefferson K MarrierJapanBernardo Dominic UNQUALIFIED
Aditya F FollerJapanBernardo Dominic PROPOSAL
Jones S OstroskyUnited KingdomIoni Bowcher QUALIFIED
Ashley X CampainRussiaAsiya Javayant UNQUALIFIED
Costa X MaletSpainAnna Fali RENEWAL
Maisha Y CaldareraCanadaElwin Sharvill NEGOTIATION
Cody S DarakjyArgentinaAmy Elsner NEW
David X StensethFranceOnyama Limba QUALIFIED
David D NickaCanadaIoni Bowcher QUALIFIED
Ivar I AmigonUnited KingdomAmy Elsner QUALIFIED
Jones X MorascaAustraliaIoni Bowcher NEW
Salvatore U MorascaCanadaIoni Bowcher NEGOTIATION
Ashley K DoeAustraliaOnyama Limba QUALIFIED
Ivar G WhobreySpainIvan Magalhaes PROPOSAL
Misaki F KuskoArgentinaBernardo Dominic NEGOTIATION
Jefferson Q SchemmerUnited KingdomXuxue Feng NEGOTIATION
Chavez K AmigonFranceAsiya Javayant RENEWAL
Leon C RutaGermanyAsiya Javayant QUALIFIED
Emily M PaprockiSpainStephen Shaw QUALIFIED
Johnson Q IturbideRussiaAsiya Javayant QUALIFIED
Jeanfrancois Y MorascaArgentinaXuxue Feng NEGOTIATION
Aruna E FlosiCanadaElwin Sharvill QUALIFIED
Jeanfrancois A PoquetteIndiaStephen Shaw NEW
Faith T MaletIndiaIvan Magalhaes NEGOTIATION
Rodrigues Z BologniaBrazilXuxue Feng PROPOSAL
Munro A PaprockiUnited KingdomBernardo Dominic UNQUALIFIED
Jennifer J SlusarskiArgentinaOnyama Limba UNQUALIFIED
Nicolas R OstroskyAustraliaIoni Bowcher PROPOSAL
Kaitlin J RutaUnited KingdomIoni Bowcher PROPOSAL
Smith T OldroydIndiaIoni Bowcher NEW
Greenwood P AmigonRussiaXuxue Feng NEGOTIATION
Aika D AmigonItalyAnna Fali PROPOSAL
Antonio H VocelkaCanadaOnyama Limba RENEWAL
Mujtaba X FlosiSpainOnyama Limba RENEWAL
Rodrigues C SaylorsArgentinaOnyama Limba NEW
Misaki C VocelkaSpainXuxue Feng RENEWAL
Smith G OldroydGermanyStephen Shaw NEW
Francesco F ChuiIndiaOnyama Limba QUALIFIED
Kadeem W GlickSpainElwin Sharvill PROPOSAL
Wickens W VocelkaCanadaAmy Elsner RENEWAL
Costa K SlusarskiAustraliaAmy Elsner RENEWAL
Sinclair O NickaGermanyIvan Magalhaes PROPOSAL
Ivar F RutaArgentinaAsiya Javayant UNQUALIFIED
Johnson C StockhamFranceAsiya Javayant UNQUALIFIED
Misaki F ButtGermanyElwin Sharvill QUALIFIED
Frozen Columns
Name
Costa B Inouye
Salvatore P Poquette
Aditya D Poquette
Darci Y Morasca
Juan S Shinko
Smith U Schemmer
Jefferson G Ostrosky
David X Gaucho
Arvin D Rulapaugh
James W Ruta
Munro S Foller
Misaki M Flosi
Rodrigues O Butt
Deepesh W Darakjy
Isabel L Stockham
Deepesh R Tollner
Mujtaba D Ferencz
Claire E Slusarski
Alejandro Z Figeroa
Jennifer Q Tollner
Claire X Flosi
Johnson H Butt
Deepesh X Inouye
Ivar Y Nestle
Morrow K Rim
Antonio Z Nicka
Wickens W Darakjy
Morrow Z Ostrosky
Sinclair X Bolognia
Nicolas J Nestle
Rodrigues K Paprocki
Leja O Schemmer
Murillo Y Briddick
Sinclair M Albares
Jefferson W Briddick
Smith B Gillian
Darci P Morasca
Maria B Oldroyd
Leja E Darakjy
Izzy V Tollner
Faith D Campain
Kaitlin D Chui
Aditya C Rim
Isabel V Slusarski
Clifford T Gaucho
Maisha L Stenseth
Izzy T Foller
Murillo J Bowley
Ivar V Bowley
Cody B Nestle
IdCountryDate
1000Australia2026-09-04
1001India2026-08-29
1002Japan2026-09-12
1003Japan2026-09-08
1004United Kingdom2026-08-27
1005Spain2026-09-07
1006Australia2026-08-21
1007United Kingdom2026-09-09
1008Argentina2026-09-12
1009Russia2026-09-16
1010Russia2026-09-15
1011Australia2026-09-17
1012France2026-09-05
1013Brazil2026-09-06
1014United Kingdom2026-08-26
1015India2026-09-15
1016Japan2026-08-31
1017United Kingdom2026-09-15
1018United Kingdom2026-09-09
1019Russia2026-09-02
1020Canada2026-09-03
1021Japan2026-09-18
1022France2026-08-22
1023Brazil2026-09-05
1024Brazil2026-09-06
1025Germany2026-09-12
1026France2026-08-20
1027Canada2026-08-24
1028Argentina2026-08-20
1029Spain2026-09-10
1030Argentina2026-09-18
1031Germany2026-09-12
1032Argentina2026-09-06
1033United Kingdom2026-08-26
1034India2026-09-16
1035Spain2026-08-24
1036Canada2026-08-22
1037Russia2026-08-26
1038Japan2026-09-11
1039France2026-08-24
1040Italy2026-08-21
1041Japan2026-09-12
1042France2026-09-14
1043Germany2026-08-28
1044France2026-08-25
1045Germany2026-09-03
1046Spain2026-09-06
1047Argentina2026-08-31
1048United Kingdom2026-08-24
1049Spain2026-09-17

On-Demand Data

NameIdCountryDate
Aika A Inouye1000Japan2026-08-27
Jones F Foller1001Russia2026-09-18
Octavia P Stockham1002Canada2026-09-08
Murillo E Ostrosky1003France2026-08-31
Silvio N Figeroa1004Argentina2026-09-08
Nicolas K Poquette1005Russia2026-09-14
James H Wieser1006France2026-09-02
Murillo D Sergi1007India2026-09-10
Antonio I Flosi1008Spain2026-09-16
Juan N Marrier1009Japan2026-09-14
Stacey E Bolognia1010Spain2026-09-09
Chavez H Saylors1011United Kingdom2026-09-11
Antonio O Sergi1012Italy2026-09-04
Claire O Darakjy1013Japan2026-09-04
Kadeem Y Garufi1014Canada2026-08-20
Cody S Foller1015India2026-08-30
David F Oldroyd1016India2026-09-12
Leja O Inouye1017France2026-09-15
Antonio L Morasca1018Canada2026-08-29
Antonio H Foller1019Russia2026-08-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James Y NickaFranceIvan Magalhaes QUALIFIED
Francesco W GillianJapanAmy Elsner NEW
Octavia O KuskoCanadaStephen Shaw NEW
Chavez C WieserFranceAsiya Javayant UNQUALIFIED
Claire T DilliardRussiaOnyama Limba NEW
Ashley V StockhamFranceStephen Shaw RENEWAL
Costa C AmigonFranceAsiya Javayant PROPOSAL
Antonio G VocelkaIndiaAnna Fali PROPOSAL
Julie H PaprockiItalyIoni Bowcher NEGOTIATION
Wickens R RulapaughArgentinaStephen Shaw QUALIFIED
Ivar E VenereArgentinaOnyama Limba UNQUALIFIED
Isabel V StensethIndiaAmy Elsner PROPOSAL
Jeanfrancois X RutaBrazilAmy Elsner UNQUALIFIED
Ivar U RimIndiaBernardo Dominic QUALIFIED
Claire V RoysterGermanyAnna Fali NEW
Mayumi Y MorascaCanadaAmy Elsner UNQUALIFIED
Aruna S VocelkaCanadaOnyama Limba NEW
Juan S MaletGermanyAnna Fali QUALIFIED
Chavez O RimRussiaOnyama Limba NEGOTIATION
Antonio Z RimIndiaAmy Elsner NEW
Kadeem O WieserArgentinaStephen Shaw NEW
Alejandro I OldroydIndiaBernardo Dominic RENEWAL
Aruna B SergiSpainBernardo Dominic QUALIFIED
Emily Z KolmetzRussiaAmy Elsner UNQUALIFIED
Ashley D NestleIndiaStephen Shaw QUALIFIED
Munro V WaycottRussiaOnyama Limba PROPOSAL
Aruna H AmigonIndiaBernardo Dominic NEW
Morrow E CampainCanadaAmy Elsner QUALIFIED
Jefferson Y SchemmerAustraliaStephen Shaw NEGOTIATION
Aika W GarufiUnited KingdomAnna Fali RENEWAL
Costa X KolmetzRussiaAsiya Javayant NEW
Ashley S GillianIndiaElwin Sharvill QUALIFIED
Deepesh D MarrierGermanyStephen Shaw UNQUALIFIED
Maria F ButtIndiaAnna Fali RENEWAL
Claire X TollnerSpainAnna Fali NEGOTIATION
Deepesh N KuskoUnited KingdomXuxue Feng UNQUALIFIED
Murillo L GillianSpainAnna Fali QUALIFIED
Jeanfrancois Y OstroskyUnited KingdomXuxue Feng PROPOSAL
Nicolas L RoysterRussiaElwin Sharvill NEW
Munro A FlosiArgentinaAmy Elsner PROPOSAL

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