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
Aika V GarufiBrazilXuxue Feng QUALIFIED
David H CaudyUnited KingdomStephen Shaw UNQUALIFIED
Leon J MacleadArgentinaXuxue Feng NEW
Murillo V BriddickIndiaIoni Bowcher NEGOTIATION
Arvin I NickaFranceXuxue Feng NEW
Octavia C RutaFranceAnna Fali UNQUALIFIED
Juan B RimUnited KingdomIoni Bowcher QUALIFIED
Claire X BologniaArgentinaBernardo Dominic QUALIFIED
Izzy H SaylorsCanadaIvan Magalhaes PROPOSAL
Jefferson H SlusarskiCanadaStephen Shaw UNQUALIFIED
Emily C IturbideUnited KingdomXuxue Feng QUALIFIED
Clifford B IturbideGermanyAsiya Javayant QUALIFIED
Sinclair S MaletItalyIvan Magalhaes NEW
Maria E MarrierSpainBernardo Dominic UNQUALIFIED
Deepesh G NestleSpainIvan Magalhaes QUALIFIED
Leon W OldroydGermanyAmy Elsner NEGOTIATION
Kadeem J PoquetteAustraliaIoni Bowcher NEW
Cody A ChuiBrazilIvan Magalhaes NEW
Salvatore V VenereGermanyXuxue Feng UNQUALIFIED
Ricardo I PaprockiCanadaElwin Sharvill RENEWAL
Arvin B MorascaAustraliaStephen Shaw QUALIFIED
Jones S GillianRussiaElwin Sharvill RENEWAL
Ivar R SlusarskiFranceElwin Sharvill RENEWAL
Francesco F AlbaresCanadaOnyama Limba RENEWAL
Jeanfrancois C GillianAustraliaAmy Elsner UNQUALIFIED
Ivar Y PoquetteBrazilIoni Bowcher QUALIFIED
Misaki I MacleadItalyAnna Fali PROPOSAL
Julie P SaylorsJapanStephen Shaw NEGOTIATION
Murillo O FigeroaUnited KingdomBernardo Dominic NEW
Salvatore G SergiArgentinaIvan Magalhaes NEGOTIATION
Nicolas G BowleyAustraliaElwin Sharvill UNQUALIFIED
Wickens K NickaGermanyBernardo Dominic RENEWAL
Greenwood T ChuiRussiaElwin Sharvill RENEWAL
Emily A IturbideSpainAsiya Javayant NEW
Mayumi A ButtAustraliaAnna Fali UNQUALIFIED
Aika J ChuiIndiaIvan Magalhaes NEW
Maisha E RulapaughAustraliaIvan Magalhaes PROPOSAL
Alejandro E BriddickBrazilAsiya Javayant PROPOSAL
Tony H KuskoJapanStephen Shaw PROPOSAL
Leja U GarufiGermanyAnna Fali UNQUALIFIED
Leon J CaudyBrazilAsiya Javayant UNQUALIFIED
Chavez C IturbideRussiaAmy Elsner NEW
Jones U SaylorsArgentinaBernardo Dominic QUALIFIED
Mayumi N ChuiBrazilXuxue Feng PROPOSAL
Morrow A RulapaughAustraliaAsiya Javayant RENEWAL
Sinclair Q ChuiIndiaIvan Magalhaes PROPOSAL
Antonio O FollerRussiaBernardo Dominic NEW
Silvio L BowleyJapanStephen Shaw UNQUALIFIED
Francesco T InouyeItalyBernardo Dominic PROPOSAL
Aika K NestleArgentinaStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Darci I AlbaresRussiaIvan Magalhaes NEGOTIATION
Leon R PoquetteItalyStephen Shaw PROPOSAL
Adams J RulapaughFranceIoni Bowcher NEW
Juan C KuskoUnited KingdomIvan Magalhaes RENEWAL
Maisha C PoquetteItalyStephen Shaw NEW
Maisha F ButtItalyAmy Elsner NEGOTIATION
Faith H PoquetteUnited KingdomXuxue Feng UNQUALIFIED
Maria C WaycottAustraliaAnna Fali QUALIFIED
Faith W SergiBrazilIoni Bowcher PROPOSAL
Morrow X BriddickFranceOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna J GauchoIndia2026-10-10Dorl, James J Esq PROPOSAL31Anna Fali
1001Chavez B FerenczAustralia2026-10-23Feiner Bros UNQUALIFIED26Ivan Magalhaes
1002Faith F FollerJapan2026-10-26King, Christopher A Esq NEW90Anna Fali
1003Maisha Y PerinSpain2026-10-21Printing Dimensions PROPOSAL81Ioni Bowcher
1004Costa A CaldareraRussia2026-10-27Chemel, James L Cpa QUALIFIED80Asiya Javayant
1005Munro D OstroskySpain2026-10-18Chemel, James L Cpa RENEWAL54Stephen Shaw
1006Wickens L WieserItaly2026-10-28Chanay, Jeffrey A Esq NEGOTIATION51Stephen Shaw
1007Chavez V KolmetzAustralia2026-10-29Buckley Miller Wright PROPOSAL27Ioni Bowcher
1008Julie F DilliardSpain2026-10-04Dorl, James J Esq RENEWAL93Amy Elsner
1009Emily A VocelkaIndia2026-10-22Chemel, James L Cpa PROPOSAL37Onyama Limba
1010Cody U ButtArgentina2026-10-17Chanay, Jeffrey A Esq UNQUALIFIED17Elwin Sharvill
1011Costa L WieserCanada2026-10-24Truhlar And Truhlar Attys NEW74Asiya Javayant
1012Kaitlin W InouyeArgentina2026-10-30Dorl, James J Esq QUALIFIED36Anna Fali
1013Emily B PerinFrance2026-10-29Chapman, Ross E Esq PROPOSAL20Onyama Limba
1014David A SchemmerBrazil2026-10-23Benton, John B Jr NEGOTIATION23Anna Fali
1015Silvio J PerinAustralia2026-10-25Truhlar And Truhlar Attys QUALIFIED55Ivan Magalhaes
1016Kaitlin L VocelkaIndia2026-10-12Feltz Printing Service NEGOTIATION36Asiya Javayant
1017Aruna S PerinBrazil2026-10-26Chemel, James L Cpa NEW7Stephen Shaw
1018David F MarrierSpain2026-10-15Feltz Printing Service PROPOSAL38Elwin Sharvill
1019Kadeem H GauchoBrazil2026-10-06Feiner Bros NEGOTIATION40Onyama Limba
1020Ivar I CaldareraIndia2026-10-30Commercial Press RENEWAL74Amy Elsner
1021Stacey T WaycottFrance2026-10-14Feltz Printing Service RENEWAL10Onyama Limba
1022Maria C MacleadItaly2026-10-12Rangoni Of Florence PROPOSAL85Asiya Javayant
1023Deepesh B MacleadSpain2026-10-24Printing Dimensions NEW74Elwin Sharvill
1024Julie B GillianSpain2026-10-16King, Christopher A Esq PROPOSAL3Elwin Sharvill
1025Ricardo B FigeroaFrance2026-10-07Truhlar And Truhlar Attys RENEWAL5Anna Fali
1026Munro A OldroydIndia2026-10-16Truhlar And Truhlar Attys PROPOSAL74Ioni Bowcher
1027Alejandro I RutaItaly2026-10-30Rousseaux, Michael Esq QUALIFIED30Elwin Sharvill
1028Smith F SaylorsJapan2026-10-16Feltz Printing Service NEW31Bernardo Dominic
1029Wickens L SchemmerGermany2026-10-15Rousseaux, Michael Esq PROPOSAL36Anna Fali
1030David Y KolmetzItaly2026-10-20Dorl, James J Esq NEW31Anna Fali
1031Smith I BowleyBrazil2026-10-24Feltz Printing Service QUALIFIED84Stephen Shaw
1032Leja W PerinFrance2026-10-15Truhlar And Truhlar Attys RENEWAL34Stephen Shaw
1033Nicolas O PaprockiUnited Kingdom2026-10-31Printing Dimensions NEW70Anna Fali
1034Ivar M RoysterArgentina2026-10-29Chanay, Jeffrey A Esq UNQUALIFIED77Ioni Bowcher
1035Leon T BologniaItaly2026-10-20Dorl, James J Esq QUALIFIED76Ivan Magalhaes
1036Sinclair K SaylorsItaly2026-10-22Printing Dimensions QUALIFIED87Xuxue Feng
1037Jones O GlickFrance2026-10-05Buckley Miller Wright RENEWAL2Anna Fali
1038Aditya G StockhamIndia2026-11-02Chanay, Jeffrey A Esq NEGOTIATION95Ivan Magalhaes
1039Wickens T BriddickIndia2026-10-06Chapman, Ross E Esq QUALIFIED67Amy Elsner
1040Chavez W DarakjyBrazil2026-10-16Chapman, Ross E Esq NEW42Stephen Shaw
1041Antonio P FerenczArgentina2026-10-17King, Christopher A Esq NEW54Xuxue Feng
1042Arvin I MaletJapan2026-10-18Commercial Press NEW93Anna Fali
1043Leja S StensethBrazil2026-10-22Rangoni Of Florence NEGOTIATION4Ivan Magalhaes
1044Antonio I ChuiCanada2026-10-08Rangoni Of Florence NEGOTIATION79Onyama Limba
1045Aika K MorascaFrance2026-10-07King, Christopher A Esq RENEWAL39Asiya Javayant
1046Maria K FigeroaGermany2026-11-01Chanay, Jeffrey A Esq NEW9Ioni Bowcher
1047Francesco D CampainItaly2026-10-30Rangoni Of Florence RENEWAL89Stephen Shaw
1048Isabel E BowleyJapan2026-10-05Feltz Printing Service PROPOSAL94Bernardo Dominic
1049Johnson B BowleySpain2026-10-30Rangoni Of Florence UNQUALIFIED97Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Cody B NickaRussiaAnna Fali UNQUALIFIED
James Y DoeGermanyElwin Sharvill UNQUALIFIED
Claire W FlosiArgentinaBernardo Dominic NEGOTIATION
Ivar U FollerUnited KingdomIoni Bowcher RENEWAL
Deepesh S RimSpainStephen Shaw PROPOSAL
Juan B VenereBrazilElwin Sharvill QUALIFIED
Tony S BriddickArgentinaIvan Magalhaes PROPOSAL
Faith U RutaIndiaStephen Shaw RENEWAL
Maria Y GauchoJapanBernardo Dominic RENEWAL
Julie D RutaItalyElwin Sharvill PROPOSAL
Isabel B WieserArgentinaAmy Elsner NEW
Ricardo C StockhamFranceElwin Sharvill NEGOTIATION
Isabel G DoeJapanIvan Magalhaes PROPOSAL
Sinclair F FigeroaIndiaAsiya Javayant NEW
Sinclair Y GarufiItalyAsiya Javayant PROPOSAL
Sinclair Y VenereItalyIvan Magalhaes PROPOSAL
Jefferson L CampainCanadaAmy Elsner PROPOSAL
Faith W FlosiGermanyIvan Magalhaes NEW
Nicolas A SlusarskiAustraliaAnna Fali PROPOSAL
Maria A SchemmerGermanyXuxue Feng NEW
Chavez U ButtJapanIvan Magalhaes NEGOTIATION
Kaitlin F OstroskyFranceIvan Magalhaes UNQUALIFIED
Arvin J SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Sinclair C BriddickArgentinaAnna Fali PROPOSAL
Francesco C AmigonGermanyIvan Magalhaes QUALIFIED
Sinclair D SergiSpainXuxue Feng RENEWAL
Mujtaba X SaylorsArgentinaAnna Fali QUALIFIED
Darci Z WhobreyUnited KingdomIvan Magalhaes QUALIFIED
Arvin I CampainFranceAnna Fali UNQUALIFIED
Alejandro X MarrierIndiaIoni Bowcher UNQUALIFIED
Jefferson S VenereItalyBernardo Dominic RENEWAL
Juan U VocelkaCanadaAmy Elsner NEW
Clifford U DoeBrazilElwin Sharvill UNQUALIFIED
Leja Q AlbaresRussiaXuxue Feng NEW
Kaitlin M StockhamIndiaAsiya Javayant PROPOSAL
Leon A CaldareraArgentinaAsiya Javayant NEW
Faith K ChuiSpainStephen Shaw NEW
Chavez W WieserSpainElwin Sharvill UNQUALIFIED
Clifford G FollerCanadaIvan Magalhaes PROPOSAL
Rodrigues M MacleadIndiaXuxue Feng RENEWAL
Aika N AmigonCanadaElwin Sharvill PROPOSAL
Sinclair D ShinkoBrazilIoni Bowcher NEGOTIATION
Claire V SergiArgentinaBernardo Dominic PROPOSAL
Alejandro E FigeroaItalyAsiya Javayant PROPOSAL
Silvio F SchemmerRussiaAmy Elsner UNQUALIFIED
Jefferson R AmigonRussiaAnna Fali NEGOTIATION
Claire Y BriddickArgentinaIvan Magalhaes NEGOTIATION
Antonio V ChuiRussiaAnna Fali NEGOTIATION
Johnson O FollerBrazilElwin Sharvill NEGOTIATION
Aika K DarakjySpainOnyama Limba UNQUALIFIED
Frozen Columns
Name
Sinclair V Perin
Julie O Stockham
Deepesh M Whobrey
Faith Y Gaucho
Costa F Gaucho
Aditya R Rulapaugh
Juan D Wieser
Mujtaba P Foller
David E Shinko
Darci K Inouye
Mujtaba F Briddick
David J Ostrosky
Munro G Rulapaugh
Wickens M Bowley
Ashley K Gaucho
Rodrigues Y Stenseth
Claire H Ostrosky
Wickens C Kusko
Misaki D Poquette
Kaitlin I Shinko
Emily M Ferencz
Murillo J Slusarski
Octavia X Iturbide
Deepesh K Gaucho
Chavez Z Slusarski
Aruna C Malet
Darci L Ferencz
Cody H Paprocki
Kadeem V Wieser
Emily T Caldarera
Deepesh S Royster
Maisha U Paprocki
David B Ruta
Jones Z Wieser
Aditya S Marrier
Ashley A Stenseth
Jones E Venere
Ricardo F Foller
David R Glick
Morrow C Figeroa
Jeanfrancois M Darakjy
Jennifer S Iturbide
Wickens N Chui
Francesco J Waycott
Darci D Kusko
Darci W Foller
Aditya A Ostrosky
Jones Q Sergi
Arvin M Caudy
Clifford W Albares
IdCountryDate
1000Russia2026-10-28
1001Italy2026-10-25
1002Russia2026-10-10
1003Japan2026-10-21
1004France2026-10-23
1005India2026-10-06
1006Canada2026-10-31
1007Spain2026-10-22
1008United Kingdom2026-10-21
1009Japan2026-10-07
1010Italy2026-10-19
1011Germany2026-10-11
1012Italy2026-10-22
1013France2026-10-16
1014Spain2026-10-08
1015India2026-10-27
1016Russia2026-10-14
1017India2026-10-09
1018Spain2026-10-29
1019Australia2026-10-25
1020Japan2026-10-27
1021Canada2026-10-09
1022Russia2026-11-02
1023Argentina2026-10-27
1024Germany2026-10-15
1025Brazil2026-11-02
1026France2026-10-22
1027United Kingdom2026-10-27
1028Italy2026-10-23
1029France2026-10-06
1030France2026-10-12
1031Spain2026-10-22
1032Canada2026-10-16
1033Russia2026-10-13
1034France2026-10-05
1035Germany2026-10-05
1036France2026-10-17
1037Spain2026-10-04
1038Argentina2026-10-12
1039Italy2026-10-24
1040India2026-10-27
1041Germany2026-10-24
1042Germany2026-10-20
1043Spain2026-10-27
1044France2026-10-08
1045Australia2026-10-05
1046Germany2026-10-18
1047Brazil2026-10-24
1048Australia2026-10-29
1049Germany2026-10-16

