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
Maria J WaycottIndiaStephen Shaw NEW
Jones R AmigonBrazilOnyama Limba RENEWAL
Wickens D CaudyUnited KingdomAmy Elsner RENEWAL
Smith L MarrierBrazilBernardo Dominic UNQUALIFIED
Aika Y CampainFranceIvan Magalhaes UNQUALIFIED
Octavia P KolmetzCanadaStephen Shaw NEGOTIATION
Darci Q MacleadGermanyOnyama Limba NEW
Arvin Q AlbaresJapanXuxue Feng NEGOTIATION
Mujtaba N NestleRussiaIvan Magalhaes NEGOTIATION
Clifford I ButtIndiaBernardo Dominic NEW
Munro R RimAustraliaXuxue Feng UNQUALIFIED
Jefferson U SaylorsCanadaIoni Bowcher NEGOTIATION
Jennifer O BowleyUnited KingdomStephen Shaw NEGOTIATION
Juan R SchemmerUnited KingdomBernardo Dominic UNQUALIFIED
Arvin X ShinkoGermanyAnna Fali PROPOSAL
Arvin U CampainIndiaIoni Bowcher PROPOSAL
Kaitlin W OstroskyArgentinaAmy Elsner UNQUALIFIED
Izzy D TollnerJapanIvan Magalhaes PROPOSAL
David A GarufiUnited KingdomBernardo Dominic NEGOTIATION
Claire Y WhobreyBrazilXuxue Feng QUALIFIED
Jeanfrancois H StensethArgentinaXuxue Feng RENEWAL
Mujtaba U KuskoJapanIoni Bowcher RENEWAL
Jeanfrancois I FerenczIndiaOnyama Limba NEW
Misaki D InouyeBrazilOnyama Limba UNQUALIFIED
Ashley M FlosiUnited KingdomOnyama Limba QUALIFIED
Ricardo D PerinGermanyBernardo Dominic NEGOTIATION
Darci W PerinFranceStephen Shaw RENEWAL
Chavez H GarufiFranceIoni Bowcher NEGOTIATION
Nicolas Y SlusarskiCanadaAsiya Javayant NEGOTIATION
Mayumi U WaycottBrazilAnna Fali QUALIFIED
Jones M MaletRussiaElwin Sharvill NEW
Darci B PerinCanadaStephen Shaw NEGOTIATION
Ivar J InouyeItalyBernardo Dominic QUALIFIED
Maria C PerinJapanXuxue Feng NEGOTIATION
Salvatore E MorascaJapanIvan Magalhaes RENEWAL
Ashley A ShinkoSpainStephen Shaw RENEWAL
Isabel R MacleadFranceBernardo Dominic UNQUALIFIED
Isabel H WhobreyItalyBernardo Dominic QUALIFIED
Silvio N OldroydUnited KingdomStephen Shaw UNQUALIFIED
Jennifer E NickaUnited KingdomIvan Magalhaes NEGOTIATION
Kaitlin K TollnerGermanyBernardo Dominic RENEWAL
Octavia K MacleadGermanyXuxue Feng RENEWAL
Johnson F WaycottIndiaIoni Bowcher PROPOSAL
Francesco K MaletRussiaXuxue Feng QUALIFIED
Cody S RutaArgentinaAnna Fali NEGOTIATION
Claire W WieserJapanElwin Sharvill NEW
Greenwood N AmigonJapanOnyama Limba PROPOSAL
James S MaletFranceXuxue Feng RENEWAL
Isabel Z DilliardJapanIoni Bowcher QUALIFIED
Tony O FlosiGermanyXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jones N BologniaRussiaAnna Fali QUALIFIED
Izzy E CaudyBrazilStephen Shaw RENEWAL
Smith Y DarakjyUnited KingdomIoni Bowcher UNQUALIFIED
James S PaprockiIndiaAmy Elsner UNQUALIFIED
Kadeem R RoysterIndiaBernardo Dominic NEGOTIATION
Murillo I SaylorsArgentinaIvan Magalhaes QUALIFIED
Chavez K WieserArgentinaBernardo Dominic RENEWAL
Stacey E MaletFranceAsiya Javayant NEW
Silvio T WieserItalyStephen Shaw QUALIFIED
Greenwood T GlickRussiaOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha X ShinkoJapan2026-10-29Rangoni Of Florence RENEWAL50Ioni Bowcher
1001Leja V OstroskyBrazil2026-11-01Buckley Miller Wright UNQUALIFIED57Onyama Limba
1002Jeanfrancois I MacleadAustralia2026-10-13Commercial Press QUALIFIED74Elwin Sharvill
1003David V GillianIndia2026-11-07Buckley Miller Wright PROPOSAL58Amy Elsner
1004Nicolas I RoysterUnited Kingdom2026-10-20Morlong Associates UNQUALIFIED67Xuxue Feng
1005Emily Y RimUnited Kingdom2026-11-05Dorl, James J Esq NEW99Amy Elsner
1006Greenwood X TollnerFrance2026-11-08Chapman, Ross E Esq RENEWAL93Ivan Magalhaes
1007Sinclair X VocelkaFrance2026-10-14Chemel, James L Cpa PROPOSAL4Asiya Javayant
1008Jefferson E MaletBrazil2026-10-22Rousseaux, Michael Esq UNQUALIFIED0Ioni Bowcher
1009Julie Z AlbaresSpain2026-11-08Morlong Associates QUALIFIED31Xuxue Feng
1010Clifford E WieserArgentina2026-10-18Feiner Bros NEGOTIATION8Asiya Javayant
1011Juan P MacleadAustralia2026-10-14Printing Dimensions RENEWAL5Xuxue Feng
1012Ricardo M NickaCanada2026-10-25Feiner Bros QUALIFIED62Amy Elsner
1013Jones G CaldareraUnited Kingdom2026-10-22Rousseaux, Michael Esq UNQUALIFIED88Ioni Bowcher
1014Greenwood F CampainIndia2026-10-13Feltz Printing Service NEGOTIATION56Asiya Javayant
1015David Z MaletRussia2026-10-27Feltz Printing Service PROPOSAL28Ioni Bowcher
1016Silvio A WieserJapan2026-10-13Feiner Bros RENEWAL46Onyama Limba
1017Tony D OldroydSpain2026-10-25Feiner Bros PROPOSAL43Ioni Bowcher
1018Leon F BowleyJapan2026-10-25Rangoni Of Florence UNQUALIFIED54Bernardo Dominic
1019Aruna M MaletUnited Kingdom2026-10-16Chanay, Jeffrey A Esq UNQUALIFIED30Onyama Limba
1020Claire D StockhamAustralia2026-11-04Feltz Printing Service PROPOSAL62Anna Fali
1021Rodrigues P RulapaughCanada2026-10-17Chanay, Jeffrey A Esq RENEWAL91Bernardo Dominic
1022Juan N SchemmerIndia2026-10-20Chapman, Ross E Esq UNQUALIFIED57Anna Fali
1023Aika K CaldareraIndia2026-10-23Feiner Bros QUALIFIED12Amy Elsner
1024Octavia D PaprockiBrazil2026-11-04Chapman, Ross E Esq NEGOTIATION68Onyama Limba
1025Emily U StockhamIndia2026-10-23Benton, John B Jr QUALIFIED90Ioni Bowcher
1026Juan I FerenczIndia2026-10-22Buckley Miller Wright NEW69Ioni Bowcher
1027Adams Q DilliardSpain2026-11-06Feltz Printing Service NEGOTIATION39Bernardo Dominic
1028Mujtaba F CaudyUnited Kingdom2026-10-26Buckley Miller Wright NEGOTIATION45Elwin Sharvill
1029Maria F CaudySpain2026-10-26Dorl, James J Esq RENEWAL94Amy Elsner
1030Aruna R IturbideItaly2026-11-05Truhlar And Truhlar Attys RENEWAL84Bernardo Dominic
1031Julie I TollnerAustralia2026-10-20Feltz Printing Service UNQUALIFIED1Ivan Magalhaes
1032Sinclair C GauchoSpain2026-10-16Benton, John B Jr RENEWAL35Xuxue Feng
1033Jefferson N MarrierJapan2026-11-11Rousseaux, Michael Esq NEW14Ivan Magalhaes
1034Leon G KolmetzUnited Kingdom2026-10-17Commercial Press PROPOSAL25Stephen Shaw
1035Claire C VocelkaItaly2026-10-19Chapman, Ross E Esq UNQUALIFIED34Xuxue Feng
1036Maisha A IturbideJapan2026-10-28Feiner Bros UNQUALIFIED53Amy Elsner
1037Alejandro D MarrierGermany2026-11-04Rangoni Of Florence UNQUALIFIED73Elwin Sharvill
1038Tony M SchemmerCanada2026-10-28Buckley Miller Wright RENEWAL1Xuxue Feng
1039Sinclair W DoeGermany2026-10-27Chanay, Jeffrey A Esq NEW93Xuxue Feng
1040Leon P WieserSpain2026-11-10Feltz Printing Service NEW25Elwin Sharvill
1041Claire G PoquetteIndia2026-10-31Truhlar And Truhlar Attys NEW12Anna Fali
1042Tony J OldroydGermany2026-10-31Dorl, James J Esq UNQUALIFIED60Amy Elsner
1043Rodrigues F SaylorsCanada2026-10-18Chanay, Jeffrey A Esq UNQUALIFIED90Xuxue Feng
1044Mayumi C TollnerArgentina2026-10-14Printing Dimensions NEW61Amy Elsner
1045David V FigeroaBrazil2026-11-01Dorl, James J Esq QUALIFIED81Amy Elsner
1046Smith K BriddickArgentina2026-11-08Rousseaux, Michael Esq QUALIFIED4Elwin Sharvill
1047Adams H RoysterBrazil2026-10-27Morlong Associates RENEWAL55Stephen Shaw
1048Stacey P WieserCanada2026-10-26Chemel, James L Cpa NEGOTIATION30Xuxue Feng
1049Ricardo P RoysterJapan2026-11-09Chanay, Jeffrey A Esq UNQUALIFIED96Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Claire J StockhamFranceStephen Shaw PROPOSAL
Antonio U SergiGermanyStephen Shaw NEGOTIATION
Darci K GauchoUnited KingdomXuxue Feng PROPOSAL
Clifford Q AmigonJapanOnyama Limba RENEWAL
Aditya M InouyeItalyStephen Shaw NEW
Munro F WieserSpainElwin Sharvill UNQUALIFIED
Claire E MarrierRussiaIoni Bowcher NEGOTIATION
Rodrigues B VocelkaBrazilElwin Sharvill NEW
Clifford O FollerItalyIoni Bowcher PROPOSAL
Aruna E FlosiBrazilXuxue Feng NEGOTIATION
Octavia B WhobreyCanadaElwin Sharvill QUALIFIED
Rodrigues G CaldareraSpainIoni Bowcher QUALIFIED
Munro O FollerCanadaAnna Fali NEGOTIATION
Cody A MaletCanadaAsiya Javayant UNQUALIFIED
Stacey B GauchoSpainOnyama Limba NEGOTIATION
Emily K DilliardAustraliaAnna Fali QUALIFIED
Clifford R MorascaFranceIvan Magalhaes UNQUALIFIED
Claire F StockhamSpainStephen Shaw UNQUALIFIED
Octavia V ButtFranceStephen Shaw NEW
Ashley V GillianFranceStephen Shaw NEGOTIATION
Costa J PerinFranceElwin Sharvill NEW
Emily I RulapaughIndiaXuxue Feng NEGOTIATION
Murillo X SergiFranceAnna Fali NEW
Sinclair Y InouyeBrazilXuxue Feng RENEWAL
Tony C DoeCanadaIoni Bowcher RENEWAL
Arvin I FlosiArgentinaStephen Shaw UNQUALIFIED
Costa U TollnerFranceElwin Sharvill NEGOTIATION
Aika P GlickGermanyOnyama Limba PROPOSAL
Chavez Z FigeroaSpainOnyama Limba NEW
Adams G VocelkaAustraliaElwin Sharvill PROPOSAL
Morrow S GillianGermanyIvan Magalhaes QUALIFIED
Jefferson Z ButtCanadaAnna Fali PROPOSAL
Leja J MaletFranceElwin Sharvill PROPOSAL
Jefferson T VocelkaIndiaAsiya Javayant PROPOSAL
Nicolas I PerinSpainAnna Fali QUALIFIED
Deepesh J BriddickFranceAnna Fali QUALIFIED
Aika Q BologniaFranceOnyama Limba UNQUALIFIED
Nicolas Z RimRussiaXuxue Feng UNQUALIFIED
Chavez X AlbaresGermanyAsiya Javayant PROPOSAL
Aditya E FollerRussiaStephen Shaw NEGOTIATION
Stacey P KuskoAustraliaIoni Bowcher NEW
Chavez I StockhamGermanyXuxue Feng QUALIFIED
Johnson N CampainBrazilStephen Shaw RENEWAL
Rodrigues Y CampainBrazilOnyama Limba QUALIFIED
Jones K RoysterSpainAmy Elsner NEW
Jeanfrancois B OstroskyAustraliaStephen Shaw UNQUALIFIED
Aika H KuskoGermanyBernardo Dominic NEW
Jefferson Q RutaArgentinaIvan Magalhaes UNQUALIFIED
Izzy X PoquetteJapanIoni Bowcher NEW
Aditya O FerenczFranceElwin Sharvill QUALIFIED
Frozen Columns
Name
Aditya S Briddick
Aruna D Wieser
Jennifer L Kolmetz
Nicolas S Iturbide
Jeanfrancois O Figeroa
Cody L Malet
Jones P Shinko
Faith H Ferencz
Salvatore W Foller
Murillo R Flosi
Octavia B Bolognia
Francesco M Dilliard
Faith Y Foller
Wickens M Ostrosky
Darci A Perin
Darci I Flosi
Rodrigues V Slusarski
Ricardo K Caldarera
Claire I Kolmetz
Silvio M Glick
James C Royster
Stacey Z Stenseth
Antonio J Marrier
Ashley U Oldroyd
Alejandro J Campain
Aika J Butt
Arvin B Wieser
Faith I Ferencz
Morrow I Venere
Maria Z Ostrosky
Aditya Y Waycott
James R Figeroa
Jones G Darakjy
Tony B Briddick
Munro P Kusko
Antonio Y Whobrey
Octavia C Wieser
Clifford I Venere
Isabel C Caldarera
Maria M Slusarski
Maria A Kolmetz
Jefferson S Morasca
Rodrigues S Whobrey
Cody E Perin
Juan F Bolognia
Mayumi K Bowley
Octavia N Glick
Sinclair K Inouye
Smith M Bolognia
Isabel T Morasca
IdCountryDate
1000Germany2026-11-09
1001Spain2026-11-03
1002Japan2026-10-13
1003France2026-11-01
1004Argentina2026-10-17
1005Canada2026-10-16
1006Canada2026-10-16
1007Russia2026-10-19
1008Russia2026-10-24
1009Germany2026-11-02
1010Germany2026-10-13
1011Argentina2026-10-21
1012Australia2026-10-31
1013Argentina2026-10-18
1014India2026-10-28
1015Russia2026-10-16
1016Australia2026-10-29
1017India2026-11-02
1018Argentina2026-10-13
1019Australia2026-10-13
1020India2026-10-22
1021Australia2026-10-31
1022Brazil2026-10-31
1023India2026-11-05
1024India2026-10-19
1025Canada2026-11-08
1026United Kingdom2026-11-09
1027United Kingdom2026-11-09
1028United Kingdom2026-11-08
1029India2026-10-19
1030Canada2026-10-31
1031Russia2026-11-08
1032Russia2026-11-02
1033Canada2026-10-28
1034Italy2026-10-14
1035Japan2026-10-22
1036United Kingdom2026-10-14
1037Australia2026-11-02
1038India2026-10-31
1039Germany2026-11-09
1040United Kingdom2026-11-03
1041Russia2026-10-30
1042India2026-10-19
1043Argentina2026-11-04
1044Russia2026-11-08
1045Russia2026-10-22
1046Spain2026-10-27
1047Australia2026-11-09
1048United Kingdom2026-10-15
1049Australia2026-10-21

