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 H StockhamGermanyBernardo Dominic NEW
Mujtaba X GauchoSpainBernardo Dominic QUALIFIED
Isabel P GarufiBrazilOnyama Limba PROPOSAL
Costa N GillianFranceBernardo Dominic NEGOTIATION
Isabel W BologniaCanadaElwin Sharvill UNQUALIFIED
Francesco I CaudyAustraliaIoni Bowcher UNQUALIFIED
Clifford V SaylorsJapanIoni Bowcher NEW
Alejandro O GauchoItalyAnna Fali NEW
Aditya F DarakjyIndiaAnna Fali UNQUALIFIED
Tony H PoquetteSpainStephen Shaw UNQUALIFIED
Chavez I MorascaRussiaAnna Fali NEW
Stacey F CaldareraIndiaXuxue Feng RENEWAL
Adams O GauchoCanadaAmy Elsner NEW
Ivar I ChuiItalyIvan Magalhaes RENEWAL
Antonio N NickaJapanBernardo Dominic UNQUALIFIED
David I WaycottBrazilIvan Magalhaes RENEWAL
Izzy D MarrierFranceXuxue Feng UNQUALIFIED
Smith L KolmetzGermanyAnna Fali RENEWAL
Cody F RulapaughGermanyStephen Shaw UNQUALIFIED
David B ChuiCanadaStephen Shaw UNQUALIFIED
Jones K MaletCanadaOnyama Limba PROPOSAL
Chavez V MaletUnited KingdomAmy Elsner NEGOTIATION
Murillo L GarufiIndiaIvan Magalhaes UNQUALIFIED
Silvio M ChuiAustraliaBernardo Dominic PROPOSAL
Nicolas I InouyeArgentinaIoni Bowcher NEW
Misaki C MaletBrazilElwin Sharvill PROPOSAL
Claire W DilliardBrazilAnna Fali NEW
Ashley C StockhamIndiaBernardo Dominic PROPOSAL
Tony V MacleadItalyAsiya Javayant NEW
Alejandro V StockhamItalyIvan Magalhaes NEGOTIATION
James V OldroydIndiaIoni Bowcher PROPOSAL
Chavez D StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Tony Q CaldareraJapanStephen Shaw NEGOTIATION
Sinclair F NestleUnited KingdomBernardo Dominic NEW
Emily O MaletArgentinaBernardo Dominic PROPOSAL
Arvin I DilliardItalyIvan Magalhaes NEGOTIATION
Adams N WieserGermanyAnna Fali RENEWAL
Juan F BowleyFranceStephen Shaw NEW
Arvin T OldroydBrazilElwin Sharvill PROPOSAL
Morrow Y StensethRussiaAsiya Javayant PROPOSAL
Munro Z VenereCanadaElwin Sharvill UNQUALIFIED
Costa B GauchoJapanIoni Bowcher NEW
Wickens M WieserBrazilIvan Magalhaes UNQUALIFIED
Sinclair P RimArgentinaBernardo Dominic RENEWAL
Smith P RutaAustraliaIvan Magalhaes NEW
Francesco G FigeroaSpainAnna Fali NEW
Salvatore S BologniaRussiaIvan Magalhaes QUALIFIED
Octavia A WieserGermanyIvan Magalhaes UNQUALIFIED
Wickens B DarakjyBrazilOnyama Limba QUALIFIED
Arvin V CampainItalyAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Deepesh I BologniaSpainOnyama Limba NEW
Kaitlin J BriddickUnited KingdomIvan Magalhaes NEW
Arvin J WieserJapanAnna Fali UNQUALIFIED
Mayumi T OldroydBrazilStephen Shaw PROPOSAL
Costa J WhobreyBrazilXuxue Feng NEGOTIATION
Stacey G SaylorsIndiaIoni Bowcher RENEWAL
Jeanfrancois I MaletItalyBernardo Dominic NEGOTIATION
Munro G SergiArgentinaIoni Bowcher PROPOSAL
Jennifer L OldroydUnited KingdomIoni Bowcher RENEWAL
Claire S SaylorsGermanyOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin P FlosiRussia2026-10-09Chapman, Ross E Esq NEGOTIATION74Onyama Limba
1001Aruna V OldroydAustralia2026-10-13Chapman, Ross E Esq QUALIFIED12Bernardo Dominic
1002Mujtaba B StockhamFrance2026-10-05Rangoni Of Florence NEGOTIATION42Onyama Limba
1003Chavez P KolmetzIndia2026-10-04Printing Dimensions RENEWAL10Amy Elsner
1004Maisha F FlosiIndia2026-09-26Buckley Miller Wright PROPOSAL96Anna Fali
1005Nicolas Z FerenczGermany2026-10-01Feiner Bros RENEWAL21Xuxue Feng
1006Adams R MaletSpain2026-10-14Rousseaux, Michael Esq NEW9Anna Fali
1007Isabel R NickaSpain2026-10-02Benton, John B Jr RENEWAL23Onyama Limba
1008Silvio P StockhamUnited Kingdom2026-09-29Benton, John B Jr PROPOSAL56Asiya Javayant
1009Murillo D CaldareraSpain2026-10-14Chapman, Ross E Esq RENEWAL3Stephen Shaw
1010Aika N FerenczItaly2026-10-21King, Christopher A Esq NEW22Onyama Limba
1011Greenwood W NickaSpain2026-10-13Chanay, Jeffrey A Esq NEW18Asiya Javayant
1012Maisha G PerinSpain2026-10-04Feiner Bros NEW80Ivan Magalhaes
1013David M PoquetteBrazil2026-10-14Dorl, James J Esq NEW64Anna Fali
1014Smith R BologniaJapan2026-10-13Morlong Associates QUALIFIED86Stephen Shaw
1015Salvatore L WhobreyBrazil2026-10-06Dorl, James J Esq QUALIFIED30Anna Fali
1016Ashley R AlbaresArgentina2026-09-27King, Christopher A Esq QUALIFIED13Ivan Magalhaes
1017Mujtaba S FigeroaIndia2026-10-22King, Christopher A Esq NEW84Anna Fali
1018Maria P PaprockiFrance2026-09-23Chemel, James L Cpa PROPOSAL74Onyama Limba
1019Rodrigues D MacleadBrazil2026-10-03Chanay, Jeffrey A Esq PROPOSAL37Stephen Shaw
1020Mayumi K RoysterRussia2026-10-10Feltz Printing Service NEW23Asiya Javayant
1021Leja R ShinkoBrazil2026-10-17Dorl, James J Esq QUALIFIED0Ivan Magalhaes
1022Isabel K ButtGermany2026-10-17Rangoni Of Florence QUALIFIED3Anna Fali
1023Murillo P OstroskyGermany2026-09-26Feiner Bros PROPOSAL41Asiya Javayant
1024Aditya C RimFrance2026-10-18Benton, John B Jr QUALIFIED85Amy Elsner
1025Chavez Y SergiItaly2026-10-02Rangoni Of Florence QUALIFIED18Stephen Shaw
1026Deepesh E OstroskyGermany2026-10-05Buckley Miller Wright QUALIFIED44Onyama Limba
1027Smith J MaletIndia2026-10-07Chanay, Jeffrey A Esq PROPOSAL82Elwin Sharvill
1028Izzy N VenereCanada2026-10-16Feiner Bros UNQUALIFIED84Amy Elsner
1029Wickens V BologniaSpain2026-09-25Morlong Associates NEW71Xuxue Feng
1030Silvio Q FlosiFrance2026-09-23King, Christopher A Esq NEGOTIATION78Asiya Javayant
1031Silvio Y RulapaughUnited Kingdom2026-10-01King, Christopher A Esq NEW26Stephen Shaw
1032Nicolas T PoquetteIndia2026-09-23Rousseaux, Michael Esq NEGOTIATION52Xuxue Feng
1033Aika W MaletSpain2026-10-03Truhlar And Truhlar Attys NEGOTIATION25Onyama Limba
1034Kadeem L WieserSpain2026-10-09King, Christopher A Esq PROPOSAL85Xuxue Feng
1035Stacey C MaletItaly2026-09-28Chemel, James L Cpa RENEWAL93Amy Elsner
1036James K MarrierRussia2026-10-08Rousseaux, Michael Esq NEGOTIATION13Anna Fali
1037Faith W WieserSpain2026-09-25Feltz Printing Service PROPOSAL26Elwin Sharvill
1038Faith E MarrierFrance2026-10-17Feiner Bros UNQUALIFIED54Ivan Magalhaes
1039Salvatore T RimFrance2026-10-15Dorl, James J Esq PROPOSAL55Ivan Magalhaes
1040Antonio U ChuiJapan2026-10-18Chemel, James L Cpa PROPOSAL78Xuxue Feng
1041Ashley W BologniaItaly2026-10-20Chanay, Jeffrey A Esq PROPOSAL57Anna Fali
1042Morrow K SchemmerIndia2026-10-21Morlong Associates QUALIFIED28Onyama Limba
1043Aika H BologniaUnited Kingdom2026-10-11Benton, John B Jr PROPOSAL17Onyama Limba
1044Wickens B CaldareraUnited Kingdom2026-10-19Feiner Bros NEW14Stephen Shaw
1045Antonio W FigeroaSpain2026-10-14Chemel, James L Cpa RENEWAL14Xuxue Feng
1046Johnson O NestleRussia2026-10-08Rousseaux, Michael Esq PROPOSAL80Ioni Bowcher
1047Ashley Z MorascaGermany2026-10-07Chanay, Jeffrey A Esq NEGOTIATION67Stephen Shaw
1048Maisha L CaudyArgentina2026-10-02Truhlar And Truhlar Attys UNQUALIFIED73Anna Fali
1049Kadeem L CaldareraSpain2026-09-27King, Christopher A Esq NEW81Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Maisha W MaletJapanElwin Sharvill UNQUALIFIED
Rodrigues X AmigonIndiaAnna Fali NEGOTIATION
Ricardo U VenereBrazilXuxue Feng NEW
Cody L RimBrazilBernardo Dominic RENEWAL
Jones Q SlusarskiSpainStephen Shaw NEGOTIATION
Munro Y ShinkoCanadaXuxue Feng RENEWAL
Ivar X SaylorsFranceAsiya Javayant QUALIFIED
Tony K GauchoCanadaIoni Bowcher NEGOTIATION
Faith B DilliardRussiaAnna Fali PROPOSAL
Chavez P SchemmerIndiaAnna Fali RENEWAL
Sinclair J ChuiItalyAsiya Javayant QUALIFIED
Mujtaba R CampainJapanAmy Elsner RENEWAL
Jennifer M StockhamGermanyElwin Sharvill PROPOSAL
Arvin E PerinItalyIvan Magalhaes RENEWAL
Deepesh V PaprockiAustraliaElwin Sharvill NEGOTIATION
Jeanfrancois I WhobreyUnited KingdomIoni Bowcher QUALIFIED
Rodrigues M FigeroaFranceOnyama Limba RENEWAL
Smith M BowleyUnited KingdomIoni Bowcher QUALIFIED
Murillo I FerenczBrazilIvan Magalhaes QUALIFIED
Kadeem I MorascaGermanyBernardo Dominic RENEWAL
Jefferson L KuskoIndiaIvan Magalhaes UNQUALIFIED
Aditya T DarakjyAustraliaAnna Fali QUALIFIED
Francesco L StockhamGermanyBernardo Dominic UNQUALIFIED
Jennifer D VocelkaIndiaStephen Shaw NEGOTIATION
Murillo V VenereJapanAsiya Javayant UNQUALIFIED
Darci Q BriddickIndiaAsiya Javayant UNQUALIFIED
Claire D RoysterFranceIoni Bowcher RENEWAL
Adams X SlusarskiSpainBernardo Dominic UNQUALIFIED
Juan Z SaylorsSpainAmy Elsner PROPOSAL
Kadeem H BriddickBrazilIoni Bowcher NEW
Izzy V CaldareraJapanBernardo Dominic PROPOSAL
Aruna N SergiRussiaOnyama Limba UNQUALIFIED
Murillo D StensethUnited KingdomAnna Fali RENEWAL
Mujtaba J WhobreyJapanAsiya Javayant PROPOSAL
James R StensethAustraliaAnna Fali NEGOTIATION
Sinclair M CampainFranceAsiya Javayant UNQUALIFIED
Alejandro K PerinFranceBernardo Dominic NEGOTIATION
Costa K CampainCanadaAsiya Javayant NEGOTIATION
Greenwood C WhobreyCanadaAsiya Javayant PROPOSAL
Ashley G ChuiJapanAmy Elsner NEGOTIATION
Leon H NestleBrazilStephen Shaw NEW
Leja O StockhamAustraliaXuxue Feng NEGOTIATION
Costa B RulapaughRussiaStephen Shaw UNQUALIFIED
Arvin W WieserRussiaAnna Fali NEGOTIATION
Silvio S MaletFranceOnyama Limba UNQUALIFIED
Darci H InouyeJapanXuxue Feng NEGOTIATION
Mayumi W PaprockiSpainIoni Bowcher NEGOTIATION
James S RoysterUnited KingdomBernardo Dominic RENEWAL
David H StensethItalyElwin Sharvill PROPOSAL
Smith V GarufiUnited KingdomXuxue Feng PROPOSAL
Frozen Columns
Name
Octavia Q Butt
Salvatore H Whobrey
Izzy A Kolmetz
Isabel F Malet
Smith L Ruta
Aika I Nicka
Nicolas P Albares
Adams I Morasca
Cody Q Flosi
Octavia N Malet
James Q Slusarski
Kaitlin Z Ferencz
Jefferson B Dilliard
Faith A Chui
Antonio H Campain
Octavia O Saylors
Sinclair F Royster
Maisha Z Nestle
Rodrigues K Perin
Clifford J Whobrey
Leon E Briddick
Maria W Bolognia
Sinclair N Wieser
Alejandro B Morasca
Faith U Schemmer
Munro H Rim
Morrow Z Shinko
Aika L Garufi
Aruna A Poquette
James S Ferencz
Silvio S Oldroyd
Mayumi H Foller
Clifford K Butt
Adams B Rim
Costa A Saylors
Arvin G Albares
Salvatore R Dilliard
Johnson L Amigon
Maria W Malet
Antonio F Amigon
Wickens D Garufi
Isabel J Figeroa
Kadeem Q Garufi
Salvatore W Waycott
Claire O Doe
Kadeem O Ferencz
Nicolas D Kusko
Tony K Inouye
Deepesh Y Flosi
Leon I Ferencz
IdCountryDate
1000Brazil2026-10-09
1001Brazil2026-10-15
1002Germany2026-10-17
1003United Kingdom2026-10-19
1004France2026-09-29
1005Canada2026-10-21
1006Russia2026-10-01
1007Australia2026-09-25
1008Australia2026-10-12
1009Brazil2026-09-25
1010United Kingdom2026-09-28
1011Spain2026-10-11
1012Brazil2026-09-23
1013Spain2026-10-16
1014France2026-10-22
1015Germany2026-09-28
1016Japan2026-10-04
1017United Kingdom2026-10-09
1018Australia2026-09-27
1019France2026-10-21
1020Russia2026-10-03
1021India2026-10-04
1022Italy2026-09-24
1023Germany2026-09-26
1024Japan2026-10-08
1025France2026-10-01
1026Spain2026-10-18
1027Australia2026-09-24
1028Japan2026-09-29
1029Canada2026-10-02
1030United Kingdom2026-09-28
1031Russia2026-10-19
1032Japan2026-10-14
1033Brazil2026-10-22
1034Germany2026-10-06
1035Brazil2026-10-04
1036Russia2026-10-21
1037Italy2026-09-26
1038Brazil2026-10-03
1039France2026-09-27
1040India2026-09-24
1041Australia2026-09-24
1042Italy2026-10-10
1043Canada2026-09-24
1044Germany2026-10-10
1045Canada2026-09-27
1046Germany2026-10-11
1047Argentina2026-09-25
1048Australia2026-10-08
1049Brazil2026-09-30