On-Demand Data

NameIdCountryDate
Sinclair T Malet1000Spain2026-10-21
Johnson S Ostrosky1001Germany2026-10-07
Munro Q Caudy1002Italy2026-10-13
Sinclair C Glick1003Italy2026-11-02
Jefferson F Bolognia1004Germany2026-10-23
David F Figeroa1005Japan2026-10-15
Murillo Z Perin1006United Kingdom2026-11-02
Aditya Q Royster1007India2026-10-19
Jeanfrancois F Whobrey1008United Kingdom2026-10-11
Maria P Campain1009Brazil2026-10-19
David D Kusko1010Japan2026-10-21
Rodrigues X Saylors1011Argentina2026-11-01
Greenwood K Ostrosky1012United Kingdom2026-10-14
Maria V Stockham1013France2026-10-31
Jones S Gillian1014France2026-11-01
Ricardo L Paprocki1015Japan2026-10-08
Ricardo E Flosi1016United Kingdom2026-10-31
Mayumi O Malet1017India2026-10-17
Leon L Inouye1018United Kingdom2026-10-30
Ricardo I Shinko1019Brazil2026-10-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia Y PaprockiBrazilAnna Fali UNQUALIFIED
Smith E VocelkaSpainElwin Sharvill UNQUALIFIED
Munro X PoquetteUnited KingdomAnna Fali QUALIFIED
Antonio Q MorascaRussiaStephen Shaw NEW
Alejandro B MarrierSpainElwin Sharvill NEW
Chavez V PerinAustraliaStephen Shaw RENEWAL
Izzy Z KolmetzAustraliaIvan Magalhaes NEGOTIATION
Stacey A IturbideItalyStephen Shaw RENEWAL
Francesco F SergiSpainOnyama Limba RENEWAL
Adams N DilliardItalyStephen Shaw NEW
Jones K MarrierJapanOnyama Limba NEGOTIATION
Murillo R ButtIndiaAsiya Javayant NEW
Ricardo K BriddickIndiaIoni Bowcher QUALIFIED
James V KuskoRussiaStephen Shaw QUALIFIED
Leja D SaylorsBrazilOnyama Limba RENEWAL
Nicolas H CampainUnited KingdomXuxue Feng PROPOSAL
Isabel C MacleadUnited KingdomXuxue Feng PROPOSAL
Morrow M FlosiArgentinaAmy Elsner NEGOTIATION
Ivar L OldroydRussiaBernardo Dominic RENEWAL
Jefferson H AmigonSpainAnna Fali QUALIFIED
Claire I GillianFranceOnyama Limba NEGOTIATION
Chavez D StensethAustraliaElwin Sharvill RENEWAL
Clifford O DoeIndiaAnna Fali RENEWAL
Maisha F VocelkaJapanAmy Elsner PROPOSAL
Sinclair V VenereRussiaAsiya Javayant NEW
Kaitlin I OstroskyUnited KingdomOnyama Limba UNQUALIFIED
Murillo Q AmigonUnited KingdomXuxue Feng UNQUALIFIED
Greenwood Y GarufiSpainAnna Fali PROPOSAL
Kaitlin Z RoysterUnited KingdomOnyama Limba NEGOTIATION
Tony B MorascaRussiaStephen Shaw RENEWAL
Deepesh A BowleyArgentinaOnyama Limba UNQUALIFIED
Alejandro G BowleyArgentinaStephen Shaw PROPOSAL
Maria V FigeroaAustraliaAmy Elsner NEGOTIATION
Maisha F MorascaItalyStephen Shaw NEGOTIATION
Misaki X PaprockiCanadaAsiya Javayant NEGOTIATION
Ashley O MaletFranceAmy Elsner NEW
Mujtaba K CaldareraJapanAnna Fali QUALIFIED
Leon N VenereCanadaElwin Sharvill UNQUALIFIED
Claire L DoeItalyAmy Elsner NEGOTIATION
Darci O SaylorsSpainIoni Bowcher NEGOTIATION

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