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
Adams V StockhamSpainXuxue Feng RENEWAL
Octavia C SaylorsCanadaAsiya Javayant NEW
Ashley Z KolmetzJapanAsiya Javayant QUALIFIED
Faith W MaletSpainStephen Shaw NEGOTIATION
Sinclair B FerenczFranceXuxue Feng QUALIFIED
Ashley C StensethFranceElwin Sharvill RENEWAL
Claire E ChuiRussiaAsiya Javayant RENEWAL
Jefferson J FollerCanadaOnyama Limba UNQUALIFIED
Ivar E GauchoItalyAmy Elsner NEW
Izzy X CaudyIndiaStephen Shaw RENEWAL
Clifford R IturbideBrazilBernardo Dominic RENEWAL
Aditya E ChuiGermanyOnyama Limba NEW
Octavia O VenereSpainIvan Magalhaes QUALIFIED
Munro O KolmetzSpainAmy Elsner NEGOTIATION
Maisha H MorascaUnited KingdomElwin Sharvill RENEWAL
Aruna T InouyeBrazilStephen Shaw NEW
Sinclair P WaycottItalyBernardo Dominic RENEWAL
Stacey Z FlosiBrazilAmy Elsner NEW
Arvin D IturbideJapanOnyama Limba NEGOTIATION
Faith U VenereIndiaStephen Shaw RENEWAL
Murillo U StensethRussiaXuxue Feng QUALIFIED
Munro X ButtCanadaAnna Fali UNQUALIFIED
Jefferson B DoeJapanIvan Magalhaes QUALIFIED
Mujtaba A GillianFranceAmy Elsner NEW
Clifford G MarrierItalyIvan Magalhaes NEGOTIATION
Adams N VenereGermanyOnyama Limba NEW
Aika U AlbaresBrazilAmy Elsner NEGOTIATION
Smith A GauchoGermanyAsiya Javayant QUALIFIED
Jones H CampainFranceIvan Magalhaes NEGOTIATION
Wickens I PaprockiArgentinaStephen Shaw NEW
Jennifer F WieserUnited KingdomStephen Shaw UNQUALIFIED
Isabel B FigeroaJapanOnyama Limba NEGOTIATION
Jennifer C PaprockiFranceAmy Elsner UNQUALIFIED
Emily D ChuiAustraliaOnyama Limba UNQUALIFIED
Francesco U KuskoJapanElwin Sharvill UNQUALIFIED
Julie F FerenczJapanIoni Bowcher NEW
Morrow F GillianUnited KingdomStephen Shaw UNQUALIFIED
David A NestleAustraliaBernardo Dominic UNQUALIFIED
Jefferson A ShinkoRussiaAsiya Javayant PROPOSAL
Murillo L StensethRussiaBernardo Dominic NEGOTIATION
Aika L DarakjyRussiaAmy Elsner NEW
Antonio E BowleyFranceAmy Elsner PROPOSAL
Deepesh E VenereBrazilIoni Bowcher NEW
Ashley H VocelkaGermanyStephen Shaw NEGOTIATION
Juan T FigeroaJapanElwin Sharvill PROPOSAL
Murillo N FigeroaRussiaElwin Sharvill QUALIFIED
Sinclair A VenereIndiaIoni Bowcher NEW
Aditya M PoquetteBrazilStephen Shaw NEW
Tony H OstroskyJapanAmy Elsner NEGOTIATION
Jones O BowleyItalyIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Misaki J AlbaresIndiaIoni Bowcher RENEWAL
Octavia L SaylorsSpainBernardo Dominic QUALIFIED
Ivar R DarakjyRussiaXuxue Feng UNQUALIFIED
Julie Z OldroydItalyStephen Shaw RENEWAL
Antonio L RutaCanadaOnyama Limba UNQUALIFIED
Kadeem L ShinkoRussiaIoni Bowcher UNQUALIFIED
Chavez A PerinGermanyXuxue Feng RENEWAL
Rodrigues X BriddickBrazilAsiya Javayant RENEWAL
Johnson M MorascaSpainOnyama Limba PROPOSAL
Aditya B IturbideArgentinaBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa O KuskoFrance2026-09-27Truhlar And Truhlar Attys QUALIFIED72Onyama Limba
1001Darci J CaudyUnited Kingdom2026-09-30Dorl, James J Esq NEGOTIATION42Bernardo Dominic
1002Jefferson R RutaItaly2026-10-24Feiner Bros NEW95Asiya Javayant
1003Ivar G StockhamIndia2026-10-23Chemel, James L Cpa NEGOTIATION18Ivan Magalhaes
1004Octavia Q RimCanada2026-10-23Chanay, Jeffrey A Esq NEW35Ivan Magalhaes
1005Izzy F BriddickJapan2026-10-01Chanay, Jeffrey A Esq QUALIFIED74Amy Elsner
1006Izzy P ShinkoIndia2026-09-30Chanay, Jeffrey A Esq QUALIFIED62Ivan Magalhaes
1007Jennifer R OldroydGermany2026-10-03Printing Dimensions RENEWAL70Anna Fali
1008Ashley G RulapaughJapan2026-09-29Feltz Printing Service UNQUALIFIED47Ioni Bowcher
1009Jeanfrancois W BologniaIndia2026-10-08Chapman, Ross E Esq NEGOTIATION8Bernardo Dominic
1010Chavez W GlickAustralia2026-10-16Feltz Printing Service NEW93Amy Elsner
1011Emily P GauchoCanada2026-10-02Rousseaux, Michael Esq RENEWAL61Ivan Magalhaes
1012David L ChuiUnited Kingdom2026-10-04Commercial Press RENEWAL89Asiya Javayant
1013Jefferson R IturbideArgentina2026-10-22Feltz Printing Service UNQUALIFIED37Xuxue Feng
1014Stacey A SchemmerGermany2026-10-17Morlong Associates NEGOTIATION15Ioni Bowcher
1015Mujtaba G MarrierUnited Kingdom2026-10-19Commercial Press RENEWAL7Ivan Magalhaes
1016Nicolas K TollnerArgentina2026-10-19Feltz Printing Service UNQUALIFIED83Stephen Shaw
1017Antonio H MacleadJapan2026-10-03Printing Dimensions NEW37Onyama Limba
1018Leja A StockhamFrance2026-10-07Rousseaux, Michael Esq NEW34Onyama Limba
1019Mujtaba B GlickArgentina2026-10-09Buckley Miller Wright NEGOTIATION36Asiya Javayant
1020Leon E MaletFrance2026-09-27Benton, John B Jr NEW64Asiya Javayant
1021Emily T BriddickJapan2026-09-27Dorl, James J Esq QUALIFIED83Ivan Magalhaes
1022Adams U RoysterArgentina2026-10-15Truhlar And Truhlar Attys PROPOSAL72Amy Elsner
1023Smith L GarufiSpain2026-10-15King, Christopher A Esq QUALIFIED1Asiya Javayant
1024Murillo A FerenczBrazil2026-10-09Chanay, Jeffrey A Esq RENEWAL24Bernardo Dominic
1025Costa M CaudyRussia2026-10-17Benton, John B Jr RENEWAL55Stephen Shaw
1026Ashley X ChuiJapan2026-10-18Chapman, Ross E Esq NEGOTIATION64Amy Elsner
1027Kaitlin K WieserFrance2026-09-25Rangoni Of Florence RENEWAL77Bernardo Dominic
1028Salvatore X GarufiAustralia2026-10-02Rousseaux, Michael Esq QUALIFIED29Ivan Magalhaes
1029Kaitlin T CaldareraArgentina2026-09-25Commercial Press UNQUALIFIED21Ioni Bowcher
1030Misaki L BowleyItaly2026-10-12Chapman, Ross E Esq PROPOSAL62Asiya Javayant
1031Ivar O InouyeIndia2026-10-01Buckley Miller Wright RENEWAL99Amy Elsner
1032Tony V AmigonIndia2026-09-28Chanay, Jeffrey A Esq UNQUALIFIED30Bernardo Dominic
1033Julie P MorascaBrazil2026-09-28King, Christopher A Esq NEW93Elwin Sharvill
1034Leon W SlusarskiAustralia2026-09-30Feltz Printing Service PROPOSAL84Asiya Javayant
1035Leja U PerinItaly2026-10-15Printing Dimensions NEW71Stephen Shaw
1036Misaki J PerinUnited Kingdom2026-10-05Morlong Associates UNQUALIFIED83Ioni Bowcher
1037Jones P FlosiUnited Kingdom2026-10-15Printing Dimensions UNQUALIFIED51Ivan Magalhaes
1038Juan E RulapaughFrance2026-10-24Chanay, Jeffrey A Esq NEGOTIATION24Onyama Limba
1039Alejandro V ShinkoIndia2026-10-15Chapman, Ross E Esq QUALIFIED24Stephen Shaw
1040Darci B FigeroaSpain2026-09-29Rangoni Of Florence PROPOSAL44Xuxue Feng
1041Mujtaba N OldroydArgentina2026-10-04Benton, John B Jr UNQUALIFIED87Stephen Shaw
1042Aika I PoquetteIndia2026-10-24Printing Dimensions NEGOTIATION41Ivan Magalhaes
1043Emily Y KolmetzItaly2026-10-03Truhlar And Truhlar Attys QUALIFIED99Amy Elsner
1044Jefferson N BriddickJapan2026-10-20Morlong Associates NEW34Ioni Bowcher
1045Sinclair W GlickRussia2026-10-13Chapman, Ross E Esq NEGOTIATION70Xuxue Feng
1046Antonio W InouyeIndia2026-10-01Chapman, Ross E Esq UNQUALIFIED36Stephen Shaw
1047Wickens O GlickJapan2026-09-26Dorl, James J Esq PROPOSAL75Onyama Limba
1048Emily Y TollnerUnited Kingdom2026-10-07Feiner Bros PROPOSAL46Stephen Shaw
1049Aruna H AmigonGermany2026-10-08Benton, John B Jr UNQUALIFIED49Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Maisha D SlusarskiAustraliaStephen Shaw NEGOTIATION
Munro T CaudyAustraliaBernardo Dominic NEW
Jennifer N FigeroaUnited KingdomAmy Elsner PROPOSAL
Jones Y OldroydGermanyIoni Bowcher QUALIFIED
Aruna Y SlusarskiSpainAsiya Javayant NEW
Sinclair Z DoeSpainIoni Bowcher RENEWAL
Munro J StensethJapanXuxue Feng NEGOTIATION
Jeanfrancois M RoysterCanadaIoni Bowcher QUALIFIED
Greenwood M AmigonBrazilIvan Magalhaes QUALIFIED
Jennifer Q RimAustraliaXuxue Feng NEW
Rodrigues V WaycottCanadaOnyama Limba PROPOSAL
Mayumi Y StockhamGermanyIoni Bowcher RENEWAL
Claire U RulapaughArgentinaStephen Shaw RENEWAL
Arvin K ChuiIndiaStephen Shaw PROPOSAL
Adams S GillianIndiaAmy Elsner RENEWAL
Alejandro U VenereAustraliaIvan Magalhaes UNQUALIFIED
Cody B ChuiGermanyElwin Sharvill NEGOTIATION
Ivar F BriddickCanadaAmy Elsner UNQUALIFIED
Sinclair D CampainCanadaIvan Magalhaes NEGOTIATION
Morrow Y FollerBrazilAnna Fali UNQUALIFIED
Clifford Z MaletAustraliaBernardo Dominic RENEWAL
Morrow T OstroskyUnited KingdomIoni Bowcher NEGOTIATION
Antonio Y AmigonGermanyBernardo Dominic NEW
Maisha O SlusarskiArgentinaAmy Elsner UNQUALIFIED
Izzy X CaudyJapanBernardo Dominic QUALIFIED
Salvatore G CaudyGermanyAnna Fali QUALIFIED
Octavia S WhobreyBrazilXuxue Feng NEW
Claire D MarrierSpainAsiya Javayant PROPOSAL
Silvio B RimUnited KingdomIoni Bowcher PROPOSAL
Antonio E InouyeSpainAmy Elsner NEW
Kaitlin U InouyeFranceBernardo Dominic NEW
Juan M MaletItalyXuxue Feng PROPOSAL
Jones V VocelkaItalyIoni Bowcher QUALIFIED
Deepesh S MorascaCanadaAnna Fali RENEWAL
Murillo I RulapaughCanadaElwin Sharvill UNQUALIFIED
Jeanfrancois B DarakjyItalyIoni Bowcher RENEWAL
Jennifer A PerinAustraliaAmy Elsner PROPOSAL
Silvio N WieserIndiaAmy Elsner QUALIFIED
Juan S CampainItalyOnyama Limba PROPOSAL
Aruna P CaudyGermanyOnyama Limba PROPOSAL
Rodrigues A MaletIndiaElwin Sharvill QUALIFIED
Murillo Q MacleadAustraliaAsiya Javayant QUALIFIED
Maisha Z VenereRussiaAmy Elsner PROPOSAL
Ivar W AlbaresIndiaIoni Bowcher RENEWAL
Julie C RulapaughFranceStephen Shaw PROPOSAL
Arvin M VenereRussiaIvan Magalhaes QUALIFIED
Faith C MarrierIndiaXuxue Feng RENEWAL
Morrow S ButtUnited KingdomXuxue Feng RENEWAL
David L InouyeItalyIvan Magalhaes NEW
David C GlickItalyXuxue Feng UNQUALIFIED
Frozen Columns
Name
Rodrigues C Perin
Adams R Darakjy
Munro N Poquette
David C Perin
Jefferson H Iturbide
Ashley R Darakjy
Kadeem C Kusko
Kaitlin L Dilliard
Alejandro V Waycott
Murillo A Perin
Faith V Butt
Morrow D Stockham
Costa Y Rulapaugh
Munro N Inouye
Morrow J Malet
Greenwood V Flosi
Salvatore A Whobrey
Silvio U Campain
Clifford F Whobrey
Aika Z Dilliard
Juan O Stockham
Julie V Royster
David X Kusko
Sinclair K Figeroa
Salvatore M Perin
Juan C Stockham
Misaki P Shinko
Ashley R Kusko
Silvio R Rim
Leja A Sergi
Salvatore W Venere
Wickens S Butt
Maisha C Flosi
Chavez N Garufi
Claire O Darakjy
Maria W Stenseth
Kaitlin Z Doe
Smith O Shinko
Mayumi L Oldroyd
Arvin B Malet
Julie P Dilliard
Munro C Albares
Nicolas D Gillian
Tony R Caldarera
Emily Z Waycott
Deepesh K Ferencz
Kaitlin M Darakjy
Kadeem Y Kusko
Darci T Glick
Costa M Caldarera
IdCountryDate
1000Germany2026-10-17
1001Brazil2026-10-19
1002Spain2026-10-19
1003Italy2026-10-21
1004Germany2026-10-14
1005Australia2026-10-06
1006Brazil2026-09-25
1007Brazil2026-10-04
1008Russia2026-10-04
1009Russia2026-10-03
1010Russia2026-10-23
1011Argentina2026-10-16
1012United Kingdom2026-10-22
1013Italy2026-10-04
1014Spain2026-09-26
1015Japan2026-10-01
1016Russia2026-10-20
1017Italy2026-09-28
1018India2026-10-24
1019Australia2026-10-23
1020Argentina2026-10-08
1021Germany2026-09-27
1022Australia2026-09-27
1023Japan2026-10-15
1024Canada2026-10-04
1025Italy2026-10-14
1026Argentina2026-10-08
1027Spain2026-10-01
1028Japan2026-10-01
1029Italy2026-09-29
1030Spain2026-10-17
1031France2026-10-12
1032Brazil2026-10-14
1033Canada2026-10-16
1034United Kingdom2026-10-10
1035Brazil2026-10-13
1036Spain2026-10-23
1037France2026-10-15
1038Germany2026-10-04
1039Japan2026-10-04
1040Russia2026-10-12
1041India2026-10-22
1042Italy2026-10-08
1043Brazil2026-10-20
1044United Kingdom2026-10-02
1045Italy2026-09-25
1046Brazil2026-10-24
1047India2026-10-06
1048Japan2026-10-02
1049Germany2026-09-25

