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
Isabel U PaprockiFranceBernardo Dominic UNQUALIFIED
David P RulapaughCanadaIvan Magalhaes RENEWAL
Alejandro Z ShinkoRussiaAmy Elsner PROPOSAL
Claire K TollnerAustraliaBernardo Dominic PROPOSAL
Chavez A OstroskyRussiaAmy Elsner RENEWAL
Izzy L DilliardCanadaElwin Sharvill NEGOTIATION
Kaitlin K OldroydBrazilXuxue Feng QUALIFIED
Silvio P CaudyAustraliaAmy Elsner QUALIFIED
Jennifer D RutaCanadaOnyama Limba QUALIFIED
Aika U RutaUnited KingdomXuxue Feng UNQUALIFIED
Isabel F SergiFranceStephen Shaw QUALIFIED
Murillo X InouyeJapanXuxue Feng RENEWAL
Ricardo H RimAustraliaElwin Sharvill PROPOSAL
Leon Z RulapaughFranceStephen Shaw UNQUALIFIED
Octavia S WaycottUnited KingdomBernardo Dominic NEGOTIATION
Aditya S DoeIndiaIvan Magalhaes RENEWAL
Cody W FigeroaIndiaOnyama Limba NEGOTIATION
Murillo U NestleFranceIvan Magalhaes PROPOSAL
Arvin U DarakjyRussiaAnna Fali PROPOSAL
Munro I FlosiRussiaStephen Shaw RENEWAL
Emily U SergiJapanElwin Sharvill PROPOSAL
Octavia O GlickBrazilIoni Bowcher UNQUALIFIED
Murillo Y IturbideFranceAsiya Javayant RENEWAL
Aika J SchemmerRussiaAmy Elsner NEGOTIATION
Kaitlin D NestleGermanyElwin Sharvill NEGOTIATION
Aditya K GlickArgentinaStephen Shaw PROPOSAL
Chavez E GarufiCanadaAsiya Javayant RENEWAL
Maisha Z RulapaughBrazilBernardo Dominic UNQUALIFIED
Stacey N AmigonCanadaBernardo Dominic NEGOTIATION
Ivar V SergiGermanyIvan Magalhaes QUALIFIED
Costa C FerenczGermanyElwin Sharvill RENEWAL
Salvatore Y PerinArgentinaStephen Shaw QUALIFIED
Jeanfrancois K DilliardCanadaAsiya Javayant NEW
Antonio A VenereArgentinaBernardo Dominic UNQUALIFIED
Leon C VenereAustraliaIoni Bowcher NEGOTIATION
Ivar X GillianCanadaXuxue Feng NEGOTIATION
Clifford X NickaAustraliaAsiya Javayant NEGOTIATION
Izzy K PerinGermanyIoni Bowcher QUALIFIED
Darci I KolmetzCanadaAnna Fali UNQUALIFIED
Julie P ButtJapanOnyama Limba UNQUALIFIED
Mayumi P AmigonGermanyAmy Elsner PROPOSAL
Jefferson U RulapaughAustraliaIoni Bowcher NEGOTIATION
Ricardo Q MacleadUnited KingdomOnyama Limba RENEWAL
Julie H RutaSpainBernardo Dominic RENEWAL
Clifford K CampainGermanyIvan Magalhaes QUALIFIED
Ashley X IturbideBrazilStephen Shaw RENEWAL
Morrow T DoeCanadaIoni Bowcher QUALIFIED
Antonio U MarrierAustraliaStephen Shaw UNQUALIFIED
Clifford H DilliardCanadaBernardo Dominic QUALIFIED
Ricardo K FlosiArgentinaAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Leon J TollnerArgentinaIvan Magalhaes NEW
Ricardo N ShinkoRussiaIoni Bowcher PROPOSAL
Aditya G MacleadItalyIvan Magalhaes UNQUALIFIED
Deepesh U DarakjyGermanyOnyama Limba NEGOTIATION
Ricardo L BowleyItalyAnna Fali PROPOSAL
Jones I GauchoCanadaAnna Fali UNQUALIFIED
Jennifer S KolmetzRussiaIoni Bowcher NEW
Claire G DoeIndiaStephen Shaw QUALIFIED
Misaki T MarrierIndiaElwin Sharvill QUALIFIED
Munro X MacleadUnited KingdomXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood U GarufiItaly2026-11-04Benton, John B Jr PROPOSAL66Xuxue Feng
1001Stacey B ChuiArgentina2026-10-20Printing Dimensions QUALIFIED11Anna Fali
1002Greenwood S NestleRussia2026-10-13Feiner Bros RENEWAL91Anna Fali
1003Johnson A ButtFrance2026-10-17Chanay, Jeffrey A Esq UNQUALIFIED83Ioni Bowcher
1004Salvatore T FerenczUnited Kingdom2026-10-31Chemel, James L Cpa PROPOSAL19Stephen Shaw
1005Munro V MaletCanada2026-10-16Chapman, Ross E Esq NEW64Bernardo Dominic
1006Claire M PerinArgentina2026-10-30Truhlar And Truhlar Attys UNQUALIFIED0Asiya Javayant
1007Emily Q TollnerCanada2026-11-11Morlong Associates NEGOTIATION67Ioni Bowcher
1008Leja F NestleIndia2026-11-01Rangoni Of Florence QUALIFIED48Amy Elsner
1009James Z NickaUnited Kingdom2026-10-22Rangoni Of Florence QUALIFIED3Xuxue Feng
1010Salvatore Y ShinkoAustralia2026-10-18Feiner Bros QUALIFIED89Elwin Sharvill
1011Stacey O GarufiBrazil2026-10-19Dorl, James J Esq NEW70Onyama Limba
1012Faith U DoeBrazil2026-10-13Benton, John B Jr PROPOSAL3Anna Fali
1013Deepesh J TollnerBrazil2026-11-07Buckley Miller Wright NEGOTIATION92Xuxue Feng
1014Isabel L GauchoArgentina2026-10-22Commercial Press RENEWAL59Bernardo Dominic
1015Costa C GlickSpain2026-11-05Chemel, James L Cpa RENEWAL28Anna Fali
1016Juan Q MarrierJapan2026-11-11Printing Dimensions RENEWAL88Ioni Bowcher
1017Francesco Y FlosiItaly2026-11-02Truhlar And Truhlar Attys QUALIFIED85Xuxue Feng
1018Adams V GlickFrance2026-10-21Morlong Associates RENEWAL42Xuxue Feng
1019Aruna M DoeIndia2026-10-30Buckley Miller Wright UNQUALIFIED77Ivan Magalhaes
1020Costa S WaycottRussia2026-11-03Dorl, James J Esq RENEWAL73Onyama Limba
1021Emily I FollerJapan2026-10-19Chapman, Ross E Esq NEW64Stephen Shaw
1022Aruna Z GillianCanada2026-11-11Chemel, James L Cpa PROPOSAL80Amy Elsner
1023Aditya I SlusarskiJapan2026-10-28Rangoni Of Florence NEW46Xuxue Feng
1024Jones D CaldareraFrance2026-10-17Chanay, Jeffrey A Esq RENEWAL23Elwin Sharvill
1025Aditya G MaletArgentina2026-10-26Chemel, James L Cpa NEGOTIATION16Amy Elsner
1026Isabel V NestleFrance2026-11-07Chemel, James L Cpa NEGOTIATION72Onyama Limba
1027Juan F OldroydFrance2026-11-07Chapman, Ross E Esq RENEWAL40Asiya Javayant
1028Rodrigues X RimIndia2026-10-19Rangoni Of Florence QUALIFIED67Asiya Javayant
1029Salvatore U RimIndia2026-10-29Buckley Miller Wright RENEWAL47Amy Elsner
1030Mujtaba Q KuskoFrance2026-11-03Morlong Associates PROPOSAL66Ivan Magalhaes
1031Deepesh R GauchoIndia2026-11-11Dorl, James J Esq QUALIFIED7Elwin Sharvill
1032Maria N MaletCanada2026-10-18Chemel, James L Cpa NEW6Stephen Shaw
1033Munro D PoquetteGermany2026-10-28Truhlar And Truhlar Attys NEW46Ivan Magalhaes
1034Darci R ChuiBrazil2026-10-24Commercial Press UNQUALIFIED78Bernardo Dominic
1035Kadeem Z StensethBrazil2026-11-10King, Christopher A Esq UNQUALIFIED47Anna Fali
1036Johnson P SaylorsFrance2026-11-01King, Christopher A Esq QUALIFIED89Ioni Bowcher
1037Chavez T DilliardArgentina2026-10-21Buckley Miller Wright QUALIFIED87Onyama Limba
1038Wickens Q GarufiIndia2026-10-17Chapman, Ross E Esq NEW27Anna Fali
1039Morrow C ChuiAustralia2026-11-08Rousseaux, Michael Esq NEW39Ioni Bowcher
1040Costa B IturbideUnited Kingdom2026-11-02Morlong Associates RENEWAL34Amy Elsner
1041Maria Y RutaAustralia2026-11-04Dorl, James J Esq UNQUALIFIED88Stephen Shaw
1042Aika M KolmetzItaly2026-11-10Chanay, Jeffrey A Esq RENEWAL17Stephen Shaw
1043Aruna B RoysterJapan2026-11-10Rousseaux, Michael Esq RENEWAL48Amy Elsner
1044Aruna A VocelkaIndia2026-11-01Truhlar And Truhlar Attys RENEWAL63Onyama Limba
1045Smith L MaletArgentina2026-10-31Truhlar And Truhlar Attys NEGOTIATION55Xuxue Feng
1046Claire F DilliardJapan2026-11-07Rangoni Of Florence NEGOTIATION29Xuxue Feng
1047Deepesh V OstroskyFrance2026-10-19Chapman, Ross E Esq RENEWAL79Xuxue Feng
1048David Z MorascaArgentina2026-10-25Buckley Miller Wright RENEWAL2Bernardo Dominic
1049Greenwood V StensethCanada2026-10-26Feiner Bros QUALIFIED7Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Isabel I GlickGermanyOnyama Limba QUALIFIED
Ricardo K DilliardSpainBernardo Dominic NEGOTIATION
Faith E DoeBrazilIvan Magalhaes NEW
Sinclair K RutaItalyXuxue Feng NEGOTIATION
Chavez D BologniaIndiaElwin Sharvill NEGOTIATION
Stacey B GlickFranceBernardo Dominic NEGOTIATION
Morrow B PaprockiArgentinaAsiya Javayant NEGOTIATION
Faith T FerenczBrazilStephen Shaw UNQUALIFIED
Aditya X TollnerUnited KingdomIoni Bowcher NEGOTIATION
Misaki L GlickItalyElwin Sharvill UNQUALIFIED
Ricardo P DilliardSpainOnyama Limba NEW
Faith R RoysterAustraliaIvan Magalhaes QUALIFIED
Murillo M GlickFranceAnna Fali NEGOTIATION
Izzy Q CampainUnited KingdomOnyama Limba PROPOSAL
Jennifer V ButtItalyXuxue Feng NEGOTIATION
Sinclair P NestleCanadaIoni Bowcher PROPOSAL
Kaitlin Y DilliardAustraliaStephen Shaw NEW
Cody L GillianAustraliaIoni Bowcher RENEWAL
David C RoysterBrazilOnyama Limba RENEWAL
Ashley B AmigonBrazilOnyama Limba PROPOSAL
Ricardo F OstroskyCanadaElwin Sharvill NEGOTIATION
Juan C BriddickItalyAnna Fali PROPOSAL
Jefferson X KolmetzArgentinaOnyama Limba UNQUALIFIED
Leon I MarrierBrazilIvan Magalhaes NEW
Misaki C NickaGermanyAmy Elsner RENEWAL
David E StockhamAustraliaIvan Magalhaes RENEWAL
James D FlosiFranceElwin Sharvill NEGOTIATION
Clifford N OstroskyFranceAsiya Javayant NEGOTIATION
Smith K KolmetzAustraliaIoni Bowcher RENEWAL
Murillo J DarakjySpainIvan Magalhaes RENEWAL
Maria K WieserBrazilXuxue Feng UNQUALIFIED
Arvin R AmigonGermanyXuxue Feng RENEWAL
Nicolas D StockhamFranceXuxue Feng RENEWAL
Isabel M BriddickJapanAsiya Javayant NEW
Octavia A CampainJapanElwin Sharvill NEGOTIATION
Munro U PaprockiIndiaXuxue Feng NEGOTIATION
Adams S GlickArgentinaStephen Shaw RENEWAL
Wickens R StensethUnited KingdomElwin Sharvill PROPOSAL
Aika O BowleyRussiaIoni Bowcher NEGOTIATION
Maisha M GlickBrazilStephen Shaw PROPOSAL
Alejandro C VocelkaItalyOnyama Limba QUALIFIED
James I CampainArgentinaAsiya Javayant RENEWAL
Juan Q NestleJapanStephen Shaw RENEWAL
Francesco V RulapaughJapanXuxue Feng PROPOSAL
Smith T TollnerJapanOnyama Limba RENEWAL
Chavez J MacleadAustraliaAnna Fali UNQUALIFIED
Izzy Y GarufiAustraliaAnna Fali NEGOTIATION
Clifford D DoeGermanyIoni Bowcher UNQUALIFIED
Maria C NestleFranceStephen Shaw UNQUALIFIED
Stacey L BologniaGermanyXuxue Feng UNQUALIFIED
Frozen Columns
Name
Aditya G Waycott
Adams J Amigon
Costa Z Schemmer
Cody W Gaucho
Jefferson H Marrier
Clifford Z Briddick
Ashley Q Ruta
Juan W Doe
Ivar K Poquette
Johnson Y Marrier
Salvatore A Wieser
Ashley S Kusko
Murillo S Kusko
Misaki E Butt
Emily T Dilliard
Aika R Waycott
Arvin L Slusarski
Julie J Gillian
Francesco C Bolognia
Misaki C Gillian
Darci O Figeroa
Maisha H Kolmetz
Munro Q Rim
Chavez B Royster
Murillo W Venere
Salvatore N Poquette
Nicolas U Iturbide
Octavia R Saylors
Wickens Q Malet
Arvin A Stenseth
Izzy P Waycott
Claire P Ostrosky
Costa T Oldroyd
Darci S Marrier
Juan D Kolmetz
Jones H Sergi
Cody M Figeroa
Chavez U Garufi
Chavez W Ostrosky
Morrow I Albares
Francesco P Paprocki
Johnson E Bowley
Jefferson J Briddick
Kadeem Y Garufi
Maria O Venere
Maria O Perin
Kaitlin X Rulapaugh
Kaitlin V Malet
Jones E Ruta
Darci U Darakjy
IdCountryDate
1000Germany2026-10-18
1001Argentina2026-11-04
1002United Kingdom2026-11-08
1003Russia2026-10-18
1004Russia2026-10-23
1005Australia2026-11-04
1006France2026-10-15
1007Brazil2026-11-02
1008Italy2026-10-22
1009Russia2026-10-21
1010Brazil2026-10-24
1011Argentina2026-10-21
1012Italy2026-10-29
1013Spain2026-10-24
1014India2026-10-23
1015United Kingdom2026-10-24
1016India2026-10-30
1017Spain2026-10-28
1018Canada2026-11-04
1019United Kingdom2026-10-13
1020Russia2026-11-06
1021Japan2026-10-26
1022United Kingdom2026-10-15
1023Spain2026-10-13
1024Japan2026-10-26
1025France2026-11-05
1026Brazil2026-10-21
1027Germany2026-10-17
1028Brazil2026-10-27
1029Brazil2026-11-11
1030Germany2026-10-24
1031Canada2026-11-10
1032Italy2026-11-05
1033Argentina2026-10-24
1034Canada2026-10-24
1035Brazil2026-10-31
1036Italy2026-10-16
1037France2026-10-26
1038Spain2026-11-10
1039India2026-11-05
1040United Kingdom2026-11-07
1041Canada2026-10-15
1042United Kingdom2026-10-14
1043Canada2026-11-03
1044Brazil2026-10-14
1045Japan2026-11-02
1046Argentina2026-10-29
1047Japan2026-10-22
1048United Kingdom2026-11-07
1049Argentina2026-11-02

