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
Mujtaba U GillianGermanyOnyama Limba NEW
Johnson M OstroskyFranceElwin Sharvill RENEWAL
Morrow K RimJapanIvan Magalhaes PROPOSAL
Ricardo R GarufiArgentinaIvan Magalhaes QUALIFIED
Antonio Y NestleCanadaElwin Sharvill NEW
Francesco X SlusarskiIndiaElwin Sharvill UNQUALIFIED
Jeanfrancois Q StockhamUnited KingdomElwin Sharvill QUALIFIED
Sinclair Q RoysterFranceElwin Sharvill RENEWAL
Claire O AmigonItalyAnna Fali PROPOSAL
Ricardo O VenereArgentinaXuxue Feng UNQUALIFIED
Mayumi E WhobreyBrazilAnna Fali RENEWAL
Jones E FollerBrazilStephen Shaw QUALIFIED
Octavia G DarakjyIndiaIoni Bowcher NEGOTIATION
Antonio I FerenczGermanyIoni Bowcher PROPOSAL
Greenwood B InouyeBrazilIvan Magalhaes UNQUALIFIED
Octavia I MacleadIndiaBernardo Dominic NEGOTIATION
Octavia J InouyeAustraliaAmy Elsner RENEWAL
Sinclair R DilliardRussiaBernardo Dominic UNQUALIFIED
Rodrigues Z StockhamGermanyAnna Fali QUALIFIED
Cody W StensethJapanIoni Bowcher QUALIFIED
Morrow D SchemmerIndiaAsiya Javayant NEW
Mayumi R NickaUnited KingdomAmy Elsner UNQUALIFIED
Aika M FollerBrazilBernardo Dominic RENEWAL
Ivar I OldroydUnited KingdomBernardo Dominic PROPOSAL
Isabel A StockhamGermanyAsiya Javayant UNQUALIFIED
Mayumi H OldroydGermanyAnna Fali UNQUALIFIED
Juan F CampainBrazilIoni Bowcher UNQUALIFIED
Aika X GauchoBrazilAmy Elsner QUALIFIED
Ivar W StensethArgentinaStephen Shaw RENEWAL
Octavia C FlosiBrazilStephen Shaw PROPOSAL
Murillo B DoeArgentinaAmy Elsner NEGOTIATION
Ashley T WaycottItalyAmy Elsner QUALIFIED
Nicolas O VenereRussiaAsiya Javayant QUALIFIED
Jefferson U BologniaSpainIoni Bowcher RENEWAL
Salvatore R NestleArgentinaElwin Sharvill PROPOSAL
Johnson W RimBrazilOnyama Limba NEGOTIATION
Wickens O FollerItalyAmy Elsner QUALIFIED
Darci G ShinkoCanadaBernardo Dominic PROPOSAL
Maisha W KolmetzBrazilOnyama Limba NEW
Leja G FlosiJapanAsiya Javayant NEW
Darci C CampainGermanyIoni Bowcher QUALIFIED
Clifford Y FigeroaArgentinaAmy Elsner UNQUALIFIED
Greenwood N RulapaughIndiaIvan Magalhaes UNQUALIFIED
Rodrigues J WhobreyBrazilAsiya Javayant RENEWAL
Mujtaba L DilliardAustraliaBernardo Dominic PROPOSAL
Murillo R RoysterJapanAmy Elsner UNQUALIFIED
Leja K FollerAustraliaAsiya Javayant NEW
Salvatore J ButtBrazilAmy Elsner NEGOTIATION
Clifford V SergiAustraliaBernardo Dominic UNQUALIFIED
Johnson P DarakjyCanadaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Deepesh U PaprockiIndiaAmy Elsner PROPOSAL
Antonio T PerinItalyAnna Fali PROPOSAL
Julie O SaylorsArgentinaAnna Fali NEW
Johnson J StockhamAustraliaOnyama Limba NEGOTIATION
Deepesh G BologniaIndiaIvan Magalhaes NEW
Chavez M RulapaughFranceAsiya Javayant RENEWAL
Julie Y FollerFranceAsiya Javayant RENEWAL
Aika L FerenczJapanXuxue Feng RENEWAL
Morrow O KolmetzBrazilIoni Bowcher NEGOTIATION
Ivar J KuskoSpainAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi D SlusarskiGermany2026-10-21Feltz Printing Service QUALIFIED57Asiya Javayant
1001David B WieserJapan2026-10-29Chemel, James L Cpa NEW37Amy Elsner
1002Aika A GauchoJapan2026-10-05Truhlar And Truhlar Attys PROPOSAL61Bernardo Dominic
1003Maria D DilliardRussia2026-10-18Chemel, James L Cpa NEW76Stephen Shaw
1004Smith Z WaycottGermany2026-10-29Commercial Press PROPOSAL95Elwin Sharvill
1005Clifford I WaycottSpain2026-10-11Chemel, James L Cpa PROPOSAL67Onyama Limba
1006Ashley P MaletJapan2026-10-17Truhlar And Truhlar Attys QUALIFIED0Onyama Limba
1007Maria Z CaldareraJapan2026-10-17King, Christopher A Esq NEGOTIATION82Anna Fali
1008Leja D StockhamGermany2026-10-06Rousseaux, Michael Esq QUALIFIED75Amy Elsner
1009Izzy Y NestleGermany2026-10-17Commercial Press QUALIFIED65Xuxue Feng
1010Adams W SaylorsSpain2026-10-19Rangoni Of Florence NEGOTIATION51Xuxue Feng
1011Francesco L SaylorsBrazil2026-10-09Printing Dimensions RENEWAL25Stephen Shaw
1012Francesco L BowleyGermany2026-10-06Buckley Miller Wright UNQUALIFIED2Amy Elsner
1013Ivar V StockhamItaly2026-10-24Commercial Press UNQUALIFIED49Anna Fali
1014Leon T RutaIndia2026-10-10Rousseaux, Michael Esq UNQUALIFIED43Amy Elsner
1015Murillo Z GauchoRussia2026-10-03Benton, John B Jr RENEWAL69Xuxue Feng
1016Chavez L SlusarskiItaly2026-10-28Truhlar And Truhlar Attys NEW57Xuxue Feng
1017Murillo O GlickAustralia2026-09-30Rousseaux, Michael Esq RENEWAL63Ivan Magalhaes
1018Faith F DoeIndia2026-10-15Buckley Miller Wright RENEWAL43Stephen Shaw
1019Ashley K IturbideGermany2026-10-28Truhlar And Truhlar Attys QUALIFIED1Ioni Bowcher
1020Ashley Y IturbideArgentina2026-10-17Buckley Miller Wright NEW82Ivan Magalhaes
1021Leja B BriddickJapan2026-10-26Rangoni Of Florence QUALIFIED93Xuxue Feng
1022Sinclair I IturbideBrazil2026-10-10Benton, John B Jr NEW74Asiya Javayant
1023Leon S RulapaughSpain2026-10-09Morlong Associates PROPOSAL45Elwin Sharvill
1024Antonio U GarufiAustralia2026-10-05Feltz Printing Service NEGOTIATION53Ioni Bowcher
1025Greenwood K PerinGermany2026-10-03Chapman, Ross E Esq PROPOSAL29Ioni Bowcher
1026Faith G RulapaughFrance2026-10-22Commercial Press UNQUALIFIED27Anna Fali
1027Faith C FlosiAustralia2026-10-22Commercial Press NEGOTIATION30Bernardo Dominic
1028Juan Y RimSpain2026-10-09Commercial Press QUALIFIED88Onyama Limba
1029Morrow W VenereCanada2026-10-06Chanay, Jeffrey A Esq NEW14Anna Fali
1030Misaki W NestleGermany2026-10-29Feltz Printing Service NEGOTIATION57Ioni Bowcher
1031Adams S GillianFrance2026-10-02Chapman, Ross E Esq RENEWAL48Ioni Bowcher
1032Costa E IturbideGermany2026-10-19Buckley Miller Wright UNQUALIFIED68Ivan Magalhaes
1033Mujtaba C SaylorsGermany2026-10-21Feltz Printing Service UNQUALIFIED5Elwin Sharvill
1034Greenwood Y FlosiCanada2026-10-16Chanay, Jeffrey A Esq NEGOTIATION21Bernardo Dominic
1035Silvio G IturbideBrazil2026-10-15Truhlar And Truhlar Attys PROPOSAL2Asiya Javayant
1036Faith C CaudyRussia2026-10-13Dorl, James J Esq NEW57Anna Fali
1037Faith L FerenczItaly2026-10-14Morlong Associates QUALIFIED61Elwin Sharvill
1038Morrow Z PerinGermany2026-10-01Dorl, James J Esq PROPOSAL89Ioni Bowcher
1039Kadeem L StensethGermany2026-10-10Rousseaux, Michael Esq QUALIFIED66Anna Fali
1040Murillo E AlbaresItaly2026-10-17Benton, John B Jr PROPOSAL66Ioni Bowcher
1041Izzy P KolmetzJapan2026-10-14Chanay, Jeffrey A Esq NEGOTIATION77Stephen Shaw
1042Ricardo V CaudyFrance2026-10-11Rousseaux, Michael Esq UNQUALIFIED5Elwin Sharvill
1043Clifford W PerinArgentina2026-10-12Chanay, Jeffrey A Esq UNQUALIFIED15Xuxue Feng
1044Silvio D NickaIndia2026-10-04Rangoni Of Florence NEGOTIATION31Ivan Magalhaes
1045Mayumi S FlosiItaly2026-10-15Benton, John B Jr UNQUALIFIED3Elwin Sharvill
1046Julie G VenereArgentina2026-10-19Rangoni Of Florence NEW71Onyama Limba
1047Aditya R NestleUnited Kingdom2026-10-25Commercial Press UNQUALIFIED62Stephen Shaw
1048Ricardo X ButtSpain2026-10-03Feiner Bros NEW50Ioni Bowcher
1049Murillo Q InouyeJapan2026-10-26Feiner Bros NEW80Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Leon J NickaCanadaElwin Sharvill QUALIFIED
Francesco W MorascaGermanyAnna Fali QUALIFIED
Claire U StockhamArgentinaAnna Fali RENEWAL
Izzy X WaycottArgentinaIoni Bowcher PROPOSAL
Wickens V StensethUnited KingdomIoni Bowcher QUALIFIED
Francesco F RoysterArgentinaAmy Elsner NEGOTIATION
Ashley J WieserBrazilXuxue Feng QUALIFIED
Kadeem Z MarrierArgentinaAnna Fali NEGOTIATION
Maisha O WieserCanadaElwin Sharvill UNQUALIFIED
Faith R StensethJapanXuxue Feng RENEWAL
Clifford I StockhamGermanyOnyama Limba QUALIFIED
Munro F PerinGermanyIoni Bowcher NEW
Juan L DoeRussiaXuxue Feng QUALIFIED
Leja T WaycottItalyStephen Shaw RENEWAL
Antonio C TollnerCanadaOnyama Limba UNQUALIFIED
Kaitlin N AlbaresArgentinaAsiya Javayant UNQUALIFIED
Leon H WhobreyAustraliaIvan Magalhaes QUALIFIED
Kadeem T ShinkoIndiaIvan Magalhaes RENEWAL
Maria I SaylorsItalyAsiya Javayant NEW
Nicolas H GlickRussiaAnna Fali NEGOTIATION
Chavez E AmigonRussiaStephen Shaw RENEWAL
Jefferson R RutaJapanOnyama Limba PROPOSAL
Salvatore Q MacleadItalyElwin Sharvill NEW
Jennifer M FigeroaUnited KingdomIoni Bowcher QUALIFIED
Arvin Q AlbaresUnited KingdomIvan Magalhaes NEW
Misaki Z IturbideAustraliaAnna Fali NEGOTIATION
Alejandro O RulapaughAustraliaElwin Sharvill UNQUALIFIED
Octavia C StockhamJapanXuxue Feng UNQUALIFIED
Clifford F VenereGermanyIoni Bowcher PROPOSAL
Maria M CaudyBrazilElwin Sharvill NEW
Greenwood Y ButtGermanyElwin Sharvill PROPOSAL
Francesco N RutaIndiaBernardo Dominic PROPOSAL
Francesco F OldroydBrazilIvan Magalhaes NEW
Munro J FerenczIndiaAmy Elsner QUALIFIED
Tony K KolmetzSpainStephen Shaw RENEWAL
Cody J PerinUnited KingdomBernardo Dominic RENEWAL
Jeanfrancois D RutaSpainIoni Bowcher UNQUALIFIED
Adams B PerinBrazilIoni Bowcher NEW
Isabel G DoeJapanElwin Sharvill PROPOSAL
Francesco V VocelkaSpainAmy Elsner NEGOTIATION
Jennifer E GlickIndiaBernardo Dominic NEW
Murillo N MaletBrazilIvan Magalhaes QUALIFIED
Kaitlin Y PoquetteUnited KingdomOnyama Limba PROPOSAL
Maria P MaletItalyElwin Sharvill RENEWAL
Rodrigues I WaycottIndiaOnyama Limba NEGOTIATION
Salvatore B SergiFranceIoni Bowcher QUALIFIED
Mayumi P OstroskyArgentinaAsiya Javayant RENEWAL
Sinclair P RimItalyBernardo Dominic UNQUALIFIED
Isabel P KolmetzGermanyBernardo Dominic UNQUALIFIED
Jones W MacleadIndiaIoni Bowcher NEGOTIATION
Frozen Columns
Name
Chavez K Tollner
Ricardo L Schemmer
Jeanfrancois O Stockham
Izzy J Kolmetz
Wickens R Stockham
Misaki U Dilliard
Silvio R Amigon
David Y Chui
Mayumi E Marrier
Deepesh T Bowley
Ivar Q Chui
Greenwood V Caldarera
Misaki I Caldarera
David Q Wieser
Adams A Gillian
Leon L Glick
Nicolas R Whobrey
Kadeem C Stockham
Murillo X Schemmer
Octavia W Figeroa
Tony B Saylors
Maisha R Whobrey
Nicolas A Dilliard
Claire A Garufi
Jennifer Z Briddick
Kaitlin G Amigon
Murillo L Maclead
Aika D Poquette
David Z Oldroyd
David I Rim
Munro W Gaucho
Misaki O Perin
Leon J Royster
Jennifer E Stenseth
Tony Y Albares
Jennifer V Royster
Aika V Briddick
Leja X Rim
Emily B Iturbide
Emily J Gillian
Chavez B Bowley
Greenwood D Gillian
Nicolas U Ruta
Silvio J Schemmer
Francesco X Morasca
Smith U Maclead
Stacey K Bolognia
Sinclair Q Venere
Jones J Ferencz
Adams E Saylors
IdCountryDate
1000Brazil2026-10-22
1001Argentina2026-10-23
1002United Kingdom2026-10-06
1003Australia2026-10-21
1004United Kingdom2026-10-20
1005Canada2026-10-21
1006United Kingdom2026-10-07
1007Japan2026-10-21
1008Japan2026-10-03
1009Brazil2026-10-09
1010Japan2026-10-05
1011Italy2026-10-15
1012Spain2026-10-01
1013Germany2026-10-26
1014Argentina2026-10-08
1015Germany2026-10-20
1016India2026-10-11
1017Japan2026-10-11
1018Brazil2026-10-18
1019Italy2026-10-06
1020Brazil2026-10-01
1021France2026-10-23
1022India2026-10-19
1023France2026-10-18
1024Spain2026-10-02
1025Brazil2026-10-11
1026Germany2026-10-20
1027France2026-10-13
1028Russia2026-10-07
1029Russia2026-10-08
1030Germany2026-10-27
1031India2026-10-13
1032Canada2026-10-09
1033Brazil2026-10-09
1034Russia2026-10-23
1035Brazil2026-10-13
1036Germany2026-10-28
1037India2026-10-07
1038United Kingdom2026-10-29
1039Japan2026-10-09
1040Germany2026-10-01
1041France2026-10-27
1042Canada2026-10-18
1043France2026-10-06
1044Brazil2026-10-19
1045United Kingdom2026-10-01
1046Argentina2026-10-10
1047Brazil2026-10-07
1048Germany2026-10-28
1049United Kingdom2026-10-25

