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
Chavez D KuskoBrazilIoni Bowcher UNQUALIFIED
Darci B GarufiCanadaXuxue Feng PROPOSAL
Jeanfrancois F TollnerBrazilStephen Shaw QUALIFIED
Sinclair M DarakjyFranceElwin Sharvill PROPOSAL
Octavia T RoysterJapanIoni Bowcher UNQUALIFIED
Izzy K GauchoArgentinaIoni Bowcher NEGOTIATION
Octavia U FerenczFranceAsiya Javayant PROPOSAL
Murillo Q ChuiRussiaOnyama Limba QUALIFIED
Arvin R VenereJapanElwin Sharvill RENEWAL
Adams O AlbaresArgentinaOnyama Limba UNQUALIFIED
James T BologniaAustraliaOnyama Limba NEGOTIATION
Nicolas S AmigonBrazilIvan Magalhaes UNQUALIFIED
Faith Z WaycottAustraliaBernardo Dominic PROPOSAL
Faith X CaudyIndiaAnna Fali NEGOTIATION
Ivar B SaylorsAustraliaStephen Shaw RENEWAL
Tony Z RulapaughUnited KingdomElwin Sharvill QUALIFIED
Ivar T StockhamArgentinaIoni Bowcher PROPOSAL
Adams A AlbaresSpainBernardo Dominic PROPOSAL
Greenwood N SergiItalyOnyama Limba QUALIFIED
Cody F WieserFranceIoni Bowcher QUALIFIED
Cody V SergiFranceBernardo Dominic RENEWAL
Julie W StensethBrazilXuxue Feng NEW
Wickens F MacleadAustraliaBernardo Dominic PROPOSAL
Nicolas Y PoquetteArgentinaAsiya Javayant RENEWAL
Kadeem Z FlosiCanadaAmy Elsner RENEWAL
Octavia K WaycottSpainOnyama Limba QUALIFIED
Smith N VenereSpainAmy Elsner NEW
Stacey X SaylorsRussiaElwin Sharvill PROPOSAL
Francesco F RutaCanadaIvan Magalhaes QUALIFIED
Aruna Q ChuiRussiaIvan Magalhaes UNQUALIFIED
Costa F SaylorsIndiaAnna Fali PROPOSAL
Jones U FigeroaUnited KingdomOnyama Limba UNQUALIFIED
Leja R WaycottArgentinaBernardo Dominic NEW
Darci T DilliardRussiaBernardo Dominic RENEWAL
Maria J CaldareraJapanStephen Shaw NEGOTIATION
Stacey C MorascaAustraliaAmy Elsner RENEWAL
Isabel M RoysterUnited KingdomAnna Fali NEW
Claire P NestleItalyBernardo Dominic NEW
Morrow Y WaycottSpainOnyama Limba RENEWAL
Smith X FerenczItalyOnyama Limba NEGOTIATION
Jefferson F GlickFranceAnna Fali NEW
Jefferson M CampainCanadaAnna Fali PROPOSAL
Mayumi J MorascaBrazilOnyama Limba NEGOTIATION
Octavia N GauchoAustraliaStephen Shaw UNQUALIFIED
Salvatore P SaylorsCanadaElwin Sharvill NEGOTIATION
Claire W KolmetzSpainElwin Sharvill UNQUALIFIED
James Y FerenczUnited KingdomElwin Sharvill NEGOTIATION
Aruna X PoquetteGermanyIoni Bowcher NEGOTIATION
Johnson G DilliardIndiaIvan Magalhaes RENEWAL
Salvatore R MorascaFranceAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Mayumi I VocelkaJapanIvan Magalhaes PROPOSAL
Leja D DarakjyItalyBernardo Dominic NEGOTIATION
Kadeem N BologniaAustraliaBernardo Dominic NEW
Kaitlin S RoysterBrazilXuxue Feng NEGOTIATION
Emily X RimJapanIvan Magalhaes PROPOSAL
Murillo O BriddickRussiaIoni Bowcher RENEWAL
Clifford A CaldareraRussiaStephen Shaw PROPOSAL
Maria G CampainArgentinaAsiya Javayant QUALIFIED
Chavez R SlusarskiBrazilIoni Bowcher RENEWAL
Costa N RoysterAustraliaXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith U PerinGermany2026-10-31Feiner Bros NEGOTIATION92Bernardo Dominic
1001Izzy W OldroydArgentina2026-10-26Benton, John B Jr PROPOSAL83Ioni Bowcher
1002James X CaldareraRussia2026-10-05Feiner Bros QUALIFIED66Amy Elsner
1003Wickens H VenereGermany2026-10-21Feltz Printing Service QUALIFIED78Onyama Limba
1004Clifford Q StockhamIndia2026-10-18Benton, John B Jr QUALIFIED79Anna Fali
1005Jones B GlickSpain2026-10-16Chapman, Ross E Esq NEGOTIATION35Bernardo Dominic
1006Maria Y StensethJapan2026-11-03Buckley Miller Wright QUALIFIED83Onyama Limba
1007Rodrigues A BriddickUnited Kingdom2026-11-02Rousseaux, Michael Esq QUALIFIED35Xuxue Feng
1008James W VocelkaBrazil2026-10-16Morlong Associates NEW35Stephen Shaw
1009Greenwood C PerinFrance2026-10-22Feltz Printing Service NEGOTIATION91Anna Fali
1010Claire N BowleyAustralia2026-11-02Printing Dimensions QUALIFIED32Ivan Magalhaes
1011Ivar N GarufiItaly2026-10-14Feltz Printing Service NEGOTIATION69Elwin Sharvill
1012Juan Y FollerBrazil2026-11-03Rangoni Of Florence PROPOSAL62Ioni Bowcher
1013Morrow O GarufiIndia2026-10-31Buckley Miller Wright NEW33Xuxue Feng
1014Jones A GarufiFrance2026-10-28Commercial Press NEW70Amy Elsner
1015Silvio U DarakjyIndia2026-10-17Chanay, Jeffrey A Esq NEW44Bernardo Dominic
1016Jennifer W MorascaCanada2026-10-17Dorl, James J Esq RENEWAL34Xuxue Feng
1017Julie T WaycottIndia2026-10-13Feiner Bros NEGOTIATION24Stephen Shaw
1018Jeanfrancois R KuskoArgentina2026-11-01Rangoni Of Florence NEGOTIATION78Asiya Javayant
1019Nicolas J AlbaresItaly2026-10-06Benton, John B Jr NEGOTIATION84Onyama Limba
1020Antonio C IturbideArgentina2026-10-15King, Christopher A Esq UNQUALIFIED32Bernardo Dominic
1021Leja O OldroydRussia2026-10-24Printing Dimensions RENEWAL9Ioni Bowcher
1022Emily S MaletJapan2026-11-01Morlong Associates RENEWAL95Asiya Javayant
1023Jefferson O AmigonJapan2026-10-14Chemel, James L Cpa UNQUALIFIED92Ivan Magalhaes
1024Izzy B SlusarskiItaly2026-10-30Rousseaux, Michael Esq RENEWAL35Bernardo Dominic
1025Sinclair A ShinkoAustralia2026-11-02Buckley Miller Wright NEGOTIATION6Ioni Bowcher
1026Clifford B TollnerArgentina2026-10-26Chemel, James L Cpa PROPOSAL11Bernardo Dominic
1027Aditya H SaylorsGermany2026-10-29King, Christopher A Esq NEGOTIATION25Ioni Bowcher
1028Ricardo L InouyeArgentina2026-10-30Feltz Printing Service NEW39Onyama Limba
1029Kaitlin A MarrierFrance2026-10-31King, Christopher A Esq RENEWAL23Anna Fali
1030Ashley I OldroydCanada2026-10-18Commercial Press RENEWAL26Ioni Bowcher
1031Deepesh W VocelkaCanada2026-10-24Commercial Press RENEWAL29Onyama Limba
1032Chavez L RutaUnited Kingdom2026-10-22King, Christopher A Esq UNQUALIFIED33Asiya Javayant
1033Deepesh A ChuiFrance2026-10-15Chemel, James L Cpa QUALIFIED29Amy Elsner
1034Adams N MacleadRussia2026-10-11Rangoni Of Florence NEW54Anna Fali
1035Leja N MaletRussia2026-10-17Rangoni Of Florence NEW96Ioni Bowcher
1036David H SlusarskiCanada2026-10-07Chemel, James L Cpa NEGOTIATION65Asiya Javayant
1037Sinclair H MaletBrazil2026-10-29Rousseaux, Michael Esq RENEWAL77Ivan Magalhaes
1038Arvin K BologniaBrazil2026-10-10Feltz Printing Service NEW28Anna Fali
1039Kaitlin I ButtRussia2026-10-15Buckley Miller Wright RENEWAL80Amy Elsner
1040Jeanfrancois I BowleyAustralia2026-10-18Rangoni Of Florence UNQUALIFIED85Ioni Bowcher
1041Francesco I BowleyArgentina2026-10-28Commercial Press QUALIFIED35Anna Fali
1042Deepesh J StockhamAustralia2026-10-09King, Christopher A Esq RENEWAL11Stephen Shaw
1043Munro C VocelkaIndia2026-11-01Dorl, James J Esq NEW98Amy Elsner
1044Kaitlin Y TollnerGermany2026-10-22Commercial Press PROPOSAL43Onyama Limba
1045Clifford D SchemmerUnited Kingdom2026-10-23Truhlar And Truhlar Attys RENEWAL22Stephen Shaw
1046James F BriddickItaly2026-10-14Chemel, James L Cpa NEGOTIATION58Anna Fali
1047Octavia J GillianFrance2026-10-16King, Christopher A Esq NEW22Stephen Shaw
1048Aditya F BowleyRussia2026-10-05Chemel, James L Cpa QUALIFIED19Amy Elsner
1049Leja X IturbideRussia2026-10-11Commercial Press RENEWAL71Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Deepesh E GarufiFranceAnna Fali UNQUALIFIED
Deepesh A MacleadUnited KingdomIvan Magalhaes UNQUALIFIED
Clifford I ChuiSpainStephen Shaw QUALIFIED
Isabel F KolmetzGermanyIoni Bowcher NEW
Adams P MaletRussiaIvan Magalhaes RENEWAL
Maria I GarufiBrazilXuxue Feng RENEWAL
Jones H PaprockiBrazilOnyama Limba RENEWAL
Francesco Z RimGermanyIoni Bowcher QUALIFIED
Leon W GauchoAustraliaStephen Shaw QUALIFIED
Ashley J TollnerGermanyOnyama Limba NEGOTIATION
Ricardo C GillianCanadaElwin Sharvill NEW
Chavez B GauchoArgentinaAsiya Javayant NEW
Mujtaba T DilliardSpainAsiya Javayant PROPOSAL
Emily A PaprockiJapanElwin Sharvill PROPOSAL
Mayumi M TollnerItalyXuxue Feng RENEWAL
Jeanfrancois G MarrierBrazilAmy Elsner RENEWAL
Aditya R FerenczArgentinaAnna Fali RENEWAL
Smith I FlosiBrazilIvan Magalhaes NEGOTIATION
Maria C BowleyGermanyOnyama Limba RENEWAL
Silvio O TollnerItalyOnyama Limba NEW
Arvin H FlosiBrazilAmy Elsner NEGOTIATION
Leon K KolmetzSpainElwin Sharvill NEW
Aika D RutaAustraliaAmy Elsner UNQUALIFIED
Arvin D DoeRussiaAmy Elsner PROPOSAL
Jones E DoeIndiaAsiya Javayant NEGOTIATION
Mujtaba X PerinSpainAsiya Javayant QUALIFIED
Juan Q VocelkaArgentinaAsiya Javayant RENEWAL
Silvio F NickaUnited KingdomAsiya Javayant QUALIFIED
Arvin Z ChuiSpainAnna Fali NEGOTIATION
Francesco M AlbaresBrazilIoni Bowcher QUALIFIED
Jennifer G StensethAustraliaOnyama Limba NEW
Aruna Y FigeroaBrazilAsiya Javayant RENEWAL
Emily X RimIndiaAnna Fali NEGOTIATION
Aruna J GillianRussiaStephen Shaw UNQUALIFIED
Salvatore O InouyeRussiaBernardo Dominic UNQUALIFIED
Adams P MorascaSpainBernardo Dominic QUALIFIED
Adams I BologniaRussiaOnyama Limba RENEWAL
Isabel R KolmetzGermanyIvan Magalhaes NEGOTIATION
Smith F FerenczJapanAmy Elsner NEW
Maisha A BologniaIndiaStephen Shaw QUALIFIED
Ricardo Z StensethGermanyAmy Elsner PROPOSAL
Salvatore P TollnerJapanIoni Bowcher RENEWAL
Aruna D WaycottGermanyAnna Fali NEGOTIATION
Costa T CaudyCanadaAmy Elsner NEW
Salvatore S FollerAustraliaXuxue Feng PROPOSAL
Antonio P OldroydBrazilElwin Sharvill NEGOTIATION
Maisha Q InouyeUnited KingdomXuxue Feng NEW
Emily J StockhamItalyBernardo Dominic UNQUALIFIED
Octavia Q KolmetzRussiaAmy Elsner NEGOTIATION
Julie A NickaSpainXuxue Feng NEW
Frozen Columns
Name
Kadeem N Gaucho
Ashley H Darakjy
Maisha A Maclead
Sinclair V Stockham
Jennifer M Caudy
Costa F Paprocki
Morrow S Maclead
Ivar R Ostrosky
Francesco D Nestle
Mayumi U Garufi
Stacey P Garufi
Murillo K Malet
Mujtaba J Iturbide
Darci C Darakjy
Mayumi R Amigon
Maisha M Ostrosky
Johnson S Kusko
James Q Slusarski
David Q Tollner
Kaitlin L Oldroyd
Jones D Saylors
Ricardo S Doe
Maisha S Rulapaugh
Murillo T Shinko
Leja J Gillian
Stacey C Saylors
Morrow W Darakjy
Octavia H Bowley
Morrow W Ruta
Aditya P Iturbide
Cody L Iturbide
Misaki G Briddick
Rodrigues T Foller
James Z Kusko
David N Nicka
Clifford W Butt
Juan N Caldarera
David W Doe
Juan Z Marrier
Aika X Kolmetz
Tony P Stockham
Rodrigues T Sergi
Aika N Whobrey
Sinclair T Figeroa
Maria I Flosi
Maria W Waycott
Tony K Figeroa
Jeanfrancois N Maclead
Nicolas T Whobrey
Jeanfrancois F Maclead
IdCountryDate
1000Germany2026-10-22
1001Argentina2026-10-27
1002Italy2026-10-20
1003United Kingdom2026-10-19
1004France2026-10-21
1005Brazil2026-10-12
1006Russia2026-10-26
1007Germany2026-10-26
1008France2026-10-11
1009France2026-11-02
1010France2026-10-14
1011Italy2026-10-09
1012Australia2026-10-31
1013Germany2026-10-16
1014France2026-10-19
1015Canada2026-10-29
1016Germany2026-10-15
1017Argentina2026-10-14
1018Germany2026-10-22
1019Germany2026-10-21
1020India2026-10-22
1021Russia2026-10-23
1022Japan2026-10-31
1023Australia2026-10-18
1024Japan2026-10-22
1025France2026-10-28
1026Canada2026-10-26
1027Argentina2026-10-08
1028Japan2026-10-22
1029Russia2026-10-26
1030Italy2026-11-02
1031Australia2026-10-07
1032United Kingdom2026-10-13
1033Argentina2026-10-25
1034Germany2026-11-03
1035Japan2026-10-30
1036Germany2026-10-13
1037Brazil2026-10-07
1038Spain2026-10-08
1039Russia2026-10-26
1040Russia2026-10-10
1041France2026-10-28
1042France2026-10-26
1043Russia2026-10-31
1044Russia2026-10-23
1045India2026-10-19
1046Russia2026-10-25
1047Italy2026-10-14
1048Australia2026-10-28
1049Italy2026-10-09

