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
Sinclair L VocelkaRussiaIvan Magalhaes NEGOTIATION
Smith X AmigonJapanIvan Magalhaes NEGOTIATION
Deepesh I SaylorsJapanStephen Shaw NEW
Emily E MaletIndiaIoni Bowcher RENEWAL
Salvatore N NickaArgentinaIvan Magalhaes NEW
Rodrigues O DilliardJapanAmy Elsner NEGOTIATION
Emily S KolmetzJapanAnna Fali NEGOTIATION
Claire C WhobreyAustraliaAnna Fali QUALIFIED
Adams J BowleyRussiaXuxue Feng NEGOTIATION
Mujtaba L VocelkaUnited KingdomElwin Sharvill PROPOSAL
Misaki P ChuiJapanAnna Fali PROPOSAL
Wickens N GarufiGermanyIvan Magalhaes NEW
Antonio W RimItalyStephen Shaw UNQUALIFIED
Juan X CaldareraSpainAsiya Javayant QUALIFIED
Darci O GauchoUnited KingdomAsiya Javayant RENEWAL
Maisha C ButtRussiaElwin Sharvill PROPOSAL
Adams N IturbideCanadaAmy Elsner NEW
Isabel J SchemmerFranceStephen Shaw NEW
Silvio L BowleyUnited KingdomStephen Shaw RENEWAL
Julie J KolmetzRussiaStephen Shaw PROPOSAL
Salvatore A OstroskyIndiaAnna Fali NEW
Octavia L MacleadFranceOnyama Limba NEW
Isabel J IturbideUnited KingdomStephen Shaw NEW
Juan P WaycottUnited KingdomIoni Bowcher QUALIFIED
Antonio G AlbaresIndiaAmy Elsner QUALIFIED
Ashley Y RulapaughJapanOnyama Limba RENEWAL
Jones L SergiCanadaAsiya Javayant NEGOTIATION
Salvatore S RimUnited KingdomAsiya Javayant UNQUALIFIED
Clifford R RoysterItalyAsiya Javayant PROPOSAL
Clifford P RutaGermanyAsiya Javayant NEW
Salvatore L RoysterCanadaElwin Sharvill RENEWAL
Ricardo I TollnerIndiaOnyama Limba NEW
Octavia L RulapaughIndiaBernardo Dominic NEW
Adams J VenereItalyOnyama Limba NEW
Izzy M NickaIndiaAnna Fali NEGOTIATION
Munro Y RulapaughIndiaIvan Magalhaes PROPOSAL
Ricardo R MaletIndiaAsiya Javayant QUALIFIED
David C GauchoArgentinaBernardo Dominic NEW
David X NestleCanadaOnyama Limba UNQUALIFIED
Emily Z WaycottItalyStephen Shaw PROPOSAL
Clifford O CampainAustraliaIvan Magalhaes NEW
Jennifer B BologniaJapanIvan Magalhaes PROPOSAL
Cody S RulapaughFranceAnna Fali NEW
Ricardo U MarrierUnited KingdomAmy Elsner RENEWAL
Ricardo C NestleIndiaAnna Fali NEGOTIATION
Smith G NestleFranceElwin Sharvill NEGOTIATION
Octavia B ShinkoAustraliaOnyama Limba RENEWAL
Leja T MarrierArgentinaStephen Shaw QUALIFIED
Tony B FigeroaArgentinaAnna Fali QUALIFIED
Isabel B GillianJapanAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Sinclair G MaletArgentinaXuxue Feng QUALIFIED
Isabel N ChuiUnited KingdomStephen Shaw QUALIFIED
Ashley E MacleadRussiaXuxue Feng NEGOTIATION
Faith J DilliardArgentinaAnna Fali PROPOSAL
Munro L MaletFranceXuxue Feng NEGOTIATION
Kadeem N WaycottArgentinaXuxue Feng NEGOTIATION
Ashley G AlbaresUnited KingdomBernardo Dominic PROPOSAL
Arvin R FigeroaArgentinaIoni Bowcher NEW
Sinclair W CaldareraItalyStephen Shaw RENEWAL
Mayumi Q WieserBrazilOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley M StockhamItaly2026-09-16Truhlar And Truhlar Attys RENEWAL5Ivan Magalhaes
1001Johnson Q BriddickFrance2026-09-12Chemel, James L Cpa PROPOSAL94Elwin Sharvill
1002David S PerinRussia2026-09-14Buckley Miller Wright NEGOTIATION39Stephen Shaw
1003Aditya Y RutaSpain2026-09-08Buckley Miller Wright NEGOTIATION36Onyama Limba
1004Adams S PaprockiJapan2026-09-20King, Christopher A Esq RENEWAL87Elwin Sharvill
1005Jefferson N BriddickFrance2026-09-09Rangoni Of Florence RENEWAL71Anna Fali
1006Aika M FlosiIndia2026-09-09Feltz Printing Service UNQUALIFIED83Xuxue Feng
1007Stacey F BologniaSpain2026-08-31Commercial Press NEW31Anna Fali
1008Kadeem X DarakjyRussia2026-09-15Benton, John B Jr PROPOSAL73Anna Fali
1009Isabel O ButtItaly2026-09-04Chapman, Ross E Esq RENEWAL31Anna Fali
1010Greenwood M VocelkaFrance2026-08-30Chapman, Ross E Esq PROPOSAL84Stephen Shaw
1011Aika W InouyeAustralia2026-09-11Feltz Printing Service NEW30Bernardo Dominic
1012Morrow F FollerIndia2026-08-29Morlong Associates UNQUALIFIED72Ioni Bowcher
1013James E GauchoBrazil2026-09-20Chapman, Ross E Esq NEW28Elwin Sharvill
1014Greenwood Z FigeroaAustralia2026-09-13Chapman, Ross E Esq QUALIFIED24Onyama Limba
1015Darci E WaycottUnited Kingdom2026-09-15Rousseaux, Michael Esq NEW54Ivan Magalhaes
1016Aditya Y PerinSpain2026-09-06Truhlar And Truhlar Attys NEW71Asiya Javayant
1017Julie X KolmetzCanada2026-09-01Chapman, Ross E Esq QUALIFIED26Stephen Shaw
1018Stacey G PaprockiItaly2026-09-08Feltz Printing Service UNQUALIFIED15Stephen Shaw
1019Aika O VocelkaCanada2026-09-21Chapman, Ross E Esq NEW44Anna Fali
1020Julie P MaletBrazil2026-09-07Buckley Miller Wright PROPOSAL96Elwin Sharvill
1021Wickens B NickaArgentina2026-09-19Rangoni Of Florence UNQUALIFIED50Stephen Shaw
1022Munro O WhobreyItaly2026-08-26Rangoni Of Florence NEGOTIATION19Amy Elsner
1023Munro W DarakjyAustralia2026-09-13Buckley Miller Wright NEW48Bernardo Dominic
1024Tony N FlosiJapan2026-09-23Chapman, Ross E Esq PROPOSAL4Amy Elsner
1025Juan X WaycottJapan2026-09-03Feiner Bros PROPOSAL81Anna Fali
1026Kaitlin F WieserArgentina2026-09-04King, Christopher A Esq RENEWAL14Ivan Magalhaes
1027Isabel G WaycottArgentina2026-09-23Chapman, Ross E Esq NEGOTIATION73Amy Elsner
1028David K CaldareraJapan2026-09-20Truhlar And Truhlar Attys NEGOTIATION62Xuxue Feng
1029Emily D InouyeJapan2026-08-25Rangoni Of Florence UNQUALIFIED42Anna Fali
1030Aruna C TollnerJapan2026-08-29Chapman, Ross E Esq NEW27Ioni Bowcher
1031Aruna Z DarakjyFrance2026-09-13Printing Dimensions PROPOSAL64Amy Elsner
1032Silvio O SergiArgentina2026-09-15Feltz Printing Service RENEWAL21Stephen Shaw
1033Ricardo U AmigonGermany2026-09-13Commercial Press QUALIFIED33Anna Fali
1034Nicolas E TollnerGermany2026-09-12Rangoni Of Florence QUALIFIED80Bernardo Dominic
1035Jeanfrancois M GillianArgentina2026-09-09Morlong Associates RENEWAL33Xuxue Feng
1036Adams R VocelkaGermany2026-09-14Chapman, Ross E Esq NEW63Ivan Magalhaes
1037Costa L RoysterArgentina2026-09-09Morlong Associates NEGOTIATION36Ivan Magalhaes
1038Alejandro Y CaudyJapan2026-09-09Chemel, James L Cpa PROPOSAL84Ioni Bowcher
1039Morrow L BologniaJapan2026-09-11Feiner Bros UNQUALIFIED64Ioni Bowcher
1040Sinclair P FlosiItaly2026-09-07Morlong Associates NEGOTIATION51Ioni Bowcher
1041Octavia U FerenczAustralia2026-09-13Feltz Printing Service UNQUALIFIED46Bernardo Dominic
1042Kadeem J StensethArgentina2026-09-20Morlong Associates UNQUALIFIED4Xuxue Feng
1043Aruna D SlusarskiItaly2026-09-01Chapman, Ross E Esq NEGOTIATION38Stephen Shaw
1044Smith E StockhamSpain2026-09-01Rousseaux, Michael Esq RENEWAL65Ioni Bowcher
1045Claire P RutaJapan2026-09-02Benton, John B Jr UNQUALIFIED89Stephen Shaw
1046Chavez Y RimIndia2026-09-06Feiner Bros PROPOSAL34Anna Fali
1047Jennifer O SlusarskiJapan2026-08-29Dorl, James J Esq QUALIFIED5Asiya Javayant
1048Jeanfrancois T KuskoArgentina2026-09-22Feiner Bros NEGOTIATION36Amy Elsner
1049Claire K FollerJapan2026-08-31Truhlar And Truhlar Attys NEW87Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Leon N MaletGermanyIoni Bowcher QUALIFIED
Ashley W MorascaArgentinaXuxue Feng PROPOSAL
Maria P SaylorsBrazilAnna Fali NEGOTIATION
Antonio N MacleadAustraliaAsiya Javayant UNQUALIFIED
Isabel T MarrierBrazilOnyama Limba QUALIFIED
Izzy K BriddickSpainOnyama Limba NEW
James D CaldareraSpainElwin Sharvill PROPOSAL
Maria B GlickJapanXuxue Feng QUALIFIED
David O GarufiSpainStephen Shaw RENEWAL
Rodrigues P MorascaCanadaXuxue Feng QUALIFIED
Cody F RoysterItalyIoni Bowcher RENEWAL
Sinclair R WieserGermanyElwin Sharvill UNQUALIFIED
Aruna P CaldareraRussiaIvan Magalhaes QUALIFIED
Smith P GarufiUnited KingdomAsiya Javayant NEGOTIATION
Claire Y KuskoFranceAnna Fali PROPOSAL
James T GarufiRussiaAmy Elsner RENEWAL
Kadeem N RimJapanStephen Shaw NEW
Arvin H InouyeRussiaXuxue Feng NEGOTIATION
Misaki Y GarufiBrazilOnyama Limba RENEWAL
Smith H IturbideArgentinaAmy Elsner PROPOSAL
Ashley K ShinkoGermanyStephen Shaw PROPOSAL
Octavia G ButtArgentinaBernardo Dominic PROPOSAL
Mujtaba Q KolmetzIndiaAmy Elsner PROPOSAL
Alejandro N FigeroaItalyElwin Sharvill PROPOSAL
Julie L FigeroaIndiaStephen Shaw UNQUALIFIED
Adams P ShinkoCanadaIvan Magalhaes NEGOTIATION
Kaitlin Q OstroskyItalyAmy Elsner UNQUALIFIED
Jeanfrancois R IturbideJapanStephen Shaw PROPOSAL
Misaki Z PaprockiFranceOnyama Limba UNQUALIFIED
Aika L DilliardUnited KingdomAnna Fali RENEWAL
Isabel V CaldareraJapanAmy Elsner RENEWAL
Munro Q OldroydArgentinaAsiya Javayant UNQUALIFIED
Jeanfrancois Q BowleyGermanyBernardo Dominic NEW
David G MorascaJapanAmy Elsner QUALIFIED
Nicolas E DoeFranceXuxue Feng QUALIFIED
James L CampainGermanyOnyama Limba NEGOTIATION
Ivar P CaudyGermanyIoni Bowcher PROPOSAL
Munro H SchemmerRussiaOnyama Limba NEGOTIATION
Aditya T MarrierIndiaAmy Elsner UNQUALIFIED
Sinclair M VenereCanadaAnna Fali UNQUALIFIED
Murillo Q CampainRussiaXuxue Feng PROPOSAL
Claire K BologniaGermanyStephen Shaw QUALIFIED
Misaki K FollerFranceIvan Magalhaes RENEWAL
David Q IturbideFranceElwin Sharvill PROPOSAL
Aruna H MorascaGermanyIvan Magalhaes QUALIFIED
Izzy G BowleyUnited KingdomXuxue Feng NEGOTIATION
Arvin J CaudyFranceAmy Elsner RENEWAL
Ricardo V InouyeBrazilXuxue Feng PROPOSAL
Chavez A CampainSpainOnyama Limba RENEWAL
Jones V NestleArgentinaOnyama Limba NEW
Frozen Columns
Name
Costa Y Figeroa
Jefferson U Marrier
Aditya E Gillian
Sinclair F Iturbide
Silvio S Schemmer
Wickens T Foller
Izzy M Morasca
Darci L Morasca
Octavia T Tollner
Ashley T Caudy
Aditya B Marrier
Octavia X Foller
Munro T Ruta
Sinclair M Foller
Jeanfrancois I Gaucho
Morrow N Royster
Darci I Malet
Octavia T Schemmer
Maria M Campain
Emily K Royster
Deepesh J Marrier
Leon I Waycott
Claire Z Albares
Mayumi G Poquette
Isabel G Vocelka
James B Saylors
Murillo J Rim
Jefferson P Morasca
Ricardo B Royster
Deepesh T Whobrey
Sinclair W Bowley
Faith V Iturbide
Nicolas N Dilliard
Jeanfrancois F Marrier
Jennifer N Briddick
Maisha I Caudy
Munro P Campain
Smith P Doe
Rodrigues N Doe
Mujtaba E Bowley
Aruna A Vocelka
Smith V Royster
Jones T Shinko
Emily B Wieser
Costa O Malet
Juan Z Wieser
Wickens P Sergi
Salvatore O Bowley
Ivar L Ruta
Munro H Ruta
IdCountryDate
1000Canada2026-09-13
1001Brazil2026-09-07
1002Japan2026-08-26
1003Brazil2026-09-17
1004Germany2026-09-21
1005Russia2026-09-13
1006Germany2026-09-01
1007Japan2026-09-05
1008Germany2026-09-07
1009Canada2026-09-12
1010Australia2026-09-02
1011Spain2026-08-27
1012France2026-09-21
1013Argentina2026-09-17
1014Japan2026-09-18
1015United Kingdom2026-09-06
1016Italy2026-09-04
1017Germany2026-08-27
1018India2026-09-15
1019Brazil2026-09-20
1020Argentina2026-09-18
1021France2026-09-12
1022France2026-08-30
1023Japan2026-09-18
1024Canada2026-09-01
1025Canada2026-09-07
1026Canada2026-09-04
1027United Kingdom2026-08-25
1028Australia2026-09-09
1029India2026-09-22
1030India2026-08-30
1031Brazil2026-09-14
1032Brazil2026-08-26
1033Australia2026-09-11
1034Japan2026-09-23
1035Australia2026-09-12
1036Canada2026-09-03
1037Australia2026-09-01
1038Italy2026-09-11
1039France2026-09-21
1040Italy2026-08-30
1041France2026-09-14
1042India2026-09-06
1043Germany2026-09-22
1044Australia2026-09-21
1045Japan2026-09-18
1046Brazil2026-09-19
1047Germany2026-08-30
1048France2026-09-14
1049Russia2026-09-21