On-Demand Data

NameIdCountryDate
Morrow A Schemmer1000Russia2026-10-23
Rodrigues N Albares1001Germany2026-10-14
Ricardo I Campain1002Argentina2026-10-28
David R Ostrosky1003Brazil2026-10-21
Sinclair B Sergi1004Brazil2026-10-01
Claire O Kusko1005Germany2026-10-06
Jones E Kusko1006Spain2026-10-14
Ivar Z Gillian1007Italy2026-09-30
Murillo X Bowley1008Spain2026-10-14
Leja M Stockham1009Spain2026-10-09
Smith M Waycott1010Canada2026-10-16
Ricardo W Iturbide1011Brazil2026-10-11
Jefferson X Shinko1012United Kingdom2026-10-22
Misaki H Albares1013Spain2026-10-24
Sinclair D Bowley1014Spain2026-10-20
Smith F Butt1015Spain2026-10-01
Smith W Morasca1016Japan2026-10-16
Aika P Poquette1017Australia2026-10-06
Misaki Q Figeroa1018Argentina2026-10-05
Stacey Y Dilliard1019Spain2026-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford Z PerinArgentinaStephen Shaw NEGOTIATION
Sinclair Y GillianItalyIvan Magalhaes NEGOTIATION
Aruna E GillianIndiaIvan Magalhaes NEGOTIATION
Claire K RoysterJapanXuxue Feng NEGOTIATION
Izzy G PaprockiArgentinaIvan Magalhaes PROPOSAL
Wickens Q KolmetzAustraliaAmy Elsner UNQUALIFIED
Izzy K ButtItalyElwin Sharvill NEGOTIATION
Kadeem C StockhamArgentinaIoni Bowcher UNQUALIFIED
David T BriddickSpainStephen Shaw NEW
Chavez D DoeBrazilStephen Shaw UNQUALIFIED
Greenwood P CaldareraBrazilElwin Sharvill PROPOSAL
Kadeem Q PoquetteItalyAsiya Javayant RENEWAL
Jennifer C MaletSpainAnna Fali QUALIFIED
Maisha E FigeroaFranceAmy Elsner QUALIFIED
Kaitlin G MaletRussiaStephen Shaw PROPOSAL
Johnson A RulapaughIndiaXuxue Feng QUALIFIED
Johnson B SaylorsItalyElwin Sharvill PROPOSAL
Izzy T DilliardIndiaBernardo Dominic NEW
Izzy J RimAustraliaAmy Elsner QUALIFIED
Claire H StensethSpainAnna Fali UNQUALIFIED
Ashley V PerinUnited KingdomXuxue Feng NEGOTIATION
Costa P AmigonBrazilStephen Shaw PROPOSAL
Maria C GarufiAustraliaXuxue Feng NEW
Stacey J GillianCanadaAmy Elsner NEW
Greenwood I WieserFranceStephen Shaw UNQUALIFIED
Aika U RoysterJapanIvan Magalhaes NEW
Ricardo I SlusarskiUnited KingdomIoni Bowcher NEGOTIATION
David W SchemmerJapanAnna Fali NEGOTIATION
David Q MaletArgentinaAnna Fali PROPOSAL
Darci A ChuiGermanyElwin Sharvill RENEWAL
James V GarufiSpainAsiya Javayant NEW
Aika R CaldareraSpainXuxue Feng NEW
Darci V ChuiBrazilElwin Sharvill PROPOSAL
Emily C SaylorsBrazilXuxue Feng RENEWAL
Mayumi O TollnerArgentinaIvan Magalhaes QUALIFIED
Mujtaba S NickaRussiaXuxue Feng NEGOTIATION
Jones V DilliardRussiaXuxue Feng NEW
Nicolas X MacleadCanadaOnyama Limba RENEWAL
Cody E FlosiUnited KingdomIvan Magalhaes NEGOTIATION
Leon D MorascaIndiaStephen 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>