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 I DoeSpainIoni Bowcher QUALIFIED
James P CaudyIndiaBernardo Dominic NEGOTIATION
Julie J KuskoUnited KingdomBernardo Dominic RENEWAL
Jefferson V MorascaBrazilXuxue Feng UNQUALIFIED
Cody V GillianBrazilIoni Bowcher NEGOTIATION
Ivar C MacleadJapanAsiya Javayant PROPOSAL
Claire R RulapaughRussiaAsiya Javayant QUALIFIED
Kaitlin F CaudyJapanOnyama Limba NEW
Stacey T GarufiCanadaIoni Bowcher UNQUALIFIED
James K OstroskyRussiaIvan Magalhaes UNQUALIFIED
Deepesh H OstroskyUnited KingdomIvan Magalhaes RENEWAL
Mayumi J WhobreyGermanyIvan Magalhaes UNQUALIFIED
Nicolas X MorascaRussiaElwin Sharvill UNQUALIFIED
Aditya E KolmetzSpainOnyama Limba NEW
Munro R TollnerBrazilAsiya Javayant NEW
Stacey B SlusarskiIndiaAnna Fali PROPOSAL
Costa M FerenczItalyAnna Fali RENEWAL
Izzy F PaprockiJapanAsiya Javayant RENEWAL
Costa V TollnerCanadaOnyama Limba NEGOTIATION
Francesco H GlickJapanElwin Sharvill RENEWAL
Ivar J FollerGermanyAsiya Javayant PROPOSAL
Juan O ShinkoBrazilAsiya Javayant QUALIFIED
Francesco W KolmetzUnited KingdomStephen Shaw NEW
Kadeem D GauchoCanadaBernardo Dominic RENEWAL
Kaitlin L SlusarskiFranceIvan Magalhaes QUALIFIED
Darci Y FlosiRussiaIoni Bowcher PROPOSAL
Izzy D CaldareraUnited KingdomStephen Shaw UNQUALIFIED
Cody D BriddickArgentinaStephen Shaw PROPOSAL
Ricardo D ShinkoCanadaAsiya Javayant PROPOSAL
Stacey D NestleCanadaAmy Elsner UNQUALIFIED
Rodrigues N BriddickJapanXuxue Feng QUALIFIED
Deepesh H RoysterCanadaStephen Shaw RENEWAL
Juan Z MorascaSpainOnyama Limba PROPOSAL
Antonio P FigeroaGermanyXuxue Feng PROPOSAL
Adams I WieserRussiaStephen Shaw NEGOTIATION
Ricardo H StensethGermanyAnna Fali RENEWAL
Rodrigues C CaldareraBrazilBernardo Dominic NEGOTIATION
Johnson F NestleItalyAsiya Javayant QUALIFIED
Alejandro F FigeroaUnited KingdomXuxue Feng QUALIFIED
Silvio C MacleadBrazilIvan Magalhaes QUALIFIED
Morrow T StensethGermanyAmy Elsner NEGOTIATION
Greenwood V RoysterCanadaElwin Sharvill NEW
Kadeem A MarrierArgentinaIoni Bowcher RENEWAL
Francesco L WieserAustraliaOnyama Limba NEW
Chavez K BriddickAustraliaAsiya Javayant NEGOTIATION
Sinclair C OldroydIndiaBernardo Dominic UNQUALIFIED
Munro C MacleadSpainBernardo Dominic PROPOSAL
Antonio V WaycottBrazilBernardo Dominic RENEWAL
Leja B VocelkaAustraliaOnyama Limba RENEWAL
Aditya P GarufiFranceIvan Magalhaes QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Smith G GarufiSpainElwin Sharvill NEW
Adams Z FollerRussiaBernardo Dominic UNQUALIFIED
Mayumi J FerenczRussiaAnna Fali RENEWAL
Antonio L SlusarskiFranceStephen Shaw QUALIFIED
Leon W DilliardFranceElwin Sharvill RENEWAL
Darci E RulapaughAustraliaStephen Shaw NEGOTIATION
Cody P SergiAustraliaIoni Bowcher UNQUALIFIED
Izzy A CampainJapanElwin Sharvill NEGOTIATION
Deepesh C RulapaughGermanyStephen Shaw RENEWAL
Salvatore I CampainArgentinaIvan Magalhaes NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith R NestleArgentina2026-11-04Truhlar And Truhlar Attys NEW16Asiya Javayant
1001Salvatore X ChuiAustralia2026-11-10Rangoni Of Florence QUALIFIED23Elwin Sharvill
1002Misaki X MaletFrance2026-11-10Morlong Associates PROPOSAL69Ivan Magalhaes
1003Ricardo S ButtAustralia2026-10-28Chapman, Ross E Esq NEW99Xuxue Feng
1004Cody N DilliardJapan2026-10-17Rousseaux, Michael Esq RENEWAL81Xuxue Feng
1005Darci N SergiJapan2026-10-22Rangoni Of Florence UNQUALIFIED10Amy Elsner
1006Silvio A RulapaughArgentina2026-11-05Buckley Miller Wright PROPOSAL68Elwin Sharvill
1007Aditya Y PoquetteJapan2026-10-17Dorl, James J Esq RENEWAL69Asiya Javayant
1008Murillo J RulapaughSpain2026-10-19Morlong Associates PROPOSAL90Onyama Limba
1009Kaitlin K ChuiSpain2026-10-15Buckley Miller Wright RENEWAL58Asiya Javayant
1010Aika B PoquetteItaly2026-11-01Dorl, James J Esq QUALIFIED58Onyama Limba
1011Smith I VenereCanada2026-10-31Rangoni Of Florence RENEWAL85Bernardo Dominic
1012Aruna K OstroskyItaly2026-11-10Chapman, Ross E Esq RENEWAL83Bernardo Dominic
1013Munro E SlusarskiUnited Kingdom2026-10-25King, Christopher A Esq RENEWAL34Bernardo Dominic
1014Julie L TollnerSpain2026-10-14King, Christopher A Esq PROPOSAL17Bernardo Dominic
1015Smith D RutaGermany2026-11-08Buckley Miller Wright RENEWAL86Anna Fali
1016Ricardo C MaletGermany2026-11-03Printing Dimensions NEW57Xuxue Feng
1017Leja F StockhamBrazil2026-10-21Truhlar And Truhlar Attys NEW35Anna Fali
1018Octavia S KolmetzFrance2026-10-23Printing Dimensions PROPOSAL18Onyama Limba
1019Aditya D ShinkoItaly2026-11-03Benton, John B Jr QUALIFIED59Amy Elsner
1020Munro I DilliardBrazil2026-11-02Truhlar And Truhlar Attys NEGOTIATION52Onyama Limba
1021Octavia D FigeroaJapan2026-10-24Morlong Associates QUALIFIED62Ioni Bowcher
1022Deepesh P SchemmerAustralia2026-11-01Chemel, James L Cpa RENEWAL8Anna Fali
1023Kaitlin X StensethUnited Kingdom2026-11-07Dorl, James J Esq QUALIFIED86Amy Elsner
1024Chavez Z MaletUnited Kingdom2026-11-08Benton, John B Jr PROPOSAL70Anna Fali
1025Francesco D DoeJapan2026-10-21Buckley Miller Wright UNQUALIFIED7Bernardo Dominic
1026Mayumi A MarrierArgentina2026-11-05Rangoni Of Florence PROPOSAL45Ioni Bowcher
1027Leja U SlusarskiArgentina2026-11-05Dorl, James J Esq UNQUALIFIED14Onyama Limba
1028Tony W BologniaArgentina2026-11-09Truhlar And Truhlar Attys RENEWAL60Onyama Limba
1029Silvio F GarufiRussia2026-10-19Printing Dimensions UNQUALIFIED25Asiya Javayant
1030Leon C OstroskyBrazil2026-10-28Feiner Bros QUALIFIED85Onyama Limba
1031Jennifer Y GillianGermany2026-10-29King, Christopher A Esq UNQUALIFIED31Anna Fali
1032Costa E NestleBrazil2026-10-14Printing Dimensions NEGOTIATION4Ioni Bowcher
1033Nicolas Z RimJapan2026-11-10Truhlar And Truhlar Attys NEW2Asiya Javayant
1034Clifford R WhobreyCanada2026-10-19Buckley Miller Wright NEW64Elwin Sharvill
1035Isabel H RutaIndia2026-10-24Feltz Printing Service NEW29Bernardo Dominic
1036Kadeem P NickaGermany2026-11-09Morlong Associates QUALIFIED87Elwin Sharvill
1037Stacey R KuskoUnited Kingdom2026-10-28Feltz Printing Service RENEWAL30Xuxue Feng
1038Munro R DilliardRussia2026-11-04Truhlar And Truhlar Attys RENEWAL25Asiya Javayant
1039Salvatore J MarrierRussia2026-10-18Buckley Miller Wright QUALIFIED28Ioni Bowcher
1040Claire E DoeItaly2026-10-28Rousseaux, Michael Esq NEGOTIATION93Asiya Javayant
1041Leja C MacleadSpain2026-11-04Chapman, Ross E Esq UNQUALIFIED6Elwin Sharvill
1042Izzy Q DarakjySpain2026-11-05Feiner Bros UNQUALIFIED86Xuxue Feng
1043Salvatore M CaudyUnited Kingdom2026-11-10Feiner Bros NEGOTIATION71Elwin Sharvill
1044Aditya X BriddickRussia2026-10-21Rousseaux, Michael Esq NEGOTIATION78Elwin Sharvill
1045Aika U StockhamGermany2026-10-20Rangoni Of Florence UNQUALIFIED40Onyama Limba
1046Silvio C NestleArgentina2026-10-18King, Christopher A Esq QUALIFIED36Ioni Bowcher
1047Mayumi G MaletFrance2026-10-20Feiner Bros NEGOTIATION33Ioni Bowcher
1048Emily C SaylorsGermany2026-10-29Chanay, Jeffrey A Esq NEGOTIATION73Bernardo Dominic
1049Tony L ButtGermany2026-10-28Printing Dimensions PROPOSAL7Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Julie M ButtSpainBernardo Dominic PROPOSAL
Claire W PoquetteArgentinaOnyama Limba NEGOTIATION
Kaitlin B InouyeFranceXuxue Feng NEW
Cody O SaylorsCanadaAnna Fali NEW
Greenwood N AlbaresGermanyIvan Magalhaes NEGOTIATION
Rodrigues P KolmetzBrazilIoni Bowcher NEGOTIATION
Leja F InouyeIndiaXuxue Feng RENEWAL
Morrow F IturbideIndiaAnna Fali NEW
Clifford Q FollerCanadaIoni Bowcher QUALIFIED
Ashley M MorascaArgentinaAnna Fali PROPOSAL
Antonio Q OstroskyFranceIoni Bowcher NEW
Aruna G CaldareraIndiaIoni Bowcher PROPOSAL
Stacey Y BriddickAustraliaElwin Sharvill UNQUALIFIED
Ivar D SlusarskiJapanAnna Fali RENEWAL
Jones S DilliardItalyIoni Bowcher UNQUALIFIED
Darci Q CaldareraUnited KingdomAsiya Javayant NEGOTIATION
James G FerenczBrazilAnna Fali QUALIFIED
Mujtaba H FigeroaIndiaBernardo Dominic NEW
Stacey M MaletAustraliaAmy Elsner NEW
Rodrigues J NestleJapanXuxue Feng RENEWAL
Jennifer U ShinkoFranceAnna Fali NEGOTIATION
Emily F InouyeJapanAnna Fali PROPOSAL
Maisha A KolmetzSpainAsiya Javayant NEW
Adams B KolmetzAustraliaBernardo Dominic QUALIFIED
Ricardo Z SergiSpainAmy Elsner NEW
Kaitlin N DilliardIndiaAnna Fali PROPOSAL
Silvio A DarakjyGermanyBernardo Dominic UNQUALIFIED
Johnson Z StensethJapanIvan Magalhaes PROPOSAL
Clifford E RutaFranceIvan Magalhaes RENEWAL
Wickens U SchemmerSpainOnyama Limba PROPOSAL
Chavez D BriddickBrazilAmy Elsner PROPOSAL
Isabel F CaldareraSpainIoni Bowcher PROPOSAL
Leja Q SergiItalyXuxue Feng NEW
Octavia G PoquetteAustraliaOnyama Limba NEW
David Z MorascaJapanOnyama Limba UNQUALIFIED
Darci N OstroskyArgentinaAnna Fali UNQUALIFIED
Ashley S PoquetteUnited KingdomXuxue Feng PROPOSAL
Aika A RoysterRussiaBernardo Dominic QUALIFIED
David B FollerIndiaStephen Shaw QUALIFIED
Aditya G RimJapanAnna Fali QUALIFIED
Kadeem Z KolmetzUnited KingdomIoni Bowcher UNQUALIFIED
David K NickaUnited KingdomOnyama Limba NEGOTIATION
Ricardo G BriddickGermanyOnyama Limba NEGOTIATION
Alejandro T RoysterIndiaXuxue Feng QUALIFIED
Greenwood K MacleadRussiaAmy Elsner QUALIFIED
Mayumi G VocelkaBrazilIoni Bowcher NEGOTIATION
Jones Z TollnerGermanyAsiya Javayant NEGOTIATION
Maria H OldroydRussiaElwin Sharvill RENEWAL
Juan C MacleadCanadaElwin Sharvill RENEWAL
Antonio X FerenczUnited KingdomIvan Magalhaes PROPOSAL
Frozen Columns
Name
Jefferson I Amigon
Misaki B Malet
Julie P Flosi
Jeanfrancois B Morasca
Jennifer F Nestle
Johnson S Glick
Nicolas B Campain
Silvio D Malet
Mujtaba M Paprocki
Stacey U Stockham
Kaitlin H Shinko
Darci U Malet
Adams F Nicka
Ricardo S Ostrosky
Nicolas E Schemmer
Kadeem W Kolmetz
Salvatore A Iturbide
Sinclair M Inouye
Wickens P Glick
Kadeem Q Rulapaugh
Morrow P Oldroyd
Mayumi K Royster
Jeanfrancois L Figeroa
Ashley T Doe
Ashley Y Poquette
Jones X Whobrey
Nicolas E Tollner
Antonio C Figeroa
Antonio Z Butt
Tony B Caldarera
Ivar I Briddick
Adams R Caldarera
Johnson R Bolognia
Misaki C Doe
Leon M Chui
Adams R Malet
Izzy H Venere
Ashley Z Whobrey
Leja T Malet
James W Bolognia
Ricardo I Garufi
Leon O Tollner
Claire P Marrier
Silvio V Kolmetz
Deepesh O Bolognia
Maria C Shinko
Aditya J Stenseth
Izzy Z Chui
Maria W Waycott
Antonio S Schemmer
IdCountryDate
1000Italy2026-11-08
1001Spain2026-10-16
1002Russia2026-10-23
1003France2026-10-21
1004Australia2026-10-26
1005Spain2026-10-23
1006Canada2026-10-31
1007Argentina2026-10-20
1008Russia2026-10-15
1009Japan2026-10-13
1010Australia2026-10-19
1011France2026-10-25
1012Japan2026-10-29
1013Brazil2026-10-15
1014Canada2026-10-25
1015India2026-11-08
1016Russia2026-11-08
1017Argentina2026-10-18
1018United Kingdom2026-10-24
1019France2026-10-29
1020Canada2026-10-28
1021Canada2026-11-07
1022Russia2026-10-24
1023Russia2026-10-15
1024Australia2026-10-16
1025France2026-11-02
1026Brazil2026-10-16
1027Russia2026-10-14
1028Japan2026-10-23
1029India2026-10-22
1030Brazil2026-10-18
1031India2026-11-01
1032Australia2026-10-30
1033Argentina2026-10-14
1034Australia2026-10-21
1035Canada2026-11-04
1036Germany2026-10-16
1037Japan2026-11-07
1038Argentina2026-10-14
1039Australia2026-11-06
1040Australia2026-10-14
1041Germany2026-11-05
1042Japan2026-10-15
1043Germany2026-11-02
1044Japan2026-10-25
1045Brazil2026-11-07
1046Spain2026-11-05
1047India2026-10-31
1048Argentina2026-10-28
1049Canada2026-11-06

