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 I MorascaJapanStephen Shaw UNQUALIFIED
Antonio Y MorascaBrazilAmy Elsner UNQUALIFIED
Salvatore W SchemmerArgentinaElwin Sharvill RENEWAL
Morrow J RoysterJapanAsiya Javayant NEGOTIATION
Alejandro R BriddickJapanAnna Fali QUALIFIED
Johnson D OstroskySpainStephen Shaw RENEWAL
Aditya J DarakjySpainStephen Shaw NEW
Julie G AmigonIndiaAsiya Javayant NEW
Ricardo Y GauchoArgentinaElwin Sharvill QUALIFIED
Antonio A CaudyBrazilStephen Shaw PROPOSAL
Cody F SlusarskiAustraliaIoni Bowcher QUALIFIED
Johnson X ButtBrazilXuxue Feng PROPOSAL
Jeanfrancois A WieserGermanyStephen Shaw QUALIFIED
Aruna E ChuiSpainBernardo Dominic UNQUALIFIED
Greenwood Z RutaBrazilElwin Sharvill NEGOTIATION
Tony D PoquetteItalyStephen Shaw UNQUALIFIED
Murillo L MorascaFranceXuxue Feng NEW
Murillo R GillianFranceStephen Shaw PROPOSAL
Nicolas S SlusarskiUnited KingdomStephen Shaw UNQUALIFIED
Adams H GauchoUnited KingdomIoni Bowcher NEW
Aditya B StensethJapanAsiya Javayant RENEWAL
Faith O PerinFranceAmy Elsner NEGOTIATION
Wickens O MaletBrazilOnyama Limba UNQUALIFIED
Johnson Q RulapaughIndiaIvan Magalhaes NEGOTIATION
Ivar W MarrierUnited KingdomOnyama Limba UNQUALIFIED
James Y MacleadFranceElwin Sharvill RENEWAL
Maria C PoquetteSpainXuxue Feng PROPOSAL
Emily I AmigonFranceAnna Fali NEW
Aika C WieserAustraliaIoni Bowcher RENEWAL
Chavez B KolmetzAustraliaElwin Sharvill RENEWAL
Stacey V RutaCanadaIoni Bowcher NEW
Misaki S SaylorsAustraliaBernardo Dominic QUALIFIED
Leon L VocelkaRussiaIvan Magalhaes NEGOTIATION
Leon I CaudyFranceAsiya Javayant NEGOTIATION
Rodrigues X StensethBrazilStephen Shaw QUALIFIED
Arvin K MaletRussiaStephen Shaw NEGOTIATION
Nicolas M MarrierBrazilAsiya Javayant RENEWAL
Silvio E FollerIndiaAmy Elsner UNQUALIFIED
Arvin O NestleAustraliaElwin Sharvill UNQUALIFIED
Costa K KolmetzJapanAsiya Javayant PROPOSAL
Jefferson E CampainJapanXuxue Feng QUALIFIED
Ricardo Z StensethArgentinaBernardo Dominic NEGOTIATION
Adams J ShinkoArgentinaIvan Magalhaes RENEWAL
Leon D ChuiJapanOnyama Limba NEGOTIATION
Leon X KuskoBrazilIvan Magalhaes UNQUALIFIED
Cody H MaletSpainIoni Bowcher NEW
Tony L MacleadGermanyElwin Sharvill UNQUALIFIED
Jeanfrancois P OldroydIndiaAsiya Javayant NEGOTIATION
Johnson C AlbaresBrazilAsiya Javayant RENEWAL
Mujtaba I GarufiBrazilIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Nicolas Z FerenczSpainAsiya Javayant UNQUALIFIED
Aruna B ButtIndiaXuxue Feng PROPOSAL
Kadeem K StockhamArgentinaIvan Magalhaes NEW
Tony S RulapaughIndiaBernardo Dominic QUALIFIED
Emily L FigeroaJapanXuxue Feng NEGOTIATION
Francesco Y GauchoSpainElwin Sharvill QUALIFIED
Rodrigues E SchemmerCanadaXuxue Feng UNQUALIFIED
Ricardo L NickaJapanXuxue Feng PROPOSAL
Julie Q ChuiUnited KingdomAsiya Javayant QUALIFIED
Mujtaba Z RulapaughRussiaIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody Y CampainIndia2026-09-03Dorl, James J Esq UNQUALIFIED8Xuxue Feng
1001Mayumi O DarakjyCanada2026-09-26Morlong Associates NEGOTIATION68Amy Elsner
1002Rodrigues J ButtIndia2026-09-09Rousseaux, Michael Esq PROPOSAL60Elwin Sharvill
1003Wickens C SaylorsJapan2026-09-28Rangoni Of Florence QUALIFIED10Ivan Magalhaes
1004Costa H GarufiRussia2026-09-11Feiner Bros QUALIFIED23Asiya Javayant
1005Silvio Q MarrierCanada2026-09-28Chemel, James L Cpa QUALIFIED34Anna Fali
1006Aditya V KuskoItaly2026-09-05Rousseaux, Michael Esq RENEWAL27Stephen Shaw
1007Faith N CampainUnited Kingdom2026-09-22Chemel, James L Cpa RENEWAL17Ioni Bowcher
1008Deepesh B FollerSpain2026-09-08Feiner Bros QUALIFIED5Ioni Bowcher
1009Mujtaba U StockhamRussia2026-09-26Truhlar And Truhlar Attys UNQUALIFIED90Ivan Magalhaes
1010Jeanfrancois R ButtSpain2026-09-06Benton, John B Jr PROPOSAL23Onyama Limba
1011Antonio B PoquetteIndia2026-09-11Chanay, Jeffrey A Esq NEW20Ivan Magalhaes
1012Smith I SaylorsItaly2026-09-29King, Christopher A Esq QUALIFIED23Asiya Javayant
1013Greenwood D PerinBrazil2026-09-19Morlong Associates RENEWAL21Elwin Sharvill
1014Deepesh P SergiFrance2026-09-13Chemel, James L Cpa RENEWAL76Anna Fali
1015Izzy M GlickJapan2026-09-08Chapman, Ross E Esq NEW97Xuxue Feng
1016Munro P MorascaAustralia2026-09-22Feltz Printing Service NEGOTIATION56Anna Fali
1017Johnson I RutaArgentina2026-10-02Rousseaux, Michael Esq QUALIFIED27Xuxue Feng
1018Leon J FerenczUnited Kingdom2026-09-04Chemel, James L Cpa UNQUALIFIED26Stephen Shaw
1019Greenwood E DarakjyUnited Kingdom2026-10-01Feltz Printing Service UNQUALIFIED0Ioni Bowcher
1020Morrow C FollerFrance2026-09-13Buckley Miller Wright QUALIFIED53Asiya Javayant
1021Mayumi J CaudyFrance2026-09-15Morlong Associates PROPOSAL68Asiya Javayant
1022Izzy L NestleIndia2026-09-09Feltz Printing Service PROPOSAL3Asiya Javayant
1023Tony Q AlbaresBrazil2026-09-05Morlong Associates PROPOSAL5Xuxue Feng
1024Mujtaba Z KolmetzJapan2026-09-11Chapman, Ross E Esq NEGOTIATION21Stephen Shaw
1025Kadeem K FerenczAustralia2026-09-07Chemel, James L Cpa UNQUALIFIED35Xuxue Feng
1026Jeanfrancois R DarakjyRussia2026-09-08Truhlar And Truhlar Attys UNQUALIFIED49Asiya Javayant
1027Jeanfrancois D WhobreyUnited Kingdom2026-10-01Truhlar And Truhlar Attys NEW4Ivan Magalhaes
1028Francesco M MarrierFrance2026-09-21Commercial Press QUALIFIED80Elwin Sharvill
1029David M SlusarskiFrance2026-09-04Printing Dimensions PROPOSAL97Elwin Sharvill
1030Leon O StockhamIndia2026-09-10Truhlar And Truhlar Attys PROPOSAL10Bernardo Dominic
1031Darci C DilliardArgentina2026-09-06Printing Dimensions PROPOSAL72Amy Elsner
1032Francesco Q KuskoCanada2026-09-13Chanay, Jeffrey A Esq RENEWAL85Anna Fali
1033Ashley F DilliardFrance2026-09-19Buckley Miller Wright UNQUALIFIED69Xuxue Feng
1034Aruna L RoysterIndia2026-09-30Chapman, Ross E Esq RENEWAL23Onyama Limba
1035Ivar O BologniaCanada2026-09-29King, Christopher A Esq NEGOTIATION93Ioni Bowcher
1036Arvin O DoeFrance2026-09-19Feltz Printing Service PROPOSAL15Onyama Limba
1037Octavia W DoeGermany2026-09-25King, Christopher A Esq RENEWAL77Xuxue Feng
1038Aruna F PoquetteArgentina2026-09-20Chapman, Ross E Esq RENEWAL7Stephen Shaw
1039Leon J SaylorsUnited Kingdom2026-09-19Rangoni Of Florence RENEWAL35Stephen Shaw
1040Deepesh B DilliardRussia2026-10-01Truhlar And Truhlar Attys RENEWAL66Ioni Bowcher
1041Nicolas Y ChuiJapan2026-10-01Buckley Miller Wright UNQUALIFIED83Stephen Shaw
1042Ivar Q PerinAustralia2026-09-12Feiner Bros QUALIFIED83Elwin Sharvill
1043Francesco C MaletAustralia2026-09-16Dorl, James J Esq NEGOTIATION38Ioni Bowcher
1044Ricardo W WhobreyIndia2026-10-02Chemel, James L Cpa QUALIFIED60Asiya Javayant
1045Leon V VocelkaBrazil2026-09-30Printing Dimensions UNQUALIFIED11Stephen Shaw
1046Deepesh M OldroydGermany2026-09-06Morlong Associates UNQUALIFIED76Elwin Sharvill
1047Misaki B ChuiCanada2026-09-13Morlong Associates NEGOTIATION67Ivan Magalhaes
1048Ivar O BologniaBrazil2026-09-03Feiner Bros NEGOTIATION16Bernardo Dominic
1049Ricardo P NestleSpain2026-09-10Feiner Bros NEGOTIATION50Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Izzy C ShinkoItalyOnyama Limba PROPOSAL
Jennifer F RoysterCanadaIoni Bowcher UNQUALIFIED
Jeanfrancois M CaldareraIndiaAnna Fali NEW
Octavia D SlusarskiSpainIvan Magalhaes QUALIFIED
Smith R ButtBrazilIvan Magalhaes NEW
Darci M BowleyUnited KingdomXuxue Feng QUALIFIED
Silvio J VocelkaAustraliaXuxue Feng PROPOSAL
Chavez N StockhamJapanAmy Elsner PROPOSAL
Silvio S AlbaresIndiaBernardo Dominic QUALIFIED
Octavia K StensethArgentinaStephen Shaw QUALIFIED
Jefferson L AmigonCanadaAsiya Javayant NEW
Adams D CaldareraRussiaAsiya Javayant NEW
Octavia G RulapaughSpainAmy Elsner NEW
Francesco V GlickCanadaXuxue Feng NEGOTIATION
Wickens K OldroydSpainStephen Shaw NEGOTIATION
Claire G GauchoGermanyElwin Sharvill PROPOSAL
Adams D RutaSpainOnyama Limba UNQUALIFIED
Claire K IturbideBrazilStephen Shaw NEGOTIATION
Ashley C MarrierItalyIoni Bowcher NEW
Greenwood F CaldareraAustraliaElwin Sharvill QUALIFIED
Ashley M GlickFranceBernardo Dominic PROPOSAL
Chavez C WaycottRussiaIvan Magalhaes NEGOTIATION
Juan M InouyeFranceAnna Fali NEGOTIATION
Morrow H ShinkoUnited KingdomAnna Fali UNQUALIFIED
Silvio V ButtAustraliaElwin Sharvill QUALIFIED
Arvin F AlbaresRussiaAsiya Javayant UNQUALIFIED
David Y GillianGermanyAmy Elsner RENEWAL
Arvin G DoeBrazilAmy Elsner RENEWAL
Isabel J CampainIndiaAsiya Javayant NEGOTIATION
Maria K DoeFranceIoni Bowcher NEW
Silvio Z GillianJapanIvan Magalhaes UNQUALIFIED
Mayumi R MaletGermanyIvan Magalhaes NEGOTIATION
Francesco Q GarufiIndiaAnna Fali RENEWAL
Silvio C FigeroaRussiaAnna Fali NEW
Emily T BologniaFranceAnna Fali PROPOSAL
Francesco N GarufiIndiaOnyama Limba PROPOSAL
Ricardo P PerinSpainElwin Sharvill QUALIFIED
Deepesh H InouyeUnited KingdomAmy Elsner UNQUALIFIED
Arvin U SaylorsUnited KingdomOnyama Limba NEGOTIATION
Octavia X CaudyGermanyAmy Elsner UNQUALIFIED
Aditya B MorascaItalyAnna Fali NEGOTIATION
Silvio M BriddickFranceIvan Magalhaes NEW
James Z ChuiGermanyAnna Fali UNQUALIFIED
Jefferson I CampainItalyAnna Fali NEGOTIATION
Maria O GauchoArgentinaAmy Elsner UNQUALIFIED
Adams S GlickUnited KingdomAnna Fali PROPOSAL
Jones A ShinkoJapanStephen Shaw UNQUALIFIED
Sinclair W CaudyItalyXuxue Feng NEW
Aditya J CaldareraFranceXuxue Feng UNQUALIFIED
Darci E GlickItalyAsiya Javayant RENEWAL
Frozen Columns
Name
Adams J Foller
James U Ostrosky
Leja J Figeroa
Alejandro B Schemmer
James D Bolognia
Aditya H Stenseth
Costa Q Ostrosky
Smith W Caudy
Julie C Darakjy
Kadeem O Dilliard
Jefferson R Garufi
James N Whobrey
Juan B Bolognia
Tony V Stenseth
Clifford Z Oldroyd
Salvatore W Nicka
Isabel C Ruta
Ricardo F Sergi
Maria C Dilliard
Aditya R Maclead
Greenwood J Malet
Jefferson Q Dilliard
Salvatore X Gillian
Juan L Tollner
Jennifer A Paprocki
Mujtaba J Rulapaugh
Morrow R Kolmetz
Tony V Darakjy
Darci Y Morasca
Morrow N Stockham
Munro Y Iturbide
Arvin V Nestle
Maria F Malet
Octavia O Saylors
David M Venere
Faith E Shinko
Alejandro O Chui
Wickens H Foller
Tony W Inouye
Aditya A Bolognia
Leja T Albares
Octavia B Garufi
Emily N Bolognia
James K Figeroa
Munro C Perin
Aruna R Shinko
Kaitlin L Bolognia
Aditya X Doe
Izzy B Schemmer
Johnson W Campain
IdCountryDate
1000Canada2026-09-22
1001Germany2026-09-04
1002Australia2026-09-13
1003Australia2026-09-06
1004Germany2026-09-07
1005United Kingdom2026-09-19
1006Australia2026-09-28
1007India2026-09-07
1008Canada2026-09-04
1009Spain2026-09-30
1010Italy2026-09-04
1011Japan2026-09-16
1012France2026-09-04
1013Australia2026-09-29
1014Australia2026-09-13
1015Italy2026-09-26
1016Germany2026-09-10
1017India2026-09-09
1018Russia2026-09-16
1019Argentina2026-09-30
1020Russia2026-09-13
1021Japan2026-09-20
1022Russia2026-09-05
1023Japan2026-09-30
1024United Kingdom2026-10-02
1025Germany2026-09-25
1026Australia2026-09-14
1027Japan2026-09-17
1028Argentina2026-09-25
1029Argentina2026-09-13
1030United Kingdom2026-10-01
1031United Kingdom2026-09-23
1032United Kingdom2026-09-28
1033Canada2026-09-30
1034Australia2026-09-03
1035Germany2026-09-18
1036Australia2026-09-12
1037Australia2026-09-11
1038Germany2026-09-26
1039Russia2026-09-09
1040Canada2026-09-07
1041Argentina2026-10-01
1042Argentina2026-09-09
1043Argentina2026-09-07
1044Australia2026-09-26
1045Argentina2026-09-27
1046India2026-09-09
1047Australia2026-09-25
1048Japan2026-10-01
1049Spain2026-09-15

