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
Aruna M FigeroaCanadaAnna Fali QUALIFIED
Mayumi J WieserJapanAmy Elsner NEGOTIATION
Stacey Z IturbideIndiaAnna Fali UNQUALIFIED
Smith V ChuiCanadaIoni Bowcher UNQUALIFIED
Francesco Y MarrierSpainIoni Bowcher RENEWAL
Aika L MorascaRussiaElwin Sharvill NEGOTIATION
Salvatore E NestleItalyElwin Sharvill RENEWAL
Jones T StensethItalyXuxue Feng UNQUALIFIED
Jones V ChuiGermanyAnna Fali UNQUALIFIED
Murillo L FerenczBrazilOnyama Limba NEGOTIATION
Arvin Q OldroydGermanyIoni Bowcher QUALIFIED
Smith A InouyeGermanyIvan Magalhaes NEGOTIATION
James N CampainCanadaAsiya Javayant PROPOSAL
Jeanfrancois M MaletArgentinaIoni Bowcher NEW
Maria P CampainArgentinaAmy Elsner NEGOTIATION
Isabel Z InouyeGermanyAsiya Javayant RENEWAL
Wickens N GauchoSpainOnyama Limba PROPOSAL
Jefferson Q VenereArgentinaStephen Shaw PROPOSAL
Octavia K DoeCanadaStephen Shaw NEW
Claire J CaudyItalyXuxue Feng UNQUALIFIED
Jones F BowleySpainIoni Bowcher NEGOTIATION
Ivar U WhobreyAustraliaStephen Shaw NEW
Costa F MacleadBrazilXuxue Feng NEGOTIATION
Leon J DarakjyAustraliaIvan Magalhaes NEGOTIATION
Jefferson H DarakjyCanadaAsiya Javayant UNQUALIFIED
Antonio H SaylorsArgentinaBernardo Dominic NEGOTIATION
Francesco Z FlosiRussiaAmy Elsner NEW
Leon B BowleyUnited KingdomXuxue Feng NEGOTIATION
James M OldroydBrazilIvan Magalhaes PROPOSAL
Cody W WaycottJapanAnna Fali NEGOTIATION
Aruna H WhobreyArgentinaElwin Sharvill PROPOSAL
Sinclair I VocelkaJapanOnyama Limba PROPOSAL
Jennifer P MacleadBrazilIvan Magalhaes NEGOTIATION
Sinclair N SlusarskiCanadaBernardo Dominic RENEWAL
Kadeem A PaprockiAustraliaIoni Bowcher NEGOTIATION
Julie I InouyeArgentinaXuxue Feng NEGOTIATION
Claire G WaycottGermanyXuxue Feng QUALIFIED
Ashley S VocelkaAustraliaIoni Bowcher NEW
Smith H MaletSpainXuxue Feng NEGOTIATION
Misaki B SlusarskiUnited KingdomStephen Shaw NEGOTIATION
Tony A ChuiFranceIvan Magalhaes QUALIFIED
Munro Y CaldareraJapanAmy Elsner RENEWAL
Darci R NickaIndiaOnyama Limba PROPOSAL
Leon U MaletAustraliaXuxue Feng RENEWAL
Kadeem O OstroskyUnited KingdomElwin Sharvill UNQUALIFIED
Antonio J StockhamIndiaAmy Elsner QUALIFIED
Jeanfrancois J SlusarskiAustraliaAmy Elsner QUALIFIED
Costa R NickaAustraliaXuxue Feng UNQUALIFIED
Izzy A DoeJapanElwin Sharvill NEGOTIATION
Jennifer N GlickUnited KingdomBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leon K DarakjyCanadaIoni Bowcher NEW
Juan K BriddickGermanyBernardo Dominic NEGOTIATION
Adams F RoysterSpainXuxue Feng NEGOTIATION
Greenwood A FerenczUnited KingdomElwin Sharvill PROPOSAL
Rodrigues B ChuiIndiaOnyama Limba NEGOTIATION
Murillo L PaprockiRussiaIvan Magalhaes RENEWAL
Leon G RulapaughCanadaIoni Bowcher NEGOTIATION
Maria I TollnerFranceXuxue Feng UNQUALIFIED
Aditya H MorascaFranceAnna Fali RENEWAL
Nicolas A ChuiCanadaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan H AlbaresAustralia2026-09-30Morlong Associates UNQUALIFIED75Asiya Javayant
1001Izzy Z OldroydGermany2026-10-08Truhlar And Truhlar Attys QUALIFIED97Bernardo Dominic
1002Deepesh Y VocelkaBrazil2026-10-22Benton, John B Jr NEW92Amy Elsner
1003Ashley T ButtRussia2026-10-11Dorl, James J Esq QUALIFIED58Anna Fali
1004Wickens T OstroskyGermany2026-10-23Truhlar And Truhlar Attys NEW65Anna Fali
1005Ricardo K NickaJapan2026-09-28King, Christopher A Esq NEW76Ioni Bowcher
1006Faith O PerinJapan2026-10-01Benton, John B Jr RENEWAL76Asiya Javayant
1007Leja X KolmetzArgentina2026-10-10Rousseaux, Michael Esq NEW12Ioni Bowcher
1008Izzy J PerinFrance2026-10-19Feltz Printing Service NEW37Anna Fali
1009Mayumi S MaletIndia2026-09-30King, Christopher A Esq NEGOTIATION10Stephen Shaw
1010Munro D BowleySpain2026-10-26Feltz Printing Service QUALIFIED83Stephen Shaw
1011Kadeem I AmigonGermany2026-10-09Dorl, James J Esq UNQUALIFIED21Amy Elsner
1012Juan W StockhamFrance2026-10-01Feltz Printing Service NEGOTIATION48Anna Fali
1013Aditya C CaldareraCanada2026-10-09Benton, John B Jr PROPOSAL48Xuxue Feng
1014Misaki A KolmetzAustralia2026-10-22King, Christopher A Esq RENEWAL7Ioni Bowcher
1015Julie J WieserArgentina2026-10-26Dorl, James J Esq NEGOTIATION87Onyama Limba
1016Ricardo F PerinJapan2026-10-08Commercial Press UNQUALIFIED57Onyama Limba
1017Ricardo Y RoysterSpain2026-10-05Feiner Bros QUALIFIED16Stephen Shaw
1018Isabel C IturbideIndia2026-10-08Commercial Press UNQUALIFIED92Amy Elsner
1019Jefferson S RutaBrazil2026-10-27Printing Dimensions UNQUALIFIED19Elwin Sharvill
1020Francesco Y MaletItaly2026-10-21King, Christopher A Esq PROPOSAL87Ioni Bowcher
1021Wickens S VocelkaFrance2026-10-21Feiner Bros RENEWAL11Elwin Sharvill
1022Salvatore L AmigonCanada2026-10-13Feiner Bros QUALIFIED64Bernardo Dominic
1023Greenwood E SergiGermany2026-10-24Rangoni Of Florence PROPOSAL97Xuxue Feng
1024Julie J KuskoItaly2026-09-28Truhlar And Truhlar Attys NEGOTIATION89Onyama Limba
1025Faith Y DarakjyGermany2026-10-17Commercial Press PROPOSAL50Amy Elsner
1026Maisha P AlbaresRussia2026-10-05Dorl, James J Esq NEGOTIATION41Xuxue Feng
1027Rodrigues W SergiCanada2026-10-06Rangoni Of Florence NEW31Asiya Javayant
1028James C StensethFrance2026-10-16Dorl, James J Esq PROPOSAL96Bernardo Dominic
1029Mayumi H FerenczFrance2026-09-29Chemel, James L Cpa QUALIFIED34Onyama Limba
1030Ivar E SaylorsArgentina2026-10-04Printing Dimensions PROPOSAL74Ioni Bowcher
1031Ashley O RutaBrazil2026-10-09Morlong Associates NEW99Ioni Bowcher
1032Silvio U StensethSpain2026-09-28Morlong Associates RENEWAL84Asiya Javayant
1033Chavez Z AlbaresBrazil2026-10-12Feiner Bros NEGOTIATION36Elwin Sharvill
1034Aruna C StockhamGermany2026-09-30Commercial Press PROPOSAL40Elwin Sharvill
1035Maisha O FigeroaRussia2026-10-08Feltz Printing Service UNQUALIFIED22Ioni Bowcher
1036Kadeem S NestleRussia2026-10-10Printing Dimensions UNQUALIFIED90Xuxue Feng
1037Francesco F CaudyCanada2026-10-23Truhlar And Truhlar Attys RENEWAL93Elwin Sharvill
1038Kadeem E DarakjyGermany2026-10-18Buckley Miller Wright NEW97Bernardo Dominic
1039James N PerinBrazil2026-10-16Printing Dimensions UNQUALIFIED8Xuxue Feng
1040Costa V DarakjyRussia2026-10-26Chemel, James L Cpa PROPOSAL49Onyama Limba
1041Wickens I DarakjyGermany2026-10-22Chapman, Ross E Esq PROPOSAL63Amy Elsner
1042James M WaycottArgentina2026-10-27Printing Dimensions NEW95Ioni Bowcher
1043Ashley V CaudyItaly2026-10-23Rangoni Of Florence RENEWAL24Anna Fali
1044Maria H FerenczIndia2026-10-18Chemel, James L Cpa NEW99Amy Elsner
1045Mujtaba L FollerRussia2026-09-28Feiner Bros PROPOSAL10Anna Fali
1046Stacey P MarrierArgentina2026-10-15Chemel, James L Cpa RENEWAL37Ivan Magalhaes
1047Claire S FerenczUnited Kingdom2026-10-24Commercial Press PROPOSAL37Elwin Sharvill
1048Nicolas B StockhamRussia2026-09-29Benton, John B Jr NEW54Anna Fali
1049Alejandro B ButtItaly2026-09-28Commercial Press NEGOTIATION49Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Silvio L PaprockiRussiaIvan Magalhaes UNQUALIFIED
Jones W MorascaGermanyOnyama Limba QUALIFIED
Leon U GlickJapanAmy Elsner UNQUALIFIED
Octavia X StensethSpainXuxue Feng PROPOSAL
Ricardo F CaudySpainAnna Fali RENEWAL
Isabel D ButtArgentinaIvan Magalhaes PROPOSAL
Leja A PoquetteSpainAsiya Javayant QUALIFIED
Francesco V DoeAustraliaXuxue Feng NEW
Claire C GillianSpainOnyama Limba RENEWAL
Jefferson T NickaBrazilIoni Bowcher RENEWAL
Octavia Q RimIndiaBernardo Dominic NEGOTIATION
Leja Y GauchoCanadaXuxue Feng QUALIFIED
Silvio A RoysterItalyStephen Shaw QUALIFIED
Johnson V ButtRussiaAmy Elsner RENEWAL
Maria B WieserItalyIvan Magalhaes NEW
Ashley Q TollnerCanadaAnna Fali PROPOSAL
Arvin W WaycottBrazilAnna Fali PROPOSAL
Aditya Y DoeGermanyBernardo Dominic PROPOSAL
Mujtaba A AmigonGermanyElwin Sharvill QUALIFIED
Ivar R GlickBrazilIoni Bowcher RENEWAL
Clifford V CaldareraRussiaAsiya Javayant QUALIFIED
Kaitlin T VocelkaGermanyIoni Bowcher NEW
Cody X GauchoIndiaXuxue Feng QUALIFIED
Ashley E FlosiAustraliaAmy Elsner RENEWAL
Mayumi J PerinGermanyElwin Sharvill NEGOTIATION
Tony X PoquetteAustraliaIoni Bowcher UNQUALIFIED
Arvin U GauchoAustraliaAsiya Javayant NEGOTIATION
Munro T AlbaresUnited KingdomOnyama Limba QUALIFIED
Deepesh E TollnerRussiaBernardo Dominic UNQUALIFIED
Mujtaba A FlosiRussiaBernardo Dominic UNQUALIFIED
Misaki C FerenczArgentinaAmy Elsner NEGOTIATION
Misaki B BowleyGermanyOnyama Limba RENEWAL
Jefferson S ShinkoUnited KingdomIoni Bowcher PROPOSAL
Octavia N RulapaughFranceOnyama Limba UNQUALIFIED
Francesco N BologniaCanadaIvan Magalhaes UNQUALIFIED
Claire U AlbaresJapanAnna Fali NEGOTIATION
Ivar B DarakjyArgentinaAnna Fali RENEWAL
David S MacleadIndiaIvan Magalhaes UNQUALIFIED
Antonio W IturbideRussiaElwin Sharvill QUALIFIED
Alejandro Z ShinkoBrazilIoni Bowcher NEW
Maisha D IturbideIndiaElwin Sharvill RENEWAL
Nicolas O GlickGermanyIvan Magalhaes NEW
Silvio Z ChuiGermanyBernardo Dominic NEGOTIATION
Julie F KuskoFranceIvan Magalhaes NEGOTIATION
Kadeem U NickaIndiaElwin Sharvill PROPOSAL
Aruna C CampainItalyElwin Sharvill QUALIFIED
Salvatore C WieserIndiaAmy Elsner PROPOSAL
Nicolas R SlusarskiIndiaAsiya Javayant NEW
Aruna V AmigonItalyXuxue Feng NEW
Julie U WieserRussiaAmy Elsner QUALIFIED
Frozen Columns
Name
Sinclair Q Darakjy
James R Maclead
Costa F Paprocki
Arvin P Butt
Nicolas M Schemmer
Juan T Rulapaugh
Maisha I Iturbide
Jefferson M Malet
Deepesh X Venere
Clifford I Inouye
Maisha O Albares
David H Malet
Aika S Vocelka
Tony T Slusarski
Julie L Schemmer
Rodrigues R Wieser
Francesco M Oldroyd
Salvatore Q Kusko
Jones K Ferencz
Maisha J Paprocki
Nicolas Q Venere
Maria J Ruta
Maria W Bowley
Jones W Albares
Greenwood W Rim
Wickens N Nicka
Isabel P Gillian
Silvio C Waycott
Mujtaba J Ostrosky
Emily O Flosi
Aruna E Oldroyd
Isabel D Amigon
Aika W Stockham
Arvin O Stenseth
Leja G Dilliard
Wickens I Saylors
Ashley T Perin
Kaitlin X Albares
David X Royster
Juan Z Darakjy
Julie K Waycott
Ivar N Malet
Jeanfrancois D Royster
Isabel V Gaucho
Darci Z Foller
Nicolas U Nicka
Ashley G Kolmetz
Silvio U Malet
Sinclair C Wieser
Murillo V Iturbide
IdCountryDate
1000Brazil2026-10-18
1001Canada2026-10-15
1002Spain2026-10-27
1003India2026-10-13
1004Italy2026-10-16
1005Germany2026-10-09
1006Germany2026-10-11
1007Argentina2026-10-13
1008Russia2026-10-04
1009Italy2026-10-07
1010India2026-10-02
1011Brazil2026-10-22
1012Spain2026-10-04
1013France2026-10-09
1014Australia2026-10-03
1015Argentina2026-10-10
1016Argentina2026-10-02
1017Japan2026-10-17
1018Germany2026-10-02
1019Spain2026-10-17
1020Australia2026-10-01
1021Brazil2026-10-07
1022United Kingdom2026-10-24
1023Brazil2026-10-06
1024India2026-10-22
1025Australia2026-10-19
1026Argentina2026-10-27
1027Japan2026-10-19
1028Brazil2026-10-22
1029Argentina2026-10-10
1030Canada2026-10-27
1031France2026-09-29
1032Japan2026-10-22
1033Germany2026-09-30
1034Canada2026-10-15
1035Australia2026-09-30
1036Australia2026-10-17
1037Australia2026-10-21
1038Brazil2026-10-05
1039India2026-10-24
1040Germany2026-09-30
1041Japan2026-10-18
1042India2026-10-02
1043Russia2026-10-03
1044United Kingdom2026-10-14
1045Italy2026-10-27
1046Japan2026-10-18
1047Australia2026-10-22
1048Italy2026-10-09
1049United Kingdom2026-10-22

