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
Cody Y GarufiFranceBernardo Dominic PROPOSAL
Stacey X GillianFranceAsiya Javayant NEW
Darci K ChuiArgentinaBernardo Dominic NEW
Kaitlin Q KuskoSpainBernardo Dominic NEW
Leja E VocelkaBrazilElwin Sharvill RENEWAL
Silvio O AmigonBrazilXuxue Feng NEW
Leon N RulapaughGermanyAsiya Javayant PROPOSAL
Stacey P MaletCanadaAnna Fali NEW
Octavia G VocelkaJapanElwin Sharvill QUALIFIED
Chavez U FollerIndiaAsiya Javayant RENEWAL
Juan H ButtRussiaAmy Elsner UNQUALIFIED
Johnson U RulapaughArgentinaBernardo Dominic NEW
Salvatore U AmigonUnited KingdomStephen Shaw NEGOTIATION
Misaki G MaletIndiaXuxue Feng NEW
Octavia A KuskoUnited KingdomAnna Fali NEW
James O CampainBrazilAsiya Javayant PROPOSAL
Kaitlin C TollnerArgentinaOnyama Limba PROPOSAL
Aika T WhobreyJapanOnyama Limba QUALIFIED
Octavia Y MorascaRussiaAsiya Javayant UNQUALIFIED
Antonio I GarufiJapanXuxue Feng NEGOTIATION
Morrow I VocelkaArgentinaAnna Fali QUALIFIED
Octavia F StensethFranceStephen Shaw PROPOSAL
Nicolas S ChuiJapanIoni Bowcher UNQUALIFIED
Leja D OstroskyRussiaAnna Fali NEW
Jefferson A WhobreyCanadaIvan Magalhaes RENEWAL
Costa V FlosiIndiaXuxue Feng RENEWAL
Munro Q FerenczCanadaIvan Magalhaes UNQUALIFIED
Salvatore K ButtArgentinaIoni Bowcher PROPOSAL
Jennifer O VenereAustraliaIvan Magalhaes NEGOTIATION
Munro D WieserUnited KingdomXuxue Feng NEW
Cody Z VocelkaIndiaAnna Fali RENEWAL
Costa Y StockhamFranceStephen Shaw PROPOSAL
Kaitlin M BriddickSpainElwin Sharvill UNQUALIFIED
Johnson A NestleFranceIoni Bowcher RENEWAL
Aika X ChuiGermanyBernardo Dominic QUALIFIED
Isabel M CampainBrazilOnyama Limba PROPOSAL
Maria J PerinFranceAsiya Javayant UNQUALIFIED
Jefferson D MorascaCanadaXuxue Feng NEW
Silvio M MaletRussiaXuxue Feng UNQUALIFIED
Clifford B RutaFranceElwin Sharvill RENEWAL
Emily O DarakjyFranceIoni Bowcher UNQUALIFIED
Ricardo X FigeroaFranceStephen Shaw RENEWAL
Jennifer I RoysterUnited KingdomBernardo Dominic PROPOSAL
Smith J BriddickRussiaElwin Sharvill NEW
Murillo Y OldroydRussiaAsiya Javayant NEGOTIATION
Morrow D MacleadAustraliaXuxue Feng NEW
Misaki U StockhamAustraliaIoni Bowcher NEW
Darci P WaycottFranceElwin Sharvill PROPOSAL
Jeanfrancois L GlickAustraliaAnna Fali QUALIFIED
Silvio M VenereUnited KingdomAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Munro C SergiArgentinaElwin Sharvill NEW
Nicolas Z DarakjyGermanyBernardo Dominic QUALIFIED
Smith W WaycottAustraliaAsiya Javayant UNQUALIFIED
James F SaylorsBrazilXuxue Feng PROPOSAL
Ashley B BriddickArgentinaAnna Fali RENEWAL
James B PerinCanadaAmy Elsner NEW
Jeanfrancois K BologniaArgentinaIvan Magalhaes UNQUALIFIED
Deepesh U ShinkoArgentinaStephen Shaw RENEWAL
Kaitlin N CaldareraBrazilIvan Magalhaes UNQUALIFIED
Jones S CaudyGermanyIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna S RoysterBrazil2026-09-23Chemel, James L Cpa UNQUALIFIED4Asiya Javayant
1001Salvatore U GauchoIndia2026-09-29Dorl, James J Esq NEGOTIATION80Ioni Bowcher
1002Smith X GauchoRussia2026-09-18King, Christopher A Esq NEGOTIATION71Asiya Javayant
1003Emily R FerenczIndia2026-09-12Feiner Bros UNQUALIFIED91Anna Fali
1004Johnson R NickaFrance2026-09-16Dorl, James J Esq NEGOTIATION74Bernardo Dominic
1005David N SergiBrazil2026-09-16Rangoni Of Florence RENEWAL33Xuxue Feng
1006Morrow A BriddickCanada2026-10-03Feltz Printing Service QUALIFIED94Xuxue Feng
1007Emily K OstroskyGermany2026-10-04Rangoni Of Florence UNQUALIFIED55Elwin Sharvill
1008Johnson Q RulapaughJapan2026-09-24Morlong Associates RENEWAL77Asiya Javayant
1009Sinclair S MarrierJapan2026-10-01Commercial Press NEW13Anna Fali
1010Ivar L PoquetteAustralia2026-09-19Truhlar And Truhlar Attys UNQUALIFIED86Asiya Javayant
1011Mayumi P KuskoBrazil2026-09-25Rousseaux, Michael Esq RENEWAL65Onyama Limba
1012Leja L StensethRussia2026-09-21Chapman, Ross E Esq PROPOSAL58Xuxue Feng
1013James Q MaletBrazil2026-10-04Chanay, Jeffrey A Esq RENEWAL78Xuxue Feng
1014Juan X DarakjyBrazil2026-09-20Buckley Miller Wright PROPOSAL36Xuxue Feng
1015Salvatore O PoquetteItaly2026-09-19Chapman, Ross E Esq RENEWAL24Anna Fali
1016Silvio B CampainSpain2026-10-08Buckley Miller Wright NEW79Bernardo Dominic
1017Arvin I DilliardItaly2026-10-10Feltz Printing Service NEGOTIATION50Ioni Bowcher
1018Ivar V BriddickItaly2026-09-16Feiner Bros QUALIFIED69Stephen Shaw
1019Ricardo F MaletJapan2026-10-06Buckley Miller Wright QUALIFIED74Bernardo Dominic
1020Morrow T FerenczUnited Kingdom2026-09-21Dorl, James J Esq PROPOSAL56Elwin Sharvill
1021James I ChuiUnited Kingdom2026-09-16Rangoni Of Florence NEGOTIATION18Ioni Bowcher
1022Silvio O OstroskyUnited Kingdom2026-09-30Commercial Press PROPOSAL49Ioni Bowcher
1023Tony Q DarakjyCanada2026-09-29Rousseaux, Michael Esq NEW76Stephen Shaw
1024Sinclair M GillianJapan2026-09-27Dorl, James J Esq NEW5Elwin Sharvill
1025Silvio K RulapaughCanada2026-09-30Truhlar And Truhlar Attys NEW93Xuxue Feng
1026Stacey F RutaIndia2026-09-14Printing Dimensions RENEWAL51Ivan Magalhaes
1027Smith K TollnerAustralia2026-09-23Chemel, James L Cpa NEW93Amy Elsner
1028Rodrigues J NickaRussia2026-09-15Rangoni Of Florence UNQUALIFIED93Bernardo Dominic
1029Chavez K PerinItaly2026-09-15Dorl, James J Esq NEW92Xuxue Feng
1030Claire M InouyeIndia2026-09-16Feltz Printing Service RENEWAL51Anna Fali
1031Alejandro K KuskoGermany2026-09-30Chanay, Jeffrey A Esq RENEWAL16Anna Fali
1032Mujtaba Z WieserBrazil2026-09-22Chemel, James L Cpa RENEWAL65Anna Fali
1033Jeanfrancois X GlickAustralia2026-09-20King, Christopher A Esq RENEWAL18Ioni Bowcher
1034Jefferson V MarrierRussia2026-09-14Benton, John B Jr UNQUALIFIED93Onyama Limba
1035Smith S BowleyRussia2026-09-26Chemel, James L Cpa NEGOTIATION42Anna Fali
1036Adams B FlosiBrazil2026-09-15Morlong Associates NEW60Amy Elsner
1037Rodrigues Z WieserJapan2026-09-30Chanay, Jeffrey A Esq RENEWAL49Bernardo Dominic
1038Ashley R CampainItaly2026-09-12Feiner Bros QUALIFIED26Amy Elsner
1039James B IturbideSpain2026-09-29Benton, John B Jr UNQUALIFIED44Ioni Bowcher
1040Izzy F MaletArgentina2026-09-11Chapman, Ross E Esq NEW15Stephen Shaw
1041Aruna M SaylorsBrazil2026-10-01Chapman, Ross E Esq NEW17Ioni Bowcher
1042Sinclair E FerenczBrazil2026-09-23Chemel, James L Cpa PROPOSAL88Stephen Shaw
1043Jefferson R CampainIndia2026-10-08Rousseaux, Michael Esq RENEWAL3Amy Elsner
1044Octavia M ButtIndia2026-10-02Rousseaux, Michael Esq NEGOTIATION9Ivan Magalhaes
1045Julie O OldroydRussia2026-09-12Chemel, James L Cpa QUALIFIED77Onyama Limba
1046Julie S VenereGermany2026-09-24Benton, John B Jr QUALIFIED27Asiya Javayant
1047Johnson A GlickRussia2026-09-15Feiner Bros QUALIFIED21Bernardo Dominic
1048Francesco Y MarrierAustralia2026-09-13Rangoni Of Florence QUALIFIED81Stephen Shaw
1049Nicolas F FollerAustralia2026-09-12Chemel, James L Cpa RENEWAL9Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Chavez C GlickUnited KingdomIvan Magalhaes QUALIFIED
James B InouyeGermanyIvan Magalhaes NEGOTIATION
James H RulapaughFranceAnna Fali NEW
Darci D BowleyItalyIoni Bowcher NEW
Cody V PerinJapanBernardo Dominic NEW
Mujtaba Q SlusarskiArgentinaIoni Bowcher UNQUALIFIED
Leon Q BriddickArgentinaAnna Fali QUALIFIED
Cody L MaletFranceXuxue Feng NEGOTIATION
Jennifer X VenereJapanAmy Elsner QUALIFIED
Morrow P AmigonSpainAsiya Javayant NEW
Ashley D MaletBrazilBernardo Dominic NEGOTIATION
Kadeem Q SlusarskiItalyElwin Sharvill NEGOTIATION
James Q FlosiRussiaAnna Fali QUALIFIED
Wickens G CampainJapanIoni Bowcher NEGOTIATION
Isabel V PaprockiFranceAnna Fali UNQUALIFIED
James V MacleadUnited KingdomElwin Sharvill UNQUALIFIED
Emily W BowleyRussiaIvan Magalhaes UNQUALIFIED
Ivar W CaldareraJapanAsiya Javayant QUALIFIED
Aika H KuskoBrazilXuxue Feng QUALIFIED
Mayumi C RimRussiaIvan Magalhaes RENEWAL
Chavez M GillianIndiaAmy Elsner QUALIFIED
Misaki C RoysterAustraliaOnyama Limba RENEWAL
Francesco W BriddickArgentinaIvan Magalhaes NEGOTIATION
Jennifer C BologniaUnited KingdomStephen Shaw RENEWAL
Salvatore Q AmigonRussiaAmy Elsner NEGOTIATION
Salvatore G AmigonRussiaOnyama Limba NEW
Sinclair H VocelkaArgentinaBernardo Dominic RENEWAL
Arvin E KuskoGermanyXuxue Feng QUALIFIED
Salvatore I DarakjySpainBernardo Dominic PROPOSAL
Isabel T RoysterGermanyBernardo Dominic UNQUALIFIED
Maisha Z AlbaresIndiaAsiya Javayant QUALIFIED
Leon J OstroskyGermanyAsiya Javayant NEW
Wickens T FlosiJapanElwin Sharvill NEGOTIATION
Julie S DarakjyBrazilAsiya Javayant RENEWAL
Isabel Y InouyeGermanyIoni Bowcher QUALIFIED
Chavez U TollnerAustraliaAsiya Javayant RENEWAL
Maisha S InouyeAustraliaStephen Shaw NEW
Misaki F DilliardIndiaElwin Sharvill UNQUALIFIED
Misaki X SchemmerUnited KingdomIoni Bowcher QUALIFIED
Deepesh I IturbideItalyStephen Shaw NEGOTIATION
Ricardo I PerinArgentinaAsiya Javayant UNQUALIFIED
Ricardo E NickaAustraliaAsiya Javayant NEW
Deepesh W IturbideUnited KingdomIvan Magalhaes NEGOTIATION
Salvatore E KolmetzAustraliaAsiya Javayant PROPOSAL
Ivar N FollerRussiaAmy Elsner NEGOTIATION
Claire O PoquetteUnited KingdomStephen Shaw PROPOSAL
Chavez B WieserGermanyOnyama Limba NEW
Tony M KolmetzUnited KingdomElwin Sharvill NEGOTIATION
Munro F CaldareraJapanAsiya Javayant RENEWAL
Alejandro W BowleySpainElwin Sharvill NEW
Frozen Columns
Name
Izzy H Bolognia
Nicolas O Sergi
Darci I Rim
Jeanfrancois C Dilliard
Darci S Doe
Munro L Maclead
Aika C Flosi
Jefferson U Sergi
Aditya W Waycott
David I Tollner
Chavez M Figeroa
Leon G Stockham
Cody E Caudy
Jefferson F Paprocki
Munro R Gaucho
Nicolas M Schemmer
Clifford C Caldarera
Maria O Rulapaugh
Jennifer C Ferencz
Ivar Y Vocelka
Stacey Q Bolognia
Maria J Butt
Sinclair T Darakjy
Leja Q Iturbide
Jefferson I Rim
Kadeem D Nestle
Alejandro U Venere
Deepesh T Caldarera
Kaitlin K Malet
David F Gillian
Leon X Sergi
Costa N Whobrey
Deepesh E Stenseth
Maisha R Stockham
Maria W Iturbide
Jefferson C Slusarski
Aika P Ostrosky
Nicolas J Perin
Chavez C Campain
Tony H Stenseth
Smith J Kusko
Jeanfrancois T Darakjy
Jennifer Z Oldroyd
Deepesh A Wieser
Emily M Ruta
Murillo Y Gillian
Munro Z Sergi
David P Garufi
Octavia C Darakjy
Octavia P Kusko
IdCountryDate
1000Italy2026-09-24
1001Japan2026-09-29
1002Australia2026-09-15
1003India2026-09-14
1004Brazil2026-10-01
1005Italy2026-10-07
1006Japan2026-10-01
1007Italy2026-09-30
1008Germany2026-09-19
1009Italy2026-10-04
1010Germany2026-09-24
1011Germany2026-09-20
1012Australia2026-09-20
1013Argentina2026-09-21
1014Canada2026-10-09
1015India2026-09-22
1016United Kingdom2026-10-02
1017Japan2026-10-10
1018Canada2026-09-28
1019Russia2026-09-27
1020Italy2026-09-18
1021Russia2026-10-03
1022Russia2026-09-20
1023Spain2026-10-02
1024Russia2026-10-01
1025Brazil2026-09-19
1026Italy2026-09-19
1027Germany2026-09-24
1028Russia2026-10-10
1029Spain2026-09-17
1030France2026-09-29
1031Argentina2026-09-16
1032Canada2026-09-26
1033Spain2026-09-29
1034Spain2026-09-29
1035Italy2026-09-15
1036Japan2026-09-12
1037Germany2026-09-24
1038Canada2026-09-14
1039Japan2026-09-17
1040France2026-09-25
1041United Kingdom2026-09-17
1042Spain2026-09-11
1043Germany2026-09-18
1044Russia2026-09-11
1045Germany2026-10-01
1046India2026-09-27
1047Germany2026-10-01
1048France2026-09-24
1049France2026-09-15

