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
Mujtaba T MaletJapanIvan Magalhaes QUALIFIED
Leon J NickaCanadaAnna Fali PROPOSAL
Munro I WieserItalyXuxue Feng QUALIFIED
Jefferson Z MarrierRussiaStephen Shaw PROPOSAL
Francesco Z ChuiFranceAnna Fali UNQUALIFIED
Murillo J MaletRussiaAnna Fali PROPOSAL
Jennifer B AmigonFranceBernardo Dominic UNQUALIFIED
Mayumi E ChuiSpainStephen Shaw NEGOTIATION
Antonio R GauchoUnited KingdomStephen Shaw QUALIFIED
Mujtaba W CaldareraBrazilXuxue Feng PROPOSAL
Rodrigues T GillianSpainXuxue Feng NEGOTIATION
Leja R DoeBrazilElwin Sharvill PROPOSAL
Misaki X WaycottItalyOnyama Limba QUALIFIED
Antonio L GillianJapanAnna Fali NEW
Claire O SaylorsGermanyXuxue Feng NEW
Jeanfrancois F VocelkaUnited KingdomAnna Fali NEW
Faith M ShinkoRussiaIvan Magalhaes QUALIFIED
Misaki T MorascaBrazilIoni Bowcher RENEWAL
Octavia J GillianItalyBernardo Dominic UNQUALIFIED
Arvin I TollnerBrazilAnna Fali NEW
Wickens T StensethAustraliaAsiya Javayant PROPOSAL
Misaki Y BriddickArgentinaElwin Sharvill RENEWAL
Chavez K MaletUnited KingdomOnyama Limba NEGOTIATION
Aruna W GauchoAustraliaXuxue Feng QUALIFIED
Leon S RoysterRussiaAsiya Javayant NEGOTIATION
Adams I CampainSpainAnna Fali QUALIFIED
Maria A RutaGermanyIoni Bowcher NEGOTIATION
Cody E PerinUnited KingdomStephen Shaw PROPOSAL
Emily P StensethRussiaAsiya Javayant NEW
Clifford H MaletRussiaBernardo Dominic RENEWAL
Aruna I NestleBrazilAmy Elsner PROPOSAL
Morrow N FigeroaRussiaAmy Elsner PROPOSAL
Izzy L TollnerBrazilBernardo Dominic RENEWAL
Octavia S FollerArgentinaBernardo Dominic PROPOSAL
Salvatore U MaletSpainAsiya Javayant PROPOSAL
Cody O WaycottSpainXuxue Feng UNQUALIFIED
Costa P CaldareraUnited KingdomElwin Sharvill QUALIFIED
James K StensethSpainXuxue Feng NEW
Ivar Z FlosiAustraliaIoni Bowcher QUALIFIED
Alejandro L OstroskySpainIvan Magalhaes QUALIFIED
Greenwood N GauchoArgentinaBernardo Dominic RENEWAL
Jennifer Z KolmetzBrazilOnyama Limba NEW
Antonio E SaylorsFranceXuxue Feng NEW
Alejandro A IturbideBrazilOnyama Limba NEGOTIATION
Mujtaba I PoquetteCanadaIvan Magalhaes RENEWAL
Ivar M FollerCanadaStephen Shaw RENEWAL
Julie A BowleyItalyOnyama Limba UNQUALIFIED
Aruna F OldroydAustraliaOnyama Limba QUALIFIED
Rodrigues R FollerFranceBernardo Dominic QUALIFIED
Rodrigues H GauchoIndiaIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Ivar W BriddickAustraliaXuxue Feng RENEWAL
Jeanfrancois P MarrierBrazilOnyama Limba NEGOTIATION
Munro B GlickUnited KingdomXuxue Feng UNQUALIFIED
Johnson A SergiBrazilBernardo Dominic NEW
Silvio F MarrierItalyXuxue Feng UNQUALIFIED
Greenwood J ShinkoGermanyStephen Shaw RENEWAL
Jennifer F CaudyArgentinaOnyama Limba NEW
Emily W StockhamGermanyOnyama Limba UNQUALIFIED
Julie P SaylorsFranceElwin Sharvill NEGOTIATION
Emily O GlickIndiaStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues H SergiSpain2026-10-01Rousseaux, Michael Esq NEW91Ioni Bowcher
1001Maisha J FerenczIndia2026-10-18Chanay, Jeffrey A Esq RENEWAL98Ioni Bowcher
1002Wickens J FollerUnited Kingdom2026-10-01Chapman, Ross E Esq NEGOTIATION71Bernardo Dominic
1003Rodrigues S TollnerFrance2026-09-30Benton, John B Jr PROPOSAL81Onyama Limba
1004Greenwood I AmigonSpain2026-10-05Chanay, Jeffrey A Esq UNQUALIFIED31Anna Fali
1005Cody F MaletSpain2026-10-25Chemel, James L Cpa UNQUALIFIED23Asiya Javayant
1006Antonio U MaletUnited Kingdom2026-10-18Feltz Printing Service NEGOTIATION39Xuxue Feng
1007Aditya O PerinArgentina2026-10-05Chapman, Ross E Esq PROPOSAL79Amy Elsner
1008David S CampainUnited Kingdom2026-10-26Rangoni Of Florence UNQUALIFIED13Bernardo Dominic
1009Maria I AlbaresItaly2026-10-02Rangoni Of Florence NEW11Amy Elsner
1010Izzy K RulapaughUnited Kingdom2026-10-12Rousseaux, Michael Esq RENEWAL36Stephen Shaw
1011Ivar V DarakjyItaly2026-10-05Morlong Associates PROPOSAL97Ioni Bowcher
1012Cody I MorascaAustralia2026-10-28Chemel, James L Cpa NEW96Onyama Limba
1013Adams B PaprockiAustralia2026-10-21Benton, John B Jr RENEWAL46Amy Elsner
1014Julie X AlbaresUnited Kingdom2026-10-04Buckley Miller Wright NEGOTIATION12Asiya Javayant
1015Costa I AlbaresBrazil2026-10-05Rousseaux, Michael Esq QUALIFIED57Ioni Bowcher
1016Wickens X NestleGermany2026-10-26Chanay, Jeffrey A Esq PROPOSAL2Xuxue Feng
1017Maria X SlusarskiGermany2026-10-28Feiner Bros RENEWAL69Ioni Bowcher
1018Darci J WieserIndia2026-10-27King, Christopher A Esq NEGOTIATION58Ioni Bowcher
1019Mujtaba J AmigonFrance2026-10-11Benton, John B Jr UNQUALIFIED15Bernardo Dominic
1020Francesco O WaycottJapan2026-10-02Rousseaux, Michael Esq NEW89Amy Elsner
1021Darci A TollnerFrance2026-10-19Commercial Press NEW11Bernardo Dominic
1022Antonio P ShinkoArgentina2026-10-23Printing Dimensions NEGOTIATION54Asiya Javayant
1023Munro X MaletUnited Kingdom2026-10-22Morlong Associates UNQUALIFIED91Onyama Limba
1024Faith K GauchoSpain2026-10-01Chanay, Jeffrey A Esq RENEWAL39Xuxue Feng
1025Claire Z SaylorsItaly2026-10-18Benton, John B Jr NEW93Onyama Limba
1026Julie B VocelkaIndia2026-10-28Rangoni Of Florence PROPOSAL94Stephen Shaw
1027Francesco P InouyeGermany2026-10-26Truhlar And Truhlar Attys PROPOSAL3Amy Elsner
1028Nicolas S AlbaresSpain2026-10-01Feltz Printing Service PROPOSAL9Ioni Bowcher
1029Juan L WieserCanada2026-10-02Chemel, James L Cpa NEGOTIATION80Xuxue Feng
1030Salvatore T WaycottGermany2026-10-04Chapman, Ross E Esq RENEWAL24Anna Fali
1031Mayumi V AmigonSpain2026-10-20Morlong Associates RENEWAL18Amy Elsner
1032Isabel C BowleyBrazil2026-10-15Chemel, James L Cpa RENEWAL6Anna Fali
1033Smith U RimCanada2026-10-13Rangoni Of Florence PROPOSAL58Anna Fali
1034Mayumi V CampainItaly2026-10-01Feiner Bros RENEWAL2Asiya Javayant
1035David Q SergiAustralia2026-10-16Rousseaux, Michael Esq PROPOSAL25Asiya Javayant
1036Kaitlin D MaletItaly2026-10-07Morlong Associates RENEWAL53Ivan Magalhaes
1037Kadeem R DilliardBrazil2026-10-07Buckley Miller Wright PROPOSAL35Ioni Bowcher
1038Ivar W IturbideRussia2026-10-23Rousseaux, Michael Esq UNQUALIFIED73Amy Elsner
1039Silvio Q InouyeRussia2026-10-10Rousseaux, Michael Esq UNQUALIFIED44Elwin Sharvill
1040Costa F DoeGermany2026-10-06Chemel, James L Cpa PROPOSAL11Xuxue Feng
1041Isabel D NickaCanada2026-10-27Printing Dimensions PROPOSAL72Xuxue Feng
1042Antonio F GauchoFrance2026-10-19Chanay, Jeffrey A Esq PROPOSAL81Xuxue Feng
1043Maisha B KolmetzCanada2026-09-30Chemel, James L Cpa NEW35Xuxue Feng
1044Wickens B NickaJapan2026-10-20Chapman, Ross E Esq NEW42Bernardo Dominic
1045Rodrigues I GlickFrance2026-10-05Morlong Associates NEW39Stephen Shaw
1046Smith M AmigonBrazil2026-10-02Benton, John B Jr RENEWAL80Elwin Sharvill
1047Antonio P MacleadAustralia2026-10-08Commercial Press QUALIFIED0Ioni Bowcher
1048Costa N CaldareraFrance2026-10-19Truhlar And Truhlar Attys NEW69Stephen Shaw
1049Maisha Y KolmetzBrazil2026-10-20Truhlar And Truhlar Attys RENEWAL3Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Alejandro N MarrierAustraliaElwin Sharvill NEW
Ricardo Z GauchoGermanyElwin Sharvill NEW
Nicolas Q BologniaItalyAsiya Javayant UNQUALIFIED
Ashley Y OldroydBrazilXuxue Feng UNQUALIFIED
Leon W VocelkaJapanOnyama Limba RENEWAL
Kaitlin C FlosiBrazilOnyama Limba UNQUALIFIED
James B VocelkaSpainElwin Sharvill QUALIFIED
Aruna P RulapaughCanadaBernardo Dominic NEW
Greenwood V WieserFranceBernardo Dominic NEW
Cody I WieserFranceAmy Elsner NEW
Ricardo Z StensethIndiaAnna Fali NEGOTIATION
Cody C ButtRussiaOnyama Limba QUALIFIED
Nicolas L SaylorsSpainAnna Fali PROPOSAL
Leja V GarufiCanadaStephen Shaw NEGOTIATION
Maisha S RoysterFranceIoni Bowcher NEW
Julie O AmigonBrazilIvan Magalhaes RENEWAL
Deepesh F BologniaFranceAsiya Javayant RENEWAL
Adams M FigeroaJapanIvan Magalhaes UNQUALIFIED
Jeanfrancois E WaycottAustraliaAmy Elsner PROPOSAL
Morrow O PerinItalyOnyama Limba RENEWAL
Maria Z FigeroaSpainAsiya Javayant NEW
Jefferson Z NickaAustraliaIoni Bowcher NEGOTIATION
Arvin U StockhamIndiaIvan Magalhaes QUALIFIED
Jennifer P PerinSpainIvan Magalhaes PROPOSAL
Emily Z NickaJapanIoni Bowcher NEW
Aika D SlusarskiItalyIvan Magalhaes QUALIFIED
Leon B KuskoCanadaAnna Fali UNQUALIFIED
Misaki D RimIndiaAsiya Javayant RENEWAL
Tony E CaldareraUnited KingdomAmy Elsner RENEWAL
Aditya L FlosiJapanAsiya Javayant UNQUALIFIED
Smith K SlusarskiUnited KingdomElwin Sharvill QUALIFIED
Cody X MarrierAustraliaAsiya Javayant UNQUALIFIED
Sinclair E FerenczBrazilIvan Magalhaes RENEWAL
Aditya T DarakjyJapanIvan Magalhaes NEGOTIATION
Deepesh L BriddickGermanyAsiya Javayant NEW
Smith M BowleyArgentinaXuxue Feng PROPOSAL
Claire S IturbideBrazilXuxue Feng UNQUALIFIED
Jefferson Y GlickUnited KingdomBernardo Dominic NEGOTIATION
David M IturbideRussiaAnna Fali UNQUALIFIED
Jefferson C RulapaughIndiaAmy Elsner NEW
Maria Z NickaAustraliaElwin Sharvill QUALIFIED
Izzy B StensethSpainAmy Elsner QUALIFIED
Jeanfrancois X KuskoCanadaIvan Magalhaes PROPOSAL
Munro A TollnerAustraliaStephen Shaw NEW
Claire M StensethIndiaElwin Sharvill RENEWAL
Clifford Q RoysterBrazilAmy Elsner NEGOTIATION
Alejandro O CaldareraBrazilXuxue Feng PROPOSAL
Johnson R SlusarskiJapanAmy Elsner NEGOTIATION
Octavia G MaletCanadaStephen Shaw UNQUALIFIED
Rodrigues U PerinRussiaElwin Sharvill PROPOSAL
Frozen Columns
Name
Munro Y Nicka
Jeanfrancois C Vocelka
Costa U Perin
Aditya O Glick
Silvio G Malet
Izzy I Figeroa
Cody S Amigon
Murillo T Malet
Tony A Whobrey
Nicolas G Inouye
Kaitlin L Chui
Chavez S Tollner
Ivar D Caldarera
Murillo W Vocelka
Murillo L Malet
Greenwood D Campain
Leon U Kusko
Kadeem U Stenseth
Costa Y Tollner
Munro D Maclead
Aika J Malet
Aditya Q Malet
Salvatore A Butt
Costa K Schemmer
Leon E Inouye
Leja R Morasca
Aika F Perin
Rodrigues V Kusko
Cody L Stockham
Isabel A Rim
Leon Z Saylors
Rodrigues T Iturbide
Adams H Foller
Adams U Waycott
Julie I Iturbide
Jeanfrancois K Rim
Johnson G Shinko
Smith Q Rulapaugh
Cody Y Malet
Jeanfrancois F Ostrosky
Munro L Dilliard
Claire U Ruta
Wickens O Foller
James P Malet
Adams D Garufi
Cody S Stockham
Adams L Butt
Isabel E Flosi
Deepesh B Poquette
Adams A Stockham
IdCountryDate
1000Russia2026-10-23
1001France2026-10-10
1002Canada2026-10-24
1003India2026-09-29
1004Russia2026-10-27
1005Australia2026-10-08
1006France2026-10-05
1007Brazil2026-10-26
1008Canada2026-10-10
1009Russia2026-10-16
1010Argentina2026-10-27
1011Russia2026-10-13
1012Canada2026-10-11
1013Australia2026-09-30
1014Spain2026-10-17
1015France2026-10-16
1016Spain2026-10-26
1017India2026-10-20
1018Canada2026-10-03
1019Australia2026-10-08
1020Germany2026-10-06
1021Australia2026-10-24
1022Spain2026-10-09
1023United Kingdom2026-10-15
1024France2026-10-14
1025Australia2026-09-29
1026France2026-10-15
1027United Kingdom2026-10-20
1028Italy2026-10-10
1029United Kingdom2026-10-04
1030United Kingdom2026-10-23
1031Brazil2026-10-04
1032Japan2026-10-01
1033United Kingdom2026-10-23
1034Australia2026-10-04
1035France2026-10-11
1036Russia2026-10-23
1037Germany2026-10-03
1038Argentina2026-10-08
1039Canada2026-10-15
1040Germany2026-10-04
1041United Kingdom2026-10-13
1042France2026-10-09
1043Canada2026-10-14
1044Argentina2026-10-15
1045India2026-10-08
1046Canada2026-10-24
1047Canada2026-10-04
1048France2026-10-04
1049Argentina2026-10-17

