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
Darci R KolmetzArgentinaAsiya Javayant NEGOTIATION
Isabel U SaylorsFranceOnyama Limba QUALIFIED
Aditya J ChuiIndiaOnyama Limba PROPOSAL
Claire L StensethFranceXuxue Feng UNQUALIFIED
Juan P MaletItalyIoni Bowcher NEGOTIATION
Izzy E GillianUnited KingdomElwin Sharvill NEW
Greenwood W BriddickRussiaXuxue Feng PROPOSAL
Jennifer D VenereIndiaOnyama Limba NEW
Chavez L DoeSpainAsiya Javayant QUALIFIED
Munro W CampainIndiaOnyama Limba RENEWAL
Costa T NestleUnited KingdomAsiya Javayant NEW
Clifford M WhobreyItalyOnyama Limba QUALIFIED
Juan B RimJapanIvan Magalhaes QUALIFIED
Mayumi G DilliardGermanyElwin Sharvill NEW
Mayumi A IturbideAustraliaOnyama Limba UNQUALIFIED
Claire T AmigonItalyOnyama Limba NEW
Juan W InouyeBrazilIoni Bowcher NEGOTIATION
Leon N SaylorsFranceIvan Magalhaes PROPOSAL
Tony U BologniaGermanyBernardo Dominic QUALIFIED
Faith F PerinUnited KingdomBernardo Dominic NEGOTIATION
Jefferson J AmigonJapanAsiya Javayant NEW
Aditya W BowleyFranceBernardo Dominic NEW
Isabel X StockhamSpainOnyama Limba UNQUALIFIED
Silvio X BowleyJapanAmy Elsner NEGOTIATION
James J SchemmerIndiaElwin Sharvill PROPOSAL
Claire R KolmetzBrazilOnyama Limba NEGOTIATION
Ivar P NickaUnited KingdomAsiya Javayant NEW
Morrow R IturbideBrazilXuxue Feng PROPOSAL
Octavia Z TollnerBrazilXuxue Feng QUALIFIED
Claire J WhobreyCanadaBernardo Dominic PROPOSAL
Greenwood Y DoeBrazilStephen Shaw QUALIFIED
Ricardo L DarakjySpainStephen Shaw NEGOTIATION
Mayumi A InouyeSpainIoni Bowcher PROPOSAL
Jefferson A SaylorsItalyAmy Elsner PROPOSAL
Aika C StensethRussiaAsiya Javayant PROPOSAL
Octavia Z SchemmerFranceAsiya Javayant PROPOSAL
Jennifer X StockhamAustraliaAmy Elsner UNQUALIFIED
Sinclair H GlickRussiaIoni Bowcher UNQUALIFIED
Costa X GlickIndiaBernardo Dominic PROPOSAL
Deepesh Y MacleadSpainIoni Bowcher QUALIFIED
Jefferson R SchemmerGermanyAsiya Javayant UNQUALIFIED
Tony E VenereArgentinaIoni Bowcher NEW
Aditya V FlosiJapanIvan Magalhaes NEGOTIATION
Wickens I StensethGermanyOnyama Limba QUALIFIED
Nicolas H IturbideCanadaBernardo Dominic QUALIFIED
Jefferson W TollnerSpainAsiya Javayant NEW
Jennifer Q NickaCanadaAnna Fali PROPOSAL
Smith B KuskoUnited KingdomXuxue Feng UNQUALIFIED
Aruna Y RulapaughItalyAmy Elsner NEGOTIATION
Julie X RimFranceIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Smith C RutaGermanyAnna Fali UNQUALIFIED
Jefferson R AlbaresRussiaStephen Shaw QUALIFIED
Maria H VenereArgentinaStephen Shaw NEW
Deepesh X RulapaughJapanIvan Magalhaes NEW
Misaki A ShinkoBrazilIvan Magalhaes RENEWAL
Isabel V NickaArgentinaIoni Bowcher NEGOTIATION
Arvin L DarakjyUnited KingdomAmy Elsner RENEWAL
Wickens V CampainItalyStephen Shaw QUALIFIED
Wickens A PoquetteSpainAmy Elsner QUALIFIED
Munro A MarrierItalyElwin Sharvill PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna D MorascaRussia2026-09-25Rousseaux, Michael Esq NEGOTIATION17Ioni Bowcher
1001Salvatore G BowleyJapan2026-09-02Truhlar And Truhlar Attys RENEWAL72Amy Elsner
1002Chavez D WhobreyUnited Kingdom2026-09-12Rousseaux, Michael Esq NEGOTIATION25Xuxue Feng
1003David P GlickCanada2026-09-03Printing Dimensions NEGOTIATION83Stephen Shaw
1004Mujtaba P SaylorsItaly2026-09-12Chapman, Ross E Esq PROPOSAL95Xuxue Feng
1005Adams U WieserCanada2026-09-25Feltz Printing Service PROPOSAL31Ioni Bowcher
1006Maisha H RoysterArgentina2026-09-21King, Christopher A Esq PROPOSAL13Elwin Sharvill
1007Smith G VocelkaGermany2026-09-22Feltz Printing Service QUALIFIED74Anna Fali
1008Julie V SchemmerRussia2026-09-18Rangoni Of Florence NEGOTIATION81Onyama Limba
1009Kaitlin W ButtFrance2026-09-01Printing Dimensions NEW75Bernardo Dominic
1010Alejandro E RulapaughRussia2026-09-20Printing Dimensions NEGOTIATION41Bernardo Dominic
1011Murillo V ButtBrazil2026-09-02Benton, John B Jr RENEWAL87Ivan Magalhaes
1012Leon X PaprockiBrazil2026-09-10Chemel, James L Cpa QUALIFIED12Ivan Magalhaes
1013Tony I ChuiUnited Kingdom2026-09-02Chanay, Jeffrey A Esq UNQUALIFIED22Onyama Limba
1014Mujtaba T RutaBrazil2026-09-05Printing Dimensions UNQUALIFIED47Onyama Limba
1015Maisha G DarakjyCanada2026-09-05Commercial Press NEGOTIATION21Stephen Shaw
1016Julie V PoquetteIndia2026-09-25Commercial Press NEGOTIATION19Amy Elsner
1017Sinclair Z GlickItaly2026-09-25Morlong Associates RENEWAL44Bernardo Dominic
1018Jeanfrancois N StensethRussia2026-09-14Rangoni Of Florence QUALIFIED79Ivan Magalhaes
1019Jones X GillianJapan2026-09-13King, Christopher A Esq NEGOTIATION29Ioni Bowcher
1020Ricardo A NickaCanada2026-09-26Benton, John B Jr UNQUALIFIED25Elwin Sharvill
1021Murillo O BriddickIndia2026-09-24Chapman, Ross E Esq NEW78Bernardo Dominic
1022Johnson B DilliardArgentina2026-09-08Chapman, Ross E Esq UNQUALIFIED28Onyama Limba
1023Darci L PerinIndia2026-09-26Morlong Associates QUALIFIED96Stephen Shaw
1024Ricardo Y FlosiIndia2026-09-15Feltz Printing Service PROPOSAL80Stephen Shaw
1025Alejandro V TollnerSpain2026-09-07King, Christopher A Esq RENEWAL69Ivan Magalhaes
1026Leja I RutaAustralia2026-09-22Rangoni Of Florence NEW2Elwin Sharvill
1027Juan O GarufiArgentina2026-09-05Rangoni Of Florence RENEWAL68Ivan Magalhaes
1028Leja Q DoeArgentina2026-09-10Chemel, James L Cpa NEW88Amy Elsner
1029Costa D StockhamGermany2026-09-19Dorl, James J Esq UNQUALIFIED62Onyama Limba
1030Murillo J MacleadFrance2026-09-08Feiner Bros QUALIFIED0Elwin Sharvill
1031Leja M MacleadSpain2026-09-10Rangoni Of Florence PROPOSAL14Xuxue Feng
1032Claire Q BowleyAustralia2026-08-31Feiner Bros RENEWAL42Ioni Bowcher
1033Wickens I WieserSpain2026-08-28Buckley Miller Wright RENEWAL74Onyama Limba
1034Morrow P VenereRussia2026-09-23Printing Dimensions UNQUALIFIED60Amy Elsner
1035Nicolas P CaudyJapan2026-09-21Chanay, Jeffrey A Esq QUALIFIED36Onyama Limba
1036Chavez G CaudyBrazil2026-08-30Chanay, Jeffrey A Esq NEGOTIATION52Bernardo Dominic
1037Juan A GauchoCanada2026-09-20Chapman, Ross E Esq PROPOSAL89Ivan Magalhaes
1038Wickens M BriddickUnited Kingdom2026-09-10Chanay, Jeffrey A Esq RENEWAL89Onyama Limba
1039Clifford Z DarakjyBrazil2026-09-22Commercial Press UNQUALIFIED29Bernardo Dominic
1040Sinclair P RimJapan2026-09-16Morlong Associates NEW86Stephen Shaw
1041Salvatore X VocelkaArgentina2026-09-25Feiner Bros NEGOTIATION11Asiya Javayant
1042Ivar I SlusarskiUnited Kingdom2026-09-10Dorl, James J Esq QUALIFIED54Anna Fali
1043Kaitlin Z FlosiAustralia2026-09-15Chemel, James L Cpa PROPOSAL80Stephen Shaw
1044Deepesh V VenereJapan2026-09-13Chanay, Jeffrey A Esq QUALIFIED50Bernardo Dominic
1045Darci T MaletUnited Kingdom2026-09-19Commercial Press NEW46Asiya Javayant
1046Deepesh L NestleGermany2026-09-14Chapman, Ross E Esq NEW55Stephen Shaw
1047Aditya K MacleadCanada2026-08-28Feltz Printing Service QUALIFIED34Ivan Magalhaes
1048Octavia K MaletGermany2026-08-29Morlong Associates RENEWAL87Onyama Limba
1049Wickens U SaylorsItaly2026-09-01Dorl, James J Esq NEGOTIATION31Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues H CampainBrazilOnyama Limba NEW
Morrow T InouyeCanadaAsiya Javayant PROPOSAL
Aditya Z InouyeJapanAnna Fali NEW
Morrow C CampainItalyStephen Shaw NEGOTIATION
Jefferson S DarakjyIndiaBernardo Dominic NEW
Silvio C VocelkaRussiaStephen Shaw QUALIFIED
Jeanfrancois H GlickIndiaElwin Sharvill NEW
Ashley E AlbaresItalyIvan Magalhaes QUALIFIED
Murillo L GauchoGermanyAnna Fali RENEWAL
David L AlbaresCanadaStephen Shaw PROPOSAL
Tony E WieserItalyBernardo Dominic RENEWAL
Leja T SlusarskiBrazilOnyama Limba QUALIFIED
Kadeem H PaprockiArgentinaIvan Magalhaes UNQUALIFIED
Ricardo C FlosiItalyAnna Fali UNQUALIFIED
Costa F NestleJapanIoni Bowcher NEW
Salvatore D IturbideBrazilElwin Sharvill PROPOSAL
Jefferson D CampainGermanyIoni Bowcher NEW
Munro W OldroydCanadaStephen Shaw PROPOSAL
Ricardo J ChuiIndiaAsiya Javayant QUALIFIED
Leon V NickaFranceElwin Sharvill PROPOSAL
Maisha Z RimItalyAnna Fali QUALIFIED
Leon X RutaArgentinaElwin Sharvill RENEWAL
Emily I VenereGermanyStephen Shaw RENEWAL
Leja P SaylorsSpainElwin Sharvill NEGOTIATION
Sinclair P AmigonSpainOnyama Limba NEGOTIATION
Darci A WhobreyItalyOnyama Limba UNQUALIFIED
Leon V OstroskyAustraliaOnyama Limba QUALIFIED
Kadeem D DoeAustraliaBernardo Dominic UNQUALIFIED
Salvatore B SergiItalyXuxue Feng QUALIFIED
Morrow S MaletFranceElwin Sharvill NEW
Deepesh H GlickFranceAsiya Javayant NEW
Jones Y KolmetzArgentinaOnyama Limba RENEWAL
Greenwood R GarufiIndiaBernardo Dominic RENEWAL
Greenwood W TollnerCanadaXuxue Feng UNQUALIFIED
Francesco U NickaUnited KingdomElwin Sharvill PROPOSAL
Kaitlin G MorascaFranceAsiya Javayant QUALIFIED
David C RimRussiaAmy Elsner PROPOSAL
Faith Z NickaGermanyIoni Bowcher NEGOTIATION
James D FlosiJapanIvan Magalhaes RENEWAL
Aditya W StensethRussiaOnyama Limba PROPOSAL
Jeanfrancois S NestleAustraliaOnyama Limba QUALIFIED
Smith P CaudyAustraliaXuxue Feng RENEWAL
Adams Z SaylorsSpainIvan Magalhaes NEW
Jeanfrancois T SaylorsUnited KingdomAsiya Javayant PROPOSAL
Julie Q SlusarskiCanadaAmy Elsner QUALIFIED
Juan V GarufiFranceXuxue Feng QUALIFIED
Darci O BriddickSpainStephen Shaw PROPOSAL
David J PoquetteJapanBernardo Dominic NEGOTIATION
Jefferson F StensethAustraliaAsiya Javayant QUALIFIED
Salvatore Z FigeroaSpainElwin Sharvill NEW
Frozen Columns
Name
Maria A Schemmer
Maria M Rim
Silvio P Ostrosky
Darci T Chui
Leja C Albares
Leja E Ferencz
Aika P Royster
Octavia G Ferencz
Aditya A Kusko
Izzy L Campain
Julie C Vocelka
Sinclair X Figeroa
Kaitlin R Dilliard
Aditya M Paprocki
Antonio S Rulapaugh
Jennifer S Sergi
Isabel D Flosi
Adams V Perin
Johnson X Tollner
Jones M Sergi
Salvatore C Stenseth
Chavez T Venere
Jones I Malet
Darci Z Wieser
Silvio F Doe
Darci Z Chui
Nicolas L Malet
Jennifer Y Gaucho
Darci P Bolognia
Misaki L Shinko
Munro H Paprocki
Octavia W Doe
Jefferson R Shinko
Munro I Nicka
Izzy Y Flosi
Deepesh Q Schemmer
Clifford U Shinko
Octavia P Glick
Sinclair I Nicka
Antonio D Waycott
Rodrigues M Sergi
Clifford P Rulapaugh
Arvin R Flosi
Misaki H Saylors
Faith J Poquette
David D Gillian
Darci V Dilliard
Francesco I Whobrey
David A Gillian
Jeanfrancois G Gillian
IdCountryDate
1000Canada2026-09-23
1001United Kingdom2026-08-31
1002Argentina2026-09-07
1003Australia2026-09-12
1004India2026-09-03
1005Argentina2026-09-11
1006Italy2026-09-23
1007Brazil2026-09-13
1008Russia2026-09-20
1009India2026-09-17
1010Russia2026-09-10
1011Spain2026-09-18
1012Australia2026-09-09
1013France2026-09-14
1014Russia2026-09-07
1015Argentina2026-09-16
1016United Kingdom2026-09-03
1017Japan2026-09-12
1018Italy2026-09-04
1019Brazil2026-09-01
1020France2026-09-19
1021United Kingdom2026-09-07
1022Russia2026-09-22
1023Argentina2026-09-09
1024Italy2026-08-29
1025Australia2026-09-19
1026France2026-08-29
1027India2026-09-19
1028France2026-09-21
1029Spain2026-09-05
1030Japan2026-09-02
1031Japan2026-09-15
1032France2026-09-18
1033India2026-09-20
1034Japan2026-09-02
1035Canada2026-09-15
1036Australia2026-09-17
1037France2026-09-05
1038Germany2026-09-11
1039Canada2026-09-15
1040India2026-09-11
1041Japan2026-09-10
1042Germany2026-09-12
1043United Kingdom2026-09-19
1044Germany2026-09-20
1045Brazil2026-09-12
1046United Kingdom2026-09-09
1047Japan2026-09-13
1048United Kingdom2026-09-04
1049India2026-09-17

