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
Kadeem T KuskoUnited KingdomAnna Fali NEW
Murillo P BriddickItalyElwin Sharvill NEGOTIATION
Tony C PerinCanadaBernardo Dominic UNQUALIFIED
Tony G WieserBrazilXuxue Feng NEGOTIATION
Arvin B BriddickItalyIvan Magalhaes RENEWAL
Sinclair M BologniaFranceIoni Bowcher UNQUALIFIED
Adams W VocelkaAustraliaAsiya Javayant PROPOSAL
Faith N DoeFranceAmy Elsner UNQUALIFIED
Aruna L PerinGermanyXuxue Feng NEW
Leja T MarrierSpainIvan Magalhaes NEW
Costa A AlbaresArgentinaAnna Fali QUALIFIED
Maria O MaletCanadaElwin Sharvill NEGOTIATION
Chavez O GarufiAustraliaOnyama Limba QUALIFIED
Kaitlin G SchemmerFranceIoni Bowcher PROPOSAL
Deepesh Q VocelkaArgentinaIoni Bowcher QUALIFIED
Juan I ButtAustraliaBernardo Dominic NEGOTIATION
Stacey V InouyeArgentinaAnna Fali RENEWAL
Ashley T FlosiRussiaAmy Elsner UNQUALIFIED
Jefferson B StensethJapanElwin Sharvill RENEWAL
Ivar O WhobreyGermanyBernardo Dominic UNQUALIFIED
Izzy J KolmetzFranceXuxue Feng NEGOTIATION
Wickens I BologniaSpainAmy Elsner UNQUALIFIED
Juan L WieserBrazilOnyama Limba NEGOTIATION
David D BriddickArgentinaAmy Elsner PROPOSAL
Jones Z ButtItalyOnyama Limba NEGOTIATION
Clifford R RulapaughArgentinaAsiya Javayant NEW
Leon H MorascaBrazilOnyama Limba QUALIFIED
Kaitlin H ButtArgentinaAsiya Javayant RENEWAL
Smith A WieserSpainAmy Elsner NEW
Aruna L PerinAustraliaIvan Magalhaes RENEWAL
Ricardo N CaldareraBrazilOnyama Limba RENEWAL
Jeanfrancois F GlickRussiaOnyama Limba NEGOTIATION
Isabel U ChuiRussiaXuxue Feng UNQUALIFIED
Kaitlin G FerenczFranceIvan Magalhaes RENEWAL
Antonio Z OstroskyAustraliaElwin Sharvill NEGOTIATION
Stacey N CaldareraUnited KingdomElwin Sharvill NEW
Kaitlin A PerinUnited KingdomAnna Fali NEGOTIATION
Smith I SchemmerGermanyOnyama Limba NEGOTIATION
Wickens W BologniaItalyAmy Elsner QUALIFIED
Jennifer C SlusarskiGermanyAmy Elsner QUALIFIED
Jeanfrancois W FollerGermanyXuxue Feng PROPOSAL
Aika H BriddickRussiaXuxue Feng NEGOTIATION
David D OstroskyArgentinaBernardo Dominic PROPOSAL
Juan W RimRussiaAnna Fali QUALIFIED
Maria Z FollerIndiaElwin Sharvill UNQUALIFIED
Kaitlin X FlosiUnited KingdomElwin Sharvill UNQUALIFIED
Costa L WaycottSpainIvan Magalhaes QUALIFIED
Maisha N PaprockiRussiaOnyama Limba NEW
Izzy L ShinkoFranceAnna Fali NEGOTIATION
Francesco R FerenczFranceIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Juan C FlosiArgentinaBernardo Dominic RENEWAL
Munro U TollnerUnited KingdomXuxue Feng UNQUALIFIED
Octavia Y GlickFranceAsiya Javayant NEGOTIATION
Jennifer Y StockhamFranceElwin Sharvill UNQUALIFIED
Ricardo P BologniaArgentinaBernardo Dominic RENEWAL
Darci D IturbideGermanyXuxue Feng NEGOTIATION
Munro H PerinAustraliaElwin Sharvill PROPOSAL
Jeanfrancois W OstroskyItalyAnna Fali PROPOSAL
Salvatore X GarufiSpainXuxue Feng PROPOSAL
Ivar K MorascaIndiaElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba Y PerinUnited Kingdom2026-09-10Chemel, James L Cpa RENEWAL17Onyama Limba
1001David F MarrierGermany2026-09-11Rousseaux, Michael Esq PROPOSAL17Asiya Javayant
1002Jefferson M VenereArgentina2026-09-07Chemel, James L Cpa RENEWAL38Bernardo Dominic
1003Adams T TollnerRussia2026-10-03Morlong Associates NEGOTIATION1Stephen Shaw
1004Ashley T CaudyRussia2026-09-25Printing Dimensions NEW29Amy Elsner
1005Maisha N MaletSpain2026-09-13Chapman, Ross E Esq UNQUALIFIED82Amy Elsner
1006Ricardo X GlickJapan2026-10-04Feiner Bros QUALIFIED16Onyama Limba
1007Nicolas R AmigonUnited Kingdom2026-09-17Chapman, Ross E Esq RENEWAL38Onyama Limba
1008Darci A KolmetzGermany2026-09-21Dorl, James J Esq RENEWAL61Bernardo Dominic
1009Arvin R RoysterFrance2026-09-06Commercial Press RENEWAL70Bernardo Dominic
1010Emily U GarufiUnited Kingdom2026-09-20Buckley Miller Wright PROPOSAL31Ivan Magalhaes
1011Clifford A GlickBrazil2026-09-30Printing Dimensions PROPOSAL98Ioni Bowcher
1012Octavia V SchemmerArgentina2026-09-25Dorl, James J Esq PROPOSAL79Anna Fali
1013Claire W BowleyFrance2026-09-27Dorl, James J Esq RENEWAL98Onyama Limba
1014Mujtaba B MaletCanada2026-09-21Chapman, Ross E Esq RENEWAL71Anna Fali
1015Costa O SlusarskiIndia2026-09-14Chemel, James L Cpa RENEWAL92Ivan Magalhaes
1016Jennifer V VenereSpain2026-09-16Rangoni Of Florence RENEWAL13Stephen Shaw
1017Kadeem W AlbaresFrance2026-10-05King, Christopher A Esq NEGOTIATION91Elwin Sharvill
1018Munro L FollerGermany2026-09-25Rousseaux, Michael Esq PROPOSAL56Bernardo Dominic
1019Maisha G RulapaughBrazil2026-09-29Rangoni Of Florence NEW42Stephen Shaw
1020Ivar M RimSpain2026-09-20Chapman, Ross E Esq PROPOSAL84Elwin Sharvill
1021Munro C FerenczUnited Kingdom2026-09-23Chemel, James L Cpa QUALIFIED74Onyama Limba
1022Alejandro L VocelkaArgentina2026-09-17Buckley Miller Wright QUALIFIED97Anna Fali
1023Greenwood D InouyeRussia2026-09-08Chanay, Jeffrey A Esq QUALIFIED40Anna Fali
1024Darci C AmigonItaly2026-10-01Chanay, Jeffrey A Esq NEGOTIATION33Xuxue Feng
1025Nicolas N MaletBrazil2026-09-18Morlong Associates NEW69Elwin Sharvill
1026Mayumi V NickaUnited Kingdom2026-09-26Printing Dimensions PROPOSAL36Ioni Bowcher
1027Kaitlin Z StensethFrance2026-09-22Feiner Bros NEGOTIATION1Asiya Javayant
1028Chavez A ButtSpain2026-09-15Feltz Printing Service PROPOSAL77Onyama Limba
1029Darci U SaylorsCanada2026-09-21Truhlar And Truhlar Attys RENEWAL55Elwin Sharvill
1030Misaki X FerenczFrance2026-09-19Rousseaux, Michael Esq UNQUALIFIED18Onyama Limba
1031Jefferson M GarufiBrazil2026-09-12Dorl, James J Esq NEW86Ivan Magalhaes
1032Leon Z BriddickIndia2026-10-01Truhlar And Truhlar Attys UNQUALIFIED71Xuxue Feng
1033James N BologniaIndia2026-09-19Commercial Press RENEWAL67Stephen Shaw
1034Stacey J AmigonGermany2026-09-09Benton, John B Jr NEGOTIATION8Elwin Sharvill
1035Salvatore Z GillianAustralia2026-09-29Printing Dimensions NEGOTIATION90Ivan Magalhaes
1036Aika M RutaUnited Kingdom2026-09-17Chemel, James L Cpa NEW96Asiya Javayant
1037Aruna W IturbideGermany2026-09-19Feltz Printing Service NEGOTIATION71Stephen Shaw
1038Greenwood K GarufiArgentina2026-09-16Chapman, Ross E Esq QUALIFIED43Ioni Bowcher
1039Munro B MacleadArgentina2026-09-13King, Christopher A Esq NEGOTIATION27Anna Fali
1040Smith H RimBrazil2026-09-15Commercial Press UNQUALIFIED59Stephen Shaw
1041Antonio E WhobreyCanada2026-09-07Feiner Bros UNQUALIFIED31Onyama Limba
1042Julie Z MaletCanada2026-09-17Dorl, James J Esq RENEWAL84Bernardo Dominic
1043Faith N DoeBrazil2026-09-10Truhlar And Truhlar Attys NEW68Bernardo Dominic
1044Alejandro S TollnerIndia2026-09-06Chemel, James L Cpa UNQUALIFIED50Xuxue Feng
1045Deepesh X NickaRussia2026-09-30Chemel, James L Cpa QUALIFIED22Bernardo Dominic
1046Aika F MorascaFrance2026-09-15Feltz Printing Service RENEWAL0Elwin Sharvill
1047Kadeem T StockhamItaly2026-09-22Chanay, Jeffrey A Esq NEW85Amy Elsner
1048Claire P IturbideRussia2026-09-12Truhlar And Truhlar Attys UNQUALIFIED13Ioni Bowcher
1049Francesco W RimFrance2026-09-12Chemel, James L Cpa PROPOSAL47Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues V OstroskyArgentinaOnyama Limba QUALIFIED
Mayumi C MaletRussiaIvan Magalhaes RENEWAL
Isabel R CaldareraJapanBernardo Dominic RENEWAL
Wickens N StockhamJapanElwin Sharvill NEGOTIATION
Stacey Q GarufiJapanStephen Shaw UNQUALIFIED
Aruna G WhobreyCanadaStephen Shaw NEW
Tony H AlbaresGermanyAsiya Javayant QUALIFIED
Ricardo Y StensethArgentinaIvan Magalhaes NEW
Claire Z GillianAustraliaIoni Bowcher NEGOTIATION
Alejandro M ChuiSpainOnyama Limba NEGOTIATION
Aruna P InouyeJapanElwin Sharvill NEW
Jeanfrancois L FigeroaBrazilStephen Shaw NEGOTIATION
Mujtaba H RutaCanadaBernardo Dominic UNQUALIFIED
Tony I MorascaFranceAmy Elsner NEW
Deepesh W RoysterSpainIvan Magalhaes RENEWAL
David A CaudyJapanAmy Elsner RENEWAL
Tony T OldroydItalyBernardo Dominic NEGOTIATION
Clifford B GauchoJapanOnyama Limba QUALIFIED
Emily U WaycottIndiaIvan Magalhaes QUALIFIED
Jeanfrancois J IturbideSpainElwin Sharvill QUALIFIED
Mujtaba S ChuiAustraliaAnna Fali NEGOTIATION
Costa O GarufiSpainAsiya Javayant NEW
Murillo W TollnerRussiaElwin Sharvill UNQUALIFIED
Leja Y OldroydArgentinaElwin Sharvill QUALIFIED
Nicolas X GauchoGermanyAsiya Javayant UNQUALIFIED
Rodrigues R MorascaItalyIoni Bowcher PROPOSAL
Francesco U ButtUnited KingdomAsiya Javayant RENEWAL
Mayumi T FlosiAustraliaBernardo Dominic PROPOSAL
Silvio A GauchoItalyOnyama Limba PROPOSAL
Silvio L GlickRussiaXuxue Feng NEGOTIATION
Mayumi H DoeAustraliaXuxue Feng NEW
Kaitlin M DoeFranceAsiya Javayant NEGOTIATION
Deepesh S NickaArgentinaIvan Magalhaes PROPOSAL
Aditya V MaletFranceOnyama Limba QUALIFIED
Greenwood E SaylorsSpainAsiya Javayant RENEWAL
Claire H CaldareraSpainStephen Shaw RENEWAL
Smith O AmigonArgentinaIvan Magalhaes PROPOSAL
Salvatore M RulapaughSpainIoni Bowcher RENEWAL
Aruna G OldroydGermanyOnyama Limba NEW
Izzy X OstroskyBrazilStephen Shaw RENEWAL
Alejandro Z TollnerUnited KingdomIvan Magalhaes RENEWAL
Wickens Y GarufiGermanyAmy Elsner NEGOTIATION
Ashley O AmigonJapanXuxue Feng PROPOSAL
Claire B PerinUnited KingdomStephen Shaw NEGOTIATION
Smith K ButtFranceStephen Shaw QUALIFIED
Salvatore C CaudyAustraliaIoni Bowcher NEGOTIATION
Greenwood C MorascaIndiaXuxue Feng RENEWAL
David H PaprockiFranceXuxue Feng PROPOSAL
Smith N DarakjyAustraliaOnyama Limba NEW
Jefferson N InouyeGermanyOnyama Limba UNQUALIFIED
Frozen Columns
Name
Antonio K Gaucho
Aditya D Caudy
Octavia J Kusko
Rodrigues B Marrier
Aditya T Slusarski
Greenwood J Vocelka
Alejandro A Ferencz
Greenwood R Bowley
Nicolas F Glick
Smith J Wieser
Greenwood H Iturbide
Cody U Marrier
Emily G Waycott
Greenwood L Royster
Clifford E Malet
Kadeem E Waycott
Stacey W Shinko
Greenwood G Vocelka
Jones P Saylors
Deepesh O Kusko
Julie C Oldroyd
Silvio S Malet
Rodrigues F Tollner
Claire U Shinko
Kadeem R Albares
Leon J Dilliard
Murillo U Vocelka
Ricardo T Iturbide
Nicolas T Glick
Francesco W Amigon
Alejandro C Bolognia
Isabel N Ruta
Jefferson X Glick
Misaki V Foller
Faith E Ostrosky
Leja C Poquette
Antonio D Albares
Greenwood K Campain
James A Ostrosky
Aruna B Royster
Maisha U Wieser
Faith D Poquette
Francesco Z Dilliard
Arvin S Flosi
Arvin H Flosi
Jefferson Y Shinko
James T Ostrosky
Jennifer P Gillian
Ashley G Garufi
Murillo J Kolmetz
IdCountryDate
1000Argentina2026-09-22
1001Australia2026-09-19
1002Brazil2026-09-06
1003Germany2026-09-19
1004India2026-10-01
1005Italy2026-09-20
1006Spain2026-09-20
1007Argentina2026-10-05
1008Spain2026-09-06
1009Spain2026-09-19
1010Italy2026-09-14
1011Canada2026-09-14
1012Argentina2026-09-30
1013Japan2026-09-20
1014Brazil2026-10-05
1015Russia2026-09-24
1016Japan2026-10-02
1017Japan2026-09-10
1018Canada2026-09-30
1019Spain2026-09-06
1020Brazil2026-09-15
1021Spain2026-09-16
1022Russia2026-09-07
1023United Kingdom2026-09-13
1024Canada2026-09-14
1025Brazil2026-10-02
1026Australia2026-09-18
1027Japan2026-09-30
1028Australia2026-09-16
1029Russia2026-09-19
1030Spain2026-09-21
1031Canada2026-09-07
1032Australia2026-09-14
1033Argentina2026-09-28
1034India2026-10-04
1035Australia2026-09-13
1036India2026-09-25
1037Russia2026-09-16
1038Canada2026-10-05
1039United Kingdom2026-09-21
1040France2026-09-15
1041Italy2026-09-09
1042Brazil2026-09-28
1043Spain2026-09-23
1044Australia2026-09-07
1045Canada2026-09-28
1046Japan2026-09-19
1047Germany2026-09-07
1048Russia2026-09-27
1049France2026-10-02

