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 G GauchoFranceAmy Elsner UNQUALIFIED
Jeanfrancois B FollerAustraliaStephen Shaw PROPOSAL
Ricardo V FlosiArgentinaAnna Fali NEW
Wickens M DarakjyUnited KingdomAmy Elsner PROPOSAL
Nicolas Q BriddickBrazilIoni Bowcher PROPOSAL
Maisha B PerinBrazilBernardo Dominic UNQUALIFIED
Kadeem O OstroskySpainIoni Bowcher UNQUALIFIED
Jefferson B KuskoRussiaIoni Bowcher PROPOSAL
Izzy B NestleUnited KingdomStephen Shaw QUALIFIED
Ricardo C RulapaughGermanyBernardo Dominic NEGOTIATION
Aika A ButtBrazilIvan Magalhaes RENEWAL
Mujtaba L RoysterRussiaStephen Shaw PROPOSAL
Morrow Q NickaUnited KingdomIvan Magalhaes RENEWAL
Misaki V SaylorsBrazilAnna Fali PROPOSAL
Leja T GillianFranceElwin Sharvill RENEWAL
Aditya X KolmetzFranceXuxue Feng QUALIFIED
Jefferson J PaprockiAustraliaBernardo Dominic NEGOTIATION
Morrow B SaylorsGermanyOnyama Limba NEGOTIATION
Leja P RimItalyXuxue Feng PROPOSAL
Leon D BriddickArgentinaOnyama Limba NEW
Cody N DoeJapanIoni Bowcher NEGOTIATION
Jefferson P RimCanadaAsiya Javayant NEGOTIATION
Aditya J WhobreyBrazilStephen Shaw UNQUALIFIED
Alejandro H MorascaGermanyIoni Bowcher UNQUALIFIED
Faith G ButtJapanOnyama Limba NEW
Izzy J OldroydCanadaBernardo Dominic NEW
Octavia H OldroydIndiaAsiya Javayant RENEWAL
Morrow O RoysterSpainAmy Elsner UNQUALIFIED
Juan I WieserRussiaAmy Elsner PROPOSAL
Silvio Y DoeJapanAnna Fali PROPOSAL
Kaitlin L RutaAustraliaXuxue Feng NEW
Clifford P RimUnited KingdomElwin Sharvill NEGOTIATION
Jefferson R InouyeAustraliaAnna Fali QUALIFIED
Deepesh Y TollnerRussiaBernardo Dominic NEW
Maisha L SlusarskiUnited KingdomAnna Fali PROPOSAL
Leja E FollerCanadaBernardo Dominic UNQUALIFIED
Alejandro F BowleyJapanStephen Shaw QUALIFIED
Jeanfrancois K VocelkaJapanAsiya Javayant NEW
Maria T WhobreyItalyOnyama Limba NEW
Costa C AlbaresGermanyAmy Elsner UNQUALIFIED
Greenwood L PaprockiBrazilAmy Elsner NEGOTIATION
Jeanfrancois O SlusarskiAustraliaAsiya Javayant NEGOTIATION
Julie X OstroskyFranceXuxue Feng PROPOSAL
Morrow N VenereSpainAnna Fali QUALIFIED
Misaki J CampainArgentinaAsiya Javayant PROPOSAL
Cody S BriddickItalyAmy Elsner NEGOTIATION
Jeanfrancois I PoquetteArgentinaAsiya Javayant QUALIFIED
Maria V GlickItalyIoni Bowcher RENEWAL
Chavez N BologniaUnited KingdomStephen Shaw PROPOSAL
Maisha Q MorascaJapanAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Murillo M ButtUnited KingdomBernardo Dominic UNQUALIFIED
Jeanfrancois T FerenczJapanBernardo Dominic PROPOSAL
Cody M CaudyAustraliaAnna Fali PROPOSAL
Leja I SchemmerItalyAmy Elsner QUALIFIED
Octavia X RimUnited KingdomXuxue Feng UNQUALIFIED
Leja X NickaArgentinaIvan Magalhaes UNQUALIFIED
Tony Y StockhamSpainIvan Magalhaes QUALIFIED
Maria R RulapaughUnited KingdomAnna Fali NEGOTIATION
Salvatore Q MarrierRussiaAnna Fali PROPOSAL
Sinclair D TollnerIndiaElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon I PoquetteAustralia2026-09-13Feltz Printing Service NEW89Ioni Bowcher
1001Adams I TollnerSpain2026-09-27Rousseaux, Michael Esq NEGOTIATION83Amy Elsner
1002Maisha N ChuiSpain2026-08-31Buckley Miller Wright NEGOTIATION21Onyama Limba
1003Kaitlin W GauchoUnited Kingdom2026-09-14Rousseaux, Michael Esq QUALIFIED97Amy Elsner
1004Adams J RimAustralia2026-09-15Commercial Press RENEWAL82Anna Fali
1005Cody K SlusarskiJapan2026-09-03Commercial Press PROPOSAL36Amy Elsner
1006Sinclair N PerinBrazil2026-09-03Buckley Miller Wright NEGOTIATION75Anna Fali
1007Jones H KolmetzCanada2026-09-06Rousseaux, Michael Esq QUALIFIED59Onyama Limba
1008Arvin X IturbideCanada2026-09-04Buckley Miller Wright RENEWAL61Xuxue Feng
1009Claire W WieserBrazil2026-09-01Chemel, James L Cpa RENEWAL5Onyama Limba
1010David A FlosiJapan2026-09-20Rousseaux, Michael Esq QUALIFIED26Amy Elsner
1011Francesco G RulapaughGermany2026-09-24Buckley Miller Wright UNQUALIFIED56Elwin Sharvill
1012Deepesh W InouyeJapan2026-09-13Commercial Press NEGOTIATION49Onyama Limba
1013Isabel C SergiIndia2026-09-29Chanay, Jeffrey A Esq UNQUALIFIED65Bernardo Dominic
1014Murillo D IturbideSpain2026-08-31Benton, John B Jr NEGOTIATION52Ivan Magalhaes
1015Ashley W NestleBrazil2026-09-21Chanay, Jeffrey A Esq NEGOTIATION99Elwin Sharvill
1016Mayumi T RoysterBrazil2026-09-01Chapman, Ross E Esq PROPOSAL33Xuxue Feng
1017Smith T KolmetzItaly2026-09-20Chemel, James L Cpa PROPOSAL44Onyama Limba
1018Jones C RutaUnited Kingdom2026-09-04Chanay, Jeffrey A Esq QUALIFIED7Anna Fali
1019Maria E GauchoItaly2026-09-29Rangoni Of Florence UNQUALIFIED42Asiya Javayant
1020Nicolas V AlbaresRussia2026-09-27Rousseaux, Michael Esq RENEWAL90Amy Elsner
1021Jennifer T CaldareraItaly2026-09-16Chemel, James L Cpa NEW5Xuxue Feng
1022Maisha O PaprockiGermany2026-09-17King, Christopher A Esq PROPOSAL38Stephen Shaw
1023Francesco Q NestleAustralia2026-09-22Printing Dimensions UNQUALIFIED64Ioni Bowcher
1024Octavia C CaldareraUnited Kingdom2026-09-02Truhlar And Truhlar Attys NEW64Ioni Bowcher
1025Claire B MaletUnited Kingdom2026-09-21Rangoni Of Florence RENEWAL2Ioni Bowcher
1026Smith M GlickIndia2026-09-16Chemel, James L Cpa QUALIFIED52Xuxue Feng
1027Aditya F VocelkaCanada2026-09-29Chanay, Jeffrey A Esq RENEWAL84Onyama Limba
1028Alejandro Q GauchoBrazil2026-09-25Rangoni Of Florence UNQUALIFIED94Ioni Bowcher
1029Cody H GlickGermany2026-09-23Buckley Miller Wright QUALIFIED46Ivan Magalhaes
1030Jennifer Y NestleCanada2026-09-29Feiner Bros UNQUALIFIED22Elwin Sharvill
1031Rodrigues D WhobreyAustralia2026-09-25Benton, John B Jr UNQUALIFIED18Ivan Magalhaes
1032Johnson U WaycottItaly2026-09-27Chanay, Jeffrey A Esq PROPOSAL90Bernardo Dominic
1033Darci W SchemmerUnited Kingdom2026-09-07Buckley Miller Wright NEW81Elwin Sharvill
1034Deepesh A CaudyCanada2026-09-20Commercial Press PROPOSAL89Amy Elsner
1035Arvin X OstroskyJapan2026-09-23Chanay, Jeffrey A Esq PROPOSAL22Bernardo Dominic
1036Wickens O NestleSpain2026-09-09Truhlar And Truhlar Attys RENEWAL18Stephen Shaw
1037Misaki B SaylorsBrazil2026-09-28Chanay, Jeffrey A Esq QUALIFIED88Xuxue Feng
1038Costa S ShinkoFrance2026-09-28Rangoni Of Florence NEW14Elwin Sharvill
1039Costa P StensethRussia2026-09-19Commercial Press RENEWAL50Bernardo Dominic
1040Ivar Q BriddickRussia2026-09-13Chemel, James L Cpa PROPOSAL86Ivan Magalhaes
1041Nicolas Y FollerSpain2026-09-23Commercial Press NEGOTIATION35Xuxue Feng
1042Wickens Q KolmetzFrance2026-09-06Printing Dimensions PROPOSAL56Ivan Magalhaes
1043Aika T GauchoJapan2026-09-21Chanay, Jeffrey A Esq UNQUALIFIED57Asiya Javayant
1044Sinclair Y CampainFrance2026-09-21Buckley Miller Wright RENEWAL87Bernardo Dominic
1045Rodrigues S PerinRussia2026-09-17Feiner Bros PROPOSAL77Asiya Javayant
1046Izzy J BriddickIndia2026-09-11Chanay, Jeffrey A Esq QUALIFIED56Amy Elsner
1047Maisha E GlickFrance2026-09-19Rangoni Of Florence QUALIFIED23Stephen Shaw
1048Maria D AmigonSpain2026-09-18Buckley Miller Wright NEW87Bernardo Dominic
1049Adams A WhobreyCanada2026-09-03Truhlar And Truhlar Attys PROPOSAL9Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Misaki T RulapaughBrazilAmy Elsner RENEWAL
Salvatore V NestleIndiaElwin Sharvill PROPOSAL
Emily E VenereSpainAnna Fali NEW
Francesco H IturbideUnited KingdomXuxue Feng NEW
Isabel C GarufiFranceXuxue Feng RENEWAL
Misaki W BologniaGermanyOnyama Limba PROPOSAL
Jennifer H StockhamJapanOnyama Limba RENEWAL
Murillo X RutaBrazilElwin Sharvill QUALIFIED
Rodrigues L ChuiRussiaElwin Sharvill NEGOTIATION
Jennifer J WhobreyGermanyBernardo Dominic UNQUALIFIED
Ashley O OldroydCanadaStephen Shaw QUALIFIED
Octavia C PaprockiItalyStephen Shaw QUALIFIED
David T MaletUnited KingdomAmy Elsner RENEWAL
Francesco M DilliardRussiaAsiya Javayant NEGOTIATION
Juan I PoquetteAustraliaXuxue Feng NEW
Julie X SergiSpainAsiya Javayant UNQUALIFIED
Salvatore B FollerArgentinaOnyama Limba QUALIFIED
Johnson Q TollnerRussiaAnna Fali UNQUALIFIED
Cody M CaldareraAustraliaAmy Elsner PROPOSAL
Greenwood E FigeroaBrazilIvan Magalhaes QUALIFIED
Wickens P DarakjyIndiaElwin Sharvill RENEWAL
Darci X FlosiFranceXuxue Feng NEGOTIATION
Rodrigues E DilliardUnited KingdomBernardo Dominic QUALIFIED
Jeanfrancois V KuskoBrazilIvan Magalhaes NEGOTIATION
Claire Y DoeArgentinaAsiya Javayant NEGOTIATION
Sinclair D FollerFranceXuxue Feng QUALIFIED
Darci Y AmigonArgentinaIoni Bowcher PROPOSAL
Alejandro N SaylorsArgentinaOnyama Limba RENEWAL
Aruna C NestleAustraliaXuxue Feng NEGOTIATION
Clifford C SlusarskiItalyAnna Fali NEW
Julie Q BriddickUnited KingdomAmy Elsner QUALIFIED
Claire T OstroskyItalyElwin Sharvill NEW
Johnson D MorascaGermanyStephen Shaw QUALIFIED
Juan B RoysterUnited KingdomAmy Elsner UNQUALIFIED
Munro T RimCanadaXuxue Feng NEGOTIATION
Jennifer S AmigonSpainBernardo Dominic UNQUALIFIED
Darci T FigeroaUnited KingdomStephen Shaw UNQUALIFIED
Juan K ButtCanadaBernardo Dominic NEW
Johnson H OstroskyRussiaBernardo Dominic QUALIFIED
Jones Q WhobreyUnited KingdomXuxue Feng NEW
Greenwood J MaletSpainAsiya Javayant NEGOTIATION
Maria N PerinItalyXuxue Feng RENEWAL
Silvio L InouyeUnited KingdomOnyama Limba QUALIFIED
Aruna V GlickArgentinaStephen Shaw RENEWAL
Aditya O MacleadArgentinaXuxue Feng PROPOSAL
Jennifer W ButtFranceElwin Sharvill PROPOSAL
Morrow Z CampainAustraliaIoni Bowcher QUALIFIED
Antonio Z NestleBrazilOnyama Limba QUALIFIED
Julie K BologniaItalyIvan Magalhaes RENEWAL
Maisha T OstroskyItalyIoni Bowcher NEW
Frozen Columns
Name
Greenwood B Whobrey
David O Albares
Maisha L Ruta
Maisha M Albares
Aika J Butt
Munro Z Amigon
Maisha G Foller
Deepesh H Shinko
Jennifer U Ruta
Smith X Bolognia
Stacey Z Butt
Murillo S Vocelka
Ivar H Flosi
Ashley Q Royster
Leon X Vocelka
Emily W Shinko
Emily J Shinko
Maisha R Dilliard
Johnson E Ostrosky
Antonio D Ruta
Wickens I Figeroa
Juan S Gaucho
Rodrigues I Butt
David N Nicka
Jeanfrancois Y Ruta
Julie C Ruta
Wickens O Rulapaugh
Munro U Chui
Chavez F Figeroa
Jefferson F Saylors
David M Schemmer
Clifford U Stockham
Salvatore A Butt
Julie W Flosi
Faith K Stenseth
Francesco K Doe
Jones X Oldroyd
Ashley W Morasca
Wickens E Perin
Morrow Q Foller
Ivar O Tollner
Johnson J Inouye
Ricardo H Shinko
Morrow C Chui
Aruna M Kolmetz
Juan G Iturbide
Johnson Y Gillian
Maria Q Doe
Jefferson V Amigon
Misaki S Glick
IdCountryDate
1000India2026-09-19
1001Japan2026-08-31
1002Germany2026-09-29
1003Germany2026-09-22
1004France2026-09-22
1005Spain2026-09-13
1006Italy2026-09-08
1007France2026-09-13
1008Argentina2026-09-08
1009India2026-09-02
1010Argentina2026-09-14
1011Japan2026-09-11
1012Spain2026-09-06
1013Australia2026-09-10
1014Canada2026-09-15
1015Germany2026-09-21
1016Germany2026-09-18
1017Canada2026-09-18
1018India2026-09-19
1019Italy2026-09-06
1020Japan2026-09-13
1021Argentina2026-09-19
1022Russia2026-09-23
1023Brazil2026-09-03
1024Canada2026-09-22
1025Canada2026-09-27
1026Russia2026-09-03
1027Brazil2026-09-16
1028Japan2026-09-03
1029Canada2026-09-18
1030India2026-08-31
1031India2026-09-23
1032Brazil2026-09-22
1033Canada2026-09-13
1034Argentina2026-09-06
1035Spain2026-09-18
1036Canada2026-09-12
1037Brazil2026-09-27
1038Argentina2026-08-31
1039Japan2026-09-08
1040Brazil2026-09-07
1041France2026-09-01
1042Russia2026-09-09
1043Japan2026-09-09
1044Canada2026-09-15
1045Argentina2026-09-08
1046Australia2026-09-15
1047Argentina2026-09-27
1048Italy2026-09-05
1049Australia2026-09-12

