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
Kadeem L SlusarskiBrazilAmy Elsner RENEWAL
Tony Z AmigonIndiaIoni Bowcher PROPOSAL
Kaitlin Y MaletRussiaIvan Magalhaes QUALIFIED
Greenwood Z SchemmerFranceIoni Bowcher PROPOSAL
Julie L SergiItalyAmy Elsner NEW
Jeanfrancois W BowleyAustraliaBernardo Dominic PROPOSAL
Tony Y VenereGermanyStephen Shaw QUALIFIED
Munro N DarakjyItalyElwin Sharvill RENEWAL
Sinclair W WieserCanadaAmy Elsner PROPOSAL
Mujtaba O ShinkoGermanyElwin Sharvill NEGOTIATION
Salvatore S SlusarskiIndiaIoni Bowcher RENEWAL
Johnson Z FerenczBrazilAnna Fali UNQUALIFIED
James M InouyeCanadaAnna Fali RENEWAL
Leon F IturbideRussiaElwin Sharvill NEW
Greenwood Q WaycottGermanyAsiya Javayant UNQUALIFIED
Maisha V MaletBrazilIoni Bowcher QUALIFIED
Stacey F GillianAustraliaIvan Magalhaes NEGOTIATION
Julie C KolmetzSpainElwin Sharvill NEGOTIATION
Julie G ButtArgentinaAnna Fali NEGOTIATION
Tony H GillianJapanIoni Bowcher NEW
Tony A VocelkaIndiaBernardo Dominic PROPOSAL
Nicolas S CaudyUnited KingdomAnna Fali NEW
Sinclair Q MorascaFranceBernardo Dominic UNQUALIFIED
Murillo X TollnerBrazilXuxue Feng QUALIFIED
Jennifer I OstroskyAustraliaAmy Elsner NEW
Juan T GauchoCanadaOnyama Limba NEGOTIATION
Octavia Y CaudyCanadaBernardo Dominic RENEWAL
Costa F DilliardRussiaIvan Magalhaes UNQUALIFIED
Misaki G SergiUnited KingdomOnyama Limba NEGOTIATION
Izzy R MaletArgentinaBernardo Dominic QUALIFIED
Morrow R NickaUnited KingdomStephen Shaw PROPOSAL
Izzy X MacleadItalyAnna Fali PROPOSAL
Kaitlin F KolmetzCanadaAnna Fali NEGOTIATION
Murillo T MaletItalyAsiya Javayant NEGOTIATION
Emily W SchemmerUnited KingdomElwin Sharvill QUALIFIED
Stacey V ChuiFranceBernardo Dominic PROPOSAL
Adams K RimRussiaAmy Elsner PROPOSAL
Claire I OldroydArgentinaAmy Elsner RENEWAL
Aika Z VocelkaRussiaIoni Bowcher PROPOSAL
Mujtaba H MaletJapanXuxue Feng PROPOSAL
Clifford E SergiSpainIvan Magalhaes QUALIFIED
Misaki W PerinAustraliaAmy Elsner UNQUALIFIED
Murillo D RutaAustraliaElwin Sharvill PROPOSAL
Jefferson U MarrierSpainStephen Shaw RENEWAL
Ashley F BologniaUnited KingdomAsiya Javayant RENEWAL
Jeanfrancois F SchemmerBrazilOnyama Limba RENEWAL
Alejandro K NestleFranceOnyama Limba NEW
Jeanfrancois R TollnerFranceIoni Bowcher RENEWAL
Julie O StensethBrazilIoni Bowcher RENEWAL
Kadeem F WieserArgentinaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Darci D WaycottAustraliaOnyama Limba QUALIFIED
Chavez L FollerArgentinaAnna Fali NEGOTIATION
Mujtaba I WhobreyAustraliaStephen Shaw UNQUALIFIED
Arvin X PerinIndiaIoni Bowcher UNQUALIFIED
Jennifer H NestleAustraliaBernardo Dominic UNQUALIFIED
Isabel R DilliardCanadaAnna Fali RENEWAL
Mayumi B OstroskyBrazilStephen Shaw UNQUALIFIED
Emily V CaldareraBrazilStephen Shaw NEW
Smith O DoeFranceAmy Elsner PROPOSAL
Ricardo X RulapaughArgentinaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily R RutaRussia2026-09-25Buckley Miller Wright QUALIFIED45Ioni Bowcher
1001Ashley H NestleIndia2026-09-12Rousseaux, Michael Esq PROPOSAL5Anna Fali
1002James Z MaletUnited Kingdom2026-09-12Truhlar And Truhlar Attys RENEWAL9Onyama Limba
1003Murillo Z MaletJapan2026-09-06Rangoni Of Florence NEGOTIATION54Ivan Magalhaes
1004Faith H BriddickSpain2026-09-21Feltz Printing Service UNQUALIFIED62Asiya Javayant
1005Darci T InouyeItaly2026-09-10Chanay, Jeffrey A Esq PROPOSAL79Anna Fali
1006Juan W RulapaughIndia2026-09-23Feltz Printing Service PROPOSAL45Ioni Bowcher
1007Juan J PaprockiSpain2026-09-23Morlong Associates UNQUALIFIED17Bernardo Dominic
1008Octavia F WaycottIndia2026-09-19King, Christopher A Esq PROPOSAL79Ivan Magalhaes
1009Julie P RulapaughRussia2026-09-26Buckley Miller Wright RENEWAL73Anna Fali
1010Isabel U AmigonArgentina2026-09-12Chemel, James L Cpa PROPOSAL72Elwin Sharvill
1011Mujtaba M AmigonRussia2026-09-02Feltz Printing Service NEW24Elwin Sharvill
1012Darci K NestleArgentina2026-09-24Chanay, Jeffrey A Esq UNQUALIFIED33Onyama Limba
1013Ashley E VocelkaUnited Kingdom2026-09-23Chapman, Ross E Esq RENEWAL90Onyama Limba
1014Aditya C FerenczUnited Kingdom2026-09-23Buckley Miller Wright NEW6Onyama Limba
1015Murillo H KolmetzIndia2026-09-13Dorl, James J Esq NEW97Bernardo Dominic
1016Mujtaba V StensethItaly2026-09-04Rousseaux, Michael Esq QUALIFIED91Amy Elsner
1017Jefferson P RutaRussia2026-09-26Truhlar And Truhlar Attys RENEWAL61Onyama Limba
1018Chavez R SlusarskiJapan2026-09-25Morlong Associates RENEWAL48Asiya Javayant
1019Tony G DilliardArgentina2026-09-14Benton, John B Jr UNQUALIFIED14Xuxue Feng
1020Kadeem Q BriddickFrance2026-09-17Rousseaux, Michael Esq NEW56Asiya Javayant
1021Salvatore H SaylorsArgentina2026-09-27Dorl, James J Esq NEW88Ioni Bowcher
1022Julie L RoysterArgentina2026-09-11Buckley Miller Wright RENEWAL21Elwin Sharvill
1023Aruna P NickaCanada2026-09-04Rousseaux, Michael Esq RENEWAL10Xuxue Feng
1024Claire I VocelkaArgentina2026-09-25Feiner Bros PROPOSAL8Anna Fali
1025Antonio G OstroskyBrazil2026-09-02Benton, John B Jr QUALIFIED67Asiya Javayant
1026Silvio Q PerinRussia2026-09-27Rousseaux, Michael Esq UNQUALIFIED20Bernardo Dominic
1027Morrow Q RulapaughJapan2026-09-26Chapman, Ross E Esq RENEWAL63Ioni Bowcher
1028James R NickaBrazil2026-09-01Rangoni Of Florence QUALIFIED1Elwin Sharvill
1029David G BriddickBrazil2026-09-01Rangoni Of Florence NEGOTIATION57Ivan Magalhaes
1030Kaitlin W GauchoSpain2026-09-23Feltz Printing Service UNQUALIFIED47Amy Elsner
1031Rodrigues J MaletJapan2026-08-29Commercial Press NEW53Xuxue Feng
1032Wickens Z WaycottJapan2026-09-08Rousseaux, Michael Esq PROPOSAL51Stephen Shaw
1033Adams D IturbideCanada2026-09-09Morlong Associates NEGOTIATION84Xuxue Feng
1034Leja Z PerinAustralia2026-09-10Buckley Miller Wright RENEWAL23Xuxue Feng
1035Nicolas M FollerGermany2026-09-03Benton, John B Jr UNQUALIFIED59Amy Elsner
1036Misaki H AlbaresCanada2026-09-06Feiner Bros PROPOSAL16Stephen Shaw
1037Costa T SchemmerJapan2026-09-24Chemel, James L Cpa PROPOSAL79Amy Elsner
1038Maria J NickaJapan2026-09-14King, Christopher A Esq NEW47Xuxue Feng
1039Darci M MorascaFrance2026-09-09Printing Dimensions NEW86Anna Fali
1040Alejandro T ShinkoRussia2026-09-26Truhlar And Truhlar Attys UNQUALIFIED75Stephen Shaw
1041Stacey V VocelkaRussia2026-09-21Chanay, Jeffrey A Esq RENEWAL79Asiya Javayant
1042Wickens O InouyeAustralia2026-09-09King, Christopher A Esq UNQUALIFIED9Ioni Bowcher
1043Kadeem U FigeroaGermany2026-09-16Chanay, Jeffrey A Esq UNQUALIFIED75Bernardo Dominic
1044Greenwood Z VenereRussia2026-09-18Printing Dimensions NEW32Asiya Javayant
1045Nicolas T FlosiCanada2026-08-30Dorl, James J Esq RENEWAL6Stephen Shaw
1046Cody P MorascaGermany2026-09-19Morlong Associates RENEWAL64Amy Elsner
1047Aditya O WieserRussia2026-09-06Dorl, James J Esq PROPOSAL37Ivan Magalhaes
1048Sinclair K BriddickCanada2026-09-22Truhlar And Truhlar Attys UNQUALIFIED17Xuxue Feng
1049Misaki G ButtRussia2026-09-14Truhlar And Truhlar Attys QUALIFIED12Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Adams X SergiItalyElwin Sharvill UNQUALIFIED
Juan U IturbideRussiaOnyama Limba NEW
Silvio D VenereGermanyIvan Magalhaes RENEWAL
Mayumi B GlickRussiaAnna Fali UNQUALIFIED
Isabel C StensethIndiaElwin Sharvill NEW
Kaitlin J DilliardBrazilElwin Sharvill UNQUALIFIED
Alejandro S FerenczUnited KingdomOnyama Limba PROPOSAL
Adams Q WaycottRussiaAmy Elsner RENEWAL
Faith N SchemmerBrazilElwin Sharvill PROPOSAL
Aditya R InouyeRussiaOnyama Limba NEGOTIATION
Deepesh Q StensethCanadaElwin Sharvill QUALIFIED
Greenwood X RoysterBrazilAsiya Javayant RENEWAL
Aditya F CaudyUnited KingdomIoni Bowcher QUALIFIED
Emily G FlosiIndiaIvan Magalhaes NEGOTIATION
Leja X WhobreySpainElwin Sharvill NEW
Silvio G RoysterArgentinaIoni Bowcher UNQUALIFIED
Rodrigues K ShinkoJapanStephen Shaw NEGOTIATION
Kaitlin C ButtFranceXuxue Feng UNQUALIFIED
Darci K ChuiBrazilAsiya Javayant NEGOTIATION
Juan A NestleGermanyIvan Magalhaes NEW
Alejandro W GauchoUnited KingdomXuxue Feng QUALIFIED
Kaitlin S SlusarskiSpainXuxue Feng UNQUALIFIED
Deepesh Y PaprockiIndiaXuxue Feng QUALIFIED
Claire B SchemmerArgentinaXuxue Feng NEGOTIATION
Darci U AmigonArgentinaIvan Magalhaes UNQUALIFIED
Mujtaba C BriddickArgentinaElwin Sharvill PROPOSAL
Aruna R ChuiCanadaAsiya Javayant QUALIFIED
Jefferson G GauchoRussiaOnyama Limba RENEWAL
Johnson Q VocelkaGermanyIvan Magalhaes NEW
Munro T FigeroaBrazilStephen Shaw RENEWAL
Isabel T ChuiAustraliaIvan Magalhaes UNQUALIFIED
Salvatore Y GarufiAustraliaAmy Elsner UNQUALIFIED
Deepesh W CaldareraAustraliaOnyama Limba NEW
Leja D MaletArgentinaIoni Bowcher UNQUALIFIED
Jones J CampainUnited KingdomAsiya Javayant NEGOTIATION
Juan Q WieserArgentinaStephen Shaw NEW
Ricardo F InouyeAustraliaElwin Sharvill NEGOTIATION
Alejandro S BriddickBrazilXuxue Feng RENEWAL
Munro B RutaGermanyBernardo Dominic QUALIFIED
Morrow W MaletArgentinaOnyama Limba UNQUALIFIED
Jones K MaletBrazilXuxue Feng NEGOTIATION
Jefferson A FigeroaBrazilElwin Sharvill NEGOTIATION
Nicolas U IturbideSpainAnna Fali QUALIFIED
Jennifer E AmigonAustraliaElwin Sharvill PROPOSAL
Aditya T WaycottCanadaElwin Sharvill PROPOSAL
Silvio Q KolmetzUnited KingdomBernardo Dominic RENEWAL
Misaki Y WieserGermanyIvan Magalhaes UNQUALIFIED
Aruna B InouyeBrazilOnyama Limba NEW
Mayumi I RulapaughIndiaElwin Sharvill UNQUALIFIED
Ricardo V InouyeJapanAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Sinclair K Nicka
Misaki Z Nicka
Aruna P Saylors
Mayumi F Butt
Francesco L Caldarera
Smith I Butt
Octavia Z Tollner
Izzy C Rim
Costa R Poquette
Emily K Amigon
Deepesh K Garufi
Mayumi N Caudy
Clifford J Venere
Salvatore S Wieser
Greenwood A Kusko
Maria U Kusko
Octavia Z Caldarera
Mayumi C Chui
Tony Q Schemmer
Silvio K Inouye
Antonio L Paprocki
Jennifer L Perin
Costa F Darakjy
Sinclair N Kolmetz
Mayumi L Marrier
Chavez G Saylors
Ricardo H Venere
Juan C Shinko
Greenwood O Stenseth
Maria W Glick
Johnson Q Nestle
Jefferson D Rulapaugh
Johnson R Tollner
Leon L Venere
Maria N Ferencz
Mujtaba X Garufi
Mujtaba S Whobrey
Darci L Saylors
Ashley B Bolognia
Silvio Z Sergi
Cody K Venere
Stacey B Bowley
Aika W Ferencz
Cody F Saylors
Francesco R Bowley
Salvatore L Bolognia
Francesco U Gillian
Mujtaba B Royster
Claire K Ostrosky
Antonio I Caudy
IdCountryDate
1000Russia2026-08-30
1001Brazil2026-09-09
1002United Kingdom2026-09-02
1003United Kingdom2026-09-01
1004Argentina2026-09-02
1005Russia2026-09-12
1006India2026-09-23
1007Italy2026-09-11
1008Australia2026-09-17
1009United Kingdom2026-09-14
1010Argentina2026-09-22
1011Russia2026-09-17
1012Australia2026-09-11
1013Russia2026-09-11
1014Argentina2026-08-31
1015Germany2026-09-22
1016Spain2026-09-05
1017Spain2026-09-09
1018Brazil2026-09-04
1019Germany2026-09-26
1020Italy2026-09-13
1021France2026-08-30
1022Spain2026-09-08
1023Russia2026-09-24
1024Russia2026-09-08
1025Japan2026-09-27
1026France2026-09-01
1027France2026-09-15
1028Germany2026-09-23
1029Russia2026-09-04
1030Canada2026-09-13
1031Germany2026-09-21
1032Russia2026-09-22
1033Japan2026-09-24
1034Australia2026-09-16
1035Australia2026-09-05
1036Germany2026-09-24
1037Canada2026-09-07
1038United Kingdom2026-09-03
1039Australia2026-09-10
1040Russia2026-09-01
1041Germany2026-08-29
1042France2026-09-21
1043Germany2026-09-24
1044United Kingdom2026-08-29
1045France2026-08-30
1046France2026-09-20
1047United Kingdom2026-09-18
1048Australia2026-09-07
1049United Kingdom2026-09-11

