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
Leja P OldroydArgentinaAsiya Javayant UNQUALIFIED
Aika M RimBrazilIvan Magalhaes UNQUALIFIED
Wickens L DarakjyCanadaStephen Shaw PROPOSAL
Munro H GillianCanadaXuxue Feng UNQUALIFIED
Morrow U OstroskySpainAmy Elsner PROPOSAL
Francesco H RulapaughIndiaOnyama Limba PROPOSAL
Salvatore U BologniaCanadaIvan Magalhaes PROPOSAL
Wickens M ChuiFranceIvan Magalhaes UNQUALIFIED
Stacey O FigeroaRussiaElwin Sharvill RENEWAL
Chavez H CampainSpainAsiya Javayant RENEWAL
Leon J DoeSpainAsiya Javayant PROPOSAL
Misaki F OstroskyItalyOnyama Limba NEGOTIATION
Julie L RutaSpainAnna Fali UNQUALIFIED
Jennifer M GauchoGermanyXuxue Feng QUALIFIED
Misaki G PaprockiIndiaOnyama Limba PROPOSAL
Stacey V BologniaGermanyXuxue Feng QUALIFIED
Wickens X BologniaUnited KingdomOnyama Limba PROPOSAL
Silvio P SergiArgentinaAmy Elsner PROPOSAL
Aika S MaletSpainStephen Shaw PROPOSAL
Nicolas D PoquetteGermanyXuxue Feng UNQUALIFIED
Chavez E TollnerFranceAmy Elsner UNQUALIFIED
Mayumi D StockhamFranceXuxue Feng QUALIFIED
Kaitlin P KolmetzCanadaElwin Sharvill RENEWAL
Julie Q PaprockiJapanXuxue Feng RENEWAL
Mayumi M DoeArgentinaOnyama Limba NEW
Nicolas I SchemmerUnited KingdomXuxue Feng QUALIFIED
Jefferson F PerinIndiaXuxue Feng RENEWAL
Aika K MorascaJapanAnna Fali PROPOSAL
Morrow X RimUnited KingdomOnyama Limba RENEWAL
Greenwood S BologniaFranceBernardo Dominic PROPOSAL
Ricardo Z MarrierJapanIvan Magalhaes NEW
Aditya D RutaItalyAmy Elsner NEW
Octavia L RutaArgentinaAmy Elsner PROPOSAL
Jefferson O RutaAustraliaAsiya Javayant QUALIFIED
Silvio Y VocelkaArgentinaIoni Bowcher PROPOSAL
Adams G AlbaresCanadaElwin Sharvill PROPOSAL
Leon E DoeBrazilAsiya Javayant UNQUALIFIED
Adams A AmigonSpainBernardo Dominic RENEWAL
Kadeem F StockhamBrazilXuxue Feng RENEWAL
James P DilliardArgentinaBernardo Dominic QUALIFIED
Antonio Y StockhamBrazilAnna Fali NEW
Mayumi N VocelkaBrazilAsiya Javayant UNQUALIFIED
Aruna J OldroydSpainAmy Elsner PROPOSAL
Tony R BologniaArgentinaOnyama Limba PROPOSAL
Leon B SergiItalyBernardo Dominic UNQUALIFIED
Jennifer N TollnerIndiaAnna Fali NEW
Deepesh C SchemmerIndiaElwin Sharvill PROPOSAL
Antonio S SchemmerArgentinaBernardo Dominic UNQUALIFIED
Jeanfrancois F FerenczFranceStephen Shaw RENEWAL
Faith C CampainRussiaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Costa N FlosiIndiaElwin Sharvill UNQUALIFIED
Wickens Q NickaJapanAnna Fali RENEWAL
Jennifer S AmigonUnited KingdomElwin Sharvill PROPOSAL
Isabel X RoysterJapanAmy Elsner RENEWAL
Mayumi Z MacleadAustraliaIvan Magalhaes NEGOTIATION
Isabel A RulapaughJapanAsiya Javayant RENEWAL
Misaki T KolmetzAustraliaIvan Magalhaes NEW
Smith L FerenczRussiaAsiya Javayant NEW
Mujtaba S DoeJapanXuxue Feng PROPOSAL
Ricardo P CampainAustraliaXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi Z RimItaly2026-11-09Feltz Printing Service UNQUALIFIED80Stephen Shaw
1001Morrow Z MarrierCanada2026-11-05Feltz Printing Service QUALIFIED80Bernardo Dominic
1002Tony E PerinJapan2026-10-15Commercial Press NEW0Anna Fali
1003Faith N CaldareraRussia2026-10-24Buckley Miller Wright QUALIFIED2Asiya Javayant
1004Costa V DarakjyBrazil2026-10-26Chanay, Jeffrey A Esq NEGOTIATION43Onyama Limba
1005Clifford S PoquetteItaly2026-11-11Chemel, James L Cpa PROPOSAL15Anna Fali
1006Maria V BriddickRussia2026-11-03King, Christopher A Esq UNQUALIFIED1Stephen Shaw
1007Adams I RutaRussia2026-11-06Feltz Printing Service UNQUALIFIED66Anna Fali
1008Arvin X GarufiAustralia2026-10-26Chemel, James L Cpa PROPOSAL33Bernardo Dominic
1009James J DarakjyJapan2026-10-19Chanay, Jeffrey A Esq UNQUALIFIED48Asiya Javayant
1010Ashley M DilliardSpain2026-10-19Printing Dimensions UNQUALIFIED82Anna Fali
1011Leon H KolmetzBrazil2026-10-29Benton, John B Jr RENEWAL72Xuxue Feng
1012Kadeem J FigeroaCanada2026-11-09Truhlar And Truhlar Attys QUALIFIED76Anna Fali
1013Alejandro X KuskoCanada2026-10-15Chemel, James L Cpa QUALIFIED98Anna Fali
1014Smith B BriddickArgentina2026-11-06Dorl, James J Esq QUALIFIED0Anna Fali
1015Smith P StensethBrazil2026-10-20Truhlar And Truhlar Attys NEGOTIATION67Onyama Limba
1016Chavez P AmigonJapan2026-10-16Morlong Associates UNQUALIFIED29Amy Elsner
1017Leja Z FollerCanada2026-10-23Feltz Printing Service RENEWAL19Bernardo Dominic
1018Alejandro B VenereIndia2026-10-30Chemel, James L Cpa NEW39Stephen Shaw
1019Ashley C BologniaAustralia2026-11-02Chanay, Jeffrey A Esq QUALIFIED20Amy Elsner
1020Julie E GarufiFrance2026-11-01Feiner Bros NEGOTIATION44Anna Fali
1021Faith T GauchoGermany2026-11-09Rousseaux, Michael Esq NEW91Ivan Magalhaes
1022Jefferson F RulapaughIndia2026-10-21Feltz Printing Service NEW23Elwin Sharvill
1023Jones G GarufiAustralia2026-11-12Printing Dimensions QUALIFIED82Ivan Magalhaes
1024Faith L CaldareraAustralia2026-10-17Dorl, James J Esq UNQUALIFIED29Xuxue Feng
1025Clifford M FigeroaIndia2026-11-05Chapman, Ross E Esq UNQUALIFIED60Amy Elsner
1026Jefferson T IturbideArgentina2026-11-06Dorl, James J Esq NEGOTIATION0Xuxue Feng
1027Deepesh A DoeJapan2026-10-26Truhlar And Truhlar Attys NEW17Xuxue Feng
1028Silvio N WieserSpain2026-10-21Benton, John B Jr PROPOSAL37Bernardo Dominic
1029Maria V AlbaresFrance2026-11-11Chemel, James L Cpa NEW19Xuxue Feng
1030Greenwood O DoeBrazil2026-11-09Printing Dimensions RENEWAL81Ivan Magalhaes
1031Misaki J RimJapan2026-10-20Buckley Miller Wright PROPOSAL64Ivan Magalhaes
1032Murillo Y StockhamFrance2026-10-19King, Christopher A Esq UNQUALIFIED38Amy Elsner
1033Ivar B GauchoBrazil2026-10-23Benton, John B Jr RENEWAL13Amy Elsner
1034Silvio N GillianArgentina2026-11-06Chanay, Jeffrey A Esq RENEWAL67Bernardo Dominic
1035Mayumi C KolmetzArgentina2026-11-02Feiner Bros PROPOSAL89Elwin Sharvill
1036Murillo E KuskoSpain2026-10-17Rangoni Of Florence UNQUALIFIED98Asiya Javayant
1037Jeanfrancois F StensethUnited Kingdom2026-11-01Rangoni Of Florence PROPOSAL72Bernardo Dominic
1038Antonio K KuskoUnited Kingdom2026-11-05King, Christopher A Esq RENEWAL47Ioni Bowcher
1039Kaitlin C FigeroaCanada2026-10-15Printing Dimensions NEGOTIATION59Ioni Bowcher
1040Jones R WieserUnited Kingdom2026-10-20Feiner Bros RENEWAL12Asiya Javayant
1041Munro W MacleadIndia2026-11-05Truhlar And Truhlar Attys UNQUALIFIED12Elwin Sharvill
1042Kaitlin W GarufiArgentina2026-10-26Feltz Printing Service NEW29Anna Fali
1043Misaki Z BriddickSpain2026-10-20Dorl, James J Esq UNQUALIFIED35Xuxue Feng
1044Mayumi J SaylorsCanada2026-10-22Benton, John B Jr NEGOTIATION18Asiya Javayant
1045Antonio O WaycottSpain2026-10-31Printing Dimensions NEW63Stephen Shaw
1046Rodrigues T OstroskyBrazil2026-10-17Benton, John B Jr NEGOTIATION33Amy Elsner
1047Claire V SaylorsArgentina2026-10-15Chemel, James L Cpa UNQUALIFIED28Anna Fali
1048Smith H CaldareraGermany2026-11-12Chemel, James L Cpa UNQUALIFIED66Amy Elsner
1049Adams W FigeroaUnited Kingdom2026-10-24Morlong Associates QUALIFIED83Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Ivar Z GillianItalyXuxue Feng QUALIFIED
Jennifer V MaletIndiaStephen Shaw NEGOTIATION
Sinclair F NickaUnited KingdomBernardo Dominic NEW
Jefferson C OldroydRussiaAnna Fali QUALIFIED
Tony J DilliardBrazilIoni Bowcher PROPOSAL
Francesco Z FollerFranceAnna Fali RENEWAL
Wickens M PaprockiBrazilBernardo Dominic NEW
Antonio W DilliardRussiaIvan Magalhaes PROPOSAL
Wickens S MaletAustraliaElwin Sharvill RENEWAL
Smith B DarakjyRussiaIoni Bowcher QUALIFIED
Salvatore D GauchoArgentinaXuxue Feng RENEWAL
Silvio V CaudyCanadaAnna Fali NEW
Misaki K KolmetzCanadaAmy Elsner RENEWAL
Mayumi B BowleySpainStephen Shaw NEGOTIATION
Kaitlin Q OstroskyCanadaOnyama Limba UNQUALIFIED
Nicolas F SergiJapanBernardo Dominic RENEWAL
Juan B PoquetteIndiaAmy Elsner RENEWAL
Murillo C ButtIndiaIoni Bowcher RENEWAL
Darci J CaldareraUnited KingdomElwin Sharvill UNQUALIFIED
Jefferson O ButtIndiaAnna Fali UNQUALIFIED
Greenwood T SchemmerItalyIoni Bowcher RENEWAL
Octavia Z VocelkaRussiaStephen Shaw QUALIFIED
Jones J RimIndiaXuxue Feng PROPOSAL
Faith J CaudyUnited KingdomAnna Fali QUALIFIED
Aika P BologniaUnited KingdomOnyama Limba RENEWAL
Stacey V SchemmerAustraliaAnna Fali NEW
Rodrigues E ChuiJapanOnyama Limba RENEWAL
Ricardo V MarrierFranceBernardo Dominic PROPOSAL
Jeanfrancois X ButtRussiaStephen Shaw UNQUALIFIED
Salvatore T ShinkoSpainIvan Magalhaes QUALIFIED
Jennifer B VenereCanadaElwin Sharvill NEGOTIATION
Darci R MaletArgentinaIoni Bowcher NEGOTIATION
Maria A SchemmerAustraliaStephen Shaw PROPOSAL
Jeanfrancois H CampainFranceElwin Sharvill UNQUALIFIED
Nicolas K GauchoGermanyIvan Magalhaes NEGOTIATION
Faith R StockhamArgentinaIoni Bowcher PROPOSAL
Silvio P GillianArgentinaXuxue Feng NEGOTIATION
James D KolmetzIndiaIvan Magalhaes QUALIFIED
Stacey F VocelkaFranceElwin Sharvill PROPOSAL
Kadeem D BologniaSpainAnna Fali RENEWAL
Jones W FollerRussiaAsiya Javayant QUALIFIED
Salvatore C VenereArgentinaAmy Elsner RENEWAL
Chavez U AmigonArgentinaOnyama Limba UNQUALIFIED
Sinclair N AmigonGermanyIvan Magalhaes QUALIFIED
Misaki I PerinJapanAmy Elsner NEGOTIATION
Stacey M GlickAustraliaBernardo Dominic NEW
Tony P SergiUnited KingdomIvan Magalhaes UNQUALIFIED
Julie Y MaletUnited KingdomIvan Magalhaes QUALIFIED
Johnson N MarrierSpainBernardo Dominic UNQUALIFIED
David F PerinIndiaIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Arvin V Schemmer
Mujtaba B Doe
Leja T Rulapaugh
Juan W Bowley
Jefferson C Rulapaugh
Munro S Poquette
Sinclair M Malet
Darci Q Garufi
James I Marrier
Adams Q Morasca
Sinclair E Glick
Leon B Whobrey
Faith W Rulapaugh
David R Bolognia
James O Marrier
Wickens A Ruta
Rodrigues K Shinko
Kaitlin W Gillian
Sinclair E Iturbide
Greenwood V Flosi
Ashley R Flosi
Sinclair S Malet
Wickens D Kolmetz
Aruna U Royster
Munro A Bolognia
Mujtaba K Foller
Morrow O Schemmer
Rodrigues L Oldroyd
Izzy Y Oldroyd
Izzy W Perin
Leja B Bowley
Cody X Figeroa
Mujtaba X Paprocki
Cody I Gillian
Izzy Q Tollner
Greenwood S Albares
Stacey G Garufi
Kaitlin D Foller
Deepesh V Saylors
Salvatore R Nestle
Julie V Flosi
Stacey D Sergi
Cody C Amigon
Mayumi K Tollner
Jones D Caldarera
Smith O Marrier
Silvio J Venere
Silvio G Slusarski
James R Ruta
Nicolas V Poquette
IdCountryDate
1000France2026-10-19
1001Brazil2026-10-31
1002Germany2026-11-09
1003Spain2026-10-24
1004Spain2026-11-02
1005Argentina2026-10-29
1006Canada2026-10-21
1007Japan2026-10-30
1008Canada2026-10-15
1009United Kingdom2026-11-12
1010Australia2026-11-10
1011India2026-10-19
1012Spain2026-10-25
1013Australia2026-11-04
1014Canada2026-11-02
1015Japan2026-10-31
1016Germany2026-10-22
1017United Kingdom2026-11-01
1018United Kingdom2026-10-30
1019Brazil2026-10-20
1020Russia2026-11-02
1021Canada2026-11-09
1022France2026-10-21
1023India2026-10-16
1024United Kingdom2026-10-23
1025France2026-11-01
1026France2026-10-28
1027Italy2026-11-11
1028India2026-10-15
1029Russia2026-10-17
1030Germany2026-10-24
1031Spain2026-11-06
1032Spain2026-10-28
1033United Kingdom2026-10-24
1034Argentina2026-11-03
1035Canada2026-11-11
1036United Kingdom2026-11-09
1037Spain2026-11-06
1038Argentina2026-10-17
1039United Kingdom2026-10-31
1040Australia2026-10-29
1041India2026-11-03
1042Japan2026-11-07
1043Italy2026-10-15
1044France2026-11-06
1045United Kingdom2026-11-05
1046United Kingdom2026-10-30
1047Australia2026-10-15
1048India2026-10-31
1049United Kingdom2026-11-02

