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
Costa Z SergiItalyAnna Fali PROPOSAL
Ricardo Z PoquetteJapanStephen Shaw UNQUALIFIED
Adams Z IturbideRussiaBernardo Dominic NEGOTIATION
Juan N PaprockiBrazilElwin Sharvill UNQUALIFIED
Claire Q DarakjySpainXuxue Feng QUALIFIED
Francesco R MaletJapanAsiya Javayant NEGOTIATION
Morrow Z DarakjyGermanyStephen Shaw RENEWAL
Deepesh K WhobreyIndiaIoni Bowcher RENEWAL
Deepesh X BologniaGermanyAsiya Javayant UNQUALIFIED
Darci E MacleadRussiaIvan Magalhaes NEGOTIATION
Maisha M PaprockiSpainIoni Bowcher QUALIFIED
Salvatore I BriddickFranceAmy Elsner RENEWAL
Maisha T GlickFranceIoni Bowcher UNQUALIFIED
Kaitlin Q FollerCanadaOnyama Limba UNQUALIFIED
James F MaletJapanIoni Bowcher RENEWAL
Ashley L PaprockiAustraliaOnyama Limba PROPOSAL
Leon G CaudySpainAsiya Javayant QUALIFIED
Ivar R GillianFranceIvan Magalhaes RENEWAL
Alejandro M PoquetteSpainStephen Shaw RENEWAL
Wickens V ChuiGermanyStephen Shaw NEGOTIATION
Adams V FlosiRussiaXuxue Feng RENEWAL
Ivar A CaudyUnited KingdomAmy Elsner UNQUALIFIED
Silvio B InouyeJapanIoni Bowcher NEW
Maisha I OstroskyGermanyStephen Shaw RENEWAL
Greenwood W SchemmerBrazilElwin Sharvill RENEWAL
Jefferson A AmigonBrazilAsiya Javayant RENEWAL
Cody P FigeroaUnited KingdomOnyama Limba PROPOSAL
Faith I CaldareraIndiaXuxue Feng QUALIFIED
Leja Z GarufiAustraliaAnna Fali QUALIFIED
Murillo X DoeIndiaIoni Bowcher NEGOTIATION
Izzy R ShinkoSpainStephen Shaw QUALIFIED
Claire P MaletAustraliaIvan Magalhaes QUALIFIED
Silvio L NestleCanadaAnna Fali NEGOTIATION
Murillo W FerenczRussiaXuxue Feng RENEWAL
Francesco U RimUnited KingdomAsiya Javayant UNQUALIFIED
Costa R PerinUnited KingdomAmy Elsner UNQUALIFIED
Aruna U KuskoAustraliaXuxue Feng QUALIFIED
Ivar W VocelkaArgentinaAnna Fali NEW
Kaitlin Q GauchoUnited KingdomIoni Bowcher QUALIFIED
Leja J RutaBrazilElwin Sharvill UNQUALIFIED
Jefferson Q PoquetteArgentinaStephen Shaw PROPOSAL
Costa Q KolmetzAustraliaAsiya Javayant NEGOTIATION
Arvin O AlbaresArgentinaStephen Shaw UNQUALIFIED
Maria S FerenczCanadaOnyama Limba NEGOTIATION
Stacey J FlosiJapanElwin Sharvill NEGOTIATION
Leja E PerinItalyStephen Shaw RENEWAL
Silvio W BriddickItalyIvan Magalhaes UNQUALIFIED
Aika T VenereIndiaAmy Elsner QUALIFIED
Jennifer G FigeroaBrazilAmy Elsner QUALIFIED
Izzy P GarufiSpainBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria L FollerUnited KingdomIvan Magalhaes PROPOSAL
Isabel H FollerIndiaIvan Magalhaes UNQUALIFIED
Deepesh K MarrierSpainStephen Shaw NEGOTIATION
Aditya R RulapaughSpainAmy Elsner QUALIFIED
James X FollerArgentinaIvan Magalhaes PROPOSAL
Chavez K PerinIndiaIoni Bowcher NEGOTIATION
Faith X AmigonGermanyBernardo Dominic RENEWAL
Claire L GauchoUnited KingdomOnyama Limba QUALIFIED
Antonio M GauchoUnited KingdomBernardo Dominic PROPOSAL
Arvin Q DilliardArgentinaAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas R MarrierSpain2026-10-09Commercial Press NEW49Stephen Shaw
1001Jones Z RoysterGermany2026-10-09Feiner Bros NEGOTIATION77Asiya Javayant
1002Darci U NestleFrance2026-10-25Dorl, James J Esq NEW70Asiya Javayant
1003Jennifer E StensethJapan2026-10-09Printing Dimensions NEW73Asiya Javayant
1004Chavez E VenereJapan2026-10-10Dorl, James J Esq QUALIFIED59Stephen Shaw
1005Julie A KolmetzSpain2026-10-07Dorl, James J Esq RENEWAL28Ivan Magalhaes
1006Wickens Q WaycottRussia2026-10-21Feltz Printing Service RENEWAL47Xuxue Feng
1007Aditya T DoeUnited Kingdom2026-10-11Chapman, Ross E Esq NEW29Bernardo Dominic
1008Leon V CaudyJapan2026-10-14Chemel, James L Cpa PROPOSAL0Amy Elsner
1009Julie Y TollnerArgentina2026-09-26Feiner Bros QUALIFIED68Anna Fali
1010Tony J DarakjyIndia2026-09-28Feltz Printing Service RENEWAL41Asiya Javayant
1011Chavez B DilliardAustralia2026-10-24Chemel, James L Cpa RENEWAL69Onyama Limba
1012Smith Y OstroskyIndia2026-10-05Chanay, Jeffrey A Esq UNQUALIFIED56Amy Elsner
1013Ivar D IturbideArgentina2026-10-11Rousseaux, Michael Esq UNQUALIFIED94Bernardo Dominic
1014Morrow H GillianAustralia2026-10-14Truhlar And Truhlar Attys QUALIFIED38Onyama Limba
1015Adams L StensethRussia2026-09-30Chapman, Ross E Esq NEW12Ivan Magalhaes
1016Salvatore V FigeroaCanada2026-10-18Buckley Miller Wright UNQUALIFIED49Ioni Bowcher
1017Costa J SchemmerIndia2026-10-24Dorl, James J Esq NEW71Ivan Magalhaes
1018Juan G IturbideSpain2026-10-23Truhlar And Truhlar Attys UNQUALIFIED50Anna Fali
1019Aika H NickaFrance2026-10-07Dorl, James J Esq RENEWAL52Ivan Magalhaes
1020Wickens P VenereRussia2026-10-05Benton, John B Jr UNQUALIFIED87Stephen Shaw
1021Silvio R PerinAustralia2026-10-05Benton, John B Jr RENEWAL96Amy Elsner
1022Francesco T AmigonSpain2026-10-23Truhlar And Truhlar Attys NEGOTIATION95Onyama Limba
1023Johnson O CaldareraAustralia2026-09-30Feiner Bros UNQUALIFIED50Asiya Javayant
1024Jones T KolmetzArgentina2026-10-05Morlong Associates UNQUALIFIED5Ivan Magalhaes
1025Kaitlin H DoeArgentina2026-09-30Commercial Press QUALIFIED55Anna Fali
1026Kadeem V ChuiAustralia2026-09-27Rousseaux, Michael Esq UNQUALIFIED8Bernardo Dominic
1027Ashley O CampainGermany2026-10-21Printing Dimensions UNQUALIFIED0Xuxue Feng
1028Ricardo U MarrierFrance2026-10-13Truhlar And Truhlar Attys PROPOSAL78Ioni Bowcher
1029Mujtaba F VocelkaAustralia2026-10-07Rousseaux, Michael Esq PROPOSAL3Elwin Sharvill
1030Aruna W BologniaUnited Kingdom2026-10-25King, Christopher A Esq RENEWAL7Ivan Magalhaes
1031Alejandro C GarufiIndia2026-10-24Dorl, James J Esq QUALIFIED38Anna Fali
1032Morrow G RulapaughJapan2026-10-08Buckley Miller Wright NEW37Ioni Bowcher
1033Misaki B GillianRussia2026-10-08Chapman, Ross E Esq NEW20Ivan Magalhaes
1034Munro P TollnerJapan2026-10-23Morlong Associates RENEWAL93Bernardo Dominic
1035Antonio Y GauchoUnited Kingdom2026-10-21Dorl, James J Esq UNQUALIFIED55Amy Elsner
1036David I PoquetteRussia2026-09-27Rousseaux, Michael Esq RENEWAL86Amy Elsner
1037Munro K GlickBrazil2026-10-21Dorl, James J Esq QUALIFIED10Xuxue Feng
1038Munro J CaudyIndia2026-10-19Truhlar And Truhlar Attys QUALIFIED61Asiya Javayant
1039Wickens D StockhamBrazil2026-09-26Dorl, James J Esq QUALIFIED23Elwin Sharvill
1040Faith B MarrierAustralia2026-10-11Chapman, Ross E Esq NEGOTIATION35Xuxue Feng
1041Aditya A CaldareraItaly2026-10-22Chanay, Jeffrey A Esq RENEWAL0Xuxue Feng
1042Misaki D ChuiRussia2026-10-02King, Christopher A Esq PROPOSAL74Amy Elsner
1043Aika P BowleyAustralia2026-10-04Chapman, Ross E Esq RENEWAL78Bernardo Dominic
1044Costa B PerinArgentina2026-10-06Rangoni Of Florence NEGOTIATION71Anna Fali
1045Leja N StensethGermany2026-10-21Morlong Associates NEGOTIATION26Ioni Bowcher
1046Izzy W WaycottUnited Kingdom2026-10-07Buckley Miller Wright NEGOTIATION9Asiya Javayant
1047Kaitlin J SlusarskiAustralia2026-10-25Feiner Bros PROPOSAL88Bernardo Dominic
1048Johnson X VocelkaSpain2026-09-26Chapman, Ross E Esq QUALIFIED49Anna Fali
1049Leja I OldroydUnited Kingdom2026-09-29King, Christopher A Esq NEW17Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Aika O DilliardUnited KingdomBernardo Dominic QUALIFIED
Jefferson J RoysterFranceOnyama Limba PROPOSAL
Maisha R SaylorsAustraliaXuxue Feng UNQUALIFIED
Faith A SchemmerBrazilStephen Shaw UNQUALIFIED
Maria E AmigonSpainIoni Bowcher NEW
Darci A BologniaJapanAmy Elsner RENEWAL
Stacey V PoquetteIndiaIvan Magalhaes NEGOTIATION
Izzy S CampainArgentinaOnyama Limba NEGOTIATION
Leja Y MacleadRussiaBernardo Dominic NEW
Nicolas H OldroydBrazilStephen Shaw NEW
Kadeem E SlusarskiJapanAsiya Javayant RENEWAL
Cody B StensethJapanStephen Shaw UNQUALIFIED
Ivar P PerinArgentinaAnna Fali UNQUALIFIED
Jones T GauchoFranceXuxue Feng QUALIFIED
Adams L ChuiAustraliaAnna Fali NEGOTIATION
Leon D RutaGermanyAmy Elsner PROPOSAL
Arvin L FlosiFranceElwin Sharvill QUALIFIED
Cody L OstroskyUnited KingdomStephen Shaw UNQUALIFIED
Aruna N ButtIndiaAsiya Javayant RENEWAL
Jeanfrancois E KuskoAustraliaAsiya Javayant NEW
Julie B BologniaJapanElwin Sharvill NEW
Alejandro S WaycottUnited KingdomStephen Shaw UNQUALIFIED
Ivar P RutaUnited KingdomBernardo Dominic RENEWAL
Aruna G PerinSpainXuxue Feng NEGOTIATION
Murillo W FerenczItalyBernardo Dominic UNQUALIFIED
Kadeem D ChuiBrazilAmy Elsner PROPOSAL
Arvin V MaletRussiaOnyama Limba NEGOTIATION
Aruna O BologniaIndiaIvan Magalhaes UNQUALIFIED
James A PerinFranceAsiya Javayant PROPOSAL
Maria X AmigonItalyAmy Elsner RENEWAL
Leon Q RimGermanyElwin Sharvill QUALIFIED
Julie Z SlusarskiAustraliaStephen Shaw NEW
Adams T WhobreyAustraliaAmy Elsner RENEWAL
Jones X BowleyFranceStephen Shaw NEGOTIATION
Smith D BowleyIndiaElwin Sharvill QUALIFIED
Francesco X GillianUnited KingdomElwin Sharvill PROPOSAL
Greenwood C RulapaughRussiaOnyama Limba QUALIFIED
Ivar F StockhamItalyXuxue Feng PROPOSAL
Morrow P MarrierFranceIvan Magalhaes QUALIFIED
Ivar Y SlusarskiUnited KingdomBernardo Dominic RENEWAL
Ricardo B GarufiAustraliaIvan Magalhaes PROPOSAL
Darci D VenereGermanyOnyama Limba NEGOTIATION
Kaitlin K FlosiBrazilBernardo Dominic QUALIFIED
Izzy X WieserArgentinaStephen Shaw PROPOSAL
Jeanfrancois B MaletGermanyIvan Magalhaes NEW
Clifford P MarrierBrazilOnyama Limba PROPOSAL
Antonio P MorascaAustraliaAnna Fali NEGOTIATION
Faith U MaletCanadaElwin Sharvill QUALIFIED
Ricardo G AmigonSpainIvan Magalhaes QUALIFIED
Smith I WaycottJapanStephen Shaw NEW
Frozen Columns
Name
Darci F Gaucho
Kadeem E Garufi
Aruna T Garufi
Julie Q Stenseth
Munro U Nicka
Francesco B Saylors
Stacey U Butt
Octavia C Campain
Maisha P Ruta
Jones M Morasca
Aruna N Bolognia
Clifford V Glick
Ricardo G Butt
Mayumi N Wieser
Darci B Butt
Jeanfrancois B Stenseth
Claire Z Whobrey
James N Poquette
Darci Y Kolmetz
Greenwood X Saylors
Aditya D Wieser
Kadeem T Gillian
Tony L Gillian
Murillo D Stenseth
Arvin Z Waycott
Claire Z Garufi
Murillo P Wieser
Francesco F Vocelka
Jennifer S Venere
Mujtaba C Whobrey
Antonio F Ruta
Ricardo V Kusko
Faith A Iturbide
Julie Z Kolmetz
Ashley Q Garufi
Jefferson V Nestle
Smith G Whobrey
Kaitlin X Vocelka
Isabel V Shinko
Arvin R Gaucho
Misaki E Tollner
Sinclair I Bolognia
Cody P Amigon
Cody A Rulapaugh
Mujtaba P Glick
Maisha I Amigon
Kaitlin Z Nicka
Chavez L Darakjy
Rodrigues D Stockham
Emily P Kusko
IdCountryDate
1000Italy2026-10-21
1001Italy2026-09-30
1002Brazil2026-10-24
1003United Kingdom2026-10-03
1004Argentina2026-10-09
1005Australia2026-09-29
1006Germany2026-09-26
1007Germany2026-10-12
1008Germany2026-10-16
1009Argentina2026-10-15
1010Russia2026-10-13
1011India2026-10-25
1012Canada2026-10-16
1013Canada2026-10-10
1014Spain2026-10-20
1015Italy2026-10-04
1016Japan2026-10-11
1017Japan2026-10-05
1018France2026-10-18
1019Brazil2026-10-25
1020Brazil2026-10-22
1021Japan2026-09-27
1022Argentina2026-09-30
1023India2026-10-02
1024United Kingdom2026-10-22
1025Canada2026-10-23
1026Germany2026-10-05
1027Germany2026-09-28
1028Argentina2026-10-19
1029Australia2026-10-16
1030Japan2026-10-08
1031United Kingdom2026-09-29
1032Canada2026-10-16
1033Japan2026-10-19
1034Russia2026-10-11
1035India2026-10-04
1036United Kingdom2026-10-11
1037Argentina2026-10-17
1038Italy2026-10-18
1039Australia2026-10-03
1040Canada2026-09-29
1041United Kingdom2026-10-21
1042Brazil2026-10-10
1043Italy2026-10-11
1044United Kingdom2026-10-08
1045United Kingdom2026-10-08
1046United Kingdom2026-09-26
1047Brazil2026-10-11
1048Argentina2026-10-04
1049United Kingdom2026-10-18

