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
Deepesh W AlbaresItalyAsiya Javayant PROPOSAL
Arvin I CampainBrazilStephen Shaw UNQUALIFIED
Darci L GlickItalyStephen Shaw NEW
Jeanfrancois F AlbaresFranceAnna Fali RENEWAL
Francesco X RulapaughIndiaStephen Shaw PROPOSAL
Mujtaba Z MacleadFranceOnyama Limba NEGOTIATION
Octavia P WaycottArgentinaStephen Shaw NEGOTIATION
Smith E PerinGermanyElwin Sharvill PROPOSAL
Maisha B OstroskyCanadaOnyama Limba RENEWAL
Kaitlin O FerenczBrazilBernardo Dominic QUALIFIED
Sinclair I OstroskyArgentinaOnyama Limba RENEWAL
Ashley N FollerArgentinaIoni Bowcher RENEWAL
Cody P FlosiGermanyIvan Magalhaes QUALIFIED
Deepesh Z GlickBrazilOnyama Limba PROPOSAL
Chavez L BriddickRussiaIvan Magalhaes NEGOTIATION
Ricardo H AlbaresSpainOnyama Limba UNQUALIFIED
Greenwood K SlusarskiJapanAmy Elsner NEGOTIATION
Ashley V BologniaIndiaAmy Elsner RENEWAL
Nicolas Y NickaUnited KingdomIvan Magalhaes UNQUALIFIED
Johnson T OstroskySpainAnna Fali RENEWAL
Kaitlin I BowleyIndiaOnyama Limba NEGOTIATION
Kadeem V AmigonCanadaIvan Magalhaes UNQUALIFIED
Jennifer Q DoeCanadaAnna Fali NEGOTIATION
Greenwood N GlickIndiaAmy Elsner NEW
Tony J PerinAustraliaIvan Magalhaes PROPOSAL
Rodrigues C DarakjyBrazilAnna Fali NEW
James N SaylorsGermanyAmy Elsner NEGOTIATION
Adams D ChuiSpainIoni Bowcher NEW
Jeanfrancois T CaudyIndiaStephen Shaw QUALIFIED
Deepesh M DilliardItalyAsiya Javayant QUALIFIED
Sinclair V IturbideGermanyXuxue Feng NEGOTIATION
Francesco R FerenczArgentinaStephen Shaw QUALIFIED
Wickens P DarakjyGermanyAmy Elsner UNQUALIFIED
Isabel D NestleUnited KingdomBernardo Dominic PROPOSAL
Mujtaba J AmigonItalyStephen Shaw UNQUALIFIED
Cody E FlosiCanadaAsiya Javayant RENEWAL
Deepesh F FerenczRussiaBernardo Dominic NEGOTIATION
Tony L RulapaughBrazilAsiya Javayant QUALIFIED
David E FlosiFranceXuxue Feng PROPOSAL
Jones Q KuskoArgentinaAnna Fali UNQUALIFIED
Aditya G SlusarskiItalyAsiya Javayant NEGOTIATION
Tony E KolmetzJapanAnna Fali UNQUALIFIED
Ivar I MorascaAustraliaIvan Magalhaes NEW
Smith M BologniaJapanElwin Sharvill QUALIFIED
Kadeem D SaylorsSpainStephen Shaw PROPOSAL
Deepesh A PerinUnited KingdomBernardo Dominic NEW
Aditya B WieserIndiaAnna Fali QUALIFIED
Misaki H StockhamGermanyAmy Elsner PROPOSAL
Aditya K NestleArgentinaXuxue Feng NEW
Sinclair E VocelkaCanadaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Johnson S WaycottAustraliaAnna Fali NEGOTIATION
Emily P ButtBrazilAsiya Javayant RENEWAL
Leja I CampainRussiaIvan Magalhaes UNQUALIFIED
Juan Z KolmetzRussiaOnyama Limba UNQUALIFIED
Deepesh B FollerCanadaBernardo Dominic NEGOTIATION
Munro K OstroskyIndiaIvan Magalhaes QUALIFIED
Silvio K MaletGermanyBernardo Dominic UNQUALIFIED
Wickens C CaldareraGermanyBernardo Dominic NEW
Mayumi J DilliardFranceBernardo Dominic NEGOTIATION
Aruna Y SchemmerArgentinaAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan I VocelkaItaly2026-10-27Rangoni Of Florence PROPOSAL5Stephen Shaw
1001Rodrigues Y PoquetteRussia2026-10-04Benton, John B Jr NEW52Xuxue Feng
1002Mayumi R SergiSpain2026-10-12Rousseaux, Michael Esq QUALIFIED66Stephen Shaw
1003Leon T RulapaughIndia2026-10-12Feiner Bros NEW55Elwin Sharvill
1004Antonio Y MaletUnited Kingdom2026-11-02Chemel, James L Cpa NEW22Anna Fali
1005Mayumi G OstroskyFrance2026-10-06Chanay, Jeffrey A Esq QUALIFIED74Ivan Magalhaes
1006Ashley R StockhamCanada2026-10-05Chapman, Ross E Esq NEW67Amy Elsner
1007Jefferson W SaylorsRussia2026-10-06Rangoni Of Florence NEW80Asiya Javayant
1008Aruna E WhobreyAustralia2026-10-04King, Christopher A Esq RENEWAL0Ivan Magalhaes
1009Claire S GarufiGermany2026-10-28Rangoni Of Florence RENEWAL97Elwin Sharvill
1010Jeanfrancois S FerenczJapan2026-10-26Rousseaux, Michael Esq NEW6Ioni Bowcher
1011Nicolas H MaletFrance2026-10-11Buckley Miller Wright NEGOTIATION63Ivan Magalhaes
1012Emily R IturbideGermany2026-11-01Chanay, Jeffrey A Esq NEW88Asiya Javayant
1013Deepesh O VocelkaGermany2026-10-09Printing Dimensions PROPOSAL4Elwin Sharvill
1014James Y ShinkoArgentina2026-10-26Feltz Printing Service RENEWAL5Onyama Limba
1015Clifford I FigeroaFrance2026-10-12Buckley Miller Wright UNQUALIFIED91Elwin Sharvill
1016Tony Q ChuiGermany2026-10-08Truhlar And Truhlar Attys QUALIFIED16Ivan Magalhaes
1017Stacey Z AlbaresBrazil2026-10-22Truhlar And Truhlar Attys QUALIFIED48Asiya Javayant
1018Octavia E ChuiJapan2026-10-24Truhlar And Truhlar Attys NEGOTIATION14Asiya Javayant
1019Johnson K DilliardAustralia2026-10-07Chapman, Ross E Esq QUALIFIED40Elwin Sharvill
1020Isabel A FerenczIndia2026-10-29King, Christopher A Esq QUALIFIED87Stephen Shaw
1021Leon N MarrierArgentina2026-10-28Printing Dimensions NEW85Stephen Shaw
1022Jeanfrancois O DarakjyUnited Kingdom2026-10-26Rangoni Of Florence QUALIFIED5Asiya Javayant
1023Rodrigues E GillianGermany2026-10-24Dorl, James J Esq RENEWAL54Stephen Shaw
1024James K BowleyUnited Kingdom2026-10-26King, Christopher A Esq RENEWAL15Bernardo Dominic
1025Antonio C MorascaCanada2026-10-11Rangoni Of Florence NEGOTIATION49Stephen Shaw
1026Arvin G WhobreyCanada2026-10-30Feltz Printing Service NEW55Amy Elsner
1027Clifford U MarrierArgentina2026-10-25Rangoni Of Florence UNQUALIFIED59Xuxue Feng
1028Kadeem A WaycottBrazil2026-10-18Morlong Associates QUALIFIED7Ioni Bowcher
1029Mayumi C VocelkaBrazil2026-10-13Morlong Associates QUALIFIED96Amy Elsner
1030Aruna W PoquetteAustralia2026-10-25Benton, John B Jr RENEWAL29Elwin Sharvill
1031Darci A SlusarskiIndia2026-10-13Chapman, Ross E Esq NEW67Onyama Limba
1032Darci N MacleadAustralia2026-10-07Commercial Press QUALIFIED54Ioni Bowcher
1033Mayumi V WaycottFrance2026-10-28Chemel, James L Cpa NEGOTIATION98Xuxue Feng
1034Greenwood J NickaBrazil2026-11-02Chemel, James L Cpa UNQUALIFIED61Anna Fali
1035Isabel U NickaItaly2026-10-07Dorl, James J Esq QUALIFIED58Xuxue Feng
1036Misaki Q GauchoIndia2026-10-13Feltz Printing Service RENEWAL27Asiya Javayant
1037Isabel F AlbaresFrance2026-11-02Rousseaux, Michael Esq NEW17Stephen Shaw
1038Aruna H WaycottAustralia2026-10-09Feltz Printing Service NEW90Ioni Bowcher
1039Morrow F BowleyBrazil2026-10-09Benton, John B Jr NEGOTIATION11Elwin Sharvill
1040Faith O BriddickSpain2026-10-07Rousseaux, Michael Esq NEGOTIATION70Elwin Sharvill
1041Ricardo A FlosiSpain2026-10-20King, Christopher A Esq PROPOSAL90Onyama Limba
1042Nicolas M InouyeIndia2026-10-16Feiner Bros UNQUALIFIED64Stephen Shaw
1043Morrow C RoysterAustralia2026-10-06Truhlar And Truhlar Attys RENEWAL51Xuxue Feng
1044Arvin P PaprockiAustralia2026-10-10Printing Dimensions NEW30Xuxue Feng
1045Clifford M MacleadSpain2026-10-13Truhlar And Truhlar Attys RENEWAL43Xuxue Feng
1046Julie P KolmetzJapan2026-10-21King, Christopher A Esq PROPOSAL97Stephen Shaw
1047Wickens W VocelkaCanada2026-10-06Chemel, James L Cpa NEGOTIATION50Amy Elsner
1048Ivar V FollerUnited Kingdom2026-10-04Dorl, James J Esq UNQUALIFIED20Amy Elsner
1049Murillo Q ButtUnited Kingdom2026-10-27Rangoni Of Florence NEGOTIATION78Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Salvatore V WaycottItalyIvan Magalhaes NEW
Aika H AmigonGermanyOnyama Limba UNQUALIFIED
Ivar H TollnerJapanIoni Bowcher PROPOSAL
Salvatore H ButtFranceAmy Elsner RENEWAL
Leja P GillianAustraliaStephen Shaw QUALIFIED
Costa U RimFranceAmy Elsner NEW
Munro G KuskoFranceOnyama Limba RENEWAL
Ricardo J SchemmerItalyIvan Magalhaes RENEWAL
Sinclair T CampainRussiaAsiya Javayant UNQUALIFIED
Leja T WhobreyAustraliaBernardo Dominic NEW
Sinclair G FerenczCanadaAnna Fali NEGOTIATION
Ricardo F GauchoRussiaOnyama Limba RENEWAL
Leja V CaudyUnited KingdomBernardo Dominic RENEWAL
Kaitlin Q DarakjyIndiaIoni Bowcher QUALIFIED
James F TollnerJapanAsiya Javayant RENEWAL
Smith N IturbideArgentinaAsiya Javayant PROPOSAL
Rodrigues U CaldareraRussiaAsiya Javayant PROPOSAL
Kadeem Y MarrierJapanBernardo Dominic PROPOSAL
Leon J SergiUnited KingdomAsiya Javayant PROPOSAL
Murillo K FollerIndiaStephen Shaw NEW
Francesco M WaycottGermanyBernardo Dominic NEW
Silvio H AlbaresGermanyAmy Elsner RENEWAL
Clifford Y DarakjyCanadaAnna Fali NEW
Munro X SchemmerJapanIoni Bowcher RENEWAL
Faith T RutaItalyAsiya Javayant RENEWAL
Julie E RutaItalyBernardo Dominic RENEWAL
Ivar R ChuiCanadaXuxue Feng PROPOSAL
Jones H StockhamUnited KingdomBernardo Dominic RENEWAL
Claire Z FigeroaIndiaAmy Elsner NEGOTIATION
Silvio J StockhamSpainOnyama Limba PROPOSAL
Rodrigues O BowleyCanadaBernardo Dominic QUALIFIED
Aika W PerinIndiaAmy Elsner QUALIFIED
Francesco U GlickJapanOnyama Limba QUALIFIED
Darci U MaletArgentinaBernardo Dominic QUALIFIED
Francesco C WhobreyCanadaAnna Fali NEW
Murillo Y VocelkaIndiaIoni Bowcher NEGOTIATION
Arvin B CaudyGermanyAmy Elsner NEGOTIATION
Cody O CaldareraCanadaIvan Magalhaes RENEWAL
Francesco L RoysterArgentinaXuxue Feng UNQUALIFIED
Octavia P FigeroaRussiaStephen Shaw PROPOSAL
Deepesh O MaletBrazilElwin Sharvill QUALIFIED
Ricardo C VenereItalyAsiya Javayant QUALIFIED
Ivar Q KolmetzFranceOnyama Limba UNQUALIFIED
Smith V BologniaFranceOnyama Limba PROPOSAL
Nicolas A CaudyRussiaAsiya Javayant PROPOSAL
Faith O WhobreyArgentinaOnyama Limba UNQUALIFIED
Antonio D RimFranceXuxue Feng QUALIFIED
Murillo L NestleIndiaIvan Magalhaes NEGOTIATION
Faith C CampainUnited KingdomXuxue Feng NEW
Faith F TollnerFranceIoni Bowcher NEW
Frozen Columns
Name
Rodrigues V Albares
Jennifer Q Malet
Ricardo Q Whobrey
Faith K Malet
Deepesh K Wieser
Mujtaba L Darakjy
Smith F Malet
Jennifer Y Stenseth
Johnson U Rulapaugh
Wickens J Rulapaugh
Silvio D Nicka
Murillo Q Flosi
David X Flosi
Ricardo D Caldarera
Johnson U Royster
Rodrigues H Dilliard
Faith H Briddick
Munro U Chui
Ricardo C Flosi
Antonio Z Doe
Aditya S Doe
Clifford W Bolognia
Morrow J Albares
Misaki H Stenseth
Maisha N Kusko
Misaki E Briddick
Ricardo M Morasca
Stacey X Ferencz
Rodrigues D Chui
Costa E Flosi
Greenwood D Campain
Johnson J Foller
Chavez B Nestle
Sinclair E Slusarski
Mujtaba H Glick
Arvin H Tollner
Munro F Butt
Smith X Poquette
Jones C Gaucho
Clifford L Caldarera
Kaitlin O Figeroa
Aruna X Dilliard
Leja D Whobrey
Jones C Venere
Maria T Gillian
Munro K Poquette
Antonio O Ostrosky
Deepesh R Bolognia
Silvio H Dilliard
Rodrigues K Kusko
IdCountryDate
1000United Kingdom2026-10-05
1001United Kingdom2026-10-23
1002Japan2026-10-31
1003Japan2026-10-10
1004Brazil2026-10-27
1005Japan2026-10-16
1006Italy2026-10-05
1007Spain2026-10-07
1008Canada2026-10-11
1009Brazil2026-10-05
1010Argentina2026-10-25
1011France2026-10-11
1012Italy2026-10-28
1013Argentina2026-10-21
1014Brazil2026-10-14
1015Argentina2026-10-20
1016Russia2026-10-15
1017Argentina2026-10-08
1018Japan2026-10-12
1019Italy2026-10-18
1020Brazil2026-10-16
1021India2026-10-21
1022Brazil2026-10-09
1023France2026-10-18
1024Brazil2026-10-13
1025United Kingdom2026-10-23
1026Japan2026-10-30
1027Australia2026-10-20
1028Italy2026-10-06
1029Russia2026-10-12
1030Italy2026-10-10
1031United Kingdom2026-10-04
1032France2026-10-04
1033Japan2026-10-12
1034Spain2026-10-30
1035United Kingdom2026-10-17
1036Italy2026-10-07
1037Argentina2026-10-07
1038Brazil2026-10-27
1039Italy2026-10-31
1040Argentina2026-10-28
1041Spain2026-10-06
1042India2026-10-13
1043Russia2026-10-07
1044Brazil2026-10-25
1045India2026-10-10
1046United Kingdom2026-10-30
1047Italy2026-10-12
1048Australia2026-10-24
1049Italy2026-11-01

