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
Aruna S OldroydSpainIvan Magalhaes NEGOTIATION
Sinclair M DarakjyBrazilIoni Bowcher UNQUALIFIED
Cody S PoquetteCanadaAsiya Javayant NEGOTIATION
Tony M GarufiFranceAnna Fali UNQUALIFIED
Chavez H RutaCanadaAsiya Javayant QUALIFIED
Kaitlin E GlickRussiaBernardo Dominic NEGOTIATION
Leon Z SergiUnited KingdomIvan Magalhaes NEW
Costa T DilliardSpainAmy Elsner NEGOTIATION
Maria H InouyeUnited KingdomBernardo Dominic UNQUALIFIED
Stacey Y MaletIndiaAmy Elsner NEW
Sinclair F MaletArgentinaIvan Magalhaes NEW
Juan T VenereUnited KingdomIvan Magalhaes NEGOTIATION
Isabel I FigeroaCanadaBernardo Dominic RENEWAL
Leja F MacleadBrazilIvan Magalhaes UNQUALIFIED
Murillo Q PaprockiAustraliaBernardo Dominic RENEWAL
Claire W SlusarskiAustraliaIoni Bowcher RENEWAL
Aika X SergiUnited KingdomStephen Shaw QUALIFIED
Deepesh S MacleadIndiaAsiya Javayant UNQUALIFIED
Greenwood L GlickArgentinaXuxue Feng NEGOTIATION
Antonio Z DoeArgentinaXuxue Feng UNQUALIFIED
Misaki Y KuskoAustraliaOnyama Limba NEGOTIATION
Deepesh K SaylorsIndiaElwin Sharvill NEGOTIATION
Jones U NestleAustraliaElwin Sharvill UNQUALIFIED
Costa E IturbideFranceOnyama Limba RENEWAL
Arvin I PerinRussiaAnna Fali UNQUALIFIED
Leon K PoquetteItalyAnna Fali QUALIFIED
Alejandro N VenereIndiaAmy Elsner NEW
Salvatore F VocelkaRussiaOnyama Limba PROPOSAL
Morrow A AmigonUnited KingdomIvan Magalhaes NEGOTIATION
Greenwood Z ShinkoRussiaXuxue Feng RENEWAL
Julie C StensethUnited KingdomBernardo Dominic QUALIFIED
Mayumi Q GlickRussiaXuxue Feng RENEWAL
Isabel O ButtSpainBernardo Dominic QUALIFIED
Jefferson Z RutaCanadaAsiya Javayant QUALIFIED
Smith M PaprockiUnited KingdomXuxue Feng NEW
Maisha U CaldareraAustraliaIvan Magalhaes PROPOSAL
Francesco I TollnerRussiaAmy Elsner QUALIFIED
Murillo B CaldareraCanadaIoni Bowcher RENEWAL
Emily S MaletFranceElwin Sharvill NEW
Rodrigues W SergiArgentinaIoni Bowcher NEGOTIATION
Julie F BowleyRussiaIoni Bowcher QUALIFIED
Aditya N MaletUnited KingdomElwin Sharvill UNQUALIFIED
Juan Y InouyeRussiaIvan Magalhaes RENEWAL
Maisha B RoysterItalyAmy Elsner NEGOTIATION
Adams M TollnerJapanXuxue Feng NEW
Mujtaba W DoeIndiaStephen Shaw PROPOSAL
Greenwood F DoeRussiaXuxue Feng UNQUALIFIED
Faith R GillianGermanyIvan Magalhaes UNQUALIFIED
Jennifer T PerinSpainBernardo Dominic NEGOTIATION
Mujtaba K MaletRussiaElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Stacey S FerenczArgentinaAmy Elsner UNQUALIFIED
Mujtaba Y SchemmerItalyOnyama Limba RENEWAL
Rodrigues S CaudyBrazilAmy Elsner NEW
Antonio P RimIndiaAmy Elsner PROPOSAL
James R CampainUnited KingdomAmy Elsner UNQUALIFIED
Arvin D MarrierItalyOnyama Limba PROPOSAL
Clifford W PerinBrazilIoni Bowcher NEGOTIATION
Alejandro Q MorascaRussiaAnna Fali QUALIFIED
Leja G FigeroaFranceAsiya Javayant QUALIFIED
Nicolas I WaycottJapanAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy Q FollerBrazil2026-10-22Truhlar And Truhlar Attys RENEWAL93Anna Fali
1001Octavia E MorascaGermany2026-10-26Chapman, Ross E Esq RENEWAL56Stephen Shaw
1002Smith H SchemmerJapan2026-11-04Dorl, James J Esq QUALIFIED73Stephen Shaw
1003Kaitlin I RoysterGermany2026-11-03Morlong Associates NEW9Onyama Limba
1004Adams R GillianJapan2026-10-30King, Christopher A Esq UNQUALIFIED38Xuxue Feng
1005Cody P CaudyAustralia2026-10-16Truhlar And Truhlar Attys RENEWAL19Ioni Bowcher
1006Ashley J PerinGermany2026-11-04Chanay, Jeffrey A Esq NEW8Elwin Sharvill
1007Alejandro R SlusarskiBrazil2026-10-16Truhlar And Truhlar Attys NEW90Elwin Sharvill
1008Octavia I GauchoIndia2026-11-07Rangoni Of Florence RENEWAL48Ioni Bowcher
1009Munro T NestleJapan2026-11-03Chapman, Ross E Esq QUALIFIED45Xuxue Feng
1010Aika J OstroskyIndia2026-11-09Morlong Associates RENEWAL25Anna Fali
1011Darci P CaldareraArgentina2026-11-05Buckley Miller Wright RENEWAL57Stephen Shaw
1012Maisha B NickaArgentina2026-11-05Morlong Associates UNQUALIFIED37Onyama Limba
1013Wickens G PaprockiSpain2026-11-01King, Christopher A Esq NEGOTIATION41Elwin Sharvill
1014Juan L ButtAustralia2026-10-19Commercial Press QUALIFIED46Elwin Sharvill
1015Darci N RimAustralia2026-11-14Commercial Press UNQUALIFIED55Onyama Limba
1016Ricardo X SaylorsRussia2026-11-02Morlong Associates NEW8Onyama Limba
1017Wickens E OldroydArgentina2026-10-22Truhlar And Truhlar Attys UNQUALIFIED33Ioni Bowcher
1018Maria R GarufiUnited Kingdom2026-10-18Feiner Bros PROPOSAL47Onyama Limba
1019Rodrigues T IturbideUnited Kingdom2026-10-23Rangoni Of Florence RENEWAL3Amy Elsner
1020Munro N SchemmerItaly2026-11-07Chanay, Jeffrey A Esq NEW99Bernardo Dominic
1021Clifford H CaldareraItaly2026-10-20Feiner Bros PROPOSAL25Asiya Javayant
1022Mujtaba H GarufiRussia2026-10-31Chapman, Ross E Esq QUALIFIED14Bernardo Dominic
1023Maisha N OldroydCanada2026-10-27Chemel, James L Cpa QUALIFIED39Anna Fali
1024Aditya S CaudyGermany2026-10-29Morlong Associates NEW6Elwin Sharvill
1025Jefferson I DoeRussia2026-10-16Benton, John B Jr RENEWAL45Xuxue Feng
1026James Y MaletAustralia2026-10-23Feltz Printing Service UNQUALIFIED26Asiya Javayant
1027Leja G WaycottItaly2026-11-02Dorl, James J Esq PROPOSAL70Anna Fali
1028Chavez V AlbaresUnited Kingdom2026-10-24Feltz Printing Service NEGOTIATION54Bernardo Dominic
1029David A DarakjyArgentina2026-11-07Feltz Printing Service RENEWAL71Ivan Magalhaes
1030Izzy Q PerinAustralia2026-10-21Buckley Miller Wright PROPOSAL92Stephen Shaw
1031Tony Y PoquetteRussia2026-10-25Chanay, Jeffrey A Esq UNQUALIFIED57Elwin Sharvill
1032Maria S FerenczItaly2026-11-01Buckley Miller Wright RENEWAL83Bernardo Dominic
1033Silvio T BriddickArgentina2026-10-22Chemel, James L Cpa PROPOSAL53Ivan Magalhaes
1034Octavia J IturbideGermany2026-11-07Truhlar And Truhlar Attys NEGOTIATION88Stephen Shaw
1035Morrow M WhobreySpain2026-10-23Chemel, James L Cpa RENEWAL7Anna Fali
1036Deepesh W DilliardSpain2026-10-17Buckley Miller Wright NEGOTIATION2Onyama Limba
1037Adams G FigeroaArgentina2026-10-23Rousseaux, Michael Esq RENEWAL60Xuxue Feng
1038Ivar U SlusarskiGermany2026-10-26Chapman, Ross E Esq QUALIFIED8Ioni Bowcher
1039Aruna V FollerJapan2026-10-26Morlong Associates NEW16Stephen Shaw
1040Cody Y MaletFrance2026-11-11Morlong Associates QUALIFIED65Ivan Magalhaes
1041Francesco T TollnerItaly2026-11-13Morlong Associates NEGOTIATION35Bernardo Dominic
1042Jennifer P WaycottSpain2026-10-18Chanay, Jeffrey A Esq PROPOSAL42Anna Fali
1043Kadeem V MacleadItaly2026-10-22Chanay, Jeffrey A Esq QUALIFIED16Onyama Limba
1044Maisha V FigeroaRussia2026-10-28Rousseaux, Michael Esq PROPOSAL4Stephen Shaw
1045Ashley M TollnerBrazil2026-10-19Chanay, Jeffrey A Esq NEGOTIATION8Bernardo Dominic
1046Antonio N CampainJapan2026-10-30Chemel, James L Cpa RENEWAL37Amy Elsner
1047Morrow U TollnerAustralia2026-10-21Benton, John B Jr QUALIFIED88Ivan Magalhaes
1048Munro M KolmetzItaly2026-11-14Benton, John B Jr PROPOSAL82Bernardo Dominic
1049Francesco Q MaletRussia2026-10-21Rangoni Of Florence PROPOSAL92Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Emily T VocelkaFranceXuxue Feng QUALIFIED
Francesco R MacleadCanadaIvan Magalhaes QUALIFIED
Mayumi I ShinkoUnited KingdomStephen Shaw NEGOTIATION
Mujtaba E SergiFranceElwin Sharvill NEW
Jennifer K VocelkaItalyAsiya Javayant NEW
Nicolas N GauchoAustraliaAnna Fali PROPOSAL
Maria G DarakjyUnited KingdomIvan Magalhaes NEGOTIATION
Adams T NickaRussiaBernardo Dominic QUALIFIED
Johnson M BologniaJapanIvan Magalhaes UNQUALIFIED
Jefferson G MaletIndiaAmy Elsner NEGOTIATION
Munro D MaletUnited KingdomBernardo Dominic NEW
Costa R VenereArgentinaStephen Shaw NEGOTIATION
Jefferson F ShinkoCanadaElwin Sharvill NEGOTIATION
Emily F MaletSpainIvan Magalhaes PROPOSAL
Izzy Q GauchoRussiaBernardo Dominic NEW
Leon Y FigeroaGermanyXuxue Feng PROPOSAL
Cody N RutaRussiaIvan Magalhaes PROPOSAL
Rodrigues Y AlbaresRussiaIoni Bowcher UNQUALIFIED
Greenwood R FlosiBrazilIvan Magalhaes PROPOSAL
Leon A SaylorsCanadaElwin Sharvill QUALIFIED
Jefferson C SlusarskiJapanBernardo Dominic PROPOSAL
Aika O StockhamBrazilAnna Fali QUALIFIED
Octavia B VocelkaIndiaOnyama Limba NEW
Nicolas B MacleadArgentinaAnna Fali NEGOTIATION
Aika M GarufiBrazilOnyama Limba PROPOSAL
Julie Y DarakjyArgentinaIvan Magalhaes NEGOTIATION
Alejandro V CaudyItalyAsiya Javayant RENEWAL
Munro O RoysterRussiaIoni Bowcher NEW
Claire X GlickAustraliaXuxue Feng PROPOSAL
Emily P RulapaughUnited KingdomOnyama Limba PROPOSAL
Faith D WhobreyUnited KingdomOnyama Limba NEGOTIATION
David L AlbaresRussiaAsiya Javayant QUALIFIED
Salvatore H MorascaFranceAsiya Javayant RENEWAL
Emily U KolmetzFranceAmy Elsner UNQUALIFIED
Johnson U InouyeCanadaElwin Sharvill NEGOTIATION
Maisha P IturbideRussiaIoni Bowcher QUALIFIED
Darci C DilliardJapanOnyama Limba UNQUALIFIED
Deepesh W OldroydRussiaStephen Shaw RENEWAL
Maria Y IturbideArgentinaBernardo Dominic NEGOTIATION
Morrow K CampainIndiaElwin Sharvill RENEWAL
James C GlickItalyOnyama Limba PROPOSAL
Salvatore O RimIndiaIvan Magalhaes PROPOSAL
Maisha X PaprockiSpainStephen Shaw RENEWAL
Arvin T CampainGermanyIoni Bowcher QUALIFIED
Arvin G TollnerJapanStephen Shaw QUALIFIED
Maria Q SaylorsCanadaAnna Fali PROPOSAL
Murillo E PerinRussiaBernardo Dominic NEW
Nicolas H WieserIndiaElwin Sharvill PROPOSAL
Mayumi E OstroskyFranceIvan Magalhaes QUALIFIED
Arvin V OldroydSpainBernardo Dominic PROPOSAL
Frozen Columns
Name
Juan H Albares
Chavez J Butt
Izzy Q Bolognia
Cody H Kolmetz
Kaitlin L Amigon
Deepesh F Foller
Greenwood A Shinko
Ashley G Venere
Nicolas I Malet
Ashley N Ostrosky
Alejandro W Poquette
Octavia L Flosi
James T Glick
Darci J Whobrey
Kaitlin J Glick
Munro O Malet
Costa T Morasca
Sinclair A Slusarski
James O Venere
Juan E Bowley
Darci A Poquette
Octavia J Paprocki
Izzy U Glick
Misaki S Rulapaugh
Johnson F Caudy
Aruna Q Rim
Greenwood W Kusko
Izzy C Kusko
Aika H Malet
Ashley I Amigon
Murillo Y Glick
Faith S Inouye
Emily Q Amigon
Adams V Morasca
Arvin B Darakjy
David B Bowley
Ricardo K Malet
Jeanfrancois J Wieser
Mayumi W Glick
Ricardo S Flosi
Cody B Gaucho
Jennifer D Briddick
Greenwood R Shinko
Johnson W Rim
Deepesh P Gaucho
Darci G Malet
Jones R Darakjy
Faith T Flosi
Leon D Tollner
Mujtaba M Shinko
IdCountryDate
1000Argentina2026-10-21
1001Japan2026-10-19
1002Canada2026-10-31
1003Italy2026-11-10
1004Canada2026-11-06
1005United Kingdom2026-11-13
1006Germany2026-10-20
1007Australia2026-10-30
1008Japan2026-10-20
1009Australia2026-10-18
1010India2026-10-26
1011Brazil2026-11-08
1012Spain2026-10-22
1013Argentina2026-10-19
1014Spain2026-10-30
1015Canada2026-10-27
1016Australia2026-10-20
1017Canada2026-11-04
1018Canada2026-10-19
1019Germany2026-11-10
1020Australia2026-11-08
1021Germany2026-10-21
1022Brazil2026-10-16
1023Argentina2026-10-23
1024United Kingdom2026-10-24
1025Japan2026-11-10
1026Canada2026-10-16
1027Australia2026-10-28
1028Russia2026-11-12
1029Germany2026-10-22
1030United Kingdom2026-11-02
1031United Kingdom2026-10-28
1032Australia2026-10-26
1033Brazil2026-10-23
1034Italy2026-10-22
1035Australia2026-11-02
1036United Kingdom2026-11-05
1037India2026-10-21
1038Italy2026-10-17
1039Italy2026-11-10
1040Australia2026-11-04
1041Australia2026-10-16
1042Brazil2026-10-31
1043Russia2026-10-17
1044Argentina2026-10-26
1045Brazil2026-11-11
1046Canada2026-10-16
1047India2026-10-30
1048United Kingdom2026-11-09
1049Italy2026-10-31

