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
Salvatore F VenereCanadaOnyama Limba UNQUALIFIED
Misaki F AmigonAustraliaAsiya Javayant UNQUALIFIED
Kadeem R GillianGermanyIoni Bowcher RENEWAL
Octavia R SaylorsFranceElwin Sharvill RENEWAL
Morrow L MarrierAustraliaAmy Elsner PROPOSAL
Deepesh Y WieserArgentinaIoni Bowcher UNQUALIFIED
Smith T KolmetzBrazilXuxue Feng UNQUALIFIED
Silvio F PaprockiUnited KingdomIoni Bowcher NEGOTIATION
Jefferson N DoeSpainXuxue Feng UNQUALIFIED
Ivar O GlickItalyOnyama Limba PROPOSAL
Costa S WieserIndiaOnyama Limba QUALIFIED
Adams X OldroydRussiaIoni Bowcher NEGOTIATION
Silvio F VenereSpainIvan Magalhaes QUALIFIED
Deepesh M SaylorsAustraliaStephen Shaw NEGOTIATION
Jennifer A RulapaughAustraliaAmy Elsner QUALIFIED
Morrow I ChuiGermanyStephen Shaw NEGOTIATION
Adams J VenereSpainAsiya Javayant NEW
Smith Y MacleadUnited KingdomOnyama Limba QUALIFIED
Octavia G StensethSpainIoni Bowcher UNQUALIFIED
Antonio I OldroydSpainAmy Elsner RENEWAL
James W VocelkaItalyBernardo Dominic QUALIFIED
Leja Y ChuiGermanyXuxue Feng UNQUALIFIED
Alejandro E DarakjyRussiaElwin Sharvill RENEWAL
Ricardo B RutaCanadaAsiya Javayant NEW
Faith R FlosiCanadaStephen Shaw RENEWAL
Arvin S PoquetteArgentinaAnna Fali RENEWAL
Octavia M MaletAustraliaBernardo Dominic QUALIFIED
Isabel F TollnerRussiaElwin Sharvill RENEWAL
Julie T GarufiAustraliaAsiya Javayant NEW
Aika B RimFranceIvan Magalhaes NEGOTIATION
Alejandro C SchemmerFranceStephen Shaw PROPOSAL
Jeanfrancois H GillianIndiaAsiya Javayant UNQUALIFIED
Stacey W BowleySpainOnyama Limba QUALIFIED
Antonio B FerenczFranceOnyama Limba NEW
Darci Y GarufiItalyIoni Bowcher PROPOSAL
Jefferson M FigeroaBrazilIvan Magalhaes UNQUALIFIED
James I RulapaughArgentinaStephen Shaw PROPOSAL
Maisha E StensethJapanAmy Elsner QUALIFIED
Emily W WieserArgentinaOnyama Limba PROPOSAL
Jefferson I ShinkoIndiaAnna Fali RENEWAL
Leja J VenereJapanXuxue Feng UNQUALIFIED
Cody U AlbaresSpainOnyama Limba UNQUALIFIED
Smith I RulapaughItalyXuxue Feng QUALIFIED
Murillo G ShinkoRussiaIvan Magalhaes UNQUALIFIED
Aditya E BowleyCanadaBernardo Dominic PROPOSAL
Misaki Z VocelkaItalyAsiya Javayant RENEWAL
Adams L MarrierIndiaIvan Magalhaes NEGOTIATION
Jefferson P ButtUnited KingdomAnna Fali NEGOTIATION
Izzy Q StensethBrazilAmy Elsner RENEWAL
Nicolas M RutaCanadaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Emily W KuskoGermanyStephen Shaw QUALIFIED
Ashley A RutaUnited KingdomIoni Bowcher PROPOSAL
Ricardo V AlbaresGermanyIvan Magalhaes PROPOSAL
Silvio M SchemmerUnited KingdomIoni Bowcher NEW
Maisha P FlosiBrazilElwin Sharvill UNQUALIFIED
Izzy K BriddickCanadaBernardo Dominic NEGOTIATION
David B MaletJapanIvan Magalhaes NEGOTIATION
Aditya M RimJapanAmy Elsner PROPOSAL
Jones N KuskoRussiaBernardo Dominic NEGOTIATION
Ricardo N DarakjyRussiaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin R ShinkoUnited Kingdom2026-10-13Morlong Associates NEW32Amy Elsner
1001Isabel W TollnerFrance2026-10-30Rousseaux, Michael Esq UNQUALIFIED70Amy Elsner
1002Aditya N FigeroaSpain2026-10-14Rangoni Of Florence QUALIFIED78Elwin Sharvill
1003Leon D PoquetteItaly2026-10-21Morlong Associates QUALIFIED69Bernardo Dominic
1004Tony Z StockhamArgentina2026-10-23Commercial Press PROPOSAL55Anna Fali
1005Leon H OstroskyGermany2026-10-22King, Christopher A Esq RENEWAL8Ioni Bowcher
1006Tony W CampainIndia2026-10-14Feiner Bros NEW20Stephen Shaw
1007Greenwood E PaprockiAustralia2026-10-28Chanay, Jeffrey A Esq PROPOSAL8Ivan Magalhaes
1008Jefferson H MarrierJapan2026-10-28Rangoni Of Florence PROPOSAL7Bernardo Dominic
1009Jennifer C RimCanada2026-10-13Rangoni Of Florence RENEWAL41Stephen Shaw
1010Kaitlin M PaprockiGermany2026-10-31Commercial Press QUALIFIED79Elwin Sharvill
1011Octavia C NestleIndia2026-11-06King, Christopher A Esq UNQUALIFIED36Ioni Bowcher
1012Chavez U BowleyArgentina2026-11-06Benton, John B Jr QUALIFIED88Elwin Sharvill
1013Jeanfrancois N SlusarskiSpain2026-11-11Buckley Miller Wright UNQUALIFIED31Anna Fali
1014Francesco N SergiItaly2026-10-19Benton, John B Jr QUALIFIED56Bernardo Dominic
1015Mayumi L CaldareraCanada2026-10-22Printing Dimensions RENEWAL95Elwin Sharvill
1016Ricardo H IturbideGermany2026-10-20Chapman, Ross E Esq NEW87Stephen Shaw
1017Adams S RoysterCanada2026-11-11Dorl, James J Esq RENEWAL51Xuxue Feng
1018Adams C CampainArgentina2026-10-31Feiner Bros UNQUALIFIED87Bernardo Dominic
1019Isabel L CampainGermany2026-11-10Truhlar And Truhlar Attys QUALIFIED49Onyama Limba
1020Octavia M TollnerArgentina2026-10-17Feiner Bros NEW32Asiya Javayant
1021Ivar S RimRussia2026-11-11Dorl, James J Esq NEW4Stephen Shaw
1022Clifford U NickaFrance2026-11-09Buckley Miller Wright QUALIFIED47Xuxue Feng
1023Octavia W NestleJapan2026-11-06Feltz Printing Service NEW65Anna Fali
1024Chavez B FlosiGermany2026-10-25Buckley Miller Wright UNQUALIFIED3Anna Fali
1025Jones D StensethGermany2026-10-31Buckley Miller Wright RENEWAL24Asiya Javayant
1026Francesco A SlusarskiFrance2026-10-17Truhlar And Truhlar Attys PROPOSAL86Stephen Shaw
1027Nicolas Y SchemmerJapan2026-10-18Rousseaux, Michael Esq PROPOSAL84Ivan Magalhaes
1028Maria H NickaJapan2026-10-13Morlong Associates RENEWAL85Onyama Limba
1029Emily Q KolmetzRussia2026-10-22King, Christopher A Esq NEW56Ivan Magalhaes
1030Jefferson Y InouyeUnited Kingdom2026-10-23Commercial Press QUALIFIED74Asiya Javayant
1031Juan R CaudySpain2026-10-30Feltz Printing Service PROPOSAL78Anna Fali
1032Deepesh T VocelkaJapan2026-11-06Chapman, Ross E Esq QUALIFIED54Ivan Magalhaes
1033Wickens Q SchemmerFrance2026-11-09Morlong Associates NEW52Onyama Limba
1034Octavia T WieserCanada2026-10-28Dorl, James J Esq NEW54Asiya Javayant
1035Smith O CaldareraSpain2026-11-06Chemel, James L Cpa QUALIFIED62Stephen Shaw
1036Aditya G SergiUnited Kingdom2026-10-22King, Christopher A Esq RENEWAL96Onyama Limba
1037Ricardo Y OldroydSpain2026-10-13Feiner Bros UNQUALIFIED92Xuxue Feng
1038Clifford M WieserRussia2026-10-14Printing Dimensions QUALIFIED39Amy Elsner
1039Ricardo O PoquetteUnited Kingdom2026-10-17Printing Dimensions QUALIFIED51Xuxue Feng
1040Claire W OstroskyAustralia2026-10-16Chemel, James L Cpa PROPOSAL78Onyama Limba
1041Jefferson E SaylorsCanada2026-10-27Chemel, James L Cpa QUALIFIED49Amy Elsner
1042Sinclair M BriddickRussia2026-10-28Printing Dimensions UNQUALIFIED66Ivan Magalhaes
1043Clifford K GauchoArgentina2026-10-16Printing Dimensions QUALIFIED37Onyama Limba
1044Deepesh B NestleJapan2026-11-01Chapman, Ross E Esq PROPOSAL20Onyama Limba
1045David E SergiArgentina2026-10-17Chanay, Jeffrey A Esq RENEWAL53Ivan Magalhaes
1046Jefferson G WhobreyCanada2026-11-03Benton, John B Jr NEW8Anna Fali
1047Octavia H MacleadCanada2026-10-30Truhlar And Truhlar Attys QUALIFIED85Anna Fali
1048Aika H WieserAustralia2026-10-25Feltz Printing Service NEGOTIATION43Elwin Sharvill
1049Munro U FerenczRussia2026-10-22Benton, John B Jr UNQUALIFIED20Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Arvin K WhobreyBrazilAmy Elsner NEW
Salvatore C OldroydJapanAnna Fali QUALIFIED
Jennifer L BriddickArgentinaElwin Sharvill PROPOSAL
Kaitlin N BologniaGermanyAmy Elsner UNQUALIFIED
Nicolas Y ChuiJapanElwin Sharvill RENEWAL
Cody J SlusarskiGermanyAsiya Javayant NEGOTIATION
Salvatore T FollerJapanAnna Fali PROPOSAL
James Y ChuiUnited KingdomStephen Shaw QUALIFIED
Faith X PerinItalyElwin Sharvill NEGOTIATION
Francesco R PoquetteAustraliaElwin Sharvill QUALIFIED
Chavez N MaletSpainIoni Bowcher PROPOSAL
Johnson G DilliardSpainAsiya Javayant NEW
Salvatore H ShinkoCanadaStephen Shaw NEGOTIATION
Smith S KuskoFranceXuxue Feng NEW
Smith M SchemmerIndiaElwin Sharvill NEGOTIATION
Aruna G GauchoIndiaElwin Sharvill RENEWAL
Adams F MorascaCanadaAsiya Javayant UNQUALIFIED
Misaki H BriddickSpainIoni Bowcher NEW
Leon T FigeroaItalyAmy Elsner UNQUALIFIED
Leja R BologniaJapanIvan Magalhaes UNQUALIFIED
Kaitlin F AmigonCanadaAnna Fali PROPOSAL
Ashley R PaprockiUnited KingdomElwin Sharvill NEGOTIATION
Aditya P FollerItalyAmy Elsner NEW
Jennifer Z GarufiSpainAnna Fali RENEWAL
Octavia W WhobreyArgentinaIoni Bowcher RENEWAL
Salvatore Z AlbaresGermanyIoni Bowcher NEGOTIATION
Sinclair K SlusarskiGermanyOnyama Limba NEGOTIATION
Silvio O CaudyBrazilIoni Bowcher RENEWAL
Tony W WaycottRussiaXuxue Feng NEW
Francesco N PerinItalyIoni Bowcher QUALIFIED
Kaitlin K FollerBrazilAmy Elsner RENEWAL
Ricardo H AlbaresGermanyOnyama Limba QUALIFIED
Salvatore K AmigonGermanyElwin Sharvill NEW
Rodrigues Z MorascaSpainStephen Shaw PROPOSAL
Octavia F DoeSpainElwin Sharvill NEW
James D NestleIndiaIvan Magalhaes QUALIFIED
Smith G OstroskyAustraliaXuxue Feng NEW
Emily U OldroydUnited KingdomXuxue Feng NEW
Clifford Z GlickBrazilIvan Magalhaes NEW
Juan U DoeAustraliaStephen Shaw QUALIFIED
Jones K OldroydJapanOnyama Limba NEW
Jeanfrancois U BowleyFranceIvan Magalhaes UNQUALIFIED
Arvin Y RoysterCanadaBernardo Dominic PROPOSAL
Cody V FigeroaSpainAnna Fali QUALIFIED
Aika S MaletBrazilXuxue Feng RENEWAL
Chavez T FerenczCanadaAnna Fali NEW
Clifford R RoysterItalyAsiya Javayant UNQUALIFIED
Leon M MaletRussiaAsiya Javayant RENEWAL
Jefferson A CaldareraAustraliaBernardo Dominic NEGOTIATION
Greenwood Y SlusarskiItalyBernardo Dominic NEGOTIATION
Frozen Columns
Name
Mayumi K Rulapaugh
Jones N Ferencz
Silvio G Dilliard
Salvatore N Campain
Misaki Q Ostrosky
Aika F Kusko
Ricardo S Sergi
Silvio P Sergi
Jennifer D Figeroa
Johnson H Foller
Deepesh A Maclead
Mayumi L Chui
Faith S Saylors
Izzy S Dilliard
Adams D Slusarski
Misaki N Rim
James A Tollner
Maisha G Whobrey
Leon U Gillian
Ashley D Venere
Ashley C Butt
Maisha Y Ostrosky
Chavez A Doe
Costa P Figeroa
Juan W Campain
Salvatore Y Caldarera
Jefferson X Vocelka
Jennifer L Rim
Jefferson X Garufi
Clifford R Glick
Morrow C Malet
Stacey Q Doe
Salvatore D Royster
Misaki B Gaucho
Francesco P Tollner
Aika A Shinko
Jefferson R Malet
Octavia Y Albares
Johnson A Kusko
Jeanfrancois X Ruta
Darci R Perin
Antonio Y Saylors
Greenwood Y Butt
Darci K Slusarski
Antonio W Morasca
Ricardo K Kusko
Cody Y Chui
Isabel H Inouye
Jones P Chui
Misaki D Chui
IdCountryDate
1000Canada2026-10-29
1001India2026-11-10
1002Canada2026-11-01
1003Canada2026-10-24
1004Argentina2026-10-18
1005Spain2026-10-29
1006Japan2026-11-11
1007Japan2026-11-06
1008Canada2026-11-03
1009Australia2026-10-16
1010Canada2026-11-11
1011Russia2026-10-25
1012Spain2026-11-11
1013France2026-10-13
1014United Kingdom2026-10-21
1015India2026-11-07
1016India2026-11-02
1017Argentina2026-11-09
1018Australia2026-11-07
1019Argentina2026-10-20
1020Argentina2026-10-18
1021France2026-10-15
1022Canada2026-10-22
1023France2026-10-23
1024Russia2026-10-13
1025Japan2026-11-08
1026Canada2026-10-19
1027Argentina2026-11-11
1028Australia2026-10-27
1029Italy2026-10-23
1030Japan2026-11-05
1031Germany2026-10-16
1032Italy2026-10-21
1033Japan2026-10-25
1034Italy2026-10-17
1035Canada2026-10-18
1036Italy2026-10-29
1037Germany2026-11-03
1038Argentina2026-11-05
1039Canada2026-10-30
1040Germany2026-10-22
1041Italy2026-11-05
1042Argentina2026-11-10
1043Russia2026-11-05
1044United Kingdom2026-10-16
1045Italy2026-11-11
1046Spain2026-11-05
1047India2026-11-04
1048India2026-10-16
1049Argentina2026-10-16

