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
Misaki N SergiBrazilStephen Shaw UNQUALIFIED
Misaki T PoquetteItalyStephen Shaw RENEWAL
Faith Y DarakjyGermanyIoni Bowcher NEW
Jones F WhobreyItalyXuxue Feng PROPOSAL
Adams I DilliardRussiaIoni Bowcher NEW
Mujtaba A PerinArgentinaAmy Elsner NEGOTIATION
Costa U AmigonIndiaOnyama Limba PROPOSAL
Francesco A GillianArgentinaAmy Elsner NEW
Deepesh P VenereJapanStephen Shaw PROPOSAL
David I ButtSpainIoni Bowcher RENEWAL
Julie C WaycottBrazilXuxue Feng NEW
Chavez B RimAustraliaXuxue Feng NEGOTIATION
Adams T SaylorsRussiaAsiya Javayant NEW
Jeanfrancois I MorascaCanadaAsiya Javayant PROPOSAL
Sinclair R GillianFranceAnna Fali UNQUALIFIED
Johnson P WieserJapanAmy Elsner NEGOTIATION
Smith T NestleJapanAmy Elsner NEW
Johnson F NestleBrazilAnna Fali NEW
Stacey G DilliardSpainAsiya Javayant PROPOSAL
Wickens F AlbaresUnited KingdomAnna Fali UNQUALIFIED
Jones W AlbaresGermanyBernardo Dominic QUALIFIED
Francesco K CaldareraSpainIoni Bowcher UNQUALIFIED
Morrow P ButtArgentinaAnna Fali PROPOSAL
Faith M FigeroaItalyStephen Shaw NEW
Murillo P CampainSpainBernardo Dominic NEW
Mayumi F BowleyUnited KingdomAsiya Javayant NEW
Ivar R CaldareraUnited KingdomAnna Fali NEGOTIATION
Maria N RulapaughArgentinaStephen Shaw NEGOTIATION
Juan Z AlbaresItalyAmy Elsner NEGOTIATION
Octavia G PerinArgentinaIvan Magalhaes RENEWAL
Costa F RutaFranceIoni Bowcher NEGOTIATION
Ricardo D ChuiCanadaIvan Magalhaes QUALIFIED
Jefferson Q DoeIndiaAnna Fali PROPOSAL
Munro F NickaItalyOnyama Limba NEGOTIATION
Darci R AmigonUnited KingdomAmy Elsner UNQUALIFIED
Johnson U ButtGermanyAnna Fali QUALIFIED
Misaki B SlusarskiUnited KingdomAmy Elsner UNQUALIFIED
Adams M WaycottIndiaStephen Shaw QUALIFIED
Leon R AlbaresSpainXuxue Feng QUALIFIED
Stacey U MaletAustraliaAmy Elsner UNQUALIFIED
Silvio Z WhobreyArgentinaOnyama Limba UNQUALIFIED
Mayumi V FerenczIndiaAmy Elsner PROPOSAL
Faith B MarrierCanadaAnna Fali QUALIFIED
Izzy Q GarufiUnited KingdomAmy Elsner QUALIFIED
Sinclair B AmigonUnited KingdomStephen Shaw QUALIFIED
Claire E RoysterRussiaAnna Fali RENEWAL
Tony H DarakjySpainIvan Magalhaes NEGOTIATION
James X SaylorsFranceIoni Bowcher NEGOTIATION
Smith B RimJapanAnna Fali NEGOTIATION
David V RoysterSpainBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Chavez U FigeroaUnited KingdomBernardo Dominic PROPOSAL
James K GarufiUnited KingdomElwin Sharvill UNQUALIFIED
Izzy F VocelkaCanadaAmy Elsner NEGOTIATION
Salvatore J RulapaughFranceStephen Shaw UNQUALIFIED
Claire K StensethIndiaIvan Magalhaes QUALIFIED
Francesco V KolmetzGermanyAmy Elsner NEGOTIATION
Octavia B ButtFranceIvan Magalhaes QUALIFIED
Julie X GauchoRussiaAmy Elsner RENEWAL
Kadeem W BriddickItalyIoni Bowcher NEW
Johnson C AlbaresBrazilOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya N RimIndia2026-10-30Truhlar And Truhlar Attys RENEWAL90Xuxue Feng
1001Maria W WhobreyItaly2026-11-14Chapman, Ross E Esq UNQUALIFIED76Anna Fali
1002Alejandro B GillianIndia2026-11-07Rangoni Of Florence QUALIFIED60Ivan Magalhaes
1003Silvio F StensethIndia2026-11-11Chanay, Jeffrey A Esq PROPOSAL18Bernardo Dominic
1004Tony W SergiFrance2026-10-28Rousseaux, Michael Esq QUALIFIED26Bernardo Dominic
1005Misaki V DarakjyIndia2026-10-29Commercial Press QUALIFIED88Ioni Bowcher
1006Leja N IturbideJapan2026-11-04Benton, John B Jr UNQUALIFIED8Xuxue Feng
1007Izzy B OldroydGermany2026-10-31Chemel, James L Cpa PROPOSAL66Onyama Limba
1008Jefferson N AlbaresArgentina2026-10-16Buckley Miller Wright PROPOSAL1Ivan Magalhaes
1009David G ShinkoGermany2026-11-07King, Christopher A Esq NEGOTIATION28Amy Elsner
1010Munro B RimRussia2026-11-09Feltz Printing Service PROPOSAL55Elwin Sharvill
1011Johnson U FollerIndia2026-10-19Benton, John B Jr PROPOSAL78Elwin Sharvill
1012Greenwood E MaletAustralia2026-10-19Chapman, Ross E Esq QUALIFIED49Amy Elsner
1013Julie W MorascaArgentina2026-11-10Rangoni Of Florence NEGOTIATION81Ioni Bowcher
1014Kadeem P WieserJapan2026-11-06Dorl, James J Esq NEW85Xuxue Feng
1015Ricardo N CaudyFrance2026-10-27Morlong Associates UNQUALIFIED15Asiya Javayant
1016Munro C SchemmerFrance2026-11-06Chanay, Jeffrey A Esq PROPOSAL92Stephen Shaw
1017Francesco E PaprockiRussia2026-10-27Chapman, Ross E Esq NEGOTIATION86Elwin Sharvill
1018Leon X VenereJapan2026-11-05Benton, John B Jr UNQUALIFIED41Ivan Magalhaes
1019Clifford T GillianFrance2026-11-06King, Christopher A Esq NEW60Elwin Sharvill
1020Wickens T WhobreyUnited Kingdom2026-10-24Feltz Printing Service RENEWAL57Anna Fali
1021Kadeem Q PoquetteBrazil2026-10-26Printing Dimensions NEGOTIATION98Ivan Magalhaes
1022Jeanfrancois S IturbideAustralia2026-10-17Truhlar And Truhlar Attys RENEWAL89Stephen Shaw
1023Leja D MorascaIndia2026-11-14Commercial Press UNQUALIFIED87Ivan Magalhaes
1024Francesco U DilliardIndia2026-11-08Rangoni Of Florence QUALIFIED60Stephen Shaw
1025Greenwood A PaprockiRussia2026-10-28Feltz Printing Service PROPOSAL0Bernardo Dominic
1026Mayumi L RoysterItaly2026-10-27Benton, John B Jr NEGOTIATION3Ivan Magalhaes
1027Juan U RimCanada2026-11-12Rousseaux, Michael Esq PROPOSAL0Asiya Javayant
1028Juan S SergiArgentina2026-11-04Feiner Bros NEGOTIATION11Ivan Magalhaes
1029Darci S WhobreyItaly2026-10-22Printing Dimensions NEW27Anna Fali
1030Jefferson Q RimRussia2026-10-22Chapman, Ross E Esq NEGOTIATION66Amy Elsner
1031Faith K FigeroaFrance2026-11-05Morlong Associates NEGOTIATION51Xuxue Feng
1032David Z RoysterFrance2026-11-08Truhlar And Truhlar Attys UNQUALIFIED52Ivan Magalhaes
1033Aika A CaldareraAustralia2026-11-03Buckley Miller Wright NEGOTIATION3Stephen Shaw
1034Kaitlin I AlbaresItaly2026-11-09Printing Dimensions RENEWAL82Elwin Sharvill
1035Faith H FlosiArgentina2026-10-26Benton, John B Jr NEW95Bernardo Dominic
1036Sinclair V MorascaGermany2026-11-13Feiner Bros NEW5Bernardo Dominic
1037David I IturbideItaly2026-10-30Chemel, James L Cpa QUALIFIED80Onyama Limba
1038Costa E AmigonJapan2026-10-29Rousseaux, Michael Esq RENEWAL58Amy Elsner
1039Chavez D StensethAustralia2026-10-29Chapman, Ross E Esq QUALIFIED74Anna Fali
1040Clifford T DarakjyRussia2026-10-19Rousseaux, Michael Esq UNQUALIFIED70Ioni Bowcher
1041Jefferson I WieserUnited Kingdom2026-10-24Chanay, Jeffrey A Esq NEGOTIATION49Ivan Magalhaes
1042Sinclair U MarrierCanada2026-11-07Rousseaux, Michael Esq NEGOTIATION10Bernardo Dominic
1043Alejandro H WaycottGermany2026-10-27King, Christopher A Esq QUALIFIED78Elwin Sharvill
1044Mujtaba L SchemmerUnited Kingdom2026-11-06Chanay, Jeffrey A Esq UNQUALIFIED94Ioni Bowcher
1045Munro G StockhamBrazil2026-10-19Feltz Printing Service NEW96Anna Fali
1046Mayumi I GlickRussia2026-11-07Rousseaux, Michael Esq NEW11Onyama Limba
1047Salvatore I StockhamIndia2026-10-17Feiner Bros RENEWAL79Anna Fali
1048Mayumi H NickaGermany2026-10-19Chemel, James L Cpa UNQUALIFIED49Anna Fali
1049Ashley K SlusarskiItaly2026-10-19Morlong Associates NEW69Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Morrow N GarufiArgentinaOnyama Limba NEGOTIATION
Aika P ChuiCanadaAsiya Javayant RENEWAL
Nicolas K PaprockiCanadaIoni Bowcher UNQUALIFIED
Jefferson T MarrierGermanyBernardo Dominic UNQUALIFIED
James F OldroydJapanStephen Shaw PROPOSAL
Ivar Q PerinRussiaStephen Shaw PROPOSAL
Silvio I ButtCanadaIvan Magalhaes NEW
Juan R FerenczIndiaOnyama Limba RENEWAL
Aika V StensethSpainIvan Magalhaes NEGOTIATION
Aruna N NestleAustraliaElwin Sharvill NEGOTIATION
Alejandro M StockhamCanadaOnyama Limba UNQUALIFIED
Aditya R NestleJapanStephen Shaw NEW
Leja L DoeArgentinaAnna Fali NEW
Silvio T PerinItalyElwin Sharvill PROPOSAL
Faith N RimUnited KingdomOnyama Limba NEW
Murillo C RoysterArgentinaIvan Magalhaes PROPOSAL
Murillo T KuskoUnited KingdomXuxue Feng QUALIFIED
Antonio B CaldareraRussiaAnna Fali UNQUALIFIED
Ashley Z AlbaresJapanIvan Magalhaes QUALIFIED
Kadeem R IturbideUnited KingdomAmy Elsner RENEWAL
Arvin H WhobreyItalyAmy Elsner RENEWAL
Kaitlin V CampainCanadaAsiya Javayant UNQUALIFIED
Leon R SlusarskiBrazilAsiya Javayant PROPOSAL
Mayumi W PaprockiItalyAmy Elsner QUALIFIED
Emily G PerinBrazilAnna Fali NEW
Deepesh C CaudyJapanStephen Shaw NEW
Greenwood Y GarufiAustraliaAsiya Javayant PROPOSAL
Mayumi O OldroydJapanAnna Fali NEGOTIATION
Leon A ButtAustraliaIvan Magalhaes QUALIFIED
Silvio J FerenczFranceStephen Shaw RENEWAL
Cody G VocelkaSpainAmy Elsner UNQUALIFIED
Francesco Y CaudyFranceXuxue Feng QUALIFIED
Mayumi G VenereIndiaElwin Sharvill UNQUALIFIED
Stacey Q FigeroaItalyAsiya Javayant QUALIFIED
Claire S GauchoGermanyXuxue Feng PROPOSAL
Munro B ButtGermanyElwin Sharvill PROPOSAL
Sinclair F PerinItalyXuxue Feng QUALIFIED
Isabel M GarufiRussiaIoni Bowcher RENEWAL
Tony G BowleyBrazilStephen Shaw NEGOTIATION
Darci J VenereSpainIoni Bowcher RENEWAL
Maisha F ChuiItalyIvan Magalhaes PROPOSAL
Mayumi U IturbideJapanAnna Fali PROPOSAL
Johnson F DarakjyBrazilIoni Bowcher UNQUALIFIED
Maria F CampainItalyXuxue Feng QUALIFIED
Arvin L RimGermanyBernardo Dominic PROPOSAL
Smith J RutaUnited KingdomAmy Elsner NEW
Ashley B FollerRussiaBernardo Dominic RENEWAL
Costa B AmigonSpainIoni Bowcher NEW
Munro I AmigonGermanyIvan Magalhaes RENEWAL
Aika X MorascaUnited KingdomAnna Fali NEGOTIATION
Frozen Columns
Name
Isabel L Gillian
Octavia P Albares
Leon U Garufi
Clifford L Darakjy
Stacey F Butt
James B Malet
Kaitlin Z Morasca
Ivar G Oldroyd
Cody A Albares
Jones D Chui
Aditya X Caudy
Leja B Caldarera
Ashley E Sergi
Ivar M Briddick
Leja Z Inouye
Aruna G Poquette
Wickens R Nestle
Johnson G Caldarera
Aika W Iturbide
Isabel T Whobrey
Emily W Nicka
Aruna D Rulapaugh
Leja C Schemmer
Leja G Wieser
Chavez N Glick
Nicolas Y Chui
Clifford D Morasca
Faith Z Waycott
David B Perin
Greenwood C Waycott
Smith I Saylors
James A Tollner
Leon C Iturbide
Octavia A Doe
Faith Q Rim
Wickens G Marrier
David Z Foller
Costa T Caldarera
Tony D Campain
Morrow C Stockham
Silvio L Flosi
Deepesh E Bolognia
Greenwood H Slusarski
Silvio V Perin
Greenwood J Gaucho
Johnson G Gaucho
Jefferson D Iturbide
Ashley Z Oldroyd
Jennifer V Nestle
Deepesh U Flosi
IdCountryDate
1000Canada2026-11-10
1001Germany2026-10-16
1002Argentina2026-11-04
1003Japan2026-10-22
1004Canada2026-10-18
1005Brazil2026-10-18
1006Spain2026-11-10
1007India2026-11-02
1008Spain2026-10-18
1009Italy2026-10-28
1010Italy2026-10-27
1011Spain2026-11-09
1012Spain2026-10-31
1013France2026-10-20
1014France2026-11-08
1015India2026-11-04
1016Italy2026-11-14
1017United Kingdom2026-10-18
1018Spain2026-11-14
1019United Kingdom2026-11-04
1020Spain2026-10-30
1021Spain2026-11-09
1022Canada2026-10-26
1023Australia2026-11-09
1024United Kingdom2026-10-18
1025France2026-10-24
1026India2026-11-06
1027India2026-11-04
1028Australia2026-10-19
1029India2026-10-26
1030Argentina2026-10-25
1031Argentina2026-10-23
1032India2026-11-06
1033Canada2026-10-16
1034Brazil2026-10-17
1035Canada2026-10-18
1036Argentina2026-11-14
1037India2026-11-08
1038Canada2026-10-21
1039Canada2026-10-27
1040Germany2026-10-19
1041India2026-10-19
1042India2026-10-19
1043Argentina2026-11-03
1044Brazil2026-11-01
1045Russia2026-10-20
1046United Kingdom2026-11-14
1047United Kingdom2026-10-17
1048Russia2026-10-18
1049Germany2026-11-01

