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
Julie Z DoeCanadaBernardo Dominic UNQUALIFIED
Johnson E AlbaresSpainIvan Magalhaes NEW
Aika X CampainIndiaElwin Sharvill UNQUALIFIED
Emily K CaldareraRussiaIvan Magalhaes NEGOTIATION
Aika I AmigonItalyBernardo Dominic NEW
Juan X FigeroaGermanyElwin Sharvill NEW
Juan Y SergiRussiaBernardo Dominic NEW
Sinclair O VocelkaFranceAmy Elsner PROPOSAL
Johnson M PerinItalyAsiya Javayant NEGOTIATION
Cody Z VenereSpainXuxue Feng NEW
Munro S BriddickIndiaOnyama Limba NEGOTIATION
James E RoysterIndiaIoni Bowcher UNQUALIFIED
Kaitlin C ChuiItalyBernardo Dominic PROPOSAL
James O WhobreyUnited KingdomXuxue Feng NEGOTIATION
Darci K SaylorsSpainIvan Magalhaes UNQUALIFIED
Leon X GarufiItalyAnna Fali UNQUALIFIED
Wickens Z RoysterFranceIvan Magalhaes QUALIFIED
Nicolas K NestleBrazilAmy Elsner UNQUALIFIED
Ivar O MarrierArgentinaElwin Sharvill QUALIFIED
Stacey N VocelkaIndiaElwin Sharvill NEW
Clifford I KolmetzRussiaXuxue Feng QUALIFIED
Ashley X BriddickAustraliaAmy Elsner NEW
Isabel Z RoysterJapanAnna Fali NEGOTIATION
Mujtaba V FlosiArgentinaAnna Fali UNQUALIFIED
Salvatore X PerinUnited KingdomStephen Shaw PROPOSAL
Wickens I FlosiAustraliaBernardo Dominic RENEWAL
Aruna S ShinkoFranceXuxue Feng UNQUALIFIED
Deepesh S OldroydSpainOnyama Limba NEGOTIATION
Emily W SchemmerSpainBernardo Dominic UNQUALIFIED
Morrow M CaldareraItalyBernardo Dominic NEGOTIATION
Deepesh B FollerAustraliaAsiya Javayant UNQUALIFIED
Aruna E MarrierRussiaAsiya Javayant NEW
Rodrigues A RoysterJapanXuxue Feng RENEWAL
Mayumi L MacleadItalyXuxue Feng UNQUALIFIED
James H PerinUnited KingdomIoni Bowcher PROPOSAL
Claire O BowleyFranceAmy Elsner NEW
Aruna D NickaCanadaIvan Magalhaes UNQUALIFIED
Chavez D FlosiGermanyXuxue Feng PROPOSAL
Morrow G WhobreySpainXuxue Feng PROPOSAL
Aruna H VenereUnited KingdomIvan Magalhaes NEW
Johnson M DoeArgentinaXuxue Feng RENEWAL
Johnson E RutaItalyElwin Sharvill RENEWAL
Rodrigues K NickaSpainIoni Bowcher NEW
Darci S GauchoIndiaAsiya Javayant UNQUALIFIED
Leon W VenereIndiaStephen Shaw QUALIFIED
Jones O ButtItalyAsiya Javayant RENEWAL
Darci C FollerGermanyIvan Magalhaes QUALIFIED
Jeanfrancois H DarakjyAustraliaStephen Shaw NEW
Mayumi C VocelkaBrazilOnyama Limba UNQUALIFIED
Faith N WieserRussiaStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Mayumi G InouyeRussiaXuxue Feng QUALIFIED
Costa X RutaJapanIvan Magalhaes UNQUALIFIED
Jennifer A StockhamGermanyAsiya Javayant UNQUALIFIED
Claire X KuskoRussiaAsiya Javayant NEGOTIATION
Octavia Q DilliardBrazilBernardo Dominic RENEWAL
Ricardo C FigeroaJapanXuxue Feng PROPOSAL
Ricardo Q GarufiGermanyAnna Fali RENEWAL
Claire Q VenereArgentinaStephen Shaw QUALIFIED
Costa U SergiCanadaBernardo Dominic NEW
Wickens P MaletBrazilIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony L IturbideArgentina2026-10-21Buckley Miller Wright NEW90Amy Elsner
1001Izzy L WieserIndia2026-11-11Chanay, Jeffrey A Esq QUALIFIED50Bernardo Dominic
1002Leja E KuskoJapan2026-11-11Chapman, Ross E Esq NEW0Ioni Bowcher
1003Costa I CaudyIndia2026-11-12Chanay, Jeffrey A Esq RENEWAL74Elwin Sharvill
1004Deepesh C RulapaughItaly2026-10-26Commercial Press RENEWAL89Xuxue Feng
1005Johnson O SchemmerCanada2026-10-29Rangoni Of Florence NEW57Amy Elsner
1006Jennifer O PaprockiRussia2026-10-25Feltz Printing Service UNQUALIFIED20Amy Elsner
1007Murillo O KolmetzSpain2026-10-26Rousseaux, Michael Esq NEW65Asiya Javayant
1008Aruna N FerenczArgentina2026-10-18Chapman, Ross E Esq NEW15Ivan Magalhaes
1009Mujtaba Y AlbaresRussia2026-11-05Chemel, James L Cpa NEGOTIATION17Ioni Bowcher
1010James Y CampainAustralia2026-10-24Chemel, James L Cpa RENEWAL77Onyama Limba
1011Silvio D RutaArgentina2026-11-07Benton, John B Jr RENEWAL75Amy Elsner
1012Morrow W NickaCanada2026-10-31Benton, John B Jr PROPOSAL88Elwin Sharvill
1013Octavia N NickaArgentina2026-11-11Morlong Associates NEW33Bernardo Dominic
1014Clifford O BologniaArgentina2026-11-10Rangoni Of Florence RENEWAL82Asiya Javayant
1015Wickens S FerenczJapan2026-11-12Chemel, James L Cpa RENEWAL66Bernardo Dominic
1016Smith X IturbideGermany2026-10-23Feltz Printing Service NEGOTIATION83Anna Fali
1017Aruna E CaldareraUnited Kingdom2026-10-26Rousseaux, Michael Esq NEW14Elwin Sharvill
1018Morrow X KolmetzSpain2026-11-07Chemel, James L Cpa PROPOSAL60Amy Elsner
1019Aika J PerinUnited Kingdom2026-11-05Benton, John B Jr PROPOSAL97Xuxue Feng
1020Sinclair O SergiIndia2026-10-27Rousseaux, Michael Esq NEW55Xuxue Feng
1021Tony N PerinUnited Kingdom2026-11-07Benton, John B Jr RENEWAL63Amy Elsner
1022Munro B DoeIndia2026-11-01Chanay, Jeffrey A Esq QUALIFIED72Xuxue Feng
1023Aditya M BologniaCanada2026-11-06Morlong Associates QUALIFIED31Anna Fali
1024Sinclair P SaylorsArgentina2026-11-11Feltz Printing Service NEGOTIATION22Bernardo Dominic
1025Smith K GlickRussia2026-11-07Chapman, Ross E Esq NEW94Amy Elsner
1026Murillo H CaldareraItaly2026-10-27Feiner Bros QUALIFIED73Onyama Limba
1027Kaitlin I RutaArgentina2026-10-28Chanay, Jeffrey A Esq PROPOSAL94Ioni Bowcher
1028Aika W GillianFrance2026-10-15Rousseaux, Michael Esq RENEWAL42Amy Elsner
1029Aditya R GlickRussia2026-10-15Chanay, Jeffrey A Esq NEW78Asiya Javayant
1030Wickens W IturbideBrazil2026-10-31Printing Dimensions QUALIFIED98Elwin Sharvill
1031Kadeem D VenereRussia2026-11-05Chanay, Jeffrey A Esq NEW86Asiya Javayant
1032Leon G KolmetzIndia2026-11-03Truhlar And Truhlar Attys QUALIFIED61Ioni Bowcher
1033Mayumi D NickaArgentina2026-11-03Buckley Miller Wright RENEWAL24Xuxue Feng
1034Octavia X TollnerJapan2026-11-11Chemel, James L Cpa PROPOSAL14Stephen Shaw
1035Greenwood Y NickaFrance2026-10-24Truhlar And Truhlar Attys RENEWAL13Xuxue Feng
1036Deepesh U StockhamAustralia2026-10-21Rangoni Of Florence NEW2Xuxue Feng
1037Leon X OldroydJapan2026-11-04Buckley Miller Wright QUALIFIED78Anna Fali
1038Salvatore D VenereArgentina2026-10-31Buckley Miller Wright QUALIFIED8Ioni Bowcher
1039Faith K MarrierRussia2026-10-16Feltz Printing Service NEGOTIATION76Xuxue Feng
1040Misaki U AmigonAustralia2026-11-05Dorl, James J Esq UNQUALIFIED77Ioni Bowcher
1041Alejandro X StensethRussia2026-11-08Feltz Printing Service UNQUALIFIED90Stephen Shaw
1042James U OstroskyAustralia2026-11-03Commercial Press PROPOSAL83Asiya Javayant
1043Adams T StockhamGermany2026-11-11Feiner Bros NEW32Asiya Javayant
1044Sinclair Q OldroydGermany2026-10-28Feiner Bros NEW34Onyama Limba
1045Octavia D AlbaresAustralia2026-10-23Chapman, Ross E Esq NEW2Xuxue Feng
1046Isabel G BriddickJapan2026-10-20Rangoni Of Florence PROPOSAL56Ioni Bowcher
1047Mujtaba S FerenczAustralia2026-10-18Benton, John B Jr QUALIFIED62Ioni Bowcher
1048Aditya E RutaUnited Kingdom2026-11-07Printing Dimensions PROPOSAL66Onyama Limba
1049Aika Y GlickAustralia2026-10-26Truhlar And Truhlar Attys NEW73Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Leja N SchemmerGermanyAsiya Javayant RENEWAL
Rodrigues G PerinItalyIvan Magalhaes RENEWAL
Murillo G DarakjyBrazilStephen Shaw NEW
Kaitlin B PerinAustraliaAsiya Javayant RENEWAL
Claire D SlusarskiRussiaBernardo Dominic QUALIFIED
Wickens M MaletFranceOnyama Limba NEGOTIATION
Greenwood W BologniaAustraliaAsiya Javayant NEW
Stacey B WaycottJapanOnyama Limba UNQUALIFIED
Adams H CampainArgentinaElwin Sharvill NEGOTIATION
Izzy E GauchoIndiaIoni Bowcher PROPOSAL
Ashley Q CaudyUnited KingdomElwin Sharvill QUALIFIED
Kaitlin B PaprockiItalyAnna Fali QUALIFIED
Jones N KolmetzGermanyElwin Sharvill NEGOTIATION
Octavia P StockhamUnited KingdomElwin Sharvill QUALIFIED
Octavia K BologniaJapanXuxue Feng QUALIFIED
Tony N StockhamItalyBernardo Dominic PROPOSAL
Johnson D RutaCanadaXuxue Feng UNQUALIFIED
Leja B WhobreyItalyStephen Shaw QUALIFIED
Darci S WieserFranceXuxue Feng NEW
Francesco L ChuiItalyXuxue Feng PROPOSAL
Salvatore Y GlickIndiaElwin Sharvill QUALIFIED
Tony I DarakjyAustraliaStephen Shaw NEW
Leja S CampainGermanyAnna Fali NEGOTIATION
Arvin Z BowleyRussiaAnna Fali NEGOTIATION
Misaki V CampainAustraliaAsiya Javayant NEW
Greenwood D GarufiJapanIvan Magalhaes PROPOSAL
Aika Q ButtSpainIvan Magalhaes NEW
Alejandro F IturbideIndiaStephen Shaw NEGOTIATION
Jennifer K KolmetzItalyAnna Fali QUALIFIED
Aika G SaylorsItalyElwin Sharvill PROPOSAL
James N KuskoJapanStephen Shaw PROPOSAL
Mujtaba M RimSpainIvan Magalhaes UNQUALIFIED
Leja V RulapaughCanadaAmy Elsner QUALIFIED
Maria P NickaRussiaOnyama Limba NEGOTIATION
Arvin X WhobreyItalyXuxue Feng QUALIFIED
Kaitlin G AmigonIndiaAsiya Javayant QUALIFIED
Chavez H AmigonItalyAnna Fali QUALIFIED
Adams P SaylorsUnited KingdomIvan Magalhaes NEW
Faith M GlickItalyIvan Magalhaes UNQUALIFIED
Julie L PaprockiSpainXuxue Feng NEW
Faith P AlbaresFranceElwin Sharvill NEGOTIATION
Johnson V WieserFranceElwin Sharvill QUALIFIED
Wickens H FigeroaSpainXuxue Feng QUALIFIED
Isabel L MaletGermanyAnna Fali RENEWAL
Nicolas V AmigonJapanAmy Elsner UNQUALIFIED
Morrow X StensethArgentinaElwin Sharvill NEW
Arvin A DoeCanadaIvan Magalhaes PROPOSAL
Maria K AlbaresAustraliaAmy Elsner QUALIFIED
Kadeem D BriddickArgentinaIoni Bowcher NEW
Chavez O BriddickJapanAnna Fali QUALIFIED
Frozen Columns
Name
Mayumi G Sergi
Nicolas E Sergi
Tony Z Shinko
Munro J Gaucho
Clifford E Paprocki
Claire A Inouye
Mayumi J Oldroyd
Wickens C Caudy
Claire E Oldroyd
Arvin S Vocelka
Clifford N Caudy
Faith S Flosi
Octavia G Rulapaugh
Jeanfrancois Q Poquette
Chavez C Stockham
Adams L Gillian
Maisha V Campain
Murillo J Kusko
Darci K Doe
Alejandro P Inouye
Jeanfrancois T Campain
Salvatore W Venere
Tony A Foller
Jennifer E Glick
Clifford S Doe
Antonio B Foller
Silvio F Chui
Darci I Wieser
Aruna K Malet
Rodrigues C Ruta
Johnson E Figeroa
David J Iturbide
Smith K Marrier
Nicolas T Poquette
Adams J Campain
Nicolas Z Doe
Murillo P Ferencz
Munro G Caldarera
Mujtaba X Figeroa
Misaki N Saylors
Wickens G Doe
Jennifer T Bowley
Claire V Shinko
Ivar Q Malet
Claire Y Shinko
Kadeem P Slusarski
Jennifer T Caudy
Chavez G Bolognia
Cody X Sergi
Chavez G Oldroyd
IdCountryDate
1000Germany2026-11-09
1001Brazil2026-10-25
1002Brazil2026-10-20
1003Russia2026-10-19
1004Spain2026-11-09
1005Italy2026-10-15
1006United Kingdom2026-10-25
1007Brazil2026-10-23
1008Japan2026-10-25
1009Australia2026-10-19
1010Spain2026-10-27
1011Argentina2026-11-05
1012Russia2026-11-04
1013Brazil2026-10-23
1014Argentina2026-11-12
1015Russia2026-10-22
1016France2026-10-26
1017Argentina2026-11-08
1018Russia2026-10-25
1019India2026-11-12
1020Germany2026-11-13
1021Argentina2026-11-05
1022Spain2026-10-20
1023United Kingdom2026-10-19
1024Australia2026-10-26
1025France2026-10-27
1026India2026-11-04
1027Argentina2026-11-08
1028Germany2026-11-10
1029Germany2026-11-10
1030Russia2026-11-05
1031Russia2026-11-04
1032Spain2026-11-02
1033Japan2026-10-20
1034Italy2026-10-17
1035Brazil2026-11-08
1036Russia2026-11-03
1037United Kingdom2026-11-06
1038United Kingdom2026-11-11
1039Australia2026-11-13
1040Australia2026-11-02
1041United Kingdom2026-11-09
1042United Kingdom2026-11-02
1043France2026-11-01
1044Brazil2026-11-09
1045Spain2026-11-01
1046Italy2026-10-30
1047Japan2026-10-21
1048Germany2026-11-01
1049Canada2026-10-22

