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
David V FollerRussiaStephen Shaw QUALIFIED
Jefferson U BowleyBrazilOnyama Limba UNQUALIFIED
Morrow I BologniaBrazilAsiya Javayant PROPOSAL
Francesco L GlickArgentinaOnyama Limba NEW
Rodrigues O FollerRussiaAnna Fali NEW
Silvio G GillianRussiaStephen Shaw NEGOTIATION
Claire T WaycottArgentinaElwin Sharvill UNQUALIFIED
Claire G BowleyItalyBernardo Dominic NEGOTIATION
Murillo V BriddickGermanyElwin Sharvill PROPOSAL
Sinclair N GauchoAustraliaIvan Magalhaes PROPOSAL
Chavez Z RoysterArgentinaIoni Bowcher PROPOSAL
Ricardo J CaldareraFranceIvan Magalhaes NEGOTIATION
Ricardo E ShinkoRussiaOnyama Limba PROPOSAL
Jennifer N GlickItalyXuxue Feng QUALIFIED
Aika F PaprockiRussiaAnna Fali NEGOTIATION
Jones M MaletArgentinaOnyama Limba NEW
Aruna T RutaItalyAmy Elsner NEGOTIATION
Aika I MacleadSpainIoni Bowcher RENEWAL
Mayumi A RoysterIndiaIvan Magalhaes QUALIFIED
Nicolas H TollnerUnited KingdomStephen Shaw PROPOSAL
Nicolas K OldroydItalyBernardo Dominic QUALIFIED
Ivar S StockhamUnited KingdomStephen Shaw RENEWAL
James W InouyeGermanyIvan Magalhaes PROPOSAL
Izzy G MaletJapanXuxue Feng PROPOSAL
Morrow I NestleBrazilIvan Magalhaes RENEWAL
Juan C ShinkoGermanyElwin Sharvill RENEWAL
Stacey A MorascaIndiaOnyama Limba NEGOTIATION
Nicolas N DilliardJapanIoni Bowcher QUALIFIED
Murillo A FlosiIndiaAmy Elsner RENEWAL
Jones C WaycottGermanyOnyama Limba RENEWAL
Claire R IturbideArgentinaStephen Shaw NEW
Julie E GarufiAustraliaIvan Magalhaes UNQUALIFIED
Ricardo V SergiRussiaIvan Magalhaes PROPOSAL
Maria R MarrierAustraliaIvan Magalhaes UNQUALIFIED
Jeanfrancois P PaprockiFranceBernardo Dominic UNQUALIFIED
Adams S PoquetteRussiaIoni Bowcher UNQUALIFIED
Arvin V AmigonFranceXuxue Feng RENEWAL
Silvio O MorascaJapanIoni Bowcher UNQUALIFIED
Jones V InouyeBrazilAsiya Javayant QUALIFIED
David A FlosiItalyIoni Bowcher RENEWAL
Kadeem E BriddickItalyStephen Shaw PROPOSAL
Kaitlin G DarakjyRussiaXuxue Feng RENEWAL
Emily I FlosiRussiaBernardo Dominic PROPOSAL
Sinclair L MaletFranceIvan Magalhaes RENEWAL
Antonio K VocelkaItalyElwin Sharvill QUALIFIED
Jeanfrancois Y PaprockiRussiaAsiya Javayant NEW
Kaitlin K FerenczUnited KingdomAmy Elsner QUALIFIED
Francesco N ChuiSpainOnyama Limba NEW
Morrow D RulapaughSpainStephen Shaw PROPOSAL
Greenwood N StensethGermanyElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Deepesh P DarakjyJapanAmy Elsner QUALIFIED
Ivar R CaudyBrazilBernardo Dominic NEW
Clifford F AmigonRussiaOnyama Limba PROPOSAL
Kadeem B ShinkoIndiaAnna Fali RENEWAL
Morrow I FigeroaAustraliaIoni Bowcher RENEWAL
Julie I SlusarskiSpainAnna Fali NEW
Murillo U VocelkaCanadaStephen Shaw NEGOTIATION
Ashley A RoysterBrazilAsiya Javayant NEW
Leon C ButtRussiaAsiya Javayant PROPOSAL
Costa Q ShinkoItalyXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood P SergiFrance2026-10-03Chanay, Jeffrey A Esq QUALIFIED22Anna Fali
1001Leja L RimSpain2026-10-04Dorl, James J Esq UNQUALIFIED63Ivan Magalhaes
1002Claire D RutaFrance2026-10-15Buckley Miller Wright QUALIFIED74Ioni Bowcher
1003Julie Q FlosiArgentina2026-09-25Buckley Miller Wright UNQUALIFIED81Onyama Limba
1004Aika G SaylorsBrazil2026-09-25Benton, John B Jr QUALIFIED77Xuxue Feng
1005Emily G IturbideIndia2026-10-01Morlong Associates RENEWAL51Anna Fali
1006Aruna X MacleadSpain2026-10-07Dorl, James J Esq NEW61Bernardo Dominic
1007Faith R IturbideAustralia2026-09-30Feiner Bros UNQUALIFIED50Onyama Limba
1008Adams C MarrierFrance2026-10-15Benton, John B Jr UNQUALIFIED45Amy Elsner
1009Morrow C ChuiIndia2026-09-18King, Christopher A Esq NEW6Stephen Shaw
1010Wickens A RoysterArgentina2026-10-07Chanay, Jeffrey A Esq RENEWAL9Xuxue Feng
1011Costa Z SergiIndia2026-10-13Chapman, Ross E Esq NEW89Xuxue Feng
1012Sinclair U BologniaItaly2026-10-14King, Christopher A Esq NEW47Xuxue Feng
1013Aika M PoquetteJapan2026-10-12Benton, John B Jr QUALIFIED39Stephen Shaw
1014Octavia T RoysterFrance2026-09-30King, Christopher A Esq UNQUALIFIED16Anna Fali
1015Wickens T ShinkoJapan2026-10-08Feltz Printing Service PROPOSAL59Anna Fali
1016Leja C ShinkoBrazil2026-10-03Chanay, Jeffrey A Esq NEGOTIATION81Ioni Bowcher
1017Faith J SchemmerItaly2026-10-11Morlong Associates NEW23Ivan Magalhaes
1018Aruna U SchemmerJapan2026-09-28Rangoni Of Florence UNQUALIFIED25Bernardo Dominic
1019Mujtaba F SergiGermany2026-10-08King, Christopher A Esq UNQUALIFIED85Amy Elsner
1020Mujtaba S SaylorsArgentina2026-09-22Truhlar And Truhlar Attys NEW45Elwin Sharvill
1021David O IturbideFrance2026-09-25Feiner Bros RENEWAL19Xuxue Feng
1022Smith V ChuiAustralia2026-10-05Dorl, James J Esq NEW1Ivan Magalhaes
1023Salvatore S MaletRussia2026-10-09Dorl, James J Esq UNQUALIFIED94Ivan Magalhaes
1024Rodrigues S DoeCanada2026-10-09Rangoni Of Florence NEW34Amy Elsner
1025Tony C RimRussia2026-09-27Chapman, Ross E Esq NEGOTIATION73Amy Elsner
1026Jennifer S PoquetteArgentina2026-09-20Feltz Printing Service RENEWAL20Elwin Sharvill
1027Deepesh Z RoysterRussia2026-09-27Feltz Printing Service PROPOSAL11Ivan Magalhaes
1028Adams Q RoysterCanada2026-10-08Buckley Miller Wright NEGOTIATION73Ioni Bowcher
1029Francesco V FollerBrazil2026-09-24Buckley Miller Wright RENEWAL18Amy Elsner
1030Salvatore A SlusarskiBrazil2026-09-27Chanay, Jeffrey A Esq PROPOSAL92Ivan Magalhaes
1031Jeanfrancois M ButtRussia2026-09-20King, Christopher A Esq QUALIFIED7Bernardo Dominic
1032Deepesh O NickaJapan2026-09-24Rousseaux, Michael Esq NEGOTIATION4Elwin Sharvill
1033Deepesh P SlusarskiRussia2026-10-05Benton, John B Jr RENEWAL78Ivan Magalhaes
1034Jones A IturbideFrance2026-10-06Chanay, Jeffrey A Esq NEGOTIATION56Bernardo Dominic
1035Mayumi M MorascaGermany2026-10-14King, Christopher A Esq NEW7Bernardo Dominic
1036Maria H FollerSpain2026-10-03Commercial Press PROPOSAL24Amy Elsner
1037Julie E SlusarskiCanada2026-09-23King, Christopher A Esq QUALIFIED39Onyama Limba
1038Mujtaba M OstroskyJapan2026-09-18Truhlar And Truhlar Attys NEW69Onyama Limba
1039Mujtaba T KolmetzJapan2026-09-18Rangoni Of Florence RENEWAL68Ivan Magalhaes
1040Julie C BologniaJapan2026-09-21Dorl, James J Esq RENEWAL49Anna Fali
1041James C DilliardJapan2026-09-25Chapman, Ross E Esq QUALIFIED82Ivan Magalhaes
1042Jeanfrancois P SaylorsGermany2026-09-23Chapman, Ross E Esq UNQUALIFIED52Stephen Shaw
1043Darci F BowleyIndia2026-10-03Commercial Press NEGOTIATION39Ioni Bowcher
1044Stacey L KuskoItaly2026-10-08Rangoni Of Florence RENEWAL42Ioni Bowcher
1045Maisha I AmigonIndia2026-09-16Dorl, James J Esq UNQUALIFIED86Ivan Magalhaes
1046Smith E GarufiCanada2026-10-11Dorl, James J Esq NEGOTIATION34Elwin Sharvill
1047David R FigeroaItaly2026-09-25Rangoni Of Florence PROPOSAL63Ioni Bowcher
1048Aditya B InouyeGermany2026-10-12Benton, John B Jr PROPOSAL99Onyama Limba
1049Wickens U AlbaresFrance2026-09-21Truhlar And Truhlar Attys PROPOSAL88Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Deepesh C MaletBrazilAsiya Javayant QUALIFIED
Antonio U FollerUnited KingdomAsiya Javayant NEGOTIATION
Sinclair N GauchoIndiaBernardo Dominic NEGOTIATION
Leon N BriddickBrazilAsiya Javayant RENEWAL
Murillo Z ButtFranceBernardo Dominic NEW
Jeanfrancois M RulapaughRussiaAsiya Javayant PROPOSAL
Claire A PerinItalyXuxue Feng PROPOSAL
Mujtaba N InouyeAustraliaIvan Magalhaes NEGOTIATION
Jones V DoeFranceXuxue Feng UNQUALIFIED
Nicolas E RoysterBrazilXuxue Feng QUALIFIED
Antonio A GlickIndiaAsiya Javayant PROPOSAL
Kadeem X SlusarskiAustraliaAmy Elsner RENEWAL
Mayumi V PaprockiUnited KingdomBernardo Dominic NEGOTIATION
Maisha Z KolmetzItalyIoni Bowcher PROPOSAL
Aika Z FollerCanadaAnna Fali QUALIFIED
Deepesh E StockhamBrazilIoni Bowcher UNQUALIFIED
Nicolas I RulapaughIndiaStephen Shaw NEGOTIATION
Jones V DilliardGermanyStephen Shaw RENEWAL
Aditya B NestleUnited KingdomXuxue Feng RENEWAL
Arvin U DilliardUnited KingdomAnna Fali RENEWAL
Izzy Z RulapaughBrazilStephen Shaw NEW
Juan J BriddickCanadaAnna Fali RENEWAL
Arvin K StockhamGermanyIoni Bowcher RENEWAL
Jones Q PerinSpainBernardo Dominic UNQUALIFIED
Ivar C RimUnited KingdomIvan Magalhaes NEW
Kadeem S CampainGermanyAnna Fali PROPOSAL
Salvatore H RoysterRussiaIoni Bowcher UNQUALIFIED
Misaki B AmigonUnited KingdomIoni Bowcher PROPOSAL
Darci Y ButtArgentinaStephen Shaw UNQUALIFIED
Izzy U WhobreyBrazilOnyama Limba NEW
Morrow Q MaletCanadaIoni Bowcher PROPOSAL
Francesco Z SergiGermanyBernardo Dominic PROPOSAL
Izzy F MaletSpainElwin Sharvill UNQUALIFIED
Misaki S KuskoRussiaIvan Magalhaes NEW
Izzy X FollerFranceIoni Bowcher NEW
Nicolas T WhobreyRussiaAsiya Javayant UNQUALIFIED
Maria N SlusarskiJapanOnyama Limba NEGOTIATION
Darci X SergiItalyBernardo Dominic RENEWAL
David S IturbideIndiaAnna Fali NEW
Clifford X GarufiCanadaAsiya Javayant NEW
Cody A MorascaIndiaAnna Fali PROPOSAL
Faith Y FerenczSpainAmy Elsner QUALIFIED
Rodrigues R RimRussiaAsiya Javayant QUALIFIED
Morrow W MarrierGermanyIvan Magalhaes RENEWAL
Ivar E BriddickFranceXuxue Feng PROPOSAL
Leja S VocelkaItalyAnna Fali UNQUALIFIED
Greenwood R RutaJapanAmy Elsner RENEWAL
Maria J GarufiSpainXuxue Feng UNQUALIFIED
James G TollnerItalyAsiya Javayant NEW
Leon P GauchoBrazilIvan Magalhaes PROPOSAL
Frozen Columns
Name
James S Albares
Leon P Waycott
Stacey M Tollner
Nicolas F Caldarera
Claire X Ruta
Tony H Chui
Mayumi X Albares
Claire W Gillian
Juan Q Amigon
Clifford L Flosi
Aika L Nicka
Izzy X Malet
Johnson S Kolmetz
Arvin T Schemmer
Costa J Albares
Francesco X Butt
Jefferson S Amigon
Francesco Z Gillian
Jeanfrancois K Shinko
Leon N Whobrey
Deepesh U Royster
Murillo U Caldarera
Aruna C Oldroyd
Munro M Darakjy
Isabel G Campain
Aika M Caudy
Kaitlin Z Poquette
Leon M Doe
Faith K Waycott
Faith R Marrier
Jefferson G Bowley
Aditya W Darakjy
Aditya C Whobrey
Leon E Malet
Costa R Malet
Smith J Glick
Ricardo F Schemmer
Costa Y Whobrey
Antonio Y Nestle
Mujtaba I Ferencz
Aika P Royster
Kadeem F Slusarski
Izzy I Dilliard
Arvin U Chui
Kadeem W Caldarera
James F Poquette
David Q Ostrosky
Arvin R Albares
Munro D Gillian
Mujtaba W Darakjy
IdCountryDate
1000India2026-10-05
1001Brazil2026-10-02
1002India2026-10-04
1003Italy2026-09-18
1004Brazil2026-09-29
1005Russia2026-10-09
1006Brazil2026-10-14
1007Argentina2026-10-15
1008Australia2026-09-16
1009Brazil2026-09-19
1010Brazil2026-10-15
1011Italy2026-10-10
1012Russia2026-10-03
1013Italy2026-10-14
1014France2026-10-07
1015Spain2026-10-07
1016Spain2026-09-16
1017Canada2026-10-07
1018Japan2026-10-10
1019Russia2026-09-20
1020United Kingdom2026-09-24
1021Australia2026-09-30
1022Argentina2026-10-03
1023France2026-09-27
1024Germany2026-09-23
1025Argentina2026-10-08
1026Canada2026-09-20
1027Germany2026-10-01
1028Canada2026-09-29
1029Japan2026-09-18
1030United Kingdom2026-09-26
1031United Kingdom2026-09-21
1032Canada2026-10-04
1033India2026-09-21
1034Russia2026-10-14
1035Australia2026-09-23
1036Brazil2026-09-30
1037Australia2026-09-22
1038Spain2026-09-25
1039Germany2026-10-05
1040Italy2026-09-24
1041Russia2026-10-13
1042Russia2026-09-18
1043United Kingdom2026-09-20
1044Argentina2026-09-20
1045Argentina2026-10-09
1046India2026-09-18
1047Italy2026-10-02
1048Russia2026-09-26
1049Spain2026-10-12

