Summer Sale is here 🏖️ Get 50% off with code PRSM25 Learn More

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
Francesco A SchemmerCanadaAsiya Javayant NEGOTIATION
Antonio C MarrierJapanXuxue Feng UNQUALIFIED
Aditya M MarrierCanadaStephen Shaw QUALIFIED
Ashley L WieserBrazilAnna Fali QUALIFIED
Ivar O RutaJapanStephen Shaw UNQUALIFIED
Cody U RimGermanyOnyama Limba QUALIFIED
Silvio C StensethJapanIoni Bowcher NEW
Alejandro X MarrierAustraliaXuxue Feng QUALIFIED
Mujtaba Y SchemmerUnited KingdomAnna Fali PROPOSAL
Julie D AlbaresCanadaStephen Shaw QUALIFIED
Isabel X AmigonJapanOnyama Limba NEW
Ivar Y KolmetzJapanBernardo Dominic NEW
Cody D PaprockiFranceElwin Sharvill NEW
Mayumi E OldroydIndiaElwin Sharvill NEGOTIATION
Ashley J RoysterSpainElwin Sharvill NEGOTIATION
Nicolas X GauchoSpainAnna Fali NEGOTIATION
Adams G SergiIndiaAnna Fali NEGOTIATION
Alejandro Q IturbideItalyXuxue Feng RENEWAL
Tony G RulapaughGermanyAnna Fali NEGOTIATION
Aditya Z PoquetteBrazilOnyama Limba QUALIFIED
Tony Z NestleFranceIoni Bowcher RENEWAL
Julie A PoquetteBrazilOnyama Limba RENEWAL
Izzy T FollerArgentinaElwin Sharvill NEW
Adams J WaycottIndiaStephen Shaw PROPOSAL
Aditya V PoquetteBrazilIvan Magalhaes PROPOSAL
Julie M WaycottRussiaBernardo Dominic UNQUALIFIED
Leon K AlbaresItalyBernardo Dominic NEW
Jennifer S PoquetteCanadaIvan Magalhaes NEGOTIATION
Aika K CampainGermanyAsiya Javayant PROPOSAL
Leja H BriddickArgentinaElwin Sharvill UNQUALIFIED
Wickens U MaletSpainBernardo Dominic QUALIFIED
Aruna Q NickaBrazilBernardo Dominic PROPOSAL
Smith N ButtJapanBernardo Dominic UNQUALIFIED
Julie H GlickAustraliaAsiya Javayant NEW
Jones O StockhamBrazilStephen Shaw RENEWAL
Clifford A FerenczRussiaElwin Sharvill QUALIFIED
Johnson W FollerFranceXuxue Feng UNQUALIFIED
Rodrigues S DilliardGermanyOnyama Limba RENEWAL
Francesco E PoquetteIndiaStephen Shaw UNQUALIFIED
James F RulapaughAustraliaAmy Elsner PROPOSAL
Salvatore F OstroskySpainAsiya Javayant QUALIFIED
Mayumi O CaldareraArgentinaOnyama Limba NEW
Francesco G DarakjyBrazilAmy Elsner UNQUALIFIED
Ivar S GarufiGermanyBernardo Dominic QUALIFIED
Octavia B MorascaGermanyIvan Magalhaes NEGOTIATION
Alejandro N KolmetzArgentinaAnna Fali RENEWAL
James A GlickCanadaElwin Sharvill QUALIFIED
Costa P PoquetteCanadaIoni Bowcher UNQUALIFIED
Mayumi D OstroskyGermanyXuxue Feng RENEWAL
Costa Z GlickRussiaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Costa G IturbideBrazilAnna Fali NEW
Mayumi I RoysterUnited KingdomAnna Fali QUALIFIED
Maria T AmigonFranceElwin Sharvill NEGOTIATION
Rodrigues V OldroydGermanyStephen Shaw NEGOTIATION
Clifford Y RimCanadaBernardo Dominic UNQUALIFIED
Juan H KuskoArgentinaIvan Magalhaes PROPOSAL
Stacey O PerinAustraliaOnyama Limba QUALIFIED
Maisha V WhobreyJapanIoni Bowcher NEGOTIATION
Aika U SaylorsArgentinaAnna Fali UNQUALIFIED
Greenwood M FerenczSpainAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo V MarrierItaly2025-07-25Feltz Printing Service UNQUALIFIED10Ioni Bowcher
1001Murillo H DilliardRussia2025-08-02King, Christopher A Esq PROPOSAL82Asiya Javayant
1002Claire U DilliardSpain2025-08-05Truhlar And Truhlar Attys QUALIFIED82Anna Fali
1003David P RutaGermany2025-07-29Feltz Printing Service NEGOTIATION87Elwin Sharvill
1004Maria M KolmetzCanada2025-07-28Morlong Associates PROPOSAL3Anna Fali
1005Smith V BriddickItaly2025-08-09Rousseaux, Michael Esq QUALIFIED87Bernardo Dominic
1006Jennifer H AmigonAustralia2025-07-14Printing Dimensions UNQUALIFIED9Asiya Javayant
1007Aika S ChuiUnited Kingdom2025-07-17Rangoni Of Florence QUALIFIED78Elwin Sharvill
1008Mujtaba L MarrierRussia2025-07-29Benton, John B Jr PROPOSAL95Xuxue Feng
1009Maria R DoeItaly2025-08-05Morlong Associates PROPOSAL96Elwin Sharvill
1010Stacey B FollerSpain2025-08-09Chanay, Jeffrey A Esq RENEWAL31Anna Fali
1011James S RimArgentina2025-07-31Buckley Miller Wright PROPOSAL7Anna Fali
1012Morrow H KolmetzBrazil2025-07-14Truhlar And Truhlar Attys QUALIFIED98Onyama Limba
1013Ashley F StockhamArgentina2025-08-10Truhlar And Truhlar Attys UNQUALIFIED85Xuxue Feng
1014Costa O WhobreyRussia2025-08-08Dorl, James J Esq NEW87Anna Fali
1015Maisha F PaprockiCanada2025-07-30Feltz Printing Service QUALIFIED32Xuxue Feng
1016Jeanfrancois O SaylorsIndia2025-08-08Chapman, Ross E Esq PROPOSAL84Onyama Limba
1017Isabel W PaprockiSpain2025-07-25Morlong Associates PROPOSAL42Elwin Sharvill
1018Kadeem X DilliardAustralia2025-07-18Commercial Press UNQUALIFIED15Ivan Magalhaes
1019Misaki F WieserRussia2025-07-25Commercial Press RENEWAL99Amy Elsner
1020Juan G GarufiItaly2025-07-29Chanay, Jeffrey A Esq NEGOTIATION55Bernardo Dominic
1021Julie B PaprockiJapan2025-08-03Chemel, James L Cpa RENEWAL0Bernardo Dominic
1022Jones L MorascaFrance2025-08-10Truhlar And Truhlar Attys PROPOSAL66Ivan Magalhaes
1023Octavia I DoeGermany2025-07-25Commercial Press NEW15Asiya Javayant
1024Julie O ShinkoRussia2025-07-18Truhlar And Truhlar Attys QUALIFIED10Ivan Magalhaes
1025Morrow G MarrierCanada2025-07-30Morlong Associates PROPOSAL45Asiya Javayant
1026Clifford C MacleadRussia2025-08-01Chapman, Ross E Esq NEW81Asiya Javayant
1027Ricardo S StensethFrance2025-08-04King, Christopher A Esq NEGOTIATION49Onyama Limba
1028Mujtaba J PoquetteUnited Kingdom2025-08-05Chanay, Jeffrey A Esq NEW7Anna Fali
1029Francesco Z MacleadRussia2025-07-28Chanay, Jeffrey A Esq PROPOSAL12Asiya Javayant
1030Johnson R FollerUnited Kingdom2025-07-18Feltz Printing Service UNQUALIFIED45Bernardo Dominic
1031Mujtaba X RimBrazil2025-08-12Chanay, Jeffrey A Esq NEW8Onyama Limba
1032Antonio R WhobreyArgentina2025-07-16Chanay, Jeffrey A Esq RENEWAL29Stephen Shaw
1033Juan S RoysterSpain2025-08-03Truhlar And Truhlar Attys PROPOSAL15Ioni Bowcher
1034Ivar W FlosiArgentina2025-07-15Rangoni Of Florence UNQUALIFIED80Anna Fali
1035Arvin P FigeroaIndia2025-08-01Rousseaux, Michael Esq PROPOSAL95Bernardo Dominic
1036Juan U NickaRussia2025-07-16Feltz Printing Service NEGOTIATION48Bernardo Dominic
1037Sinclair H WhobreyItaly2025-07-31Dorl, James J Esq QUALIFIED55Ivan Magalhaes
1038Johnson Q CampainArgentina2025-08-02Dorl, James J Esq QUALIFIED63Ioni Bowcher
1039Johnson C WieserAustralia2025-08-11Truhlar And Truhlar Attys UNQUALIFIED16Ioni Bowcher
1040Aika L ChuiRussia2025-08-08Chanay, Jeffrey A Esq RENEWAL66Ioni Bowcher
1041Mayumi K GauchoItaly2025-08-12Morlong Associates NEGOTIATION11Bernardo Dominic
1042Morrow X FerenczBrazil2025-08-08Printing Dimensions RENEWAL21Stephen Shaw
1043Francesco F MaletRussia2025-07-20Printing Dimensions NEW46Stephen Shaw
1044Kadeem H StensethArgentina2025-07-29Chanay, Jeffrey A Esq NEW13Asiya Javayant
1045Maisha R VenereIndia2025-08-02Rousseaux, Michael Esq PROPOSAL92Asiya Javayant
1046Mayumi S PerinFrance2025-08-11Benton, John B Jr NEGOTIATION38Amy Elsner
1047Munro E ShinkoSpain2025-08-06Feiner Bros NEW66Xuxue Feng
1048Emily B GillianIndia2025-07-25Dorl, James J Esq NEW11Stephen Shaw
1049Johnson K BriddickItaly2025-07-24King, Christopher A Esq QUALIFIED30Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Wickens P NickaCanadaIoni Bowcher RENEWAL
Octavia F CaldareraFranceBernardo Dominic NEW
Mujtaba F SchemmerJapanOnyama Limba NEW
Stacey U RulapaughSpainIvan Magalhaes QUALIFIED
Aika B WieserCanadaStephen Shaw PROPOSAL
Kaitlin H KolmetzFranceIoni Bowcher RENEWAL
Aruna P DilliardUnited KingdomIvan Magalhaes PROPOSAL
Maria W DarakjyJapanStephen Shaw NEGOTIATION
Greenwood U NickaIndiaStephen Shaw UNQUALIFIED
David V ChuiRussiaBernardo Dominic UNQUALIFIED
Ashley K PaprockiSpainStephen Shaw PROPOSAL
David C StockhamSpainAsiya Javayant NEW
David K WieserArgentinaStephen Shaw RENEWAL
Faith G MarrierIndiaBernardo Dominic UNQUALIFIED
Ashley J StockhamItalyXuxue Feng RENEWAL
Jones O SchemmerFranceIvan Magalhaes NEW
Maria F ShinkoCanadaIvan Magalhaes PROPOSAL
Clifford Y StockhamIndiaXuxue Feng PROPOSAL
Antonio A TollnerItalyStephen Shaw NEGOTIATION
Ricardo K KuskoItalyXuxue Feng NEW
Silvio A GauchoAustraliaElwin Sharvill UNQUALIFIED
Alejandro Y MaletCanadaIvan Magalhaes QUALIFIED
Leja D KolmetzRussiaXuxue Feng NEW
Maisha H GauchoItalyAsiya Javayant QUALIFIED
Ivar J WaycottCanadaIoni Bowcher NEW
Antonio I OstroskyArgentinaAnna Fali NEGOTIATION
Jeanfrancois O StensethBrazilAsiya Javayant UNQUALIFIED
Mujtaba T BowleyBrazilIoni Bowcher RENEWAL
Rodrigues L ChuiUnited KingdomIvan Magalhaes UNQUALIFIED
Julie F VocelkaGermanyElwin Sharvill NEGOTIATION
Nicolas N KuskoCanadaAsiya Javayant UNQUALIFIED
Isabel Y PaprockiBrazilIoni Bowcher RENEWAL
Julie R StensethArgentinaXuxue Feng UNQUALIFIED
Mayumi W PoquetteBrazilXuxue Feng UNQUALIFIED
Antonio E FigeroaGermanyOnyama Limba NEGOTIATION
Cody V NestleFranceBernardo Dominic NEGOTIATION
Aditya A PerinRussiaAsiya Javayant UNQUALIFIED
Octavia U FlosiArgentinaElwin Sharvill PROPOSAL
Munro S NestleRussiaIvan Magalhaes PROPOSAL
Silvio V KolmetzJapanAsiya Javayant PROPOSAL
Aruna N MorascaBrazilAsiya Javayant RENEWAL
Jennifer K PoquetteGermanyAsiya Javayant NEGOTIATION
Greenwood I RoysterCanadaOnyama Limba PROPOSAL
James T SlusarskiRussiaAmy Elsner NEGOTIATION
Jefferson W WaycottRussiaXuxue Feng RENEWAL
Jennifer N PerinFranceAnna Fali QUALIFIED
Isabel C OldroydUnited KingdomOnyama Limba QUALIFIED
Julie X BologniaFranceIvan Magalhaes QUALIFIED
Deepesh N BologniaUnited KingdomBernardo Dominic QUALIFIED
Darci U RulapaughFranceAmy Elsner PROPOSAL
Frozen Columns
Name
Kaitlin D Schemmer
Morrow Y Glick
Maisha N Butt
Stacey B Bowley
Jefferson N Stockham
James T Whobrey
Munro S Amigon
Maria V Morasca
Misaki S Marrier
Kadeem Q Marrier
Faith Q Morasca
Stacey H Oldroyd
Mujtaba T Rulapaugh
Faith A Perin
Chavez Z Figeroa
Munro L Ferencz
Tony E Ruta
Tony M Kolmetz
Julie B Albares
Maria W Bowley
Darci Z Shinko
Leja M Ruta
Darci U Inouye
Ricardo Y Amigon
David M Malet
Isabel Y Venere
Deepesh V Iturbide
Aditya T Waycott
Jones E Schemmer
Jefferson G Morasca
Izzy H Royster
Aika Y Wieser
Jefferson P Tollner
Kadeem R Campain
Smith U Chui
Aika O Vocelka
Izzy S Vocelka
Johnson J Royster
Morrow E Stenseth
Maisha Y Chui
Smith L Ostrosky
Costa N Schemmer
Arvin F Ferencz
Isabel A Perin
Antonio R Perin
Tony X Rulapaugh
Jennifer B Shinko
Claire K Glick
Darci Z Malet
Jones X Oldroyd
IdCountryDate
1000Argentina2025-07-30
1001Japan2025-07-24
1002Canada2025-07-21
1003France2025-07-19
1004Germany2025-07-27
1005Spain2025-07-23
1006Germany2025-07-18
1007France2025-08-02
1008United Kingdom2025-07-30
1009United Kingdom2025-07-19
1010Japan2025-08-08
1011United Kingdom2025-08-01
1012Brazil2025-08-02
1013Russia2025-08-03
1014Germany2025-08-04
1015United Kingdom2025-07-22
1016Australia2025-07-19
1017Brazil2025-07-15
1018United Kingdom2025-07-15
1019India2025-07-23
1020Australia2025-08-09
1021Argentina2025-07-16
1022Canada2025-08-05
1023Australia2025-07-24
1024Argentina2025-07-14
1025Japan2025-08-03
1026Canada2025-07-22
1027Russia2025-07-21
1028Canada2025-07-31
1029Spain2025-07-24
1030Spain2025-07-28
1031Australia2025-07-19
1032Brazil2025-08-05
1033India2025-07-17
1034United Kingdom2025-08-01
1035Argentina2025-07-20
1036Canada2025-07-24
1037Germany2025-08-02
1038Australia2025-07-27
1039Brazil2025-07-22
1040Canada2025-07-19
1041Italy2025-07-28
1042Japan2025-08-02
1043France2025-07-20
1044Argentina2025-07-18
1045France2025-07-26
1046Canada2025-07-29
1047Brazil2025-07-21
1048Japan2025-07-30
1049France2025-07-30