On-Demand Data

NameIdCountryDate
Claire R Rulapaugh1000Italy2026-09-07
Jones X Albares1001India2026-09-14
Morrow D Bolognia1002Russia2026-09-21
Maria Y Venere1003United Kingdom2026-09-15
Izzy K Inouye1004Canada2026-08-26
Jefferson M Garufi1005United Kingdom2026-09-21
Ashley V Iturbide1006Canada2026-09-23
Claire C Dilliard1007Spain2026-09-21
Julie K Figeroa1008India2026-09-11
Deepesh N Caldarera1009Canada2026-09-03
Mayumi F Morasca1010Canada2026-09-14
Jefferson Q Briddick1011Japan2026-09-04
Munro R Ostrosky1012Germany2026-09-04
Mujtaba W Chui1013Japan2026-09-22
Francesco W Shinko1014United Kingdom2026-08-30
Juan G Briddick1015Argentina2026-09-18
Stacey C Saylors1016France2026-09-14
Juan G Malet1017Australia2026-09-17
Antonio C Malet1018France2026-09-01
Darci T Whobrey1019Germany2026-09-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody R CaudyJapanOnyama Limba RENEWAL
Greenwood J ShinkoIndiaAmy Elsner NEW
Juan V RulapaughUnited KingdomBernardo Dominic UNQUALIFIED
Tony C SchemmerJapanIvan Magalhaes QUALIFIED
Cody A InouyeFranceXuxue Feng QUALIFIED
Smith X RutaIndiaElwin Sharvill RENEWAL
Jefferson K VocelkaItalyIvan Magalhaes PROPOSAL
Costa L IturbideFranceElwin Sharvill QUALIFIED
Francesco V SlusarskiRussiaIoni Bowcher PROPOSAL
Johnson L CampainBrazilIvan Magalhaes NEW
Costa V CaudyGermanyStephen Shaw RENEWAL
James U RutaGermanyElwin Sharvill QUALIFIED
Murillo U OstroskySpainXuxue Feng NEGOTIATION
James O VenereSpainAmy Elsner UNQUALIFIED
Wickens W KuskoJapanAnna Fali NEW
Izzy W WieserFranceAnna Fali PROPOSAL
Munro A DilliardBrazilIoni Bowcher NEGOTIATION
Ashley K ButtBrazilElwin Sharvill UNQUALIFIED
Wickens Y SlusarskiSpainAmy Elsner PROPOSAL
Leon P BologniaFranceAsiya Javayant NEGOTIATION
Johnson Q BologniaFranceOnyama Limba PROPOSAL
Leja X AlbaresAustraliaAsiya Javayant NEW
Jeanfrancois Z GillianUnited KingdomIoni Bowcher RENEWAL
Emily J DilliardIndiaAmy Elsner NEGOTIATION
Aditya V IturbideCanadaBernardo Dominic NEGOTIATION
Claire E KuskoItalyAnna Fali NEGOTIATION
Salvatore V CampainCanadaAsiya Javayant QUALIFIED
Greenwood Y GauchoGermanyAnna Fali UNQUALIFIED
Aditya A WaycottGermanyXuxue Feng RENEWAL
Emily D FerenczRussiaAsiya Javayant PROPOSAL
Alejandro U FigeroaItalyAmy Elsner RENEWAL
David V PerinIndiaBernardo Dominic UNQUALIFIED
Arvin U SaylorsAustraliaOnyama Limba QUALIFIED
Stacey C MarrierAustraliaXuxue Feng NEGOTIATION
Munro N CampainUnited KingdomStephen Shaw PROPOSAL
Munro R FollerUnited KingdomAnna Fali NEW
Tony H BowleyUnited KingdomElwin Sharvill UNQUALIFIED
Aditya M GillianUnited KingdomAnna Fali UNQUALIFIED
Kadeem S DarakjySpainAnna Fali QUALIFIED
Kaitlin J TollnerRussiaAnna Fali UNQUALIFIED

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