On-Demand Data

NameIdCountryDate
Izzy V Rim1000Russia2026-09-08
Maisha H Royster1001Spain2026-09-09
Arvin C Slusarski1002Russia2026-09-10
Alejandro C Venere1003Spain2026-09-28
Ricardo H Shinko1004Australia2026-09-12
Maria T Venere1005Germany2026-09-09
Morrow A Bolognia1006Japan2026-09-20
Octavia E Shinko1007France2026-09-29
Mujtaba A Malet1008Australia2026-09-23
Mujtaba A Kolmetz1009France2026-09-28
Cody R Morasca1010France2026-09-01
Kadeem S Morasca1011Spain2026-09-01
Julie C Briddick1012United Kingdom2026-09-15
Aditya C Bolognia1013Germany2026-09-04
Mayumi X Shinko1014Australia2026-09-09
Mayumi D Butt1015France2026-09-26
Aruna J Nicka1016Italy2026-09-24
Jeanfrancois D Oldroyd1017Australia2026-09-14
Leja R Ferencz1018Brazil2026-09-14
Mayumi K Butt1019Russia2026-09-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire A BriddickAustraliaIoni Bowcher QUALIFIED
Rodrigues C NickaBrazilAnna Fali RENEWAL
Greenwood C RutaItalyAsiya Javayant UNQUALIFIED
Francesco T ChuiSpainIvan Magalhaes QUALIFIED
Kadeem P CaudyArgentinaElwin Sharvill NEGOTIATION
Johnson P InouyeAustraliaXuxue Feng NEGOTIATION
David V WieserSpainIvan Magalhaes UNQUALIFIED
Johnson K MaletIndiaAnna Fali RENEWAL
James R DoeSpainStephen Shaw PROPOSAL
Maria L AmigonFranceOnyama Limba NEGOTIATION
Leon I PerinItalyIvan Magalhaes NEGOTIATION
Faith O MaletIndiaElwin Sharvill NEGOTIATION
Clifford O KolmetzItalyOnyama Limba NEGOTIATION
Antonio G StockhamUnited KingdomIvan Magalhaes UNQUALIFIED
Johnson O SaylorsIndiaAsiya Javayant UNQUALIFIED
Ashley C OstroskyAustraliaAmy Elsner NEW
Murillo U IturbideArgentinaAmy Elsner RENEWAL
Claire X TollnerIndiaAsiya Javayant RENEWAL
Jeanfrancois U FigeroaSpainBernardo Dominic QUALIFIED
Ricardo K MaletIndiaAnna Fali RENEWAL
Kadeem X MaletFranceOnyama Limba RENEWAL
Kadeem Z DoeJapanBernardo Dominic UNQUALIFIED
Julie Q FlosiCanadaXuxue Feng PROPOSAL
Ashley S KuskoIndiaXuxue Feng RENEWAL
Chavez F KolmetzFranceIoni Bowcher QUALIFIED
Juan H MacleadUnited KingdomOnyama Limba NEGOTIATION
Salvatore H SaylorsBrazilIoni Bowcher QUALIFIED
David I PoquetteJapanStephen Shaw QUALIFIED
Faith Q CaudyArgentinaElwin Sharvill NEGOTIATION
Stacey F PoquetteCanadaIvan Magalhaes NEW
Stacey G GillianSpainIvan Magalhaes NEW
Leja W WaycottArgentinaXuxue Feng QUALIFIED
Francesco M BowleyUnited KingdomAmy Elsner NEW
Faith V StensethSpainStephen Shaw PROPOSAL
Jeanfrancois T WaycottJapanXuxue Feng QUALIFIED
Francesco T GauchoGermanyElwin Sharvill PROPOSAL
Johnson R MaletAustraliaAsiya Javayant NEGOTIATION
Leja B WaycottBrazilXuxue Feng UNQUALIFIED
Morrow S ChuiCanadaStephen Shaw NEW
Smith L MaletSpainAmy Elsner 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>