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
Jones A FigeroaBrazilOnyama Limba QUALIFIED
Jefferson S WhobreyBrazilElwin Sharvill RENEWAL
Maisha W ChuiJapanBernardo Dominic QUALIFIED
Mayumi Q NickaCanadaOnyama Limba NEGOTIATION
Murillo X GarufiItalyAnna Fali NEW
Jefferson A InouyeItalyXuxue Feng NEGOTIATION
David D SergiRussiaStephen Shaw RENEWAL
Leja C GillianBrazilAnna Fali NEW
Costa M FigeroaAustraliaAnna Fali NEGOTIATION
Silvio V PerinUnited KingdomOnyama Limba RENEWAL
Ricardo I WhobreyRussiaBernardo Dominic UNQUALIFIED
Costa P GillianSpainIoni Bowcher PROPOSAL
Mujtaba T VocelkaIndiaAsiya Javayant PROPOSAL
Wickens Y WieserFranceIvan Magalhaes PROPOSAL
Misaki I FlosiRussiaOnyama Limba RENEWAL
Rodrigues G FlosiJapanOnyama Limba NEW
Kadeem X GillianAustraliaStephen Shaw NEGOTIATION
Ricardo D RulapaughIndiaElwin Sharvill UNQUALIFIED
Clifford U ButtGermanyAmy Elsner QUALIFIED
Tony I CampainIndiaAsiya Javayant UNQUALIFIED
Leja I DarakjyJapanOnyama Limba QUALIFIED
Kaitlin U KolmetzIndiaElwin Sharvill NEGOTIATION
Murillo P FigeroaCanadaIoni Bowcher QUALIFIED
Kaitlin J MaletRussiaBernardo Dominic NEGOTIATION
Jefferson C CampainBrazilIvan Magalhaes NEW
Costa F SchemmerFranceOnyama Limba UNQUALIFIED
Smith D SaylorsArgentinaBernardo Dominic PROPOSAL
Leon N ButtBrazilAmy Elsner QUALIFIED
Ashley N VocelkaAustraliaIvan Magalhaes NEW
Darci B MaletGermanyBernardo Dominic UNQUALIFIED
Clifford N KuskoGermanyIvan Magalhaes QUALIFIED
Francesco T OldroydJapanElwin Sharvill UNQUALIFIED
Wickens D WieserItalyBernardo Dominic RENEWAL
Emily Y KolmetzArgentinaIoni Bowcher NEW
Mujtaba K VocelkaIndiaIoni Bowcher NEGOTIATION
James Q CaudyIndiaOnyama Limba NEW
Ricardo S MarrierJapanAmy Elsner NEW
Leja E WieserItalyAsiya Javayant NEGOTIATION
Antonio M VocelkaUnited KingdomOnyama Limba NEW
Isabel S BriddickArgentinaAmy Elsner RENEWAL
Aruna Y IturbideRussiaOnyama Limba PROPOSAL
Octavia U StockhamFranceIoni Bowcher NEW
Greenwood Q DilliardItalyAmy Elsner UNQUALIFIED
Francesco A SaylorsGermanyIoni Bowcher QUALIFIED
Maria G SlusarskiBrazilXuxue Feng NEW
Faith V KolmetzFranceAmy Elsner UNQUALIFIED
Izzy P CaudyBrazilIvan Magalhaes RENEWAL
Isabel X GlickCanadaAnna Fali NEW
Tony B AmigonSpainXuxue Feng RENEWAL
Kaitlin W MarrierItalyIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Sinclair X MaletAustraliaStephen Shaw UNQUALIFIED
Chavez T NestleBrazilXuxue Feng NEW
Izzy V OldroydBrazilIvan Magalhaes NEGOTIATION
Misaki B WhobreyIndiaOnyama Limba QUALIFIED
Cody O AmigonJapanAsiya Javayant RENEWAL
David W StockhamJapanOnyama Limba PROPOSAL
Kaitlin S KolmetzArgentinaIoni Bowcher NEW
Aditya V WhobreyItalyXuxue Feng PROPOSAL
Aditya I ShinkoAustraliaOnyama Limba QUALIFIED
Wickens C RimJapanAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leja Y FlosiSpain2026-09-08Chapman, Ross E Esq PROPOSAL92Anna Fali
1001Leja D DilliardSpain2026-09-05Feltz Printing Service QUALIFIED25Ioni Bowcher
1002Arvin P WieserBrazil2026-09-13Rangoni Of Florence QUALIFIED3Amy Elsner
1003Smith Y NestleRussia2026-09-09Morlong Associates RENEWAL13Bernardo Dominic
1004Ashley V SaylorsBrazil2026-09-10Commercial Press RENEWAL62Xuxue Feng
1005Isabel N CaldareraAustralia2026-09-14Rousseaux, Michael Esq QUALIFIED40Amy Elsner
1006Izzy F NestleArgentina2026-09-16Rangoni Of Florence RENEWAL31Anna Fali
1007Costa G FollerIndia2026-09-02Feltz Printing Service NEGOTIATION73Amy Elsner
1008Maisha Z InouyeCanada2026-09-07Rousseaux, Michael Esq NEW50Ivan Magalhaes
1009Juan O KuskoBrazil2026-09-11Commercial Press NEGOTIATION2Ivan Magalhaes
1010Claire M BologniaSpain2026-09-14Morlong Associates RENEWAL35Anna Fali
1011Sinclair O GlickArgentina2026-09-23King, Christopher A Esq UNQUALIFIED37Stephen Shaw
1012Deepesh E CampainCanada2026-09-03King, Christopher A Esq NEGOTIATION53Stephen Shaw
1013Julie W CampainRussia2026-09-15Truhlar And Truhlar Attys RENEWAL0Anna Fali
1014Aika O FerenczBrazil2026-09-18Rousseaux, Michael Esq RENEWAL68Elwin Sharvill
1015Wickens K MaletFrance2026-09-05Morlong Associates UNQUALIFIED44Ioni Bowcher
1016Salvatore Z FerenczUnited Kingdom2026-09-27Morlong Associates UNQUALIFIED71Ivan Magalhaes
1017Izzy X WaycottFrance2026-09-18Chanay, Jeffrey A Esq UNQUALIFIED13Amy Elsner
1018Greenwood X ShinkoBrazil2026-08-31Morlong Associates UNQUALIFIED15Ioni Bowcher
1019Antonio O RimFrance2026-09-18Chemel, James L Cpa UNQUALIFIED5Onyama Limba
1020Tony R GlickCanada2026-09-22Printing Dimensions UNQUALIFIED20Onyama Limba
1021Ricardo J TollnerArgentina2026-09-07Chanay, Jeffrey A Esq UNQUALIFIED60Ioni Bowcher
1022Wickens B InouyeRussia2026-09-14Printing Dimensions RENEWAL94Xuxue Feng
1023Aruna W GillianFrance2026-09-21Morlong Associates PROPOSAL82Stephen Shaw
1024Ashley I DoeJapan2026-09-25Truhlar And Truhlar Attys NEW85Bernardo Dominic
1025Isabel Y CaldareraCanada2026-09-13Truhlar And Truhlar Attys UNQUALIFIED76Ioni Bowcher
1026Jeanfrancois D RutaCanada2026-09-14Buckley Miller Wright NEW0Ioni Bowcher
1027Mujtaba U StensethArgentina2026-09-05Chapman, Ross E Esq RENEWAL56Amy Elsner
1028Leja L WhobreySpain2026-09-03Buckley Miller Wright NEW28Amy Elsner
1029Darci S WhobreyRussia2026-09-15Feltz Printing Service QUALIFIED61Ivan Magalhaes
1030Francesco X PaprockiRussia2026-09-16Printing Dimensions PROPOSAL61Xuxue Feng
1031Izzy U PoquetteRussia2026-09-08Benton, John B Jr NEW66Amy Elsner
1032Francesco Z RimItaly2026-09-17Morlong Associates UNQUALIFIED27Anna Fali
1033Johnson I BriddickCanada2026-09-18King, Christopher A Esq RENEWAL46Anna Fali
1034David K WhobreyItaly2026-09-26Chanay, Jeffrey A Esq NEW97Asiya Javayant
1035Octavia G GauchoSpain2026-09-27Dorl, James J Esq NEGOTIATION67Xuxue Feng
1036Costa Q GauchoArgentina2026-09-07Chanay, Jeffrey A Esq NEGOTIATION21Onyama Limba
1037Arvin T SlusarskiGermany2026-09-07Printing Dimensions QUALIFIED17Amy Elsner
1038Arvin I RulapaughBrazil2026-09-13Morlong Associates NEW42Onyama Limba
1039Wickens D PerinFrance2026-09-09Buckley Miller Wright UNQUALIFIED33Ivan Magalhaes
1040Maisha I SchemmerAustralia2026-09-27Morlong Associates PROPOSAL33Onyama Limba
1041Arvin N RimCanada2026-09-17Commercial Press PROPOSAL79Bernardo Dominic
1042Maria J CaldareraIndia2026-09-25Printing Dimensions QUALIFIED55Xuxue Feng
1043James Y AmigonArgentina2026-09-04Benton, John B Jr PROPOSAL58Ioni Bowcher
1044Faith W NickaBrazil2026-09-27Truhlar And Truhlar Attys PROPOSAL34Amy Elsner
1045Francesco T RimRussia2026-09-03Truhlar And Truhlar Attys UNQUALIFIED7Elwin Sharvill
1046Misaki Z RutaItaly2026-09-04Morlong Associates NEW56Elwin Sharvill
1047James X FerenczFrance2026-09-11Rousseaux, Michael Esq NEGOTIATION15Xuxue Feng
1048Claire J CaudyArgentina2026-09-21Rousseaux, Michael Esq NEW97Stephen Shaw
1049Sinclair G DilliardAustralia2026-08-29King, Christopher A Esq NEGOTIATION38Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Tony L ButtIndiaBernardo Dominic QUALIFIED
Clifford J IturbideSpainAsiya Javayant RENEWAL
Cody G FlosiGermanyBernardo Dominic NEGOTIATION
James J VocelkaIndiaAmy Elsner UNQUALIFIED
Claire P SlusarskiRussiaBernardo Dominic UNQUALIFIED
Juan S RoysterGermanyIoni Bowcher NEW
Jennifer M StockhamBrazilAnna Fali QUALIFIED
Rodrigues X FlosiFranceAnna Fali RENEWAL
Greenwood B GillianItalyXuxue Feng QUALIFIED
Darci D MacleadArgentinaAsiya Javayant QUALIFIED
Kadeem Z NickaIndiaAnna Fali PROPOSAL
Aditya Z KuskoCanadaIoni Bowcher NEGOTIATION
Izzy L WieserCanadaAnna Fali NEW
Izzy Y SlusarskiItalyAmy Elsner RENEWAL
Leja W ShinkoItalyXuxue Feng NEGOTIATION
Cody C StockhamArgentinaXuxue Feng NEGOTIATION
Emily N BologniaSpainXuxue Feng NEW
Jeanfrancois L GarufiBrazilAsiya Javayant PROPOSAL
Faith C NickaCanadaAsiya Javayant QUALIFIED
Morrow C BriddickIndiaAsiya Javayant NEGOTIATION
Leon A SergiRussiaIoni Bowcher RENEWAL
Stacey V SaylorsRussiaAmy Elsner NEW
Antonio L PoquetteCanadaIvan Magalhaes NEGOTIATION
Juan T IturbideJapanXuxue Feng NEGOTIATION
Leon G StockhamJapanIoni Bowcher UNQUALIFIED
Emily D GillianFranceIvan Magalhaes QUALIFIED
Sinclair P GillianArgentinaOnyama Limba RENEWAL
Aruna Z BologniaArgentinaAnna Fali QUALIFIED
Smith L SchemmerSpainIoni Bowcher RENEWAL
Emily U MaletUnited KingdomAmy Elsner QUALIFIED
Ashley S MaletCanadaAsiya Javayant NEGOTIATION
Jefferson Z OstroskyIndiaOnyama Limba RENEWAL
Stacey T PaprockiIndiaAnna Fali UNQUALIFIED
Stacey B MaletCanadaStephen Shaw RENEWAL
Silvio G WhobreyBrazilStephen Shaw QUALIFIED
Antonio U VenereCanadaOnyama Limba UNQUALIFIED
Chavez N ChuiArgentinaXuxue Feng NEGOTIATION
Clifford O TollnerRussiaStephen Shaw RENEWAL
Deepesh Y DilliardIndiaAnna Fali NEW
Claire G BowleySpainBernardo Dominic NEGOTIATION
Julie U DarakjyGermanyXuxue Feng RENEWAL
Silvio U GlickRussiaOnyama Limba NEW
Alejandro G MaletCanadaAnna Fali NEW
Ashley O CaldareraSpainAnna Fali NEGOTIATION
Aditya M MaletUnited KingdomIoni Bowcher NEW
Kaitlin Z SchemmerAustraliaIvan Magalhaes QUALIFIED
James R RoysterSpainXuxue Feng NEW
Juan K SaylorsIndiaAnna Fali RENEWAL
James C GarufiArgentinaIoni Bowcher NEGOTIATION
Kadeem T CaldareraAustraliaXuxue Feng RENEWAL
Frozen Columns
Name
David T Nicka
Munro I Rim
Deepesh U Rim
Jones I Darakjy
Mayumi F Vocelka
Faith W Ruta
Jones H Royster
David E Slusarski
Octavia J Poquette
James Z Ferencz
Salvatore S Chui
Jeanfrancois G Foller
Jones V Ferencz
Adams J Stenseth
Mujtaba I Saylors
Aruna Z Kolmetz
Mujtaba H Amigon
Jeanfrancois K Rim
Jones Q Wieser
Chavez U Figeroa
Wickens J Perin
Deepesh C Stockham
Maisha J Amigon
Sinclair Y Chui
Mayumi T Sergi
Mayumi N Poquette
Clifford U Chui
Morrow V Tollner
Jones B Malet
Mujtaba M Waycott
Jeanfrancois Y Bolognia
Arvin J Vocelka
Juan R Wieser
Kadeem A Waycott
Leja K Wieser
Clifford B Gillian
Julie V Glick
Johnson G Nestle
Jefferson W Inouye
Wickens Z Nicka
Rodrigues Y Malet
Aruna I Vocelka
Deepesh G Bowley
Rodrigues X Ferencz
David Y Figeroa
Adams W Ferencz
Clifford W Vocelka
Rodrigues B Schemmer
Aditya Q Malet
Arvin Q Gillian
IdCountryDate
1000Italy2026-09-07
1001Australia2026-09-27
1002Russia2026-09-10
1003India2026-09-20
1004Spain2026-09-26
1005Russia2026-09-21
1006Russia2026-09-09
1007Russia2026-08-29
1008Brazil2026-09-22
1009Italy2026-09-02
1010Canada2026-09-05
1011Japan2026-09-22
1012Australia2026-09-08
1013Germany2026-09-10
1014Germany2026-09-12
1015India2026-09-04
1016Spain2026-09-21
1017Canada2026-09-10
1018United Kingdom2026-09-18
1019Argentina2026-09-10
1020Japan2026-08-30
1021Japan2026-09-08
1022Germany2026-09-04
1023Spain2026-09-05
1024Argentina2026-09-06
1025Germany2026-09-25
1026France2026-09-13
1027France2026-09-25
1028United Kingdom2026-09-26
1029India2026-09-25
1030Germany2026-09-10
1031Germany2026-08-31
1032Russia2026-09-25
1033Japan2026-09-23
1034France2026-09-12
1035Russia2026-09-18
1036Argentina2026-09-16
1037United Kingdom2026-08-29
1038Canada2026-09-21
1039Germany2026-09-18
1040Spain2026-09-01
1041Germany2026-09-25
1042Argentina2026-09-11
1043United Kingdom2026-09-04
1044Spain2026-08-29
1045United Kingdom2026-09-22
1046Italy2026-09-19
1047United Kingdom2026-09-23
1048Argentina2026-09-09
1049Argentina2026-09-13

