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
Greenwood L NestleSpainElwin Sharvill NEGOTIATION
Antonio I WhobreySpainXuxue Feng RENEWAL
Cody S MaletRussiaIvan Magalhaes UNQUALIFIED
Greenwood X GlickCanadaXuxue Feng UNQUALIFIED
Jeanfrancois K SergiJapanIoni Bowcher NEW
Maria U CaldareraJapanIoni Bowcher NEW
Aditya U RoysterCanadaBernardo Dominic NEW
Ashley E DarakjySpainAnna Fali NEW
Misaki L PaprockiUnited KingdomAmy Elsner NEW
Mujtaba P InouyeSpainIoni Bowcher UNQUALIFIED
Mujtaba D DilliardSpainIvan Magalhaes NEW
Greenwood E BowleyArgentinaElwin Sharvill RENEWAL
Emily G SchemmerItalyAmy Elsner UNQUALIFIED
Aika U DoeRussiaOnyama Limba RENEWAL
David D OldroydFranceStephen Shaw UNQUALIFIED
Cody L OldroydCanadaXuxue Feng QUALIFIED
Rodrigues L GauchoArgentinaElwin Sharvill NEW
Johnson T PoquetteCanadaElwin Sharvill QUALIFIED
Clifford V StensethCanadaAnna Fali NEGOTIATION
Alejandro S VocelkaItalyBernardo Dominic RENEWAL
Cody W BriddickRussiaIvan Magalhaes UNQUALIFIED
Ashley S RimJapanOnyama Limba NEW
Clifford D GillianIndiaAmy Elsner QUALIFIED
Isabel L VocelkaRussiaAsiya Javayant PROPOSAL
Costa L CaldareraGermanyElwin Sharvill NEW
Deepesh M OldroydCanadaOnyama Limba RENEWAL
Jones L SchemmerUnited KingdomAnna Fali RENEWAL
Cody U BowleyUnited KingdomXuxue Feng QUALIFIED
Stacey V BriddickUnited KingdomAmy Elsner PROPOSAL
Octavia F NestleArgentinaAsiya Javayant QUALIFIED
Leja I FerenczAustraliaBernardo Dominic QUALIFIED
James W SlusarskiIndiaIoni Bowcher NEGOTIATION
Ricardo Z PerinAustraliaStephen Shaw UNQUALIFIED
Aditya A SaylorsSpainAnna Fali QUALIFIED
Octavia F OldroydFranceElwin Sharvill QUALIFIED
Juan K NickaIndiaXuxue Feng NEGOTIATION
Julie Q StockhamItalyStephen Shaw NEW
Maria D BowleyItalyAsiya Javayant PROPOSAL
Jefferson T CaudyIndiaOnyama Limba QUALIFIED
Leon Z DilliardBrazilAnna Fali NEGOTIATION
Juan Q RutaSpainStephen Shaw NEW
James P FigeroaAustraliaIvan Magalhaes QUALIFIED
Claire P CaldareraUnited KingdomAsiya Javayant NEW
Greenwood H MarrierItalyIoni Bowcher UNQUALIFIED
Ivar L VenereIndiaElwin Sharvill NEGOTIATION
Mayumi S ShinkoGermanyElwin Sharvill QUALIFIED
David S FerenczRussiaIoni Bowcher QUALIFIED
Izzy D PoquetteJapanIoni Bowcher UNQUALIFIED
Kadeem E SlusarskiSpainIoni Bowcher NEGOTIATION
Stacey N VocelkaCanadaOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jones K RulapaughBrazilAnna Fali NEGOTIATION
Darci A DarakjyIndiaIvan Magalhaes NEGOTIATION
Munro W ButtAustraliaAnna Fali NEGOTIATION
Greenwood W NestleUnited KingdomIvan Magalhaes QUALIFIED
Sinclair V FlosiRussiaXuxue Feng RENEWAL
Tony J MaletAustraliaStephen Shaw NEW
Kaitlin Y DoeJapanOnyama Limba UNQUALIFIED
Ivar W WieserArgentinaOnyama Limba UNQUALIFIED
Munro F KuskoCanadaXuxue Feng UNQUALIFIED
Aruna G CaudyFranceAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony V RimCanada2026-10-28King, Christopher A Esq QUALIFIED11Bernardo Dominic
1001Smith E KuskoSpain2026-10-17Rousseaux, Michael Esq NEW59Xuxue Feng
1002Nicolas H PerinFrance2026-11-03Chapman, Ross E Esq PROPOSAL95Elwin Sharvill
1003Darci S BriddickAustralia2026-10-14Chanay, Jeffrey A Esq QUALIFIED65Amy Elsner
1004Chavez S OldroydGermany2026-11-07Chanay, Jeffrey A Esq UNQUALIFIED0Stephen Shaw
1005Silvio H StensethItaly2026-10-09Commercial Press QUALIFIED21Ioni Bowcher
1006Misaki O CaldareraJapan2026-11-02Rousseaux, Michael Esq RENEWAL85Ioni Bowcher
1007Greenwood Q MarrierAustralia2026-11-07Benton, John B Jr NEGOTIATION7Ivan Magalhaes
1008Cody H PoquetteAustralia2026-10-15Truhlar And Truhlar Attys PROPOSAL87Stephen Shaw
1009Octavia C NestleAustralia2026-10-27Chanay, Jeffrey A Esq NEGOTIATION0Ivan Magalhaes
1010Juan J PaprockiCanada2026-11-01Rangoni Of Florence NEGOTIATION46Xuxue Feng
1011Jeanfrancois G MacleadUnited Kingdom2026-10-12Truhlar And Truhlar Attys PROPOSAL78Ivan Magalhaes
1012Salvatore K CaudyAustralia2026-10-19Chemel, James L Cpa RENEWAL65Bernardo Dominic
1013Adams O BowleyIndia2026-11-01Buckley Miller Wright RENEWAL1Stephen Shaw
1014Francesco Z OldroydCanada2026-10-31Buckley Miller Wright NEW10Amy Elsner
1015Nicolas N SaylorsAustralia2026-11-04Rousseaux, Michael Esq QUALIFIED99Onyama Limba
1016Faith T PerinIndia2026-10-27Morlong Associates QUALIFIED86Asiya Javayant
1017Julie H ChuiItaly2026-10-23Buckley Miller Wright RENEWAL59Ivan Magalhaes
1018Deepesh Z CampainCanada2026-10-26Chanay, Jeffrey A Esq UNQUALIFIED59Ioni Bowcher
1019Arvin T MacleadArgentina2026-10-29Truhlar And Truhlar Attys PROPOSAL33Xuxue Feng
1020Emily P StockhamJapan2026-11-02Chemel, James L Cpa RENEWAL10Stephen Shaw
1021Munro M ButtIndia2026-10-13Chemel, James L Cpa NEW49Anna Fali
1022Nicolas C ChuiCanada2026-10-25Commercial Press PROPOSAL26Stephen Shaw
1023Chavez O AlbaresRussia2026-11-03Rousseaux, Michael Esq NEW78Ioni Bowcher
1024Sinclair O MaletArgentina2026-11-02Feiner Bros QUALIFIED23Elwin Sharvill
1025Ashley M IturbideAustralia2026-10-15Feiner Bros PROPOSAL99Xuxue Feng
1026Isabel T GarufiSpain2026-10-18Truhlar And Truhlar Attys PROPOSAL77Anna Fali
1027David T MorascaCanada2026-10-24Commercial Press PROPOSAL42Ivan Magalhaes
1028Aruna R WaycottAustralia2026-10-26Truhlar And Truhlar Attys NEW9Xuxue Feng
1029Jones H InouyeGermany2026-10-30Benton, John B Jr UNQUALIFIED23Amy Elsner
1030Stacey H ShinkoFrance2026-11-07Buckley Miller Wright RENEWAL44Asiya Javayant
1031Aditya O GillianBrazil2026-11-04Morlong Associates PROPOSAL13Elwin Sharvill
1032Izzy Q IturbideBrazil2026-10-21Morlong Associates QUALIFIED75Bernardo Dominic
1033Leon U AmigonAustralia2026-11-02Feiner Bros NEW61Asiya Javayant
1034Darci Q KolmetzFrance2026-10-20Chemel, James L Cpa UNQUALIFIED31Asiya Javayant
1035Salvatore D MarrierArgentina2026-10-20Rousseaux, Michael Esq NEGOTIATION13Elwin Sharvill
1036Greenwood Q PerinFrance2026-10-25Feiner Bros NEGOTIATION98Xuxue Feng
1037Ashley L MaletArgentina2026-11-02Chapman, Ross E Esq QUALIFIED63Onyama Limba
1038Darci R ShinkoArgentina2026-10-14Chapman, Ross E Esq NEW66Elwin Sharvill
1039Leon S FollerAustralia2026-10-13Truhlar And Truhlar Attys QUALIFIED50Asiya Javayant
1040Juan D MaletGermany2026-10-25Rangoni Of Florence NEW29Ivan Magalhaes
1041Jefferson G StensethCanada2026-11-03King, Christopher A Esq RENEWAL11Xuxue Feng
1042Maria D RulapaughIndia2026-10-29Feiner Bros QUALIFIED10Xuxue Feng
1043Ivar V SaylorsArgentina2026-11-01Chapman, Ross E Esq NEW7Ivan Magalhaes
1044Jefferson H NickaCanada2026-10-10Commercial Press QUALIFIED98Bernardo Dominic
1045Mayumi M BologniaFrance2026-10-23Benton, John B Jr NEW98Ivan Magalhaes
1046Johnson Q StockhamJapan2026-10-24Chanay, Jeffrey A Esq NEW32Stephen Shaw
1047Aruna F ButtItaly2026-10-17Chemel, James L Cpa UNQUALIFIED99Onyama Limba
1048Smith D InouyeUnited Kingdom2026-10-29Commercial Press PROPOSAL22Ivan Magalhaes
1049Jefferson L VenereGermany2026-11-03Truhlar And Truhlar Attys NEW77Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Juan Z MacleadItalyIvan Magalhaes NEW
Aruna M VocelkaCanadaAnna Fali NEW
Izzy R OstroskyArgentinaAnna Fali QUALIFIED
Smith O AmigonCanadaBernardo Dominic RENEWAL
Jefferson T BologniaUnited KingdomIoni Bowcher QUALIFIED
Johnson G VenereItalyAsiya Javayant NEW
Murillo W MaletItalyAsiya Javayant NEGOTIATION
Sinclair K BologniaSpainAmy Elsner NEGOTIATION
Adams A SchemmerCanadaElwin Sharvill NEW
Rodrigues F FerenczGermanyXuxue Feng RENEWAL
Mayumi V BriddickCanadaIoni Bowcher NEW
Ivar M DarakjyFranceBernardo Dominic NEGOTIATION
Rodrigues Q ShinkoIndiaElwin Sharvill UNQUALIFIED
Ricardo O CaudyGermanyOnyama Limba RENEWAL
Rodrigues X SchemmerArgentinaXuxue Feng QUALIFIED
Adams U SlusarskiFranceAmy Elsner RENEWAL
Francesco F WhobreyFranceBernardo Dominic QUALIFIED
Aditya L BologniaJapanIoni Bowcher UNQUALIFIED
David Y CampainArgentinaIvan Magalhaes QUALIFIED
Stacey N BowleyAustraliaXuxue Feng NEW
Adams P CampainIndiaOnyama Limba UNQUALIFIED
Aditya V VenereFranceBernardo Dominic UNQUALIFIED
Mujtaba X TollnerRussiaIoni Bowcher PROPOSAL
Silvio A DoeItalyOnyama Limba NEGOTIATION
Claire R SchemmerRussiaOnyama Limba NEGOTIATION
Faith Q AmigonArgentinaIvan Magalhaes PROPOSAL
Aditya Y DarakjyFranceAmy Elsner NEW
Adams B BowleyUnited KingdomElwin Sharvill NEGOTIATION
Claire D BowleyAustraliaElwin Sharvill RENEWAL
Rodrigues B GlickBrazilOnyama Limba PROPOSAL
Wickens K ButtIndiaAnna Fali PROPOSAL
Kadeem L MacleadBrazilAnna Fali RENEWAL
Aruna W BowleyBrazilIoni Bowcher QUALIFIED
Clifford Q PoquetteCanadaOnyama Limba UNQUALIFIED
Stacey Z TollnerFranceBernardo Dominic QUALIFIED
Francesco N KolmetzBrazilStephen Shaw PROPOSAL
Mujtaba L PerinIndiaAsiya Javayant QUALIFIED
Kadeem J KuskoRussiaStephen Shaw PROPOSAL
Faith M RulapaughFranceIoni Bowcher UNQUALIFIED
Emily K OstroskyItalyOnyama Limba UNQUALIFIED
Cody B GauchoIndiaAnna Fali NEGOTIATION
Antonio R PerinJapanBernardo Dominic NEW
Sinclair H WaycottCanadaAsiya Javayant PROPOSAL
Greenwood I TollnerFranceAmy Elsner QUALIFIED
Misaki J VocelkaUnited KingdomAmy Elsner QUALIFIED
Jefferson B WieserIndiaAsiya Javayant NEGOTIATION
Faith X FerenczCanadaOnyama Limba UNQUALIFIED
Aika A CampainJapanIvan Magalhaes RENEWAL
Aditya M GlickCanadaAsiya Javayant UNQUALIFIED
Jefferson K StensethItalyAsiya Javayant QUALIFIED
Frozen Columns
Name
Nicolas U Perin
Maisha D Slusarski
Mujtaba X Nicka
Darci J Marrier
Adams I Caldarera
Chavez J Poquette
Jeanfrancois F Oldroyd
Costa Q Maclead
Greenwood C Bolognia
Clifford H Waycott
Izzy Z Venere
Izzy S Doe
Greenwood Y Rulapaugh
David Z Nicka
Morrow T Paprocki
Antonio P Venere
Aika C Bolognia
Adams K Maclead
Juan B Caldarera
Mayumi L Malet
Kaitlin K Darakjy
Deepesh J Garufi
Sinclair B Gillian
Isabel Z Marrier
Jeanfrancois P Gillian
Munro N Gaucho
Stacey I Kusko
Smith F Malet
Darci B Iturbide
Rodrigues Z Darakjy
Jones R Garufi
Claire P Campain
Aika M Caudy
Darci N Rim
Octavia I Flosi
Kadeem E Iturbide
Izzy P Malet
Cody L Figeroa
Jeanfrancois O Kolmetz
Wickens L Rim
Sinclair G Sergi
Rodrigues G Amigon
Jeanfrancois K Figeroa
Tony E Flosi
Octavia P Sergi
Ricardo L Albares
Deepesh W Glick
Deepesh T Morasca
Silvio N Rulapaugh
Jones B Sergi
IdCountryDate
1000France2026-10-29
1001Canada2026-10-15
1002Russia2026-10-31
1003Brazil2026-10-11
1004Australia2026-10-13
1005Germany2026-10-22
1006Spain2026-11-07
1007Russia2026-10-15
1008Brazil2026-11-07
1009Canada2026-10-21
1010Australia2026-10-27
1011India2026-10-13
1012France2026-10-17
1013Spain2026-10-29
1014Japan2026-10-15
1015France2026-10-30
1016Canada2026-10-12
1017Spain2026-11-06
1018Canada2026-10-18
1019France2026-10-19
1020Australia2026-10-27
1021Japan2026-10-29
1022Germany2026-10-11
1023Italy2026-11-02
1024Spain2026-10-12
1025Brazil2026-10-14
1026United Kingdom2026-10-28
1027Germany2026-10-09
1028Japan2026-11-02
1029Russia2026-11-06
1030India2026-10-11
1031Canada2026-10-16
1032Argentina2026-10-11
1033Italy2026-10-15
1034Russia2026-10-30
1035Brazil2026-11-04
1036Australia2026-10-30
1037Canada2026-11-01
1038Spain2026-10-25
1039Italy2026-11-05
1040Italy2026-10-17
1041Canada2026-10-10
1042Germany2026-10-13
1043Canada2026-10-21
1044Canada2026-11-04
1045Italy2026-11-02
1046Japan2026-11-06
1047Argentina2026-11-03
1048Australia2026-10-14
1049Spain2026-10-14

