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
Izzy Y MaletGermanyIoni Bowcher RENEWAL
Sinclair S CaudyArgentinaElwin Sharvill UNQUALIFIED
Alejandro W CampainItalyElwin Sharvill RENEWAL
Greenwood H NickaFranceElwin Sharvill RENEWAL
Ashley R GauchoArgentinaStephen Shaw QUALIFIED
Maria H CampainIndiaIoni Bowcher UNQUALIFIED
Kadeem F CampainArgentinaXuxue Feng NEGOTIATION
Jones C GauchoFranceAsiya Javayant PROPOSAL
Clifford B NickaAustraliaStephen Shaw PROPOSAL
Murillo S PaprockiJapanIvan Magalhaes UNQUALIFIED
Francesco C WieserJapanIvan Magalhaes UNQUALIFIED
Ivar M GillianIndiaElwin Sharvill NEGOTIATION
Munro M RulapaughCanadaStephen Shaw UNQUALIFIED
Arvin M RoysterJapanAsiya Javayant PROPOSAL
Chavez A RutaArgentinaAsiya Javayant PROPOSAL
Claire H AlbaresSpainOnyama Limba QUALIFIED
Darci N PoquetteFranceXuxue Feng RENEWAL
Juan B TollnerFranceElwin Sharvill NEGOTIATION
Sinclair E CaudyFranceIoni Bowcher NEGOTIATION
Greenwood J SchemmerUnited KingdomIoni Bowcher RENEWAL
Sinclair Q RulapaughSpainXuxue Feng RENEWAL
Juan T KuskoItalyIvan Magalhaes PROPOSAL
Emily C ButtUnited KingdomBernardo Dominic NEGOTIATION
Cody G CampainBrazilStephen Shaw RENEWAL
Leja O MorascaJapanBernardo Dominic UNQUALIFIED
Jones H TollnerFranceIoni Bowcher NEGOTIATION
Kaitlin S ShinkoAustraliaOnyama Limba PROPOSAL
Jeanfrancois B RoysterGermanyIoni Bowcher RENEWAL
Misaki L MaletArgentinaIvan Magalhaes NEGOTIATION
Rodrigues E WieserUnited KingdomOnyama Limba NEW
Salvatore H RoysterUnited KingdomAmy Elsner RENEWAL
Stacey R InouyeRussiaXuxue Feng UNQUALIFIED
Jeanfrancois X FollerItalyXuxue Feng QUALIFIED
Emily D MarrierIndiaIvan Magalhaes RENEWAL
Aruna G BriddickIndiaStephen Shaw NEW
Kadeem Q PoquetteArgentinaOnyama Limba NEGOTIATION
Morrow H IturbideAustraliaAsiya Javayant QUALIFIED
James L BologniaJapanAnna Fali RENEWAL
Johnson L SchemmerGermanyXuxue Feng PROPOSAL
Costa W StensethFranceAmy Elsner QUALIFIED
Darci C GarufiArgentinaIoni Bowcher PROPOSAL
Salvatore L TollnerSpainElwin Sharvill NEGOTIATION
James J SchemmerArgentinaElwin Sharvill QUALIFIED
Johnson L FollerUnited KingdomIvan Magalhaes QUALIFIED
Jones B MorascaIndiaOnyama Limba PROPOSAL
Smith U FollerGermanyElwin Sharvill UNQUALIFIED
Tony P FollerIndiaAmy Elsner NEW
Murillo C KolmetzCanadaAmy Elsner RENEWAL
Julie L MorascaArgentinaIvan Magalhaes UNQUALIFIED
Nicolas J SaylorsRussiaStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Wickens Q RoysterJapanBernardo Dominic RENEWAL
Rodrigues O DarakjyItalyAsiya Javayant UNQUALIFIED
Aruna G StensethUnited KingdomAnna Fali RENEWAL
Greenwood L ChuiIndiaOnyama Limba NEW
Leon C MarrierFranceAsiya Javayant NEW
Isabel H WaycottAustraliaAmy Elsner QUALIFIED
Jeanfrancois B VocelkaBrazilIvan Magalhaes NEGOTIATION
Darci F AlbaresFranceXuxue Feng NEGOTIATION
Deepesh T SchemmerRussiaXuxue Feng UNQUALIFIED
Antonio T NestleIndiaElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya Q SergiItaly2026-09-20Buckley Miller Wright RENEWAL65Anna Fali
1001Juan I InouyeCanada2026-09-24King, Christopher A Esq NEW26Asiya Javayant
1002Ivar E VocelkaArgentina2026-09-23Chanay, Jeffrey A Esq QUALIFIED88Xuxue Feng
1003Francesco P InouyeUnited Kingdom2026-09-24Chapman, Ross E Esq RENEWAL36Ivan Magalhaes
1004Leon U InouyeSpain2026-09-06Feltz Printing Service QUALIFIED13Xuxue Feng
1005Maria S CaldareraIndia2026-09-01Feltz Printing Service QUALIFIED87Onyama Limba
1006Mayumi Z StockhamBrazil2026-09-24Rangoni Of Florence NEGOTIATION5Ivan Magalhaes
1007Maisha O ChuiCanada2026-09-05Morlong Associates RENEWAL72Asiya Javayant
1008Salvatore W OldroydCanada2026-08-31Rousseaux, Michael Esq NEGOTIATION73Bernardo Dominic
1009Julie S RimRussia2026-09-20Chemel, James L Cpa PROPOSAL10Xuxue Feng
1010Kaitlin C StensethCanada2026-09-25Morlong Associates UNQUALIFIED91Onyama Limba
1011Maria K RoysterCanada2026-09-15Printing Dimensions UNQUALIFIED16Elwin Sharvill
1012Morrow N BologniaJapan2026-09-01Printing Dimensions NEGOTIATION70Ivan Magalhaes
1013Juan Y FlosiItaly2026-08-31King, Christopher A Esq NEW8Amy Elsner
1014Alejandro U OldroydBrazil2026-09-18Rousseaux, Michael Esq PROPOSAL27Anna Fali
1015Salvatore U NestleIndia2026-09-28King, Christopher A Esq UNQUALIFIED3Anna Fali
1016Leja D GillianRussia2026-09-13Dorl, James J Esq PROPOSAL25Xuxue Feng
1017Arvin F RutaAustralia2026-09-24Feiner Bros NEGOTIATION0Onyama Limba
1018Maria Y VocelkaJapan2026-09-21Rangoni Of Florence PROPOSAL5Bernardo Dominic
1019David N AmigonSpain2026-09-22King, Christopher A Esq NEW98Xuxue Feng
1020James S OldroydAustralia2026-09-23Feiner Bros UNQUALIFIED17Amy Elsner
1021Isabel I NestleUnited Kingdom2026-09-08Feiner Bros NEGOTIATION92Stephen Shaw
1022James B NestleRussia2026-09-15Dorl, James J Esq PROPOSAL34Anna Fali
1023Aruna I DoeRussia2026-09-10Buckley Miller Wright QUALIFIED75Ivan Magalhaes
1024Smith L WaycottAustralia2026-09-25King, Christopher A Esq NEW31Asiya Javayant
1025Francesco I MaletIndia2026-09-14Feiner Bros RENEWAL87Anna Fali
1026Alejandro V WhobreyJapan2026-09-07Chanay, Jeffrey A Esq QUALIFIED9Stephen Shaw
1027Claire G DilliardJapan2026-09-02Morlong Associates RENEWAL74Stephen Shaw
1028Deepesh R GillianSpain2026-09-04Dorl, James J Esq RENEWAL9Bernardo Dominic
1029Stacey U ShinkoItaly2026-09-11Chanay, Jeffrey A Esq NEW63Stephen Shaw
1030Ricardo V RulapaughBrazil2026-09-10Commercial Press NEW84Ivan Magalhaes
1031Jefferson B DilliardRussia2026-09-01Truhlar And Truhlar Attys NEW44Stephen Shaw
1032Greenwood V AlbaresUnited Kingdom2026-08-31Rousseaux, Michael Esq UNQUALIFIED66Ioni Bowcher
1033Johnson I VenereCanada2026-09-23Dorl, James J Esq RENEWAL42Ivan Magalhaes
1034Jones I DilliardFrance2026-09-11Rangoni Of Florence QUALIFIED93Onyama Limba
1035Octavia M GlickRussia2026-09-24Benton, John B Jr NEW64Stephen Shaw
1036Munro D GauchoFrance2026-09-11Benton, John B Jr RENEWAL93Xuxue Feng
1037Clifford T SaylorsJapan2026-09-18Commercial Press QUALIFIED34Xuxue Feng
1038Murillo L SergiSpain2026-09-26Morlong Associates NEW2Stephen Shaw
1039James A BowleyUnited Kingdom2026-09-28Buckley Miller Wright QUALIFIED47Anna Fali
1040Aruna M NestleSpain2026-09-21Buckley Miller Wright RENEWAL58Amy Elsner
1041Aruna E ShinkoItaly2026-09-29Benton, John B Jr NEW44Onyama Limba
1042Aruna P IturbideIndia2026-09-21Chapman, Ross E Esq UNQUALIFIED67Stephen Shaw
1043Greenwood V MaletArgentina2026-09-01Feiner Bros UNQUALIFIED73Ivan Magalhaes
1044Tony B WhobreyGermany2026-09-02Commercial Press NEW27Ioni Bowcher
1045Maisha A GlickIndia2026-09-28Morlong Associates RENEWAL89Anna Fali
1046Leon J StockhamJapan2026-09-28Feiner Bros RENEWAL94Ivan Magalhaes
1047Jennifer A PaprockiAustralia2026-09-27Feltz Printing Service NEGOTIATION43Xuxue Feng
1048Ivar J PaprockiBrazil2026-09-27Printing Dimensions RENEWAL19Bernardo Dominic
1049Darci F GillianSpain2026-09-15Chanay, Jeffrey A Esq PROPOSAL81Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Sinclair H SaylorsArgentinaOnyama Limba UNQUALIFIED
Claire V VenereItalyIoni Bowcher NEGOTIATION
Leon J BologniaSpainBernardo Dominic PROPOSAL
Nicolas U MaletUnited KingdomXuxue Feng QUALIFIED
Jeanfrancois C MaletGermanyIoni Bowcher NEW
Ivar O RimUnited KingdomStephen Shaw NEGOTIATION
Ashley H MaletFranceOnyama Limba NEW
Clifford L GarufiSpainStephen Shaw RENEWAL
Adams J DilliardRussiaAsiya Javayant NEW
Leja T DilliardBrazilAnna Fali UNQUALIFIED
Darci Q TollnerIndiaIvan Magalhaes NEW
Mayumi Y BologniaArgentinaIoni Bowcher RENEWAL
Munro Y RoysterUnited KingdomBernardo Dominic PROPOSAL
Nicolas K DilliardFranceElwin Sharvill QUALIFIED
Leon R OldroydGermanyAmy Elsner UNQUALIFIED
Tony D ShinkoRussiaAmy Elsner PROPOSAL
Leon N GarufiSpainBernardo Dominic NEW
Izzy E MaletItalyAsiya Javayant NEW
Maria T StensethSpainElwin Sharvill NEGOTIATION
Darci J ButtItalyAsiya Javayant NEGOTIATION
Murillo K AlbaresJapanElwin Sharvill NEW
Misaki S AmigonCanadaStephen Shaw NEGOTIATION
Ivar X VocelkaBrazilAmy Elsner NEW
Kadeem U AmigonJapanOnyama Limba NEW
Tony B GlickJapanElwin Sharvill QUALIFIED
Munro V GillianItalyElwin Sharvill PROPOSAL
Maisha E WhobreyFranceIoni Bowcher PROPOSAL
Julie E GauchoBrazilIoni Bowcher NEW
Antonio X RoysterCanadaStephen Shaw UNQUALIFIED
Greenwood H GlickArgentinaElwin Sharvill UNQUALIFIED
Greenwood X GlickRussiaStephen Shaw UNQUALIFIED
Adams E VenereAustraliaAmy Elsner PROPOSAL
Leja D FigeroaCanadaIvan Magalhaes NEGOTIATION
Stacey G ShinkoRussiaElwin Sharvill PROPOSAL
Misaki N WaycottBrazilAnna Fali RENEWAL
Johnson M MarrierFranceElwin Sharvill NEGOTIATION
David V RulapaughAustraliaAsiya Javayant PROPOSAL
Ivar B StensethGermanyIvan Magalhaes NEGOTIATION
David B GlickSpainStephen Shaw NEGOTIATION
Octavia D BriddickIndiaAmy Elsner UNQUALIFIED
Deepesh T GillianArgentinaAnna Fali QUALIFIED
Rodrigues S FerenczBrazilAmy Elsner NEW
David J MacleadFranceAmy Elsner QUALIFIED
Chavez E OldroydItalyXuxue Feng QUALIFIED
Nicolas N GauchoRussiaXuxue Feng UNQUALIFIED
Darci U SergiItalyAsiya Javayant UNQUALIFIED
Jefferson U AlbaresBrazilBernardo Dominic QUALIFIED
Wickens J WieserIndiaAnna Fali NEW
Izzy L IturbideSpainAsiya Javayant NEW
Adams E PoquetteItalyXuxue Feng RENEWAL
Frozen Columns
Name
David B Stockham
Jennifer E Inouye
Ashley W Stockham
Chavez Z Waycott
Antonio M Malet
Nicolas O Perin
Chavez P Tollner
Rodrigues A Briddick
Jeanfrancois J Albares
Ashley Y Poquette
David R Perin
Cody T Venere
Izzy W Gaucho
Aika Z Wieser
Ashley E Nicka
Izzy E Oldroyd
Jefferson D Venere
Deepesh R Perin
Jefferson R Campain
Mayumi R Stenseth
Stacey U Rulapaugh
Costa P Chui
Leja O Garufi
Mujtaba J Kusko
Ivar A Caudy
Mayumi G Briddick
Mujtaba Q Flosi
Silvio R Nicka
Greenwood H Foller
Ivar Y Campain
Alejandro Z Kolmetz
Francesco V Morasca
Leja V Saylors
Antonio R Rulapaugh
Wickens K Sergi
Aika W Shinko
David K Inouye
Leja F Rim
Darci O Waycott
Chavez O Stockham
Nicolas Y Bowley
Izzy L Bowley
Claire O Ferencz
David J Briddick
David M Campain
Ricardo J Whobrey
Darci A Ruta
Kaitlin X Ostrosky
Faith Q Maclead
Emily B Ostrosky
IdCountryDate
1000India2026-09-27
1001Italy2026-09-02
1002Germany2026-09-16
1003Germany2026-09-02
1004Argentina2026-09-04
1005Canada2026-09-29
1006Argentina2026-09-28
1007Canada2026-09-24
1008Australia2026-09-05
1009Argentina2026-09-16
1010India2026-09-23
1011Argentina2026-09-25
1012Russia2026-09-13
1013Spain2026-09-07
1014Italy2026-09-09
1015Australia2026-09-18
1016India2026-09-26
1017France2026-09-22
1018Argentina2026-09-10
1019Spain2026-09-07
1020France2026-09-11
1021Italy2026-09-27
1022United Kingdom2026-09-28
1023Canada2026-09-10
1024Italy2026-09-07
1025Brazil2026-09-05
1026United Kingdom2026-09-27
1027Canada2026-09-18
1028Spain2026-09-17
1029Brazil2026-09-06
1030Japan2026-09-04
1031Brazil2026-09-07
1032Japan2026-09-27
1033Italy2026-09-24
1034Italy2026-09-10
1035Japan2026-09-24
1036Australia2026-09-24
1037Italy2026-09-07
1038Russia2026-09-19
1039Canada2026-09-01
1040Australia2026-08-31
1041Canada2026-09-28
1042Canada2026-09-27
1043Australia2026-09-07
1044Brazil2026-09-01
1045Argentina2026-09-29
1046Canada2026-09-22
1047France2026-09-24
1048Italy2026-09-19
1049Canada2026-09-08