On-Demand Data

NameIdCountryDate
Munro J Bolognia1000Germany2026-10-31
Misaki R Glick1001France2026-10-26
Isabel A Iturbide1002Canada2026-10-23
Izzy G Ruta1003Italy2026-10-10
Smith M Gillian1004Brazil2026-10-21
Leja X Campain1005Germany2026-10-05
Isabel L Bowley1006Brazil2026-10-15
Maria X Chui1007Canada2026-10-05
Silvio R Kolmetz1008Germany2026-10-27
Smith O Ferencz1009Japan2026-10-25
Juan K Ruta1010Canada2026-10-15
Munro M Albares1011Brazil2026-10-12
Chavez N Waycott1012Russia2026-10-13
David B Briddick1013India2026-11-02
James Z Marrier1014Japan2026-10-16
Francesco L Rulapaugh1015Italy2026-10-16
Nicolas O Bolognia1016Brazil2026-10-21
Aruna F Amigon1017Argentina2026-10-10
Munro W Gillian1018Spain2026-10-07
Wickens L Paprocki1019Germany2026-10-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair D DarakjyCanadaIoni Bowcher UNQUALIFIED
Ashley T CaldareraJapanElwin Sharvill RENEWAL
Greenwood U SaylorsIndiaElwin Sharvill QUALIFIED
Jones D MarrierArgentinaOnyama Limba NEGOTIATION
Mujtaba X OldroydIndiaIoni Bowcher NEGOTIATION
Nicolas Y MacleadGermanyAsiya Javayant NEGOTIATION
Jeanfrancois U KuskoCanadaAnna Fali UNQUALIFIED
Sinclair Q TollnerArgentinaOnyama Limba QUALIFIED
Aika M NestleAustraliaIvan Magalhaes UNQUALIFIED
Leja Y MarrierBrazilAnna Fali NEGOTIATION
Aruna J MaletSpainAnna Fali RENEWAL
David W FerenczBrazilOnyama Limba NEGOTIATION
Jennifer K PoquetteJapanXuxue Feng NEGOTIATION
Ashley U DoeRussiaAmy Elsner PROPOSAL
Stacey K RoysterAustraliaXuxue Feng NEGOTIATION
Ivar U MorascaUnited KingdomIvan Magalhaes UNQUALIFIED
Silvio B FerenczCanadaAnna Fali QUALIFIED
Adams P MaletCanadaAnna Fali NEW
Chavez P AlbaresRussiaAnna Fali QUALIFIED
James K IturbideFranceIvan Magalhaes RENEWAL
Julie G MarrierFranceAsiya Javayant NEGOTIATION
Costa L NickaRussiaStephen Shaw NEGOTIATION
Murillo K AlbaresAustraliaIvan Magalhaes UNQUALIFIED
Emily I AmigonBrazilAsiya Javayant NEW
Morrow P FollerArgentinaAmy Elsner RENEWAL
Morrow R VocelkaSpainOnyama Limba UNQUALIFIED
Adams Z SergiUnited KingdomIvan Magalhaes PROPOSAL
Isabel K CaudyArgentinaAsiya Javayant NEGOTIATION
Darci P IturbideJapanStephen Shaw PROPOSAL
Claire W MarrierIndiaStephen Shaw PROPOSAL
Juan S GillianSpainBernardo Dominic QUALIFIED
Mujtaba G BologniaRussiaXuxue Feng PROPOSAL
Salvatore N CaldareraIndiaOnyama Limba RENEWAL
Emily P CaldareraArgentinaIvan Magalhaes UNQUALIFIED
Octavia C OstroskyUnited KingdomAsiya Javayant PROPOSAL
Sinclair G RimItalyAmy Elsner PROPOSAL
Julie B StockhamItalyOnyama Limba NEW
Sinclair R CampainUnited KingdomAmy Elsner NEW
Alejandro A DarakjyJapanIvan Magalhaes UNQUALIFIED
Chavez N MorascaAustraliaStephen 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>