On-Demand Data

NameIdCountryDate
Kadeem B Whobrey1000France2026-10-18
Antonio X Caldarera1001Italy2026-11-03
Stacey M Perin1002Russia2026-11-08
Nicolas X Stenseth1003Spain2026-10-30
Cody P Gillian1004Germany2026-10-26
Darci O Gillian1005Russia2026-10-21
Nicolas O Venere1006Australia2026-10-16
Alejandro G Gaucho1007Japan2026-10-16
Johnson X Royster1008Italy2026-10-18
Wickens C Venere1009Italy2026-11-05
Aditya I Gillian1010Australia2026-10-19
Cody K Malet1011Japan2026-10-16
Salvatore C Maclead1012Germany2026-10-22
Maisha D Gillian1013India2026-10-24
Faith Q Sergi1014Russia2026-11-05
Jeanfrancois N Doe1015Canada2026-10-25
Morrow D Flosi1016Brazil2026-10-23
Misaki R Dilliard1017Russia2026-10-13
Munro O Ruta1018Australia2026-10-13
Mayumi C Ferencz1019India2026-11-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia U MorascaCanadaBernardo Dominic QUALIFIED
Sinclair V BologniaRussiaIoni Bowcher RENEWAL
Jefferson X FollerArgentinaIvan Magalhaes NEGOTIATION
Kaitlin R RimIndiaAmy Elsner QUALIFIED
Alejandro Z CaudyArgentinaXuxue Feng QUALIFIED
Munro O AlbaresFranceXuxue Feng QUALIFIED
Mayumi S AmigonJapanIvan Magalhaes PROPOSAL
Sinclair P SlusarskiAustraliaXuxue Feng NEW
Kadeem F RutaItalyAnna Fali PROPOSAL
Emily G PerinUnited KingdomXuxue Feng PROPOSAL
Faith H RulapaughGermanyAnna Fali NEGOTIATION
Jones W MaletCanadaAmy Elsner UNQUALIFIED
James X ButtIndiaAsiya Javayant QUALIFIED
Arvin M OstroskyFranceElwin Sharvill UNQUALIFIED
Jefferson S VocelkaGermanyOnyama Limba UNQUALIFIED
Aika L NickaCanadaXuxue Feng NEGOTIATION
Jefferson P OldroydArgentinaAmy Elsner NEW
Antonio Y MaletFranceIoni Bowcher QUALIFIED
Darci E CaldareraUnited KingdomIvan Magalhaes UNQUALIFIED
Chavez K StockhamIndiaAnna Fali UNQUALIFIED
Wickens W NestleCanadaAsiya Javayant UNQUALIFIED
Wickens D GlickUnited KingdomXuxue Feng UNQUALIFIED
Octavia Q VocelkaJapanBernardo Dominic PROPOSAL
Rodrigues J SlusarskiRussiaOnyama Limba NEW
Arvin Y PoquetteJapanAsiya Javayant NEGOTIATION
Johnson Q BriddickRussiaXuxue Feng NEGOTIATION
Ashley M FerenczJapanBernardo Dominic UNQUALIFIED
Kaitlin T MaletIndiaOnyama Limba UNQUALIFIED
Tony S InouyeBrazilOnyama Limba RENEWAL
Antonio S MaletAustraliaAmy Elsner UNQUALIFIED
Antonio W PaprockiSpainStephen Shaw QUALIFIED
Stacey D SchemmerFranceIoni Bowcher PROPOSAL
Juan N WaycottItalyIoni Bowcher UNQUALIFIED
Munro I BologniaItalyOnyama Limba PROPOSAL
Jeanfrancois Q MaletItalyIvan Magalhaes PROPOSAL
Mayumi V IturbideGermanyAmy Elsner PROPOSAL
Faith R GillianBrazilXuxue Feng QUALIFIED
Kaitlin X KuskoCanadaBernardo Dominic RENEWAL
Nicolas E SchemmerJapanAsiya Javayant NEGOTIATION
Maisha U CaldareraBrazilAnna Fali 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>