On-Demand Data

NameIdCountryDate
Mujtaba J Kusko1000Brazil2026-10-10
Julie O Tollner1001India2026-10-14
Jennifer Q Slusarski1002India2026-10-22
Francesco X Chui1003Brazil2026-10-23
Octavia M Chui1004United Kingdom2026-10-10
Leja Z Foller1005Argentina2026-09-25
Jones F Malet1006Italy2026-10-04
Leon M Dilliard1007Japan2026-09-27
Stacey L Amigon1008United Kingdom2026-10-12
Deepesh S Kolmetz1009United Kingdom2026-10-12
Murillo B Malet1010Brazil2026-10-11
Aruna N Flosi1011Italy2026-10-17
Rodrigues A Nestle1012Canada2026-09-26
Claire V Gaucho1013Argentina2026-10-23
Leja Q Rulapaugh1014Germany2026-10-04
Wickens Q Poquette1015Canada2026-10-09
Costa M Amigon1016Argentina2026-10-21
Misaki R Chui1017United Kingdom2026-10-14
Ricardo W Caldarera1018Germany2026-09-27
Jones K Iturbide1019Australia2026-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria V DilliardArgentinaIoni Bowcher RENEWAL
Faith V DarakjyFranceElwin Sharvill NEW
Clifford M SaylorsGermanyAnna Fali UNQUALIFIED
Nicolas W WaycottItalyXuxue Feng RENEWAL
Kadeem S AlbaresAustraliaXuxue Feng NEW
Johnson S KolmetzIndiaOnyama Limba PROPOSAL
Jones B AmigonRussiaIvan Magalhaes RENEWAL
Antonio S CampainIndiaXuxue Feng NEGOTIATION
Aika R MarrierCanadaXuxue Feng NEW
Emily J MaletCanadaIoni Bowcher QUALIFIED
Tony C SaylorsSpainElwin Sharvill NEW
Mujtaba M PoquetteBrazilXuxue Feng NEGOTIATION
Alejandro U TollnerGermanyIoni Bowcher PROPOSAL
Cody F RulapaughUnited KingdomAsiya Javayant NEW
Greenwood Z AlbaresJapanStephen Shaw NEGOTIATION
Jones A PoquetteIndiaOnyama Limba QUALIFIED
Aditya O CampainJapanBernardo Dominic NEW
Alejandro R MacleadAustraliaIvan Magalhaes PROPOSAL
Deepesh T OldroydGermanyIvan Magalhaes NEGOTIATION
Adams K VenereAustraliaAmy Elsner RENEWAL
Aditya O NestleIndiaOnyama Limba RENEWAL
Ashley H MarrierFranceAsiya Javayant NEW
Aditya Q FigeroaSpainIvan Magalhaes PROPOSAL
Juan A ButtAustraliaOnyama Limba PROPOSAL
Arvin D FlosiItalyStephen Shaw PROPOSAL
Costa V ButtBrazilIoni Bowcher RENEWAL
Maria A RutaSpainAmy Elsner PROPOSAL
Maria B IturbideArgentinaOnyama Limba QUALIFIED
Stacey E RimRussiaIoni Bowcher RENEWAL
Rodrigues Y VenereAustraliaXuxue Feng NEW
Jones R VocelkaJapanBernardo Dominic PROPOSAL
Julie B CampainAustraliaBernardo Dominic QUALIFIED
Faith P RulapaughJapanOnyama Limba UNQUALIFIED
Julie C BriddickBrazilBernardo Dominic UNQUALIFIED
Munro B PaprockiArgentinaOnyama Limba UNQUALIFIED
Silvio Z OstroskyAustraliaStephen Shaw QUALIFIED
Izzy Q SchemmerJapanAmy Elsner RENEWAL
Aika T KolmetzGermanyOnyama Limba PROPOSAL
Cody H FigeroaJapanAsiya Javayant PROPOSAL
Salvatore P DoeSpainOnyama Limba QUALIFIED

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