On-Demand Data

NameIdCountryDate
Faith Y Dilliard1000Japan2026-10-16
Greenwood Q Vocelka1001Germany2026-10-26
Ashley U Iturbide1002India2026-10-28
Alejandro I Ruta1003Italy2026-10-11
Chavez S Bowley1004India2026-09-29
Cody M Nicka1005France2026-10-19
Aditya Q Malet1006Canada2026-10-10
Darci S Ruta1007United Kingdom2026-10-28
Sinclair G Wieser1008Australia2026-10-19
Murillo W Vocelka1009Italy2026-10-25
Murillo Q Vocelka1010France2026-10-21
Maisha M Vocelka1011Brazil2026-10-01
Silvio P Morasca1012Australia2026-10-02
Ivar L Ruta1013Argentina2026-10-09
Morrow V Amigon1014India2026-10-23
Murillo J Rulapaugh1015Spain2026-10-15
Deepesh G Nicka1016Canada2026-10-17
Munro E Shinko1017Argentina2026-10-24
Alejandro I Garufi1018Argentina2026-10-22
Wickens T Gaucho1019Canada2026-10-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel A KolmetzAustraliaOnyama Limba PROPOSAL
Johnson U StockhamJapanOnyama Limba QUALIFIED
Emily V FigeroaGermanyStephen Shaw UNQUALIFIED
Greenwood A OstroskySpainElwin Sharvill QUALIFIED
Juan W ShinkoFranceIoni Bowcher NEGOTIATION
Darci F AmigonUnited KingdomBernardo Dominic RENEWAL
Greenwood B RutaSpainOnyama Limba QUALIFIED
Claire E WaycottItalyAmy Elsner NEW
Jefferson J AlbaresAustraliaIvan Magalhaes PROPOSAL
Salvatore I BowleyAustraliaIoni Bowcher NEW
Mujtaba F CaldareraAustraliaElwin Sharvill NEGOTIATION
James Z OldroydSpainAsiya Javayant QUALIFIED
Jones F SaylorsIndiaAsiya Javayant PROPOSAL
Leja Q OldroydGermanyAnna Fali UNQUALIFIED
Darci N RulapaughIndiaAnna Fali NEW
Deepesh X KuskoIndiaBernardo Dominic NEGOTIATION
Clifford Y MorascaRussiaIoni Bowcher UNQUALIFIED
Adams G BriddickArgentinaAsiya Javayant QUALIFIED
James N OstroskyFranceStephen Shaw PROPOSAL
David C MaletAustraliaXuxue Feng NEGOTIATION
Aditya J MacleadIndiaAnna Fali PROPOSAL
Stacey V GarufiGermanyIvan Magalhaes NEGOTIATION
Rodrigues Q MacleadArgentinaOnyama Limba NEW
Kaitlin A KolmetzArgentinaStephen Shaw PROPOSAL
Kadeem N BowleyIndiaXuxue Feng PROPOSAL
Mayumi X CaudyCanadaElwin Sharvill NEW
Kaitlin Z GlickIndiaStephen Shaw RENEWAL
Aruna T RutaCanadaAnna Fali PROPOSAL
Jeanfrancois G OldroydIndiaAnna Fali UNQUALIFIED
Murillo B TollnerAustraliaXuxue Feng NEGOTIATION
Sinclair E WaycottJapanAnna Fali RENEWAL
Emily A WieserGermanyIoni Bowcher PROPOSAL
Clifford O SlusarskiBrazilAsiya Javayant NEW
Izzy R InouyeUnited KingdomAmy Elsner NEGOTIATION
Murillo K MorascaIndiaIoni Bowcher NEW
Greenwood S ChuiIndiaXuxue Feng QUALIFIED
Aika H FerenczSpainXuxue Feng RENEWAL
Antonio J BologniaCanadaAmy Elsner UNQUALIFIED
Jefferson L DoeItalyXuxue Feng NEGOTIATION
Munro C InouyeIndiaAsiya Javayant RENEWAL

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