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
Silvio S ChuiItalyOnyama Limba QUALIFIED
Adams J FerenczJapanXuxue Feng UNQUALIFIED
Emily K FerenczGermanyElwin Sharvill RENEWAL
Smith W RulapaughSpainOnyama Limba UNQUALIFIED
Maria Y DoeIndiaAnna Fali RENEWAL
Costa K GarufiJapanStephen Shaw QUALIFIED
Nicolas K SlusarskiGermanyIoni Bowcher RENEWAL
Maisha Q DoeCanadaAnna Fali NEW
Johnson A ChuiJapanOnyama Limba RENEWAL
Tony S StensethBrazilIvan Magalhaes NEGOTIATION
Faith W FerenczGermanyBernardo Dominic RENEWAL
Jeanfrancois O MaletAustraliaOnyama Limba RENEWAL
Tony E DilliardArgentinaBernardo Dominic UNQUALIFIED
Adams B ChuiJapanStephen Shaw NEGOTIATION
Silvio J MaletRussiaXuxue Feng QUALIFIED
Darci S AlbaresGermanyXuxue Feng NEW
Tony F CampainSpainXuxue Feng QUALIFIED
Claire C ButtUnited KingdomAnna Fali NEW
Kaitlin D FerenczIndiaAmy Elsner NEW
Mayumi M BologniaRussiaBernardo Dominic RENEWAL
Juan D DarakjyGermanyAsiya Javayant UNQUALIFIED
Johnson O RoysterGermanyOnyama Limba QUALIFIED
Arvin O VocelkaAustraliaIoni Bowcher PROPOSAL
Arvin L RoysterItalyAsiya Javayant RENEWAL
Julie G PerinGermanyElwin Sharvill PROPOSAL
Alejandro Y CaldareraIndiaIoni Bowcher UNQUALIFIED
Octavia O WieserSpainElwin Sharvill RENEWAL
Nicolas F KolmetzUnited KingdomStephen Shaw QUALIFIED
Nicolas G PerinGermanyAsiya Javayant UNQUALIFIED
Ashley B CaldareraFranceAsiya Javayant PROPOSAL
Jennifer F GarufiArgentinaBernardo Dominic NEW
James U IturbideRussiaStephen Shaw UNQUALIFIED
Chavez Z AlbaresSpainXuxue Feng NEGOTIATION
Leja D BowleyArgentinaIvan Magalhaes NEGOTIATION
Misaki J PoquetteBrazilBernardo Dominic RENEWAL
Johnson F PerinUnited KingdomAmy Elsner NEW
Silvio I PaprockiFranceElwin Sharvill RENEWAL
Tony B FigeroaItalyXuxue Feng QUALIFIED
Aditya K VocelkaUnited KingdomElwin Sharvill RENEWAL
Julie Q MarrierIndiaAnna Fali NEW
Jefferson L KolmetzJapanAmy Elsner QUALIFIED
Aditya R GarufiItalyAnna Fali QUALIFIED
Jefferson Y OldroydFranceElwin Sharvill NEW
Maria R FerenczFranceBernardo Dominic NEW
Costa Z RulapaughRussiaIvan Magalhaes NEGOTIATION
James Q MaletJapanAnna Fali QUALIFIED
Adams Z ButtGermanyAnna Fali RENEWAL
Johnson M RoysterFranceAsiya Javayant PROPOSAL
Mujtaba T PerinAustraliaElwin Sharvill QUALIFIED
Misaki F IturbideUnited KingdomIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Faith X FerenczSpainAsiya Javayant RENEWAL
Silvio R MaletFranceElwin Sharvill NEGOTIATION
Silvio M DarakjyFranceElwin Sharvill PROPOSAL
Greenwood L MaletCanadaElwin Sharvill PROPOSAL
Smith V GillianBrazilIoni Bowcher PROPOSAL
Cody B GauchoAustraliaOnyama Limba RENEWAL
Darci V NickaCanadaIoni Bowcher PROPOSAL
Tony D SaylorsJapanOnyama Limba UNQUALIFIED
Faith A MaletArgentinaIvan Magalhaes QUALIFIED
Kaitlin E ShinkoSpainStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley G FollerAustralia2026-08-30Benton, John B Jr NEGOTIATION76Xuxue Feng
1001Greenwood K OstroskyAustralia2026-09-17Chemel, James L Cpa UNQUALIFIED37Bernardo Dominic
1002Salvatore Y AlbaresFrance2026-08-23Benton, John B Jr UNQUALIFIED97Elwin Sharvill
1003Octavia W OldroydRussia2026-09-07Chanay, Jeffrey A Esq RENEWAL55Amy Elsner
1004Greenwood V ShinkoAustralia2026-08-19Benton, John B Jr NEW11Asiya Javayant
1005Claire H CaudyJapan2026-09-12Buckley Miller Wright UNQUALIFIED0Ioni Bowcher
1006James I PoquetteUnited Kingdom2026-09-02Morlong Associates NEW16Onyama Limba
1007Clifford T NickaAustralia2026-08-29Chapman, Ross E Esq QUALIFIED65Ioni Bowcher
1008Misaki L PoquetteRussia2026-08-22Commercial Press PROPOSAL29Stephen Shaw
1009Tony J IturbideRussia2026-08-25Dorl, James J Esq PROPOSAL6Xuxue Feng
1010Aruna R BologniaItaly2026-08-20King, Christopher A Esq RENEWAL83Amy Elsner
1011David T MarrierCanada2026-09-11Rangoni Of Florence QUALIFIED10Ivan Magalhaes
1012Clifford D KolmetzUnited Kingdom2026-09-12Rangoni Of Florence RENEWAL82Xuxue Feng
1013Jefferson Z BologniaFrance2026-08-21Chapman, Ross E Esq NEGOTIATION78Ivan Magalhaes
1014Munro L StockhamCanada2026-09-13Commercial Press QUALIFIED37Ioni Bowcher
1015Antonio S MacleadRussia2026-08-27Commercial Press PROPOSAL74Elwin Sharvill
1016Munro X DilliardAustralia2026-09-09Feiner Bros NEW1Amy Elsner
1017Greenwood R RimRussia2026-09-03Truhlar And Truhlar Attys NEGOTIATION88Anna Fali
1018Claire L FlosiJapan2026-08-27Chapman, Ross E Esq PROPOSAL54Stephen Shaw
1019Jeanfrancois Q VenereAustralia2026-09-16Commercial Press PROPOSAL96Anna Fali
1020Munro Z FollerRussia2026-09-12Printing Dimensions UNQUALIFIED35Asiya Javayant
1021Claire U KolmetzBrazil2026-09-01Chanay, Jeffrey A Esq NEW52Onyama Limba
1022Greenwood H SaylorsFrance2026-09-03Chapman, Ross E Esq QUALIFIED2Asiya Javayant
1023Murillo X FlosiAustralia2026-09-17Feltz Printing Service QUALIFIED88Stephen Shaw
1024Kaitlin H NestleBrazil2026-09-16Rangoni Of Florence RENEWAL29Stephen Shaw
1025Izzy M DoeRussia2026-09-07Benton, John B Jr NEW50Xuxue Feng
1026Emily D FlosiCanada2026-09-05Printing Dimensions UNQUALIFIED92Asiya Javayant
1027Antonio W MaletFrance2026-09-17Chapman, Ross E Esq QUALIFIED73Amy Elsner
1028Isabel T BowleyIndia2026-08-21Rousseaux, Michael Esq NEGOTIATION3Anna Fali
1029Murillo F MorascaGermany2026-09-08Chanay, Jeffrey A Esq QUALIFIED22Stephen Shaw
1030Aika V GarufiArgentina2026-08-21Buckley Miller Wright NEGOTIATION73Elwin Sharvill
1031Jefferson Y IturbideArgentina2026-08-21Buckley Miller Wright NEGOTIATION23Amy Elsner
1032Mujtaba Q FerenczJapan2026-08-30Morlong Associates NEGOTIATION85Bernardo Dominic
1033Stacey O GarufiJapan2026-08-30Feltz Printing Service RENEWAL20Ioni Bowcher
1034Morrow H IturbideJapan2026-09-06Printing Dimensions RENEWAL71Elwin Sharvill
1035Ashley N SaylorsIndia2026-09-01Dorl, James J Esq PROPOSAL22Xuxue Feng
1036Ashley K GlickSpain2026-08-20Buckley Miller Wright QUALIFIED47Bernardo Dominic
1037Jefferson W CampainRussia2026-09-09Rousseaux, Michael Esq RENEWAL22Asiya Javayant
1038Munro S InouyeAustralia2026-09-06Dorl, James J Esq QUALIFIED53Asiya Javayant
1039Aruna F VocelkaItaly2026-09-13Printing Dimensions UNQUALIFIED58Stephen Shaw
1040Costa T PaprockiUnited Kingdom2026-09-10Buckley Miller Wright UNQUALIFIED17Onyama Limba
1041Ashley L InouyeSpain2026-09-16Dorl, James J Esq PROPOSAL49Bernardo Dominic
1042Cody U StockhamItaly2026-08-22Chapman, Ross E Esq PROPOSAL87Amy Elsner
1043Cody B StockhamCanada2026-08-31Chemel, James L Cpa QUALIFIED1Stephen Shaw
1044Cody O DoeJapan2026-09-10Rousseaux, Michael Esq NEW19Asiya Javayant
1045Francesco Z SchemmerAustralia2026-08-19Commercial Press QUALIFIED71Xuxue Feng
1046Isabel H SergiArgentina2026-08-22Printing Dimensions PROPOSAL18Anna Fali
1047Emily I WhobreyJapan2026-09-01Rangoni Of Florence QUALIFIED4Elwin Sharvill
1048David V FerenczUnited Kingdom2026-08-26Printing Dimensions RENEWAL94Onyama Limba
1049Izzy A OldroydIndia2026-08-28Chapman, Ross E Esq QUALIFIED91Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Alejandro O GlickJapanOnyama Limba UNQUALIFIED
Antonio V NestleUnited KingdomBernardo Dominic PROPOSAL
Chavez L AmigonGermanyAmy Elsner UNQUALIFIED
Sinclair Q WhobreyRussiaIvan Magalhaes NEW
Jeanfrancois C FigeroaAustraliaIoni Bowcher RENEWAL
Darci U CampainIndiaAnna Fali RENEWAL
Aika W GillianJapanElwin Sharvill NEW
Costa B PerinRussiaOnyama Limba RENEWAL
Adams X MacleadAustraliaStephen Shaw PROPOSAL
Julie X GarufiGermanyAnna Fali NEGOTIATION
Morrow N WieserAustraliaAsiya Javayant PROPOSAL
Morrow B SaylorsFranceXuxue Feng PROPOSAL
Ricardo M NickaBrazilIvan Magalhaes NEW
Misaki W FollerIndiaOnyama Limba QUALIFIED
Emily T KuskoJapanElwin Sharvill NEW
Arvin D MorascaArgentinaOnyama Limba UNQUALIFIED
Kadeem Z WaycottFranceElwin Sharvill NEW
Chavez L GarufiAustraliaElwin Sharvill RENEWAL
Aditya A CaldareraCanadaAmy Elsner NEGOTIATION
Tony N RulapaughBrazilElwin Sharvill NEW
Rodrigues W BologniaFranceBernardo Dominic NEW
Morrow I SlusarskiFranceAmy Elsner QUALIFIED
Ivar D GillianCanadaAsiya Javayant RENEWAL
Francesco C FigeroaIndiaIoni Bowcher QUALIFIED
Isabel E ButtUnited KingdomBernardo Dominic PROPOSAL
Emily B BologniaGermanyElwin Sharvill PROPOSAL
Murillo A CaldareraCanadaOnyama Limba UNQUALIFIED
Jefferson C CaudyIndiaAsiya Javayant RENEWAL
Costa U FerenczItalyXuxue Feng PROPOSAL
Greenwood M InouyeItalyStephen Shaw NEW
Aruna N MarrierAustraliaStephen Shaw UNQUALIFIED
Clifford A NestleCanadaAnna Fali NEW
Francesco F GarufiJapanElwin Sharvill PROPOSAL
James Q RoysterRussiaElwin Sharvill PROPOSAL
Costa O MaletJapanOnyama Limba RENEWAL
Clifford A GauchoArgentinaIvan Magalhaes NEGOTIATION
Octavia M RoysterUnited KingdomElwin Sharvill PROPOSAL
Aruna Z OldroydSpainXuxue Feng UNQUALIFIED
Deepesh Y NickaIndiaAmy Elsner NEW
Morrow Q BowleyRussiaIoni Bowcher NEW
Claire B OldroydAustraliaAmy Elsner QUALIFIED
Leja L PoquetteGermanyAnna Fali QUALIFIED
Wickens V PoquetteItalyBernardo Dominic NEW
Arvin Z KolmetzRussiaAmy Elsner NEW
Adams Y VocelkaRussiaIoni Bowcher UNQUALIFIED
Julie X FerenczItalyAnna Fali NEGOTIATION
Salvatore B RulapaughUnited KingdomAsiya Javayant QUALIFIED
Smith F GauchoIndiaAnna Fali RENEWAL
Murillo T SchemmerArgentinaAmy Elsner RENEWAL
Mayumi S NestleBrazilXuxue Feng UNQUALIFIED
Frozen Columns
Name
Mujtaba H Dilliard
Claire X Schemmer
Morrow I Vocelka
Wickens W Darakjy
Tony S Gaucho
Francesco E Nicka
Arvin F Whobrey
Juan D Saylors
Adams A Inouye
Julie L Inouye
Leja X Waycott
Costa T Kusko
Adams L Flosi
Aditya B Waycott
Darci S Schemmer
Aruna K Glick
Jefferson Q Briddick
Johnson K Venere
Maria H Perin
Mayumi N Bowley
Emily P Nestle
Jennifer C Dilliard
Julie B Slusarski
Alejandro T Bolognia
Rodrigues B Albares
Maria L Stenseth
Kaitlin O Bowley
Leon N Malet
Darci R Perin
Nicolas W Inouye
Ivar E Inouye
Maria F Campain
Ivar F Oldroyd
Izzy V Foller
Ricardo J Paprocki
Murillo Z Rulapaugh
Johnson D Caudy
James P Stenseth
Aruna S Nestle
Salvatore T Whobrey
James N Glick
Costa T Ferencz
James J Wieser
Ivar R Ferencz
Francesco X Sergi
Rodrigues C Kolmetz
Ivar A Bowley
Silvio H Dilliard
Jefferson U Ostrosky
Aika Q Glick
IdCountryDate
1000Canada2026-08-25
1001Australia2026-09-15
1002Russia2026-08-29
1003Russia2026-09-02
1004Brazil2026-08-23
1005Germany2026-08-28
1006United Kingdom2026-08-20
1007France2026-09-07
1008United Kingdom2026-08-29
1009Italy2026-09-07
1010Russia2026-08-27
1011Spain2026-09-17
1012Brazil2026-09-05
1013France2026-09-05
1014Japan2026-09-03
1015Australia2026-08-24
1016Italy2026-09-14
1017Italy2026-09-08
1018Brazil2026-08-30
1019Germany2026-09-01
1020Australia2026-08-24
1021Argentina2026-09-11
1022Australia2026-09-08
1023Japan2026-09-16
1024France2026-08-19
1025Brazil2026-09-06
1026India2026-08-29
1027Germany2026-08-21
1028Australia2026-09-03
1029Japan2026-08-25
1030France2026-08-24
1031Germany2026-09-04
1032Canada2026-09-10
1033United Kingdom2026-09-07
1034Australia2026-09-02
1035Germany2026-08-26
1036India2026-09-01
1037Russia2026-09-03
1038Russia2026-09-16
1039Canada2026-09-04
1040Canada2026-09-13
1041India2026-09-04
1042France2026-09-13
1043Argentina2026-09-13
1044Italy2026-09-06
1045Brazil2026-08-23
1046Japan2026-09-04
1047Australia2026-08-25
1048Brazil2026-09-14
1049Brazil2026-09-07

