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
Tony D CaldareraCanadaBernardo Dominic RENEWAL
Francesco M TollnerBrazilOnyama Limba RENEWAL
Munro G BologniaFranceElwin Sharvill QUALIFIED
Aika U FigeroaRussiaOnyama Limba NEGOTIATION
Johnson G KuskoUnited KingdomAmy Elsner PROPOSAL
Misaki C PoquetteGermanyIvan Magalhaes RENEWAL
Rodrigues H BowleyUnited KingdomBernardo Dominic NEW
Leon W SchemmerUnited KingdomBernardo Dominic QUALIFIED
Sinclair F GillianSpainXuxue Feng NEGOTIATION
Ashley I AlbaresCanadaIoni Bowcher PROPOSAL
Wickens C DoeAustraliaIoni Bowcher NEW
Munro A GlickRussiaStephen Shaw UNQUALIFIED
Aika A SchemmerSpainAmy Elsner NEGOTIATION
Mayumi O CaldareraJapanStephen Shaw UNQUALIFIED
Faith G GauchoBrazilAsiya Javayant PROPOSAL
Octavia V IturbideUnited KingdomBernardo Dominic NEW
Stacey F AmigonBrazilBernardo Dominic NEW
Cody N BowleyArgentinaIvan Magalhaes PROPOSAL
Johnson N PoquetteCanadaAsiya Javayant NEGOTIATION
Jeanfrancois V DarakjyItalyXuxue Feng PROPOSAL
David J ShinkoArgentinaIoni Bowcher QUALIFIED
Kadeem I WhobreyIndiaBernardo Dominic RENEWAL
Maisha G CaldareraArgentinaIoni Bowcher QUALIFIED
Greenwood R SergiRussiaBernardo Dominic UNQUALIFIED
Jeanfrancois D ChuiArgentinaBernardo Dominic QUALIFIED
Nicolas S DoeFranceAsiya Javayant NEGOTIATION
Misaki Y BriddickArgentinaAsiya Javayant PROPOSAL
Chavez W DarakjySpainStephen Shaw QUALIFIED
Aruna U SaylorsFranceXuxue Feng QUALIFIED
Cody G WieserJapanAnna Fali RENEWAL
Jeanfrancois X MacleadArgentinaIoni Bowcher UNQUALIFIED
Greenwood A ShinkoRussiaElwin Sharvill NEW
Mayumi J SergiAustraliaStephen Shaw NEGOTIATION
Ricardo M PaprockiUnited KingdomXuxue Feng NEW
Aditya B RulapaughJapanAnna Fali RENEWAL
Julie F IturbideUnited KingdomBernardo Dominic QUALIFIED
Wickens W CaldareraFranceOnyama Limba RENEWAL
Kadeem M KolmetzJapanIoni Bowcher PROPOSAL
Faith N AlbaresAustraliaOnyama Limba PROPOSAL
Darci X DilliardGermanyIoni Bowcher RENEWAL
Juan U IturbideRussiaElwin Sharvill QUALIFIED
Ivar G BologniaJapanElwin Sharvill QUALIFIED
Jones Z VenereCanadaBernardo Dominic UNQUALIFIED
Maisha A ChuiAustraliaAsiya Javayant RENEWAL
Maisha J NickaFranceBernardo Dominic UNQUALIFIED
Jeanfrancois Z StensethIndiaIoni Bowcher PROPOSAL
Johnson E CaudyAustraliaElwin Sharvill PROPOSAL
Murillo Y RoysterArgentinaAmy Elsner QUALIFIED
Aika V GlickItalyOnyama Limba PROPOSAL
Salvatore Y AlbaresItalyIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Darci S DoeGermanyIoni Bowcher NEGOTIATION
Salvatore L TollnerJapanIvan Magalhaes NEW
Ricardo J KolmetzAustraliaStephen Shaw NEW
Munro K ButtCanadaElwin Sharvill QUALIFIED
James T SchemmerBrazilIvan Magalhaes PROPOSAL
Jeanfrancois H GlickItalyIvan Magalhaes QUALIFIED
Jefferson F RimSpainAnna Fali UNQUALIFIED
Silvio Q FigeroaItalyElwin Sharvill NEGOTIATION
Munro I BriddickItalyBernardo Dominic RENEWAL
Izzy O OldroydSpainElwin Sharvill NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar T FollerItaly2026-10-04Chanay, Jeffrey A Esq NEW86Anna Fali
1001Leja F RulapaughAustralia2026-10-26Chemel, James L Cpa QUALIFIED6Onyama Limba
1002Francesco N StockhamIndia2026-10-03Chapman, Ross E Esq NEGOTIATION29Xuxue Feng
1003Wickens N RoysterGermany2026-10-15Chemel, James L Cpa UNQUALIFIED53Ivan Magalhaes
1004Costa U ShinkoItaly2026-10-10Feiner Bros QUALIFIED10Anna Fali
1005Jeanfrancois K OldroydJapan2026-10-21King, Christopher A Esq NEGOTIATION66Stephen Shaw
1006Claire J RutaAustralia2026-10-30Printing Dimensions NEGOTIATION16Elwin Sharvill
1007Maisha F SchemmerBrazil2026-10-07Printing Dimensions QUALIFIED24Onyama Limba
1008Mayumi D GarufiArgentina2026-10-07Rangoni Of Florence NEW91Amy Elsner
1009Aika H WaycottSpain2026-10-14Dorl, James J Esq NEGOTIATION70Bernardo Dominic
1010Aika O PaprockiAustralia2026-11-01Buckley Miller Wright RENEWAL4Ivan Magalhaes
1011Johnson B ButtUnited Kingdom2026-10-28Rousseaux, Michael Esq NEGOTIATION66Ioni Bowcher
1012Aruna B RoysterItaly2026-10-30Feiner Bros PROPOSAL48Elwin Sharvill
1013Aditya S SlusarskiBrazil2026-10-08Printing Dimensions QUALIFIED63Stephen Shaw
1014Kaitlin D MacleadRussia2026-10-30Morlong Associates UNQUALIFIED74Amy Elsner
1015Darci X TollnerAustralia2026-10-27Feltz Printing Service QUALIFIED48Anna Fali
1016Stacey L MorascaItaly2026-10-26Benton, John B Jr NEGOTIATION95Stephen Shaw
1017Clifford W FollerSpain2026-10-14Chapman, Ross E Esq PROPOSAL90Xuxue Feng
1018Alejandro Y RoysterAustralia2026-10-10Rousseaux, Michael Esq UNQUALIFIED58Xuxue Feng
1019Alejandro G CaldareraItaly2026-10-03Dorl, James J Esq PROPOSAL61Anna Fali
1020Clifford X SaylorsArgentina2026-10-16Feltz Printing Service PROPOSAL35Bernardo Dominic
1021Juan R RutaJapan2026-10-06Chanay, Jeffrey A Esq NEW99Asiya Javayant
1022Jeanfrancois H CaldareraFrance2026-10-09Printing Dimensions NEW32Anna Fali
1023Alejandro G BriddickSpain2026-10-05Rangoni Of Florence QUALIFIED5Onyama Limba
1024Leon E KolmetzFrance2026-10-14Morlong Associates NEW12Amy Elsner
1025Maisha X BologniaAustralia2026-10-04Feltz Printing Service UNQUALIFIED53Asiya Javayant
1026Darci G CaldareraBrazil2026-10-22Feiner Bros UNQUALIFIED39Ivan Magalhaes
1027Deepesh P PoquetteFrance2026-10-25Rousseaux, Michael Esq UNQUALIFIED56Ivan Magalhaes
1028Ricardo X SergiSpain2026-10-17Dorl, James J Esq UNQUALIFIED97Ivan Magalhaes
1029Kaitlin I GauchoRussia2026-10-23Printing Dimensions NEGOTIATION68Elwin Sharvill
1030Jones P KolmetzGermany2026-10-21Benton, John B Jr NEGOTIATION97Bernardo Dominic
1031Johnson I MorascaFrance2026-10-05Buckley Miller Wright PROPOSAL41Anna Fali
1032Aika S VenereItaly2026-10-12Chemel, James L Cpa PROPOSAL72Anna Fali
1033Salvatore L RoysterCanada2026-11-01Chemel, James L Cpa QUALIFIED1Stephen Shaw
1034Arvin M MarrierGermany2026-10-29Truhlar And Truhlar Attys PROPOSAL85Anna Fali
1035Aditya Q CaudyFrance2026-10-05Buckley Miller Wright QUALIFIED11Amy Elsner
1036Maria Q TollnerAustralia2026-10-12Chapman, Ross E Esq UNQUALIFIED87Bernardo Dominic
1037Adams N VenereUnited Kingdom2026-10-12Feltz Printing Service NEW27Stephen Shaw
1038Jennifer W RoysterCanada2026-10-05Commercial Press NEGOTIATION85Ioni Bowcher
1039Kadeem E FollerJapan2026-10-28Buckley Miller Wright NEW27Stephen Shaw
1040Sinclair X ChuiGermany2026-10-11Feiner Bros PROPOSAL82Elwin Sharvill
1041Cody Z FlosiFrance2026-10-13King, Christopher A Esq QUALIFIED60Ioni Bowcher
1042Leja Y GauchoBrazil2026-10-25Feiner Bros PROPOSAL20Asiya Javayant
1043Tony O SergiSpain2026-10-13Rangoni Of Florence UNQUALIFIED18Anna Fali
1044Misaki E WhobreyCanada2026-10-29Truhlar And Truhlar Attys UNQUALIFIED83Amy Elsner
1045Costa T WieserCanada2026-10-27Feltz Printing Service PROPOSAL99Amy Elsner
1046Leja T FollerItaly2026-10-26Chemel, James L Cpa RENEWAL27Bernardo Dominic
1047Juan E SergiBrazil2026-10-29Dorl, James J Esq NEGOTIATION73Xuxue Feng
1048Deepesh M OldroydFrance2026-10-21Feltz Printing Service NEW43Ivan Magalhaes
1049Wickens V KolmetzSpain2026-10-20Chapman, Ross E Esq NEW32Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Murillo H AlbaresAustraliaAmy Elsner UNQUALIFIED
Cody J AmigonIndiaAsiya Javayant NEW
Jeanfrancois G RoysterUnited KingdomAmy Elsner QUALIFIED
Cody Q CaudyAustraliaIvan Magalhaes UNQUALIFIED
Aruna O SergiSpainElwin Sharvill QUALIFIED
Tony U WhobreyGermanyXuxue Feng NEGOTIATION
Cody C GillianRussiaXuxue Feng UNQUALIFIED
Jones Q GauchoIndiaStephen Shaw QUALIFIED
Isabel W IturbideAustraliaAmy Elsner QUALIFIED
Aruna P DarakjyFranceBernardo Dominic QUALIFIED
Ricardo Q ButtUnited KingdomAmy Elsner NEW
James R IturbideRussiaBernardo Dominic NEGOTIATION
Octavia O SlusarskiGermanyIvan Magalhaes QUALIFIED
Munro B ChuiSpainAnna Fali PROPOSAL
Nicolas D RoysterCanadaIvan Magalhaes RENEWAL
Isabel R PaprockiAustraliaIvan Magalhaes UNQUALIFIED
Aika Q DilliardGermanyAsiya Javayant QUALIFIED
Kaitlin K SaylorsArgentinaAnna Fali NEGOTIATION
Jefferson R ButtCanadaStephen Shaw PROPOSAL
Kadeem R GlickFranceXuxue Feng RENEWAL
Alejandro B SchemmerBrazilAmy Elsner RENEWAL
Deepesh G ShinkoSpainBernardo Dominic QUALIFIED
Sinclair G AmigonSpainIvan Magalhaes RENEWAL
Tony J PerinBrazilBernardo Dominic UNQUALIFIED
Silvio X MorascaArgentinaOnyama Limba NEGOTIATION
Alejandro Z BriddickIndiaAnna Fali QUALIFIED
Alejandro O RoysterItalyAsiya Javayant QUALIFIED
James B FigeroaItalyOnyama Limba PROPOSAL
Silvio C AlbaresJapanStephen Shaw RENEWAL
Adams O MorascaCanadaOnyama Limba NEW
Costa A MaletJapanElwin Sharvill NEW
Francesco P PerinRussiaAmy Elsner QUALIFIED
Kadeem B DoeCanadaBernardo Dominic UNQUALIFIED
David Q MacleadBrazilOnyama Limba UNQUALIFIED
Antonio O GauchoFranceBernardo Dominic NEW
Deepesh H DoeSpainAmy Elsner UNQUALIFIED
Octavia L PaprockiUnited KingdomAmy Elsner NEW
Antonio V VenereFranceAnna Fali RENEWAL
Morrow M IturbideAustraliaStephen Shaw NEW
Arvin B MorascaArgentinaAnna Fali PROPOSAL
Johnson W FollerIndiaStephen Shaw RENEWAL
Wickens J IturbideBrazilIoni Bowcher NEW
Munro T SaylorsBrazilIvan Magalhaes RENEWAL
Darci N VenereBrazilAsiya Javayant QUALIFIED
Munro G InouyeItalyXuxue Feng UNQUALIFIED
Juan U CaldareraJapanElwin Sharvill NEW
Munro X BowleyFranceAsiya Javayant PROPOSAL
Isabel Z ShinkoGermanyElwin Sharvill RENEWAL
David G FerenczSpainAmy Elsner NEGOTIATION
Jones W SchemmerArgentinaIvan Magalhaes RENEWAL
Frozen Columns
Name
Johnson D Briddick
Jones S Wieser
Clifford Q Tollner
Maisha C Royster
Stacey C Campain
Mayumi K Royster
Maisha B Briddick
Smith J Venere
Faith U Dilliard
Smith N Caldarera
Johnson X Royster
Jennifer L Glick
Nicolas Z Slusarski
Julie E Schemmer
Ashley P Garufi
Francesco E Garufi
Ricardo N Figeroa
Antonio P Butt
Leja O Malet
Costa J Perin
Rodrigues R Rim
Alejandro N Figeroa
Leja E Gaucho
Jefferson L Inouye
Mayumi L Bolognia
Jeanfrancois I Amigon
Antonio V Garufi
Aika T Glick
Ashley B Nicka
Octavia K Iturbide
Tony D Waycott
Octavia A Venere
Alejandro P Perin
Maria L Butt
Stacey S Vocelka
Aika G Perin
Munro P Ferencz
Mujtaba A Stockham
Clifford P Bowley
Johnson I Marrier
James F Chui
Francesco K Rulapaugh
Ashley K Morasca
Jeanfrancois X Foller
Jones J Caldarera
Wickens K Stenseth
Munro F Waycott
Clifford L Rim
Isabel U Tollner
Darci U Saylors
IdCountryDate
1000Japan2026-10-11
1001Germany2026-11-01
1002Japan2026-10-08
1003Japan2026-10-25
1004Spain2026-10-05
1005Brazil2026-10-13
1006Brazil2026-10-28
1007United Kingdom2026-10-23
1008France2026-10-09
1009Italy2026-10-19
1010Brazil2026-10-23
1011India2026-10-28
1012Germany2026-10-30
1013Russia2026-10-19
1014India2026-10-13
1015France2026-10-15
1016Argentina2026-10-04
1017India2026-10-06
1018Germany2026-10-28
1019Argentina2026-10-10
1020Australia2026-10-17
1021France2026-10-30
1022France2026-11-01
1023Australia2026-10-04
1024Australia2026-10-14
1025United Kingdom2026-10-19
1026Argentina2026-10-24
1027Brazil2026-10-10
1028Australia2026-10-25
1029Japan2026-10-28
1030Australia2026-10-15
1031India2026-10-09
1032Canada2026-10-04
1033Australia2026-10-23
1034Germany2026-10-21
1035France2026-10-16
1036Canada2026-10-10
1037Australia2026-10-18
1038Argentina2026-10-12
1039Japan2026-10-25
1040Japan2026-10-27
1041France2026-10-08
1042Italy2026-10-03
1043Japan2026-10-31
1044India2026-10-25
1045France2026-10-25
1046Germany2026-10-31
1047Argentina2026-10-18
1048Russia2026-10-13
1049Brazil2026-10-08

