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
Stacey D InouyeCanadaIoni Bowcher RENEWAL
Jefferson P BriddickJapanBernardo Dominic NEGOTIATION
Sinclair U CaudyCanadaIvan Magalhaes PROPOSAL
Jefferson I DoeSpainOnyama Limba RENEWAL
Salvatore Z OldroydBrazilAsiya Javayant NEGOTIATION
Stacey X MarrierRussiaAnna Fali PROPOSAL
Maria O MarrierIndiaIvan Magalhaes NEGOTIATION
Julie W MarrierJapanBernardo Dominic NEGOTIATION
Kadeem H PerinArgentinaIoni Bowcher NEGOTIATION
Maria O ShinkoIndiaIoni Bowcher QUALIFIED
Kadeem G FigeroaGermanyAsiya Javayant QUALIFIED
Morrow J ButtSpainXuxue Feng NEGOTIATION
Jennifer V RutaIndiaIoni Bowcher QUALIFIED
Octavia D MaletBrazilBernardo Dominic RENEWAL
Chavez P SlusarskiRussiaIvan Magalhaes NEGOTIATION
Francesco X FlosiJapanAmy Elsner NEW
Darci W SlusarskiAustraliaBernardo Dominic RENEWAL
Wickens Q CampainCanadaOnyama Limba RENEWAL
Ricardo X FerenczSpainOnyama Limba NEGOTIATION
Wickens K DoeArgentinaStephen Shaw NEGOTIATION
Kadeem S FollerFranceOnyama Limba NEW
Ricardo M MacleadJapanAsiya Javayant UNQUALIFIED
Tony D MaletFranceXuxue Feng PROPOSAL
Deepesh L MorascaFranceAsiya Javayant RENEWAL
James F DilliardGermanyAsiya Javayant UNQUALIFIED
Jennifer E FollerIndiaAmy Elsner NEGOTIATION
Silvio W AmigonGermanyIvan Magalhaes UNQUALIFIED
Ricardo E GlickAustraliaBernardo Dominic NEGOTIATION
Isabel A AmigonBrazilAmy Elsner NEW
Nicolas P PerinSpainAmy Elsner NEGOTIATION
Alejandro Y TollnerJapanAsiya Javayant UNQUALIFIED
Clifford F AmigonCanadaAmy Elsner PROPOSAL
Antonio C FerenczArgentinaElwin Sharvill UNQUALIFIED
Sinclair H IturbideCanadaElwin Sharvill PROPOSAL
Maria C BowleyUnited KingdomIvan Magalhaes NEW
Aditya F GillianGermanyXuxue Feng PROPOSAL
Smith X GillianArgentinaIoni Bowcher NEW
Salvatore E RimCanadaIvan Magalhaes PROPOSAL
Kaitlin R DarakjyCanadaAsiya Javayant QUALIFIED
Kadeem D SlusarskiSpainBernardo Dominic UNQUALIFIED
Aditya A StensethAustraliaIvan Magalhaes NEW
Jeanfrancois V ChuiArgentinaAmy Elsner NEW
Costa E RutaJapanXuxue Feng RENEWAL
Octavia T CaldareraFranceOnyama Limba QUALIFIED
Aditya O GauchoArgentinaAnna Fali UNQUALIFIED
Wickens Q TollnerUnited KingdomOnyama Limba RENEWAL
Murillo T GlickItalyStephen Shaw PROPOSAL
Ivar X IturbideSpainAsiya Javayant NEGOTIATION
Juan L PoquetteUnited KingdomAnna Fali NEGOTIATION
Claire M OstroskyAustraliaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Alejandro J FollerFranceXuxue Feng NEW
Costa I IturbideArgentinaAnna Fali UNQUALIFIED
Ricardo R WhobreySpainStephen Shaw RENEWAL
Rodrigues N SlusarskiAustraliaAmy Elsner QUALIFIED
Murillo C BowleyRussiaIvan Magalhaes RENEWAL
Aditya Q GillianArgentinaAsiya Javayant NEGOTIATION
Francesco L ChuiRussiaIvan Magalhaes QUALIFIED
Munro Z BologniaRussiaIoni Bowcher QUALIFIED
Jefferson U FerenczRussiaAsiya Javayant QUALIFIED
Francesco K RulapaughArgentinaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco E DarakjyCanada2026-10-23Chapman, Ross E Esq QUALIFIED98Anna Fali
1001Emily V BowleyCanada2026-10-04Buckley Miller Wright RENEWAL23Ioni Bowcher
1002Costa T KuskoSpain2026-10-15Morlong Associates PROPOSAL65Asiya Javayant
1003Wickens O GauchoItaly2026-10-21Chanay, Jeffrey A Esq QUALIFIED30Onyama Limba
1004James K AlbaresIndia2026-10-08Commercial Press NEGOTIATION45Anna Fali
1005Arvin Y FerenczArgentina2026-10-21Feiner Bros NEGOTIATION62Onyama Limba
1006Stacey H CaudyIndia2026-10-01Rousseaux, Michael Esq NEGOTIATION54Ioni Bowcher
1007Ricardo I MorascaAustralia2026-10-20Chapman, Ross E Esq QUALIFIED94Ioni Bowcher
1008Maria Q ChuiFrance2026-09-28Feltz Printing Service NEGOTIATION73Ivan Magalhaes
1009Murillo G NickaBrazil2026-10-11Rangoni Of Florence UNQUALIFIED25Stephen Shaw
1010Aditya G FerenczJapan2026-10-10Feiner Bros NEGOTIATION29Asiya Javayant
1011Izzy Z ShinkoAustralia2026-09-29Truhlar And Truhlar Attys NEGOTIATION20Amy Elsner
1012Adams Y PerinCanada2026-10-19Printing Dimensions NEW65Onyama Limba
1013Silvio B SaylorsFrance2026-10-09King, Christopher A Esq PROPOSAL30Asiya Javayant
1014Misaki C VenereGermany2026-10-23King, Christopher A Esq PROPOSAL98Elwin Sharvill
1015Morrow Q FlosiBrazil2026-10-08Dorl, James J Esq NEW17Ivan Magalhaes
1016Munro Q WhobreyIndia2026-10-07Dorl, James J Esq NEGOTIATION50Elwin Sharvill
1017Emily U PerinItaly2026-10-14Commercial Press NEW59Amy Elsner
1018Izzy L KuskoRussia2026-10-16Chanay, Jeffrey A Esq PROPOSAL38Anna Fali
1019Jennifer C DilliardSpain2026-10-10Printing Dimensions NEGOTIATION27Anna Fali
1020Deepesh Q NestleItaly2026-09-30Rousseaux, Michael Esq UNQUALIFIED76Amy Elsner
1021Francesco T RutaAustralia2026-10-10Rangoni Of Florence RENEWAL27Stephen Shaw
1022Octavia T CaudyRussia2026-09-25Chemel, James L Cpa PROPOSAL58Asiya Javayant
1023Jefferson E TollnerRussia2026-09-28Feiner Bros QUALIFIED65Asiya Javayant
1024Clifford W PoquetteAustralia2026-10-17Feiner Bros NEGOTIATION3Xuxue Feng
1025Francesco L VenereItaly2026-10-17Rangoni Of Florence RENEWAL6Xuxue Feng
1026Greenwood E MaletSpain2026-10-23Chapman, Ross E Esq NEW50Elwin Sharvill
1027Ivar J OldroydRussia2026-10-23Commercial Press QUALIFIED92Elwin Sharvill
1028Munro B GillianGermany2026-10-01King, Christopher A Esq NEW70Ioni Bowcher
1029Smith E CampainJapan2026-10-02Morlong Associates UNQUALIFIED75Xuxue Feng
1030Morrow N ChuiGermany2026-10-18Chemel, James L Cpa NEGOTIATION66Ivan Magalhaes
1031Jones P AmigonUnited Kingdom2026-09-27Rousseaux, Michael Esq NEW83Anna Fali
1032Chavez Y OldroydAustralia2026-10-17Printing Dimensions NEGOTIATION76Amy Elsner
1033Izzy C MarrierBrazil2026-10-11King, Christopher A Esq UNQUALIFIED67Xuxue Feng
1034Octavia L MacleadGermany2026-10-19King, Christopher A Esq QUALIFIED71Bernardo Dominic
1035Maisha C GarufiRussia2026-10-04Rousseaux, Michael Esq UNQUALIFIED79Bernardo Dominic
1036Octavia U InouyeSpain2026-10-07Buckley Miller Wright PROPOSAL15Stephen Shaw
1037Jones N FlosiIndia2026-09-30Chemel, James L Cpa NEW17Ioni Bowcher
1038Jennifer M SchemmerSpain2026-10-12Rousseaux, Michael Esq NEGOTIATION64Amy Elsner
1039Maisha F BriddickAustralia2026-10-15Chemel, James L Cpa NEGOTIATION52Stephen Shaw
1040Arvin S DilliardRussia2026-10-15Buckley Miller Wright RENEWAL47Amy Elsner
1041Ivar I GillianCanada2026-10-02Rangoni Of Florence RENEWAL91Bernardo Dominic
1042Julie L CaldareraSpain2026-10-03Truhlar And Truhlar Attys NEGOTIATION20Ioni Bowcher
1043Deepesh V WaycottArgentina2026-10-11Feiner Bros NEGOTIATION0Asiya Javayant
1044Octavia R StensethIndia2026-10-19Morlong Associates UNQUALIFIED73Xuxue Feng
1045Juan P MarrierSpain2026-09-26Chanay, Jeffrey A Esq RENEWAL88Amy Elsner
1046Adams E AmigonUnited Kingdom2026-10-16Morlong Associates PROPOSAL48Xuxue Feng
1047Jones D RimGermany2026-09-30King, Christopher A Esq UNQUALIFIED52Bernardo Dominic
1048Claire X FerenczItaly2026-10-06Truhlar And Truhlar Attys NEW66Onyama Limba
1049Munro Y InouyeSpain2026-10-06Feiner Bros UNQUALIFIED37Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Nicolas A MaletIndiaBernardo Dominic RENEWAL
Clifford U GlickSpainAmy Elsner QUALIFIED
Faith W AmigonArgentinaIoni Bowcher NEGOTIATION
Darci T RoysterItalyIvan Magalhaes PROPOSAL
Aditya H ChuiItalyAsiya Javayant NEW
Arvin O ButtArgentinaXuxue Feng UNQUALIFIED
Deepesh C StockhamFranceAsiya Javayant RENEWAL
Aditya M RoysterCanadaXuxue Feng NEGOTIATION
Mujtaba K BowleyIndiaOnyama Limba UNQUALIFIED
Octavia Z PoquetteRussiaIvan Magalhaes PROPOSAL
Kaitlin I DilliardCanadaXuxue Feng QUALIFIED
Tony O VenereFranceAsiya Javayant PROPOSAL
Aruna U WhobreyArgentinaOnyama Limba UNQUALIFIED
Smith R MacleadAustraliaXuxue Feng NEW
Rodrigues Z RutaSpainAnna Fali NEW
Mujtaba Q MorascaFranceAnna Fali RENEWAL
Faith G SchemmerSpainXuxue Feng PROPOSAL
Stacey T CampainJapanAmy Elsner PROPOSAL
Jeanfrancois E FigeroaSpainXuxue Feng NEGOTIATION
Emily I BologniaRussiaIoni Bowcher PROPOSAL
Johnson L GlickArgentinaElwin Sharvill UNQUALIFIED
Deepesh Z OldroydGermanyStephen Shaw RENEWAL
Munro T GlickUnited KingdomElwin Sharvill NEW
Munro J ButtAustraliaAnna Fali RENEWAL
Mujtaba A GillianFranceElwin Sharvill NEW
Arvin I CampainRussiaOnyama Limba UNQUALIFIED
Maria Q OstroskyGermanyXuxue Feng PROPOSAL
Maisha K CaudyIndiaStephen Shaw NEGOTIATION
Jennifer U MaletCanadaIvan Magalhaes NEGOTIATION
Alejandro O AmigonFranceIoni Bowcher PROPOSAL
Aruna J PoquetteItalyAsiya Javayant RENEWAL
Rodrigues F ChuiGermanyOnyama Limba RENEWAL
James X RulapaughSpainBernardo Dominic NEGOTIATION
Juan M SchemmerSpainAnna Fali RENEWAL
Darci R CaudyGermanyStephen Shaw PROPOSAL
Greenwood O MaletSpainAsiya Javayant NEW
Smith A VocelkaFranceBernardo Dominic RENEWAL
Munro C DoeGermanyAsiya Javayant NEGOTIATION
James H KuskoItalyIoni Bowcher NEW
Isabel S MaletFranceAmy Elsner UNQUALIFIED
Costa I OstroskyGermanyAsiya Javayant QUALIFIED
Misaki A DoeItalyAnna Fali QUALIFIED
Arvin N SlusarskiCanadaBernardo Dominic QUALIFIED
Jefferson U TollnerGermanyElwin Sharvill NEW
Clifford D SaylorsUnited KingdomIvan Magalhaes QUALIFIED
Darci M StensethCanadaAmy Elsner QUALIFIED
Jones U RutaAustraliaIvan Magalhaes NEGOTIATION
Smith L RimArgentinaBernardo Dominic NEGOTIATION
Kadeem J GillianAustraliaAsiya Javayant PROPOSAL
Sinclair Z GauchoFranceIvan Magalhaes PROPOSAL
Frozen Columns
Name
Rodrigues F Wieser
Mayumi F Oldroyd
Cody M Gaucho
Cody X Waycott
Ivar O Perin
Isabel A Bowley
Aditya Y Sergi
Isabel I Ruta
Aditya G Stockham
Sinclair A Maclead
Kaitlin H Maclead
Mayumi L Sergi
Darci Q Perin
Murillo N Chui
Alejandro A Slusarski
Aruna P Campain
Kaitlin Q Morasca
Jennifer F Malet
Maisha V Perin
Francesco H Whobrey
Mujtaba V Inouye
Murillo K Figeroa
Ricardo J Caudy
Chavez L Saylors
Rodrigues H Amigon
Jeanfrancois V Glick
Ashley I Morasca
Johnson F Gillian
Claire F Marrier
Octavia B Caudy
Kadeem A Bowley
David L Flosi
Maisha B Foller
Maria L Tollner
James C Sergi
Antonio E Kusko
Chavez Q Kolmetz
Aruna Q Waycott
Faith I Nicka
Mujtaba Z Rulapaugh
Francesco S Royster
Misaki N Oldroyd
Adams X Poquette
Morrow R Caldarera
Jones Z Waycott
Maisha Z Darakjy
Antonio H Kolmetz
Jones E Shinko
Johnson S Glick
Ricardo I Butt
IdCountryDate
1000Australia2026-09-30
1001United Kingdom2026-10-19
1002Australia2026-10-03
1003France2026-10-11
1004United Kingdom2026-10-16
1005Germany2026-10-15
1006France2026-09-24
1007Spain2026-10-05
1008Australia2026-10-20
1009United Kingdom2026-10-13
1010Russia2026-10-07
1011Italy2026-09-29
1012Japan2026-10-17
1013France2026-10-11
1014Canada2026-10-16
1015Russia2026-10-01
1016Italy2026-10-07
1017France2026-10-03
1018Spain2026-09-30
1019Argentina2026-10-12
1020Germany2026-09-27
1021Germany2026-10-18
1022Spain2026-10-14
1023Japan2026-10-15
1024Argentina2026-10-20
1025India2026-10-09
1026France2026-10-22
1027Argentina2026-10-23
1028Germany2026-10-22
1029United Kingdom2026-10-21
1030Argentina2026-10-20
1031Italy2026-10-20
1032United Kingdom2026-10-21
1033Canada2026-10-19
1034United Kingdom2026-09-29
1035Canada2026-10-10
1036India2026-10-07
1037India2026-09-24
1038Italy2026-10-06
1039Brazil2026-10-13
1040Japan2026-10-11
1041Russia2026-09-28
1042France2026-10-05
1043France2026-10-05
1044Argentina2026-09-29
1045Brazil2026-10-15
1046Australia2026-10-03
1047Spain2026-10-15
1048France2026-09-27
1049France2026-10-10