On-Demand Data

NameIdCountryDate
Ricardo U Shinko1000United Kingdom2026-09-05
Misaki Z Figeroa1001Germany2026-09-12
Juan H Albares1002Italy2026-09-03
Mayumi H Stenseth1003Spain2026-08-31
Leja O Inouye1004India2026-08-21
Arvin V Shinko1005France2026-08-27
Aditya H Perin1006France2026-09-03
Nicolas A Ferencz1007Russia2026-08-24
Cody T Tollner1008Argentina2026-08-19
Cody K Shinko1009Spain2026-08-19
Jeanfrancois M Tollner1010Argentina2026-08-23
Adams F Caudy1011United Kingdom2026-08-27
Mujtaba W Venere1012Canada2026-08-25
Leja N Wieser1013Russia2026-08-22
Morrow T Inouye1014Argentina2026-08-29
Nicolas X Garufi1015Germany2026-08-20
Tony Q Kusko1016India2026-09-04
Jefferson B Garufi1017Spain2026-09-16
Maria Z Malet1018Australia2026-09-06
Cody Y Sergi1019Germany2026-09-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jennifer X VocelkaFranceIvan Magalhaes RENEWAL
Francesco X RoysterItalyOnyama Limba UNQUALIFIED
Ivar L MarrierBrazilXuxue Feng UNQUALIFIED
Jennifer N SlusarskiGermanyAsiya Javayant PROPOSAL
Faith Q CampainBrazilIvan Magalhaes RENEWAL
Emily A CaldareraCanadaIoni Bowcher NEW
Johnson J SchemmerCanadaAmy Elsner PROPOSAL
Aruna Y MaletGermanyOnyama Limba PROPOSAL
Rodrigues J ShinkoArgentinaElwin Sharvill NEW
Julie I CaudyAustraliaOnyama Limba RENEWAL
Morrow K OstroskyItalyXuxue Feng UNQUALIFIED
Mujtaba A StockhamCanadaXuxue Feng PROPOSAL
Sinclair C KuskoFranceIoni Bowcher PROPOSAL
Juan Y CaldareraArgentinaIvan Magalhaes UNQUALIFIED
Tony I FigeroaUnited KingdomAmy Elsner PROPOSAL
Leon O WhobreyAustraliaIoni Bowcher NEW
David M MorascaBrazilAnna Fali NEW
Ashley H NickaJapanElwin Sharvill RENEWAL
Aruna X NickaUnited KingdomAnna Fali PROPOSAL
Octavia H OldroydIndiaAsiya Javayant UNQUALIFIED
Faith J OstroskyAustraliaXuxue Feng NEGOTIATION
Mayumi Z KolmetzIndiaAnna Fali NEGOTIATION
Morrow A SlusarskiRussiaAmy Elsner UNQUALIFIED
Smith W SaylorsJapanIoni Bowcher UNQUALIFIED
Maria F PoquetteArgentinaIoni Bowcher QUALIFIED
Ivar L CampainBrazilOnyama Limba UNQUALIFIED
Kadeem N SaylorsGermanyAnna Fali NEGOTIATION
Mayumi E ShinkoRussiaAnna Fali NEGOTIATION
Julie B OstroskyJapanIoni Bowcher PROPOSAL
Chavez W KuskoAustraliaAmy Elsner NEW
David H MorascaUnited KingdomStephen Shaw NEGOTIATION
Isabel U RimSpainXuxue Feng NEW
Emily W SchemmerUnited KingdomXuxue Feng NEGOTIATION
Ivar K OstroskyItalyIvan Magalhaes NEGOTIATION
James H GillianGermanyBernardo Dominic PROPOSAL
Costa D PoquetteIndiaIoni Bowcher QUALIFIED
Maria M FigeroaItalyIoni Bowcher RENEWAL
Greenwood V SaylorsArgentinaIoni Bowcher RENEWAL
Johnson S WaycottBrazilOnyama Limba UNQUALIFIED
Clifford Q KuskoIndiaIoni Bowcher 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>