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
Adams M RimRussiaXuxue Feng PROPOSAL
Morrow Y BriddickBrazilAmy Elsner NEW
Murillo B SaylorsGermanyIoni Bowcher NEGOTIATION
Johnson F OstroskyUnited KingdomBernardo Dominic UNQUALIFIED
Mujtaba A MaletBrazilXuxue Feng NEGOTIATION
Aditya P RimBrazilAnna Fali PROPOSAL
Greenwood B SaylorsFranceStephen Shaw PROPOSAL
Leja Y TollnerBrazilAmy Elsner RENEWAL
Emily X MacleadSpainXuxue Feng PROPOSAL
Claire S StensethSpainIoni Bowcher PROPOSAL
Octavia Z GarufiJapanElwin Sharvill UNQUALIFIED
Clifford X MarrierRussiaXuxue Feng RENEWAL
Aruna G InouyeItalyAnna Fali NEW
Maria K RimBrazilIvan Magalhaes NEGOTIATION
Darci G WieserItalyAmy Elsner RENEWAL
Aditya N GauchoIndiaIvan Magalhaes RENEWAL
Alejandro T GlickJapanAsiya Javayant PROPOSAL
Julie S CaldareraJapanXuxue Feng NEGOTIATION
Antonio D PaprockiAustraliaIoni Bowcher RENEWAL
Jefferson S DoeUnited KingdomAsiya Javayant QUALIFIED
Stacey N PerinArgentinaXuxue Feng PROPOSAL
Darci C VenereGermanyOnyama Limba QUALIFIED
Cody B PerinIndiaXuxue Feng RENEWAL
Aruna G FollerJapanBernardo Dominic UNQUALIFIED
Alejandro G FlosiBrazilOnyama Limba NEGOTIATION
Juan W StensethIndiaAsiya Javayant NEGOTIATION
Faith R NickaArgentinaAnna Fali UNQUALIFIED
Faith F ButtItalyIvan Magalhaes QUALIFIED
Leja I NestleSpainOnyama Limba QUALIFIED
Johnson V ChuiAustraliaIvan Magalhaes NEW
Silvio C AlbaresRussiaAnna Fali QUALIFIED
Adams I TollnerRussiaAnna Fali QUALIFIED
Faith A ChuiBrazilElwin Sharvill QUALIFIED
Leja R PoquetteItalyStephen Shaw NEW
Mayumi A SlusarskiCanadaStephen Shaw RENEWAL
Izzy W FigeroaGermanyElwin Sharvill PROPOSAL
Wickens H PerinBrazilAmy Elsner UNQUALIFIED
Tony Z DarakjyJapanIoni Bowcher NEGOTIATION
Tony D ButtFranceXuxue Feng UNQUALIFIED
Antonio P VenereCanadaAnna Fali NEGOTIATION
Jennifer N DilliardItalyElwin Sharvill PROPOSAL
Cody J RulapaughFranceStephen Shaw UNQUALIFIED
Aditya B ButtFranceOnyama Limba NEGOTIATION
Jennifer H DarakjyUnited KingdomStephen Shaw UNQUALIFIED
Clifford C DarakjyAustraliaBernardo Dominic UNQUALIFIED
Maisha A OldroydBrazilAmy Elsner PROPOSAL
Rodrigues Y RoysterIndiaBernardo Dominic PROPOSAL
Morrow X BowleyRussiaOnyama Limba NEW
Jennifer U CaldareraIndiaAsiya Javayant PROPOSAL
Ricardo R MaletAustraliaIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Murillo R SergiGermanyIoni Bowcher QUALIFIED
Aruna J ButtRussiaStephen Shaw NEGOTIATION
Adams T MacleadGermanyStephen Shaw NEGOTIATION
Johnson Z RulapaughGermanyElwin Sharvill PROPOSAL
Wickens R MaletGermanyOnyama Limba NEGOTIATION
Adams F FlosiAustraliaAmy Elsner NEW
Antonio D CaldareraRussiaAnna Fali UNQUALIFIED
Alejandro H TollnerCanadaElwin Sharvill RENEWAL
James P FigeroaGermanyAsiya Javayant PROPOSAL
Munro F FigeroaItalyElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Munro I SergiGermany2026-09-21Feltz Printing Service PROPOSAL35Ioni Bowcher
1001Darci A FlosiJapan2026-09-07Chemel, James L Cpa NEW62Amy Elsner
1002Faith E WieserUnited Kingdom2026-09-03Chapman, Ross E Esq NEGOTIATION29Onyama Limba
1003Arvin N MaletRussia2026-09-13King, Christopher A Esq NEGOTIATION15Ioni Bowcher
1004Nicolas Z CampainRussia2026-09-12Benton, John B Jr QUALIFIED38Ioni Bowcher
1005Mayumi C GarufiCanada2026-09-07King, Christopher A Esq PROPOSAL67Elwin Sharvill
1006Sinclair O ChuiIndia2026-09-18Buckley Miller Wright QUALIFIED51Ivan Magalhaes
1007Isabel S RutaIndia2026-08-26Dorl, James J Esq NEGOTIATION99Elwin Sharvill
1008Murillo I ButtJapan2026-09-16Feltz Printing Service QUALIFIED2Anna Fali
1009Morrow B GarufiAustralia2026-09-19King, Christopher A Esq NEGOTIATION66Stephen Shaw
1010Sinclair W PaprockiRussia2026-09-18Chanay, Jeffrey A Esq NEGOTIATION63Onyama Limba
1011Julie U FollerUnited Kingdom2026-08-29Rousseaux, Michael Esq PROPOSAL49Asiya Javayant
1012Claire N MorascaRussia2026-09-14King, Christopher A Esq UNQUALIFIED36Amy Elsner
1013Mayumi J RoysterItaly2026-09-10Benton, John B Jr NEW41Onyama Limba
1014Jones S ChuiGermany2026-08-23Truhlar And Truhlar Attys UNQUALIFIED48Stephen Shaw
1015Stacey R BowleyItaly2026-09-04Morlong Associates NEW85Asiya Javayant
1016James I AlbaresSpain2026-09-20Benton, John B Jr RENEWAL99Stephen Shaw
1017Ashley V WhobreyUnited Kingdom2026-08-25King, Christopher A Esq RENEWAL39Amy Elsner
1018David W InouyeItaly2026-09-12Feltz Printing Service NEW70Bernardo Dominic
1019Silvio J BriddickFrance2026-09-15Feltz Printing Service NEGOTIATION25Onyama Limba
1020Isabel W ShinkoAustralia2026-09-15King, Christopher A Esq PROPOSAL78Ioni Bowcher
1021Kaitlin N SergiBrazil2026-09-17Chanay, Jeffrey A Esq NEW82Xuxue Feng
1022Smith Y AmigonArgentina2026-09-19Morlong Associates PROPOSAL83Anna Fali
1023Ricardo N ChuiCanada2026-08-25Truhlar And Truhlar Attys RENEWAL17Ioni Bowcher
1024Salvatore N WhobreyBrazil2026-09-08Morlong Associates UNQUALIFIED92Stephen Shaw
1025David L DilliardGermany2026-09-08Feiner Bros UNQUALIFIED3Xuxue Feng
1026Greenwood U CampainSpain2026-09-12Rangoni Of Florence QUALIFIED76Stephen Shaw
1027Antonio I WieserArgentina2026-08-28Chapman, Ross E Esq QUALIFIED0Amy Elsner
1028Tony X RutaItaly2026-09-15Truhlar And Truhlar Attys PROPOSAL43Ivan Magalhaes
1029Faith N NickaFrance2026-08-27Printing Dimensions NEW86Stephen Shaw
1030Salvatore F SaylorsUnited Kingdom2026-08-30Truhlar And Truhlar Attys QUALIFIED41Bernardo Dominic
1031David C PerinIndia2026-08-24Morlong Associates UNQUALIFIED77Amy Elsner
1032Sinclair Q SaylorsSpain2026-09-18Rangoni Of Florence RENEWAL29Elwin Sharvill
1033Isabel P WaycottBrazil2026-09-16Benton, John B Jr UNQUALIFIED48Ivan Magalhaes
1034Johnson C RulapaughJapan2026-08-31Dorl, James J Esq NEGOTIATION43Onyama Limba
1035Kadeem H WaycottBrazil2026-09-15Commercial Press QUALIFIED56Anna Fali
1036Adams Q DarakjyRussia2026-09-09Benton, John B Jr NEW26Elwin Sharvill
1037Aditya F RoysterGermany2026-08-30Rangoni Of Florence QUALIFIED43Ioni Bowcher
1038Antonio B WieserRussia2026-09-05Feltz Printing Service NEW72Amy Elsner
1039Adams G DoeFrance2026-09-18Chapman, Ross E Esq QUALIFIED65Elwin Sharvill
1040Cody W CampainGermany2026-08-29Dorl, James J Esq NEGOTIATION71Ioni Bowcher
1041Isabel U DarakjySpain2026-08-24Chemel, James L Cpa PROPOSAL84Ivan Magalhaes
1042Faith Q VenereIndia2026-09-08Rousseaux, Michael Esq NEW29Onyama Limba
1043Isabel Z GarufiAustralia2026-09-02Rousseaux, Michael Esq NEW86Bernardo Dominic
1044Silvio R KuskoAustralia2026-09-09Feltz Printing Service UNQUALIFIED58Onyama Limba
1045Jefferson O MarrierCanada2026-09-09Truhlar And Truhlar Attys QUALIFIED15Asiya Javayant
1046Ashley G PaprockiIndia2026-09-02Benton, John B Jr RENEWAL23Xuxue Feng
1047Ashley D SergiIndia2026-09-01Buckley Miller Wright PROPOSAL18Amy Elsner
1048Nicolas F RimRussia2026-09-10Truhlar And Truhlar Attys PROPOSAL51Asiya Javayant
1049Isabel J FlosiIndia2026-09-08Truhlar And Truhlar Attys NEW97Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Mayumi A MacleadAustraliaElwin Sharvill UNQUALIFIED
Adams N PaprockiIndiaOnyama Limba UNQUALIFIED
Isabel X KuskoBrazilXuxue Feng RENEWAL
Claire Q NickaItalyAmy Elsner PROPOSAL
Jennifer J CaldareraRussiaAmy Elsner UNQUALIFIED
James O VenereUnited KingdomAsiya Javayant RENEWAL
Cody X GillianItalyIvan Magalhaes PROPOSAL
Costa F MorascaAustraliaIoni Bowcher QUALIFIED
Ricardo Q KolmetzItalyAsiya Javayant RENEWAL
Johnson F MaletJapanOnyama Limba QUALIFIED
Greenwood P WaycottBrazilStephen Shaw PROPOSAL
Isabel P IturbideSpainBernardo Dominic NEGOTIATION
Emily T MaletIndiaAnna Fali NEGOTIATION
Kaitlin I GlickFranceAmy Elsner PROPOSAL
Jones I NestleSpainElwin Sharvill UNQUALIFIED
Nicolas W CampainCanadaAsiya Javayant NEGOTIATION
Kadeem L FerenczSpainXuxue Feng NEGOTIATION
Kaitlin E RoysterArgentinaIvan Magalhaes PROPOSAL
Kadeem O PaprockiBrazilStephen Shaw RENEWAL
Kaitlin O GarufiUnited KingdomBernardo Dominic NEGOTIATION
Johnson W RimUnited KingdomBernardo Dominic PROPOSAL
Jeanfrancois S VocelkaCanadaAmy Elsner NEW
Johnson K MaletBrazilAnna Fali UNQUALIFIED
Jennifer A PaprockiUnited KingdomStephen Shaw NEGOTIATION
Isabel U MarrierSpainXuxue Feng RENEWAL
Emily Y MarrierUnited KingdomAnna Fali UNQUALIFIED
Jefferson U OldroydItalyIvan Magalhaes QUALIFIED
Ricardo O RulapaughFranceElwin Sharvill PROPOSAL
Costa Y GlickBrazilIoni Bowcher PROPOSAL
Jeanfrancois R OldroydCanadaAmy Elsner NEW
Octavia S MarrierIndiaStephen Shaw UNQUALIFIED
Izzy R BologniaArgentinaXuxue Feng QUALIFIED
Tony D RulapaughGermanyIoni Bowcher RENEWAL
Ricardo B CaldareraArgentinaOnyama Limba QUALIFIED
Claire D SergiUnited KingdomIvan Magalhaes QUALIFIED
Smith G RutaRussiaIoni Bowcher NEW
Julie B GillianRussiaAsiya Javayant PROPOSAL
Chavez N BowleyFranceIoni Bowcher PROPOSAL
Claire T KuskoAustraliaBernardo Dominic PROPOSAL
Rodrigues C MorascaUnited KingdomIoni Bowcher RENEWAL
Aruna K InouyeCanadaAsiya Javayant QUALIFIED
Octavia C PerinCanadaBernardo Dominic NEW
Aika A DoeIndiaStephen Shaw UNQUALIFIED
Mayumi P BowleyArgentinaAnna Fali PROPOSAL
Juan V ShinkoAustraliaBernardo Dominic PROPOSAL
Johnson S WaycottSpainOnyama Limba NEW
Antonio A OldroydSpainBernardo Dominic NEGOTIATION
Arvin K TollnerCanadaAnna Fali NEGOTIATION
David T MarrierArgentinaAnna Fali QUALIFIED
Smith M GarufiGermanyIoni Bowcher RENEWAL
Frozen Columns
Name
Leon H Flosi
Darci G Darakjy
Juan V Bolognia
Clifford V Malet
Maria K Sergi
Murillo Y Ostrosky
Deepesh J Tollner
Chavez M Glick
Leja G Whobrey
Aruna H Vocelka
Juan Q Figeroa
Salvatore S Venere
Darci C Kolmetz
Cody D Vocelka
Kadeem T Garufi
Aika H Albares
Wickens D Ruta
Adams E Figeroa
Silvio G Nicka
Jeanfrancois H Nestle
Wickens D Stockham
Misaki B Schemmer
Octavia G Briddick
Juan O Foller
Maria G Darakjy
Mayumi B Marrier
Kadeem X Bolognia
Cody G Morasca
Deepesh B Stenseth
Aruna X Butt
Sinclair U Oldroyd
Greenwood G Waycott
Octavia X Bolognia
Jones Z Kusko
Kadeem X Bowley
Costa M Ruta
Kadeem K Caudy
Izzy K Foller
Misaki K Wieser
Costa S Chui
Arvin N Ostrosky
Nicolas B Glick
Jeanfrancois O Albares
Jefferson S Venere
Aditya T Inouye
Ivar K Flosi
Misaki I Rim
Costa F Vocelka
Ricardo G Flosi
Sinclair V Nestle
IdCountryDate
1000Brazil2026-09-04
1001Argentina2026-09-02
1002Spain2026-09-12
1003Germany2026-09-20
1004Japan2026-08-27
1005Spain2026-09-12
1006Spain2026-09-01
1007Spain2026-09-21
1008France2026-09-15
1009Germany2026-08-28
1010Germany2026-09-02
1011India2026-09-03
1012Australia2026-09-15
1013Canada2026-09-01
1014Russia2026-09-09
1015Australia2026-09-06
1016Argentina2026-09-05
1017Italy2026-09-02
1018Japan2026-08-28
1019Italy2026-09-15
1020Spain2026-09-19
1021Brazil2026-08-28
1022Russia2026-09-02
1023Spain2026-09-18
1024Canada2026-09-10
1025Japan2026-09-15
1026Australia2026-09-09
1027Germany2026-09-09
1028Japan2026-09-04
1029Australia2026-09-03
1030France2026-09-15
1031Canada2026-09-18
1032France2026-09-21
1033Spain2026-09-12
1034Brazil2026-08-27
1035Spain2026-09-11
1036India2026-09-06
1037Argentina2026-08-26
1038Brazil2026-09-07
1039France2026-09-03
1040Germany2026-09-14
1041France2026-09-09
1042Brazil2026-09-18
1043Spain2026-08-31
1044India2026-09-17
1045France2026-09-18
1046Australia2026-09-05
1047Japan2026-09-04
1048United Kingdom2026-09-16
1049Brazil2026-09-16

