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
Leja P DilliardArgentinaElwin Sharvill RENEWAL
Cody P RutaSpainIvan Magalhaes RENEWAL
Misaki C RimJapanElwin Sharvill PROPOSAL
Tony N PaprockiAustraliaXuxue Feng UNQUALIFIED
Chavez F MarrierGermanyIvan Magalhaes RENEWAL
Jefferson Y AmigonFranceIvan Magalhaes RENEWAL
Morrow E MacleadRussiaAsiya Javayant PROPOSAL
Leon M AmigonGermanyElwin Sharvill QUALIFIED
Maisha V FerenczGermanyIoni Bowcher QUALIFIED
David E WhobreyArgentinaStephen Shaw NEGOTIATION
Cody C FlosiUnited KingdomElwin Sharvill NEW
Jefferson V FerenczArgentinaStephen Shaw QUALIFIED
Murillo P GlickArgentinaIoni Bowcher QUALIFIED
Silvio N ChuiSpainAnna Fali QUALIFIED
Aruna V CampainFranceIvan Magalhaes NEGOTIATION
Antonio T RimSpainOnyama Limba NEW
Wickens Y ButtRussiaOnyama Limba QUALIFIED
Adams K MacleadGermanyXuxue Feng NEW
Aditya F MarrierArgentinaAnna Fali PROPOSAL
Maisha X MaletJapanXuxue Feng NEGOTIATION
Stacey K WhobreyAustraliaStephen Shaw QUALIFIED
Clifford V AlbaresIndiaAmy Elsner RENEWAL
David N BriddickUnited KingdomAnna Fali NEGOTIATION
Greenwood K GillianFranceOnyama Limba QUALIFIED
Clifford P OstroskyGermanyStephen Shaw QUALIFIED
David K ButtFranceOnyama Limba NEW
Munro N BowleyUnited KingdomOnyama Limba RENEWAL
Maisha I MaletUnited KingdomXuxue Feng PROPOSAL
Jeanfrancois B GauchoCanadaElwin Sharvill RENEWAL
Murillo X VenereSpainOnyama Limba QUALIFIED
Salvatore W CampainAustraliaIvan Magalhaes PROPOSAL
Deepesh B CaudyArgentinaElwin Sharvill NEGOTIATION
Ricardo D MacleadBrazilElwin Sharvill RENEWAL
Octavia L BriddickUnited KingdomStephen Shaw UNQUALIFIED
Ashley H InouyeAustraliaXuxue Feng PROPOSAL
Ivar N DilliardIndiaBernardo Dominic QUALIFIED
Aruna C WaycottSpainIoni Bowcher UNQUALIFIED
Izzy K BriddickBrazilAnna Fali UNQUALIFIED
Murillo W KolmetzSpainAmy Elsner RENEWAL
Jeanfrancois O SaylorsJapanAmy Elsner PROPOSAL
Jeanfrancois Q RimAustraliaIoni Bowcher NEGOTIATION
Jones S KuskoJapanAsiya Javayant PROPOSAL
Izzy X BologniaGermanyElwin Sharvill NEGOTIATION
Sinclair Q RimIndiaStephen Shaw QUALIFIED
Chavez L RimArgentinaOnyama Limba QUALIFIED
Ivar G MorascaCanadaBernardo Dominic QUALIFIED
Maria H FigeroaArgentinaOnyama Limba PROPOSAL
Costa H ShinkoJapanAsiya Javayant RENEWAL
Emily R PoquetteIndiaAnna Fali QUALIFIED
Aditya B GarufiFranceAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Alejandro Y StensethFranceIoni Bowcher UNQUALIFIED
Emily P NestleItalyAsiya Javayant RENEWAL
Mujtaba B RoysterUnited KingdomAnna Fali NEGOTIATION
Johnson A StensethItalyAsiya Javayant UNQUALIFIED
Murillo W DarakjyArgentinaAnna Fali UNQUALIFIED
Jennifer N WhobreyIndiaIoni Bowcher QUALIFIED
Jeanfrancois I DarakjyCanadaElwin Sharvill QUALIFIED
Maria S VocelkaGermanyIvan Magalhaes UNQUALIFIED
Jefferson U PoquetteIndiaAnna Fali NEW
Aditya H FlosiBrazilXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith P DarakjyArgentina2026-09-13Chapman, Ross E Esq NEGOTIATION8Amy Elsner
1001Kaitlin E DoeArgentina2026-10-03Dorl, James J Esq UNQUALIFIED6Onyama Limba
1002Nicolas J MacleadIndia2026-10-01Dorl, James J Esq NEGOTIATION42Ioni Bowcher
1003Jones N WaycottItaly2026-10-09Morlong Associates RENEWAL22Anna Fali
1004Rodrigues G MaletUnited Kingdom2026-09-27Chemel, James L Cpa RENEWAL71Ivan Magalhaes
1005Jennifer E KuskoFrance2026-10-09Benton, John B Jr QUALIFIED43Amy Elsner
1006Jeanfrancois J StockhamSpain2026-10-07Commercial Press UNQUALIFIED25Ivan Magalhaes
1007Mayumi C AlbaresUnited Kingdom2026-10-05Feiner Bros NEGOTIATION1Bernardo Dominic
1008Chavez N NestleArgentina2026-10-02Buckley Miller Wright QUALIFIED63Elwin Sharvill
1009Juan Z SergiAustralia2026-10-04Rousseaux, Michael Esq RENEWAL62Anna Fali
1010Deepesh X SchemmerArgentina2026-09-21Buckley Miller Wright NEW59Ioni Bowcher
1011Kaitlin T InouyeSpain2026-09-29Morlong Associates RENEWAL67Asiya Javayant
1012Aditya T CaldareraAustralia2026-10-05Chemel, James L Cpa NEGOTIATION7Amy Elsner
1013Claire D RulapaughSpain2026-10-07Feiner Bros UNQUALIFIED75Asiya Javayant
1014Jefferson Q WieserSpain2026-09-22Morlong Associates PROPOSAL29Elwin Sharvill
1015Costa G PerinAustralia2026-09-29Morlong Associates RENEWAL31Amy Elsner
1016Deepesh Y VocelkaSpain2026-09-20Chemel, James L Cpa NEGOTIATION97Elwin Sharvill
1017Smith C InouyeUnited Kingdom2026-09-29Benton, John B Jr UNQUALIFIED93Elwin Sharvill
1018Rodrigues U DilliardItaly2026-10-03Chemel, James L Cpa NEW8Xuxue Feng
1019Izzy J SchemmerJapan2026-09-23Feltz Printing Service PROPOSAL69Bernardo Dominic
1020Maria K GauchoUnited Kingdom2026-10-09Rousseaux, Michael Esq RENEWAL18Anna Fali
1021Mayumi V VocelkaUnited Kingdom2026-09-27Feltz Printing Service QUALIFIED96Amy Elsner
1022Kadeem A WhobreyBrazil2026-10-12Rangoni Of Florence UNQUALIFIED56Ivan Magalhaes
1023Faith A AmigonItaly2026-10-11Chanay, Jeffrey A Esq PROPOSAL15Amy Elsner
1024Mujtaba O ButtGermany2026-09-23Benton, John B Jr UNQUALIFIED59Elwin Sharvill
1025Rodrigues B TollnerUnited Kingdom2026-09-24Benton, John B Jr PROPOSAL29Onyama Limba
1026Sinclair U KuskoRussia2026-09-15Buckley Miller Wright QUALIFIED53Onyama Limba
1027Isabel L DilliardUnited Kingdom2026-09-27Buckley Miller Wright NEW38Stephen Shaw
1028Tony R PaprockiGermany2026-09-17Chemel, James L Cpa PROPOSAL54Ivan Magalhaes
1029Chavez K IturbideAustralia2026-10-05Chapman, Ross E Esq RENEWAL23Asiya Javayant
1030Greenwood D SchemmerArgentina2026-10-03Chapman, Ross E Esq NEGOTIATION77Xuxue Feng
1031Leja F FollerAustralia2026-09-26Chemel, James L Cpa UNQUALIFIED0Xuxue Feng
1032Isabel E FigeroaIndia2026-09-27Chanay, Jeffrey A Esq NEW3Elwin Sharvill
1033Maria L WaycottArgentina2026-09-18King, Christopher A Esq RENEWAL31Ivan Magalhaes
1034Mujtaba M VocelkaJapan2026-09-14Commercial Press NEGOTIATION86Stephen Shaw
1035Jeanfrancois M KolmetzIndia2026-09-15Chapman, Ross E Esq UNQUALIFIED68Bernardo Dominic
1036Darci L SchemmerItaly2026-09-19Chemel, James L Cpa RENEWAL57Bernardo Dominic
1037James G NickaUnited Kingdom2026-09-28Morlong Associates NEW83Stephen Shaw
1038Cody X GauchoFrance2026-09-17Chanay, Jeffrey A Esq UNQUALIFIED79Asiya Javayant
1039Antonio Q WhobreyGermany2026-09-30Chemel, James L Cpa NEW21Asiya Javayant
1040Jones O WieserAustralia2026-10-07King, Christopher A Esq QUALIFIED49Ivan Magalhaes
1041Stacey F MacleadItaly2026-10-04Chanay, Jeffrey A Esq PROPOSAL52Elwin Sharvill
1042Jeanfrancois W BologniaCanada2026-10-01Feiner Bros NEW88Amy Elsner
1043Octavia B OldroydUnited Kingdom2026-09-18Chemel, James L Cpa RENEWAL86Anna Fali
1044Juan E AmigonJapan2026-10-07Printing Dimensions NEW80Xuxue Feng
1045Ashley H SergiAustralia2026-09-15Rangoni Of Florence NEW69Anna Fali
1046Darci Z AlbaresSpain2026-09-14Chapman, Ross E Esq NEGOTIATION83Bernardo Dominic
1047Silvio T GillianGermany2026-10-11Dorl, James J Esq UNQUALIFIED50Anna Fali
1048Darci K FerenczGermany2026-09-14Buckley Miller Wright RENEWAL78Anna Fali
1049Darci C NickaSpain2026-09-20Truhlar And Truhlar Attys PROPOSAL26Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Aruna K DarakjyAustraliaAsiya Javayant QUALIFIED
Costa X DilliardFranceIvan Magalhaes QUALIFIED
Kadeem H SergiJapanStephen Shaw PROPOSAL
Antonio H CaldareraSpainIvan Magalhaes NEGOTIATION
Claire S CaudySpainAnna Fali PROPOSAL
Kaitlin A CampainAustraliaStephen Shaw UNQUALIFIED
Aditya G DoeUnited KingdomAsiya Javayant NEGOTIATION
Deepesh R FlosiItalyElwin Sharvill NEW
Munro V FollerCanadaIoni Bowcher QUALIFIED
Francesco Z MacleadCanadaXuxue Feng UNQUALIFIED
Tony I RimRussiaElwin Sharvill UNQUALIFIED
Darci B MarrierAustraliaStephen Shaw PROPOSAL
Arvin C KuskoGermanyXuxue Feng PROPOSAL
Leja Q VocelkaItalyIoni Bowcher QUALIFIED
Maria L RimAustraliaAmy Elsner QUALIFIED
Ricardo X VenereCanadaAsiya Javayant RENEWAL
Kaitlin P GarufiAustraliaAsiya Javayant NEGOTIATION
Claire N NestleAustraliaAsiya Javayant NEW
Nicolas V PaprockiUnited KingdomIvan Magalhaes UNQUALIFIED
Misaki G BriddickBrazilBernardo Dominic QUALIFIED
Aruna B MorascaIndiaAmy Elsner PROPOSAL
Mujtaba B MarrierFranceAmy Elsner RENEWAL
Alejandro S TollnerBrazilBernardo Dominic NEGOTIATION
Nicolas J FigeroaJapanElwin Sharvill NEW
Antonio A FerenczAustraliaElwin Sharvill NEW
Kaitlin J RulapaughItalyBernardo Dominic QUALIFIED
Alejandro O GillianArgentinaAsiya Javayant NEW
Izzy C ChuiFranceAmy Elsner QUALIFIED
Cody Z AlbaresSpainIvan Magalhaes PROPOSAL
Emily S BologniaJapanBernardo Dominic PROPOSAL
Aika I DilliardRussiaAnna Fali UNQUALIFIED
Tony M RutaFranceXuxue Feng UNQUALIFIED
Jeanfrancois H RoysterFranceBernardo Dominic NEGOTIATION
Chavez M BowleyAustraliaAmy Elsner RENEWAL
Emily T OstroskyArgentinaAnna Fali NEW
Salvatore U BologniaJapanElwin Sharvill QUALIFIED
Antonio E GillianItalyStephen Shaw QUALIFIED
Darci T BologniaRussiaStephen Shaw NEGOTIATION
Leon S OldroydItalyAsiya Javayant PROPOSAL
Greenwood P DilliardGermanyOnyama Limba NEGOTIATION
Arvin S WieserIndiaAmy Elsner QUALIFIED
Claire R SchemmerBrazilOnyama Limba NEW
Nicolas D BologniaIndiaBernardo Dominic NEGOTIATION
Emily K FollerCanadaElwin Sharvill NEGOTIATION
Faith T PaprockiItalyOnyama Limba NEGOTIATION
Leon W GillianGermanyElwin Sharvill NEW
Jones J ShinkoItalyIvan Magalhaes RENEWAL
Jefferson U SchemmerGermanyAsiya Javayant NEW
Misaki W FollerJapanAsiya Javayant UNQUALIFIED
Jeanfrancois E RutaIndiaBernardo Dominic NEGOTIATION
Frozen Columns
Name
Silvio M Malet
Stacey R Vocelka
Izzy O Darakjy
Morrow G Schemmer
Claire O Dilliard
Izzy S Royster
Claire G Glick
Deepesh H Wieser
Clifford Z Nicka
Stacey V Inouye
Deepesh D Rulapaugh
Aruna G Vocelka
Julie L Bowley
James V Nicka
Murillo V Ferencz
Juan Z Stenseth
Silvio I Albares
Morrow S Bowley
Juan O Bolognia
Octavia G Stenseth
Tony M Kolmetz
Leja H Iturbide
Leon J Royster
Nicolas A Schemmer
James X Perin
Misaki O Poquette
David L Royster
Faith V Schemmer
Aditya F Kusko
Kaitlin Q Campain
Nicolas G Bolognia
Johnson S Royster
Tony K Marrier
Jeanfrancois B Albares
Emily C Flosi
Julie L Foller
Kaitlin F Gillian
Silvio K Rim
Francesco E Stockham
Alejandro D Gaucho
Salvatore H Perin
Antonio C Dilliard
Nicolas O Albares
Rodrigues D Chui
Emily A Nestle
Ashley P Poquette
Claire M Waycott
Leon L Kusko
Sinclair Y Vocelka
Stacey Y Malet
IdCountryDate
1000United Kingdom2026-09-29
1001Russia2026-09-17
1002Canada2026-10-08
1003Japan2026-10-05
1004Australia2026-09-22
1005Canada2026-09-23
1006India2026-09-19
1007Germany2026-10-07
1008Canada2026-10-10
1009France2026-09-21
1010India2026-09-22
1011Japan2026-09-29
1012United Kingdom2026-09-17
1013Australia2026-09-23
1014Spain2026-10-07
1015Brazil2026-09-19
1016India2026-09-19
1017India2026-10-06
1018United Kingdom2026-09-29
1019Russia2026-10-10
1020Canada2026-09-21
1021Italy2026-09-17
1022Italy2026-10-10
1023Germany2026-09-13
1024Germany2026-10-10
1025Germany2026-10-03
1026France2026-09-13
1027Italy2026-10-08
1028Canada2026-09-21
1029Germany2026-10-09
1030Argentina2026-09-20
1031Japan2026-10-02
1032Australia2026-09-19
1033Japan2026-09-14
1034United Kingdom2026-09-14
1035Spain2026-09-16
1036Japan2026-09-24
1037United Kingdom2026-09-20
1038Argentina2026-09-18
1039Spain2026-09-16
1040Australia2026-10-03
1041Brazil2026-10-03
1042Argentina2026-09-25
1043France2026-10-12
1044Russia2026-09-28
1045Russia2026-10-05
1046Canada2026-09-17
1047Italy2026-09-20
1048Canada2026-09-13
1049Japan2026-09-20