On-Demand Data

NameIdCountryDate
Arvin U Briddick1000Canada2026-11-02
Morrow N Whobrey1001France2026-10-15
Jones P Albares1002India2026-10-14
Chavez H Ferencz1003Germany2026-11-05
Costa P Ostrosky1004Argentina2026-11-05
Ricardo G Whobrey1005Russia2026-10-18
Salvatore H Sergi1006Brazil2026-10-20
Silvio V Inouye1007France2026-10-29
David P Ostrosky1008Germany2026-10-31
Deepesh G Malet1009United Kingdom2026-11-10
Morrow W Iturbide1010Italy2026-10-23
Kadeem V Whobrey1011France2026-10-28
Costa U Stockham1012Russia2026-11-07
Costa B Inouye1013Argentina2026-11-07
Antonio S Flosi1014Italy2026-10-16
Ashley J Saylors1015Germany2026-10-22
Darci P Stenseth1016Russia2026-11-02
Aditya R Stockham1017Germany2026-11-07
Jeanfrancois Y Malet1018Italy2026-10-13
Leja R Ruta1019Spain2026-10-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha K PoquetteIndiaStephen Shaw QUALIFIED
Claire F VocelkaIndiaStephen Shaw RENEWAL
Stacey Z WieserGermanyIvan Magalhaes UNQUALIFIED
Clifford A FerenczGermanyAnna Fali PROPOSAL
Isabel V GarufiRussiaElwin Sharvill QUALIFIED
Murillo T BriddickCanadaOnyama Limba NEW
Leja J FollerBrazilElwin Sharvill PROPOSAL
Sinclair U NickaFranceIoni Bowcher RENEWAL
Clifford Q OstroskyJapanXuxue Feng PROPOSAL
Nicolas P KuskoCanadaAmy Elsner RENEWAL
Aditya V DilliardArgentinaIvan Magalhaes UNQUALIFIED
Munro Y MacleadJapanIvan Magalhaes UNQUALIFIED
James C VenereIndiaBernardo Dominic UNQUALIFIED
Mayumi N KolmetzFranceOnyama Limba PROPOSAL
Jeanfrancois T PerinAustraliaBernardo Dominic NEGOTIATION
Ashley U BowleyUnited KingdomAmy Elsner QUALIFIED
Smith W PerinFranceAsiya Javayant UNQUALIFIED
Smith P OstroskyBrazilStephen Shaw RENEWAL
Munro E MorascaJapanElwin Sharvill PROPOSAL
Aruna M GillianUnited KingdomBernardo Dominic PROPOSAL
Munro L PerinJapanXuxue Feng UNQUALIFIED
Nicolas Q ButtArgentinaXuxue Feng PROPOSAL
Mayumi N IturbideBrazilStephen Shaw RENEWAL
Isabel T NickaJapanAsiya Javayant RENEWAL
Izzy Y OstroskyArgentinaXuxue Feng RENEWAL
Julie G FollerAustraliaAnna Fali NEW
Johnson L BowleyIndiaElwin Sharvill QUALIFIED
Jennifer T DilliardJapanElwin Sharvill RENEWAL
Antonio G FerenczJapanOnyama Limba RENEWAL
Deepesh D DilliardCanadaAnna Fali UNQUALIFIED
Misaki S GillianBrazilOnyama Limba QUALIFIED
Emily C FlosiBrazilAmy Elsner UNQUALIFIED
Munro B MaletGermanyXuxue Feng PROPOSAL
Munro O DarakjyItalyOnyama Limba NEW
David H AmigonSpainXuxue Feng NEGOTIATION
Smith V AmigonGermanyAmy Elsner RENEWAL
Tony M DilliardFranceAnna Fali NEW
Octavia J BowleyBrazilAnna Fali NEW
Izzy K MaletGermanyBernardo Dominic UNQUALIFIED
Rodrigues G SaylorsAustraliaIoni Bowcher PROPOSAL

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