On-Demand Data

NameIdCountryDate
James A Ruta1000Brazil2026-09-10
Misaki O Nestle1001Spain2026-09-22
Tony I Slusarski1002Russia2026-08-30
Faith K Caldarera1003Canada2026-09-04
Arvin D Paprocki1004Italy2026-09-10
Claire Q Garufi1005Italy2026-09-19
Stacey I Waycott1006Spain2026-09-18
Maria Z Gaucho1007Argentina2026-08-29
Mujtaba S Paprocki1008Canada2026-09-06
Ivar C Poquette1009United Kingdom2026-08-30
Greenwood W Schemmer1010Spain2026-09-24
Tony N Flosi1011Spain2026-09-15
Cody Q Nestle1012Spain2026-09-26
Morrow Q Stockham1013Argentina2026-09-01
Jones K Maclead1014Spain2026-08-30
Stacey J Caudy1015Spain2026-09-09
Octavia O Sergi1016Japan2026-09-04
Mujtaba M Caldarera1017Japan2026-09-04
Jennifer I Campain1018Australia2026-09-12
Rodrigues E Nicka1019Germany2026-09-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair O FerenczAustraliaIoni Bowcher NEW
Maria U MarrierUnited KingdomAnna Fali NEW
Jennifer K VenereCanadaIoni Bowcher NEW
Smith M WhobreyAustraliaAmy Elsner UNQUALIFIED
Darci W FlosiItalyXuxue Feng UNQUALIFIED
Alejandro K MarrierSpainIvan Magalhaes QUALIFIED
Aika C KuskoUnited KingdomAmy Elsner UNQUALIFIED
Misaki D NestleIndiaIoni Bowcher NEGOTIATION
Maisha B MaletRussiaIvan Magalhaes PROPOSAL
Maria I CampainCanadaStephen Shaw NEGOTIATION
Kadeem Z WhobreyArgentinaAsiya Javayant PROPOSAL
Sinclair M AmigonGermanyXuxue Feng NEGOTIATION
Mayumi L RulapaughSpainAnna Fali NEW
Murillo V PerinArgentinaIoni Bowcher RENEWAL
Mujtaba X GillianItalyStephen Shaw PROPOSAL
Alejandro K VenereArgentinaAmy Elsner PROPOSAL
Murillo O MaletIndiaIoni Bowcher RENEWAL
Antonio H InouyeIndiaElwin Sharvill RENEWAL
Aika E GlickCanadaAmy Elsner NEGOTIATION
Ricardo M VenereArgentinaStephen Shaw NEGOTIATION
Ashley Q RulapaughIndiaIoni Bowcher PROPOSAL
Isabel V WieserJapanBernardo Dominic QUALIFIED
Silvio I ButtUnited KingdomAmy Elsner NEW
Silvio J AmigonUnited KingdomBernardo Dominic RENEWAL
Maria B DarakjyCanadaAnna Fali UNQUALIFIED
Kadeem V KuskoSpainIoni Bowcher NEW
Tony R MaletRussiaAnna Fali NEGOTIATION
Misaki S MarrierGermanyXuxue Feng QUALIFIED
Leon Z SergiFranceStephen Shaw RENEWAL
Faith U SergiArgentinaAmy Elsner RENEWAL
Kadeem J RoysterBrazilBernardo Dominic UNQUALIFIED
Nicolas P NestleRussiaAnna Fali UNQUALIFIED
Greenwood J PaprockiAustraliaIoni Bowcher QUALIFIED
Morrow N AlbaresCanadaAmy Elsner RENEWAL
Antonio A BriddickAustraliaIvan Magalhaes NEW
Clifford H MaletFranceAsiya Javayant UNQUALIFIED
Alejandro G MarrierBrazilIoni Bowcher RENEWAL
Clifford Y FerenczBrazilXuxue Feng PROPOSAL
Morrow P KuskoUnited KingdomXuxue Feng RENEWAL
Leja S RimJapanOnyama Limba 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>