On-Demand Data

NameIdCountryDate
Alejandro W Caudy1000Japan2025-07-24
Stacey C Doe1001Italy2025-07-27
Tony C Foller1002Russia2025-07-15
Julie F Stockham1003Russia2025-07-16
Faith B Stenseth1004Argentina2025-07-28
Izzy E Perin1005India2025-07-24
Sinclair Y Bowley1006Brazil2025-08-03
Francesco N Poquette1007Italy2025-07-31
Stacey H Kolmetz1008Spain2025-07-17
Arvin K Royster1009Italy2025-07-28
Claire Z Figeroa1010Argentina2025-08-09
Murillo W Vocelka1011India2025-08-10
Ivar O Garufi1012France2025-08-04
Silvio G Doe1013Brazil2025-08-09
James D Dilliard1014France2025-07-14
Ashley V Vocelka1015Japan2025-08-02
Clifford X Butt1016Spain2025-08-05
Claire S Rulapaugh1017France2025-08-10
Adams L Butt1018Russia2025-07-14
Ashley T Ostrosky1019Brazil2025-08-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David J DarakjyRussiaAmy Elsner QUALIFIED
Octavia M PoquetteJapanStephen Shaw NEGOTIATION
Smith X RulapaughItalyXuxue Feng UNQUALIFIED
Kadeem U ShinkoBrazilAnna Fali NEW
David J CampainFranceBernardo Dominic NEW
Leon A GlickBrazilIoni Bowcher PROPOSAL
Kaitlin X SchemmerAustraliaElwin Sharvill PROPOSAL
Jefferson S IturbideRussiaOnyama Limba NEW
Aruna Q MaletAustraliaIoni Bowcher RENEWAL
Ashley F NickaGermanyElwin Sharvill PROPOSAL
Octavia I NestleBrazilAsiya Javayant PROPOSAL
Adams L PoquetteAustraliaIvan Magalhaes QUALIFIED
Antonio T OstroskyItalyXuxue Feng NEGOTIATION
Antonio F CaudyFranceStephen Shaw PROPOSAL
Munro H ShinkoRussiaBernardo Dominic UNQUALIFIED
Kadeem N AlbaresUnited KingdomAsiya Javayant NEGOTIATION
Chavez N MaletGermanyAsiya Javayant NEGOTIATION
Emily Z SlusarskiBrazilXuxue Feng PROPOSAL
Aditya R NestleAustraliaAmy Elsner NEGOTIATION
Misaki D MaletArgentinaOnyama Limba QUALIFIED
Sinclair O WhobreyUnited KingdomOnyama Limba NEGOTIATION
Antonio I OldroydBrazilBernardo Dominic QUALIFIED
Chavez J FerenczUnited KingdomStephen Shaw RENEWAL
Ivar J GillianRussiaIoni Bowcher QUALIFIED
Kadeem J DilliardJapanAnna Fali UNQUALIFIED
Deepesh F WhobreyBrazilAsiya Javayant NEW
Claire T ButtItalyXuxue Feng NEW
James G PoquetteJapanAmy Elsner RENEWAL
Maria P SlusarskiSpainAnna Fali UNQUALIFIED
Izzy T MarrierArgentinaAmy Elsner RENEWAL
Claire C FigeroaCanadaBernardo Dominic NEGOTIATION
Aruna J InouyeItalyAsiya Javayant NEGOTIATION
Cody P FigeroaAustraliaBernardo Dominic QUALIFIED
Aika L VocelkaCanadaAnna Fali NEGOTIATION
Salvatore P NickaIndiaIvan Magalhaes PROPOSAL
Maisha W MacleadUnited KingdomXuxue Feng NEW
Leon K SchemmerUnited KingdomOnyama Limba PROPOSAL
Kaitlin F TollnerSpainAmy Elsner NEGOTIATION
Morrow C RoysterIndiaAnna Fali PROPOSAL
Chavez A RimIndiaAmy Elsner 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>