On-Demand Data

NameIdCountryDate
Jeanfrancois J Royster1000Spain2026-08-30
Arvin S Rulapaugh1001India2026-08-24
Emily C Venere1002Germany2026-09-07
Maisha N Bowley1003Italy2026-09-06
Tony Y Ferencz1004Germany2026-08-27
Ashley Y Perin1005Canada2026-09-01
Leon P Rulapaugh1006Brazil2026-09-04
James W Paprocki1007Russia2026-09-10
Jeanfrancois V Ostrosky1008United Kingdom2026-08-23
Ashley J Glick1009Australia2026-09-03
Wickens Z Chui1010France2026-09-02
Ivar D Wieser1011Russia2026-09-01
Ivar T Nestle1012India2026-09-05
Aika Z Figeroa1013France2026-09-07
Aika Q Vocelka1014Russia2026-09-09
Jefferson E Briddick1015France2026-09-14
Salvatore D Caldarera1016Canada2026-08-23
Maisha W Vocelka1017India2026-09-07
Maisha Z Flosi1018Spain2026-09-21
Jennifer E Chui1019United Kingdom2026-08-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa M ShinkoIndiaIoni Bowcher UNQUALIFIED
Jones O FollerFranceAmy Elsner UNQUALIFIED
Wickens H RimCanadaStephen Shaw UNQUALIFIED
Claire I ShinkoGermanyIoni Bowcher PROPOSAL
Ricardo Y DilliardBrazilAnna Fali RENEWAL
Antonio X FollerCanadaOnyama Limba PROPOSAL
Clifford L MorascaGermanyOnyama Limba UNQUALIFIED
Chavez B PaprockiCanadaIoni Bowcher PROPOSAL
Rodrigues Q NestleBrazilBernardo Dominic RENEWAL
Mayumi S GlickRussiaIoni Bowcher PROPOSAL
Misaki I StensethCanadaAmy Elsner UNQUALIFIED
Julie H BowleyFranceIvan Magalhaes NEW
Silvio Y ChuiBrazilStephen Shaw QUALIFIED
Maisha C WhobreyAustraliaBernardo Dominic PROPOSAL
Ashley Y MacleadIndiaStephen Shaw NEW
Costa G RoysterBrazilAsiya Javayant NEGOTIATION
Izzy J TollnerGermanyStephen Shaw RENEWAL
Mujtaba J DoeJapanBernardo Dominic RENEWAL
Darci Q VocelkaItalyIvan Magalhaes RENEWAL
Sinclair E StockhamBrazilOnyama Limba NEGOTIATION
Clifford V WhobreySpainElwin Sharvill PROPOSAL
Kadeem T MorascaBrazilAmy Elsner PROPOSAL
Jones U ShinkoUnited KingdomAnna Fali RENEWAL
Nicolas G KolmetzItalyXuxue Feng QUALIFIED
Mayumi U KolmetzCanadaOnyama Limba QUALIFIED
Rodrigues P RulapaughArgentinaIoni Bowcher NEW
Greenwood W PoquetteUnited KingdomXuxue Feng NEW
Jeanfrancois Y AlbaresSpainStephen Shaw UNQUALIFIED
Mayumi L OstroskyItalyIoni Bowcher UNQUALIFIED
Antonio D FerenczCanadaIoni Bowcher UNQUALIFIED
Leon A BowleyItalyOnyama Limba UNQUALIFIED
Aditya X MarrierItalyStephen Shaw PROPOSAL
Greenwood K RutaArgentinaStephen Shaw UNQUALIFIED
Murillo Z TollnerIndiaOnyama Limba RENEWAL
Wickens M CaudyUnited KingdomElwin Sharvill UNQUALIFIED
Aika E SaylorsAustraliaBernardo Dominic UNQUALIFIED
Isabel U BologniaCanadaAmy Elsner NEW
Octavia W ChuiFranceElwin Sharvill NEW
Misaki E VocelkaJapanOnyama Limba NEW
Antonio L OstroskySpainIvan 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>