Summer Sale is here 🏖️ Get 50% off with code PRSM25 Learn More

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
Arvin R WhobreyRussiaAmy Elsner PROPOSAL
Munro I MarrierItalyIoni Bowcher PROPOSAL
Claire A FigeroaIndiaStephen Shaw RENEWAL
Murillo S CaldareraGermanyIoni Bowcher RENEWAL
Clifford D MaletGermanyBernardo Dominic RENEWAL
Morrow W FigeroaCanadaBernardo Dominic NEGOTIATION
Deepesh T MarrierArgentinaStephen Shaw QUALIFIED
Maria M FollerIndiaOnyama Limba NEW
Kadeem F IturbideGermanyIoni Bowcher NEW
Morrow E DarakjyJapanAsiya Javayant PROPOSAL
Greenwood V CaudyGermanyIvan Magalhaes RENEWAL
Chavez S AmigonFranceXuxue Feng QUALIFIED
Julie H MorascaIndiaAmy Elsner RENEWAL
Salvatore A NestleAustraliaIvan Magalhaes QUALIFIED
Emily L PoquetteAustraliaOnyama Limba NEGOTIATION
Mujtaba B NickaJapanXuxue Feng NEGOTIATION
Morrow K FigeroaJapanOnyama Limba RENEWAL
Jennifer L GillianGermanyAnna Fali NEGOTIATION
Smith Q StensethIndiaAsiya Javayant QUALIFIED
Maria K GauchoIndiaIoni Bowcher NEGOTIATION
Jennifer D SaylorsItalyOnyama Limba NEW
Johnson L DarakjyCanadaOnyama Limba NEW
Wickens R DoeBrazilStephen Shaw RENEWAL
Johnson V WhobreyGermanyAsiya Javayant NEGOTIATION
Izzy A ButtAustraliaOnyama Limba QUALIFIED
Ashley S InouyeCanadaAnna Fali NEW
Izzy Z SchemmerJapanOnyama Limba RENEWAL
Stacey C MacleadCanadaXuxue Feng PROPOSAL
Kadeem J StensethUnited KingdomElwin Sharvill UNQUALIFIED
Greenwood I NestleArgentinaIvan Magalhaes RENEWAL
Isabel B CaudyIndiaStephen Shaw NEGOTIATION
Faith B FigeroaAustraliaXuxue Feng UNQUALIFIED
Wickens B SlusarskiBrazilElwin Sharvill UNQUALIFIED
Jeanfrancois C VocelkaBrazilAsiya Javayant UNQUALIFIED
Aika Z RoysterRussiaIvan Magalhaes QUALIFIED
Stacey D DoeIndiaOnyama Limba UNQUALIFIED
Munro C CampainAustraliaIoni Bowcher UNQUALIFIED
Chavez O WaycottGermanyOnyama Limba NEGOTIATION
Aika X SergiGermanyBernardo Dominic UNQUALIFIED
Mujtaba M NickaIndiaIoni Bowcher QUALIFIED
Maria G BologniaSpainIoni Bowcher NEW
Adams J NickaFranceElwin Sharvill QUALIFIED
Adams V PaprockiItalyBernardo Dominic QUALIFIED
Antonio B MaletJapanXuxue Feng PROPOSAL
Chavez H NickaGermanyElwin Sharvill NEW
Cody F MarrierIndiaAsiya Javayant NEW
Salvatore P VocelkaBrazilAsiya Javayant PROPOSAL
Stacey I AmigonArgentinaElwin Sharvill QUALIFIED
Aika R KolmetzAustraliaIvan Magalhaes PROPOSAL
Julie D MaletItalyIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Salvatore M GillianBrazilIvan Magalhaes UNQUALIFIED
Cody B KuskoBrazilAnna Fali UNQUALIFIED
Cody R AmigonRussiaAsiya Javayant RENEWAL
Smith M MorascaItalyAmy Elsner NEW
Aditya F FlosiIndiaElwin Sharvill RENEWAL
Emily C CaldareraFranceXuxue Feng RENEWAL
Rodrigues B SlusarskiCanadaAsiya Javayant NEW
Munro V BriddickFranceElwin Sharvill NEGOTIATION
Leon T OldroydBrazilOnyama Limba UNQUALIFIED
Faith L KuskoCanadaAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith M DoeCanada2025-09-22Printing Dimensions PROPOSAL48Amy Elsner
1001Izzy Y OstroskyFrance2025-10-02King, Christopher A Esq PROPOSAL13Onyama Limba
1002Costa L RulapaughRussia2025-10-14Benton, John B Jr RENEWAL8Ioni Bowcher
1003Mujtaba S RoysterFrance2025-09-25Rangoni Of Florence NEGOTIATION78Elwin Sharvill
1004Morrow K FollerItaly2025-10-09Chapman, Ross E Esq RENEWAL12Amy Elsner
1005Juan E DoeItaly2025-09-21Chanay, Jeffrey A Esq QUALIFIED83Ivan Magalhaes
1006Aruna W AmigonFrance2025-09-30Feiner Bros QUALIFIED52Bernardo Dominic
1007Greenwood A SergiItaly2025-09-16King, Christopher A Esq NEGOTIATION17Ivan Magalhaes
1008Jeanfrancois P AlbaresJapan2025-09-28Chapman, Ross E Esq RENEWAL22Xuxue Feng
1009Ricardo B MorascaAustralia2025-10-06Chanay, Jeffrey A Esq QUALIFIED7Onyama Limba
1010Stacey J FollerFrance2025-10-13Dorl, James J Esq UNQUALIFIED72Bernardo Dominic
1011Maisha M SergiIndia2025-09-27Commercial Press RENEWAL33Amy Elsner
1012Jones Z MarrierSpain2025-09-22Printing Dimensions RENEWAL51Onyama Limba
1013Misaki P MaletJapan2025-10-09Chanay, Jeffrey A Esq PROPOSAL56Bernardo Dominic
1014Tony D CampainBrazil2025-09-18Rousseaux, Michael Esq RENEWAL2Stephen Shaw
1015Emily P DoeJapan2025-10-08Feiner Bros NEGOTIATION38Stephen Shaw
1016Johnson T MaletFrance2025-10-06Commercial Press RENEWAL77Ioni Bowcher
1017Mayumi R SaylorsSpain2025-10-13King, Christopher A Esq PROPOSAL28Ioni Bowcher
1018Jones X StensethBrazil2025-10-10Rousseaux, Michael Esq NEGOTIATION18Stephen Shaw
1019Jennifer K FerenczItaly2025-09-17Morlong Associates RENEWAL84Anna Fali
1020Kadeem B FerenczRussia2025-09-30Feiner Bros RENEWAL59Xuxue Feng
1021Alejandro A BriddickArgentina2025-09-27Morlong Associates QUALIFIED80Amy Elsner
1022Jeanfrancois O MaletAustralia2025-09-21Chanay, Jeffrey A Esq QUALIFIED80Anna Fali
1023Munro C AmigonBrazil2025-09-19Feltz Printing Service QUALIFIED24Onyama Limba
1024Murillo Q BriddickUnited Kingdom2025-09-29Truhlar And Truhlar Attys NEW10Ivan Magalhaes
1025Francesco I FerenczAustralia2025-09-27Rangoni Of Florence RENEWAL86Elwin Sharvill
1026Aditya I WhobreyCanada2025-10-03Truhlar And Truhlar Attys NEGOTIATION53Amy Elsner
1027Ivar F MaletIndia2025-10-06Morlong Associates RENEWAL36Anna Fali
1028Munro Q FerenczArgentina2025-09-17Chemel, James L Cpa RENEWAL22Amy Elsner
1029Mujtaba U ShinkoItaly2025-10-02Feiner Bros RENEWAL96Elwin Sharvill
1030Rodrigues B SchemmerBrazil2025-09-26Feiner Bros RENEWAL46Xuxue Feng
1031Octavia K RutaUnited Kingdom2025-09-26Dorl, James J Esq QUALIFIED6Ivan Magalhaes
1032Wickens K FigeroaIndia2025-09-26Feltz Printing Service QUALIFIED18Asiya Javayant
1033Johnson Q PoquetteGermany2025-09-25Printing Dimensions PROPOSAL59Bernardo Dominic
1034Jennifer V GarufiUnited Kingdom2025-09-29Rangoni Of Florence QUALIFIED94Bernardo Dominic
1035Leja K DoeFrance2025-10-06Commercial Press RENEWAL18Ivan Magalhaes
1036Octavia J PaprockiBrazil2025-10-05King, Christopher A Esq NEGOTIATION33Stephen Shaw
1037Jefferson I VenereAustralia2025-10-01Morlong Associates QUALIFIED23Ioni Bowcher
1038Antonio N IturbideJapan2025-10-14Chanay, Jeffrey A Esq QUALIFIED16Bernardo Dominic
1039Aditya G SchemmerGermany2025-09-29King, Christopher A Esq NEGOTIATION52Asiya Javayant
1040Silvio F MarrierRussia2025-09-21Morlong Associates NEW23Elwin Sharvill
1041Jones H GlickSpain2025-09-22Rangoni Of Florence QUALIFIED63Ivan Magalhaes
1042Rodrigues N InouyeItaly2025-10-08Morlong Associates RENEWAL32Stephen Shaw
1043Stacey F OstroskyBrazil2025-10-08Feltz Printing Service NEGOTIATION16Anna Fali
1044David I GauchoCanada2025-10-12Chanay, Jeffrey A Esq NEW91Ioni Bowcher
1045Smith P KolmetzCanada2025-10-01Dorl, James J Esq NEGOTIATION54Ivan Magalhaes
1046Rodrigues D FlosiSpain2025-09-20Chapman, Ross E Esq NEGOTIATION81Amy Elsner
1047Kaitlin U RimUnited Kingdom2025-10-01King, Christopher A Esq QUALIFIED48Ivan Magalhaes
1048Wickens Q RulapaughAustralia2025-10-12Chanay, Jeffrey A Esq PROPOSAL95Xuxue Feng
1049Darci R SchemmerArgentina2025-09-29Chemel, James L Cpa NEW14Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Johnson T RoysterSpainAnna Fali NEGOTIATION
Jennifer X VocelkaGermanyStephen Shaw RENEWAL
Kadeem N PaprockiFranceStephen Shaw QUALIFIED
Jefferson K OldroydRussiaStephen Shaw NEW
Arvin W SlusarskiUnited KingdomOnyama Limba QUALIFIED
Rodrigues V RimJapanAsiya Javayant PROPOSAL
Jefferson W MarrierSpainXuxue Feng QUALIFIED
Misaki S SlusarskiCanadaElwin Sharvill NEW
Deepesh F MaletJapanElwin Sharvill UNQUALIFIED
Johnson D WhobreyCanadaIoni Bowcher RENEWAL
Claire G GlickUnited KingdomXuxue Feng QUALIFIED
Rodrigues F PerinItalyStephen Shaw NEGOTIATION
Aditya F CampainArgentinaAsiya Javayant PROPOSAL
Deepesh T NickaRussiaOnyama Limba PROPOSAL
Arvin J DarakjyUnited KingdomStephen Shaw NEGOTIATION
Arvin J DoeIndiaStephen Shaw UNQUALIFIED
Jeanfrancois Y GauchoSpainOnyama Limba NEW
David R OldroydCanadaAnna Fali PROPOSAL
Juan J AlbaresJapanStephen Shaw PROPOSAL
Jones N OldroydBrazilIvan Magalhaes UNQUALIFIED
Kadeem I SaylorsItalyAnna Fali NEGOTIATION
Izzy Q PoquetteUnited KingdomAnna Fali UNQUALIFIED
Francesco D RutaCanadaAnna Fali NEW
Chavez S RoysterArgentinaIvan Magalhaes UNQUALIFIED
Izzy Q VenereJapanAsiya Javayant QUALIFIED
Rodrigues F WhobreyItalyElwin Sharvill NEGOTIATION
Jennifer U MaletRussiaXuxue Feng NEGOTIATION
Aditya H WaycottArgentinaAnna Fali NEGOTIATION
Greenwood H MaletIndiaAnna Fali NEW
Izzy Q RimFranceOnyama Limba NEGOTIATION
Costa P RoysterJapanXuxue Feng RENEWAL
Murillo P MaletRussiaElwin Sharvill RENEWAL
Maria A OldroydIndiaAmy Elsner NEGOTIATION
Jones C MacleadJapanStephen Shaw NEGOTIATION
Maria O KolmetzArgentinaBernardo Dominic QUALIFIED
Costa T VocelkaUnited KingdomBernardo Dominic PROPOSAL
Aika B GlickBrazilBernardo Dominic UNQUALIFIED
Claire N BowleyJapanBernardo Dominic UNQUALIFIED
Leon I StensethFranceOnyama Limba RENEWAL
Octavia P ChuiIndiaXuxue Feng QUALIFIED
Sinclair A DilliardCanadaStephen Shaw QUALIFIED
Chavez L SergiCanadaElwin Sharvill RENEWAL
Clifford R PaprockiRussiaAmy Elsner NEGOTIATION
Leon L NickaAustraliaAnna Fali NEGOTIATION
Ashley I CampainBrazilElwin Sharvill RENEWAL
Antonio O PerinIndiaAmy Elsner QUALIFIED
Isabel R KuskoSpainIvan Magalhaes RENEWAL
Cody Q FerenczBrazilIvan Magalhaes RENEWAL
Ricardo Q PoquetteCanadaAnna Fali QUALIFIED
Izzy F DilliardIndiaIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Claire E Darakjy
Silvio K Waycott
Juan Y Morasca
Cody N Tollner
Deepesh J Shinko
Salvatore W Amigon
Jefferson O Amigon
Wickens Q Maclead
Ricardo O Wieser
Murillo W Waycott
Tony M Chui
Arvin J Doe
Ricardo B Waycott
Emily L Briddick
Aditya F Royster
Ashley E Venere
Antonio M Venere
Deepesh K Waycott
Silvio Z Stockham
Darci T Venere
Aruna R Caldarera
Leja Z Albares
David N Doe
Chavez P Waycott
Aika D Perin
Ashley A Foller
Aruna L Ostrosky
Julie H Dilliard
Cody F Nicka
Leja S Sergi
Kadeem W Caldarera
Smith T Tollner
Isabel M Royster
Claire M Waycott
Ivar I Vocelka
Morrow E Bolognia
Jefferson N Whobrey
Jefferson U Dilliard
Darci V Nestle
Maisha H Tollner
Nicolas Y Chui
Aditya G Morasca
Ivar J Dilliard
Sinclair Z Wieser
Jefferson W Foller
Francesco Z Gaucho
Aruna W Slusarski
Ashley F Campain
Chavez O Saylors
Salvatore N Malet
IdCountryDate
1000Australia2025-10-10
1001Australia2025-09-20
1002Canada2025-10-03
1003Russia2025-10-08
1004Spain2025-09-30
1005Canada2025-09-26
1006Italy2025-09-22
1007Russia2025-10-12
1008Brazil2025-09-24
1009Australia2025-10-12
1010Australia2025-09-28
1011Russia2025-10-06
1012Brazil2025-09-24
1013Italy2025-09-18
1014Russia2025-09-15
1015Argentina2025-09-16
1016France2025-09-16
1017India2025-10-04
1018India2025-10-01
1019India2025-10-07
1020United Kingdom2025-09-26
1021India2025-10-07
1022France2025-09-17
1023France2025-09-18
1024India2025-09-30
1025Australia2025-09-19
1026Russia2025-09-23
1027United Kingdom2025-09-30
1028India2025-10-11
1029United Kingdom2025-10-01
1030India2025-10-06
1031India2025-10-14
1032United Kingdom2025-09-18
1033India2025-09-15
1034United Kingdom2025-09-26
1035Spain2025-10-03
1036India2025-10-07
1037Brazil2025-10-12
1038Germany2025-09-30
1039Australia2025-10-06
1040Italy2025-09-23
1041Italy2025-10-04
1042Argentina2025-09-23
1043India2025-09-26
1044Japan2025-10-02
1045United Kingdom2025-09-21
1046Japan2025-10-12
1047Italy2025-10-14
1048United Kingdom2025-09-22
1049Italy2025-10-02

