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
Francesco K AlbaresIndiaOnyama Limba NEW
Misaki B GlickGermanyBernardo Dominic NEW
Jeanfrancois X BriddickCanadaElwin Sharvill QUALIFIED
Johnson J CaldareraItalyElwin Sharvill PROPOSAL
Octavia G NestleJapanIoni Bowcher UNQUALIFIED
Jennifer Z FollerBrazilBernardo Dominic PROPOSAL
Tony N StockhamRussiaOnyama Limba PROPOSAL
Faith Q FlosiCanadaIvan Magalhaes UNQUALIFIED
Sinclair P DoeAustraliaAsiya Javayant PROPOSAL
Murillo J RoysterIndiaElwin Sharvill NEW
Costa H GauchoItalyOnyama Limba NEW
Izzy L DarakjyFranceAnna Fali NEGOTIATION
Sinclair B StensethUnited KingdomAmy Elsner QUALIFIED
Julie R ShinkoJapanAmy Elsner RENEWAL
Costa I PoquetteCanadaXuxue Feng UNQUALIFIED
Maria M GarufiJapanElwin Sharvill UNQUALIFIED
Deepesh X GillianAustraliaAnna Fali RENEWAL
Faith Q OldroydJapanStephen Shaw UNQUALIFIED
Aditya X RulapaughJapanAnna Fali NEGOTIATION
Claire E WhobreyCanadaAmy Elsner PROPOSAL
Ivar H RoysterAustraliaXuxue Feng QUALIFIED
Munro P InouyeItalyAnna Fali QUALIFIED
Stacey A BologniaSpainIvan Magalhaes NEW
Arvin G GauchoIndiaElwin Sharvill NEGOTIATION
Aika A KolmetzCanadaAsiya Javayant PROPOSAL
Mujtaba H NickaUnited KingdomAnna Fali UNQUALIFIED
Munro B WaycottFranceBernardo Dominic RENEWAL
Aditya Y WieserJapanAnna Fali NEGOTIATION
Aruna J GauchoCanadaXuxue Feng RENEWAL
Costa F VenereFranceElwin Sharvill NEGOTIATION
Smith G PerinIndiaStephen Shaw NEGOTIATION
Kadeem C SlusarskiArgentinaAsiya Javayant PROPOSAL
Octavia L ChuiItalyXuxue Feng NEW
Francesco A AlbaresArgentinaBernardo Dominic UNQUALIFIED
Greenwood D MacleadItalyAnna Fali NEGOTIATION
Salvatore I MaletAustraliaElwin Sharvill NEGOTIATION
Ricardo D CaudyJapanAsiya Javayant UNQUALIFIED
Adams V StockhamRussiaElwin Sharvill QUALIFIED
Morrow H DilliardGermanyAmy Elsner RENEWAL
Sinclair X VenereArgentinaOnyama Limba PROPOSAL
Faith T BologniaCanadaElwin Sharvill UNQUALIFIED
Jones V NickaFranceStephen Shaw NEGOTIATION
Rodrigues O MorascaCanadaBernardo Dominic RENEWAL
Antonio L WaycottFranceStephen Shaw NEW
Munro M MarrierCanadaStephen Shaw QUALIFIED
James D ChuiIndiaAnna Fali QUALIFIED
Salvatore G BowleyGermanyIvan Magalhaes PROPOSAL
Izzy I RulapaughArgentinaBernardo Dominic NEGOTIATION
Ricardo K WieserUnited KingdomAnna Fali NEW
Claire I RulapaughGermanyBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Johnson E PoquetteArgentinaAmy Elsner NEGOTIATION
Claire A StockhamIndiaAnna Fali PROPOSAL
Chavez Z StockhamArgentinaAmy Elsner PROPOSAL
Morrow E CaudySpainIoni Bowcher NEW
Aika K BriddickJapanIoni Bowcher RENEWAL
Leon T KolmetzUnited KingdomAnna Fali PROPOSAL
Claire N WaycottArgentinaAsiya Javayant RENEWAL
Jennifer N MaletFranceAmy Elsner QUALIFIED
Ashley A PerinIndiaBernardo Dominic UNQUALIFIED
Jeanfrancois L SaylorsUnited KingdomIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba L OldroydGermany2026-10-22Chemel, James L Cpa NEGOTIATION42Amy Elsner
1001Julie Y GauchoSpain2026-10-16King, Christopher A Esq NEW19Elwin Sharvill
1002Stacey U FerenczAustralia2026-10-22Rangoni Of Florence PROPOSAL4Ivan Magalhaes
1003Silvio B AmigonItaly2026-10-22Dorl, James J Esq QUALIFIED70Xuxue Feng
1004Jennifer T DoeIndia2026-10-21Chemel, James L Cpa QUALIFIED22Asiya Javayant
1005Kadeem M RutaRussia2026-11-06Morlong Associates QUALIFIED6Amy Elsner
1006Costa C PaprockiCanada2026-10-29Commercial Press PROPOSAL42Ioni Bowcher
1007Jefferson D OldroydRussia2026-10-14Rangoni Of Florence RENEWAL19Xuxue Feng
1008Stacey G AmigonSpain2026-10-13Dorl, James J Esq QUALIFIED55Anna Fali
1009Leja R IturbideItaly2026-10-24Printing Dimensions QUALIFIED61Onyama Limba
1010Isabel J IturbideGermany2026-11-07Morlong Associates QUALIFIED86Asiya Javayant
1011Smith H SchemmerBrazil2026-10-25Feiner Bros QUALIFIED33Onyama Limba
1012Ashley G ShinkoFrance2026-11-03Chanay, Jeffrey A Esq RENEWAL7Ivan Magalhaes
1013Juan I IturbideJapan2026-11-07Feltz Printing Service RENEWAL13Onyama Limba
1014Isabel H DilliardBrazil2026-10-23Buckley Miller Wright QUALIFIED61Bernardo Dominic
1015Izzy P CaudyCanada2026-11-05Buckley Miller Wright RENEWAL79Amy Elsner
1016Salvatore H SergiAustralia2026-10-29Benton, John B Jr PROPOSAL36Onyama Limba
1017Smith O CaldareraRussia2026-10-25Chapman, Ross E Esq NEGOTIATION87Stephen Shaw
1018Arvin G PerinArgentina2026-10-28Chanay, Jeffrey A Esq NEGOTIATION20Xuxue Feng
1019Tony D SaylorsRussia2026-11-05Printing Dimensions RENEWAL49Stephen Shaw
1020Johnson L NickaRussia2026-11-08Buckley Miller Wright QUALIFIED20Elwin Sharvill
1021Mayumi C GlickCanada2026-10-16Dorl, James J Esq UNQUALIFIED55Elwin Sharvill
1022Julie Z MaletGermany2026-10-17Benton, John B Jr UNQUALIFIED35Ioni Bowcher
1023David G CampainItaly2026-10-14Feltz Printing Service NEGOTIATION34Ivan Magalhaes
1024Emily T DoeUnited Kingdom2026-10-15Feltz Printing Service PROPOSAL0Onyama Limba
1025Smith D SaylorsIndia2026-11-06Benton, John B Jr PROPOSAL38Amy Elsner
1026Claire B BologniaUnited Kingdom2026-10-28Commercial Press UNQUALIFIED40Ivan Magalhaes
1027Costa R FlosiUnited Kingdom2026-10-28Feiner Bros NEGOTIATION15Asiya Javayant
1028Sinclair K SchemmerFrance2026-10-19Dorl, James J Esq NEGOTIATION78Anna Fali
1029Greenwood U CaldareraJapan2026-11-02Rangoni Of Florence NEW20Bernardo Dominic
1030Kadeem W RutaRussia2026-11-08King, Christopher A Esq RENEWAL13Anna Fali
1031Costa S WhobreyJapan2026-10-14Printing Dimensions NEGOTIATION79Xuxue Feng
1032Jones Y BowleyJapan2026-11-07Commercial Press RENEWAL58Elwin Sharvill
1033Aruna T WieserJapan2026-10-16Rangoni Of Florence RENEWAL3Onyama Limba
1034Tony Z PerinUnited Kingdom2026-10-13Rousseaux, Michael Esq RENEWAL3Stephen Shaw
1035Salvatore O DilliardItaly2026-11-02Benton, John B Jr NEW71Ivan Magalhaes
1036Sinclair Q NestleUnited Kingdom2026-11-04Truhlar And Truhlar Attys NEGOTIATION67Amy Elsner
1037Misaki W SchemmerIndia2026-11-07Rousseaux, Michael Esq PROPOSAL5Stephen Shaw
1038Octavia U GauchoGermany2026-10-20Chemel, James L Cpa RENEWAL14Stephen Shaw
1039Murillo R NestleItaly2026-11-08Rousseaux, Michael Esq PROPOSAL83Ioni Bowcher
1040Juan M NestleUnited Kingdom2026-11-11Commercial Press PROPOSAL66Anna Fali
1041Stacey S VocelkaAustralia2026-10-22King, Christopher A Esq NEGOTIATION1Asiya Javayant
1042Octavia L AlbaresBrazil2026-10-26Feltz Printing Service QUALIFIED75Xuxue Feng
1043Mayumi T DarakjyRussia2026-11-05Buckley Miller Wright PROPOSAL53Onyama Limba
1044Julie D ChuiJapan2026-10-28Buckley Miller Wright UNQUALIFIED15Stephen Shaw
1045Aditya X ShinkoFrance2026-10-25Truhlar And Truhlar Attys NEW96Ivan Magalhaes
1046Greenwood L PerinAustralia2026-10-30Chanay, Jeffrey A Esq UNQUALIFIED58Bernardo Dominic
1047Misaki U SaylorsAustralia2026-10-22Chemel, James L Cpa PROPOSAL55Onyama Limba
1048Octavia L FigeroaBrazil2026-11-08Morlong Associates UNQUALIFIED21Xuxue Feng
1049Silvio G MacleadBrazil2026-10-21Benton, John B Jr NEW15Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Mayumi X KuskoAustraliaBernardo Dominic QUALIFIED
James X FigeroaJapanIvan Magalhaes NEW
Antonio C FlosiArgentinaStephen Shaw NEGOTIATION
Leja S GlickGermanyElwin Sharvill PROPOSAL
Greenwood G DoeUnited KingdomXuxue Feng UNQUALIFIED
Salvatore F KolmetzBrazilAmy Elsner NEGOTIATION
Munro X SlusarskiRussiaXuxue Feng RENEWAL
Adams Q CaudyItalyAmy Elsner RENEWAL
Costa J NestleCanadaOnyama Limba NEGOTIATION
Maisha N NestleItalyOnyama Limba RENEWAL
Morrow E BologniaBrazilAmy Elsner NEW
Octavia W StockhamArgentinaAmy Elsner NEW
Salvatore H NickaSpainBernardo Dominic NEW
Rodrigues N MacleadArgentinaAnna Fali NEGOTIATION
Julie X DarakjyGermanyBernardo Dominic NEW
Darci X PerinCanadaElwin Sharvill UNQUALIFIED
Sinclair V RulapaughGermanyStephen Shaw RENEWAL
Silvio L AlbaresJapanAnna Fali NEW
Tony B NickaCanadaIvan Magalhaes UNQUALIFIED
Emily S CaudySpainXuxue Feng NEW
Adams T ButtArgentinaAsiya Javayant QUALIFIED
Smith S MaletItalyBernardo Dominic NEW
Octavia J GauchoIndiaAsiya Javayant PROPOSAL
Nicolas W CaldareraFranceAsiya Javayant UNQUALIFIED
Johnson U ButtCanadaAsiya Javayant UNQUALIFIED
Silvio A KuskoSpainAsiya Javayant QUALIFIED
Morrow Q SlusarskiCanadaXuxue Feng NEGOTIATION
Izzy X SaylorsAustraliaBernardo Dominic QUALIFIED
Adams Q RoysterUnited KingdomAnna Fali QUALIFIED
Octavia N RimFranceOnyama Limba PROPOSAL
Faith T GauchoIndiaBernardo Dominic PROPOSAL
Jones C GlickBrazilElwin Sharvill NEGOTIATION
Stacey N NestleRussiaOnyama Limba QUALIFIED
Darci J ButtBrazilIvan Magalhaes NEGOTIATION
James L StensethBrazilOnyama Limba UNQUALIFIED
Ashley J BowleyFranceIvan Magalhaes PROPOSAL
Sinclair Y StockhamJapanElwin Sharvill UNQUALIFIED
Chavez F CaudyArgentinaOnyama Limba NEW
Sinclair V PoquetteCanadaIoni Bowcher NEW
Kaitlin N SergiCanadaXuxue Feng QUALIFIED
Rodrigues S KuskoRussiaStephen Shaw RENEWAL
Antonio Y RimGermanyAsiya Javayant NEGOTIATION
Jennifer Y KolmetzUnited KingdomIvan Magalhaes NEW
Johnson X GlickJapanXuxue Feng NEW
Francesco S FollerIndiaOnyama Limba UNQUALIFIED
Julie G IturbideGermanyAmy Elsner RENEWAL
Smith E NestleAustraliaElwin Sharvill NEW
Faith O GauchoGermanyOnyama Limba NEW
Sinclair U MarrierAustraliaStephen Shaw UNQUALIFIED
Maisha J NickaArgentinaBernardo Dominic NEGOTIATION
Frozen Columns
Name
Juan P Chui
Alejandro T Malet
Julie J Nestle
Aruna C Rulapaugh
Antonio J Darakjy
Munro W Foller
Mayumi R Waycott
Greenwood G Caldarera
Adams E Gaucho
Clifford I Doe
Kaitlin B Flosi
Silvio G Ruta
Maria D Inouye
Murillo Y Foller
Francesco G Ruta
Adams Y Marrier
Johnson W Schemmer
Misaki S Kusko
Kaitlin F Marrier
David H Royster
Deepesh D Dilliard
Munro F Doe
David P Venere
Maisha O Doe
Alejandro F Schemmer
Octavia J Albares
Mujtaba B Dilliard
Morrow D Nicka
Johnson O Albares
Arvin S Ruta
Octavia V Figeroa
Costa I Paprocki
Smith U Paprocki
Silvio P Amigon
Aruna J Poquette
Mayumi H Waycott
Clifford J Foller
Smith Y Kusko
Costa L Malet
Cody S Sergi
Misaki B Gaucho
Sinclair R Bowley
Emily K Slusarski
Maria R Garufi
Mayumi I Glick
Ivar F Campain
Jones M Vocelka
Antonio B Paprocki
Francesco U Glick
Deepesh T Figeroa
IdCountryDate
1000France2026-10-15
1001Argentina2026-11-07
1002United Kingdom2026-10-24
1003India2026-11-02
1004Japan2026-10-24
1005India2026-10-28
1006Argentina2026-10-23
1007Germany2026-11-03
1008Italy2026-11-10
1009Spain2026-11-06
1010United Kingdom2026-10-22
1011Germany2026-11-01
1012France2026-10-31
1013Germany2026-10-24
1014France2026-10-21
1015Japan2026-10-19
1016Canada2026-11-09
1017Argentina2026-10-26
1018Japan2026-10-30
1019France2026-10-20
1020Germany2026-10-21
1021Spain2026-11-02
1022Canada2026-11-06
1023Argentina2026-11-10
1024Australia2026-10-24
1025Brazil2026-10-23
1026Canada2026-11-10
1027India2026-10-29
1028Australia2026-10-14
1029India2026-11-01
1030France2026-10-26
1031United Kingdom2026-10-24
1032United Kingdom2026-10-27
1033Germany2026-10-27
1034Japan2026-10-29
1035Germany2026-11-02
1036India2026-10-15
1037Italy2026-10-22
1038Japan2026-11-08
1039Japan2026-11-03
1040Spain2026-10-13
1041Japan2026-10-29
1042Spain2026-10-19
1043France2026-11-07
1044Germany2026-11-09
1045Canada2026-10-16
1046Argentina2026-11-07
1047Japan2026-10-17
1048Japan2026-10-31
1049United Kingdom2026-11-01