On-Demand Data

NameIdCountryDate
Faith I Waycott1000France2026-09-27
Juan H Slusarski1001India2026-09-29
Nicolas I Rulapaugh1002India2026-10-13
Leja W Vocelka1003United Kingdom2026-10-20
Murillo K Ostrosky1004Canada2026-10-03
Arvin Y Schemmer1005Australia2026-10-18
Faith A Marrier1006Spain2026-10-03
Mayumi V Caudy1007Spain2026-09-26
Izzy Q Perin1008India2026-10-06
Wickens M Schemmer1009Japan2026-10-22
Ricardo R Flosi1010Canada2026-10-21
David I Caudy1011Australia2026-10-04
Salvatore I Morasca1012Japan2026-10-14
Maria Q Gaucho1013Germany2026-10-16
Maria N Maclead1014Japan2026-10-09
Mujtaba O Iturbide1015Brazil2026-09-26
Salvatore S Dilliard1016Canada2026-10-25
Jennifer S Oldroyd1017Australia2026-10-05
Greenwood A Wieser1018Japan2026-10-02
Isabel H Campain1019Spain2026-10-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon S MaletIndiaOnyama Limba PROPOSAL
Maisha G WaycottSpainElwin Sharvill PROPOSAL
Tony V StockhamSpainBernardo Dominic NEW
Smith O MaletIndiaIoni Bowcher QUALIFIED
Silvio U FollerItalyIoni Bowcher NEW
Salvatore J SchemmerFranceIvan Magalhaes PROPOSAL
Morrow R FerenczUnited KingdomIvan Magalhaes QUALIFIED
Stacey W MacleadFranceAsiya Javayant NEW
Faith O FollerFranceOnyama Limba NEGOTIATION
Costa G PaprockiItalyIvan Magalhaes QUALIFIED
Izzy V GarufiRussiaIvan Magalhaes UNQUALIFIED
Mujtaba R ChuiUnited KingdomAnna Fali UNQUALIFIED
Wickens J KolmetzUnited KingdomIvan Magalhaes QUALIFIED
Murillo F MaletSpainElwin Sharvill UNQUALIFIED
Octavia C NickaRussiaOnyama Limba UNQUALIFIED
Juan P DoeAustraliaXuxue Feng PROPOSAL
Chavez W GarufiArgentinaElwin Sharvill UNQUALIFIED
Tony V GillianArgentinaAnna Fali QUALIFIED
Isabel K CampainCanadaStephen Shaw NEW
Ricardo P CaudyItalyIoni Bowcher NEGOTIATION
Murillo L PoquetteIndiaAnna Fali NEW
Aditya B ButtUnited KingdomIoni Bowcher NEW
Aruna H StockhamRussiaOnyama Limba QUALIFIED
Wickens O DarakjyCanadaAsiya Javayant UNQUALIFIED
Greenwood G FlosiAustraliaElwin Sharvill PROPOSAL
Misaki K DilliardFranceOnyama Limba NEGOTIATION
Deepesh S GillianFranceXuxue Feng NEGOTIATION
Ivar V AlbaresArgentinaStephen Shaw UNQUALIFIED
Salvatore H GauchoUnited KingdomElwin Sharvill RENEWAL
Mujtaba D MacleadArgentinaAmy Elsner NEGOTIATION
Kaitlin Z MarrierIndiaStephen Shaw NEW
Ashley V StockhamCanadaAmy Elsner PROPOSAL
Aditya O WhobreyIndiaAnna Fali UNQUALIFIED
Munro K RoysterCanadaAmy Elsner NEGOTIATION
Ashley Y FlosiRussiaIvan Magalhaes NEGOTIATION
Jeanfrancois H FerenczArgentinaBernardo Dominic NEGOTIATION
Silvio H AmigonFranceStephen Shaw UNQUALIFIED
Mujtaba X GlickGermanyBernardo Dominic NEGOTIATION
Kaitlin F OstroskyCanadaAmy Elsner NEGOTIATION
Smith A FerenczGermanyIvan Magalhaes PROPOSAL

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