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
Ashley E MacleadItalyXuxue Feng PROPOSAL
Nicolas D WhobreyItalyAsiya Javayant PROPOSAL
Octavia G MaletJapanAnna Fali RENEWAL
Kadeem C DarakjyUnited KingdomElwin Sharvill RENEWAL
Sinclair H KuskoItalyAsiya Javayant QUALIFIED
Morrow Y BowleySpainIvan Magalhaes NEW
Ricardo H GauchoUnited KingdomXuxue Feng QUALIFIED
Darci D FlosiIndiaAmy Elsner UNQUALIFIED
Juan H VenereGermanyAsiya Javayant NEW
Kaitlin U RutaAustraliaIoni Bowcher RENEWAL
Sinclair U BriddickAustraliaIoni Bowcher PROPOSAL
Greenwood J PerinBrazilAnna Fali NEW
Aika E GauchoCanadaIoni Bowcher UNQUALIFIED
Isabel R DarakjyRussiaXuxue Feng QUALIFIED
Maisha J StockhamIndiaOnyama Limba NEW
Maisha I OstroskyBrazilElwin Sharvill RENEWAL
Julie U MacleadCanadaBernardo Dominic PROPOSAL
Johnson R VenereIndiaOnyama Limba PROPOSAL
Jefferson A DoeUnited KingdomAsiya Javayant NEGOTIATION
Faith F RutaFranceIoni Bowcher UNQUALIFIED
Kaitlin R IturbideAustraliaIvan Magalhaes RENEWAL
Mayumi S MacleadUnited KingdomAsiya Javayant NEGOTIATION
Leja Z CaudyJapanAsiya Javayant NEW
Maria G WhobreyAustraliaElwin Sharvill RENEWAL
Silvio U WieserSpainOnyama Limba QUALIFIED
Alejandro N FollerBrazilAmy Elsner NEGOTIATION
Jefferson W GlickGermanyXuxue Feng RENEWAL
Mayumi A BriddickItalyAnna Fali PROPOSAL
James S AlbaresCanadaBernardo Dominic PROPOSAL
Adams L GarufiUnited KingdomAsiya Javayant PROPOSAL
Antonio V CaudyJapanAnna Fali NEW
Sinclair K DarakjyIndiaAnna Fali UNQUALIFIED
Octavia G NestleCanadaOnyama Limba PROPOSAL
Claire M SaylorsFranceAmy Elsner NEW
Arvin Y RulapaughBrazilAsiya Javayant NEW
Nicolas I WhobreyAustraliaBernardo Dominic PROPOSAL
Leon U SchemmerSpainStephen Shaw QUALIFIED
Ashley G PaprockiSpainStephen Shaw QUALIFIED
Clifford Y GauchoSpainStephen Shaw PROPOSAL
Leon Z OstroskyRussiaIvan Magalhaes QUALIFIED
Faith Q DilliardItalyXuxue Feng PROPOSAL
Octavia T NestleGermanyStephen Shaw RENEWAL
Leja P PoquetteJapanAsiya Javayant NEW
Isabel R CaudyAustraliaOnyama Limba UNQUALIFIED
Sinclair I KuskoFranceAsiya Javayant PROPOSAL
Jeanfrancois Z FerenczFranceAnna Fali QUALIFIED
Stacey U CampainBrazilBernardo Dominic NEW
Greenwood I SchemmerUnited KingdomAmy Elsner NEGOTIATION
Silvio B VocelkaGermanyIoni Bowcher QUALIFIED
Smith Y SlusarskiUnited KingdomIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Morrow L SchemmerRussiaOnyama Limba QUALIFIED
Jones A FollerBrazilOnyama Limba UNQUALIFIED
Aika E ButtCanadaElwin Sharvill UNQUALIFIED
Francesco T DilliardFranceOnyama Limba UNQUALIFIED
Darci R BologniaItalyIvan Magalhaes UNQUALIFIED
Stacey W GillianBrazilAsiya Javayant RENEWAL
Adams H MaletArgentinaXuxue Feng PROPOSAL
Jeanfrancois N ChuiCanadaAsiya Javayant QUALIFIED
Misaki M AlbaresItalyAmy Elsner QUALIFIED
Alejandro N TollnerArgentinaElwin Sharvill UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon Y SergiUnited Kingdom2026-10-09Commercial Press NEGOTIATION61Ivan Magalhaes
1001Smith S DoeRussia2026-10-02Feiner Bros NEGOTIATION4Stephen Shaw
1002Faith J DilliardArgentina2026-09-26Morlong Associates NEGOTIATION24Anna Fali
1003Jones X MaletUnited Kingdom2026-09-19Benton, John B Jr PROPOSAL25Elwin Sharvill
1004Deepesh J RimSpain2026-09-17Chemel, James L Cpa UNQUALIFIED33Anna Fali
1005Adams P RutaSpain2026-09-24Rousseaux, Michael Esq NEW1Xuxue Feng
1006Mujtaba G MarrierUnited Kingdom2026-10-02Dorl, James J Esq UNQUALIFIED64Onyama Limba
1007Nicolas A CaudyRussia2026-09-14Rangoni Of Florence UNQUALIFIED33Asiya Javayant
1008Isabel B CaldareraUnited Kingdom2026-10-05Rangoni Of Florence PROPOSAL4Ioni Bowcher
1009Aruna C PoquetteBrazil2026-10-10Chapman, Ross E Esq PROPOSAL75Onyama Limba
1010Chavez L VenereJapan2026-10-10Feltz Printing Service PROPOSAL49Onyama Limba
1011Chavez A MaletIndia2026-09-24Chanay, Jeffrey A Esq RENEWAL16Onyama Limba
1012Chavez K BologniaFrance2026-09-30Chapman, Ross E Esq QUALIFIED74Stephen Shaw
1013Wickens Y CaudyGermany2026-09-21Feiner Bros PROPOSAL42Amy Elsner
1014Jones L BriddickFrance2026-09-22Truhlar And Truhlar Attys NEGOTIATION25Elwin Sharvill
1015Tony H OstroskyRussia2026-09-19Chanay, Jeffrey A Esq UNQUALIFIED59Xuxue Feng
1016Mujtaba B DoeRussia2026-09-24Truhlar And Truhlar Attys NEGOTIATION65Ioni Bowcher
1017Aika T GlickGermany2026-09-14Feltz Printing Service PROPOSAL70Xuxue Feng
1018David W ButtUnited Kingdom2026-09-18Chanay, Jeffrey A Esq RENEWAL31Amy Elsner
1019Juan Y KolmetzAustralia2026-10-03Truhlar And Truhlar Attys PROPOSAL44Onyama Limba
1020Salvatore Q MarrierSpain2026-09-25Feiner Bros RENEWAL93Elwin Sharvill
1021Francesco X WhobreyRussia2026-10-11Morlong Associates RENEWAL77Elwin Sharvill
1022Aditya R GillianIndia2026-10-07Rangoni Of Florence RENEWAL85Asiya Javayant
1023Adams O ShinkoRussia2026-09-30Feiner Bros NEGOTIATION34Ivan Magalhaes
1024Chavez N MorascaJapan2026-09-12Printing Dimensions PROPOSAL73Elwin Sharvill
1025Isabel I PerinSpain2026-09-30Feltz Printing Service UNQUALIFIED70Ioni Bowcher
1026Claire O PaprockiCanada2026-10-11Feiner Bros PROPOSAL45Onyama Limba
1027James Y KuskoArgentina2026-10-01Feiner Bros RENEWAL62Ioni Bowcher
1028Isabel T VenereBrazil2026-09-27King, Christopher A Esq NEW73Ioni Bowcher
1029Johnson U PaprockiJapan2026-09-27Chapman, Ross E Esq UNQUALIFIED40Bernardo Dominic
1030Aditya N FigeroaAustralia2026-09-24Commercial Press PROPOSAL16Asiya Javayant
1031Julie J WhobreyBrazil2026-09-17Printing Dimensions UNQUALIFIED34Bernardo Dominic
1032Julie W SlusarskiSpain2026-09-16Buckley Miller Wright NEW23Ivan Magalhaes
1033Costa S GarufiUnited Kingdom2026-09-18Truhlar And Truhlar Attys RENEWAL80Asiya Javayant
1034Sinclair U VenereJapan2026-10-10Feltz Printing Service RENEWAL96Elwin Sharvill
1035Izzy P AlbaresItaly2026-09-24Buckley Miller Wright QUALIFIED25Ioni Bowcher
1036Leon F MaletSpain2026-10-08Chemel, James L Cpa NEGOTIATION48Anna Fali
1037Aika V RulapaughRussia2026-09-19Printing Dimensions UNQUALIFIED42Ivan Magalhaes
1038James H ButtItaly2026-09-23Feiner Bros RENEWAL13Elwin Sharvill
1039Aditya A NestleItaly2026-10-05Rangoni Of Florence QUALIFIED56Ioni Bowcher
1040Murillo G IturbideFrance2026-09-20Feltz Printing Service QUALIFIED30Onyama Limba
1041Ashley Y InouyeIndia2026-09-14Chanay, Jeffrey A Esq RENEWAL28Ivan Magalhaes
1042Smith U AmigonRussia2026-09-12Feltz Printing Service QUALIFIED69Ivan Magalhaes
1043Sinclair P NickaRussia2026-09-20Buckley Miller Wright PROPOSAL57Anna Fali
1044Deepesh H VenereIndia2026-09-16Chanay, Jeffrey A Esq NEGOTIATION92Elwin Sharvill
1045Faith A BowleyFrance2026-09-18Feiner Bros NEW51Bernardo Dominic
1046Murillo R TollnerUnited Kingdom2026-09-30Rangoni Of Florence RENEWAL23Ioni Bowcher
1047Johnson E RulapaughBrazil2026-09-12Printing Dimensions UNQUALIFIED34Bernardo Dominic
1048Greenwood Z FlosiCanada2026-09-14Buckley Miller Wright RENEWAL91Ioni Bowcher
1049Murillo D DoeAustralia2026-09-14King, Christopher A Esq RENEWAL91Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Izzy S KuskoAustraliaAsiya Javayant PROPOSAL
Tony O ButtJapanIoni Bowcher PROPOSAL
Jeanfrancois K MaletAustraliaIvan Magalhaes UNQUALIFIED
Claire M PerinSpainXuxue Feng RENEWAL
Smith V ChuiGermanyStephen Shaw PROPOSAL
Mayumi H AmigonIndiaElwin Sharvill UNQUALIFIED
Kaitlin Q DilliardCanadaAmy Elsner RENEWAL
Antonio X FollerSpainXuxue Feng QUALIFIED
Arvin L CampainUnited KingdomXuxue Feng NEW
Jeanfrancois N SlusarskiGermanyAmy Elsner QUALIFIED
Silvio B FollerGermanyIvan Magalhaes QUALIFIED
David D KuskoArgentinaElwin Sharvill PROPOSAL
Izzy W SchemmerAustraliaAsiya Javayant NEW
Leon A VenereAustraliaStephen Shaw QUALIFIED
Darci C SlusarskiArgentinaStephen Shaw QUALIFIED
James S MaletArgentinaBernardo Dominic PROPOSAL
James N SaylorsGermanyStephen Shaw UNQUALIFIED
Deepesh H MacleadRussiaIvan Magalhaes NEGOTIATION
Julie A RimItalyAmy Elsner QUALIFIED
Nicolas S VenereJapanAsiya Javayant NEGOTIATION
Jeanfrancois F FollerSpainOnyama Limba PROPOSAL
Faith O CaudyFranceIoni Bowcher NEW
Arvin D CaldareraBrazilAsiya Javayant UNQUALIFIED
Ivar E ChuiIndiaIvan Magalhaes NEGOTIATION
Isabel P CaudyIndiaAmy Elsner PROPOSAL
Faith B SlusarskiFranceIoni Bowcher NEGOTIATION
Wickens S BologniaCanadaIoni Bowcher NEW
Kadeem A NestleRussiaAsiya Javayant NEGOTIATION
Leja E ShinkoCanadaAnna Fali NEGOTIATION
Chavez M MorascaUnited KingdomOnyama Limba NEW
Greenwood P WieserSpainElwin Sharvill NEW
Silvio W FlosiCanadaElwin Sharvill NEW
Wickens I PerinJapanElwin Sharvill NEGOTIATION
Kadeem F ShinkoUnited KingdomStephen Shaw RENEWAL
Alejandro C GarufiAustraliaStephen Shaw PROPOSAL
Morrow J OstroskyArgentinaStephen Shaw NEGOTIATION
Jones J WaycottUnited KingdomStephen Shaw UNQUALIFIED
Jefferson A OstroskyAustraliaIvan Magalhaes QUALIFIED
Stacey R BowleyGermanyElwin Sharvill QUALIFIED
Sinclair P MaletGermanyAsiya Javayant QUALIFIED
Mayumi N DoeJapanIoni Bowcher QUALIFIED
Deepesh K DarakjyBrazilAmy Elsner QUALIFIED
Chavez C FollerArgentinaXuxue Feng QUALIFIED
Sinclair K CaldareraBrazilElwin Sharvill QUALIFIED
Aditya A SergiJapanIvan Magalhaes NEW
Francesco F NestleGermanyElwin Sharvill PROPOSAL
Salvatore A KuskoIndiaBernardo Dominic NEW
Jones C NickaJapanStephen Shaw QUALIFIED
Leon A WieserArgentinaAmy Elsner QUALIFIED
Faith X BologniaGermanyBernardo Dominic NEW
Frozen Columns
Name
Leon X Oldroyd
Wickens P Poquette
Julie P Gaucho
Deepesh G Butt
Jennifer C Waycott
Smith T Waycott
Chavez C Rim
Misaki H Maclead
Ivar H Briddick
Jones E Nicka
Adams K Venere
Leon W Shinko
Izzy J Rulapaugh
Antonio K Nicka
Leon C Butt
Alejandro A Foller
Tony Y Maclead
Johnson I Ruta
Adams T Tollner
Chavez F Maclead
Clifford R Kusko
Mayumi R Stockham
Wickens J Tollner
Francesco O Morasca
Leja Z Oldroyd
Deepesh S Amigon
Stacey W Ferencz
Maria P Morasca
Jennifer X Briddick
Leon T Sergi
Kadeem B Iturbide
James A Ruta
Tony L Ruta
David W Amigon
Salvatore X Albares
Octavia I Gaucho
Ivar S Shinko
Clifford Y Paprocki
Octavia V Gaucho
Ivar N Waycott
Aditya J Saylors
Mayumi L Shinko
Jeanfrancois I Vocelka
Murillo M Campain
Tony Z Ruta
Sinclair T Figeroa
Ricardo Q Rulapaugh
Faith Z Caldarera
Aika E Malet
Greenwood P Gaucho
IdCountryDate
1000Germany2026-10-06
1001Spain2026-09-30
1002France2026-09-24
1003Argentina2026-09-30
1004Spain2026-09-21
1005Japan2026-10-06
1006Russia2026-09-28
1007France2026-09-12
1008Russia2026-09-21
1009United Kingdom2026-09-27
1010Spain2026-10-04
1011United Kingdom2026-09-30
1012Russia2026-09-12
1013Japan2026-10-09
1014Russia2026-09-29
1015Canada2026-09-19
1016Japan2026-09-16
1017Australia2026-10-05
1018France2026-09-21
1019Germany2026-09-24
1020United Kingdom2026-10-09
1021Japan2026-09-18
1022Japan2026-09-15
1023Australia2026-10-08
1024Argentina2026-10-04
1025Russia2026-09-30
1026Canada2026-09-20
1027Germany2026-09-19
1028Brazil2026-09-29
1029Argentina2026-09-14
1030Canada2026-10-04
1031Canada2026-09-23
1032India2026-09-23
1033Italy2026-10-10
1034India2026-09-21
1035Japan2026-09-16
1036Spain2026-09-13
1037France2026-10-05
1038Italy2026-10-09
1039Australia2026-10-10
1040Germany2026-09-19
1041United Kingdom2026-10-04
1042Canada2026-09-16
1043Japan2026-09-14
1044Brazil2026-10-04
1045Australia2026-09-25
1046India2026-09-29
1047United Kingdom2026-09-23
1048Italy2026-09-22
1049Canada2026-10-07