On-Demand Data

NameIdCountryDate
Claire H Albares1000Russia2026-09-10
Chavez Y Rulapaugh1001Japan2026-09-19
Leja K Venere1002Australia2026-09-24
James M Caldarera1003Brazil2026-09-17
Greenwood U Inouye1004Italy2026-09-07
Cody K Gillian1005India2026-09-16
Cody U Chui1006Australia2026-09-01
Leja M Ostrosky1007Germany2026-09-28
Ricardo X Ruta1008Canada2026-09-28
Rodrigues W Kolmetz1009Spain2026-09-14
Mujtaba Q Perin1010Russia2026-09-27
Leja P Caudy1011Germany2026-09-23
Morrow E Stockham1012Russia2026-09-13
Antonio U Maclead1013Italy2026-09-08
Smith K Perin1014Argentina2026-09-03
Leja M Vocelka1015Brazil2026-09-01
Juan Y Caldarera1016United Kingdom2026-09-02
Aruna S Briddick1017Australia2026-09-16
Isabel T Shinko1018Japan2026-09-08
Leja F Morasca1019Canada2026-09-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi Y WieserUnited KingdomXuxue Feng QUALIFIED
Ashley H CaldareraJapanIvan Magalhaes NEW
Maria R GauchoUnited KingdomXuxue Feng NEGOTIATION
Greenwood C TollnerArgentinaAsiya Javayant RENEWAL
Aika I PerinUnited KingdomIoni Bowcher UNQUALIFIED
Silvio O MacleadUnited KingdomIvan Magalhaes PROPOSAL
Cody O StensethSpainIoni Bowcher PROPOSAL
Francesco A MacleadCanadaElwin Sharvill PROPOSAL
Munro J WaycottBrazilAnna Fali PROPOSAL
Mayumi Q FollerIndiaXuxue Feng QUALIFIED
Wickens S PerinArgentinaAmy Elsner NEW
Ricardo W SlusarskiSpainIoni Bowcher NEW
Aruna N IturbideBrazilAnna Fali RENEWAL
Stacey O SlusarskiSpainIvan Magalhaes NEW
Mujtaba T RulapaughRussiaStephen Shaw NEW
Aika G KuskoCanadaOnyama Limba PROPOSAL
Jennifer C BowleyRussiaBernardo Dominic PROPOSAL
Jefferson J VocelkaAustraliaAsiya Javayant UNQUALIFIED
Clifford O MarrierJapanAmy Elsner NEW
Tony H RoysterArgentinaElwin Sharvill NEGOTIATION
Maisha C CampainUnited KingdomXuxue Feng PROPOSAL
Aditya J BriddickItalyAnna Fali PROPOSAL
James Q GillianItalyStephen Shaw NEW
Leja E PoquetteIndiaStephen Shaw NEGOTIATION
Wickens I PaprockiBrazilStephen Shaw QUALIFIED
Kadeem U OldroydAustraliaAsiya Javayant NEW
Mayumi J RoysterFranceXuxue Feng NEGOTIATION
Leja B FigeroaBrazilElwin Sharvill PROPOSAL
David T DoeSpainStephen Shaw RENEWAL
Jefferson G VocelkaBrazilAmy Elsner UNQUALIFIED
Kaitlin L WhobreyGermanyIvan Magalhaes NEW
Octavia V FlosiRussiaOnyama Limba QUALIFIED
Wickens N VocelkaFranceBernardo Dominic QUALIFIED
Octavia O NestleRussiaElwin Sharvill PROPOSAL
Ricardo T NestleCanadaXuxue Feng QUALIFIED
Stacey R WieserArgentinaElwin Sharvill NEGOTIATION
Rodrigues X PerinItalyAnna Fali NEW
Murillo V SlusarskiArgentinaStephen Shaw NEW
Julie B MaletUnited KingdomElwin Sharvill RENEWAL
Adams Z MaletJapanStephen Shaw 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>