On-Demand Data

NameIdCountryDate
Misaki W Bolognia1000Italy2026-09-14
Arvin S Iturbide1001Australia2026-09-08
Ivar O Marrier1002Germany2026-09-22
Jennifer F Malet1003Spain2026-09-02
Tony F Wieser1004France2026-09-14
Cody S Venere1005Germany2026-09-02
Morrow J Vocelka1006France2026-09-13
Greenwood J Stenseth1007Canada2026-09-10
Jefferson I Malet1008Japan2026-09-27
Julie V Waycott1009Japan2026-09-26
Cody P Campain1010Spain2026-09-14
Mayumi J Paprocki1011Australia2026-09-08
David H Morasca1012Italy2026-09-06
Adams O Marrier1013Spain2026-08-31
Sinclair H Albares1014Spain2026-09-21
Deepesh F Doe1015India2026-09-01
Darci U Briddick1016Australia2026-09-17
Aruna O Butt1017Italy2026-09-24
Juan Q Kolmetz1018Canada2026-09-07
Aditya A Vocelka1019France2026-09-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja E BowleyArgentinaXuxue Feng NEW
Jennifer L FerenczAustraliaElwin Sharvill UNQUALIFIED
Jefferson K SlusarskiJapanIvan Magalhaes UNQUALIFIED
Faith H GillianBrazilXuxue Feng NEW
Murillo J OldroydIndiaIvan Magalhaes RENEWAL
Jefferson I KuskoFranceBernardo Dominic NEGOTIATION
Maria D SlusarskiSpainOnyama Limba PROPOSAL
Darci L FerenczBrazilBernardo Dominic NEGOTIATION
Darci Z MaletGermanyAmy Elsner NEW
Salvatore R WaycottFranceAmy Elsner UNQUALIFIED
Jones Y BowleyItalyIoni Bowcher RENEWAL
Morrow U CampainUnited KingdomAnna Fali NEGOTIATION
Nicolas P WaycottAustraliaElwin Sharvill PROPOSAL
Ricardo U GarufiArgentinaElwin Sharvill QUALIFIED
Mujtaba X StensethUnited KingdomIoni Bowcher UNQUALIFIED
Aruna C FigeroaSpainIvan Magalhaes NEW
Kaitlin X InouyeRussiaAnna Fali PROPOSAL
Kaitlin E DilliardUnited KingdomOnyama Limba NEGOTIATION
Francesco U AmigonFranceIoni Bowcher NEW
Maria H CampainFranceElwin Sharvill UNQUALIFIED
Ashley C BologniaRussiaAsiya Javayant UNQUALIFIED
Wickens S WhobreyAustraliaIvan Magalhaes QUALIFIED
Wickens T FollerAustraliaXuxue Feng NEW
Chavez Y VocelkaUnited KingdomAnna Fali PROPOSAL
Ricardo I StensethUnited KingdomAsiya Javayant PROPOSAL
Jennifer I RulapaughBrazilElwin Sharvill PROPOSAL
Munro Y RoysterFranceBernardo Dominic RENEWAL
Francesco I GarufiUnited KingdomOnyama Limba RENEWAL
Murillo P PoquetteItalyXuxue Feng NEW
Wickens Z KolmetzGermanyAnna Fali NEGOTIATION
Mujtaba E DarakjyBrazilAnna Fali RENEWAL
Tony D AlbaresCanadaAsiya Javayant QUALIFIED
Juan D DoeItalyOnyama Limba NEW
Stacey V KuskoJapanIoni Bowcher RENEWAL
Mujtaba V PoquetteCanadaAnna Fali NEW
Claire Y PerinItalyXuxue Feng NEGOTIATION
Jennifer U RulapaughUnited KingdomAsiya Javayant RENEWAL
Maria G GarufiIndiaAnna Fali NEW
Sinclair A AlbaresSpainXuxue Feng RENEWAL
Emily D WhobreyGermanyStephen Shaw 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>