On-Demand Data

NameIdCountryDate
Jones K Waycott1000Brazil2026-10-14
Rodrigues F Schemmer1001Russia2026-10-26
Claire F Marrier1002Germany2026-10-07
Maisha N Venere1003Russia2026-10-22
Alejandro Y Kusko1004Germany2026-10-07
Mayumi K Wieser1005United Kingdom2026-10-03
Munro Z Nestle1006Germany2026-10-14
Octavia Y Rim1007Australia2026-10-05
Kaitlin S Malet1008India2026-10-16
Misaki K Rim1009United Kingdom2026-10-14
Misaki A Ruta1010Spain2026-10-16
James J Campain1011India2026-10-21
Isabel V Figeroa1012Spain2026-10-23
Deepesh D Stockham1013Spain2026-10-22
Rodrigues F Marrier1014Italy2026-10-10
Faith B Venere1015Australia2026-10-04
Faith B Rim1016Japan2026-10-13
Maisha Y Garufi1017Argentina2026-10-25
Greenwood Z Inouye1018Brazil2026-10-25
Wickens J Albares1019Brazil2026-10-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro E RutaGermanyAnna Fali QUALIFIED
Smith V PaprockiAustraliaAnna Fali UNQUALIFIED
Alejandro G DarakjyArgentinaAsiya Javayant QUALIFIED
Sinclair U WieserItalyIoni Bowcher NEGOTIATION
David I FerenczArgentinaStephen Shaw PROPOSAL
Smith W StensethBrazilBernardo Dominic RENEWAL
Aika R WieserAustraliaAmy Elsner NEW
Ricardo T SchemmerGermanyIoni Bowcher NEGOTIATION
Ivar D MorascaGermanyAmy Elsner QUALIFIED
Rodrigues O SaylorsUnited KingdomStephen Shaw NEW
Emily K FigeroaItalyStephen Shaw NEGOTIATION
Izzy L CaldareraRussiaAnna Fali QUALIFIED
Smith R NickaUnited KingdomAsiya Javayant NEW
Chavez L GillianJapanIvan Magalhaes UNQUALIFIED
Greenwood W MaletUnited KingdomAnna Fali UNQUALIFIED
Izzy T GillianSpainAmy Elsner QUALIFIED
Salvatore J AmigonItalyAmy Elsner NEGOTIATION
Antonio I MarrierUnited KingdomOnyama Limba QUALIFIED
Leja C ShinkoRussiaAmy Elsner NEGOTIATION
Juan B FollerGermanyOnyama Limba UNQUALIFIED
Maria W VocelkaRussiaStephen Shaw PROPOSAL
Ashley S AlbaresCanadaAmy Elsner UNQUALIFIED
Costa L PoquetteArgentinaBernardo Dominic NEW
Darci U DilliardIndiaAsiya Javayant NEGOTIATION
Jennifer K PerinCanadaIoni Bowcher PROPOSAL
Stacey L RimBrazilOnyama Limba PROPOSAL
Tony P PaprockiGermanyAnna Fali RENEWAL
Clifford H KolmetzItalyIvan Magalhaes PROPOSAL
Jeanfrancois W InouyeJapanStephen Shaw RENEWAL
Adams Z RimCanadaAmy Elsner NEW
Jeanfrancois G MacleadSpainElwin Sharvill PROPOSAL
Sinclair A CampainSpainBernardo Dominic RENEWAL
Aruna K SchemmerCanadaElwin Sharvill NEW
Nicolas R MaletGermanyElwin Sharvill NEW
Ivar Z DarakjyFranceXuxue Feng NEGOTIATION
Octavia O BologniaGermanyAmy Elsner NEW
Jones K MaletJapanXuxue Feng UNQUALIFIED
Maria K MacleadItalyBernardo Dominic QUALIFIED
Juan T FlosiJapanIvan Magalhaes QUALIFIED
Darci S SaylorsCanadaIoni Bowcher NEW

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