On-Demand Data

NameIdCountryDate
Misaki Z Schemmer1000Australia2026-09-30
Julie N Inouye1001India2026-09-17
Cody I Albares1002United Kingdom2026-10-01
Jennifer T Iturbide1003Canada2026-09-29
Claire G Whobrey1004Japan2026-10-05
Deepesh N Bowley1005Italy2026-09-14
Aruna N Ruta1006Canada2026-09-15
Clifford W Bolognia1007Canada2026-09-17
James E Doe1008Spain2026-09-24
Arvin A Amigon1009Italy2026-10-01
David M Bolognia1010United Kingdom2026-10-03
Isabel R Stenseth1011Spain2026-09-24
Octavia A Darakjy1012India2026-09-21
Ivar X Shinko1013France2026-09-30
Arvin E Schemmer1014Brazil2026-10-09
Tony E Whobrey1015Germany2026-10-06
Jeanfrancois K Whobrey1016Argentina2026-09-23
Chavez Z Nicka1017Germany2026-10-12
Aditya T Glick1018Germany2026-09-21
Aika T Maclead1019France2026-09-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia I FollerBrazilXuxue Feng QUALIFIED
Chavez H IturbideIndiaAmy Elsner PROPOSAL
Kadeem D RutaFranceElwin Sharvill UNQUALIFIED
Jones F GlickUnited KingdomOnyama Limba UNQUALIFIED
Ashley X BriddickUnited KingdomAmy Elsner NEGOTIATION
Jeanfrancois P PaprockiBrazilIoni Bowcher NEGOTIATION
Faith M ChuiUnited KingdomElwin Sharvill NEGOTIATION
Sinclair Q StensethRussiaElwin Sharvill NEW
Antonio Y NestleUnited KingdomStephen Shaw NEGOTIATION
Johnson T MaletSpainAnna Fali NEGOTIATION
Murillo A DilliardBrazilOnyama Limba RENEWAL
Maisha T FollerSpainElwin Sharvill PROPOSAL
Jones X DilliardIndiaXuxue Feng RENEWAL
Claire Y NestleUnited KingdomAmy Elsner NEW
Johnson Q WieserUnited KingdomAnna Fali NEGOTIATION
Leja J KolmetzBrazilAsiya Javayant PROPOSAL
Claire S SchemmerArgentinaAnna Fali QUALIFIED
Deepesh Q InouyeItalyAmy Elsner NEGOTIATION
Nicolas P MaletUnited KingdomIvan Magalhaes NEW
Ashley V GlickIndiaXuxue Feng NEW
Darci W WhobreyIndiaOnyama Limba PROPOSAL
Octavia S WhobreyAustraliaBernardo Dominic QUALIFIED
Ricardo H StockhamBrazilBernardo Dominic UNQUALIFIED
Ricardo F MacleadRussiaIoni Bowcher UNQUALIFIED
Kaitlin R VocelkaArgentinaAmy Elsner NEGOTIATION
Nicolas L SergiSpainElwin Sharvill NEGOTIATION
Claire Y OstroskyGermanyXuxue Feng NEGOTIATION
Jones G PaprockiJapanStephen Shaw QUALIFIED
Ashley K TollnerFranceStephen Shaw RENEWAL
Emily P ButtRussiaIoni Bowcher NEGOTIATION
Murillo C GillianItalyOnyama Limba QUALIFIED
Leja W OstroskyIndiaIvan Magalhaes RENEWAL
Isabel D OstroskyUnited KingdomAnna Fali QUALIFIED
Deepesh V RutaAustraliaElwin Sharvill PROPOSAL
Alejandro Y SergiBrazilElwin Sharvill PROPOSAL
Kaitlin J GarufiUnited KingdomStephen Shaw NEW
Leon M InouyeCanadaBernardo Dominic NEW
Maisha E NestleArgentinaOnyama Limba RENEWAL
Morrow U PaprockiItalyIvan Magalhaes RENEWAL
Chavez M FollerJapanBernardo Dominic NEGOTIATION

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