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 U StensethAustraliaAnna Fali PROPOSAL
Ashley R MarrierSpainAsiya Javayant UNQUALIFIED
Jones V GarufiAustraliaElwin Sharvill RENEWAL
Izzy M SchemmerBrazilIoni Bowcher RENEWAL
Julie K VenereJapanAsiya Javayant RENEWAL
Salvatore H BowleyItalyAsiya Javayant UNQUALIFIED
Aika F CaudyUnited KingdomIoni Bowcher UNQUALIFIED
Juan J PaprockiItalyElwin Sharvill QUALIFIED
Juan Y DarakjyBrazilAmy Elsner NEW
Morrow C SaylorsItalyStephen Shaw UNQUALIFIED
Ricardo S OldroydRussiaIoni Bowcher UNQUALIFIED
Smith Y ChuiSpainAnna Fali PROPOSAL
Jeanfrancois U SaylorsUnited KingdomElwin Sharvill RENEWAL
Stacey X BologniaGermanyOnyama Limba RENEWAL
Isabel P MarrierUnited KingdomAsiya Javayant NEW
Aditya P CaldareraFranceAsiya Javayant NEGOTIATION
Claire A ShinkoSpainIvan Magalhaes NEW
Johnson H SlusarskiSpainElwin Sharvill RENEWAL
Costa Z FlosiSpainAnna Fali NEW
Jones H SergiSpainXuxue Feng RENEWAL
Silvio W RulapaughSpainOnyama Limba PROPOSAL
Ashley Z MaletArgentinaAmy Elsner NEGOTIATION
Deepesh B NestleCanadaIvan Magalhaes QUALIFIED
Deepesh P VocelkaAustraliaXuxue Feng QUALIFIED
Greenwood Y OstroskySpainBernardo Dominic QUALIFIED
Kaitlin N AmigonAustraliaElwin Sharvill PROPOSAL
Munro G RulapaughArgentinaAmy Elsner NEW
Jefferson O GauchoFranceIoni Bowcher NEW
Johnson T StensethSpainAsiya Javayant QUALIFIED
Adams E RoysterGermanyAsiya Javayant RENEWAL
Emily Z OstroskyJapanStephen Shaw NEW
Alejandro C SergiFranceElwin Sharvill NEW
Ashley Z SlusarskiBrazilAnna Fali RENEWAL
Wickens K ShinkoAustraliaOnyama Limba UNQUALIFIED
Deepesh H DilliardSpainOnyama Limba RENEWAL
Kadeem E SchemmerRussiaAsiya Javayant RENEWAL
Aruna F KolmetzBrazilOnyama Limba PROPOSAL
Cody L GauchoJapanElwin Sharvill QUALIFIED
Murillo V OldroydItalyAmy Elsner QUALIFIED
Misaki H TollnerRussiaIoni Bowcher NEW
Antonio J NestleIndiaXuxue Feng UNQUALIFIED
Ivar Q NestleFranceElwin Sharvill QUALIFIED
Adams E RutaIndiaStephen Shaw PROPOSAL
Greenwood S GillianUnited KingdomIoni Bowcher NEW
Silvio Z AmigonAustraliaAnna Fali RENEWAL
Nicolas A NickaIndiaStephen Shaw RENEWAL
Salvatore Y PoquetteSpainStephen Shaw NEGOTIATION
David O RoysterAustraliaOnyama Limba NEGOTIATION
Smith F SergiUnited KingdomBernardo Dominic UNQUALIFIED
Clifford E WhobreyBrazilAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Misaki P CampainArgentinaBernardo Dominic UNQUALIFIED
Ivar P CaldareraUnited KingdomOnyama Limba QUALIFIED
Nicolas L BowleyUnited KingdomOnyama Limba RENEWAL
Smith D FerenczJapanAsiya Javayant NEW
Ivar N VocelkaGermanyStephen Shaw QUALIFIED
Jeanfrancois E CampainItalyAsiya Javayant PROPOSAL
Chavez V RulapaughArgentinaAsiya Javayant UNQUALIFIED
Greenwood E CampainRussiaElwin Sharvill PROPOSAL
Ashley Q KuskoUnited KingdomOnyama Limba RENEWAL
Jones G OstroskySpainAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa I RulapaughSpain2026-10-10Dorl, James J Esq PROPOSAL65Anna Fali
1001James W ChuiFrance2026-10-21Truhlar And Truhlar Attys PROPOSAL53Elwin Sharvill
1002Leja B AlbaresJapan2026-10-13Feltz Printing Service RENEWAL79Amy Elsner
1003Octavia Q BriddickFrance2026-10-26Benton, John B Jr NEGOTIATION58Bernardo Dominic
1004Francesco K StockhamArgentina2026-10-12Buckley Miller Wright UNQUALIFIED82Anna Fali
1005David M StensethSpain2026-11-05Rousseaux, Michael Esq UNQUALIFIED33Xuxue Feng
1006Mujtaba C KolmetzItaly2026-11-07Rousseaux, Michael Esq NEGOTIATION49Anna Fali
1007Antonio X SergiUnited Kingdom2026-10-17Chanay, Jeffrey A Esq NEW33Ivan Magalhaes
1008Jeanfrancois N WaycottFrance2026-11-07King, Christopher A Esq UNQUALIFIED18Onyama Limba
1009Izzy G CaudyJapan2026-11-03Benton, John B Jr NEW51Bernardo Dominic
1010Costa T VenereCanada2026-10-17Printing Dimensions NEGOTIATION49Elwin Sharvill
1011Wickens H CampainBrazil2026-11-08Benton, John B Jr QUALIFIED3Anna Fali
1012Maria B KuskoBrazil2026-10-11Printing Dimensions RENEWAL1Asiya Javayant
1013Clifford H ButtUnited Kingdom2026-11-04Chapman, Ross E Esq UNQUALIFIED36Bernardo Dominic
1014Ivar V ChuiAustralia2026-10-22Feltz Printing Service UNQUALIFIED50Ioni Bowcher
1015Kadeem F PaprockiFrance2026-10-12Morlong Associates RENEWAL88Bernardo Dominic
1016Murillo M BriddickItaly2026-10-30Rousseaux, Michael Esq RENEWAL1Bernardo Dominic
1017Octavia K WhobreyFrance2026-10-23Dorl, James J Esq PROPOSAL88Anna Fali
1018Maria A GarufiBrazil2026-10-24Commercial Press PROPOSAL28Asiya Javayant
1019Salvatore U WaycottGermany2026-10-28Chanay, Jeffrey A Esq NEGOTIATION6Onyama Limba
1020Octavia W RulapaughBrazil2026-10-12King, Christopher A Esq NEGOTIATION90Stephen Shaw
1021Ashley N TollnerIndia2026-10-28Benton, John B Jr UNQUALIFIED81Asiya Javayant
1022Smith Y WhobreyIndia2026-10-27Dorl, James J Esq RENEWAL66Ivan Magalhaes
1023Francesco P AlbaresRussia2026-10-29Feiner Bros PROPOSAL25Ivan Magalhaes
1024Sinclair J GauchoGermany2026-10-25Buckley Miller Wright QUALIFIED93Bernardo Dominic
1025Rodrigues X AlbaresCanada2026-10-31Chapman, Ross E Esq RENEWAL41Anna Fali
1026Misaki P FollerIndia2026-11-08Morlong Associates RENEWAL45Ioni Bowcher
1027Francesco P SergiArgentina2026-11-01Feiner Bros RENEWAL6Ivan Magalhaes
1028Juan A FlosiSpain2026-10-14Rousseaux, Michael Esq PROPOSAL20Bernardo Dominic
1029Aika Z VenereItaly2026-10-22Benton, John B Jr RENEWAL18Stephen Shaw
1030Maisha S ShinkoArgentina2026-10-31Feltz Printing Service PROPOSAL2Xuxue Feng
1031Greenwood F OldroydJapan2026-10-16Chanay, Jeffrey A Esq RENEWAL36Xuxue Feng
1032Silvio L FlosiSpain2026-10-28Feltz Printing Service UNQUALIFIED89Stephen Shaw
1033Aika I MaletRussia2026-10-19Rangoni Of Florence RENEWAL97Asiya Javayant
1034Ivar Z StensethAustralia2026-10-16Truhlar And Truhlar Attys NEGOTIATION58Onyama Limba
1035Jennifer Y SaylorsIndia2026-10-26Benton, John B Jr RENEWAL38Asiya Javayant
1036Johnson U SergiFrance2026-10-19King, Christopher A Esq RENEWAL42Xuxue Feng
1037Maisha I CaldareraGermany2026-10-31Chemel, James L Cpa PROPOSAL26Ivan Magalhaes
1038Murillo C MaletBrazil2026-11-01King, Christopher A Esq UNQUALIFIED97Amy Elsner
1039Izzy W BriddickFrance2026-10-10Feltz Printing Service QUALIFIED18Amy Elsner
1040Ashley U MarrierRussia2026-10-24Chapman, Ross E Esq PROPOSAL73Ivan Magalhaes
1041Munro K CaudyIndia2026-11-03King, Christopher A Esq UNQUALIFIED70Stephen Shaw
1042Mujtaba Q NickaSpain2026-10-30Buckley Miller Wright QUALIFIED6Xuxue Feng
1043Silvio Y NestleArgentina2026-10-17Feltz Printing Service RENEWAL69Stephen Shaw
1044Tony E MarrierJapan2026-10-21Chanay, Jeffrey A Esq NEW91Onyama Limba
1045Misaki U RoysterJapan2026-10-13Buckley Miller Wright RENEWAL47Asiya Javayant
1046Stacey F MacleadRussia2026-10-17Dorl, James J Esq QUALIFIED64Onyama Limba
1047Jennifer G PaprockiUnited Kingdom2026-10-18Chanay, Jeffrey A Esq NEGOTIATION66Elwin Sharvill
1048Isabel J GarufiSpain2026-10-17Chanay, Jeffrey A Esq QUALIFIED99Elwin Sharvill
1049Leon X FollerFrance2026-10-13Commercial Press NEW82Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Claire J FerenczCanadaAnna Fali NEGOTIATION
James S PoquetteSpainElwin Sharvill NEGOTIATION
James U KolmetzSpainElwin Sharvill PROPOSAL
Mayumi E BowleyRussiaAsiya Javayant NEW
Arvin S MaletJapanAnna Fali QUALIFIED
Antonio P SaylorsBrazilStephen Shaw NEGOTIATION
Misaki A PaprockiUnited KingdomAsiya Javayant QUALIFIED
Nicolas Y GauchoIndiaAmy Elsner PROPOSAL
Morrow O FigeroaCanadaXuxue Feng UNQUALIFIED
Isabel T RutaIndiaOnyama Limba QUALIFIED
Murillo L FerenczJapanBernardo Dominic NEGOTIATION
James D ButtCanadaAnna Fali UNQUALIFIED
Stacey V WhobreyFranceAmy Elsner NEW
Smith T VocelkaGermanyAnna Fali PROPOSAL
Stacey W MaletBrazilXuxue Feng PROPOSAL
Deepesh U DilliardArgentinaStephen Shaw QUALIFIED
Aruna J FigeroaIndiaAsiya Javayant NEW
Murillo Q CaldareraSpainIvan Magalhaes QUALIFIED
Ivar K FigeroaUnited KingdomAnna Fali QUALIFIED
Wickens N WieserFranceAnna Fali PROPOSAL
Chavez E KuskoAustraliaIoni Bowcher NEGOTIATION
Aika S MacleadJapanIoni Bowcher UNQUALIFIED
Antonio Y MacleadArgentinaOnyama Limba NEW
Greenwood M OldroydSpainOnyama Limba UNQUALIFIED
Aditya Y DilliardFranceBernardo Dominic NEGOTIATION
Alejandro L NestleJapanXuxue Feng NEW
Salvatore P FollerAustraliaAsiya Javayant PROPOSAL
Faith Z RoysterArgentinaIvan Magalhaes RENEWAL
Murillo U AlbaresArgentinaIvan Magalhaes NEGOTIATION
Misaki L PaprockiIndiaIoni Bowcher RENEWAL
Mayumi I CampainSpainOnyama Limba QUALIFIED
Alejandro F StensethRussiaIvan Magalhaes PROPOSAL
Smith W PerinJapanIoni Bowcher NEGOTIATION
Kaitlin I VenereRussiaXuxue Feng RENEWAL
Jeanfrancois L RulapaughIndiaXuxue Feng QUALIFIED
Aruna U BowleyArgentinaBernardo Dominic PROPOSAL
Tony W VocelkaRussiaStephen Shaw QUALIFIED
Stacey D CampainCanadaAmy Elsner QUALIFIED
Morrow Q PerinJapanAmy Elsner QUALIFIED
Aruna E NickaBrazilAnna Fali PROPOSAL
Ashley X FollerAustraliaOnyama Limba PROPOSAL
Costa L CampainRussiaOnyama Limba PROPOSAL
Morrow U MacleadSpainStephen Shaw NEGOTIATION
James M MarrierItalyStephen Shaw QUALIFIED
Mayumi D CaldareraGermanyStephen Shaw UNQUALIFIED
Leon A FlosiBrazilOnyama Limba PROPOSAL
Smith A FigeroaJapanStephen Shaw UNQUALIFIED
Antonio M PaprockiSpainElwin Sharvill QUALIFIED
Aruna B PoquetteRussiaOnyama Limba PROPOSAL
Jones I PaprockiBrazilIoni Bowcher RENEWAL
Frozen Columns
Name
Jeanfrancois X Poquette
Maisha P Perin
Leon C Oldroyd
Ashley N Malet
Silvio X Glick
Murillo C Bolognia
Ashley G Campain
Juan B Kolmetz
Wickens F Paprocki
Kaitlin H Darakjy
Wickens X Chui
Clifford E Albares
Leon V Nestle
Jennifer U Foller
Jones X Slusarski
Octavia V Morasca
Mayumi U Shinko
Ashley W Paprocki
Claire K Dilliard
Stacey V Slusarski
Misaki U Inouye
Johnson W Nestle
Aika F Oldroyd
Ivar L Malet
Alejandro A Campain
Juan I Nestle
Johnson X Whobrey
David R Marrier
Sinclair S Nestle
Claire C Gaucho
Smith X Tollner
Antonio B Kusko
Ivar Y Venere
Smith M Butt
Morrow C Waycott
Rodrigues O Darakjy
Ivar F Slusarski
Greenwood H Royster
Francesco A Stockham
Aruna O Briddick
Maisha K Inouye
Julie J Campain
Cody S Maclead
Maria B Ruta
Greenwood T Royster
Jeanfrancois Y Campain
Maria T Caudy
Ricardo I Briddick
Ashley Z Sergi
Adams G Albares
IdCountryDate
1000Spain2026-11-01
1001France2026-10-26
1002France2026-10-31
1003Brazil2026-10-26
1004Russia2026-10-28
1005Australia2026-10-27
1006Argentina2026-11-08
1007Argentina2026-11-04
1008France2026-10-19
1009Russia2026-10-14
1010United Kingdom2026-11-01
1011Japan2026-11-06
1012Canada2026-10-24
1013Germany2026-10-12
1014France2026-10-10
1015Russia2026-10-16
1016Brazil2026-11-06
1017Russia2026-10-22
1018Russia2026-10-21
1019Russia2026-11-04
1020Italy2026-10-23
1021Italy2026-10-12
1022Russia2026-11-03
1023Spain2026-10-30
1024Spain2026-10-12
1025Spain2026-11-01
1026India2026-10-16
1027Russia2026-10-12
1028Australia2026-10-27
1029France2026-10-19
1030India2026-11-03
1031Germany2026-10-13
1032Brazil2026-10-25
1033Germany2026-10-19
1034Australia2026-10-28
1035Japan2026-10-21
1036Russia2026-11-06
1037Spain2026-11-07
1038Germany2026-11-08
1039Argentina2026-10-16
1040Germany2026-11-08
1041Spain2026-11-08
1042Japan2026-11-07
1043Argentina2026-10-20
1044Italy2026-10-19
1045Italy2026-10-20
1046Italy2026-11-05
1047Russia2026-10-31
1048Japan2026-10-31
1049Brazil2026-10-26