On-Demand Data

NameIdCountryDate
Mujtaba R Garufi1000Brazil2026-10-11
Jefferson Z Flosi1001India2026-10-08
Jennifer T Paprocki1002Spain2026-10-21
Isabel O Rim1003Germany2026-10-20
Jennifer S Bolognia1004France2026-10-20
Juan X Foller1005Japan2026-10-10
Arvin O Campain1006Argentina2026-10-13
Wickens X Chui1007India2026-10-18
Misaki M Kusko1008Canada2026-10-07
Murillo F Campain1009France2026-10-22
Ricardo D Iturbide1010France2026-10-06
Nicolas L Rulapaugh1011Japan2026-10-09
Darci P Whobrey1012France2026-09-27
Stacey U Venere1013Australia2026-10-16
Adams B Ostrosky1014Spain2026-10-09
Sinclair L Malet1015Italy2026-10-02
Arvin Z Royster1016Russia2026-10-19
Antonio C Wieser1017Spain2026-09-25
Ricardo W Caudy1018Russia2026-09-26
Emily T Kolmetz1019Argentina2026-10-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair E CaldareraBrazilAsiya Javayant PROPOSAL
Faith Y PaprockiItalyIoni Bowcher RENEWAL
David J ShinkoAustraliaIoni Bowcher NEGOTIATION
Greenwood S SchemmerArgentinaStephen Shaw NEGOTIATION
Silvio A RutaCanadaXuxue Feng NEGOTIATION
Tony E OstroskyItalyAmy Elsner RENEWAL
Mayumi H WaycottIndiaXuxue Feng NEW
Misaki Z WhobreyGermanyOnyama Limba NEW
Misaki F MarrierItalyAnna Fali QUALIFIED
Munro Q DilliardBrazilAnna Fali QUALIFIED
Aruna J VenereArgentinaElwin Sharvill RENEWAL
Rodrigues T PoquetteUnited KingdomBernardo Dominic NEGOTIATION
Rodrigues V PoquetteSpainBernardo Dominic NEGOTIATION
Darci C OstroskyFranceXuxue Feng NEGOTIATION
Isabel V VocelkaArgentinaAnna Fali RENEWAL
Claire C FigeroaJapanIoni Bowcher PROPOSAL
Mayumi J BowleyJapanStephen Shaw RENEWAL
Ivar J ChuiSpainOnyama Limba RENEWAL
Silvio S ButtUnited KingdomAnna Fali QUALIFIED
Wickens D DoeFranceAnna Fali PROPOSAL
Misaki K SchemmerCanadaIoni Bowcher QUALIFIED
Morrow C FigeroaJapanStephen Shaw QUALIFIED
Mayumi V AlbaresItalyIoni Bowcher QUALIFIED
Maria M DilliardJapanAnna Fali NEW
Kaitlin K RimGermanyAnna Fali UNQUALIFIED
Arvin L PoquetteAustraliaAmy Elsner UNQUALIFIED
Ashley A RimFranceXuxue Feng RENEWAL
Tony Z IturbideItalyXuxue Feng NEW
Ricardo P BowleyItalyStephen Shaw NEW
Julie C RoysterSpainOnyama Limba NEGOTIATION
Ricardo S CaudyItalyAmy Elsner NEW
Alejandro I GauchoItalyElwin Sharvill NEGOTIATION
Chavez H SchemmerArgentinaIoni Bowcher NEW
Ivar B KolmetzJapanElwin Sharvill UNQUALIFIED
Octavia J VenereAustraliaAsiya Javayant UNQUALIFIED
Leon V GauchoFranceStephen Shaw PROPOSAL
Darci S ButtAustraliaStephen Shaw QUALIFIED
Ricardo Y GarufiGermanyAmy Elsner NEW
Maria F SaylorsJapanXuxue Feng NEGOTIATION
Salvatore W SergiJapanOnyama Limba 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>