On-Demand Data

NameIdCountryDate
Greenwood P Shinko1000Germany2026-11-08
Adams O Poquette1001Japan2026-10-18
Wickens X Inouye1002United Kingdom2026-11-03
Francesco I Gillian1003Russia2026-10-16
Maria X Caldarera1004United Kingdom2026-11-02
Nicolas F Gaucho1005Spain2026-10-26
Chavez F Rulapaugh1006Canada2026-10-28
David X Royster1007Australia2026-10-25
Leon M Tollner1008Germany2026-10-21
Kadeem Y Waycott1009Russia2026-10-18
Adams G Sergi1010Russia2026-11-09
Morrow E Iturbide1011Italy2026-10-15
James O Darakjy1012Canada2026-11-02
Murillo A Perin1013Russia2026-11-06
Clifford J Bowley1014Germany2026-11-05
Aruna D Rulapaugh1015United Kingdom2026-11-10
Julie P Briddick1016Spain2026-10-16
Julie L Garufi1017Brazil2026-11-10
Wickens I Inouye1018Spain2026-10-21
Emily H Kusko1019India2026-10-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem P NestleAustraliaIoni Bowcher NEW
Julie Y NestleBrazilXuxue Feng NEGOTIATION
Ashley J GauchoIndiaOnyama Limba PROPOSAL
Kaitlin R NestleCanadaAsiya Javayant RENEWAL
Johnson N BowleyCanadaBernardo Dominic QUALIFIED
Isabel R CampainSpainAnna Fali NEGOTIATION
Adams C StensethJapanXuxue Feng QUALIFIED
James C DilliardAustraliaElwin Sharvill UNQUALIFIED
Munro L WaycottArgentinaOnyama Limba NEGOTIATION
Aditya I KuskoFranceIoni Bowcher NEW
Misaki J WhobreyAustraliaStephen Shaw QUALIFIED
Jefferson P IturbideAustraliaBernardo Dominic NEW
Francesco F WieserGermanyXuxue Feng PROPOSAL
Sinclair X VocelkaSpainAsiya Javayant UNQUALIFIED
Ricardo T NickaArgentinaIvan Magalhaes NEGOTIATION
Kaitlin M KolmetzSpainElwin Sharvill NEGOTIATION
Wickens U SaylorsAustraliaElwin Sharvill NEW
Leon V RulapaughCanadaAmy Elsner NEGOTIATION
Francesco M WhobreyCanadaBernardo Dominic PROPOSAL
Greenwood R FerenczCanadaElwin Sharvill NEW
Rodrigues S SlusarskiRussiaAsiya Javayant UNQUALIFIED
Adams L CaudyIndiaElwin Sharvill RENEWAL
Salvatore Q RimGermanyBernardo Dominic NEW
Smith T PaprockiArgentinaElwin Sharvill RENEWAL
Jennifer J InouyeUnited KingdomIvan Magalhaes QUALIFIED
Maria A KolmetzGermanyBernardo Dominic NEW
Jefferson K PoquetteArgentinaBernardo Dominic RENEWAL
Costa Z OstroskyItalyAsiya Javayant PROPOSAL
Maria E ChuiBrazilElwin Sharvill NEW
Francesco Q SchemmerArgentinaStephen Shaw PROPOSAL
James Q BowleyBrazilElwin Sharvill NEW
Salvatore L MacleadArgentinaIvan Magalhaes NEGOTIATION
Alejandro M KolmetzSpainBernardo Dominic QUALIFIED
Octavia F BologniaFranceIoni Bowcher QUALIFIED
Francesco M KolmetzArgentinaOnyama Limba RENEWAL
Nicolas D CampainIndiaStephen Shaw UNQUALIFIED
Cody O MarrierBrazilAsiya Javayant NEW
Smith C SaylorsArgentinaAnna Fali NEW
Clifford E CampainItalyXuxue Feng PROPOSAL
Deepesh S NickaIndiaBernardo Dominic QUALIFIED

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