On-Demand Data

NameIdCountryDate
Adams N Butt1000France2026-11-07
Juan P Inouye1001United Kingdom2026-10-27
Tony B Malet1002Italy2026-10-23
Tony S Maclead1003France2026-10-21
Faith W Doe1004Russia2026-11-05
Aruna D Morasca1005Australia2026-10-28
Isabel S Albares1006United Kingdom2026-10-31
Rodrigues E Venere1007India2026-10-23
James M Stenseth1008United Kingdom2026-11-04
Tony S Whobrey1009Italy2026-10-17
Darci O Gillian1010Spain2026-10-26
Emily O Oldroyd1011Canada2026-11-08
Aditya F Dilliard1012Brazil2026-11-14
Adams O Caldarera1013Brazil2026-10-28
Antonio F Whobrey1014Argentina2026-10-25
Izzy J Foller1015Germany2026-10-23
Claire V Vocelka1016Germany2026-11-03
Isabel D Gillian1017Canada2026-11-01
Francesco O Rulapaugh1018Germany2026-11-09
Smith A Shinko1019Russia2026-11-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo K RoysterFranceStephen Shaw NEW
Munro P CaudyUnited KingdomBernardo Dominic RENEWAL
Emily G DoeBrazilStephen Shaw RENEWAL
Jones O WieserSpainStephen Shaw QUALIFIED
Ivar H AlbaresArgentinaXuxue Feng PROPOSAL
Leon L MacleadGermanyAsiya Javayant QUALIFIED
Juan S NestleArgentinaStephen Shaw PROPOSAL
Francesco Y ShinkoRussiaBernardo Dominic NEW
Octavia E SchemmerRussiaIvan Magalhaes PROPOSAL
Faith R NestleBrazilIvan Magalhaes QUALIFIED
Julie D NestleSpainIoni Bowcher NEW
Aruna V VocelkaSpainAnna Fali PROPOSAL
Murillo T GauchoAustraliaStephen Shaw QUALIFIED
Juan W CampainFranceOnyama Limba RENEWAL
Juan N StensethGermanyXuxue Feng UNQUALIFIED
Greenwood K KolmetzSpainOnyama Limba NEW
Leon H SchemmerCanadaStephen Shaw UNQUALIFIED
Aruna A MacleadRussiaBernardo Dominic QUALIFIED
Chavez R CaudyBrazilIoni Bowcher NEGOTIATION
Claire E GarufiJapanAnna Fali QUALIFIED
Leon H KuskoJapanElwin Sharvill NEGOTIATION
Tony S SlusarskiCanadaAsiya Javayant NEGOTIATION
Smith H CaldareraItalyElwin Sharvill RENEWAL
James A NestleIndiaAsiya Javayant PROPOSAL
Emily O FerenczAustraliaAnna Fali NEGOTIATION
Adams P GillianIndiaStephen Shaw RENEWAL
Wickens E DilliardGermanyXuxue Feng PROPOSAL
Leja D MaletFranceIvan Magalhaes PROPOSAL
Deepesh G KolmetzFranceOnyama Limba RENEWAL
Mayumi R VocelkaSpainXuxue Feng QUALIFIED
Octavia W VenereBrazilAmy Elsner PROPOSAL
Salvatore T FollerAustraliaStephen Shaw NEGOTIATION
Mayumi U MarrierCanadaIvan Magalhaes NEGOTIATION
Maisha P MacleadIndiaIoni Bowcher NEW
Adams X CampainSpainElwin Sharvill PROPOSAL
Rodrigues O SaylorsFranceElwin Sharvill QUALIFIED
Ricardo F ShinkoUnited KingdomOnyama Limba RENEWAL
Kaitlin U FlosiItalyIoni Bowcher NEGOTIATION
Greenwood O WieserRussiaBernardo Dominic PROPOSAL
Cody L FerenczJapanXuxue Feng 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>