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
Mujtaba W SergiJapanXuxue Feng NEW
Mayumi L BologniaAustraliaAmy Elsner NEGOTIATION
Izzy U PoquetteGermanyIvan Magalhaes NEGOTIATION
Jones H FerenczRussiaAmy Elsner UNQUALIFIED
Ricardo T ButtCanadaBernardo Dominic UNQUALIFIED
Rodrigues F NestleArgentinaAmy Elsner RENEWAL
Jones F CaudyCanadaIvan Magalhaes PROPOSAL
Smith F SaylorsSpainAnna Fali NEW
Isabel Q CaudyJapanAmy Elsner NEGOTIATION
David M GillianCanadaStephen Shaw PROPOSAL
Jefferson F MorascaBrazilElwin Sharvill QUALIFIED
Chavez P MaletCanadaIoni Bowcher UNQUALIFIED
Jeanfrancois F MorascaRussiaIvan Magalhaes UNQUALIFIED
Claire J StockhamUnited KingdomIvan Magalhaes NEGOTIATION
Leja X FerenczJapanStephen Shaw UNQUALIFIED
Costa V AlbaresCanadaAnna Fali NEW
Darci N NickaSpainElwin Sharvill UNQUALIFIED
Tony H FerenczIndiaStephen Shaw RENEWAL
Stacey M WieserUnited KingdomIvan Magalhaes PROPOSAL
Mayumi S CaldareraCanadaAmy Elsner RENEWAL
Ashley O GarufiIndiaIoni Bowcher RENEWAL
Jeanfrancois N AlbaresIndiaAsiya Javayant UNQUALIFIED
Costa R CaldareraRussiaAnna Fali NEGOTIATION
Mujtaba M RulapaughRussiaElwin Sharvill NEGOTIATION
Maria A MaletJapanAsiya Javayant RENEWAL
Jefferson G SlusarskiGermanyIvan Magalhaes UNQUALIFIED
Adams D DoeJapanIoni Bowcher PROPOSAL
Maria I StockhamAustraliaIvan Magalhaes PROPOSAL
Greenwood U ChuiJapanIoni Bowcher UNQUALIFIED
Julie S KuskoFranceAmy Elsner QUALIFIED
Wickens O GillianIndiaStephen Shaw RENEWAL
Faith L VocelkaJapanAnna Fali PROPOSAL
Greenwood F FollerGermanyAmy Elsner NEW
Greenwood P CaudyFranceXuxue Feng QUALIFIED
Deepesh J GlickBrazilAmy Elsner NEW
Mujtaba T PoquetteBrazilElwin Sharvill RENEWAL
Mayumi S SaylorsCanadaXuxue Feng PROPOSAL
Aika D NestleItalyStephen Shaw PROPOSAL
Kaitlin E TollnerCanadaElwin Sharvill PROPOSAL
Aditya J TollnerIndiaAsiya Javayant RENEWAL
Ivar T TollnerArgentinaStephen Shaw UNQUALIFIED
Aditya A SlusarskiAustraliaOnyama Limba NEW
Mayumi O RulapaughRussiaStephen Shaw NEGOTIATION
Morrow Q SaylorsSpainAnna Fali NEGOTIATION
Claire I NickaUnited KingdomOnyama Limba UNQUALIFIED
Silvio Z SaylorsSpainOnyama Limba UNQUALIFIED
Juan A PerinItalyXuxue Feng PROPOSAL
David C MaletAustraliaElwin Sharvill QUALIFIED
Deepesh U CaudyFranceIvan Magalhaes UNQUALIFIED
Salvatore R PerinRussiaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Greenwood A PaprockiBrazilAmy Elsner PROPOSAL
Claire J PoquetteCanadaBernardo Dominic RENEWAL
Mujtaba U PoquetteIndiaElwin Sharvill UNQUALIFIED
Leon S RulapaughFranceAsiya Javayant NEW
Julie U NickaSpainIoni Bowcher NEW
Juan G AmigonIndiaIoni Bowcher QUALIFIED
Greenwood B DilliardItalyElwin Sharvill QUALIFIED
Ashley C ShinkoSpainStephen Shaw PROPOSAL
Chavez A MaletUnited KingdomAsiya Javayant PROPOSAL
Aruna S NickaCanadaIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan L OldroydSpain2026-09-18Chemel, James L Cpa NEGOTIATION72Ioni Bowcher
1001Juan N BriddickGermany2026-09-03Feltz Printing Service QUALIFIED82Bernardo Dominic
1002Clifford M ShinkoUnited Kingdom2026-09-03Feltz Printing Service NEGOTIATION80Ioni Bowcher
1003Leon F GlickFrance2026-09-12King, Christopher A Esq PROPOSAL4Stephen Shaw
1004Aruna R PoquetteSpain2026-09-15Feltz Printing Service NEGOTIATION75Elwin Sharvill
1005Munro R GlickItaly2026-08-26Chemel, James L Cpa NEW85Stephen Shaw
1006Sinclair J RutaArgentina2026-09-03Commercial Press NEGOTIATION15Onyama Limba
1007Johnson I WieserBrazil2026-09-09Chanay, Jeffrey A Esq QUALIFIED50Onyama Limba
1008Jeanfrancois P GillianUnited Kingdom2026-09-03Morlong Associates RENEWAL43Ivan Magalhaes
1009Misaki X NestleIndia2026-08-22Benton, John B Jr UNQUALIFIED19Ioni Bowcher
1010Mayumi H ButtItaly2026-09-15Rousseaux, Michael Esq PROPOSAL87Asiya Javayant
1011Johnson Y DoeSpain2026-08-29Rangoni Of Florence NEGOTIATION51Ioni Bowcher
1012Sinclair X DarakjyGermany2026-09-10Rangoni Of Florence NEGOTIATION56Stephen Shaw
1013Izzy Q GarufiSpain2026-08-27Rousseaux, Michael Esq UNQUALIFIED45Stephen Shaw
1014Ivar E FigeroaBrazil2026-08-30Chanay, Jeffrey A Esq PROPOSAL56Bernardo Dominic
1015Kaitlin Z KolmetzArgentina2026-08-28Chapman, Ross E Esq QUALIFIED68Onyama Limba
1016Isabel F OstroskyArgentina2026-08-24Commercial Press PROPOSAL18Onyama Limba
1017Juan Y CaudyCanada2026-09-15Benton, John B Jr UNQUALIFIED91Asiya Javayant
1018Jennifer H TollnerItaly2026-09-12Dorl, James J Esq NEGOTIATION25Stephen Shaw
1019Ashley D NickaBrazil2026-09-05Chemel, James L Cpa QUALIFIED90Xuxue Feng
1020Salvatore W MorascaIndia2026-08-29Rousseaux, Michael Esq UNQUALIFIED66Xuxue Feng
1021Jeanfrancois I GlickUnited Kingdom2026-09-06Buckley Miller Wright NEW30Ioni Bowcher
1022Greenwood T GillianBrazil2026-09-18Rangoni Of Florence QUALIFIED24Xuxue Feng
1023Nicolas O PerinSpain2026-08-29Dorl, James J Esq QUALIFIED73Elwin Sharvill
1024Kadeem W PaprockiJapan2026-08-22Feiner Bros NEW11Amy Elsner
1025Silvio O RoysterArgentina2026-08-26Dorl, James J Esq NEW32Elwin Sharvill
1026Aika N RimUnited Kingdom2026-08-31King, Christopher A Esq PROPOSAL20Amy Elsner
1027Costa M VocelkaSpain2026-09-13Chapman, Ross E Esq PROPOSAL83Elwin Sharvill
1028Octavia M GauchoUnited Kingdom2026-09-11Feiner Bros UNQUALIFIED53Stephen Shaw
1029Sinclair C DilliardCanada2026-09-10Feiner Bros UNQUALIFIED73Xuxue Feng
1030Mujtaba W VocelkaGermany2026-09-09Printing Dimensions NEW45Xuxue Feng
1031Julie H GlickCanada2026-09-13Printing Dimensions NEW26Anna Fali
1032Wickens W PoquetteGermany2026-08-27Rangoni Of Florence RENEWAL3Onyama Limba
1033Claire N VocelkaRussia2026-09-09Feiner Bros RENEWAL77Elwin Sharvill
1034Izzy K SergiUnited Kingdom2026-08-25Chemel, James L Cpa PROPOSAL67Amy Elsner
1035Juan Q WhobreyArgentina2026-08-24Chanay, Jeffrey A Esq NEGOTIATION68Stephen Shaw
1036Faith F BriddickCanada2026-08-31Commercial Press QUALIFIED18Elwin Sharvill
1037James S DoeSpain2026-08-29Chapman, Ross E Esq RENEWAL32Onyama Limba
1038Maria G KuskoJapan2026-09-14Rousseaux, Michael Esq NEW22Elwin Sharvill
1039Adams D BologniaUnited Kingdom2026-08-30Chapman, Ross E Esq NEGOTIATION80Asiya Javayant
1040David L MarrierJapan2026-09-17Feiner Bros PROPOSAL34Amy Elsner
1041Misaki C SchemmerAustralia2026-09-06Truhlar And Truhlar Attys UNQUALIFIED6Asiya Javayant
1042Costa L OldroydAustralia2026-09-06King, Christopher A Esq PROPOSAL26Bernardo Dominic
1043Emily O WhobreyFrance2026-09-09Truhlar And Truhlar Attys QUALIFIED35Amy Elsner
1044Smith J IturbideRussia2026-09-13Chemel, James L Cpa PROPOSAL63Ivan Magalhaes
1045Ivar L PerinUnited Kingdom2026-09-13Benton, John B Jr UNQUALIFIED2Elwin Sharvill
1046Mujtaba F WhobreySpain2026-08-23Commercial Press NEGOTIATION20Ivan Magalhaes
1047Isabel X MaletGermany2026-09-17Dorl, James J Esq RENEWAL22Xuxue Feng
1048Emily S SchemmerRussia2026-09-04Morlong Associates RENEWAL8Asiya Javayant
1049Stacey G CaldareraRussia2026-08-28Chemel, James L Cpa UNQUALIFIED22Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Morrow A PoquetteUnited KingdomOnyama Limba RENEWAL
Aditya H DarakjyRussiaAnna Fali NEW
Juan Y FigeroaCanadaIvan Magalhaes NEW
Stacey L FlosiUnited KingdomXuxue Feng PROPOSAL
Deepesh Z WieserFranceXuxue Feng RENEWAL
Greenwood W OldroydAustraliaIvan Magalhaes UNQUALIFIED
Arvin X StensethSpainIvan Magalhaes PROPOSAL
Isabel P CaldareraGermanyAsiya Javayant QUALIFIED
Morrow J WaycottSpainOnyama Limba QUALIFIED
Ivar W SlusarskiItalyAsiya Javayant PROPOSAL
Chavez M AmigonRussiaIvan Magalhaes PROPOSAL
Salvatore N BologniaGermanyStephen Shaw QUALIFIED
Greenwood H RulapaughGermanyIoni Bowcher UNQUALIFIED
Ashley I SergiIndiaAmy Elsner PROPOSAL
Sinclair I GillianItalyStephen Shaw QUALIFIED
Aditya Z FollerAustraliaBernardo Dominic NEGOTIATION
Misaki A WhobreyBrazilStephen Shaw NEW
Chavez N WaycottRussiaIvan Magalhaes PROPOSAL
Antonio M DarakjyIndiaIoni Bowcher UNQUALIFIED
Octavia M NestleGermanyOnyama Limba PROPOSAL
Jennifer U SchemmerItalyOnyama Limba PROPOSAL
Julie F SergiArgentinaAsiya Javayant QUALIFIED
Mayumi S AmigonGermanyStephen Shaw UNQUALIFIED
Leja E RimRussiaStephen Shaw QUALIFIED
Mujtaba J BowleyJapanAsiya Javayant RENEWAL
Juan Z NickaSpainStephen Shaw NEW
Aditya T AmigonSpainAsiya Javayant UNQUALIFIED
Morrow L DarakjyItalyAnna Fali RENEWAL
Nicolas L MacleadIndiaOnyama Limba PROPOSAL
Munro F ChuiFranceXuxue Feng RENEWAL
Costa V NestleItalyOnyama Limba NEW
Faith O VenereUnited KingdomBernardo Dominic RENEWAL
Ricardo K GauchoArgentinaIvan Magalhaes PROPOSAL
Sinclair O SaylorsItalyBernardo Dominic QUALIFIED
David K WaycottArgentinaIvan Magalhaes RENEWAL
Arvin C VocelkaSpainBernardo Dominic UNQUALIFIED
Wickens Y ButtSpainAmy Elsner PROPOSAL
Maria C MarrierFranceIoni Bowcher QUALIFIED
Costa N FigeroaIndiaIoni Bowcher PROPOSAL
Octavia K IturbideCanadaAmy Elsner UNQUALIFIED
Leon I BologniaGermanyIvan Magalhaes UNQUALIFIED
Antonio H IturbideJapanIvan Magalhaes PROPOSAL
Munro G ChuiGermanyAmy Elsner NEGOTIATION
Izzy X MarrierAustraliaIvan Magalhaes NEGOTIATION
Mujtaba D FerenczUnited KingdomAnna Fali QUALIFIED
Maisha K AlbaresArgentinaStephen Shaw RENEWAL
Tony Z SchemmerFranceAnna Fali RENEWAL
Aika H GlickBrazilElwin Sharvill PROPOSAL
Clifford I VenereAustraliaOnyama Limba UNQUALIFIED
Cody R OstroskyFranceAmy Elsner RENEWAL
Frozen Columns
Name
Jones C Figeroa
Arvin A Rulapaugh
Johnson U Flosi
Salvatore X Marrier
Aditya D Malet
Adams F Wieser
Leon K Iturbide
Antonio R Marrier
Antonio G Glick
Murillo C Foller
Octavia T Glick
Salvatore V Caudy
Kaitlin A Stockham
Misaki L Flosi
Salvatore J Stockham
Deepesh A Glick
David P Rulapaugh
Salvatore E Nicka
Leja H Briddick
Aditya F Nestle
Ivar P Foller
Jones B Iturbide
Aika T Royster
Adams I Gillian
Leon B Inouye
Jefferson J Wieser
Morrow J Schemmer
Wickens H Flosi
Smith D Schemmer
Rodrigues S Slusarski
Stacey C Stenseth
Mayumi R Paprocki
Nicolas Z Caudy
Jennifer L Vocelka
James X Tollner
Wickens W Gaucho
Sinclair H Waycott
Emily Z Campain
Jefferson I Iturbide
Aruna W Whobrey
Francesco S Sergi
Maria O Rulapaugh
Greenwood X Marrier
Ashley K Tollner
Emily V Campain
Maria Z Perin
Francesco T Nicka
Misaki T Briddick
Juan I Gillian
Aruna I Figeroa
IdCountryDate
1000India2026-09-10
1001Italy2026-08-27
1002United Kingdom2026-09-17
1003France2026-08-23
1004France2026-09-07
1005United Kingdom2026-08-30
1006Japan2026-09-12
1007Canada2026-09-07
1008India2026-09-04
1009United Kingdom2026-09-16
1010Australia2026-08-21
1011Italy2026-09-03
1012Germany2026-08-23
1013Italy2026-09-18
1014Japan2026-08-23
1015Russia2026-09-13
1016Australia2026-09-01
1017India2026-09-18
1018Australia2026-08-25
1019Germany2026-09-01
1020Germany2026-08-27
1021Italy2026-08-29
1022Russia2026-08-23
1023France2026-08-25
1024Spain2026-09-10
1025Spain2026-08-31
1026Brazil2026-09-13
1027Brazil2026-09-02
1028Australia2026-09-09
1029Australia2026-09-08
1030France2026-08-22
1031Spain2026-08-27
1032Canada2026-09-14
1033United Kingdom2026-09-06
1034Italy2026-09-04
1035Japan2026-09-11
1036Spain2026-09-08
1037France2026-09-16
1038France2026-09-15
1039Japan2026-09-06
1040Spain2026-08-28
1041Argentina2026-09-14
1042India2026-09-09
1043Germany2026-09-13
1044Italy2026-08-21
1045Argentina2026-09-09
1046United Kingdom2026-09-17
1047France2026-09-01
1048Germany2026-09-17
1049France2026-09-08

