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
Kadeem S FigeroaArgentinaXuxue Feng PROPOSAL
Leon N GarufiItalyStephen Shaw PROPOSAL
David M CaudyFranceBernardo Dominic NEW
Isabel E ShinkoUnited KingdomAmy Elsner UNQUALIFIED
Munro Z OldroydArgentinaIoni Bowcher RENEWAL
Leja X BriddickFranceIvan Magalhaes RENEWAL
Sinclair Z AlbaresJapanOnyama Limba PROPOSAL
Greenwood W SlusarskiJapanElwin Sharvill NEGOTIATION
Juan N RulapaughGermanyAnna Fali NEW
James A VocelkaIndiaIoni Bowcher RENEWAL
David H StensethRussiaStephen Shaw RENEWAL
Ricardo C MarrierRussiaAmy Elsner QUALIFIED
Sinclair X TollnerItalyStephen Shaw QUALIFIED
Smith M OstroskySpainAnna Fali NEGOTIATION
Kadeem W VenereFranceBernardo Dominic UNQUALIFIED
Mayumi E WhobreyGermanyIvan Magalhaes NEW
Izzy O GlickCanadaElwin Sharvill RENEWAL
Mayumi V GarufiCanadaAnna Fali PROPOSAL
Maisha E BowleyAustraliaIvan Magalhaes PROPOSAL
Maria N InouyeRussiaBernardo Dominic RENEWAL
Tony Y OstroskyItalyAnna Fali QUALIFIED
Juan R WaycottSpainBernardo Dominic NEW
Clifford C MaletIndiaAnna Fali UNQUALIFIED
Mujtaba I RutaFranceAnna Fali PROPOSAL
Francesco Y ButtGermanyOnyama Limba UNQUALIFIED
Rodrigues V CaldareraItalyAnna Fali PROPOSAL
Francesco G OldroydBrazilAmy Elsner PROPOSAL
Leon R GauchoSpainAsiya Javayant NEGOTIATION
Clifford W KolmetzItalyXuxue Feng UNQUALIFIED
Kaitlin Q CampainSpainXuxue Feng PROPOSAL
Wickens G DoeFranceAnna Fali RENEWAL
Jones C PoquetteRussiaElwin Sharvill NEGOTIATION
Leon L SchemmerBrazilAnna Fali RENEWAL
Mujtaba D PaprockiItalyStephen Shaw QUALIFIED
Costa E SlusarskiRussiaElwin Sharvill RENEWAL
Jeanfrancois X KolmetzSpainIoni Bowcher UNQUALIFIED
Claire S FerenczArgentinaOnyama Limba NEGOTIATION
Ashley E MaletRussiaAnna Fali NEW
Jeanfrancois X PaprockiJapanIoni Bowcher UNQUALIFIED
Aika Q MarrierRussiaAmy Elsner RENEWAL
Greenwood A GauchoSpainAmy Elsner NEGOTIATION
Clifford Y KolmetzAustraliaAsiya Javayant QUALIFIED
Jones C PaprockiRussiaBernardo Dominic NEW
Ashley Y CaudyArgentinaBernardo Dominic RENEWAL
Leon L MarrierSpainBernardo Dominic QUALIFIED
Kadeem E BowleyItalyXuxue Feng NEGOTIATION
Leon V GlickRussiaOnyama Limba QUALIFIED
Cody E PoquetteGermanyElwin Sharvill RENEWAL
Aditya F DarakjyCanadaIoni Bowcher NEW
Rodrigues C DilliardRussiaElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Maria L StockhamCanadaXuxue Feng UNQUALIFIED
Arvin O AmigonArgentinaIvan Magalhaes NEGOTIATION
Morrow R CaldareraIndiaBernardo Dominic PROPOSAL
Mayumi E IturbideBrazilIoni Bowcher UNQUALIFIED
Jones D OldroydGermanyBernardo Dominic RENEWAL
Adams O FlosiUnited KingdomOnyama Limba NEW
Morrow A FerenczArgentinaAmy Elsner NEW
Morrow C DarakjySpainElwin Sharvill QUALIFIED
Kadeem F ShinkoBrazilAmy Elsner NEW
Octavia J InouyeAustraliaXuxue Feng UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco C MarrierArgentina2026-10-17Buckley Miller Wright PROPOSAL80Asiya Javayant
1001Greenwood K SlusarskiBrazil2026-10-18Printing Dimensions NEW18Elwin Sharvill
1002Jefferson Z WieserJapan2026-10-01Printing Dimensions UNQUALIFIED48Ioni Bowcher
1003Antonio M SergiAustralia2026-10-09Rousseaux, Michael Esq QUALIFIED4Anna Fali
1004Juan K WhobreyGermany2026-10-15Rousseaux, Michael Esq NEGOTIATION70Asiya Javayant
1005Kadeem G PaprockiIndia2026-10-03Commercial Press NEGOTIATION45Anna Fali
1006Sinclair C RimItaly2026-10-02Feiner Bros UNQUALIFIED29Onyama Limba
1007Ricardo A DilliardBrazil2026-10-13Benton, John B Jr PROPOSAL57Elwin Sharvill
1008Alejandro C RoysterFrance2026-10-05Chapman, Ross E Esq RENEWAL69Stephen Shaw
1009Jennifer D ButtIndia2026-09-28Feltz Printing Service PROPOSAL29Asiya Javayant
1010Leja G MacleadJapan2026-10-03Feltz Printing Service NEGOTIATION13Bernardo Dominic
1011Francesco J FlosiGermany2026-09-26Rousseaux, Michael Esq PROPOSAL81Ioni Bowcher
1012Jennifer U InouyeIndia2026-10-04Printing Dimensions PROPOSAL92Stephen Shaw
1013Leon V SlusarskiUnited Kingdom2026-10-18Truhlar And Truhlar Attys NEW35Asiya Javayant
1014Aruna Z PaprockiBrazil2026-10-21Rangoni Of Florence PROPOSAL19Xuxue Feng
1015Costa Y DilliardItaly2026-09-30Chemel, James L Cpa QUALIFIED99Elwin Sharvill
1016Costa P FigeroaItaly2026-10-17King, Christopher A Esq RENEWAL78Elwin Sharvill
1017Wickens X TollnerAustralia2026-10-01Truhlar And Truhlar Attys RENEWAL56Onyama Limba
1018Antonio I KuskoFrance2026-10-03Commercial Press QUALIFIED54Bernardo Dominic
1019Adams H MaletJapan2026-10-21Chapman, Ross E Esq NEW0Bernardo Dominic
1020Alejandro R FigeroaJapan2026-10-03Morlong Associates RENEWAL13Ioni Bowcher
1021Izzy C MaletSpain2026-10-19King, Christopher A Esq UNQUALIFIED99Elwin Sharvill
1022Chavez J WieserUnited Kingdom2026-09-25Feltz Printing Service PROPOSAL68Bernardo Dominic
1023Misaki Q CaudyGermany2026-10-03Morlong Associates PROPOSAL85Xuxue Feng
1024Smith O RoysterUnited Kingdom2026-10-21Printing Dimensions NEW2Ioni Bowcher
1025Mujtaba T StockhamSpain2026-10-05Rousseaux, Michael Esq RENEWAL13Anna Fali
1026Stacey N MarrierGermany2026-10-11Printing Dimensions QUALIFIED98Bernardo Dominic
1027Arvin U DarakjyRussia2026-10-20Morlong Associates NEW73Ioni Bowcher
1028Isabel Q ChuiGermany2026-10-08Chapman, Ross E Esq RENEWAL41Ioni Bowcher
1029Juan P IturbideRussia2026-10-23Truhlar And Truhlar Attys NEGOTIATION74Ivan Magalhaes
1030Cody U MaletAustralia2026-10-18Commercial Press QUALIFIED35Ivan Magalhaes
1031Sinclair T SaylorsBrazil2026-10-17Feltz Printing Service UNQUALIFIED23Elwin Sharvill
1032Murillo F BriddickFrance2026-09-30Dorl, James J Esq NEW13Ivan Magalhaes
1033Izzy O SaylorsRussia2026-10-15Morlong Associates QUALIFIED8Amy Elsner
1034Clifford L TollnerArgentina2026-10-11Morlong Associates PROPOSAL54Xuxue Feng
1035Leja N BologniaArgentina2026-10-10Chanay, Jeffrey A Esq RENEWAL64Bernardo Dominic
1036Alejandro D WieserArgentina2026-10-20Rousseaux, Michael Esq NEGOTIATION18Asiya Javayant
1037Jeanfrancois A GillianCanada2026-10-13Dorl, James J Esq NEW19Asiya Javayant
1038Tony A SaylorsUnited Kingdom2026-09-29Dorl, James J Esq PROPOSAL51Stephen Shaw
1039Adams L IturbideArgentina2026-09-25Feltz Printing Service QUALIFIED23Stephen Shaw
1040Jones A RulapaughJapan2026-10-13Rangoni Of Florence RENEWAL28Stephen Shaw
1041Mujtaba A TollnerFrance2026-10-03Rangoni Of Florence NEGOTIATION42Ioni Bowcher
1042Smith G PaprockiJapan2026-09-28Benton, John B Jr UNQUALIFIED69Amy Elsner
1043Tony X StensethJapan2026-10-03Commercial Press NEW88Ioni Bowcher
1044Silvio A CaudySpain2026-10-21Commercial Press RENEWAL27Ioni Bowcher
1045Jefferson H RulapaughRussia2026-10-23Printing Dimensions NEGOTIATION55Stephen Shaw
1046Maria W TollnerItaly2026-10-24Printing Dimensions QUALIFIED61Stephen Shaw
1047Julie J MacleadRussia2026-10-11Feltz Printing Service NEGOTIATION31Asiya Javayant
1048Isabel X VenereGermany2026-09-25Truhlar And Truhlar Attys NEGOTIATION52Onyama Limba
1049Jones E IturbideFrance2026-10-16Chemel, James L Cpa QUALIFIED71Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Antonio O BriddickRussiaBernardo Dominic UNQUALIFIED
Emily A VocelkaUnited KingdomOnyama Limba NEW
Jennifer U BowleyItalyStephen Shaw RENEWAL
Mayumi Z RulapaughBrazilIoni Bowcher QUALIFIED
Francesco K MaletFranceAmy Elsner UNQUALIFIED
Leja L CaudyCanadaAnna Fali QUALIFIED
Salvatore N RoysterUnited KingdomStephen Shaw PROPOSAL
Ashley C StockhamGermanyIoni Bowcher RENEWAL
Maisha J MaletItalyOnyama Limba RENEWAL
Aika O StensethRussiaElwin Sharvill QUALIFIED
Greenwood G SaylorsFranceXuxue Feng UNQUALIFIED
Aruna S PoquetteArgentinaOnyama Limba UNQUALIFIED
Adams F FerenczItalyAnna Fali NEGOTIATION
Juan O BologniaRussiaOnyama Limba QUALIFIED
Murillo L AlbaresRussiaStephen Shaw NEGOTIATION
Izzy I GarufiAustraliaOnyama Limba RENEWAL
Morrow S MarrierBrazilAmy Elsner QUALIFIED
Rodrigues O MorascaSpainElwin Sharvill QUALIFIED
Juan N PaprockiUnited KingdomXuxue Feng RENEWAL
Kaitlin D VocelkaJapanXuxue Feng NEW
Cody M SlusarskiAustraliaIoni Bowcher RENEWAL
Emily J StockhamItalyStephen Shaw PROPOSAL
Chavez H BologniaCanadaXuxue Feng QUALIFIED
Kadeem D RimFranceAmy Elsner QUALIFIED
Kadeem C InouyeCanadaStephen Shaw NEW
Wickens V WaycottBrazilAsiya Javayant NEGOTIATION
Wickens B AlbaresAustraliaIvan Magalhaes NEGOTIATION
Kadeem N WieserCanadaStephen Shaw NEGOTIATION
Silvio X SaylorsRussiaAnna Fali NEGOTIATION
Juan Y MorascaCanadaIoni Bowcher NEW
Ivar A SlusarskiIndiaAnna Fali RENEWAL
Johnson T WaycottSpainAnna Fali NEW
Kadeem L ButtCanadaXuxue Feng PROPOSAL
Munro L IturbideRussiaXuxue Feng UNQUALIFIED
Silvio L WhobreyUnited KingdomIoni Bowcher NEGOTIATION
Sinclair F PoquetteCanadaIoni Bowcher NEGOTIATION
Smith P PerinArgentinaXuxue Feng UNQUALIFIED
Emily E OldroydUnited KingdomStephen Shaw PROPOSAL
Francesco Z AmigonItalyIoni Bowcher QUALIFIED
Nicolas Y RulapaughFranceAnna Fali NEW
Murillo M SergiUnited KingdomElwin Sharvill NEW
Jennifer T CampainAustraliaXuxue Feng NEW
Maisha J AlbaresCanadaStephen Shaw PROPOSAL
Claire O InouyeItalyIoni Bowcher NEW
Francesco A NickaItalyXuxue Feng UNQUALIFIED
Aditya Y StensethAustraliaAnna Fali NEGOTIATION
Mujtaba G IturbideItalyAmy Elsner PROPOSAL
Chavez C WaycottGermanyAmy Elsner RENEWAL
Izzy P BologniaCanadaOnyama Limba NEGOTIATION
Stacey R NestleArgentinaIvan Magalhaes QUALIFIED
Frozen Columns
Name
Costa R Marrier
Jeanfrancois B Ferencz
Stacey N Perin
Leon D Marrier
James Q Caudy
Johnson D Malet
Leja N Paprocki
Izzy Y Ferencz
Tony O Schemmer
Deepesh Z Gaucho
Ricardo P Ostrosky
Chavez K Wieser
Claire C Bowley
Izzy Y Sergi
David J Foller
Murillo F Iturbide
Cody Q Waycott
Kaitlin Q Morasca
Stacey X Ruta
Leja Z Sergi
Rodrigues T Nestle
Greenwood K Royster
Silvio S Bolognia
Isabel V Rim
Alejandro G Kusko
Antonio S Shinko
Kadeem I Iturbide
Rodrigues S Caldarera
Wickens W Rulapaugh
Ivar I Wieser
Misaki C Ostrosky
Claire T Butt
Jefferson E Nicka
Julie H Ferencz
Morrow H Butt
Sinclair Z Marrier
Juan K Chui
Jennifer L Sergi
Isabel Q Caudy
Stacey D Nicka
Adams Q Ostrosky
Faith E Malet
Murillo Y Rim
Wickens G Rulapaugh
Silvio R Albares
Clifford N Stenseth
Maria S Poquette
Claire J Kolmetz
Sinclair P Paprocki
Maisha K Malet
IdCountryDate
1000United Kingdom2026-09-25
1001Argentina2026-09-30
1002Germany2026-10-24
1003Argentina2026-10-03
1004Japan2026-09-30
1005Brazil2026-10-10
1006Italy2026-10-18
1007Australia2026-10-01
1008Argentina2026-10-03
1009Canada2026-10-17
1010Germany2026-09-30
1011Spain2026-10-14
1012Germany2026-10-17
1013France2026-10-06
1014France2026-10-06
1015India2026-10-22
1016United Kingdom2026-10-11
1017United Kingdom2026-10-01
1018Australia2026-09-25
1019Germany2026-10-07
1020Brazil2026-09-29
1021Spain2026-10-11
1022France2026-10-07
1023Argentina2026-10-02
1024Germany2026-10-12
1025Japan2026-10-10
1026Japan2026-09-26
1027Canada2026-10-07
1028Spain2026-10-23
1029Japan2026-10-21
1030France2026-10-05
1031Argentina2026-10-15
1032Brazil2026-10-13
1033France2026-10-11
1034France2026-10-07
1035India2026-09-30
1036India2026-09-29
1037France2026-10-11
1038United Kingdom2026-10-02
1039Russia2026-10-07
1040Brazil2026-10-16
1041United Kingdom2026-10-10
1042Canada2026-10-04
1043Argentina2026-09-26
1044Russia2026-10-18
1045Brazil2026-09-25
1046Japan2026-09-25
1047Argentina2026-10-21
1048Australia2026-10-01
1049Germany2026-09-25