On-Demand Data

NameIdCountryDate
Aditya T Maclead1000Brazil2026-11-03
Arvin L Gillian1001Germany2026-11-02
Darci F Dilliard1002Italy2026-10-14
David B Oldroyd1003United Kingdom2026-10-20
Faith S Briddick1004Spain2026-10-21
Aruna G Bolognia1005Germany2026-10-12
Maria V Figeroa1006Italy2026-10-19
Silvio Q Perin1007Canada2026-10-10
Leon S Royster1008India2026-10-14
David Q Briddick1009Italy2026-10-30
Smith U Ferencz1010Brazil2026-10-05
Maria R Waycott1011France2026-11-03
Mayumi M Inouye1012Australia2026-10-16
David D Shinko1013Japan2026-10-07
Jeanfrancois H Campain1014United Kingdom2026-10-07
Faith M Stenseth1015Japan2026-10-20
Clifford P Kolmetz1016Spain2026-10-22
Aruna V Tollner1017Australia2026-10-27
Ivar Y Bowley1018Germany2026-10-06
Arvin K Malet1019France2026-10-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens Z AmigonArgentinaXuxue Feng RENEWAL
Kaitlin E MaletGermanyElwin Sharvill NEW
Faith Y VocelkaArgentinaAsiya Javayant QUALIFIED
Ashley T TollnerCanadaAnna Fali RENEWAL
Sinclair O ButtIndiaIoni Bowcher NEW
Octavia G GauchoUnited KingdomAnna Fali QUALIFIED
Faith M MorascaFranceAsiya Javayant RENEWAL
Sinclair Y AlbaresItalyAnna Fali NEGOTIATION
Leja O DoeItalyElwin Sharvill NEW
Greenwood L RulapaughCanadaAmy Elsner NEGOTIATION
Jeanfrancois Q AlbaresGermanyBernardo Dominic PROPOSAL
Aditya D GlickGermanyIoni Bowcher UNQUALIFIED
Johnson T ChuiGermanyXuxue Feng PROPOSAL
Kadeem H CaldareraCanadaOnyama Limba PROPOSAL
Greenwood M RimAustraliaXuxue Feng RENEWAL
Alejandro E NickaIndiaAmy Elsner PROPOSAL
Darci D VocelkaCanadaStephen Shaw PROPOSAL
Leon V NickaArgentinaStephen Shaw NEW
Sinclair E SaylorsJapanIoni Bowcher NEGOTIATION
Mayumi K SlusarskiJapanAnna Fali NEW
Julie C OstroskyItalyIvan Magalhaes UNQUALIFIED
Costa O VocelkaItalyElwin Sharvill QUALIFIED
Ricardo R FigeroaCanadaElwin Sharvill UNQUALIFIED
Aika K WieserJapanIoni Bowcher NEW
Jennifer H PoquetteItalyIoni Bowcher QUALIFIED
Jeanfrancois Q FerenczRussiaIoni Bowcher UNQUALIFIED
Juan Y OstroskyRussiaStephen Shaw PROPOSAL
Claire X GarufiSpainAsiya Javayant NEGOTIATION
Juan E MacleadCanadaElwin Sharvill QUALIFIED
Deepesh N MacleadAustraliaElwin Sharvill UNQUALIFIED
Jeanfrancois K ChuiBrazilIoni Bowcher PROPOSAL
Murillo F SlusarskiItalyAsiya Javayant UNQUALIFIED
Tony F FlosiSpainAsiya Javayant NEW
Aruna J RimAustraliaIvan Magalhaes PROPOSAL
Aruna P GauchoBrazilIoni Bowcher QUALIFIED
Isabel A OldroydGermanyXuxue Feng QUALIFIED
Deepesh Y CaldareraFranceIvan Magalhaes NEGOTIATION
Mujtaba F FollerGermanyIoni Bowcher QUALIFIED
Silvio Y FollerJapanIvan Magalhaes NEW
Salvatore N TollnerItalyElwin Sharvill UNQUALIFIED

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