On-Demand Data

NameIdCountryDate
Silvio M Venere1000United Kingdom2026-10-06
Alejandro A Ostrosky1001Germany2026-09-18
Kaitlin K Caudy1002United Kingdom2026-09-16
Rodrigues G Caldarera1003Argentina2026-09-20
Smith E Royster1004Russia2026-09-19
Aditya S Albares1005India2026-09-14
Aika L Flosi1006Japan2026-10-06
Kadeem Z Foller1007Japan2026-10-06
Murillo H Nestle1008Russia2026-09-25
Darci J Kusko1009Brazil2026-09-14
Julie B Gillian1010Japan2026-09-28
Jefferson T Butt1011Australia2026-09-16
Francesco J Inouye1012Russia2026-09-26
Kadeem B Dilliard1013Spain2026-09-27
Aruna K Flosi1014Japan2026-10-01
Alejandro R Wieser1015Brazil2026-09-21
Deepesh X Slusarski1016Spain2026-09-18
Adams D Rim1017France2026-10-04
James F Venere1018Argentina2026-10-07
David K Paprocki1019United Kingdom2026-10-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood R ShinkoUnited KingdomAsiya Javayant RENEWAL
Jefferson N BriddickArgentinaElwin Sharvill RENEWAL
Chavez Y OldroydUnited KingdomStephen Shaw UNQUALIFIED
Kaitlin T OldroydFranceBernardo Dominic NEW
Clifford X ButtUnited KingdomXuxue Feng NEGOTIATION
Arvin C DarakjyJapanStephen Shaw NEW
Tony Z TollnerCanadaStephen Shaw RENEWAL
Maisha O FigeroaBrazilStephen Shaw RENEWAL
Alejandro O IturbideAustraliaXuxue Feng PROPOSAL
Jefferson N PoquetteSpainXuxue Feng PROPOSAL
Isabel D FerenczFranceAsiya Javayant QUALIFIED
Izzy P ChuiJapanAnna Fali QUALIFIED
Jeanfrancois S NickaJapanIvan Magalhaes NEGOTIATION
Jefferson J DoeBrazilElwin Sharvill QUALIFIED
Maria E ShinkoRussiaOnyama Limba UNQUALIFIED
Isabel N KuskoSpainXuxue Feng UNQUALIFIED
Greenwood F SergiFranceAsiya Javayant NEW
Isabel V WaycottCanadaIoni Bowcher QUALIFIED
Claire R MorascaAustraliaIoni Bowcher NEGOTIATION
Arvin D MarrierJapanAmy Elsner RENEWAL
Aruna U FerenczCanadaIoni Bowcher PROPOSAL
Isabel D CaldareraUnited KingdomBernardo Dominic NEW
Aruna K BowleyGermanyElwin Sharvill PROPOSAL
James L RutaJapanOnyama Limba NEW
Jeanfrancois U MaletRussiaStephen Shaw PROPOSAL
Claire I NickaGermanyAsiya Javayant UNQUALIFIED
Adams X StockhamAustraliaElwin Sharvill RENEWAL
Jennifer C PerinFranceElwin Sharvill UNQUALIFIED
Clifford P SchemmerJapanBernardo Dominic NEGOTIATION
Darci M KuskoJapanOnyama Limba UNQUALIFIED
Faith E SchemmerItalyOnyama Limba PROPOSAL
Greenwood E SlusarskiItalyAsiya Javayant QUALIFIED
Leja L DilliardUnited KingdomAmy Elsner NEGOTIATION
Julie L WhobreyIndiaElwin Sharvill RENEWAL
Rodrigues R AlbaresBrazilAnna Fali UNQUALIFIED
Smith B SlusarskiAustraliaAnna Fali NEW
Octavia E NickaIndiaAsiya Javayant RENEWAL
Maria N OldroydIndiaElwin Sharvill RENEWAL
Ricardo G SlusarskiBrazilStephen Shaw NEW
Jeanfrancois D CaldareraJapanXuxue 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>