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
Julie V MarrierBrazilIvan Magalhaes PROPOSAL
Maria H BologniaJapanIvan Magalhaes NEW
Darci Z ChuiSpainXuxue Feng NEW
Nicolas S RimIndiaIvan Magalhaes RENEWAL
Munro F RoysterItalyAnna Fali NEGOTIATION
Stacey K DarakjyItalyXuxue Feng NEGOTIATION
Juan B FigeroaRussiaElwin Sharvill QUALIFIED
Emily P RoysterUnited KingdomOnyama Limba NEGOTIATION
Chavez S KolmetzUnited KingdomBernardo Dominic PROPOSAL
Maria O FerenczRussiaAsiya Javayant PROPOSAL
Salvatore I MarrierRussiaAmy Elsner NEW
Tony R CampainGermanyAsiya Javayant NEW
Mujtaba R GarufiCanadaOnyama Limba QUALIFIED
Johnson Q NickaFranceStephen Shaw QUALIFIED
Ivar I SergiSpainOnyama Limba NEGOTIATION
Claire K InouyeIndiaIoni Bowcher QUALIFIED
Munro P SaylorsRussiaAsiya Javayant NEGOTIATION
Isabel T SchemmerIndiaStephen Shaw PROPOSAL
Greenwood Z GarufiRussiaAnna Fali NEGOTIATION
Leon T CaudyRussiaBernardo Dominic NEW
Salvatore F MacleadBrazilXuxue Feng NEW
Morrow J RimSpainAsiya Javayant RENEWAL
Aditya H FollerItalyAnna Fali PROPOSAL
Isabel C SergiGermanyBernardo Dominic RENEWAL
Misaki G WieserSpainAnna Fali NEW
Smith A SaylorsSpainIvan Magalhaes QUALIFIED
Ivar M GlickItalyAsiya Javayant NEGOTIATION
Deepesh G ChuiArgentinaElwin Sharvill NEW
Julie D PoquetteSpainAnna Fali RENEWAL
David F BologniaJapanAsiya Javayant PROPOSAL
Juan R GauchoJapanAnna Fali QUALIFIED
Jefferson L KolmetzCanadaOnyama Limba NEGOTIATION
Stacey K CaudyBrazilIoni Bowcher NEGOTIATION
Arvin E ShinkoUnited KingdomIvan Magalhaes NEW
Nicolas K DarakjyGermanyElwin Sharvill NEW
Isabel G GauchoGermanyIoni Bowcher NEW
Izzy Y RoysterBrazilXuxue Feng UNQUALIFIED
Tony Q BologniaItalyElwin Sharvill NEGOTIATION
Aditya W AmigonBrazilStephen Shaw NEW
Ivar A KolmetzGermanyOnyama Limba UNQUALIFIED
Clifford Q FlosiSpainOnyama Limba UNQUALIFIED
Tony Y FlosiArgentinaOnyama Limba RENEWAL
Silvio D WhobreyBrazilAnna Fali QUALIFIED
James M RutaArgentinaOnyama Limba UNQUALIFIED
Murillo A FerenczIndiaStephen Shaw RENEWAL
Stacey Y PoquetteArgentinaAmy Elsner NEGOTIATION
Claire V AlbaresAustraliaElwin Sharvill UNQUALIFIED
Aruna R GauchoCanadaOnyama Limba UNQUALIFIED
Chavez N ShinkoFranceXuxue Feng PROPOSAL
Emily G KolmetzRussiaXuxue Feng NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Octavia J CampainSpainElwin Sharvill RENEWAL
Aika N WaycottFranceAmy Elsner RENEWAL
Mujtaba Z TollnerJapanBernardo Dominic NEGOTIATION
Francesco Z MacleadSpainIvan Magalhaes RENEWAL
Salvatore A MacleadRussiaIvan Magalhaes QUALIFIED
Leon B OstroskySpainOnyama Limba NEW
Francesco O SchemmerGermanyIoni Bowcher QUALIFIED
James S StensethFranceStephen Shaw NEGOTIATION
Mujtaba K SergiUnited KingdomStephen Shaw QUALIFIED
Antonio M VenereGermanyElwin Sharvill NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya M SchemmerGermany2026-09-23Rangoni Of Florence QUALIFIED24Onyama Limba
1001Octavia P BriddickSpain2026-09-27Chapman, Ross E Esq UNQUALIFIED14Anna Fali
1002Tony Q TollnerArgentina2026-10-09Feiner Bros RENEWAL13Anna Fali
1003Morrow M FlosiGermany2026-10-03Morlong Associates NEW64Bernardo Dominic
1004Tony A VenereArgentina2026-10-07Chanay, Jeffrey A Esq PROPOSAL93Ivan Magalhaes
1005Deepesh P KuskoArgentina2026-10-16Chemel, James L Cpa RENEWAL31Onyama Limba
1006Ricardo R GillianGermany2026-09-30Printing Dimensions PROPOSAL99Stephen Shaw
1007Silvio D FigeroaSpain2026-09-20Commercial Press QUALIFIED88Stephen Shaw
1008Nicolas U WaycottJapan2026-10-10Commercial Press QUALIFIED49Onyama Limba
1009Jones G GillianIndia2026-10-13Chanay, Jeffrey A Esq UNQUALIFIED84Ioni Bowcher
1010Smith K CaldareraGermany2026-09-25Rangoni Of Florence NEW19Asiya Javayant
1011Maria C DilliardGermany2026-10-18Chapman, Ross E Esq QUALIFIED92Stephen Shaw
1012Mayumi T MarrierUnited Kingdom2026-10-01Rousseaux, Michael Esq QUALIFIED77Amy Elsner
1013Stacey R NestleGermany2026-09-28Morlong Associates NEGOTIATION46Elwin Sharvill
1014Costa A SlusarskiAustralia2026-10-09Printing Dimensions UNQUALIFIED32Asiya Javayant
1015Leja U VenereUnited Kingdom2026-10-08Morlong Associates QUALIFIED25Elwin Sharvill
1016Chavez Q RimGermany2026-10-15Chemel, James L Cpa PROPOSAL4Elwin Sharvill
1017Chavez C FigeroaFrance2026-10-04Dorl, James J Esq NEGOTIATION41Anna Fali
1018Silvio F WhobreyBrazil2026-10-04Feiner Bros NEW43Onyama Limba
1019David Z MacleadBrazil2026-10-15Chemel, James L Cpa RENEWAL10Amy Elsner
1020Mujtaba Q GillianGermany2026-10-10Chapman, Ross E Esq RENEWAL84Ioni Bowcher
1021Stacey H FigeroaSpain2026-10-02Rousseaux, Michael Esq UNQUALIFIED51Stephen Shaw
1022Izzy X DilliardFrance2026-09-27Printing Dimensions NEW23Stephen Shaw
1023Silvio H BologniaIndia2026-10-17Benton, John B Jr PROPOSAL3Asiya Javayant
1024Octavia Y InouyeJapan2026-09-24Chemel, James L Cpa NEW98Asiya Javayant
1025Mujtaba D MaletBrazil2026-10-13Commercial Press QUALIFIED95Amy Elsner
1026Alejandro H FollerGermany2026-09-25Printing Dimensions UNQUALIFIED25Xuxue Feng
1027Antonio N BologniaFrance2026-09-24Printing Dimensions QUALIFIED64Xuxue Feng
1028Stacey Q ChuiCanada2026-10-17Chapman, Ross E Esq PROPOSAL51Elwin Sharvill
1029Aika Q MacleadAustralia2026-10-12Chanay, Jeffrey A Esq QUALIFIED26Elwin Sharvill
1030Claire A SchemmerSpain2026-10-13Rousseaux, Michael Esq UNQUALIFIED16Onyama Limba
1031Stacey Q CaudyRussia2026-10-06Rangoni Of Florence NEGOTIATION87Stephen Shaw
1032Faith G AmigonSpain2026-09-21Dorl, James J Esq UNQUALIFIED25Anna Fali
1033Maisha C PoquetteBrazil2026-10-01Chanay, Jeffrey A Esq PROPOSAL81Elwin Sharvill
1034Smith A NickaArgentina2026-10-05Printing Dimensions NEW90Amy Elsner
1035Deepesh A KuskoUnited Kingdom2026-10-03Truhlar And Truhlar Attys NEW28Amy Elsner
1036Stacey D GarufiUnited Kingdom2026-10-18Chanay, Jeffrey A Esq PROPOSAL51Ioni Bowcher
1037Chavez Q SergiSpain2026-09-30Rousseaux, Michael Esq RENEWAL7Bernardo Dominic
1038Mayumi N BologniaCanada2026-09-26King, Christopher A Esq NEGOTIATION99Anna Fali
1039Mayumi Q WhobreyUnited Kingdom2026-10-12Truhlar And Truhlar Attys UNQUALIFIED37Amy Elsner
1040Clifford Q AmigonGermany2026-09-30Morlong Associates RENEWAL80Anna Fali
1041Claire X CaudyItaly2026-10-18Dorl, James J Esq PROPOSAL32Ioni Bowcher
1042Arvin E ChuiIndia2026-10-07Printing Dimensions QUALIFIED96Stephen Shaw
1043Leon V VenereRussia2026-10-03Chanay, Jeffrey A Esq UNQUALIFIED27Anna Fali
1044Aruna H CaudyJapan2026-10-05Buckley Miller Wright UNQUALIFIED97Ioni Bowcher
1045Wickens X DilliardRussia2026-10-01Chanay, Jeffrey A Esq NEGOTIATION91Onyama Limba
1046Alejandro H NestleUnited Kingdom2026-10-08King, Christopher A Esq NEW85Asiya Javayant
1047Jones A IturbideGermany2026-09-28Truhlar And Truhlar Attys NEW77Bernardo Dominic
1048Faith O SaylorsAustralia2026-09-20Chanay, Jeffrey A Esq PROPOSAL18Elwin Sharvill
1049Silvio X MacleadArgentina2026-09-25Chemel, James L Cpa UNQUALIFIED35Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Chavez M GarufiGermanyIoni Bowcher PROPOSAL
Smith Z ChuiAustraliaElwin Sharvill NEGOTIATION
Silvio T MarrierFranceElwin Sharvill NEGOTIATION
Mujtaba S MacleadFranceAmy Elsner NEW
Kaitlin B GauchoJapanBernardo Dominic UNQUALIFIED
Alejandro G FigeroaBrazilOnyama Limba NEW
Faith N SlusarskiUnited KingdomElwin Sharvill RENEWAL
Francesco F MorascaArgentinaAmy Elsner UNQUALIFIED
James F WieserRussiaXuxue Feng UNQUALIFIED
Adams W IturbideCanadaAmy Elsner RENEWAL
Leja A RimSpainElwin Sharvill RENEWAL
Stacey Y VenereIndiaAnna Fali RENEWAL
Jeanfrancois Q IturbideBrazilIvan Magalhaes UNQUALIFIED
Alejandro T DilliardJapanBernardo Dominic NEGOTIATION
Alejandro Z CampainAustraliaXuxue Feng UNQUALIFIED
Ivar K GillianItalyIoni Bowcher NEW
Stacey N KolmetzFranceIvan Magalhaes PROPOSAL
Jones O CaudyFranceAsiya Javayant UNQUALIFIED
Munro X GauchoFranceElwin Sharvill PROPOSAL
Rodrigues G SchemmerAustraliaAnna Fali NEGOTIATION
Mujtaba W BowleyBrazilIvan Magalhaes QUALIFIED
Murillo G GarufiItalyIoni Bowcher UNQUALIFIED
Adams J CaldareraSpainAnna Fali PROPOSAL
Francesco C StockhamBrazilAmy Elsner NEW
Alejandro V GlickCanadaIvan Magalhaes UNQUALIFIED
Tony K OldroydAustraliaAmy Elsner UNQUALIFIED
Stacey S DarakjyRussiaStephen Shaw NEW
Arvin H RutaGermanyIoni Bowcher PROPOSAL
Francesco T CampainGermanyOnyama Limba NEGOTIATION
James B SergiArgentinaAsiya Javayant NEW
Ivar M RimUnited KingdomBernardo Dominic NEW
Mujtaba K WieserBrazilIvan Magalhaes PROPOSAL
Juan V AmigonJapanXuxue Feng PROPOSAL
Darci S FlosiItalyAmy Elsner UNQUALIFIED
Ricardo P AlbaresBrazilAnna Fali QUALIFIED
Greenwood D MarrierItalyIvan Magalhaes UNQUALIFIED
Aruna M FollerIndiaAmy Elsner QUALIFIED
Stacey H PaprockiIndiaStephen Shaw RENEWAL
Jeanfrancois Z GillianBrazilAnna Fali NEGOTIATION
Leon G BologniaUnited KingdomAnna Fali NEGOTIATION
Claire L ChuiArgentinaAmy Elsner PROPOSAL
Adams S PerinBrazilXuxue Feng NEGOTIATION
Ashley X RulapaughCanadaOnyama Limba RENEWAL
Ricardo P KolmetzCanadaIoni Bowcher PROPOSAL
Emily O WhobreyArgentinaAnna Fali QUALIFIED
Tony U GarufiFranceOnyama Limba NEGOTIATION
Ricardo J OstroskyFranceAmy Elsner PROPOSAL
Chavez P AlbaresSpainBernardo Dominic NEGOTIATION
Sinclair N GlickItalyElwin Sharvill PROPOSAL
Deepesh E GauchoFranceXuxue Feng PROPOSAL
Frozen Columns
Name
Clifford I Chui
Leon K Waycott
Faith D Vocelka
Rodrigues M Stockham
Emily P Morasca
Deepesh G Sergi
Wickens B Flosi
Rodrigues U Vocelka
Leon I Caudy
Aika X Doe
Misaki V Caudy
James X Kolmetz
Morrow C Rim
Juan T Tollner
Jones V Malet
Sinclair K Ostrosky
Smith N Bowley
Murillo M Royster
Greenwood A Bowley
Octavia A Tollner
Isabel U Malet
Ricardo J Darakjy
Rodrigues Z Royster
Deepesh N Shinko
Mayumi T Morasca
Emily B Perin
Maria P Caudy
Aditya W Paprocki
Leja S Schemmer
Leja J Campain
Murillo X Royster
Aruna Q Gaucho
Aruna F Perin
Wickens B Stockham
Chavez C Malet
Johnson A Gillian
Alejandro I Ferencz
Kaitlin U Slusarski
Octavia K Campain
Arvin O Perin
Rodrigues G Gillian
Kadeem M Bowley
Aditya W Saylors
Mayumi Z Slusarski
Juan K Bowley
Isabel S Oldroyd
Jennifer B Stockham
Jones K Dilliard
Jones D Stenseth
Emily U Perin
IdCountryDate
1000Brazil2026-09-29
1001Russia2026-10-08
1002Canada2026-09-26
1003Italy2026-09-30
1004Russia2026-10-06
1005Russia2026-09-25
1006Japan2026-10-15
1007United Kingdom2026-10-10
1008Canada2026-10-05
1009Italy2026-10-17
1010Germany2026-10-12
1011Spain2026-09-23
1012United Kingdom2026-10-04
1013France2026-09-26
1014Canada2026-09-21
1015United Kingdom2026-10-17
1016Canada2026-09-23
1017Argentina2026-09-21
1018Spain2026-10-12
1019Russia2026-10-12
1020Italy2026-09-25
1021Japan2026-10-08
1022Canada2026-10-03
1023France2026-10-12
1024Germany2026-09-30
1025Germany2026-10-18
1026Italy2026-10-14
1027Brazil2026-09-23
1028Spain2026-10-09
1029United Kingdom2026-10-19
1030India2026-10-08
1031Canada2026-10-14
1032Australia2026-10-17
1033Brazil2026-10-02
1034Spain2026-09-24
1035Argentina2026-10-12
1036Argentina2026-09-30
1037United Kingdom2026-10-12
1038Canada2026-10-17
1039Australia2026-09-29
1040France2026-10-13
1041Japan2026-09-27
1042Australia2026-10-10
1043France2026-10-08
1044Argentina2026-10-09
1045Japan2026-10-18
1046Russia2026-10-15
1047Australia2026-10-19
1048Japan2026-10-16
1049Australia2026-10-11

