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
Jeanfrancois H WaycottGermanyAnna Fali QUALIFIED
Mayumi F SergiArgentinaAsiya Javayant UNQUALIFIED
Emily S VenereJapanAnna Fali RENEWAL
Jennifer U OldroydItalyAsiya Javayant NEGOTIATION
Julie Z StockhamAustraliaIoni Bowcher QUALIFIED
Leon B DilliardIndiaIoni Bowcher QUALIFIED
Munro N AlbaresAustraliaAsiya Javayant NEW
Tony Q GarufiCanadaIvan Magalhaes RENEWAL
James J VocelkaRussiaIvan Magalhaes NEW
Jones F DarakjyCanadaAnna Fali QUALIFIED
Tony C InouyeArgentinaElwin Sharvill NEGOTIATION
Munro X FollerItalyAsiya Javayant UNQUALIFIED
Julie V GillianIndiaAnna Fali PROPOSAL
Morrow T MorascaItalyIoni Bowcher UNQUALIFIED
Clifford M CaudySpainAmy Elsner NEGOTIATION
Jeanfrancois W CampainIndiaAmy Elsner PROPOSAL
Mujtaba T SergiBrazilBernardo Dominic PROPOSAL
Claire Y CampainUnited KingdomIvan Magalhaes NEW
Ashley M FollerFranceElwin Sharvill UNQUALIFIED
Leja D BriddickRussiaOnyama Limba NEW
Kadeem U SaylorsJapanElwin Sharvill PROPOSAL
Adams T NickaJapanIoni Bowcher PROPOSAL
Jennifer D MorascaSpainAsiya Javayant NEGOTIATION
Mayumi T MaletBrazilIoni Bowcher RENEWAL
David V StensethGermanyOnyama Limba QUALIFIED
Claire T IturbideGermanyAnna Fali UNQUALIFIED
Nicolas M MorascaArgentinaIvan Magalhaes QUALIFIED
Cody I ButtSpainAnna Fali NEGOTIATION
Chavez N IturbideItalyOnyama Limba PROPOSAL
Isabel H TollnerItalyAmy Elsner QUALIFIED
Emily C CaldareraFranceStephen Shaw PROPOSAL
Claire K VenereJapanAsiya Javayant NEGOTIATION
David W SaylorsUnited KingdomElwin Sharvill UNQUALIFIED
Mayumi T RimUnited KingdomIoni Bowcher UNQUALIFIED
Faith D DarakjyGermanyIoni Bowcher QUALIFIED
Aika W RimFranceIoni Bowcher QUALIFIED
Claire W OstroskyCanadaElwin Sharvill NEGOTIATION
Ricardo W ChuiCanadaOnyama Limba PROPOSAL
Leja T CampainCanadaStephen Shaw NEW
Jeanfrancois P GlickSpainBernardo Dominic QUALIFIED
Jennifer K WieserCanadaAmy Elsner NEW
Jones S AmigonSpainAsiya Javayant NEGOTIATION
Misaki A BowleyArgentinaAnna Fali RENEWAL
Jennifer U MorascaRussiaAsiya Javayant QUALIFIED
Wickens R AmigonJapanAsiya Javayant NEW
Adams W CaldareraAustraliaAmy Elsner RENEWAL
Chavez O ButtCanadaStephen Shaw UNQUALIFIED
Darci B WieserCanadaIoni Bowcher UNQUALIFIED
Aditya G ButtAustraliaAmy Elsner PROPOSAL
Chavez F MacleadCanadaIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Isabel J GauchoFranceXuxue Feng UNQUALIFIED
Clifford R RutaUnited KingdomIoni Bowcher QUALIFIED
Mayumi Z BriddickItalyXuxue Feng RENEWAL
Mayumi V GarufiFranceAmy Elsner NEGOTIATION
Salvatore Q BowleyBrazilIoni Bowcher RENEWAL
Isabel O RulapaughCanadaAnna Fali PROPOSAL
Claire T StensethJapanStephen Shaw RENEWAL
Munro O RulapaughJapanBernardo Dominic NEW
Faith M GlickRussiaAmy Elsner PROPOSAL
Claire B FigeroaFranceAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas X MaletGermany2026-09-12Buckley Miller Wright PROPOSAL46Xuxue Feng
1001Nicolas N DarakjyFrance2026-09-02King, Christopher A Esq NEGOTIATION44Bernardo Dominic
1002Wickens F MaletGermany2026-09-15Buckley Miller Wright UNQUALIFIED92Anna Fali
1003Kadeem L BowleyRussia2026-09-04Commercial Press QUALIFIED43Elwin Sharvill
1004Ashley Q DilliardArgentina2026-08-30Truhlar And Truhlar Attys NEGOTIATION88Stephen Shaw
1005Jeanfrancois K OldroydBrazil2026-08-28Printing Dimensions QUALIFIED25Xuxue Feng
1006Adams Y NestleJapan2026-09-03Dorl, James J Esq PROPOSAL38Ioni Bowcher
1007Sinclair R RoysterUnited Kingdom2026-08-27Chanay, Jeffrey A Esq QUALIFIED35Anna Fali
1008David L FlosiRussia2026-09-14Morlong Associates NEW25Bernardo Dominic
1009Chavez E DarakjyCanada2026-09-01Rangoni Of Florence QUALIFIED1Anna Fali
1010Jones X PerinIndia2026-09-20Chapman, Ross E Esq NEW69Stephen Shaw
1011Stacey E KolmetzArgentina2026-09-06King, Christopher A Esq NEGOTIATION82Bernardo Dominic
1012Salvatore V NestleJapan2026-09-20Rousseaux, Michael Esq RENEWAL13Xuxue Feng
1013Isabel N GarufiIndia2026-09-15Dorl, James J Esq RENEWAL85Anna Fali
1014Maisha T RulapaughUnited Kingdom2026-09-16Chapman, Ross E Esq NEGOTIATION53Onyama Limba
1015Octavia V GillianUnited Kingdom2026-08-29Feltz Printing Service NEGOTIATION19Elwin Sharvill
1016Octavia H VenereRussia2026-09-19Dorl, James J Esq NEGOTIATION82Ioni Bowcher
1017Cody M MorascaJapan2026-08-26Chemel, James L Cpa PROPOSAL72Xuxue Feng
1018Rodrigues N RoysterItaly2026-09-02Chemel, James L Cpa RENEWAL62Anna Fali
1019Ricardo E PaprockiCanada2026-09-16Chanay, Jeffrey A Esq UNQUALIFIED69Bernardo Dominic
1020Rodrigues A KuskoJapan2026-08-31Chanay, Jeffrey A Esq NEW79Asiya Javayant
1021Isabel Y CaldareraGermany2026-09-18Feiner Bros NEGOTIATION81Elwin Sharvill
1022Silvio Y GarufiUnited Kingdom2026-09-03Rangoni Of Florence QUALIFIED9Ioni Bowcher
1023Izzy P WhobreyGermany2026-08-25Feltz Printing Service NEW93Ivan Magalhaes
1024Wickens A SaylorsAustralia2026-09-21Rangoni Of Florence RENEWAL83Onyama Limba
1025James S GarufiFrance2026-08-29Rangoni Of Florence PROPOSAL39Elwin Sharvill
1026Chavez I DarakjyJapan2026-09-05Feltz Printing Service QUALIFIED80Anna Fali
1027Rodrigues X DoeCanada2026-09-14Chemel, James L Cpa PROPOSAL62Bernardo Dominic
1028Jones P GlickGermany2026-08-29Morlong Associates UNQUALIFIED7Onyama Limba
1029Ricardo Q FlosiAustralia2026-08-28Chanay, Jeffrey A Esq NEW71Ivan Magalhaes
1030David A RulapaughFrance2026-09-17King, Christopher A Esq NEW18Bernardo Dominic
1031Claire I AmigonItaly2026-08-24Chanay, Jeffrey A Esq QUALIFIED16Ivan Magalhaes
1032Cody C BologniaItaly2026-09-16Chanay, Jeffrey A Esq QUALIFIED66Elwin Sharvill
1033Emily Y SchemmerUnited Kingdom2026-08-25Dorl, James J Esq PROPOSAL5Elwin Sharvill
1034Isabel Q BriddickArgentina2026-09-10Buckley Miller Wright NEW27Anna Fali
1035Munro O MarrierUnited Kingdom2026-08-25Buckley Miller Wright RENEWAL7Elwin Sharvill
1036Darci O FigeroaArgentina2026-09-02Truhlar And Truhlar Attys UNQUALIFIED49Ioni Bowcher
1037Alejandro U BriddickRussia2026-09-02Benton, John B Jr NEGOTIATION67Stephen Shaw
1038Maisha Z NestleBrazil2026-09-06Feiner Bros QUALIFIED81Bernardo Dominic
1039Chavez E VocelkaJapan2026-09-14Benton, John B Jr NEW60Amy Elsner
1040Chavez V CaudyUnited Kingdom2026-08-25Buckley Miller Wright RENEWAL46Anna Fali
1041Emily O GlickItaly2026-09-02Benton, John B Jr RENEWAL99Ioni Bowcher
1042Kaitlin Q AlbaresJapan2026-09-07Rangoni Of Florence NEW67Xuxue Feng
1043Maisha D OldroydAustralia2026-09-22Rousseaux, Michael Esq RENEWAL70Onyama Limba
1044Adams Y SaylorsBrazil2026-09-06Rousseaux, Michael Esq PROPOSAL94Stephen Shaw
1045Stacey T RimAustralia2026-09-21Rousseaux, Michael Esq NEGOTIATION43Xuxue Feng
1046Greenwood X BriddickItaly2026-09-19Morlong Associates UNQUALIFIED49Anna Fali
1047Arvin C ChuiBrazil2026-09-04Chanay, Jeffrey A Esq NEW90Onyama Limba
1048Sinclair S IturbideAustralia2026-09-01Rangoni Of Florence QUALIFIED11Ioni Bowcher
1049Mayumi G RulapaughUnited Kingdom2026-09-16Rousseaux, Michael Esq NEGOTIATION0Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Leon E FlosiSpainAmy Elsner RENEWAL
Ivar B RimUnited KingdomOnyama Limba RENEWAL
Ivar M BologniaArgentinaIoni Bowcher RENEWAL
Sinclair S MaletSpainStephen Shaw QUALIFIED
Mujtaba L KuskoItalyIvan Magalhaes RENEWAL
Costa J SchemmerSpainIoni Bowcher NEGOTIATION
Cody Z StockhamGermanyIoni Bowcher QUALIFIED
Juan F MarrierSpainAnna Fali PROPOSAL
James H StensethGermanyXuxue Feng UNQUALIFIED
James P StockhamUnited KingdomXuxue Feng NEGOTIATION
Aditya O PoquetteSpainBernardo Dominic NEGOTIATION
Octavia O SlusarskiSpainIvan Magalhaes UNQUALIFIED
Ivar M KolmetzJapanAnna Fali PROPOSAL
Aika G ButtCanadaAsiya Javayant QUALIFIED
Silvio Q KuskoUnited KingdomIoni Bowcher RENEWAL
Juan Q BologniaItalyStephen Shaw PROPOSAL
Aditya L AlbaresRussiaElwin Sharvill RENEWAL
Tony L OldroydRussiaOnyama Limba UNQUALIFIED
Antonio J DoeJapanAmy Elsner PROPOSAL
David A IturbideJapanAnna Fali RENEWAL
Aditya R OstroskyIndiaStephen Shaw NEGOTIATION
Juan T WieserFranceBernardo Dominic NEGOTIATION
Maisha E FollerFranceOnyama Limba NEGOTIATION
Claire V StensethFranceBernardo Dominic UNQUALIFIED
Maria O GauchoUnited KingdomAsiya Javayant NEGOTIATION
Mujtaba M FerenczArgentinaIoni Bowcher PROPOSAL
Arvin C NestleCanadaIvan Magalhaes RENEWAL
Jones O SergiGermanyOnyama Limba NEW
David H FlosiSpainAsiya Javayant RENEWAL
Jones A MorascaArgentinaStephen Shaw NEW
Aika N AmigonBrazilXuxue Feng QUALIFIED
Smith K SaylorsAustraliaAmy Elsner NEGOTIATION
Juan V BowleyJapanAmy Elsner NEGOTIATION
Octavia X CampainCanadaIoni Bowcher RENEWAL
Salvatore G OldroydIndiaAsiya Javayant NEW
Antonio D RimArgentinaAmy Elsner NEGOTIATION
Ashley B StockhamAustraliaAmy Elsner RENEWAL
Faith D KuskoArgentinaAnna Fali NEW
Adams A NestleCanadaStephen Shaw NEGOTIATION
Silvio W MarrierArgentinaElwin Sharvill UNQUALIFIED
Emily P IturbideItalyXuxue Feng NEW
Alejandro Z MacleadRussiaStephen Shaw RENEWAL
Morrow O CaudyAustraliaElwin Sharvill NEGOTIATION
Johnson V MaletItalyBernardo Dominic PROPOSAL
Claire B RulapaughFranceIvan Magalhaes NEGOTIATION
Nicolas X AmigonSpainOnyama Limba RENEWAL
Faith Y StensethAustraliaAsiya Javayant NEGOTIATION
Maria W FerenczArgentinaBernardo Dominic PROPOSAL
Sinclair A BologniaArgentinaAmy Elsner RENEWAL
Misaki C StensethArgentinaStephen Shaw NEW
Frozen Columns
Name
Smith V Gaucho
Isabel T Maclead
Clifford U Whobrey
Aika E Stockham
Jefferson Y Bowley
Leja Y Rim
James A Wieser
Jeanfrancois R Morasca
Silvio P Briddick
Salvatore T Dilliard
Claire W Doe
Ivar W Ruta
Ivar E Rim
Aruna Q Kusko
Kadeem J Bolognia
Juan C Glick
Morrow U Glick
Ivar O Wieser
Ashley K Nestle
Johnson K Rulapaugh
Antonio I Schemmer
Izzy S Caldarera
Arvin C Figeroa
Cody Q Rim
Jefferson E Rulapaugh
Aditya B Chui
Salvatore A Waycott
Isabel I Nestle
Leon K Gillian
Stacey Q Campain
Antonio M Doe
Cody V Ostrosky
Aika S Malet
Kaitlin A Ruta
Francesco E Poquette
Ivar B Doe
Adams V Iturbide
Emily B Nestle
Deepesh G Poquette
Isabel Y Shinko
Mujtaba V Bolognia
Jeanfrancois Z Morasca
Maria H Kusko
Mayumi G Doe
Wickens W Royster
Costa T Oldroyd
Chavez P Bolognia
Ricardo C Nestle
Julie M Nicka
Izzy T Maclead
IdCountryDate
1000Brazil2026-09-01
1001Spain2026-08-24
1002Australia2026-09-06
1003Argentina2026-09-01
1004Australia2026-09-07
1005United Kingdom2026-08-24
1006Argentina2026-09-02
1007Canada2026-09-14
1008Brazil2026-09-20
1009Argentina2026-09-08
1010Germany2026-08-28
1011Russia2026-09-05
1012Australia2026-09-08
1013Japan2026-09-22
1014Italy2026-08-27
1015Russia2026-09-21
1016India2026-08-25
1017Spain2026-09-05
1018India2026-09-01
1019Italy2026-09-01
1020Canada2026-08-31
1021Canada2026-09-08
1022India2026-09-03
1023Italy2026-09-22
1024Japan2026-08-28
1025United Kingdom2026-09-17
1026United Kingdom2026-09-07
1027United Kingdom2026-09-05
1028Canada2026-09-04
1029Canada2026-09-15
1030Italy2026-08-26
1031Australia2026-09-02
1032India2026-09-14
1033Japan2026-09-22
1034Argentina2026-09-08
1035Australia2026-08-25
1036United Kingdom2026-09-08
1037Spain2026-09-08
1038Spain2026-08-28
1039Italy2026-08-27
1040Russia2026-09-14
1041Australia2026-09-09
1042Australia2026-08-31
1043Germany2026-09-05
1044Argentina2026-08-31
1045Italy2026-08-28
1046India2026-09-18
1047Argentina2026-08-25
1048Japan2026-09-05
1049Australia2026-08-30