On-Demand Data

NameIdCountryDate
Maria S Darakjy1000India2026-10-14
Antonio Z Kusko1001Argentina2026-11-09
Morrow S Figeroa1002France2026-10-20
James R Rim1003Canada2026-10-14
Costa G Maclead1004Canada2026-11-05
Octavia V Poquette1005Spain2026-10-26
Alejandro X Stenseth1006Brazil2026-10-27
Maisha F Maclead1007France2026-10-27
Wickens J Perin1008Italy2026-10-15
Jennifer G Albares1009Australia2026-10-14
Jones D Marrier1010United Kingdom2026-10-27
Morrow S Royster1011Brazil2026-10-31
Deepesh Z Bowley1012Argentina2026-11-04
Kaitlin O Bolognia1013Argentina2026-10-31
Emily Q Gillian1014France2026-10-26
Maria G Saylors1015Japan2026-10-29
Clifford E Maclead1016Germany2026-10-17
Morrow W Ferencz1017Japan2026-11-12
Jeanfrancois V Chui1018Germany2026-10-20
Mujtaba S Oldroyd1019Japan2026-10-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba W CaldareraCanadaAsiya Javayant RENEWAL
Jennifer D AmigonFranceIoni Bowcher PROPOSAL
Aika B CaudyItalyIvan Magalhaes NEGOTIATION
Jefferson A NestleBrazilAnna Fali UNQUALIFIED
Jones U MorascaArgentinaElwin Sharvill QUALIFIED
Isabel J NestleSpainOnyama Limba NEGOTIATION
Faith E MaletSpainXuxue Feng NEW
Sinclair T TollnerIndiaBernardo Dominic RENEWAL
Deepesh Z StockhamArgentinaXuxue Feng UNQUALIFIED
David R RimRussiaBernardo Dominic UNQUALIFIED
Jennifer C VenereIndiaAmy Elsner RENEWAL
Mujtaba G FerenczArgentinaXuxue Feng PROPOSAL
Mayumi G OldroydAustraliaOnyama Limba QUALIFIED
Izzy F ShinkoIndiaIvan Magalhaes RENEWAL
Alejandro N WaycottSpainStephen Shaw PROPOSAL
Murillo D RutaGermanyAnna Fali PROPOSAL
Wickens C VenereCanadaStephen Shaw NEGOTIATION
Leja L VocelkaAustraliaXuxue Feng UNQUALIFIED
Kaitlin C ChuiSpainStephen Shaw PROPOSAL
Johnson Y PerinSpainStephen Shaw RENEWAL
Jennifer L DoeSpainIoni Bowcher PROPOSAL
Ashley X PoquetteItalyElwin Sharvill NEGOTIATION
Francesco Q DarakjyUnited KingdomXuxue Feng UNQUALIFIED
Mayumi T TollnerBrazilOnyama Limba PROPOSAL
Arvin K FerenczRussiaAmy Elsner NEGOTIATION
Stacey B NestleCanadaIoni Bowcher RENEWAL
Faith P MaletJapanBernardo Dominic NEW
Misaki H VocelkaRussiaAmy Elsner NEW
Aditya Y AmigonArgentinaAmy Elsner NEGOTIATION
Clifford M MarrierCanadaAnna Fali UNQUALIFIED
Mayumi U BologniaGermanyOnyama Limba UNQUALIFIED
Antonio P MorascaUnited KingdomAsiya Javayant NEW
Tony R MorascaSpainIvan Magalhaes PROPOSAL
Jeanfrancois L InouyeCanadaAnna Fali NEW
Tony O AlbaresAustraliaStephen Shaw NEGOTIATION
David G GauchoCanadaOnyama Limba NEGOTIATION
Izzy C BriddickFranceElwin Sharvill NEW
Clifford Z GarufiRussiaStephen Shaw QUALIFIED
Jennifer F RimItalyIvan Magalhaes NEGOTIATION
Clifford G FigeroaItalyAmy Elsner NEGOTIATION

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