On-Demand Data

NameIdCountryDate
Julie T Oldroyd1000Russia2026-10-27
Octavia D Kolmetz1001Spain2026-10-22
Sinclair T Rim1002United Kingdom2026-10-23
Leja X Stockham1003France2026-11-08
Salvatore I Gillian1004Germany2026-10-16
Sinclair J Whobrey1005Germany2026-10-15
Ashley I Gillian1006Japan2026-11-07
Jeanfrancois J Morasca1007Germany2026-10-13
Smith Q Figeroa1008Spain2026-10-24
Costa N Morasca1009Brazil2026-11-10
Claire U Venere1010United Kingdom2026-10-15
Francesco K Sergi1011Argentina2026-11-01
Ashley I Wieser1012India2026-10-29
Munro R Ostrosky1013Germany2026-10-27
Greenwood V Caudy1014Germany2026-10-13
Rodrigues P Sergi1015Australia2026-10-29
Faith X Venere1016Germany2026-10-24
Ricardo H Stenseth1017United Kingdom2026-11-04
Octavia T Slusarski1018Brazil2026-10-23
Misaki G Paprocki1019Australia2026-10-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon Q ButtAustraliaIvan Magalhaes QUALIFIED
David Y GillianIndiaAsiya Javayant QUALIFIED
Adams Y MacleadArgentinaAmy Elsner RENEWAL
Jones A IturbideIndiaBernardo Dominic NEGOTIATION
Francesco E PerinArgentinaIvan Magalhaes PROPOSAL
Mujtaba E BologniaUnited KingdomBernardo Dominic NEGOTIATION
Emily T StockhamSpainElwin Sharvill NEW
Silvio Q DilliardUnited KingdomIoni Bowcher NEGOTIATION
Mujtaba F CaudyBrazilAnna Fali RENEWAL
Darci A NickaAustraliaXuxue Feng NEW
Morrow Q GauchoFranceAmy Elsner NEGOTIATION
Juan S GillianFranceAsiya Javayant UNQUALIFIED
Deepesh W AmigonArgentinaAnna Fali RENEWAL
Jones K BriddickSpainElwin Sharvill QUALIFIED
Claire K WhobreyGermanyStephen Shaw NEGOTIATION
Silvio E CaudyItalyElwin Sharvill RENEWAL
Maria Q GauchoBrazilStephen Shaw UNQUALIFIED
Munro E MorascaGermanyAnna Fali NEW
Alejandro Y PaprockiBrazilElwin Sharvill NEGOTIATION
Maria I OldroydAustraliaXuxue Feng PROPOSAL
David K GlickAustraliaOnyama Limba NEW
Mayumi O MaletUnited KingdomBernardo Dominic UNQUALIFIED
Chavez A StockhamRussiaAsiya Javayant QUALIFIED
Ricardo B BriddickCanadaIoni Bowcher UNQUALIFIED
Salvatore U CaldareraUnited KingdomAnna Fali RENEWAL
Nicolas L PerinAustraliaBernardo Dominic PROPOSAL
Salvatore I WaycottGermanyElwin Sharvill UNQUALIFIED
Antonio Z RutaIndiaAsiya Javayant RENEWAL
Jennifer G BologniaSpainBernardo Dominic NEGOTIATION
Leon V FerenczUnited KingdomOnyama Limba QUALIFIED
Isabel C PoquetteArgentinaAnna Fali PROPOSAL
Jeanfrancois T SlusarskiArgentinaElwin Sharvill NEGOTIATION
Mayumi D ButtAustraliaIvan Magalhaes QUALIFIED
Jeanfrancois L ChuiRussiaAsiya Javayant NEW
Clifford B IturbideAustraliaIoni Bowcher UNQUALIFIED
Sinclair S KuskoFranceXuxue Feng RENEWAL
Aruna H WaycottSpainIvan Magalhaes UNQUALIFIED
Silvio H FollerGermanyOnyama Limba NEW
Sinclair B BowleyCanadaIoni Bowcher QUALIFIED
Claire C MacleadUnited KingdomAmy Elsner RENEWAL

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