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
James Z GarufiRussiaOnyama Limba QUALIFIED
Aika P GillianBrazilIvan Magalhaes NEGOTIATION
Kadeem Y CampainRussiaStephen Shaw QUALIFIED
Ivar M CampainGermanyIvan Magalhaes NEGOTIATION
Mujtaba E MorascaRussiaBernardo Dominic UNQUALIFIED
Munro H GlickGermanyAsiya Javayant NEW
Claire W MaletFranceAnna Fali RENEWAL
Johnson Y ButtItalyAsiya Javayant NEW
Isabel Z PerinRussiaOnyama Limba PROPOSAL
Mayumi R VenereIndiaBernardo Dominic UNQUALIFIED
Murillo O CaldareraItalyOnyama Limba PROPOSAL
Leon O BowleyArgentinaXuxue Feng PROPOSAL
Cody C SaylorsJapanStephen Shaw PROPOSAL
Emily O CaudySpainOnyama Limba UNQUALIFIED
Greenwood P NestleItalyXuxue Feng QUALIFIED
Maria F ButtBrazilAmy Elsner RENEWAL
Isabel G FollerUnited KingdomBernardo Dominic QUALIFIED
Ricardo K InouyeArgentinaAmy Elsner NEW
Stacey X ChuiUnited KingdomStephen Shaw PROPOSAL
Julie O RoysterItalyAnna Fali QUALIFIED
Jones Q SaylorsBrazilIoni Bowcher RENEWAL
Aditya H IturbideRussiaElwin Sharvill NEW
Maria J NickaIndiaBernardo Dominic UNQUALIFIED
Emily Z BriddickBrazilIoni Bowcher RENEWAL
Ricardo T CampainSpainOnyama Limba NEW
Tony X WieserIndiaXuxue Feng QUALIFIED
Mayumi Y MorascaItalyAnna Fali RENEWAL
Rodrigues L RulapaughBrazilElwin Sharvill NEW
Izzy S GillianJapanAmy Elsner NEW
Munro C DarakjyUnited KingdomAmy Elsner NEGOTIATION
Deepesh M MacleadCanadaStephen Shaw QUALIFIED
Leja Y MorascaAustraliaBernardo Dominic UNQUALIFIED
Ricardo Z PerinSpainBernardo Dominic QUALIFIED
Antonio L PaprockiSpainElwin Sharvill QUALIFIED
Clifford B GlickRussiaOnyama Limba NEGOTIATION
Octavia C RulapaughGermanyBernardo Dominic NEGOTIATION
Mayumi I VocelkaAustraliaAnna Fali RENEWAL
Deepesh P WieserFranceElwin Sharvill PROPOSAL
Aika E RutaIndiaStephen Shaw RENEWAL
David F FollerItalyOnyama Limba PROPOSAL
Morrow B RoysterFranceIvan Magalhaes RENEWAL
Aika P TollnerGermanyAsiya Javayant PROPOSAL
Leja F OldroydCanadaElwin Sharvill PROPOSAL
Chavez P SaylorsFranceAmy Elsner QUALIFIED
Sinclair N WieserRussiaAnna Fali UNQUALIFIED
Sinclair G WhobreyAustraliaXuxue Feng UNQUALIFIED
Aika P DilliardArgentinaElwin Sharvill QUALIFIED
Salvatore M RulapaughSpainElwin Sharvill NEGOTIATION
Alejandro V BowleyBrazilXuxue Feng RENEWAL
Darci A AlbaresBrazilBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon N KolmetzJapanAnna Fali QUALIFIED
Arvin X FollerUnited KingdomIoni Bowcher UNQUALIFIED
Rodrigues V FerenczRussiaElwin Sharvill PROPOSAL
Ashley D SaylorsSpainAmy Elsner NEW
Morrow A FlosiJapanIvan Magalhaes NEW
Claire C WieserJapanOnyama Limba NEGOTIATION
Isabel E GarufiUnited KingdomIvan Magalhaes RENEWAL
Antonio J RoysterGermanyStephen Shaw QUALIFIED
Jennifer M PoquetteJapanIoni Bowcher UNQUALIFIED
Wickens R ButtUnited KingdomAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo Y FollerIndia2026-09-18Chemel, James L Cpa RENEWAL1Bernardo Dominic
1001David T SlusarskiAustralia2026-09-15Printing Dimensions PROPOSAL22Anna Fali
1002Sinclair T WieserSpain2026-08-31Commercial Press UNQUALIFIED99Onyama Limba
1003Ricardo Y SergiCanada2026-09-18Rangoni Of Florence UNQUALIFIED34Elwin Sharvill
1004Cody W PaprockiCanada2026-09-13Commercial Press RENEWAL0Amy Elsner
1005Jones H MarrierGermany2026-08-31Printing Dimensions UNQUALIFIED3Ivan Magalhaes
1006Alejandro W OstroskyGermany2026-09-15Printing Dimensions UNQUALIFIED67Onyama Limba
1007Costa U BologniaAustralia2026-08-31Morlong Associates NEW75Ioni Bowcher
1008Ivar E FerenczGermany2026-09-26Chanay, Jeffrey A Esq NEW34Amy Elsner
1009Arvin V CaldareraAustralia2026-09-11Commercial Press RENEWAL0Elwin Sharvill
1010Emily X ChuiArgentina2026-09-01Morlong Associates UNQUALIFIED89Stephen Shaw
1011Jefferson K BowleySpain2026-09-18Rangoni Of Florence NEGOTIATION21Onyama Limba
1012Darci V TollnerSpain2026-09-22Chanay, Jeffrey A Esq NEGOTIATION56Elwin Sharvill
1013Silvio B DarakjySpain2026-09-18Buckley Miller Wright NEW0Elwin Sharvill
1014Julie P PaprockiFrance2026-09-12Chanay, Jeffrey A Esq PROPOSAL52Bernardo Dominic
1015Smith K MaletJapan2026-09-25Chanay, Jeffrey A Esq PROPOSAL19Stephen Shaw
1016Arvin O OldroydSpain2026-09-26Feiner Bros UNQUALIFIED77Ivan Magalhaes
1017Maisha D FlosiRussia2026-09-16Commercial Press NEGOTIATION60Elwin Sharvill
1018Aditya N OstroskyUnited Kingdom2026-09-21Benton, John B Jr QUALIFIED34Ioni Bowcher
1019Aika K DilliardGermany2026-09-02Feiner Bros RENEWAL85Anna Fali
1020Morrow N MaletCanada2026-09-28Chemel, James L Cpa UNQUALIFIED96Ioni Bowcher
1021Claire S PerinJapan2026-09-03Morlong Associates UNQUALIFIED43Xuxue Feng
1022Murillo O MaletCanada2026-09-17King, Christopher A Esq NEW94Ioni Bowcher
1023Juan Q OldroydAustralia2026-08-31Benton, John B Jr NEW2Ioni Bowcher
1024Aditya S WieserAustralia2026-09-03Benton, John B Jr RENEWAL16Elwin Sharvill
1025Arvin G FigeroaJapan2026-09-18Chemel, James L Cpa UNQUALIFIED70Bernardo Dominic
1026Arvin E SergiJapan2026-09-24Buckley Miller Wright PROPOSAL71Stephen Shaw
1027Francesco D PaprockiArgentina2026-09-12Morlong Associates QUALIFIED12Ivan Magalhaes
1028Cody H SaylorsRussia2026-09-01Dorl, James J Esq NEGOTIATION54Amy Elsner
1029Stacey G SlusarskiCanada2026-09-04Rousseaux, Michael Esq PROPOSAL84Bernardo Dominic
1030Jones M FerenczCanada2026-09-04King, Christopher A Esq RENEWAL90Asiya Javayant
1031Nicolas K InouyeFrance2026-08-30Feiner Bros UNQUALIFIED0Anna Fali
1032Leon S ButtSpain2026-09-16Buckley Miller Wright QUALIFIED12Stephen Shaw
1033Wickens D SergiJapan2026-09-16Feiner Bros QUALIFIED66Ivan Magalhaes
1034Kadeem A InouyeBrazil2026-09-13Buckley Miller Wright QUALIFIED21Bernardo Dominic
1035Tony T DilliardFrance2026-08-31Rangoni Of Florence QUALIFIED32Ivan Magalhaes
1036Greenwood V ButtRussia2026-09-14Dorl, James J Esq NEGOTIATION19Bernardo Dominic
1037James P BowleyItaly2026-09-04Dorl, James J Esq NEGOTIATION3Amy Elsner
1038Smith H CaldareraBrazil2026-09-22Feiner Bros NEW63Asiya Javayant
1039James X FigeroaBrazil2026-09-16Commercial Press QUALIFIED92Amy Elsner
1040Darci A ButtItaly2026-09-04Rangoni Of Florence QUALIFIED62Bernardo Dominic
1041Ivar T GillianCanada2026-09-16Chanay, Jeffrey A Esq PROPOSAL66Xuxue Feng
1042Claire B InouyeCanada2026-09-26Chapman, Ross E Esq PROPOSAL21Xuxue Feng
1043Aditya G KuskoUnited Kingdom2026-09-13Dorl, James J Esq QUALIFIED11Ivan Magalhaes
1044Stacey Y OldroydCanada2026-09-07Truhlar And Truhlar Attys PROPOSAL29Amy Elsner
1045Clifford L InouyeSpain2026-09-13Buckley Miller Wright PROPOSAL77Ivan Magalhaes
1046Claire N MarrierFrance2026-09-11Benton, John B Jr UNQUALIFIED80Stephen Shaw
1047Adams M CaudyUnited Kingdom2026-09-09Truhlar And Truhlar Attys RENEWAL82Ivan Magalhaes
1048Silvio N WieserArgentina2026-09-21Feltz Printing Service NEGOTIATION59Onyama Limba
1049Clifford Q ChuiCanada2026-09-11Feiner Bros PROPOSAL9Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Cody I InouyeGermanyAsiya Javayant UNQUALIFIED
Izzy F KolmetzGermanyAsiya Javayant PROPOSAL
Chavez M DoeJapanOnyama Limba QUALIFIED
Darci U StockhamJapanIoni Bowcher UNQUALIFIED
Ricardo W NickaJapanOnyama Limba PROPOSAL
Murillo U FerenczJapanIvan Magalhaes NEGOTIATION
Nicolas Y StockhamItalyOnyama Limba PROPOSAL
Alejandro A ButtGermanyAnna Fali NEW
Octavia Q WhobreyFranceIvan Magalhaes UNQUALIFIED
Jefferson Y SchemmerCanadaAsiya Javayant NEGOTIATION
Deepesh P PerinBrazilAmy Elsner NEGOTIATION
Antonio E CaudySpainStephen Shaw NEGOTIATION
Mayumi A StensethUnited KingdomXuxue Feng NEGOTIATION
Deepesh K NestleIndiaIvan Magalhaes UNQUALIFIED
Mujtaba B BowleyJapanBernardo Dominic RENEWAL
Greenwood X StockhamGermanyBernardo Dominic UNQUALIFIED
Morrow J VenereSpainStephen Shaw RENEWAL
Aruna Z BriddickBrazilIoni Bowcher PROPOSAL
Emily K SaylorsIndiaIoni Bowcher NEGOTIATION
Antonio W RimItalyElwin Sharvill RENEWAL
Maria I KuskoArgentinaXuxue Feng UNQUALIFIED
Maria B OstroskyAustraliaXuxue Feng NEGOTIATION
Mayumi C CampainGermanyXuxue Feng UNQUALIFIED
Jones X PoquetteBrazilElwin Sharvill QUALIFIED
Juan L TollnerCanadaXuxue Feng QUALIFIED
Adams E WaycottFranceStephen Shaw NEW
Adams I FollerFranceAnna Fali NEGOTIATION
Jennifer U KuskoGermanyXuxue Feng PROPOSAL
Mujtaba T NickaIndiaElwin Sharvill NEGOTIATION
Munro R GauchoIndiaIoni Bowcher PROPOSAL
Deepesh P SaylorsAustraliaOnyama Limba NEW
Kadeem L AmigonGermanyIvan Magalhaes QUALIFIED
Izzy A MarrierBrazilIvan Magalhaes UNQUALIFIED
Rodrigues B PerinBrazilElwin Sharvill UNQUALIFIED
Kadeem V KuskoBrazilOnyama Limba UNQUALIFIED
Jones J CaudyBrazilAsiya Javayant NEW
Emily D KuskoRussiaIvan Magalhaes PROPOSAL
Costa Z MaletBrazilOnyama Limba NEGOTIATION
Ashley E DarakjyRussiaXuxue Feng RENEWAL
Alejandro H GarufiCanadaElwin Sharvill NEW
Ashley Q RoysterJapanStephen Shaw RENEWAL
Kadeem D VocelkaCanadaOnyama Limba NEGOTIATION
Jennifer X CaldareraBrazilBernardo Dominic NEGOTIATION
Silvio T RulapaughUnited KingdomAmy Elsner NEW
Costa T VocelkaAustraliaStephen Shaw RENEWAL
Clifford L ShinkoRussiaElwin Sharvill NEW
Francesco E PerinBrazilIvan Magalhaes QUALIFIED
Ashley K ShinkoCanadaStephen Shaw RENEWAL
Salvatore U NickaUnited KingdomElwin Sharvill PROPOSAL
Kaitlin E MaletIndiaBernardo Dominic QUALIFIED
Frozen Columns
Name
Rodrigues S Stockham
Claire Y Saylors
James R Ferencz
Aika C Waycott
Darci B Bowley
Tony H Amigon
Leja E Stockham
Mujtaba L Venere
Stacey T Ruta
Jefferson Y Bowley
Jones V Waycott
Darci F Vocelka
Izzy U Kolmetz
Costa D Tollner
James F Perin
Jeanfrancois M Oldroyd
Claire E Malet
Ricardo U Poquette
Faith H Saylors
Munro Z Ruta
Smith A Stenseth
Aditya M Perin
Misaki T Wieser
Tony B Foller
Munro B Ruta
Kadeem P Figeroa
Adams K Vocelka
Chavez Y Glick
Adams B Ferencz
Octavia P Caldarera
Aika H Darakjy
Octavia K Chui
Isabel Q Paprocki
Arvin F Kusko
Ivar H Marrier
Maisha T Sergi
Stacey Y Saylors
Misaki G Briddick
Murillo F Malet
Deepesh L Caldarera
Izzy O Chui
Mujtaba H Oldroyd
Faith J Campain
Murillo P Foller
Ashley G Foller
Emily U Ferencz
Morrow Q Nicka
Antonio R Foller
Tony F Wieser
Emily F Rim
IdCountryDate
1000Spain2026-08-30
1001Germany2026-09-19
1002Germany2026-09-06
1003Japan2026-09-15
1004Italy2026-09-02
1005France2026-09-24
1006Italy2026-09-12
1007Spain2026-09-10
1008United Kingdom2026-09-13
1009Russia2026-09-21
1010Italy2026-09-15
1011India2026-09-08
1012Italy2026-09-04
1013Brazil2026-09-20
1014France2026-09-14
1015India2026-09-16
1016Italy2026-09-27
1017Canada2026-09-13
1018India2026-09-04
1019United Kingdom2026-09-27
1020France2026-09-27
1021Russia2026-09-16
1022France2026-09-07
1023Argentina2026-09-10
1024France2026-09-02
1025United Kingdom2026-09-02
1026Japan2026-09-04
1027Spain2026-09-10
1028France2026-09-12
1029United Kingdom2026-09-24
1030Spain2026-09-06
1031Australia2026-09-04
1032Brazil2026-09-16
1033Japan2026-09-04
1034Spain2026-09-15
1035Spain2026-09-16
1036Spain2026-09-26
1037France2026-09-21
1038Brazil2026-09-17
1039Australia2026-09-26
1040Australia2026-09-01
1041France2026-09-14
1042Australia2026-09-14
1043Brazil2026-09-14
1044India2026-09-12
1045Argentina2026-09-16
1046Argentina2026-09-19
1047Italy2026-09-06
1048Brazil2026-08-30
1049Italy2026-08-31