On-Demand Data

NameIdCountryDate
Jones H Garufi1000Argentina2026-10-10
Jefferson U Briddick1001United Kingdom2026-10-10
Arvin Y Stenseth1002Germany2026-10-23
Maisha B Chui1003India2026-10-23
Jefferson G Darakjy1004Australia2026-10-10
Kadeem R Briddick1005Russia2026-10-06
Izzy O Venere1006Russia2026-09-28
Chavez J Kolmetz1007Japan2026-10-14
Rodrigues H Waycott1008Russia2026-10-06
Aika Y Oldroyd1009Italy2026-10-02
Nicolas P Slusarski1010Russia2026-10-19
Murillo J Darakjy1011United Kingdom2026-10-13
Maria I Inouye1012Russia2026-10-16
Leon V Royster1013Germany2026-10-21
Ivar R Saylors1014Germany2026-10-04
Maisha S Sergi1015Russia2026-10-03
Juan D Schemmer1016Italy2026-10-07
Stacey R Marrier1017Germany2026-10-12
Mujtaba F Gillian1018Spain2026-10-18
Emily X Sergi1019Russia2026-10-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens D BologniaArgentinaIoni Bowcher PROPOSAL
Darci I WieserCanadaIvan Magalhaes PROPOSAL
Costa T MorascaCanadaAmy Elsner QUALIFIED
Ivar R MacleadGermanyXuxue Feng QUALIFIED
James G RutaFranceElwin Sharvill QUALIFIED
Silvio T MacleadCanadaBernardo Dominic NEW
Ricardo F PaprockiAustraliaIvan Magalhaes RENEWAL
Maisha Y PerinFranceAmy Elsner PROPOSAL
Misaki T SlusarskiRussiaIvan Magalhaes NEW
Mayumi P SaylorsArgentinaBernardo Dominic NEW
Jefferson J RulapaughUnited KingdomIoni Bowcher UNQUALIFIED
Smith K FlosiSpainAmy Elsner UNQUALIFIED
Munro Q SlusarskiArgentinaBernardo Dominic NEW
Ricardo S OstroskyFranceAmy Elsner NEGOTIATION
Alejandro J OldroydIndiaAmy Elsner UNQUALIFIED
Claire I KuskoGermanyOnyama Limba PROPOSAL
Mujtaba J SaylorsGermanyAnna Fali QUALIFIED
Arvin G RimIndiaIoni Bowcher RENEWAL
Cody L KolmetzSpainElwin Sharvill NEGOTIATION
Darci Z VocelkaAustraliaStephen Shaw PROPOSAL
Misaki E NestleArgentinaIoni Bowcher NEW
Ricardo O MarrierRussiaXuxue Feng UNQUALIFIED
Alejandro U OstroskyCanadaStephen Shaw PROPOSAL
Octavia R FigeroaArgentinaStephen Shaw QUALIFIED
Salvatore R GauchoAustraliaStephen Shaw NEGOTIATION
Arvin T VenereCanadaIoni Bowcher RENEWAL
Mayumi S NestleSpainIvan Magalhaes QUALIFIED
Leon D FigeroaSpainBernardo Dominic UNQUALIFIED
Costa F DoeItalyStephen Shaw NEGOTIATION
Darci F WieserUnited KingdomIoni Bowcher UNQUALIFIED
Salvatore K DoeAustraliaAmy Elsner UNQUALIFIED
Stacey H CaudyIndiaAnna Fali PROPOSAL
Stacey E RulapaughFranceElwin Sharvill NEW
Salvatore F DarakjyIndiaElwin Sharvill PROPOSAL
Salvatore D RulapaughIndiaXuxue Feng QUALIFIED
Deepesh T DarakjyBrazilXuxue Feng RENEWAL
Clifford R FlosiRussiaAmy Elsner UNQUALIFIED
Izzy O SlusarskiUnited KingdomAsiya Javayant QUALIFIED
Izzy W PaprockiCanadaAnna Fali RENEWAL
Leja F OstroskyRussiaAsiya Javayant 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>