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
Rodrigues O DarakjyArgentinaElwin Sharvill NEW
Alejandro I RimAustraliaIoni Bowcher UNQUALIFIED
Kadeem H SergiAustraliaIvan Magalhaes PROPOSAL
Cody A DilliardSpainAsiya Javayant PROPOSAL
Deepesh H BriddickIndiaXuxue Feng NEW
Francesco V OldroydCanadaXuxue Feng NEGOTIATION
Alejandro L PerinItalyStephen Shaw NEW
Sinclair B StensethGermanyXuxue Feng NEW
Izzy H PerinItalyAsiya Javayant QUALIFIED
Aika O RutaArgentinaXuxue Feng PROPOSAL
Leon M MaletAustraliaAmy Elsner NEGOTIATION
Jennifer H DilliardJapanOnyama Limba QUALIFIED
Murillo D FigeroaGermanyBernardo Dominic NEGOTIATION
Faith D VocelkaAustraliaOnyama Limba RENEWAL
Darci B DarakjyAustraliaXuxue Feng QUALIFIED
Morrow C RoysterGermanyBernardo Dominic NEGOTIATION
Darci G FollerFranceOnyama Limba NEGOTIATION
Kaitlin P NickaFranceXuxue Feng RENEWAL
Aditya B SergiRussiaIvan Magalhaes NEGOTIATION
Jennifer B OldroydGermanyElwin Sharvill RENEWAL
Juan P PoquetteGermanyAmy Elsner RENEWAL
David A SaylorsSpainStephen Shaw NEGOTIATION
Izzy K RimRussiaAsiya Javayant NEW
David V CampainUnited KingdomBernardo Dominic NEW
Aika I FollerBrazilElwin Sharvill UNQUALIFIED
Rodrigues K WieserAustraliaBernardo Dominic QUALIFIED
Clifford J RulapaughUnited KingdomElwin Sharvill NEW
Wickens L KolmetzJapanStephen Shaw PROPOSAL
Mayumi F AlbaresItalyXuxue Feng PROPOSAL
Tony J MarrierGermanyOnyama Limba NEW
Johnson Z SaylorsItalyXuxue Feng RENEWAL
Maria B BowleyBrazilIvan Magalhaes UNQUALIFIED
Ashley A SlusarskiAustraliaAmy Elsner NEW
Deepesh A FigeroaCanadaAmy Elsner NEW
Smith D DilliardFranceElwin Sharvill PROPOSAL
Octavia Z PerinFranceStephen Shaw PROPOSAL
Tony D InouyeJapanAnna Fali NEW
Greenwood D SlusarskiRussiaBernardo Dominic NEGOTIATION
Ricardo B DilliardRussiaIoni Bowcher RENEWAL
Johnson H RoysterSpainIvan Magalhaes QUALIFIED
Ashley I WhobreyRussiaOnyama Limba PROPOSAL
Leon D KuskoRussiaXuxue Feng UNQUALIFIED
David N DarakjyJapanAsiya Javayant NEGOTIATION
Emily Q MacleadCanadaAmy Elsner QUALIFIED
Misaki J DarakjyBrazilAmy Elsner QUALIFIED
Leon C DarakjySpainAnna Fali QUALIFIED
Adams W PaprockiFranceAsiya Javayant QUALIFIED
Stacey Q MaletItalyIvan Magalhaes RENEWAL
Jefferson X CampainItalyAnna Fali UNQUALIFIED
David W WhobreyGermanyBernardo Dominic NEW
Horizontal
NameCountryRepresentativeStatus
Rodrigues I DarakjyArgentinaIoni Bowcher UNQUALIFIED
Silvio U DoeCanadaAmy Elsner NEGOTIATION
Jennifer M OstroskyUnited KingdomXuxue Feng NEGOTIATION
Ashley S FollerBrazilAsiya Javayant NEW
Darci R InouyeRussiaAnna Fali PROPOSAL
Faith A NestleArgentinaAnna Fali NEGOTIATION
Murillo L ButtSpainElwin Sharvill RENEWAL
Mayumi B RutaSpainAnna Fali RENEWAL
Aika B SlusarskiIndiaAnna Fali NEW
Leon G BologniaSpainAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony P FerenczArgentina2026-09-28Commercial Press RENEWAL15Ivan Magalhaes
1001Chavez A KolmetzFrance2026-10-19Chanay, Jeffrey A Esq PROPOSAL67Asiya Javayant
1002Arvin T NickaRussia2026-10-02Rangoni Of Florence NEW3Anna Fali
1003Johnson X CaudyItaly2026-10-07Feltz Printing Service UNQUALIFIED45Asiya Javayant
1004Adams O TollnerJapan2026-10-20Rangoni Of Florence NEGOTIATION67Amy Elsner
1005Antonio X PaprockiJapan2026-10-12Buckley Miller Wright UNQUALIFIED63Bernardo Dominic
1006Maria Y SergiJapan2026-09-22Truhlar And Truhlar Attys NEGOTIATION57Stephen Shaw
1007Jefferson K IturbideJapan2026-10-19Dorl, James J Esq NEGOTIATION4Asiya Javayant
1008Mujtaba J GillianUnited Kingdom2026-10-04Commercial Press UNQUALIFIED93Elwin Sharvill
1009Jefferson O MaletCanada2026-09-29Morlong Associates NEGOTIATION57Onyama Limba
1010Octavia F StockhamGermany2026-10-08Commercial Press RENEWAL2Ioni Bowcher
1011Jennifer F GarufiUnited Kingdom2026-10-12Morlong Associates NEW1Elwin Sharvill
1012Deepesh F GarufiBrazil2026-09-28Morlong Associates NEW68Ivan Magalhaes
1013Alejandro U MaletSpain2026-10-01Morlong Associates NEGOTIATION6Xuxue Feng
1014Octavia S ChuiArgentina2026-10-20King, Christopher A Esq UNQUALIFIED94Stephen Shaw
1015Wickens E VenereAustralia2026-10-01Rousseaux, Michael Esq UNQUALIFIED67Amy Elsner
1016Tony N SchemmerUnited Kingdom2026-09-22Printing Dimensions PROPOSAL20Amy Elsner
1017Darci P FerenczIndia2026-09-23Feltz Printing Service NEGOTIATION87Bernardo Dominic
1018Ivar F MaletUnited Kingdom2026-10-20King, Christopher A Esq PROPOSAL92Elwin Sharvill
1019Alejandro O FigeroaCanada2026-10-10Printing Dimensions QUALIFIED90Amy Elsner
1020Chavez J FerenczUnited Kingdom2026-09-26Commercial Press PROPOSAL62Onyama Limba
1021Leja E NickaJapan2026-10-03Chapman, Ross E Esq RENEWAL2Xuxue Feng
1022Silvio Y MaletFrance2026-09-30Commercial Press QUALIFIED80Xuxue Feng
1023Johnson P BowleyAustralia2026-09-24Buckley Miller Wright NEW26Bernardo Dominic
1024Claire M RoysterBrazil2026-10-04Chemel, James L Cpa NEGOTIATION24Stephen Shaw
1025Aika C GauchoRussia2026-10-18Rousseaux, Michael Esq PROPOSAL97Anna Fali
1026Jeanfrancois A GillianUnited Kingdom2026-10-07Morlong Associates NEW17Ivan Magalhaes
1027Octavia C SergiFrance2026-10-10Truhlar And Truhlar Attys UNQUALIFIED16Elwin Sharvill
1028Kadeem N DoeAustralia2026-10-13Rousseaux, Michael Esq UNQUALIFIED59Anna Fali
1029Salvatore L OstroskyGermany2026-10-10Dorl, James J Esq UNQUALIFIED76Onyama Limba
1030Octavia X InouyeJapan2026-10-09King, Christopher A Esq NEGOTIATION16Xuxue Feng
1031Rodrigues H BriddickBrazil2026-10-02Chemel, James L Cpa NEGOTIATION30Ivan Magalhaes
1032Ivar V DoeSpain2026-10-12Truhlar And Truhlar Attys PROPOSAL1Ivan Magalhaes
1033Mujtaba C PaprockiUnited Kingdom2026-10-08King, Christopher A Esq QUALIFIED29Amy Elsner
1034Juan Z GillianSpain2026-09-26Chapman, Ross E Esq RENEWAL60Bernardo Dominic
1035Jeanfrancois I FlosiItaly2026-09-29Benton, John B Jr QUALIFIED27Asiya Javayant
1036Jennifer C MaletCanada2026-10-05Feiner Bros QUALIFIED13Elwin Sharvill
1037Mujtaba O RoysterCanada2026-10-19Dorl, James J Esq NEGOTIATION4Bernardo Dominic
1038Ashley H BologniaIndia2026-10-18Dorl, James J Esq QUALIFIED91Elwin Sharvill
1039Cody V MaletFrance2026-10-13Printing Dimensions NEW47Anna Fali
1040Antonio X AmigonBrazil2026-10-08Benton, John B Jr RENEWAL96Ivan Magalhaes
1041Antonio P GlickAustralia2026-10-20Printing Dimensions NEGOTIATION14Xuxue Feng
1042Munro O GillianFrance2026-10-10Feiner Bros QUALIFIED1Ioni Bowcher
1043Claire I TollnerRussia2026-10-08Buckley Miller Wright RENEWAL72Onyama Limba
1044Jefferson Q PaprockiFrance2026-10-10Feiner Bros NEGOTIATION62Ivan Magalhaes
1045Aika L BowleyAustralia2026-10-01Feltz Printing Service QUALIFIED56Stephen Shaw
1046Ricardo G AmigonGermany2026-10-09Buckley Miller Wright NEGOTIATION60Elwin Sharvill
1047Wickens Q FigeroaAustralia2026-10-02Feltz Printing Service RENEWAL96Asiya Javayant
1048Silvio G GarufiRussia2026-09-28Buckley Miller Wright PROPOSAL66Ioni Bowcher
1049Deepesh B KuskoArgentina2026-10-02Rangoni Of Florence NEGOTIATION31Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Costa U FigeroaUnited KingdomAsiya Javayant PROPOSAL
Greenwood W PerinGermanyElwin Sharvill NEGOTIATION
Rodrigues H SaylorsFranceXuxue Feng NEGOTIATION
Deepesh T VocelkaSpainStephen Shaw UNQUALIFIED
Jennifer R BriddickJapanBernardo Dominic PROPOSAL
Leja A WaycottArgentinaOnyama Limba NEGOTIATION
Alejandro G NickaGermanyXuxue Feng RENEWAL
Munro Y FlosiBrazilStephen Shaw NEGOTIATION
Ricardo X StockhamItalyBernardo Dominic RENEWAL
Deepesh M WhobreySpainIvan Magalhaes NEW
Cody H CaudyBrazilElwin Sharvill NEGOTIATION
Greenwood T BologniaRussiaIoni Bowcher PROPOSAL
Darci Q AmigonSpainXuxue Feng RENEWAL
Tony G MaletJapanStephen Shaw PROPOSAL
Adams M CampainBrazilAsiya Javayant NEGOTIATION
Mujtaba G DarakjyUnited KingdomAnna Fali NEW
Salvatore H FerenczGermanyAmy Elsner RENEWAL
Leon L WaycottRussiaStephen Shaw UNQUALIFIED
Murillo T GauchoArgentinaIvan Magalhaes PROPOSAL
Aruna B DarakjyCanadaOnyama Limba UNQUALIFIED
David J MacleadJapanStephen Shaw NEW
Maria E BowleyFranceAsiya Javayant NEW
Greenwood K SaylorsAustraliaAnna Fali UNQUALIFIED
Greenwood K StensethRussiaStephen Shaw NEGOTIATION
Johnson J AmigonUnited KingdomStephen Shaw NEW
Ricardo V RutaBrazilIoni Bowcher RENEWAL
Emily E MaletSpainIoni Bowcher PROPOSAL
Darci V WaycottRussiaStephen Shaw NEW
Deepesh E GarufiGermanyOnyama Limba QUALIFIED
Jefferson N PoquetteJapanBernardo Dominic RENEWAL
Murillo O GillianItalyElwin Sharvill QUALIFIED
Darci M CaudyFranceBernardo Dominic RENEWAL
Smith V NickaJapanStephen Shaw UNQUALIFIED
Aika P ChuiCanadaBernardo Dominic PROPOSAL
Claire S RimBrazilAnna Fali UNQUALIFIED
Aditya L SchemmerAustraliaIvan Magalhaes RENEWAL
Rodrigues W PaprockiItalyAnna Fali RENEWAL
Morrow B OldroydCanadaIvan Magalhaes UNQUALIFIED
Faith U NestleCanadaAnna Fali QUALIFIED
Tony S BriddickCanadaAmy Elsner RENEWAL
Kaitlin Q OldroydRussiaAmy Elsner NEW
Octavia T DoeSpainIoni Bowcher QUALIFIED
Ricardo F FollerArgentinaIoni Bowcher PROPOSAL
Juan I PerinRussiaXuxue Feng UNQUALIFIED
Ivar V VocelkaIndiaIoni Bowcher QUALIFIED
Aika K GauchoSpainBernardo Dominic QUALIFIED
Faith Q MaletAustraliaBernardo Dominic NEW
Julie T ShinkoCanadaAsiya Javayant PROPOSAL
Antonio Y MacleadSpainAmy Elsner QUALIFIED
David B GarufiArgentinaElwin Sharvill PROPOSAL
Frozen Columns
Name
Greenwood L Ruta
Sinclair J Ostrosky
Silvio X Tollner
Mayumi C Malet
Murillo I Gaucho
Clifford M Iturbide
David K Glick
Sinclair T Paprocki
Silvio W Nestle
Murillo A Sergi
Costa R Schemmer
Izzy H Figeroa
Ashley Q Albares
Munro I Whobrey
Alejandro E Malet
Adams D Rulapaugh
Salvatore D Ostrosky
Johnson Q Malet
Clifford S Caldarera
David J Paprocki
Leon N Slusarski
Clifford M Kolmetz
James J Kusko
Costa N Waycott
David V Albares
Johnson C Butt
David W Flosi
Johnson P Iturbide
Kadeem O Kolmetz
Maisha Z Malet
Darci F Gaucho
Smith W Foller
Adams B Nestle
Chavez W Kusko
Nicolas P Gaucho
Juan A Gillian
Faith L Albares
Isabel B Chui
Ricardo C Dilliard
Misaki P Nestle
Adams U Ferencz
Rodrigues D Albares
Julie R Ostrosky
Leja E Oldroyd
Cody E Iturbide
Mayumi B Albares
Ivar Z Briddick
Leja B Bolognia
Mujtaba G Iturbide
Sinclair W Figeroa
IdCountryDate
1000Italy2026-10-09
1001Brazil2026-10-14
1002Canada2026-10-09
1003Japan2026-09-30
1004United Kingdom2026-10-05
1005Australia2026-10-04
1006India2026-09-24
1007Brazil2026-09-29
1008Spain2026-10-12
1009Brazil2026-10-18
1010Canada2026-09-24
1011Brazil2026-10-02
1012Australia2026-10-16
1013France2026-10-07
1014Canada2026-10-18
1015Argentina2026-10-16
1016United Kingdom2026-09-27
1017France2026-10-01
1018India2026-09-29
1019Argentina2026-09-26
1020Japan2026-09-29
1021United Kingdom2026-09-30
1022United Kingdom2026-09-22
1023France2026-10-20
1024Canada2026-09-27
1025Germany2026-10-01
1026Russia2026-10-05
1027Argentina2026-10-02
1028Brazil2026-09-24
1029Japan2026-10-08
1030Canada2026-09-29
1031Japan2026-10-20
1032Argentina2026-10-10
1033India2026-09-26
1034United Kingdom2026-10-16
1035France2026-09-25
1036Spain2026-10-10
1037Brazil2026-10-03
1038Russia2026-10-01
1039Spain2026-10-14
1040Canada2026-10-05
1041Canada2026-10-07
1042Japan2026-09-26
1043Australia2026-10-03
1044Argentina2026-10-17
1045India2026-10-06
1046Brazil2026-10-08
1047Brazil2026-09-22
1048Brazil2026-10-19
1049Italy2026-09-28