On-Demand Data

NameIdCountryDate
Misaki Y Morasca1000Argentina2026-09-28
Octavia Y Ostrosky1001India2026-10-14
Leon W Poquette1002Argentina2026-09-26
Kaitlin A Foller1003Italy2026-09-29
Sinclair Q Gillian1004Italy2026-10-20
Ashley K Slusarski1005Germany2026-09-28
Jennifer A Sergi1006Russia2026-10-05
Maisha F Nestle1007Brazil2026-10-22
Wickens X Figeroa1008Australia2026-10-22
Francesco H Stockham1009Russia2026-10-03
Wickens Y Butt1010Italy2026-10-03
Jennifer P Iturbide1011Argentina2026-10-24
Tony K Nestle1012India2026-10-11
Isabel B Marrier1013Argentina2026-10-11
Jefferson Z Rulapaugh1014Spain2026-10-06
Leon B Stenseth1015Germany2026-10-15
Kadeem F Briddick1016Argentina2026-10-01
Aruna I Butt1017Canada2026-10-22
Aditya L Schemmer1018Spain2026-10-22
Jeanfrancois B Caudy1019India2026-10-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore W FlosiRussiaAmy Elsner QUALIFIED
Sinclair D SergiSpainBernardo Dominic QUALIFIED
Octavia V AmigonFranceIvan Magalhaes NEGOTIATION
Munro B PerinIndiaAnna Fali NEGOTIATION
Chavez Y DilliardIndiaStephen Shaw QUALIFIED
Greenwood R CampainItalyStephen Shaw NEW
Darci F ChuiGermanyOnyama Limba PROPOSAL
Nicolas J KuskoFranceOnyama Limba PROPOSAL
Faith C MarrierFranceIoni Bowcher RENEWAL
Faith I FigeroaSpainIoni Bowcher NEGOTIATION
Maisha Q CaldareraGermanyIvan Magalhaes PROPOSAL
Adams D FerenczGermanyIvan Magalhaes NEW
Costa L RimJapanXuxue Feng QUALIFIED
Emily X KuskoFranceAsiya Javayant UNQUALIFIED
Claire Y DilliardSpainOnyama Limba NEW
Rodrigues C BriddickIndiaAnna Fali NEW
Leja Q InouyeBrazilAmy Elsner NEW
Francesco Z PoquetteUnited KingdomAsiya Javayant PROPOSAL
Faith U MaletJapanElwin Sharvill UNQUALIFIED
Salvatore S WaycottUnited KingdomAsiya Javayant QUALIFIED
Maria U MaletArgentinaAnna Fali RENEWAL
Greenwood I OstroskyItalyAmy Elsner QUALIFIED
Antonio Z RutaBrazilStephen Shaw PROPOSAL
Greenwood T GauchoCanadaAmy Elsner UNQUALIFIED
Jeanfrancois M AmigonBrazilBernardo Dominic NEGOTIATION
Octavia P SaylorsArgentinaOnyama Limba RENEWAL
Greenwood U FollerJapanAnna Fali RENEWAL
Ashley H DarakjyArgentinaAmy Elsner PROPOSAL
Misaki T SlusarskiAustraliaXuxue Feng RENEWAL
Isabel R MaletJapanIoni Bowcher UNQUALIFIED
Johnson M KolmetzUnited KingdomBernardo Dominic QUALIFIED
Jefferson O WieserRussiaAmy Elsner PROPOSAL
Octavia K InouyeItalyXuxue Feng QUALIFIED
Isabel R NestleIndiaStephen Shaw PROPOSAL
Sinclair I WieserIndiaOnyama Limba QUALIFIED
Stacey D OldroydCanadaIoni Bowcher QUALIFIED
Emily M GarufiFranceAmy Elsner PROPOSAL
Arvin E MaletFranceAnna Fali NEW
Octavia A TollnerSpainAmy Elsner UNQUALIFIED
Kadeem W BologniaIndiaOnyama Limba RENEWAL

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