On-Demand Data

NameIdCountryDate
Johnson H Kolmetz1000Canada2026-10-19
Leja U Rim1001France2026-11-04
Izzy G Rulapaugh1002Spain2026-10-18
Juan C Malet1003India2026-10-20
Maria X Inouye1004Canada2026-10-27
James X Bolognia1005Russia2026-11-03
Adams B Wieser1006United Kingdom2026-10-27
Maria T Perin1007Spain2026-10-18
Stacey O Briddick1008Canada2026-10-15
Greenwood W Stenseth1009United Kingdom2026-11-05
Salvatore D Foller1010Russia2026-10-13
Deepesh Z Albares1011Brazil2026-10-18
Adams T Venere1012United Kingdom2026-10-19
Francesco L Foller1013Russia2026-10-21
Rodrigues T Kusko1014Russia2026-11-02
Ivar H Oldroyd1015Brazil2026-10-14
Leja V Gillian1016Brazil2026-11-05
Silvio Q Perin1017India2026-11-05
Morrow I Oldroyd1018Japan2026-11-03
Aika W Malet1019Russia2026-10-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel R PoquetteFranceAmy Elsner NEGOTIATION
Leon M DarakjyAustraliaIvan Magalhaes NEW
Julie B IturbideSpainStephen Shaw NEW
Sinclair F KuskoCanadaOnyama Limba PROPOSAL
Leja V RulapaughArgentinaStephen Shaw PROPOSAL
Aruna U RoysterRussiaOnyama Limba NEGOTIATION
Tony G WaycottCanadaAnna Fali QUALIFIED
Isabel M GillianJapanIoni Bowcher RENEWAL
Ricardo J MarrierItalyAsiya Javayant UNQUALIFIED
Adams U RoysterGermanyXuxue Feng PROPOSAL
Jefferson S BriddickJapanAnna Fali NEGOTIATION
Wickens H WaycottAustraliaAmy Elsner UNQUALIFIED
Claire F KolmetzArgentinaIvan Magalhaes NEW
Deepesh O SergiArgentinaAnna Fali UNQUALIFIED
Aditya W WaycottItalyIoni Bowcher QUALIFIED
Smith T PerinItalyIvan Magalhaes NEGOTIATION
David Z VenereAustraliaIvan Magalhaes UNQUALIFIED
Maisha U GarufiUnited KingdomXuxue Feng PROPOSAL
Costa Y GlickUnited KingdomXuxue Feng PROPOSAL
Jefferson Z AmigonUnited KingdomAsiya Javayant QUALIFIED
Octavia C NestleSpainOnyama Limba PROPOSAL
Tony I BriddickArgentinaAsiya Javayant NEGOTIATION
Morrow O GillianJapanIvan Magalhaes NEGOTIATION
Wickens W FerenczGermanyBernardo Dominic RENEWAL
Isabel K DarakjyUnited KingdomAsiya Javayant NEGOTIATION
Salvatore M SergiUnited KingdomIvan Magalhaes NEW
Francesco H ShinkoIndiaXuxue Feng PROPOSAL
Leon H MaletJapanAmy Elsner RENEWAL
Ashley R GlickItalyAmy Elsner RENEWAL
Stacey D BowleyArgentinaStephen Shaw RENEWAL
Jennifer S NickaJapanAsiya Javayant PROPOSAL
Deepesh T TollnerArgentinaIvan Magalhaes NEGOTIATION
Antonio B PaprockiGermanyOnyama Limba NEW
Jefferson D CaudyRussiaXuxue Feng QUALIFIED
Ivar O WieserCanadaAsiya Javayant NEW
Faith C AlbaresBrazilIvan Magalhaes RENEWAL
Munro F NestleCanadaBernardo Dominic NEGOTIATION
Clifford T MorascaAustraliaElwin Sharvill NEGOTIATION
Claire Z RimUnited KingdomStephen Shaw QUALIFIED
Morrow C StensethItalyOnyama Limba PROPOSAL

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