On-Demand Data

NameIdCountryDate
Jeanfrancois Q Stockham1000Russia2025-09-25
Emily I Stenseth1001Italy2025-10-05
Faith W Doe1002India2025-09-20
Stacey Q Morasca1003Germany2025-09-27
Aika N Malet1004Germany2025-09-24
Wickens Q Rim1005Spain2025-10-02
Faith L Royster1006Argentina2025-09-21
Alejandro Z Nestle1007Italy2025-09-19
Claire N Iturbide1008Germany2025-09-26
Claire B Wieser1009Australia2025-10-03
Juan W Rulapaugh1010India2025-09-28
Murillo D Flosi1011Spain2025-10-02
Leja O Gillian1012Brazil2025-09-16
Emily L Garufi1013Canada2025-10-13
Jeanfrancois G Garufi1014Russia2025-09-24
Leja D Nestle1015Spain2025-09-18
Isabel V Garufi1016India2025-10-03
Silvio G Ruta1017Italy2025-09-23
Antonio Y Figeroa1018France2025-09-21
Antonio Y Venere1019United Kingdom2025-09-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon X TollnerSpainElwin Sharvill UNQUALIFIED
Silvio U InouyeIndiaBernardo Dominic RENEWAL
Clifford Z PoquetteRussiaOnyama Limba UNQUALIFIED
Octavia T GillianAustraliaAmy Elsner QUALIFIED
Greenwood N FollerIndiaOnyama Limba QUALIFIED
Stacey K NickaCanadaAsiya Javayant QUALIFIED
Nicolas A StensethGermanyIvan Magalhaes RENEWAL
David P ShinkoUnited KingdomAsiya Javayant NEW
Octavia N PaprockiIndiaAnna Fali NEW
Morrow C InouyeCanadaAmy Elsner NEGOTIATION
Clifford W PoquetteIndiaAsiya Javayant NEW
Emily Z WaycottJapanAnna Fali UNQUALIFIED
Misaki D OstroskyIndiaAmy Elsner RENEWAL
Nicolas Q DoeSpainIvan Magalhaes NEW
Alejandro U TollnerUnited KingdomStephen Shaw NEW
Rodrigues E BologniaItalyElwin Sharvill NEGOTIATION
Aruna O ChuiItalyElwin Sharvill QUALIFIED
Munro Z VenereUnited KingdomXuxue Feng PROPOSAL
Arvin H FerenczRussiaOnyama Limba RENEWAL
Jefferson N DarakjyItalyIoni Bowcher UNQUALIFIED
Smith O InouyeIndiaStephen Shaw NEW
Antonio V ButtArgentinaAmy Elsner PROPOSAL
Ricardo Y OstroskyArgentinaAnna Fali QUALIFIED
David R SergiItalyAsiya Javayant UNQUALIFIED
Izzy Q PaprockiRussiaAnna Fali NEW
Johnson A SchemmerFranceAnna Fali NEGOTIATION
Kaitlin A WieserUnited KingdomAnna Fali PROPOSAL
Jones M FerenczBrazilXuxue Feng NEW
Juan S RimItalyIvan Magalhaes RENEWAL
Aditya A GauchoArgentinaAmy Elsner PROPOSAL
Misaki S MarrierRussiaIvan Magalhaes RENEWAL
Wickens G ButtIndiaIvan Magalhaes PROPOSAL
Morrow Z NickaSpainElwin Sharvill QUALIFIED
Juan Q NestleUnited KingdomXuxue Feng QUALIFIED
Greenwood W GarufiArgentinaAnna Fali NEW
Ashley F WieserFranceAmy Elsner UNQUALIFIED
Johnson J OstroskySpainXuxue Feng UNQUALIFIED
Jeanfrancois O GauchoIndiaBernardo Dominic RENEWAL
Jeanfrancois E GauchoItalyAmy Elsner PROPOSAL
Adams W ButtRussiaIoni Bowcher 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>