On-Demand Data

NameIdCountryDate
Juan M Gillian1000Italy2026-09-19
Costa O Waycott1001Argentina2026-09-13
Ivar W Garufi1002Russia2026-09-12
Greenwood K Vocelka1003Italy2026-10-05
Sinclair B Campain1004India2026-10-08
Misaki F Bowley1005Brazil2026-09-29
Aruna G Garufi1006Canada2026-09-12
Jefferson P Nicka1007Brazil2026-09-21
Munro E Stockham1008United Kingdom2026-09-17
Adams U Paprocki1009Australia2026-09-23
Julie Z Wieser1010France2026-09-15
Cody B Caldarera1011Italy2026-09-14
James T Royster1012United Kingdom2026-10-05
Faith S Paprocki1013Japan2026-09-23
Cody V Flosi1014India2026-09-19
Maisha E Figeroa1015Germany2026-10-10
Jones G Kusko1016Italy2026-10-10
Jefferson Z Dilliard1017France2026-09-24
Deepesh M Malet1018Russia2026-10-02
Alejandro S Tollner1019United Kingdom2026-10-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford C MacleadItalyIoni Bowcher NEGOTIATION
Tony P DoeJapanElwin Sharvill NEGOTIATION
Rodrigues W KuskoFranceAnna Fali RENEWAL
Mayumi T FollerRussiaElwin Sharvill NEW
Costa X WieserUnited KingdomAmy Elsner PROPOSAL
Leon T BologniaBrazilAmy Elsner PROPOSAL
Julie V WieserItalyStephen Shaw PROPOSAL
Chavez T MaletRussiaXuxue Feng PROPOSAL
Sinclair Y WhobreyUnited KingdomIvan Magalhaes QUALIFIED
James T RutaJapanAmy Elsner NEW
Julie X CaudyJapanAmy Elsner PROPOSAL
Cody Y DoeCanadaAmy Elsner NEGOTIATION
Ivar W SergiCanadaAnna Fali NEW
Jefferson M AmigonSpainIvan Magalhaes UNQUALIFIED
Isabel M CaldareraArgentinaOnyama Limba RENEWAL
Ashley S BowleyGermanyIvan Magalhaes RENEWAL
Jones E RulapaughCanadaAnna Fali UNQUALIFIED
Deepesh A NickaJapanIoni Bowcher UNQUALIFIED
Octavia A WaycottBrazilAnna Fali NEGOTIATION
Ricardo W KolmetzUnited KingdomIvan Magalhaes NEGOTIATION
Morrow A FollerAustraliaElwin Sharvill NEW
Emily E WaycottIndiaElwin Sharvill PROPOSAL
Kadeem W BriddickRussiaAnna Fali RENEWAL
Johnson G OldroydFranceOnyama Limba PROPOSAL
Silvio T NickaFranceXuxue Feng QUALIFIED
Isabel T RulapaughIndiaIvan Magalhaes UNQUALIFIED
Aditya P OldroydFranceStephen Shaw UNQUALIFIED
Jones H VocelkaBrazilIoni Bowcher RENEWAL
Jones I MaletArgentinaAmy Elsner NEGOTIATION
Nicolas F StensethJapanStephen Shaw QUALIFIED
Cody D ButtAustraliaAsiya Javayant NEW
Rodrigues T CaldareraJapanAmy Elsner PROPOSAL
Jones W ButtIndiaOnyama Limba QUALIFIED
Adams Z VocelkaAustraliaXuxue Feng RENEWAL
David X ChuiSpainAmy Elsner NEW
Jones E DoeItalyElwin Sharvill NEGOTIATION
Claire B StensethGermanyBernardo Dominic NEGOTIATION
Aika L VenereItalyElwin Sharvill UNQUALIFIED
Greenwood D OstroskyUnited KingdomXuxue Feng RENEWAL
Rodrigues H WieserIndiaAnna Fali NEGOTIATION

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