On-Demand Data

NameIdCountryDate
Leon Y Shinko1000Canada2026-10-23
Nicolas F Ostrosky1001Brazil2026-10-23
Adams Q Caldarera1002Japan2026-10-20
Rodrigues N Foller1003France2026-10-25
Jennifer Q Perin1004Canada2026-10-09
Murillo T Paprocki1005India2026-11-05
Claire S Poquette1006Argentina2026-10-17
Francesco G Paprocki1007Argentina2026-11-06
Stacey Y Albares1008France2026-10-27
Leon O Saylors1009Brazil2026-10-29
Leon W Darakjy1010Australia2026-10-17
Adams J Paprocki1011India2026-10-26
Jefferson S Albares1012Italy2026-10-16
David E Stenseth1013France2026-10-26
Chavez I Dilliard1014Brazil2026-10-25
Ashley N Paprocki1015Italy2026-10-31
Smith W Rulapaugh1016Brazil2026-10-15
Leja S Rim1017United Kingdom2026-10-27
Costa E Caldarera1018United Kingdom2026-10-12
Claire X Malet1019Brazil2026-11-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco M WaycottItalyStephen Shaw NEGOTIATION
Antonio O DarakjySpainAmy Elsner UNQUALIFIED
Mayumi F DarakjyAustraliaXuxue Feng RENEWAL
Isabel N SergiItalyStephen Shaw RENEWAL
Tony F PaprockiGermanyAnna Fali RENEWAL
Kadeem Q FollerSpainXuxue Feng NEGOTIATION
Izzy E CaldareraSpainAmy Elsner QUALIFIED
Murillo J IturbideSpainStephen Shaw NEW
Octavia Q BologniaIndiaXuxue Feng QUALIFIED
Mayumi V SchemmerGermanyAnna Fali NEW
Julie F StockhamRussiaIoni Bowcher NEW
Sinclair T MorascaIndiaIvan Magalhaes NEGOTIATION
Jones B StensethGermanyIoni Bowcher PROPOSAL
Ivar G SaylorsArgentinaBernardo Dominic NEGOTIATION
Izzy U RoysterCanadaIvan Magalhaes NEW
Juan K ShinkoJapanXuxue Feng RENEWAL
Ivar O MorascaCanadaBernardo Dominic RENEWAL
Ivar I NestleIndiaStephen Shaw UNQUALIFIED
Claire U BriddickJapanIoni Bowcher NEW
Tony J WaycottAustraliaXuxue Feng RENEWAL
Adams U MarrierCanadaIvan Magalhaes NEW
Stacey S MaletArgentinaElwin Sharvill NEGOTIATION
Ricardo B StensethJapanXuxue Feng NEW
Aditya P GlickFranceElwin Sharvill PROPOSAL
Darci Q BologniaItalyOnyama Limba RENEWAL
Izzy S FollerIndiaAnna Fali UNQUALIFIED
Greenwood X RutaUnited KingdomAmy Elsner NEGOTIATION
Maria G OstroskyRussiaStephen Shaw QUALIFIED
Adams Z VenereItalyBernardo Dominic RENEWAL
Kaitlin V TollnerIndiaOnyama Limba RENEWAL
Octavia C PerinGermanyOnyama Limba NEGOTIATION
Francesco D FollerIndiaAsiya Javayant QUALIFIED
Juan M BowleyArgentinaAnna Fali NEW
Aika Y RutaJapanOnyama Limba PROPOSAL
Octavia D GauchoArgentinaAmy Elsner NEW
Maisha U MorascaFranceBernardo Dominic NEW
Alejandro U VocelkaIndiaXuxue Feng RENEWAL
Murillo I BowleyUnited KingdomAsiya Javayant NEW
Rodrigues A SaylorsCanadaIoni Bowcher UNQUALIFIED
Octavia S RulapaughRussiaStephen Shaw 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>