On-Demand Data

NameIdCountryDate
Leon M Shinko1000Italy2026-09-13
Aditya G Iturbide1001Germany2026-09-05
Antonio H Kusko1002France2026-09-03
Aditya O Stenseth1003Russia2026-09-30
Deepesh S Gillian1004Canada2026-09-30
Murillo U Waycott1005Italy2026-09-13
Maria B Stenseth1006Canada2026-09-14
Rodrigues Z Malet1007Argentina2026-09-09
Wickens S Bolognia1008Brazil2026-09-18
Salvatore Z Inouye1009Italy2026-09-13
Nicolas J Foller1010United Kingdom2026-09-06
Juan O Gaucho1011India2026-09-11
Sinclair K Caldarera1012Japan2026-09-25
Jennifer Y Flosi1013Italy2026-09-09
Isabel F Malet1014India2026-09-24
Munro U Venere1015Australia2026-10-01
Arvin C Paprocki1016France2026-09-18
Salvatore C Sergi1017Spain2026-09-19
Arvin G Wieser1018Argentina2026-09-29
Darci O Whobrey1019Australia2026-10-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar Q RutaJapanXuxue Feng UNQUALIFIED
Maisha L VocelkaAustraliaAsiya Javayant RENEWAL
Greenwood Y GlickItalyAsiya Javayant NEW
Costa T OldroydCanadaXuxue Feng QUALIFIED
Leja V WieserAustraliaBernardo Dominic QUALIFIED
Aika V AlbaresBrazilBernardo Dominic UNQUALIFIED
Maisha J SaylorsIndiaAnna Fali RENEWAL
Emily M WaycottItalyOnyama Limba NEGOTIATION
Adams L NickaArgentinaAsiya Javayant UNQUALIFIED
Stacey Q KolmetzFranceXuxue Feng RENEWAL
Aditya V StockhamCanadaStephen Shaw UNQUALIFIED
Izzy C GauchoAustraliaStephen Shaw RENEWAL
Salvatore K StensethSpainIvan Magalhaes PROPOSAL
Kadeem E VenereUnited KingdomElwin Sharvill PROPOSAL
Jones M SaylorsItalyXuxue Feng RENEWAL
Leja W KolmetzGermanyElwin Sharvill PROPOSAL
Arvin T RulapaughArgentinaXuxue Feng NEGOTIATION
Silvio O PaprockiFranceIvan Magalhaes NEGOTIATION
Greenwood L AmigonCanadaAmy Elsner NEGOTIATION
Mujtaba Q AmigonIndiaStephen Shaw QUALIFIED
Misaki K OstroskyBrazilAsiya Javayant QUALIFIED
Francesco Q PoquetteRussiaBernardo Dominic QUALIFIED
Ricardo J PoquetteFranceOnyama Limba QUALIFIED
Stacey G ShinkoJapanBernardo Dominic PROPOSAL
Francesco S FollerRussiaBernardo Dominic RENEWAL
Maria S SergiGermanyAmy Elsner NEW
Wickens J WaycottFranceStephen Shaw PROPOSAL
Johnson J RimIndiaAnna Fali UNQUALIFIED
David P RulapaughBrazilAsiya Javayant RENEWAL
Aika J PerinArgentinaAnna Fali NEW
James B BriddickJapanAsiya Javayant RENEWAL
David N VenereBrazilAmy Elsner NEGOTIATION
Mayumi E ShinkoSpainAnna Fali QUALIFIED
Aika Q GauchoRussiaAmy Elsner QUALIFIED
Jeanfrancois G ButtIndiaXuxue Feng NEW
Kaitlin B PerinUnited KingdomElwin Sharvill PROPOSAL
Greenwood W GauchoUnited KingdomElwin Sharvill RENEWAL
Darci U CaldareraIndiaBernardo Dominic PROPOSAL
Clifford U RimRussiaAmy Elsner NEW
Morrow W PerinUnited KingdomXuxue Feng 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>