On-Demand Data

NameIdCountryDate
Faith S Shinko1000Australia2026-10-22
Emily N Briddick1001Italy2026-09-27
Kadeem U Schemmer1002Canada2026-09-25
Arvin F Glick1003United Kingdom2026-10-16
Faith U Morasca1004Russia2026-10-15
Morrow P Briddick1005Italy2026-10-08
Leon N Nestle1006Canada2026-10-23
Juan L Darakjy1007Brazil2026-09-25
Maisha A Oldroyd1008Russia2026-10-02
Octavia G Glick1009France2026-10-13
Jones U Stockham1010Russia2026-10-05
Aika Y Stockham1011United Kingdom2026-10-20
Smith H Perin1012Italy2026-10-07
Aika M Flosi1013Argentina2026-10-06
Aditya H Marrier1014Russia2026-10-05
Jeanfrancois O Oldroyd1015France2026-10-21
Stacey A Waycott1016Germany2026-10-08
Julie K Campain1017Brazil2026-10-08
Aruna K Gillian1018Spain2026-09-30
Morrow C Schemmer1019United Kingdom2026-10-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem O StensethBrazilAsiya Javayant UNQUALIFIED
Isabel Z RutaArgentinaAnna Fali PROPOSAL
Mujtaba O RutaUnited KingdomXuxue Feng RENEWAL
Jones I SchemmerAustraliaOnyama Limba NEW
Izzy U NestleCanadaIvan Magalhaes NEW
Silvio W KuskoBrazilOnyama Limba QUALIFIED
Rodrigues G WhobreyAustraliaIvan Magalhaes RENEWAL
Alejandro P ShinkoRussiaAsiya Javayant NEGOTIATION
Arvin U DoeFranceAsiya Javayant PROPOSAL
Izzy T RimItalyBernardo Dominic NEW
Aruna H DarakjySpainStephen Shaw NEGOTIATION
Claire S WhobreyFranceElwin Sharvill PROPOSAL
Mujtaba V NestleFranceAsiya Javayant NEW
Morrow M KuskoFranceIoni Bowcher RENEWAL
Wickens O NickaUnited KingdomAsiya Javayant PROPOSAL
Murillo T MaletFranceAnna Fali NEW
Mayumi I MarrierSpainStephen Shaw RENEWAL
Faith E DilliardGermanyAmy Elsner UNQUALIFIED
Alejandro W RulapaughArgentinaAnna Fali RENEWAL
Rodrigues N BriddickBrazilStephen Shaw NEGOTIATION
Stacey V WaycottAustraliaElwin Sharvill PROPOSAL
Chavez E MaletCanadaIoni Bowcher NEW
Costa I SergiBrazilIvan Magalhaes NEW
Wickens R KuskoIndiaIoni Bowcher NEGOTIATION
Adams K SergiRussiaAsiya Javayant UNQUALIFIED
Ivar R FigeroaIndiaOnyama Limba QUALIFIED
Jones O WhobreyFranceAmy Elsner UNQUALIFIED
Jennifer A ShinkoAustraliaXuxue Feng QUALIFIED
Jefferson X ChuiCanadaAmy Elsner NEW
Aditya H PoquetteItalyStephen Shaw PROPOSAL
Izzy Q CampainJapanAmy Elsner UNQUALIFIED
Isabel S SaylorsIndiaAnna Fali QUALIFIED
Deepesh T WieserJapanIvan Magalhaes UNQUALIFIED
Faith R MaletAustraliaAnna Fali PROPOSAL
Deepesh N SaylorsAustraliaXuxue Feng NEGOTIATION
Morrow I BologniaFranceBernardo Dominic PROPOSAL
Tony D BowleySpainStephen Shaw NEW
Salvatore D MorascaArgentinaAsiya Javayant QUALIFIED
David V ShinkoJapanAsiya Javayant QUALIFIED
Kaitlin L MacleadRussiaStephen Shaw NEW

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