On-Demand Data

NameIdCountryDate
Jeanfrancois Q Foller1000Germany2026-10-04
Tony A Rim1001Brazil2026-10-08
Smith R Marrier1002Canada2026-09-18
Munro F Royster1003Brazil2026-10-05
Silvio B Garufi1004Brazil2026-10-15
Costa R Royster1005United Kingdom2026-09-28
Salvatore A Wieser1006Italy2026-09-29
Adams A Flosi1007Russia2026-09-29
Cody G Waycott1008Australia2026-10-09
Ivar N Nestle1009Argentina2026-09-20
Aika I Butt1010Italy2026-09-17
Izzy X Gillian1011Spain2026-10-02
Chavez I Briddick1012India2026-10-06
Leja J Poquette1013Canada2026-10-13
Stacey N Stenseth1014United Kingdom2026-10-06
Mujtaba R Venere1015Brazil2026-10-07
Murillo W Slusarski1016Spain2026-10-14
Ivar K Garufi1017Italy2026-10-12
Mayumi T Wieser1018Brazil2026-10-01
Nicolas O Chui1019Russia2026-10-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin H CaudyUnited KingdomElwin Sharvill NEW
Rodrigues S BriddickItalyAmy Elsner NEGOTIATION
Stacey F NestleGermanyOnyama Limba QUALIFIED
Claire G NickaUnited KingdomXuxue Feng NEW
Leja N CaudyIndiaAmy Elsner QUALIFIED
Juan X CaudyCanadaStephen Shaw PROPOSAL
Aika P ButtSpainIoni Bowcher UNQUALIFIED
Mujtaba R AlbaresRussiaAnna Fali QUALIFIED
Munro B TollnerJapanIvan Magalhaes NEW
Jeanfrancois W WhobreyArgentinaIvan Magalhaes PROPOSAL
Leja W BriddickUnited KingdomAsiya Javayant NEW
Jones A MorascaUnited KingdomOnyama Limba UNQUALIFIED
Kaitlin I SaylorsIndiaStephen Shaw NEW
Smith Y DoeFranceStephen Shaw RENEWAL
Morrow W RulapaughIndiaStephen Shaw UNQUALIFIED
Costa X RutaRussiaAsiya Javayant NEW
Greenwood I RimUnited KingdomIoni Bowcher UNQUALIFIED
Mayumi W ButtCanadaBernardo Dominic NEW
Munro L PaprockiRussiaAnna Fali PROPOSAL
Maisha Z VenereGermanyIoni Bowcher PROPOSAL
Claire P ShinkoBrazilAsiya Javayant PROPOSAL
Antonio X DarakjySpainElwin Sharvill PROPOSAL
Emily K SaylorsAustraliaIvan Magalhaes QUALIFIED
Mayumi P OstroskyRussiaOnyama Limba NEW
Sinclair U VenereRussiaXuxue Feng PROPOSAL
Antonio Z GauchoUnited KingdomBernardo Dominic UNQUALIFIED
Kadeem U DilliardIndiaBernardo Dominic NEW
Rodrigues N NestleArgentinaAsiya Javayant UNQUALIFIED
Faith F InouyeAustraliaAnna Fali RENEWAL
James S InouyeItalyElwin Sharvill NEW
Wickens N VenereArgentinaAsiya Javayant NEGOTIATION
Juan R NestleBrazilIoni Bowcher RENEWAL
Aruna H NestleCanadaElwin Sharvill RENEWAL
Cody H ChuiArgentinaIvan Magalhaes NEW
Jones P MacleadJapanStephen Shaw QUALIFIED
Mayumi R AlbaresSpainStephen Shaw NEW
Salvatore A ChuiJapanIvan Magalhaes QUALIFIED
Antonio N CaudyUnited KingdomIoni Bowcher QUALIFIED
Rodrigues T PaprockiCanadaXuxue Feng RENEWAL
Claire S SergiIndiaIvan Magalhaes 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>