On-Demand Data

NameIdCountryDate
Smith C Oldroyd1000Russia2026-08-27
Smith F Campain1001Argentina2026-09-22
Mujtaba O Ruta1002Argentina2026-09-03
Morrow J Malet1003Canada2026-09-06
Rodrigues J Kolmetz1004Japan2026-08-25
Faith F Albares1005Italy2026-08-30
Juan W Garufi1006Argentina2026-09-11
Aruna Z Perin1007United Kingdom2026-09-03
Jennifer M Garufi1008Brazil2026-09-06
Smith Y Saylors1009Argentina2026-09-04
Johnson L Doe1010Canada2026-09-13
Misaki I Poquette1011India2026-09-14
Mujtaba X Gaucho1012United Kingdom2026-09-02
Rodrigues D Malet1013France2026-09-15
David U Nestle1014Canada2026-09-22
Wickens S Perin1015France2026-09-21
Maisha S Malet1016Canada2026-09-02
Arvin M Schemmer1017Germany2026-08-26
Aika X Campain1018Australia2026-09-06
Costa A Venere1019Russia2026-08-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia K SergiCanadaAsiya Javayant UNQUALIFIED
Antonio Q DoeUnited KingdomXuxue Feng RENEWAL
Adams J PerinRussiaStephen Shaw PROPOSAL
Johnson G RimJapanAsiya Javayant NEW
Leja M MaletGermanyAsiya Javayant QUALIFIED
Misaki J DilliardItalyStephen Shaw PROPOSAL
Juan G BologniaAustraliaOnyama Limba NEGOTIATION
Adams K RulapaughItalyXuxue Feng UNQUALIFIED
Salvatore H GauchoCanadaOnyama Limba PROPOSAL
Aditya U PoquetteJapanIvan Magalhaes QUALIFIED
Aika X DarakjyArgentinaBernardo Dominic PROPOSAL
Stacey R ButtArgentinaAnna Fali PROPOSAL
Darci T FlosiBrazilXuxue Feng PROPOSAL
Ivar H MaletArgentinaIvan Magalhaes NEW
Leon F RulapaughUnited KingdomElwin Sharvill QUALIFIED
Clifford P CaldareraItalyStephen Shaw NEGOTIATION
Juan R MaletIndiaOnyama Limba QUALIFIED
Misaki G MaletCanadaStephen Shaw UNQUALIFIED
Emily S VocelkaAustraliaElwin Sharvill UNQUALIFIED
Nicolas X NickaFranceBernardo Dominic NEGOTIATION
Octavia V TollnerFranceStephen Shaw UNQUALIFIED
Aditya C IturbideFranceAsiya Javayant NEW
Cody H NestleIndiaOnyama Limba RENEWAL
Julie L RimAustraliaOnyama Limba NEW
Sinclair O KuskoIndiaAmy Elsner NEGOTIATION
James K FollerUnited KingdomIoni Bowcher NEW
Jefferson O FollerJapanAsiya Javayant NEW
David W CaudySpainElwin Sharvill RENEWAL
Wickens F BologniaRussiaIoni Bowcher UNQUALIFIED
Faith J DilliardUnited KingdomAsiya Javayant QUALIFIED
Jeanfrancois E CaldareraSpainAmy Elsner NEW
Antonio H SaylorsUnited KingdomIoni Bowcher NEW
Silvio V FigeroaFranceAsiya Javayant UNQUALIFIED
Octavia I GauchoJapanStephen Shaw NEW
Jennifer J VocelkaJapanAnna Fali RENEWAL
Arvin Q PaprockiItalyElwin Sharvill NEW
James K DoeUnited KingdomIoni Bowcher RENEWAL
Stacey M GillianArgentinaAsiya Javayant UNQUALIFIED
Clifford T ShinkoArgentinaBernardo Dominic PROPOSAL
Mayumi P InouyeItalyElwin Sharvill 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>