On-Demand Data

NameIdCountryDate
Kadeem L Iturbide1000Argentina2026-09-25
Emily R Nestle1001Spain2026-10-14
Costa T Sergi1002Italy2026-10-05
Deepesh F Bolognia1003Italy2026-10-06
Greenwood Q Chui1004Russia2026-09-26
Cody E Chui1005Italy2026-10-14
Mujtaba F Gillian1006Germany2026-10-10
Smith M Foller1007Germany2026-10-05
James H Butt1008Brazil2026-09-24
Leja Q Ostrosky1009Australia2026-09-28
Julie W Dilliard1010Germany2026-10-07
Arvin E Morasca1011Japan2026-09-26
Wickens R Ruta1012Argentina2026-09-25
Mujtaba H Dilliard1013Argentina2026-09-24
Smith K Royster1014Argentina2026-09-22
Tony Z Gillian1015Brazil2026-10-13
Mujtaba F Schemmer1016Germany2026-09-29
Antonio J Waycott1017Italy2026-10-13
Leon Y Stenseth1018France2026-10-10
Johnson H Caudy1019Brazil2026-09-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon X GlickGermanyAmy Elsner UNQUALIFIED
Aditya A PerinRussiaIoni Bowcher RENEWAL
Maria F CampainGermanyXuxue Feng NEGOTIATION
Stacey M GillianCanadaElwin Sharvill NEW
Darci G VenereCanadaIoni Bowcher RENEWAL
Octavia P CaldareraBrazilAnna Fali NEW
David K WhobreyUnited KingdomBernardo Dominic RENEWAL
Kaitlin R StensethSpainXuxue Feng QUALIFIED
Jones N RutaJapanAsiya Javayant NEGOTIATION
Julie H StensethJapanIoni Bowcher PROPOSAL
Aditya U SaylorsSpainIoni Bowcher UNQUALIFIED
Chavez S ChuiFranceIvan Magalhaes RENEWAL
David I IturbideSpainAmy Elsner UNQUALIFIED
Clifford H NickaCanadaOnyama Limba PROPOSAL
Isabel C AlbaresRussiaAsiya Javayant RENEWAL
Silvio C GauchoGermanyAmy Elsner NEGOTIATION
Aditya T SaylorsAustraliaAsiya Javayant RENEWAL
Ashley O PoquetteArgentinaIvan Magalhaes NEGOTIATION
Misaki C KolmetzArgentinaOnyama Limba NEGOTIATION
Morrow D SlusarskiJapanAmy Elsner QUALIFIED
Jennifer R MaletBrazilStephen Shaw NEGOTIATION
Salvatore T RulapaughJapanAmy Elsner NEW
Faith M TollnerRussiaOnyama Limba NEW
Maisha C GarufiGermanyElwin Sharvill PROPOSAL
Darci U SaylorsGermanyXuxue Feng QUALIFIED
Juan Q AlbaresAustraliaIoni Bowcher UNQUALIFIED
Kaitlin R OldroydFranceBernardo Dominic NEW
Kadeem X MaletItalyXuxue Feng QUALIFIED
Chavez J OldroydItalyAmy Elsner UNQUALIFIED
Darci Z NestleAustraliaXuxue Feng UNQUALIFIED
Greenwood H RimItalyIoni Bowcher RENEWAL
David J FigeroaJapanStephen Shaw QUALIFIED
Faith F NickaCanadaStephen Shaw UNQUALIFIED
Kadeem L GarufiAustraliaStephen Shaw QUALIFIED
Wickens X NickaItalyAnna Fali PROPOSAL
Ashley V DilliardCanadaOnyama Limba UNQUALIFIED
Johnson J SlusarskiItalyStephen Shaw NEGOTIATION
David C WaycottIndiaBernardo Dominic UNQUALIFIED
Adams I CaldareraJapanElwin Sharvill PROPOSAL
Salvatore A ChuiRussiaIvan Magalhaes 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>