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
Ricardo X StockhamJapanIoni Bowcher NEGOTIATION
Deepesh K ShinkoCanadaStephen Shaw NEW
Juan B ButtBrazilIoni Bowcher QUALIFIED
Greenwood B IturbideIndiaOnyama Limba QUALIFIED
Arvin R RutaItalyBernardo Dominic PROPOSAL
Silvio C PaprockiRussiaAmy Elsner RENEWAL
Antonio B RimUnited KingdomElwin Sharvill PROPOSAL
Antonio S FigeroaFranceIvan Magalhaes PROPOSAL
Nicolas C InouyeSpainAnna Fali UNQUALIFIED
Kadeem W GillianRussiaIvan Magalhaes NEGOTIATION
Juan E OstroskyCanadaIvan Magalhaes UNQUALIFIED
Silvio N MorascaUnited KingdomOnyama Limba RENEWAL
James E FlosiSpainBernardo Dominic QUALIFIED
Tony O BowleySpainBernardo Dominic RENEWAL
Claire P FlosiGermanyElwin Sharvill PROPOSAL
Mayumi Y DilliardGermanyIvan Magalhaes PROPOSAL
Julie O FigeroaAustraliaIvan Magalhaes RENEWAL
Julie H GillianCanadaBernardo Dominic PROPOSAL
Chavez O VocelkaIndiaBernardo Dominic NEW
Darci H WieserCanadaOnyama Limba UNQUALIFIED
Cody B FerenczUnited KingdomAsiya Javayant NEGOTIATION
Juan B VocelkaArgentinaOnyama Limba QUALIFIED
Mayumi C BowleySpainStephen Shaw NEW
Clifford W PerinIndiaIoni Bowcher PROPOSAL
Isabel Y DoeItalyBernardo Dominic PROPOSAL
Maisha T GarufiRussiaStephen Shaw QUALIFIED
Maisha K IturbideArgentinaStephen Shaw UNQUALIFIED
Aditya C SergiSpainIoni Bowcher RENEWAL
Julie S MacleadUnited KingdomAmy Elsner PROPOSAL
Rodrigues D DarakjyRussiaIvan Magalhaes UNQUALIFIED
David M VenereItalyXuxue Feng NEGOTIATION
Greenwood Q SlusarskiArgentinaAmy Elsner PROPOSAL
Maria D MacleadGermanyStephen Shaw NEGOTIATION
Morrow D BologniaCanadaStephen Shaw NEW
Julie W SaylorsAustraliaStephen Shaw UNQUALIFIED
Rodrigues D IturbideRussiaAnna Fali NEW
Salvatore C InouyeGermanyOnyama Limba NEW
Juan P DoeUnited KingdomStephen Shaw RENEWAL
Deepesh W GauchoSpainXuxue Feng UNQUALIFIED
Izzy H KuskoSpainIvan Magalhaes RENEWAL
Leon C KuskoAustraliaAnna Fali PROPOSAL
Aika I RutaSpainAnna Fali QUALIFIED
Leon N AmigonFranceAnna Fali NEW
Sinclair A PaprockiCanadaAmy Elsner QUALIFIED
Clifford E OstroskyAustraliaElwin Sharvill QUALIFIED
Mayumi R WhobreyFranceAmy Elsner RENEWAL
Costa M SaylorsIndiaAnna Fali RENEWAL
Claire D PoquetteSpainIvan Magalhaes QUALIFIED
Faith K MaletArgentinaAnna Fali QUALIFIED
Greenwood E MacleadGermanyIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika Q SchemmerSpainElwin Sharvill UNQUALIFIED
Octavia A GillianUnited KingdomBernardo Dominic RENEWAL
Maisha O GauchoBrazilElwin Sharvill UNQUALIFIED
Misaki J GarufiIndiaBernardo Dominic UNQUALIFIED
Misaki U BriddickFranceElwin Sharvill UNQUALIFIED
Wickens M GlickAustraliaAmy Elsner PROPOSAL
Alejandro C ButtRussiaElwin Sharvill NEW
Aika Q GauchoFranceElwin Sharvill NEW
Jefferson H RulapaughSpainAmy Elsner NEW
Ricardo K OldroydAustraliaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer N SaylorsAustralia2026-09-23Rangoni Of Florence RENEWAL52Onyama Limba
1001Ashley I DilliardFrance2026-09-21Feltz Printing Service PROPOSAL81Bernardo Dominic
1002Antonio K RutaCanada2026-09-18Truhlar And Truhlar Attys NEW15Ivan Magalhaes
1003Arvin J MorascaArgentina2026-10-13Buckley Miller Wright RENEWAL44Amy Elsner
1004Leja B MarrierFrance2026-09-14Feltz Printing Service NEW66Anna Fali
1005Morrow I SergiItaly2026-09-25Chemel, James L Cpa NEGOTIATION84Elwin Sharvill
1006Misaki U PoquetteArgentina2026-10-06Printing Dimensions QUALIFIED7Ivan Magalhaes
1007Francesco K GlickRussia2026-09-14Chanay, Jeffrey A Esq RENEWAL39Bernardo Dominic
1008Julie Y RoysterJapan2026-09-18Chapman, Ross E Esq PROPOSAL0Asiya Javayant
1009Darci P FerenczIndia2026-09-14Chemel, James L Cpa UNQUALIFIED43Xuxue Feng
1010Julie V ShinkoGermany2026-09-23Benton, John B Jr NEGOTIATION41Xuxue Feng
1011Nicolas Y FlosiBrazil2026-09-28Benton, John B Jr PROPOSAL10Asiya Javayant
1012Leja B PoquetteSpain2026-09-23Printing Dimensions NEGOTIATION91Onyama Limba
1013Deepesh H MarrierJapan2026-09-25Chemel, James L Cpa UNQUALIFIED56Amy Elsner
1014Julie Z MorascaAustralia2026-09-30Rangoni Of Florence NEW13Stephen Shaw
1015Costa C GauchoIndia2026-09-21Benton, John B Jr NEW36Elwin Sharvill
1016Silvio X GlickGermany2026-10-10Benton, John B Jr PROPOSAL87Anna Fali
1017Leon A MaletItaly2026-10-10Buckley Miller Wright UNQUALIFIED81Amy Elsner
1018Sinclair E MaletJapan2026-09-20Printing Dimensions PROPOSAL32Bernardo Dominic
1019James T MarrierIndia2026-09-23Feiner Bros QUALIFIED12Anna Fali
1020James A StockhamFrance2026-09-17Chapman, Ross E Esq QUALIFIED49Onyama Limba
1021Costa E KuskoRussia2026-10-04Rangoni Of Florence QUALIFIED34Asiya Javayant
1022Nicolas U SergiGermany2026-09-25Benton, John B Jr RENEWAL89Bernardo Dominic
1023Aruna P MaletItaly2026-10-13Printing Dimensions PROPOSAL67Xuxue Feng
1024Maisha R PerinFrance2026-09-29Dorl, James J Esq QUALIFIED94Asiya Javayant
1025Izzy S FerenczIndia2026-10-02Chapman, Ross E Esq NEGOTIATION36Ivan Magalhaes
1026Misaki M FollerGermany2026-09-23Dorl, James J Esq RENEWAL88Asiya Javayant
1027Nicolas R WieserSpain2026-10-03Feiner Bros PROPOSAL48Asiya Javayant
1028Francesco X VocelkaBrazil2026-10-05Chemel, James L Cpa NEGOTIATION1Xuxue Feng
1029Aditya N RoysterFrance2026-10-01King, Christopher A Esq RENEWAL94Stephen Shaw
1030Jones G ChuiCanada2026-10-09Feltz Printing Service RENEWAL85Anna Fali
1031Misaki S PerinSpain2026-10-09Rangoni Of Florence NEW29Onyama Limba
1032Stacey H SergiAustralia2026-09-25Chemel, James L Cpa NEW27Bernardo Dominic
1033Munro N BologniaFrance2026-10-11Benton, John B Jr PROPOSAL38Amy Elsner
1034Juan T WaycottUnited Kingdom2026-10-13Chapman, Ross E Esq UNQUALIFIED92Xuxue Feng
1035Sinclair D OstroskyGermany2026-09-26Truhlar And Truhlar Attys QUALIFIED79Bernardo Dominic
1036Alejandro Z VocelkaJapan2026-10-08Rousseaux, Michael Esq PROPOSAL6Stephen Shaw
1037Munro R AlbaresSpain2026-09-27Feltz Printing Service RENEWAL51Elwin Sharvill
1038Faith W BologniaGermany2026-10-02King, Christopher A Esq UNQUALIFIED19Asiya Javayant
1039Salvatore R NestleFrance2026-10-08Chemel, James L Cpa PROPOSAL15Onyama Limba
1040Nicolas B AmigonRussia2026-09-15Rousseaux, Michael Esq NEW35Amy Elsner
1041Costa Q BriddickRussia2026-09-21Dorl, James J Esq QUALIFIED99Amy Elsner
1042Leon I CaudyItaly2026-10-05Feiner Bros NEGOTIATION49Amy Elsner
1043Faith U RimUnited Kingdom2026-10-01King, Christopher A Esq NEW15Stephen Shaw
1044Ashley K IturbideFrance2026-10-03King, Christopher A Esq UNQUALIFIED80Anna Fali
1045Faith X StensethAustralia2026-10-03Buckley Miller Wright RENEWAL74Bernardo Dominic
1046Arvin X TollnerSpain2026-09-26Truhlar And Truhlar Attys NEGOTIATION39Ivan Magalhaes
1047Murillo Y AmigonJapan2026-09-20Feltz Printing Service QUALIFIED99Anna Fali
1048Silvio C GillianItaly2026-10-06Chapman, Ross E Esq NEW72Ioni Bowcher
1049Smith A CaldareraCanada2026-09-14Chanay, Jeffrey A Esq PROPOSAL13Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Antonio Y NickaJapanAnna Fali UNQUALIFIED
Claire K TollnerJapanOnyama Limba QUALIFIED
Kaitlin L RimJapanXuxue Feng PROPOSAL
Maria G TollnerJapanAsiya Javayant NEW
Maisha D WaycottJapanOnyama Limba RENEWAL
Johnson H StensethUnited KingdomAmy Elsner NEW
Ricardo G FlosiIndiaIvan Magalhaes RENEWAL
Faith D VenereBrazilXuxue Feng UNQUALIFIED
Kadeem K RimItalyStephen Shaw RENEWAL
Francesco U AlbaresAustraliaIoni Bowcher UNQUALIFIED
Tony U CampainIndiaStephen Shaw UNQUALIFIED
David M CampainAustraliaOnyama Limba PROPOSAL
Emily W StockhamIndiaXuxue Feng NEGOTIATION
Aika M CaudyArgentinaAsiya Javayant RENEWAL
Greenwood L FollerItalyAmy Elsner NEGOTIATION
Murillo X TollnerItalyXuxue Feng NEGOTIATION
Deepesh Z InouyeJapanXuxue Feng NEGOTIATION
Greenwood O StensethIndiaBernardo Dominic NEGOTIATION
Silvio R SaylorsFranceOnyama Limba NEW
Maisha Q RulapaughItalyElwin Sharvill NEGOTIATION
Sinclair A StockhamUnited KingdomAnna Fali RENEWAL
Francesco H RoysterBrazilXuxue Feng RENEWAL
Antonio D NestleUnited KingdomXuxue Feng PROPOSAL
Alejandro G VocelkaIndiaXuxue Feng PROPOSAL
Claire D AlbaresBrazilAmy Elsner RENEWAL
Juan Q MaletJapanElwin Sharvill UNQUALIFIED
Maisha I RoysterGermanyStephen Shaw RENEWAL
Misaki X GlickSpainStephen Shaw NEGOTIATION
Kadeem P OldroydBrazilIvan Magalhaes NEW
Jones R RutaUnited KingdomXuxue Feng RENEWAL
Silvio H SaylorsArgentinaIvan Magalhaes PROPOSAL
Tony F ShinkoSpainElwin Sharvill QUALIFIED
Maisha N KolmetzIndiaAsiya Javayant PROPOSAL
Ashley Y DoeIndiaXuxue Feng QUALIFIED
Faith T ChuiIndiaStephen Shaw QUALIFIED
Claire H BowleyArgentinaIoni Bowcher PROPOSAL
Kaitlin N AlbaresFranceOnyama Limba NEGOTIATION
Rodrigues Y MarrierItalyOnyama Limba UNQUALIFIED
Leja M BowleyRussiaAsiya Javayant PROPOSAL
Johnson M OstroskyFranceElwin Sharvill PROPOSAL
Greenwood P RutaIndiaOnyama Limba NEW
Ivar F RimBrazilStephen Shaw QUALIFIED
Ashley V BowleyItalyAmy Elsner NEW
Deepesh B SlusarskiFranceXuxue Feng NEW
Tony E WhobreyJapanBernardo Dominic UNQUALIFIED
Sinclair R DoeJapanAsiya Javayant NEW
Ricardo X RutaCanadaAmy Elsner PROPOSAL
Izzy W NickaItalyAsiya Javayant RENEWAL
Izzy N PoquetteSpainOnyama Limba QUALIFIED
Silvio F GillianItalyAnna Fali NEW
Frozen Columns
Name
Emily M Waycott
Mujtaba I Oldroyd
Faith B Flosi
Costa Z Caldarera
Jeanfrancois W Ostrosky
Cody D Malet
Mujtaba Q Nicka
Costa L Tollner
Rodrigues E Stenseth
Arvin Q Nestle
Greenwood F Nicka
Aditya N Sergi
Deepesh Y Kolmetz
Tony U Nestle
Morrow F Stenseth
Stacey O Rim
Francesco M Rulapaugh
Antonio N Nicka
Ivar R Maclead
Cody I Nicka
Wickens W Flosi
Munro P Flosi
Faith X Sergi
Faith Q Malet
Antonio D Perin
Smith C Slusarski
Francesco S Ferencz
Juan G Bolognia
Julie U Iturbide
Mayumi Y Garufi
Cody Q Glick
Greenwood G Schemmer
Leja V Whobrey
Greenwood C Venere
Adams P Flosi
Johnson H Iturbide
Claire Z Caudy
Jefferson C Saylors
Munro T Rulapaugh
Silvio N Kolmetz
Isabel T Wieser
Munro D Amigon
Chavez I Inouye
Juan T Oldroyd
Greenwood V Gaucho
Leon G Amigon
Deepesh N Iturbide
Leja R Nicka
Stacey P Dilliard
Mujtaba R Butt
IdCountryDate
1000France2026-09-25
1001Brazil2026-10-04
1002Australia2026-10-08
1003Russia2026-09-24
1004Canada2026-09-15
1005Argentina2026-09-14
1006Australia2026-09-19
1007Canada2026-09-24
1008Brazil2026-09-23
1009Italy2026-09-25
1010India2026-10-03
1011Japan2026-10-07
1012India2026-09-17
1013Canada2026-09-20
1014United Kingdom2026-10-05
1015Argentina2026-10-11
1016India2026-09-18
1017United Kingdom2026-09-28
1018Australia2026-10-10
1019Brazil2026-09-19
1020Spain2026-09-24
1021France2026-09-14
1022Canada2026-09-17
1023Germany2026-10-07
1024Canada2026-10-04
1025France2026-10-02
1026Canada2026-09-24
1027Japan2026-10-08
1028Australia2026-09-22
1029Australia2026-10-13
1030Brazil2026-10-05
1031United Kingdom2026-09-17
1032Germany2026-09-24
1033India2026-09-22
1034Brazil2026-09-22
1035Brazil2026-10-05
1036Italy2026-10-01
1037United Kingdom2026-10-05
1038Italy2026-10-11
1039Germany2026-10-08
1040France2026-09-26
1041Argentina2026-10-10
1042Russia2026-09-20
1043Germany2026-10-07
1044Australia2026-10-01
1045Russia2026-09-30
1046Argentina2026-09-17
1047Brazil2026-10-03
1048France2026-10-04
1049France2026-10-12