On-Demand Data

NameIdCountryDate
Mujtaba T Rim1000Japan2026-09-14
Nicolas P Oldroyd1001France2026-09-18
Jones L Gillian1002Japan2026-08-26
Smith L Ostrosky1003Spain2026-09-02
Misaki F Vocelka1004Brazil2026-08-21
David B Oldroyd1005France2026-09-03
Mayumi I Chui1006Brazil2026-08-21
Kadeem X Slusarski1007Germany2026-09-08
Smith J Dilliard1008France2026-08-30
Kaitlin M Gillian1009Italy2026-08-30
Izzy C Schemmer1010India2026-09-11
Kadeem I Amigon1011France2026-09-02
Aruna Z Nicka1012Argentina2026-09-11
Aruna B Caldarera1013Australia2026-09-09
Rodrigues P Tollner1014Germany2026-08-20
Francesco N Vocelka1015France2026-08-20
Salvatore K Butt1016Japan2026-08-22
Misaki N Malet1017United Kingdom2026-09-13
Faith K Nestle1018Russia2026-09-03
Clifford C Whobrey1019Italy2026-09-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith K PaprockiRussiaBernardo Dominic PROPOSAL
Silvio O AlbaresSpainBernardo Dominic NEGOTIATION
Jennifer G ShinkoUnited KingdomElwin Sharvill UNQUALIFIED
Octavia C MaletJapanIvan Magalhaes PROPOSAL
Ivar E ShinkoJapanElwin Sharvill PROPOSAL
Ivar L CaldareraUnited KingdomAnna Fali PROPOSAL
Aruna A DarakjyIndiaXuxue Feng NEGOTIATION
Juan I PerinUnited KingdomBernardo Dominic NEGOTIATION
Isabel K StockhamRussiaOnyama Limba QUALIFIED
Johnson A RulapaughUnited KingdomOnyama Limba QUALIFIED
Faith L GauchoUnited KingdomAsiya Javayant QUALIFIED
Silvio H SchemmerFranceIoni Bowcher PROPOSAL
Tony O BowleyBrazilAsiya Javayant NEGOTIATION
Claire O RimArgentinaStephen Shaw NEW
Emily O FollerUnited KingdomAnna Fali QUALIFIED
Octavia M CaldareraUnited KingdomAsiya Javayant NEW
Izzy O CaldareraFranceAnna Fali PROPOSAL
Maria K MaletArgentinaOnyama Limba NEGOTIATION
Ricardo Z GarufiGermanyAnna Fali PROPOSAL
Jones V RulapaughJapanIvan Magalhaes QUALIFIED
Aika U BriddickCanadaIoni Bowcher PROPOSAL
Kadeem Q MorascaFranceAmy Elsner NEW
Chavez B FigeroaFranceIoni Bowcher RENEWAL
Mayumi T KolmetzFranceStephen Shaw PROPOSAL
Octavia A RutaItalyElwin Sharvill NEW
Jefferson G PoquetteSpainOnyama Limba NEGOTIATION
Stacey E MacleadItalyElwin Sharvill RENEWAL
Maisha H VocelkaAustraliaStephen Shaw PROPOSAL
Costa U RulapaughJapanOnyama Limba UNQUALIFIED
Octavia Y DarakjyBrazilAsiya Javayant NEGOTIATION
Antonio Y BowleyGermanyOnyama Limba RENEWAL
Antonio E BriddickArgentinaXuxue Feng NEGOTIATION
Tony O RutaIndiaAmy Elsner PROPOSAL
Sinclair U PoquetteGermanyAmy Elsner PROPOSAL
James D OldroydIndiaOnyama Limba UNQUALIFIED
Stacey I OstroskyArgentinaBernardo Dominic NEW
Kadeem W OstroskyFranceOnyama Limba RENEWAL
Silvio E AlbaresRussiaAnna Fali UNQUALIFIED
Faith D WhobreyArgentinaElwin Sharvill RENEWAL
Octavia Z WhobreyGermanyXuxue 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>