On-Demand Data

NameIdCountryDate
Francesco V Iturbide1000United Kingdom2026-09-12
Emily K Malet1001United Kingdom2026-09-19
Deepesh M Chui1002Brazil2026-09-15
Costa I Rulapaugh1003United Kingdom2026-09-10
Greenwood G Ferencz1004France2026-09-15
Tony P Shinko1005India2026-09-23
Maria N Butt1006Canada2026-09-11
Tony O Schemmer1007Germany2026-09-10
Sinclair M Amigon1008Australia2026-08-31
Darci D Vocelka1009United Kingdom2026-08-29
Julie T Dilliard1010United Kingdom2026-09-03
Jefferson G Whobrey1011Italy2026-08-31
Cody Q Nestle1012Brazil2026-09-17
Ashley F Flosi1013France2026-09-24
Morrow U Amigon1014Brazil2026-09-16
Cody O Perin1015Brazil2026-09-01
Emily I Kusko1016Russia2026-09-05
Wickens N Stenseth1017Italy2026-09-20
Maisha L Stockham1018Argentina2026-09-03
Antonio O Glick1019Russia2026-09-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith H GlickGermanyStephen Shaw QUALIFIED
Cody M DoeRussiaAnna Fali QUALIFIED
Faith I MaletArgentinaIoni Bowcher RENEWAL
Aika M CampainRussiaAsiya Javayant QUALIFIED
Misaki S WaycottRussiaIoni Bowcher QUALIFIED
James X CaldareraAustraliaAmy Elsner PROPOSAL
Tony B IturbideRussiaAsiya Javayant PROPOSAL
Aruna I AmigonArgentinaBernardo Dominic UNQUALIFIED
Sinclair G GillianGermanyAnna Fali UNQUALIFIED
Nicolas E BowleyJapanXuxue Feng RENEWAL
Aruna X ChuiCanadaStephen Shaw NEGOTIATION
Julie R FigeroaCanadaOnyama Limba QUALIFIED
Claire Q KuskoUnited KingdomStephen Shaw UNQUALIFIED
Arvin W WaycottCanadaElwin Sharvill RENEWAL
Isabel G SchemmerSpainIvan Magalhaes NEGOTIATION
Leon K PerinJapanElwin Sharvill PROPOSAL
Mayumi X SlusarskiRussiaStephen Shaw UNQUALIFIED
Claire V SlusarskiIndiaIoni Bowcher NEGOTIATION
Cody F CaudyIndiaIoni Bowcher QUALIFIED
Wickens D StockhamAustraliaIoni Bowcher QUALIFIED
James M DilliardIndiaIoni Bowcher UNQUALIFIED
Maria P KuskoItalyXuxue Feng NEW
Faith L InouyeBrazilAsiya Javayant NEGOTIATION
Emily L FollerArgentinaAsiya Javayant UNQUALIFIED
Greenwood K NickaRussiaElwin Sharvill PROPOSAL
Deepesh C TollnerCanadaOnyama Limba NEW
Ashley Z OldroydItalyOnyama Limba NEGOTIATION
Faith D RutaItalyXuxue Feng NEW
Faith Z KolmetzBrazilIvan Magalhaes PROPOSAL
Deepesh B MorascaItalyIvan Magalhaes NEGOTIATION
Julie K StensethCanadaStephen Shaw PROPOSAL
Aruna J CampainFranceXuxue Feng UNQUALIFIED
Tony E NickaBrazilXuxue Feng PROPOSAL
Sinclair B CampainSpainStephen Shaw QUALIFIED
James I CaldareraRussiaOnyama Limba NEW
Kaitlin V FollerJapanBernardo Dominic NEGOTIATION
Ivar G RoysterIndiaStephen Shaw NEW
Octavia I InouyeUnited KingdomIvan Magalhaes UNQUALIFIED
Johnson J CampainSpainOnyama Limba QUALIFIED
Leja U RoysterRussiaXuxue Feng QUALIFIED

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