On-Demand Data

NameIdCountryDate
Sinclair T Figeroa1000Australia2026-09-30
Adams U Royster1001Italy2026-10-02
Chavez C Morasca1002Germany2026-09-26
Jeanfrancois B Slusarski1003India2026-09-24
Johnson H Gillian1004Russia2026-09-23
Chavez L Foller1005Germany2026-10-11
Leja H Stenseth1006Germany2026-10-11
Chavez T Foller1007Brazil2026-10-12
Ivar V Butt1008Brazil2026-09-28
Johnson Q Maclead1009India2026-10-18
Alejandro E Stenseth1010Brazil2026-09-28
Faith J Perin1011Japan2026-10-17
Maria B Amigon1012Russia2026-10-10
Costa Z Figeroa1013Japan2026-09-28
Mayumi O Campain1014Germany2026-09-22
Emily Q Vocelka1015Italy2026-10-09
Morrow W Figeroa1016Japan2026-09-26
Wickens B Stockham1017Germany2026-10-12
Darci O Stockham1018Brazil2026-09-28
Antonio U Rim1019Brazil2026-09-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow R StockhamUnited KingdomAmy Elsner UNQUALIFIED
Juan D SlusarskiUnited KingdomIvan Magalhaes PROPOSAL
Emily G CaudyItalyOnyama Limba QUALIFIED
Nicolas A RulapaughFranceIoni Bowcher QUALIFIED
Mayumi O RulapaughSpainXuxue Feng NEW
Jeanfrancois S IturbideItalyIvan Magalhaes RENEWAL
James C VenereItalyAnna Fali RENEWAL
Aruna Y FigeroaRussiaStephen Shaw PROPOSAL
Jeanfrancois V WieserFranceAmy Elsner NEW
Misaki Q VocelkaAustraliaStephen Shaw PROPOSAL
Emily J PaprockiAustraliaIoni Bowcher UNQUALIFIED
Juan X ButtArgentinaAmy Elsner NEGOTIATION
Smith T FlosiAustraliaXuxue Feng PROPOSAL
Sinclair E CaudyIndiaAmy Elsner UNQUALIFIED
Emily D TollnerCanadaElwin Sharvill UNQUALIFIED
Tony C AlbaresFranceAnna Fali NEGOTIATION
Murillo X GarufiJapanIvan Magalhaes NEGOTIATION
Silvio T RulapaughRussiaXuxue Feng UNQUALIFIED
Izzy E AmigonIndiaOnyama Limba NEGOTIATION
Kadeem F WaycottSpainBernardo Dominic PROPOSAL
Silvio W PoquetteBrazilStephen Shaw NEGOTIATION
Adams J MarrierIndiaIoni Bowcher RENEWAL
Rodrigues W DilliardRussiaAsiya Javayant NEW
Mujtaba I AmigonCanadaIvan Magalhaes NEW
Ivar E StockhamUnited KingdomIoni Bowcher NEGOTIATION
Jones C KolmetzAustraliaIvan Magalhaes NEGOTIATION
Greenwood M FerenczSpainBernardo Dominic RENEWAL
Aruna F ChuiJapanIvan Magalhaes NEW
Misaki W CampainIndiaXuxue Feng PROPOSAL
Jefferson W AmigonAustraliaXuxue Feng UNQUALIFIED
Isabel F PerinBrazilAsiya Javayant QUALIFIED
Jefferson O RoysterFranceXuxue Feng NEW
Maisha I DoeRussiaBernardo Dominic UNQUALIFIED
Aruna O AmigonUnited KingdomAsiya Javayant NEGOTIATION
Aika D MaletJapanXuxue Feng UNQUALIFIED
Jennifer N TollnerFranceAsiya Javayant NEGOTIATION
Misaki V VenereJapanStephen Shaw QUALIFIED
Smith Q AmigonIndiaStephen Shaw UNQUALIFIED
Munro V TollnerGermanyStephen Shaw NEGOTIATION
Jefferson B CaudyFranceStephen Shaw QUALIFIED

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