On-Demand Data

NameIdCountryDate
James M Iturbide1000India2026-11-03
Leon M Gillian1001Argentina2026-11-10
Stacey V Rim1002Russia2026-11-02
Deepesh E Ruta1003Germany2026-11-11
Stacey K Rim1004Russia2026-10-22
Alejandro V Gaucho1005United Kingdom2026-11-13
Deepesh E Briddick1006United Kingdom2026-10-21
Darci V Morasca1007Canada2026-10-25
Murillo F Waycott1008France2026-11-03
Jones Z Slusarski1009Australia2026-11-01
Deepesh I Inouye1010Australia2026-10-15
Ashley J Kolmetz1011Australia2026-10-15
Nicolas Z Wieser1012Canada2026-10-21
Salvatore R Nicka1013Canada2026-11-10
Aika H Nestle1014France2026-10-17
Clifford M Venere1015Brazil2026-11-13
Kaitlin I Chui1016Italy2026-10-19
Johnson T Figeroa1017Italy2026-10-25
Leja I Paprocki1018Australia2026-10-19
Adams S Foller1019Russia2026-10-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh N WaycottSpainOnyama Limba UNQUALIFIED
Munro X SchemmerFranceStephen Shaw NEGOTIATION
Francesco S FollerIndiaIvan Magalhaes UNQUALIFIED
Deepesh C AmigonFranceStephen Shaw NEW
Murillo C PerinFranceIoni Bowcher NEGOTIATION
Aruna Z KolmetzCanadaElwin Sharvill QUALIFIED
Mujtaba O BologniaAustraliaOnyama Limba QUALIFIED
Mayumi H CaldareraItalyStephen Shaw NEGOTIATION
Wickens E VenereGermanyAmy Elsner NEW
Nicolas K RimFranceAsiya Javayant QUALIFIED
Chavez H VenereCanadaAsiya Javayant RENEWAL
Nicolas X DarakjyUnited KingdomBernardo Dominic UNQUALIFIED
Jones G OldroydCanadaBernardo Dominic RENEWAL
Claire Z SlusarskiUnited KingdomIvan Magalhaes NEW
Ivar F ShinkoUnited KingdomAmy Elsner PROPOSAL
Cody C MaletAustraliaIvan Magalhaes QUALIFIED
Isabel X FigeroaUnited KingdomElwin Sharvill PROPOSAL
Alejandro V PoquetteItalyStephen Shaw RENEWAL
Antonio Z TollnerUnited KingdomAmy Elsner RENEWAL
Julie X PerinGermanyStephen Shaw RENEWAL
Octavia Y DilliardAustraliaAmy Elsner UNQUALIFIED
Mayumi O GarufiCanadaAsiya Javayant QUALIFIED
Maisha N DoeItalyIoni Bowcher NEW
Jones A DilliardArgentinaAmy Elsner NEGOTIATION
Deepesh T CaldareraBrazilElwin Sharvill PROPOSAL
Juan T RimFranceElwin Sharvill QUALIFIED
Misaki Y FerenczRussiaStephen Shaw UNQUALIFIED
Izzy Q DilliardArgentinaAmy Elsner RENEWAL
Adams J MaletJapanIvan Magalhaes NEW
Sinclair K OldroydAustraliaAmy Elsner NEW
Murillo C CaldareraCanadaAmy Elsner NEGOTIATION
Greenwood E MaletCanadaStephen Shaw NEGOTIATION
Francesco L VenereItalyAsiya Javayant NEW
Aika N NickaUnited KingdomStephen Shaw NEW
Kadeem L RulapaughJapanXuxue Feng UNQUALIFIED
Smith H OldroydRussiaXuxue Feng UNQUALIFIED
Deepesh D ChuiRussiaAmy Elsner RENEWAL
Costa U MaletCanadaIoni Bowcher NEGOTIATION
Claire I FlosiJapanStephen Shaw PROPOSAL
Claire I FigeroaIndiaOnyama Limba 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>