On-Demand Data

NameIdCountryDate
Darci V Stockham1000Argentina2026-10-31
Nicolas H Whobrey1001United Kingdom2026-10-31
Aditya N Flosi1002Canada2026-10-22
Kadeem H Stenseth1003Italy2026-10-24
Chavez K Glick1004Brazil2026-10-19
Izzy N Whobrey1005Japan2026-11-11
Francesco N Schemmer1006Spain2026-10-30
Nicolas J Sergi1007Canada2026-11-06
Izzy A Doe1008Canada2026-10-29
Smith C Figeroa1009Australia2026-11-09
Octavia Z Iturbide1010Russia2026-10-13
Morrow G Flosi1011Spain2026-11-10
Ricardo N Poquette1012United Kingdom2026-10-29
Arvin T Kusko1013Argentina2026-10-24
Aika W Butt1014France2026-11-03
Morrow G Waycott1015Canada2026-11-09
Salvatore A Ruta1016Canada2026-10-15
Aruna E Royster1017India2026-10-29
Maria V Rulapaugh1018Argentina2026-10-29
Costa D Royster1019Spain2026-10-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony F WhobreyAustraliaElwin Sharvill NEW
Leja X KolmetzSpainOnyama Limba NEW
Sinclair X MarrierJapanOnyama Limba UNQUALIFIED
Aditya T KolmetzGermanyIvan Magalhaes NEW
Antonio M MacleadItalyAmy Elsner QUALIFIED
Mayumi I VenereUnited KingdomElwin Sharvill RENEWAL
James T GlickGermanyIvan Magalhaes PROPOSAL
Isabel I SlusarskiCanadaBernardo Dominic UNQUALIFIED
Smith J FigeroaArgentinaIoni Bowcher UNQUALIFIED
Adams G WhobreyItalyStephen Shaw NEGOTIATION
Misaki M WaycottJapanAsiya Javayant QUALIFIED
Stacey Q MaletItalyOnyama Limba PROPOSAL
Chavez A FigeroaJapanBernardo Dominic UNQUALIFIED
Cody C DilliardUnited KingdomAnna Fali RENEWAL
Faith C SergiSpainAsiya Javayant QUALIFIED
Rodrigues D KuskoJapanAmy Elsner NEW
Munro V KuskoIndiaAnna Fali PROPOSAL
Greenwood O WaycottAustraliaIvan Magalhaes NEW
Darci Z CaldareraJapanStephen Shaw NEGOTIATION
Aruna Y DarakjyFranceOnyama Limba RENEWAL
Antonio I RoysterFranceStephen Shaw PROPOSAL
Antonio D AlbaresArgentinaAnna Fali QUALIFIED
Ivar J RutaAustraliaAsiya Javayant PROPOSAL
Francesco G KolmetzCanadaStephen Shaw UNQUALIFIED
Aruna D MorascaFranceElwin Sharvill PROPOSAL
Izzy G OstroskyItalyXuxue Feng UNQUALIFIED
Johnson N KuskoCanadaStephen Shaw NEW
Darci O MaletFranceIvan Magalhaes NEGOTIATION
Mayumi B OstroskyGermanyElwin Sharvill NEGOTIATION
Claire I SlusarskiAustraliaOnyama Limba UNQUALIFIED
Aditya U NickaCanadaElwin Sharvill NEW
David O ButtBrazilStephen Shaw PROPOSAL
Leon J VenereBrazilAsiya Javayant UNQUALIFIED
Aika I RutaIndiaOnyama Limba PROPOSAL
Leon W FlosiFranceIvan Magalhaes QUALIFIED
Izzy Z ShinkoCanadaIoni Bowcher NEW
Francesco I FigeroaAustraliaIoni Bowcher RENEWAL
Mujtaba R FlosiIndiaBernardo Dominic NEW
Morrow Z ChuiAustraliaStephen Shaw UNQUALIFIED
Darci H GlickUnited KingdomAsiya Javayant NEW

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