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
Wickens G NestleJapanStephen Shaw PROPOSAL
Misaki Z CaudyJapanAnna Fali RENEWAL
Antonio N BriddickRussiaIvan Magalhaes NEW
Silvio G VocelkaCanadaXuxue Feng NEGOTIATION
Jones M FollerSpainAsiya Javayant QUALIFIED
Leja Y PaprockiCanadaIoni Bowcher UNQUALIFIED
Aruna S ButtArgentinaIvan Magalhaes PROPOSAL
Emily P CaldareraRussiaOnyama Limba QUALIFIED
Antonio X RimItalyOnyama Limba RENEWAL
Izzy D MacleadFranceAmy Elsner RENEWAL
Arvin W KolmetzItalyOnyama Limba RENEWAL
Arvin P BologniaUnited KingdomStephen Shaw UNQUALIFIED
Munro N CampainJapanAnna Fali RENEWAL
Leon V NestleItalyStephen Shaw QUALIFIED
Kaitlin B WaycottJapanBernardo Dominic PROPOSAL
Isabel L OstroskyItalyOnyama Limba NEGOTIATION
Salvatore J RulapaughAustraliaXuxue Feng NEW
Leon B ChuiJapanOnyama Limba RENEWAL
Leon Q DarakjyAustraliaXuxue Feng UNQUALIFIED
Aditya T WaycottBrazilIvan Magalhaes NEW
Johnson R ShinkoFranceIoni Bowcher NEW
Kaitlin K MaletUnited KingdomIoni Bowcher PROPOSAL
Kadeem H ChuiAustraliaIoni Bowcher UNQUALIFIED
Sinclair H WieserSpainIvan Magalhaes RENEWAL
Jefferson B RoysterAustraliaStephen Shaw NEW
Tony H ShinkoUnited KingdomAnna Fali NEGOTIATION
Morrow F WhobreyGermanyIvan Magalhaes UNQUALIFIED
Rodrigues H GillianUnited KingdomAnna Fali PROPOSAL
Smith A FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Juan N ShinkoArgentinaAsiya Javayant RENEWAL
Darci C PoquetteIndiaAmy Elsner RENEWAL
Aditya J FigeroaJapanIoni Bowcher QUALIFIED
Octavia P ShinkoCanadaAnna Fali RENEWAL
Juan X DilliardArgentinaAsiya Javayant NEGOTIATION
Nicolas P FlosiArgentinaXuxue Feng NEW
Claire W FigeroaFranceIoni Bowcher RENEWAL
Francesco D VenereCanadaOnyama Limba RENEWAL
Jones D RimItalyOnyama Limba RENEWAL
Alejandro A RimCanadaAsiya Javayant UNQUALIFIED
Juan D RoysterItalyXuxue Feng PROPOSAL
Julie F GlickIndiaAsiya Javayant NEW
Leon S ChuiUnited KingdomIvan Magalhaes PROPOSAL
Darci Z DarakjyAustraliaOnyama Limba QUALIFIED
Clifford D ButtBrazilOnyama Limba PROPOSAL
Ivar Y DilliardSpainIvan Magalhaes PROPOSAL
Jefferson P VocelkaUnited KingdomAnna Fali RENEWAL
James O MaletUnited KingdomAnna Fali NEGOTIATION
Tony J CaudyJapanOnyama Limba NEW
Greenwood O FerenczRussiaAmy Elsner QUALIFIED
Misaki D SaylorsUnited KingdomOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Maria W MacleadArgentinaXuxue Feng PROPOSAL
Ashley A WieserArgentinaAsiya Javayant UNQUALIFIED
Murillo I PerinUnited KingdomAnna Fali NEGOTIATION
Aika S PoquetteAustraliaOnyama Limba NEW
Kaitlin M IturbideIndiaElwin Sharvill QUALIFIED
Tony Y TollnerBrazilIvan Magalhaes RENEWAL
Morrow D NestleSpainBernardo Dominic QUALIFIED
Munro E CampainBrazilAnna Fali NEW
Izzy X PerinCanadaIvan Magalhaes RENEWAL
Aditya E MaletRussiaBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James Z DilliardAustralia2026-10-05Chapman, Ross E Esq PROPOSAL1Bernardo Dominic
1001Munro J FlosiAustralia2026-10-06King, Christopher A Esq QUALIFIED42Amy Elsner
1002Murillo Z InouyeItaly2026-09-24Benton, John B Jr UNQUALIFIED41Amy Elsner
1003Darci A BologniaRussia2026-09-13Feiner Bros NEW4Ioni Bowcher
1004Jones C GarufiArgentina2026-09-20Buckley Miller Wright UNQUALIFIED34Onyama Limba
1005Maria D GarufiRussia2026-09-25Chapman, Ross E Esq NEW85Asiya Javayant
1006Antonio W SergiSpain2026-09-26Rangoni Of Florence PROPOSAL3Xuxue Feng
1007Adams D ShinkoFrance2026-09-30Dorl, James J Esq QUALIFIED37Xuxue Feng
1008Nicolas K MaletFrance2026-09-28Chanay, Jeffrey A Esq UNQUALIFIED54Asiya Javayant
1009Maria P DoeRussia2026-09-11Morlong Associates RENEWAL23Asiya Javayant
1010Wickens I MarrierUnited Kingdom2026-10-04Printing Dimensions QUALIFIED94Amy Elsner
1011Misaki J AlbaresUnited Kingdom2026-09-15Morlong Associates UNQUALIFIED39Amy Elsner
1012Maria B CaudyUnited Kingdom2026-10-07Dorl, James J Esq NEW33Amy Elsner
1013Julie L FigeroaGermany2026-09-21Benton, John B Jr PROPOSAL70Elwin Sharvill
1014Jeanfrancois D RutaGermany2026-09-20Chemel, James L Cpa QUALIFIED4Asiya Javayant
1015Julie A StockhamSpain2026-10-07Morlong Associates QUALIFIED93Bernardo Dominic
1016Julie K MarrierSpain2026-09-20King, Christopher A Esq RENEWAL7Onyama Limba
1017Kaitlin G MaletCanada2026-10-02Chapman, Ross E Esq RENEWAL58Stephen Shaw
1018Wickens S FigeroaCanada2026-10-02King, Christopher A Esq NEGOTIATION47Bernardo Dominic
1019Mayumi N OstroskyAustralia2026-09-15Rangoni Of Florence QUALIFIED46Ioni Bowcher
1020Costa G OldroydJapan2026-10-01Benton, John B Jr QUALIFIED69Asiya Javayant
1021Murillo S GarufiSpain2026-09-26Dorl, James J Esq UNQUALIFIED36Stephen Shaw
1022Claire G FigeroaItaly2026-09-22Morlong Associates NEGOTIATION64Stephen Shaw
1023Ivar B StockhamArgentina2026-09-25Dorl, James J Esq RENEWAL84Stephen Shaw
1024Sinclair E IturbideCanada2026-09-29Chapman, Ross E Esq NEGOTIATION94Amy Elsner
1025Smith K KuskoBrazil2026-09-22Feiner Bros NEW70Bernardo Dominic
1026Morrow V VocelkaGermany2026-09-30Feiner Bros PROPOSAL72Stephen Shaw
1027Greenwood K FigeroaAustralia2026-09-15Truhlar And Truhlar Attys PROPOSAL77Onyama Limba
1028Misaki M FlosiBrazil2026-09-20Printing Dimensions QUALIFIED50Onyama Limba
1029David N ShinkoItaly2026-09-24Buckley Miller Wright PROPOSAL30Stephen Shaw
1030Chavez B BologniaSpain2026-09-26Buckley Miller Wright PROPOSAL27Asiya Javayant
1031Emily B BowleySpain2026-09-25Benton, John B Jr RENEWAL90Onyama Limba
1032Mayumi O KolmetzGermany2026-09-17Buckley Miller Wright UNQUALIFIED65Bernardo Dominic
1033Antonio P CampainGermany2026-09-21Benton, John B Jr PROPOSAL11Xuxue Feng
1034Leja A FollerJapan2026-09-11King, Christopher A Esq RENEWAL84Ivan Magalhaes
1035Mujtaba U ShinkoSpain2026-09-16Truhlar And Truhlar Attys QUALIFIED22Ioni Bowcher
1036Jeanfrancois X MaletAustralia2026-10-02Feltz Printing Service PROPOSAL58Onyama Limba
1037Mujtaba I WhobreyRussia2026-09-14Feltz Printing Service RENEWAL18Amy Elsner
1038Tony L BologniaFrance2026-10-10Dorl, James J Esq PROPOSAL45Onyama Limba
1039Misaki W MarrierJapan2026-10-02Morlong Associates NEGOTIATION65Asiya Javayant
1040Munro N KolmetzGermany2026-09-24Printing Dimensions NEW26Elwin Sharvill
1041Jones L MaletBrazil2026-09-19Dorl, James J Esq NEGOTIATION31Stephen Shaw
1042Aditya G GauchoArgentina2026-09-11King, Christopher A Esq RENEWAL92Onyama Limba
1043Sinclair Q PoquetteBrazil2026-09-27Chanay, Jeffrey A Esq QUALIFIED75Amy Elsner
1044Juan H PoquetteFrance2026-09-15King, Christopher A Esq QUALIFIED81Amy Elsner
1045Aruna U NestleAustralia2026-09-21Truhlar And Truhlar Attys UNQUALIFIED35Xuxue Feng
1046Alejandro R RimCanada2026-09-13Printing Dimensions UNQUALIFIED71Elwin Sharvill
1047Greenwood F GarufiIndia2026-09-12King, Christopher A Esq UNQUALIFIED37Onyama Limba
1048Leja U BologniaAustralia2026-09-24Commercial Press NEGOTIATION94Bernardo Dominic
1049Leja C InouyeGermany2026-10-01Feltz Printing Service QUALIFIED54Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Kadeem H DarakjyIndiaOnyama Limba UNQUALIFIED
Kaitlin F CampainCanadaAnna Fali RENEWAL
Tony W InouyeArgentinaStephen Shaw NEW
Greenwood Z BriddickUnited KingdomIoni Bowcher QUALIFIED
Leon X BologniaAustraliaOnyama Limba UNQUALIFIED
Tony V FigeroaFranceOnyama Limba PROPOSAL
Darci E ShinkoBrazilOnyama Limba NEGOTIATION
Wickens T PaprockiItalyIvan Magalhaes NEW
Silvio T FigeroaItalyStephen Shaw UNQUALIFIED
Jennifer P StensethRussiaIvan Magalhaes RENEWAL
Ivar E RulapaughItalyIoni Bowcher NEGOTIATION
Salvatore H InouyeSpainAsiya Javayant UNQUALIFIED
Isabel M GauchoSpainAsiya Javayant NEGOTIATION
Misaki H GlickItalyElwin Sharvill NEW
Ashley V SaylorsJapanElwin Sharvill NEW
Jefferson R BologniaIndiaOnyama Limba UNQUALIFIED
Munro M PerinUnited KingdomOnyama Limba NEGOTIATION
Ivar O KuskoRussiaElwin Sharvill NEW
Izzy V IturbideAustraliaAsiya Javayant PROPOSAL
Julie Y BriddickArgentinaOnyama Limba PROPOSAL
Munro V CaldareraUnited KingdomAnna Fali NEGOTIATION
Cody S IturbideJapanAnna Fali RENEWAL
Murillo Q MacleadArgentinaBernardo Dominic QUALIFIED
Mujtaba K DarakjyFranceElwin Sharvill QUALIFIED
Murillo A PoquetteUnited KingdomIvan Magalhaes PROPOSAL
Francesco C TollnerCanadaXuxue Feng PROPOSAL
Aruna Q VocelkaJapanBernardo Dominic QUALIFIED
Faith Q VenereJapanStephen Shaw NEGOTIATION
Kaitlin P GarufiBrazilBernardo Dominic NEGOTIATION
Morrow H InouyeItalyOnyama Limba NEW
Darci Y VenereItalyElwin Sharvill UNQUALIFIED
Adams K KolmetzRussiaAsiya Javayant RENEWAL
Alejandro Y AlbaresItalyAsiya Javayant UNQUALIFIED
Mayumi T SergiCanadaElwin Sharvill RENEWAL
Deepesh D StockhamFranceStephen Shaw PROPOSAL
Darci B ShinkoGermanyStephen Shaw NEW
Sinclair F StensethArgentinaAnna Fali NEW
Leja F PerinItalyOnyama Limba RENEWAL
Rodrigues H KolmetzUnited KingdomXuxue Feng NEGOTIATION
Darci M BriddickBrazilIvan Magalhaes PROPOSAL
Johnson A GarufiBrazilIvan Magalhaes QUALIFIED
Greenwood F GlickAustraliaAnna Fali PROPOSAL
Cody D SaylorsJapanAsiya Javayant UNQUALIFIED
Faith H OldroydJapanElwin Sharvill RENEWAL
Murillo P MaletArgentinaAnna Fali NEW
Maria E GauchoCanadaIvan Magalhaes RENEWAL
Salvatore T GauchoJapanXuxue Feng NEGOTIATION
Nicolas K FlosiArgentinaOnyama Limba NEGOTIATION
Leon O PoquetteAustraliaAsiya Javayant RENEWAL
Izzy J WhobreyBrazilXuxue Feng UNQUALIFIED
Frozen Columns
Name
Aditya A Dilliard
Ivar D Perin
Octavia J Stenseth
Juan D Garufi
Morrow H Caldarera
Rodrigues Y Ferencz
Antonio G Chui
Clifford I Ostrosky
Faith C Briddick
Deepesh O Saylors
Jones P Oldroyd
Kaitlin W Chui
Stacey X Briddick
Izzy B Waycott
Juan Z Gillian
Costa R Poquette
Clifford E Briddick
Darci Z Dilliard
Aika O Kolmetz
Wickens U Gillian
Emily S Bolognia
David C Figeroa
Jones F Ferencz
Tony L Stockham
Mujtaba J Vocelka
Kaitlin L Flosi
Salvatore L Sergi
Julie W Vocelka
Ivar U Amigon
Silvio P Albares
Kadeem U Shinko
Antonio U Dilliard
Aditya T Venere
Mujtaba A Poquette
Claire T Chui
Arvin Z Figeroa
Izzy B Poquette
Julie N Maclead
Chavez I Albares
Ricardo J Albares
Ivar O Iturbide
Kadeem U Inouye
Leja N Campain
Ricardo Z Dilliard
Wickens D Garufi
Smith K Vocelka
Deepesh O Foller
Maisha I Gaucho
Cody Y Albares
Rodrigues Z Malet
IdCountryDate
1000France2026-10-04
1001Australia2026-09-18
1002India2026-10-01
1003Japan2026-09-17
1004Germany2026-10-01
1005Canada2026-09-11
1006India2026-10-06
1007India2026-10-04
1008United Kingdom2026-09-28
1009Canada2026-09-21
1010Argentina2026-10-04
1011India2026-10-09
1012Russia2026-10-10
1013Russia2026-09-22
1014Russia2026-10-08
1015Germany2026-10-09
1016Germany2026-10-06
1017Germany2026-09-27
1018Russia2026-09-25
1019Russia2026-09-22
1020United Kingdom2026-09-17
1021United Kingdom2026-09-24
1022France2026-10-07
1023Canada2026-09-15
1024Italy2026-10-05
1025Japan2026-09-28
1026Germany2026-10-08
1027Russia2026-09-11
1028Australia2026-09-20
1029Italy2026-09-29
1030Brazil2026-09-19
1031France2026-09-25
1032Spain2026-09-16
1033Russia2026-09-24
1034Brazil2026-10-09
1035United Kingdom2026-09-23
1036Brazil2026-09-20
1037India2026-10-06
1038France2026-09-24
1039Italy2026-09-13
1040Canada2026-10-01
1041Russia2026-10-05
1042France2026-09-17
1043Argentina2026-10-07
1044Argentina2026-09-24
1045Brazil2026-09-23
1046Germany2026-09-27
1047Australia2026-10-10
1048Canada2026-10-03
1049Italy2026-10-10

