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
Octavia P GillianUnited KingdomOnyama Limba QUALIFIED
Rodrigues F CampainCanadaOnyama Limba UNQUALIFIED
Greenwood B NestleUnited KingdomIoni Bowcher NEGOTIATION
Antonio K ShinkoUnited KingdomAsiya Javayant RENEWAL
Munro T DoeIndiaIoni Bowcher NEGOTIATION
Aditya G DoeSpainAmy Elsner NEGOTIATION
Mujtaba N StockhamArgentinaElwin Sharvill UNQUALIFIED
Octavia G FlosiArgentinaAsiya Javayant PROPOSAL
Ivar N RulapaughRussiaIvan Magalhaes NEGOTIATION
Kaitlin A RoysterJapanAnna Fali RENEWAL
Ivar J BowleySpainStephen Shaw QUALIFIED
Johnson I RimArgentinaElwin Sharvill NEW
Misaki N StockhamItalyStephen Shaw RENEWAL
Murillo U SergiJapanIoni Bowcher UNQUALIFIED
Antonio H OldroydRussiaAsiya Javayant QUALIFIED
Cody B GauchoCanadaXuxue Feng PROPOSAL
Chavez Q WieserSpainIvan Magalhaes QUALIFIED
Sinclair K VenereIndiaIvan Magalhaes PROPOSAL
Chavez Q FlosiRussiaIvan Magalhaes RENEWAL
Jones R KolmetzCanadaOnyama Limba RENEWAL
Darci K VenereAustraliaXuxue Feng NEW
Ricardo H CampainBrazilIvan Magalhaes NEW
Ivar V FollerSpainIvan Magalhaes UNQUALIFIED
Leja V MaletIndiaAsiya Javayant QUALIFIED
Nicolas M SaylorsAustraliaOnyama Limba RENEWAL
Misaki J SaylorsUnited KingdomBernardo Dominic RENEWAL
Ricardo X SergiBrazilOnyama Limba UNQUALIFIED
Costa O ButtArgentinaIvan Magalhaes NEGOTIATION
Emily V PaprockiIndiaXuxue Feng QUALIFIED
David O PerinJapanIvan Magalhaes PROPOSAL
Jennifer N IturbideGermanyXuxue Feng PROPOSAL
Tony S GlickRussiaStephen Shaw NEGOTIATION
Izzy W WaycottAustraliaAnna Fali QUALIFIED
Sinclair Q AmigonArgentinaBernardo Dominic QUALIFIED
Munro X NickaGermanyElwin Sharvill NEGOTIATION
Stacey F MarrierRussiaElwin Sharvill UNQUALIFIED
Rodrigues F NickaJapanIoni Bowcher PROPOSAL
Leon M RoysterBrazilElwin Sharvill PROPOSAL
Misaki R ShinkoUnited KingdomOnyama Limba UNQUALIFIED
Maria T RimJapanXuxue Feng NEGOTIATION
Aruna A IturbideSpainStephen Shaw RENEWAL
Jennifer T VocelkaCanadaOnyama Limba UNQUALIFIED
Clifford P WaycottIndiaOnyama Limba PROPOSAL
Juan S NickaIndiaStephen Shaw NEW
Rodrigues F ShinkoBrazilStephen Shaw NEW
Jones Z GauchoFranceIoni Bowcher PROPOSAL
James E GarufiSpainStephen Shaw PROPOSAL
Maria R DoeRussiaAnna Fali NEGOTIATION
Izzy I ChuiRussiaElwin Sharvill PROPOSAL
Misaki Z SaylorsArgentinaAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Deepesh F BologniaIndiaBernardo Dominic RENEWAL
James B MorascaFranceAmy Elsner RENEWAL
Salvatore Z BriddickArgentinaAsiya Javayant UNQUALIFIED
Sinclair Y DarakjyRussiaAnna Fali RENEWAL
Aruna Y IturbideAustraliaAsiya Javayant QUALIFIED
David F BologniaFranceOnyama Limba PROPOSAL
Stacey V SlusarskiUnited KingdomIvan Magalhaes QUALIFIED
Aditya O SergiSpainElwin Sharvill NEGOTIATION
Johnson P KuskoIndiaAnna Fali NEGOTIATION
Ashley N RulapaughSpainBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia U KuskoFrance2026-10-18Truhlar And Truhlar Attys NEW22Elwin Sharvill
1001Arvin E VocelkaRussia2026-10-01Buckley Miller Wright UNQUALIFIED75Ioni Bowcher
1002Cody W BowleyAustralia2026-10-18Feltz Printing Service NEW50Bernardo Dominic
1003Wickens N GlickSpain2026-10-22Feltz Printing Service QUALIFIED61Xuxue Feng
1004Aditya R ShinkoItaly2026-10-23Buckley Miller Wright NEGOTIATION55Asiya Javayant
1005Mayumi G SchemmerIndia2026-10-21Chanay, Jeffrey A Esq NEGOTIATION30Bernardo Dominic
1006Adams X ButtUnited Kingdom2026-10-26Feltz Printing Service NEW36Stephen Shaw
1007Juan W RutaCanada2026-10-15Chanay, Jeffrey A Esq QUALIFIED71Bernardo Dominic
1008Francesco X MorascaArgentina2026-10-10Rangoni Of Florence RENEWAL41Bernardo Dominic
1009Faith T VenereSpain2026-10-23Printing Dimensions NEW29Bernardo Dominic
1010Deepesh Y VenereGermany2026-10-07Chapman, Ross E Esq QUALIFIED12Stephen Shaw
1011Leon Z KolmetzArgentina2026-10-25Chemel, James L Cpa NEW6Ioni Bowcher
1012Alejandro H FlosiArgentina2026-10-02Feiner Bros UNQUALIFIED17Xuxue Feng
1013Aruna K RulapaughBrazil2026-10-13Printing Dimensions NEW7Elwin Sharvill
1014Faith S NickaIndia2026-10-23King, Christopher A Esq PROPOSAL85Ioni Bowcher
1015David H DoeRussia2026-09-29Feltz Printing Service PROPOSAL44Asiya Javayant
1016Stacey A DilliardIndia2026-10-08Feltz Printing Service QUALIFIED8Amy Elsner
1017Chavez Q PoquetteAustralia2026-10-20Benton, John B Jr PROPOSAL99Elwin Sharvill
1018Claire U RoysterRussia2026-10-12Feiner Bros UNQUALIFIED11Amy Elsner
1019Emily F BowleyCanada2026-10-25Benton, John B Jr NEGOTIATION11Bernardo Dominic
1020Octavia D BowleyIndia2026-10-08King, Christopher A Esq RENEWAL84Ioni Bowcher
1021Ashley Q MaletItaly2026-10-26Chapman, Ross E Esq PROPOSAL79Elwin Sharvill
1022Clifford S SaylorsItaly2026-10-03Chanay, Jeffrey A Esq NEGOTIATION31Bernardo Dominic
1023Ashley C ChuiJapan2026-10-26King, Christopher A Esq UNQUALIFIED62Ioni Bowcher
1024Aditya Q RutaItaly2026-10-04Dorl, James J Esq NEW26Onyama Limba
1025Izzy S BologniaSpain2026-10-01King, Christopher A Esq PROPOSAL44Amy Elsner
1026David R MarrierGermany2026-10-26Printing Dimensions NEW97Anna Fali
1027Juan W NestleIndia2026-10-25Truhlar And Truhlar Attys RENEWAL2Asiya Javayant
1028Ricardo V DilliardAustralia2026-09-27Buckley Miller Wright RENEWAL3Onyama Limba
1029Maria M RutaFrance2026-10-20Rangoni Of Florence UNQUALIFIED61Ioni Bowcher
1030Octavia P FerenczSpain2026-10-09Chanay, Jeffrey A Esq NEW94Anna Fali
1031Stacey M MaletGermany2026-10-21Chanay, Jeffrey A Esq PROPOSAL86Ivan Magalhaes
1032Munro A MaletRussia2026-10-24Buckley Miller Wright NEW75Bernardo Dominic
1033Munro V CaudyFrance2026-10-05Buckley Miller Wright PROPOSAL76Elwin Sharvill
1034Adams V PerinJapan2026-10-01Dorl, James J Esq NEGOTIATION59Amy Elsner
1035Deepesh G MorascaArgentina2026-10-23Chapman, Ross E Esq QUALIFIED49Amy Elsner
1036Aika J GlickBrazil2026-10-16Feiner Bros NEW93Xuxue Feng
1037Isabel F OldroydSpain2026-09-29Chemel, James L Cpa QUALIFIED72Stephen Shaw
1038Maisha Z CaldareraAustralia2026-10-26Buckley Miller Wright QUALIFIED23Anna Fali
1039Greenwood T WhobreyItaly2026-10-05King, Christopher A Esq RENEWAL2Asiya Javayant
1040Adams C CaudyArgentina2026-10-14Dorl, James J Esq QUALIFIED63Elwin Sharvill
1041Maisha J CampainCanada2026-10-19Feltz Printing Service UNQUALIFIED85Ioni Bowcher
1042Clifford K VenereItaly2026-10-08Chanay, Jeffrey A Esq RENEWAL55Amy Elsner
1043Jeanfrancois F PoquetteFrance2026-10-22Feltz Printing Service NEW25Ivan Magalhaes
1044Faith A PoquetteJapan2026-10-09Commercial Press UNQUALIFIED51Stephen Shaw
1045Arvin I GillianArgentina2026-10-08Benton, John B Jr PROPOSAL65Xuxue Feng
1046Emily S TollnerCanada2026-10-24Rangoni Of Florence NEW41Amy Elsner
1047Jennifer L MaletArgentina2026-10-06Rangoni Of Florence QUALIFIED89Ivan Magalhaes
1048Costa U GlickArgentina2026-10-22Commercial Press PROPOSAL38Amy Elsner
1049Tony S AmigonRussia2026-10-12Chanay, Jeffrey A Esq RENEWAL39Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Jennifer W NickaUnited KingdomAmy Elsner QUALIFIED
Clifford Q WieserArgentinaBernardo Dominic PROPOSAL
Rodrigues N OldroydFranceBernardo Dominic QUALIFIED
Jones H OldroydArgentinaIvan Magalhaes QUALIFIED
Sinclair U BowleyArgentinaIoni Bowcher RENEWAL
Jeanfrancois L VenereArgentinaAsiya Javayant PROPOSAL
Jones J ShinkoAustraliaAsiya Javayant UNQUALIFIED
Kaitlin O InouyeAustraliaIoni Bowcher NEGOTIATION
Salvatore F OldroydFranceOnyama Limba PROPOSAL
Leja N KolmetzUnited KingdomStephen Shaw NEW
Leon V StockhamIndiaBernardo Dominic RENEWAL
Francesco R WaycottSpainElwin Sharvill UNQUALIFIED
Stacey C NestleUnited KingdomXuxue Feng QUALIFIED
Salvatore I StockhamSpainElwin Sharvill UNQUALIFIED
Rodrigues J FigeroaJapanAnna Fali QUALIFIED
Smith T SaylorsJapanAnna Fali NEW
Kadeem G MaletUnited KingdomOnyama Limba NEW
Munro J MaletGermanyAnna Fali QUALIFIED
Clifford R WaycottRussiaOnyama Limba PROPOSAL
Arvin P MaletRussiaIvan Magalhaes QUALIFIED
Kaitlin I MacleadAustraliaStephen Shaw UNQUALIFIED
James J SchemmerJapanAsiya Javayant NEW
Ashley P FerenczSpainStephen Shaw UNQUALIFIED
Wickens A WieserArgentinaXuxue Feng QUALIFIED
Jeanfrancois F ShinkoGermanyIoni Bowcher NEGOTIATION
Wickens W RutaBrazilBernardo Dominic NEGOTIATION
Izzy S FollerAustraliaBernardo Dominic QUALIFIED
Munro D SchemmerFranceAnna Fali RENEWAL
Ricardo F NestleItalyOnyama Limba QUALIFIED
David N StockhamCanadaOnyama Limba UNQUALIFIED
James I OldroydBrazilOnyama Limba NEGOTIATION
Aditya P GauchoFranceIvan Magalhaes PROPOSAL
Antonio A BowleyCanadaXuxue Feng QUALIFIED
Izzy B StensethItalyOnyama Limba NEW
Arvin V CaudyFranceIvan Magalhaes NEW
Nicolas N DarakjySpainIvan Magalhaes NEGOTIATION
Silvio Y IturbideUnited KingdomElwin Sharvill NEW
Aruna M AmigonSpainXuxue Feng UNQUALIFIED
Ricardo X AmigonArgentinaElwin Sharvill UNQUALIFIED
Aruna Z WaycottArgentinaAnna Fali RENEWAL
Antonio Z StockhamSpainXuxue Feng PROPOSAL
Kadeem R FerenczAustraliaXuxue Feng NEW
Murillo E FerenczRussiaOnyama Limba NEW
Kaitlin L MacleadJapanBernardo Dominic UNQUALIFIED
Murillo A DilliardItalyElwin Sharvill NEGOTIATION
Wickens I OldroydCanadaIoni Bowcher RENEWAL
Darci R RutaSpainBernardo Dominic QUALIFIED
Maisha K NestleAustraliaIvan Magalhaes QUALIFIED
Silvio O MarrierSpainOnyama Limba PROPOSAL
Salvatore J GlickItalyAnna Fali UNQUALIFIED
Frozen Columns
Name
Stacey J Butt
Misaki Z Nicka
Mujtaba V Flosi
Rodrigues V Malet
Morrow D Perin
Alejandro E Amigon
Mayumi E Gaucho
Emily L Bolognia
Johnson P Bowley
Jeanfrancois W Kusko
Claire L Shinko
Claire R Bowley
Cody F Doe
Jennifer G Iturbide
Costa N Poquette
Ricardo B Glick
Misaki K Perin
Emily S Figeroa
Smith E Butt
Salvatore V Kolmetz
Adams W Chui
Cody X Venere
Sinclair R Darakjy
Wickens N Glick
Alejandro H Sergi
Emily E Paprocki
Alejandro I Slusarski
Aika Q Maclead
Silvio P Sergi
Ashley X Schemmer
Emily R Marrier
Stacey S Dilliard
Arvin Q Schemmer
Mayumi E Rulapaugh
Wickens M Butt
Maisha P Doe
James J Bowley
Sinclair K Poquette
Johnson O Ferencz
Jefferson E Slusarski
Isabel L Bolognia
Leja U Sergi
Munro Y Morasca
Alejandro U Kusko
Faith X Stockham
Julie U Foller
Wickens M Poquette
Cody D Perin
Jennifer U Marrier
Smith V Doe
IdCountryDate
1000India2026-10-26
1001Argentina2026-10-08
1002Brazil2026-09-28
1003Argentina2026-10-19
1004Russia2026-10-22
1005Brazil2026-10-18
1006India2026-10-24
1007Brazil2026-09-29
1008France2026-10-16
1009Canada2026-10-16
1010Japan2026-10-20
1011United Kingdom2026-10-16
1012Canada2026-10-20
1013Australia2026-10-21
1014Spain2026-10-19
1015Italy2026-10-07
1016Canada2026-10-19
1017Brazil2026-10-25
1018Japan2026-10-18
1019Argentina2026-10-10
1020Brazil2026-09-28
1021Australia2026-09-28
1022Germany2026-10-07
1023Japan2026-09-30
1024Germany2026-10-13
1025France2026-10-25
1026Japan2026-10-02
1027Russia2026-09-27
1028Brazil2026-10-10
1029Brazil2026-10-05
1030Russia2026-10-21
1031India2026-10-05
1032Italy2026-10-17
1033Germany2026-10-25
1034France2026-10-19
1035Italy2026-10-15
1036Japan2026-09-27
1037Italy2026-10-15
1038Brazil2026-10-07
1039Japan2026-10-18
1040Australia2026-10-09
1041Russia2026-10-23
1042India2026-10-13
1043Brazil2026-10-21
1044Germany2026-10-09
1045United Kingdom2026-10-19
1046Italy2026-10-25
1047Italy2026-10-14
1048Canada2026-09-30
1049Italy2026-10-13