On-Demand Data

NameIdCountryDate
Rodrigues L Slusarski1000Australia2026-11-02
Octavia D Iturbide1001Spain2026-11-14
Kaitlin B Caudy1002India2026-10-17
Chavez B Ostrosky1003France2026-10-23
Leon N Iturbide1004Japan2026-11-07
Ivar R Briddick1005France2026-10-30
Francesco E Wieser1006Japan2026-11-08
Jones C Stenseth1007France2026-10-21
Maria M Stenseth1008Italy2026-10-21
Ivar H Royster1009Italy2026-10-21
Misaki A Ruta1010Canada2026-11-14
Murillo M Campain1011Russia2026-11-10
Tony O Garufi1012Spain2026-10-19
Leon X Bowley1013India2026-11-03
Maria A Caudy1014France2026-10-23
Adams Y Rim1015India2026-11-12
Murillo O Figeroa1016India2026-11-10
Darci Y Stenseth1017Brazil2026-11-07
Kaitlin Y Bowley1018Germany2026-10-16
Alejandro K Amigon1019Japan2026-11-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez J KolmetzIndiaStephen Shaw NEGOTIATION
Francesco W KolmetzItalyAsiya Javayant PROPOSAL
Jefferson P WaycottBrazilElwin Sharvill NEGOTIATION
Tony V StensethItalyIoni Bowcher UNQUALIFIED
James X ChuiIndiaXuxue Feng PROPOSAL
Rodrigues F MacleadRussiaAmy Elsner RENEWAL
Silvio X WhobreySpainElwin Sharvill UNQUALIFIED
Maisha C NestleRussiaAmy Elsner NEGOTIATION
Octavia Y BowleyAustraliaXuxue Feng NEW
Deepesh U MorascaAustraliaAsiya Javayant PROPOSAL
Aika T KolmetzGermanyStephen Shaw PROPOSAL
Antonio I BriddickBrazilAsiya Javayant RENEWAL
Murillo T PaprockiAustraliaAmy Elsner NEW
Misaki B GauchoCanadaElwin Sharvill NEW
Ricardo X OstroskyGermanyIoni Bowcher PROPOSAL
Isabel S SergiBrazilAnna Fali QUALIFIED
Tony R AlbaresRussiaIvan Magalhaes QUALIFIED
Juan P VenereAustraliaIvan Magalhaes RENEWAL
Rodrigues L ButtJapanAnna Fali UNQUALIFIED
Leon R CampainCanadaXuxue Feng QUALIFIED
James E OldroydFranceAmy Elsner RENEWAL
Julie X WieserItalyXuxue Feng NEGOTIATION
Salvatore Y VocelkaIndiaAsiya Javayant PROPOSAL
Emily I RoysterRussiaAmy Elsner NEW
Deepesh B DarakjyBrazilAsiya Javayant RENEWAL
Kadeem B StensethFranceIoni Bowcher QUALIFIED
Julie H GarufiGermanyAnna Fali UNQUALIFIED
Jones I FerenczGermanyBernardo Dominic NEGOTIATION
Rodrigues R VenereRussiaStephen Shaw PROPOSAL
Izzy K SchemmerIndiaXuxue Feng NEW
Salvatore B SergiArgentinaStephen Shaw UNQUALIFIED
Misaki W SchemmerArgentinaElwin Sharvill QUALIFIED
Rodrigues G BologniaArgentinaAnna Fali PROPOSAL
Morrow B StockhamJapanBernardo Dominic UNQUALIFIED
Rodrigues S CaudyUnited KingdomOnyama Limba RENEWAL
Silvio Y StockhamAustraliaIoni Bowcher NEW
James D DarakjyIndiaAnna Fali QUALIFIED
Tony K VenereAustraliaStephen Shaw NEGOTIATION
Jefferson K GarufiUnited KingdomOnyama Limba NEGOTIATION
Stacey Q CaudyAustraliaAsiya Javayant 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>