On-Demand Data

NameIdCountryDate
Aika W Albares1000Germany2026-09-16
Claire I Ostrosky1001Canada2026-10-05
Octavia Y Waycott1002Argentina2026-10-03
Costa G Caudy1003Germany2026-09-27
Adams K Bolognia1004Brazil2026-10-01
Isabel X Flosi1005India2026-09-27
Clifford H Venere1006Italy2026-10-02
Smith Z Gaucho1007Italy2026-10-07
Mayumi C Royster1008France2026-09-25
Salvatore E Oldroyd1009Canada2026-10-07
Greenwood V Marrier1010Argentina2026-09-22
Antonio H Nicka1011Brazil2026-09-13
Chavez G Gillian1012Japan2026-09-23
Johnson C Wieser1013Canada2026-09-14
Faith K Royster1014India2026-09-11
Adams H Sergi1015Germany2026-09-11
Octavia F Stenseth1016Japan2026-09-13
Clifford T Albares1017Argentina2026-10-02
Salvatore M Maclead1018United Kingdom2026-09-26
Nicolas U Vocelka1019Spain2026-10-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika A WieserItalyIvan Magalhaes RENEWAL
Emily I SergiAustraliaStephen Shaw RENEWAL
Johnson I VenereItalyIoni Bowcher NEGOTIATION
Johnson R WhobreyAustraliaAsiya Javayant RENEWAL
Maria M ButtCanadaElwin Sharvill NEW
Greenwood M MaletAustraliaIoni Bowcher NEGOTIATION
David L GarufiGermanyAmy Elsner UNQUALIFIED
Kadeem M FollerUnited KingdomIvan Magalhaes QUALIFIED
Tony S InouyeUnited KingdomOnyama Limba QUALIFIED
Jeanfrancois Y FerenczUnited KingdomAnna Fali UNQUALIFIED
James K GillianUnited KingdomElwin Sharvill RENEWAL
Misaki Z WaycottFranceXuxue Feng PROPOSAL
Leon R KolmetzBrazilIoni Bowcher UNQUALIFIED
Arvin I StockhamUnited KingdomIvan Magalhaes PROPOSAL
Julie Z WieserGermanyIoni Bowcher PROPOSAL
Kadeem S KolmetzCanadaOnyama Limba QUALIFIED
Tony G RimCanadaXuxue Feng QUALIFIED
Misaki I MaletRussiaOnyama Limba RENEWAL
Ricardo K DoeSpainAnna Fali RENEWAL
Chavez E OstroskyJapanXuxue Feng QUALIFIED
Aruna A CaudyCanadaIvan Magalhaes QUALIFIED
Mujtaba D VocelkaAustraliaBernardo Dominic NEW
Nicolas G DoeArgentinaIoni Bowcher NEW
Julie P SergiFranceAsiya Javayant PROPOSAL
Silvio P DarakjyUnited KingdomIoni Bowcher NEGOTIATION
Stacey B ChuiCanadaIvan Magalhaes NEW
Maisha X FlosiFranceOnyama Limba NEW
Smith O GauchoCanadaOnyama Limba NEGOTIATION
Stacey X WieserBrazilOnyama Limba QUALIFIED
Alejandro S TollnerArgentinaIoni Bowcher PROPOSAL
Greenwood V ShinkoArgentinaAsiya Javayant PROPOSAL
David Y GillianFranceStephen Shaw QUALIFIED
Francesco D ChuiCanadaStephen Shaw RENEWAL
Mayumi L KuskoJapanXuxue Feng UNQUALIFIED
Leja D GillianAustraliaOnyama Limba NEW
Aruna Q DarakjyUnited KingdomBernardo Dominic QUALIFIED
Darci W SergiRussiaIoni Bowcher QUALIFIED
Darci N StockhamRussiaOnyama Limba UNQUALIFIED
Kadeem G PaprockiSpainBernardo Dominic NEGOTIATION
Leon G MaletAustraliaOnyama Limba 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>