On-Demand Data

NameIdCountryDate
Kadeem S Wieser1000Argentina2026-10-08
Chavez D Royster1001France2026-09-24
Jeanfrancois L Venere1002Germany2026-09-22
Ashley X Wieser1003United Kingdom2026-09-16
Sinclair N Caudy1004Australia2026-10-10
Francesco C Marrier1005Japan2026-09-20
Morrow S Darakjy1006Japan2026-10-09
Sinclair O Garufi1007Spain2026-10-04
Greenwood Y Garufi1008Russia2026-09-26
Murillo N Stenseth1009France2026-10-10
Johnson M Royster1010Spain2026-10-03
Leja Y Chui1011Russia2026-10-13
Francesco Y Flosi1012France2026-09-23
Jennifer M Briddick1013Italy2026-10-12
Kaitlin X Albares1014Brazil2026-09-22
Tony G Rim1015Russia2026-09-29
Rodrigues P Butt1016Germany2026-10-13
Emily B Venere1017Argentina2026-10-08
Darci N Paprocki1018Japan2026-09-30
Leja J Garufi1019Brazil2026-09-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David Z ChuiAustraliaAmy Elsner QUALIFIED
Francesco I MaletAustraliaAnna Fali RENEWAL
Kaitlin G CaldareraJapanIvan Magalhaes RENEWAL
Maisha X GauchoBrazilBernardo Dominic PROPOSAL
Kaitlin D BowleyFranceXuxue Feng PROPOSAL
Munro J GillianRussiaIoni Bowcher PROPOSAL
Izzy H WhobreyRussiaElwin Sharvill QUALIFIED
Jones P RulapaughBrazilElwin Sharvill NEW
Leon P MaletGermanyAnna Fali RENEWAL
Alejandro H AmigonJapanStephen Shaw NEGOTIATION
Greenwood G RoysterItalyElwin Sharvill UNQUALIFIED
Murillo X DilliardIndiaStephen Shaw NEGOTIATION
Leja M StockhamRussiaAnna Fali QUALIFIED
Octavia A MorascaUnited KingdomAmy Elsner NEGOTIATION
Clifford U OldroydIndiaAnna Fali RENEWAL
Aditya G FollerSpainBernardo Dominic UNQUALIFIED
Kaitlin O OstroskyRussiaOnyama Limba QUALIFIED
Juan M PoquetteJapanAsiya Javayant UNQUALIFIED
Faith P MaletSpainBernardo Dominic NEW
Deepesh W StockhamBrazilAmy Elsner QUALIFIED
Mayumi K StockhamItalyOnyama Limba UNQUALIFIED
Julie N VenereFranceStephen Shaw PROPOSAL
Mujtaba M KuskoIndiaAsiya Javayant PROPOSAL
Alejandro Z KolmetzBrazilStephen Shaw QUALIFIED
Mayumi G NestleBrazilIvan Magalhaes RENEWAL
Aika M RulapaughSpainStephen Shaw PROPOSAL
Johnson V FollerCanadaStephen Shaw NEGOTIATION
Adams F AmigonItalyOnyama Limba UNQUALIFIED
Kadeem J BowleyCanadaAnna Fali QUALIFIED
Sinclair R RutaIndiaOnyama Limba UNQUALIFIED
Isabel Q ButtItalyIvan Magalhaes NEGOTIATION
Chavez U RoysterUnited KingdomAmy Elsner RENEWAL
Aika K ShinkoBrazilIvan Magalhaes NEGOTIATION
Wickens L WhobreyRussiaXuxue Feng NEGOTIATION
Clifford K SlusarskiSpainAnna Fali PROPOSAL
Jennifer R BologniaFranceAmy Elsner RENEWAL
David O PaprockiBrazilStephen Shaw NEGOTIATION
Sinclair Z PerinFranceStephen Shaw NEW
Mayumi Q VocelkaIndiaIoni Bowcher UNQUALIFIED
Sinclair K MorascaItalyIoni Bowcher NEW

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