On-Demand Data

NameIdCountryDate
Tony F Nicka1000Brazil2026-10-06
Claire X Albares1001Australia2026-10-16
Stacey F Gaucho1002Japan2026-10-07
Claire W Iturbide1003Argentina2026-10-14
David Q Iturbide1004Germany2026-10-17
Mayumi A Schemmer1005United Kingdom2026-10-22
Claire U Inouye1006Germany2026-09-27
Leon W Rim1007Spain2026-09-27
Julie L Gillian1008Spain2026-10-18
Clifford B Caudy1009India2026-10-19
Nicolas T Sergi1010Argentina2026-10-14
Julie J Caudy1011Japan2026-10-21
David P Nestle1012Germany2026-10-25
Kadeem Y Stenseth1013United Kingdom2026-10-10
Aruna Z Rim1014Australia2026-10-08
Aika H Ostrosky1015Russia2026-10-03
Emily Q Stockham1016Italy2026-10-07
Nicolas C Garufi1017Spain2026-10-02
Jennifer Q Caldarera1018Canada2026-10-17
Jeanfrancois F Gaucho1019Russia2026-10-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams Q GillianArgentinaStephen Shaw NEW
Juan M FerenczIndiaIoni Bowcher NEW
Juan D MorascaUnited KingdomBernardo Dominic NEGOTIATION
James Z MarrierGermanyAmy Elsner NEGOTIATION
Leja N SaylorsUnited KingdomOnyama Limba RENEWAL
Cody I AmigonBrazilXuxue Feng UNQUALIFIED
Aruna Q BowleyArgentinaOnyama Limba UNQUALIFIED
Isabel A StockhamFranceElwin Sharvill PROPOSAL
Wickens S ButtAustraliaXuxue Feng NEGOTIATION
James P CaudyAustraliaAmy Elsner NEW
Smith I MorascaJapanBernardo Dominic UNQUALIFIED
Johnson V CaudyCanadaAsiya Javayant UNQUALIFIED
Antonio X KolmetzUnited KingdomAnna Fali UNQUALIFIED
Aika M StensethSpainElwin Sharvill UNQUALIFIED
Octavia Q MarrierFranceIvan Magalhaes UNQUALIFIED
Kadeem D SergiGermanyOnyama Limba PROPOSAL
Aruna N ButtGermanyElwin Sharvill NEGOTIATION
Leon J StensethRussiaElwin Sharvill PROPOSAL
Aditya S SlusarskiIndiaXuxue Feng QUALIFIED
Ashley L DoeUnited KingdomIoni Bowcher NEW
Kadeem N RulapaughJapanBernardo Dominic NEW
Claire Q GarufiIndiaStephen Shaw QUALIFIED
Smith H SaylorsFranceStephen Shaw QUALIFIED
David Z BologniaIndiaAnna Fali PROPOSAL
Ricardo A CampainRussiaAnna Fali UNQUALIFIED
Jeanfrancois T FigeroaFranceAmy Elsner RENEWAL
Stacey W GillianBrazilElwin Sharvill RENEWAL
Jones V SergiArgentinaAnna Fali RENEWAL
Ricardo S PoquetteBrazilAmy Elsner PROPOSAL
Maria A NestleBrazilStephen Shaw UNQUALIFIED
Wickens N GauchoIndiaElwin Sharvill UNQUALIFIED
Jones Q ChuiArgentinaAmy Elsner RENEWAL
Nicolas F VenereIndiaAsiya Javayant NEGOTIATION
Morrow E CaldareraItalyOnyama Limba QUALIFIED
Smith T ChuiFranceStephen Shaw UNQUALIFIED
Nicolas C KuskoRussiaElwin Sharvill RENEWAL
Mayumi L AlbaresAustraliaElwin Sharvill NEGOTIATION
Nicolas R BologniaIndiaElwin Sharvill QUALIFIED
Juan R FigeroaJapanElwin Sharvill PROPOSAL
Arvin E NickaItalyIvan 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>