On-Demand Data

NameIdCountryDate
Silvio Q Waycott1000Russia2026-09-23
Rodrigues D Gillian1001Japan2026-09-06
Morrow Z Malet1002Japan2026-09-27
Emily E Malet1003United Kingdom2026-09-11
Kaitlin B Royster1004Japan2026-09-20
Kaitlin J Flosi1005Germany2026-09-26
Tony Q Iturbide1006Japan2026-09-13
Isabel A Caldarera1007Brazil2026-10-05
Adams Q Flosi1008Japan2026-09-26
Smith M Oldroyd1009Italy2026-09-13
Leon Y Slusarski1010Canada2026-09-28
Munro T Venere1011Italy2026-09-30
Rodrigues Z Slusarski1012Canada2026-10-04
Jefferson R Butt1013Australia2026-10-05
Rodrigues T Chui1014United Kingdom2026-09-08
Adams C Nestle1015Australia2026-10-05
Jones P Butt1016Brazil2026-10-03
Aruna H Ferencz1017Canada2026-09-13
Ivar V Bolognia1018Brazil2026-09-09
Johnson N Ostrosky1019Italy2026-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Arvin J VenereItalyElwin Sharvill RENEWAL
Jones L RulapaughGermanyBernardo Dominic PROPOSAL
Costa L GillianUnited KingdomElwin Sharvill NEGOTIATION
James O TollnerJapanOnyama Limba QUALIFIED
Jennifer W BologniaItalyStephen Shaw NEW
Nicolas Y AlbaresGermanyIvan Magalhaes RENEWAL
Leja M ShinkoCanadaAmy Elsner QUALIFIED
Nicolas C FollerRussiaXuxue Feng RENEWAL
Maisha K PaprockiBrazilElwin Sharvill PROPOSAL
Leon K CampainArgentinaStephen Shaw RENEWAL
Jennifer J WieserUnited KingdomBernardo Dominic NEW
Johnson B SlusarskiRussiaIoni Bowcher NEW
Jeanfrancois B TollnerFranceXuxue Feng UNQUALIFIED
Mujtaba O SlusarskiItalyAmy Elsner PROPOSAL
Wickens G RutaBrazilIvan Magalhaes RENEWAL
David O CaldareraJapanBernardo Dominic UNQUALIFIED
Johnson Q RutaBrazilXuxue Feng UNQUALIFIED
Murillo D GauchoAustraliaXuxue Feng RENEWAL
Antonio E SlusarskiJapanElwin Sharvill RENEWAL
Darci Z RutaSpainElwin Sharvill RENEWAL
Rodrigues W KolmetzItalyAsiya Javayant UNQUALIFIED
Maria P AmigonFranceStephen Shaw QUALIFIED
Clifford E PoquetteCanadaAnna Fali UNQUALIFIED
Julie K CaldareraGermanyAnna Fali NEW
Ivar V PaprockiIndiaBernardo Dominic NEW
Isabel B NickaFranceBernardo Dominic RENEWAL
Misaki Z WieserSpainIoni Bowcher NEGOTIATION
Stacey X StensethSpainAmy Elsner QUALIFIED
Kaitlin P BologniaRussiaIvan Magalhaes PROPOSAL
Johnson A GauchoFranceAsiya Javayant NEGOTIATION
Arvin D BologniaUnited KingdomElwin Sharvill UNQUALIFIED
Arvin Q GauchoIndiaAnna Fali NEGOTIATION
Ashley M ButtJapanBernardo Dominic NEW
Ricardo T CampainBrazilAmy Elsner PROPOSAL
Mujtaba R SergiBrazilAnna Fali QUALIFIED
Greenwood T DarakjyBrazilIvan Magalhaes UNQUALIFIED
Leja T RulapaughFranceOnyama Limba UNQUALIFIED
Aruna U MaletGermanyIvan Magalhaes PROPOSAL
Juan Z NickaFranceAmy Elsner UNQUALIFIED
Octavia R GlickSpainIvan Magalhaes 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>