On-Demand Data

NameIdCountryDate
Aika I Doe1000Canada2026-09-10
Johnson P Paprocki1001United Kingdom2026-09-06
Adams S Stenseth1002Italy2026-08-30
Aditya N Shinko1003Russia2026-09-23
Misaki L Stenseth1004Spain2026-09-19
Jeanfrancois A Venere1005Russia2026-09-09
Costa F Schemmer1006France2026-09-06
Morrow K Wieser1007Australia2026-09-07
Octavia A Kusko1008Germany2026-08-30
Jones R Ferencz1009France2026-09-17
Mujtaba N Caudy1010Canada2026-09-24
Costa O Saylors1011Brazil2026-09-09
Mayumi J Saylors1012Australia2026-09-04
Greenwood F Perin1013Argentina2026-09-16
Octavia Y Campain1014Brazil2026-09-03
Arvin A Malet1015Argentina2026-09-25
Tony K Shinko1016Canada2026-09-01
Faith K Stockham1017India2026-09-16
Aruna O Morasca1018Australia2026-08-31
Deepesh H Paprocki1019India2026-09-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia G WhobreyAustraliaXuxue Feng RENEWAL
Adams B MarrierUnited KingdomXuxue Feng NEW
James P NickaJapanIvan Magalhaes PROPOSAL
Silvio J ChuiUnited KingdomElwin Sharvill UNQUALIFIED
Stacey R BriddickCanadaBernardo Dominic RENEWAL
Clifford X KuskoBrazilAnna Fali QUALIFIED
Jefferson M RulapaughGermanyAnna Fali NEW
Misaki S SchemmerBrazilAmy Elsner NEW
Leja X WhobreyBrazilBernardo Dominic RENEWAL
Ashley U RoysterRussiaXuxue Feng PROPOSAL
Jeanfrancois H StockhamGermanyElwin Sharvill QUALIFIED
Juan J PaprockiUnited KingdomXuxue Feng QUALIFIED
Aika M DilliardBrazilElwin Sharvill QUALIFIED
Leon U OldroydRussiaAsiya Javayant RENEWAL
Ricardo H VenereAustraliaAsiya Javayant NEGOTIATION
Rodrigues Y MacleadAustraliaXuxue Feng PROPOSAL
Mayumi H AlbaresFranceStephen Shaw NEGOTIATION
Arvin V WaycottIndiaElwin Sharvill NEW
Octavia I FerenczJapanOnyama Limba NEW
Leon S ShinkoAustraliaAnna Fali UNQUALIFIED
Leja W RimAustraliaOnyama Limba NEW
Ivar O DarakjyGermanyIvan Magalhaes RENEWAL
Faith F KuskoFranceBernardo Dominic NEGOTIATION
Nicolas F PerinArgentinaAsiya Javayant PROPOSAL
Cody F MaletIndiaXuxue Feng RENEWAL
Mayumi S GauchoUnited KingdomAsiya Javayant NEW
Murillo M OldroydIndiaOnyama Limba UNQUALIFIED
Maria R GarufiItalyAmy Elsner UNQUALIFIED
Kadeem D GauchoRussiaIvan Magalhaes PROPOSAL
Salvatore C SlusarskiAustraliaAsiya Javayant NEGOTIATION
Ricardo T SlusarskiSpainElwin Sharvill NEGOTIATION
Smith L KuskoFranceAmy Elsner UNQUALIFIED
Emily N ShinkoRussiaXuxue Feng NEW
Sinclair W BriddickFranceIoni Bowcher QUALIFIED
Julie X TollnerGermanyOnyama Limba NEGOTIATION
Faith A AlbaresRussiaAsiya Javayant RENEWAL
Misaki B NickaIndiaAmy Elsner QUALIFIED
Ivar C AlbaresRussiaIoni Bowcher UNQUALIFIED
Aditya N SchemmerArgentinaBernardo Dominic UNQUALIFIED
Rodrigues A RulapaughArgentinaIoni Bowcher 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>