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
Sinclair N CampainSpainBernardo Dominic UNQUALIFIED
Faith T StockhamRussiaBernardo Dominic PROPOSAL
Antonio M AmigonIndiaIoni Bowcher QUALIFIED
Julie F StockhamIndiaIoni Bowcher UNQUALIFIED
Mujtaba M DoeSpainIoni Bowcher NEGOTIATION
Julie B MaletItalyBernardo Dominic QUALIFIED
Darci G VenereIndiaBernardo Dominic PROPOSAL
Rodrigues D MorascaIndiaAnna Fali NEGOTIATION
Munro C WieserBrazilAmy Elsner UNQUALIFIED
Claire T CaldareraSpainElwin Sharvill NEW
Alejandro K ChuiArgentinaXuxue Feng NEW
Rodrigues J BowleyRussiaIoni Bowcher UNQUALIFIED
Nicolas E SaylorsSpainXuxue Feng QUALIFIED
Alejandro X WaycottAustraliaElwin Sharvill RENEWAL
Aruna M RoysterRussiaOnyama Limba QUALIFIED
Tony Z MorascaGermanyAmy Elsner UNQUALIFIED
Cody B PaprockiArgentinaAnna Fali NEGOTIATION
Morrow F SchemmerArgentinaIvan Magalhaes RENEWAL
Morrow N CampainUnited KingdomIvan Magalhaes RENEWAL
Greenwood O MacleadAustraliaIvan Magalhaes NEW
Ricardo J StensethSpainAnna Fali RENEWAL
Jefferson W WieserGermanyStephen Shaw QUALIFIED
Jefferson P RimArgentinaIoni Bowcher UNQUALIFIED
Murillo H CampainAustraliaAnna Fali PROPOSAL
Murillo P WhobreyIndiaAsiya Javayant NEW
Jeanfrancois T PaprockiArgentinaXuxue Feng NEGOTIATION
Costa V GauchoGermanyXuxue Feng NEW
Salvatore Z SchemmerItalyAmy Elsner UNQUALIFIED
Alejandro F OstroskyIndiaAsiya Javayant UNQUALIFIED
Francesco V OstroskyGermanyAmy Elsner NEW
Claire N IturbideSpainAmy Elsner PROPOSAL
Munro N RimBrazilOnyama Limba RENEWAL
Morrow F ShinkoSpainXuxue Feng PROPOSAL
Munro E StensethUnited KingdomAmy Elsner NEGOTIATION
Ivar H CaldareraJapanXuxue Feng QUALIFIED
Aika Y WhobreyFranceAnna Fali NEW
Jennifer L FerenczIndiaIoni Bowcher NEW
Aditya O KuskoCanadaAsiya Javayant QUALIFIED
Deepesh Q MaletGermanyElwin Sharvill NEGOTIATION
Mayumi V CaudyArgentinaAsiya Javayant NEGOTIATION
Maisha R PerinIndiaXuxue Feng QUALIFIED
Octavia Z SergiArgentinaAnna Fali QUALIFIED
Aditya Z VocelkaArgentinaIoni Bowcher NEGOTIATION
Arvin A MaletCanadaStephen Shaw QUALIFIED
Juan N WieserRussiaStephen Shaw QUALIFIED
Francesco A TollnerArgentinaXuxue Feng PROPOSAL
Misaki O AlbaresSpainIvan Magalhaes NEW
Maisha J InouyeItalyAnna Fali NEGOTIATION
Darci I GlickItalyElwin Sharvill NEW
Octavia W RutaFranceAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Silvio C CampainBrazilOnyama Limba PROPOSAL
Jeanfrancois I FollerRussiaAsiya Javayant NEGOTIATION
Emily W PerinAustraliaXuxue Feng NEW
Alejandro D ShinkoSpainAnna Fali PROPOSAL
Clifford S FigeroaItalyElwin Sharvill QUALIFIED
Leja X WaycottIndiaElwin Sharvill QUALIFIED
Stacey G InouyeUnited KingdomAmy Elsner UNQUALIFIED
Jennifer T CampainGermanyAsiya Javayant QUALIFIED
Misaki A MarrierRussiaStephen Shaw UNQUALIFIED
Nicolas X PoquetteRussiaStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson J StockhamItaly2025-08-22Chanay, Jeffrey A Esq RENEWAL20Ivan Magalhaes
1001Francesco T PaprockiFrance2025-08-19Benton, John B Jr PROPOSAL71Xuxue Feng
1002Silvio L ShinkoFrance2025-08-25Morlong Associates NEGOTIATION90Xuxue Feng
1003Mayumi I CaldareraJapan2025-08-26Feiner Bros RENEWAL10Asiya Javayant
1004James Y SaylorsRussia2025-07-31Printing Dimensions QUALIFIED29Anna Fali
1005Jones S MorascaItaly2025-08-27Benton, John B Jr UNQUALIFIED66Amy Elsner
1006Alejandro M AmigonIndia2025-08-19King, Christopher A Esq PROPOSAL30Ivan Magalhaes
1007Mayumi M ButtSpain2025-08-04King, Christopher A Esq UNQUALIFIED21Onyama Limba
1008Nicolas B CaldareraIndia2025-08-08Chemel, James L Cpa UNQUALIFIED90Ioni Bowcher
1009David C WaycottUnited Kingdom2025-08-11Morlong Associates PROPOSAL52Onyama Limba
1010Faith B NickaIndia2025-08-18Benton, John B Jr PROPOSAL42Bernardo Dominic
1011Deepesh L SergiRussia2025-08-13Feiner Bros RENEWAL66Xuxue Feng
1012Alejandro O NestleSpain2025-08-26Feiner Bros UNQUALIFIED55Xuxue Feng
1013Maria Q GillianArgentina2025-08-28Rousseaux, Michael Esq UNQUALIFIED56Stephen Shaw
1014Jeanfrancois F ButtUnited Kingdom2025-08-23Dorl, James J Esq UNQUALIFIED61Bernardo Dominic
1015Antonio V ButtIndia2025-08-19King, Christopher A Esq QUALIFIED65Onyama Limba
1016Izzy I OstroskyAustralia2025-08-24Feiner Bros UNQUALIFIED99Ivan Magalhaes
1017Jeanfrancois W DoeGermany2025-08-19Printing Dimensions RENEWAL94Stephen Shaw
1018Misaki K KolmetzUnited Kingdom2025-07-31Printing Dimensions QUALIFIED36Xuxue Feng
1019Sinclair X StensethJapan2025-08-08Rousseaux, Michael Esq UNQUALIFIED69Amy Elsner
1020Ivar I CaudyJapan2025-08-13Dorl, James J Esq UNQUALIFIED49Xuxue Feng
1021Leja Z OstroskyRussia2025-08-21Truhlar And Truhlar Attys PROPOSAL27Elwin Sharvill
1022Costa E InouyeSpain2025-08-18King, Christopher A Esq PROPOSAL48Anna Fali
1023Isabel B StensethUnited Kingdom2025-08-25Rangoni Of Florence PROPOSAL37Xuxue Feng
1024Morrow W WaycottRussia2025-08-11King, Christopher A Esq UNQUALIFIED51Onyama Limba
1025Francesco N BowleyIndia2025-08-24Rousseaux, Michael Esq QUALIFIED81Ivan Magalhaes
1026Aruna H KuskoFrance2025-08-08Feltz Printing Service UNQUALIFIED80Ioni Bowcher
1027Sinclair Q MaletGermany2025-08-23Rousseaux, Michael Esq NEW81Asiya Javayant
1028Octavia H FigeroaAustralia2025-08-14Dorl, James J Esq QUALIFIED65Elwin Sharvill
1029Sinclair D TollnerBrazil2025-08-06Feiner Bros RENEWAL92Amy Elsner
1030Smith H DilliardIndia2025-07-30Feltz Printing Service NEW83Bernardo Dominic
1031Aruna Q BriddickSpain2025-08-10Benton, John B Jr NEW66Ioni Bowcher
1032Izzy O ChuiItaly2025-08-11Morlong Associates UNQUALIFIED53Xuxue Feng
1033Morrow M NickaCanada2025-07-30Commercial Press NEW25Bernardo Dominic
1034Maisha S StockhamItaly2025-08-27Morlong Associates NEGOTIATION36Asiya Javayant
1035Julie R DarakjyAustralia2025-08-25Buckley Miller Wright NEGOTIATION47Xuxue Feng
1036Maisha U FigeroaUnited Kingdom2025-08-28Chanay, Jeffrey A Esq UNQUALIFIED61Bernardo Dominic
1037Leja R WaycottItaly2025-08-11Commercial Press QUALIFIED56Asiya Javayant
1038Tony F PaprockiUnited Kingdom2025-08-04Commercial Press NEW88Ioni Bowcher
1039Misaki W BowleyIndia2025-08-12Buckley Miller Wright NEW29Bernardo Dominic
1040Kadeem J InouyeCanada2025-08-19Feiner Bros QUALIFIED6Ioni Bowcher
1041Emily W CaldareraSpain2025-08-09Feiner Bros NEW42Onyama Limba
1042Jones G ChuiJapan2025-08-08Morlong Associates RENEWAL99Bernardo Dominic
1043Aditya X WhobreyCanada2025-08-01Feiner Bros PROPOSAL88Elwin Sharvill
1044Kadeem F MaletCanada2025-08-17Rousseaux, Michael Esq UNQUALIFIED54Onyama Limba
1045David G PerinIndia2025-08-15Printing Dimensions UNQUALIFIED54Onyama Limba
1046Rodrigues I BowleyUnited Kingdom2025-08-02Feiner Bros NEW88Ioni Bowcher
1047Mujtaba N GlickArgentina2025-08-21Feltz Printing Service QUALIFIED74Onyama Limba
1048James Z SergiItaly2025-08-19Chanay, Jeffrey A Esq PROPOSAL76Elwin Sharvill
1049Leon I FerenczIndia2025-07-30King, Christopher A Esq NEW27Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Emily L GillianBrazilOnyama Limba UNQUALIFIED
Kadeem N PerinRussiaOnyama Limba NEW
Greenwood S FigeroaGermanyAnna Fali UNQUALIFIED
Silvio A RoysterUnited KingdomAsiya Javayant NEW
Arvin O WieserBrazilBernardo Dominic NEW
Wickens N CampainItalyAsiya Javayant UNQUALIFIED
Ricardo I WhobreyUnited KingdomAnna Fali RENEWAL
Emily B MaletArgentinaIvan Magalhaes RENEWAL
Adams W GarufiRussiaIoni Bowcher QUALIFIED
Jefferson H GlickRussiaIvan Magalhaes UNQUALIFIED
Adams C FigeroaItalyElwin Sharvill PROPOSAL
Misaki Z StensethRussiaXuxue Feng PROPOSAL
Julie I MaletJapanIoni Bowcher UNQUALIFIED
Claire M MorascaCanadaOnyama Limba UNQUALIFIED
Juan S WieserIndiaAmy Elsner UNQUALIFIED
Juan P OstroskyRussiaIvan Magalhaes NEGOTIATION
Ricardo N AmigonSpainAsiya Javayant PROPOSAL
Maria P BowleyBrazilIvan Magalhaes UNQUALIFIED
Faith H PaprockiJapanStephen Shaw NEW
Smith G ChuiArgentinaAnna Fali QUALIFIED
Greenwood J MarrierRussiaBernardo Dominic PROPOSAL
Morrow W StockhamGermanyAsiya Javayant PROPOSAL
Smith F ButtFranceIvan Magalhaes PROPOSAL
Jones I BriddickUnited KingdomAnna Fali UNQUALIFIED
Ashley Q ButtIndiaAnna Fali UNQUALIFIED
Clifford L FollerCanadaBernardo Dominic UNQUALIFIED
Antonio D RutaRussiaOnyama Limba NEW
Kaitlin D FollerBrazilXuxue Feng PROPOSAL
Salvatore C DoeRussiaAsiya Javayant UNQUALIFIED
Izzy L BologniaAustraliaElwin Sharvill QUALIFIED
Francesco S StockhamBrazilAsiya Javayant NEGOTIATION
Sinclair T DarakjyFranceAmy Elsner QUALIFIED
Jones S ShinkoIndiaBernardo Dominic UNQUALIFIED
Costa X MorascaArgentinaElwin Sharvill PROPOSAL
Alejandro X OldroydRussiaIvan Magalhaes RENEWAL
Darci Y InouyeUnited KingdomOnyama Limba NEGOTIATION
Jennifer C ShinkoRussiaIoni Bowcher RENEWAL
Leon Z BologniaGermanyStephen Shaw QUALIFIED
Isabel K ButtJapanAnna Fali NEGOTIATION
James K FlosiArgentinaIoni Bowcher NEGOTIATION
Mujtaba L PoquetteGermanyIvan Magalhaes RENEWAL
Antonio U InouyeGermanyElwin Sharvill NEW
Emily L SlusarskiUnited KingdomIoni Bowcher NEW
Tony J CaudyRussiaAmy Elsner NEW
Leon X MaletArgentinaAnna Fali PROPOSAL
Octavia D MorascaFranceAsiya Javayant NEW
Izzy Z StockhamUnited KingdomStephen Shaw PROPOSAL
Darci U AmigonJapanBernardo Dominic NEW
Mayumi I DoeArgentinaStephen Shaw RENEWAL
Alejandro G BowleyFranceAnna Fali UNQUALIFIED
Frozen Columns
Name
Rodrigues U Stenseth
Tony T Caldarera
Emily L Saylors
Juan F Ruta
Aruna U Waycott
Deepesh M Perin
Leon L Saylors
Costa I Maclead
Aruna W Waycott
Kaitlin Z Glick
Juan S Morasca
Cody A Vocelka
Aruna I Figeroa
Faith K Doe
Jennifer N Bolognia
Izzy L Venere
Wickens E Caldarera
Leon I Dilliard
Leja J Dilliard
Wickens N Rim
Octavia U Saylors
Clifford J Figeroa
Kaitlin A Oldroyd
Stacey S Caldarera
Aditya N Flosi
Adams F Saylors
Leon X Whobrey
Munro N Paprocki
Darci S Caldarera
Faith O Dilliard
Ashley I Poquette
Morrow E Ostrosky
David V Whobrey
Leja B Ruta
Wickens A Venere
Deepesh U Iturbide
Clifford I Rulapaugh
Salvatore P Gaucho
Faith K Nestle
Francesco D Doe
Jennifer U Stockham
James B Gillian
Ricardo Z Flosi
Leja P Marrier
Nicolas V Morasca
Kadeem P Dilliard
Jefferson M Morasca
Isabel V Perin
Costa R Bowley
Isabel U Amigon
IdCountryDate
1000Australia2025-08-04
1001Canada2025-08-02
1002Canada2025-08-03
1003Italy2025-08-16
1004Argentina2025-08-26
1005Japan2025-08-15
1006Argentina2025-07-30
1007Brazil2025-08-05
1008Argentina2025-08-05
1009Canada2025-08-16
1010Brazil2025-07-30
1011Canada2025-08-21
1012Germany2025-08-03
1013Australia2025-07-31
1014France2025-08-04
1015France2025-07-30
1016United Kingdom2025-08-22
1017Germany2025-08-21
1018Italy2025-08-04
1019Brazil2025-08-12
1020Germany2025-07-30
1021Russia2025-08-02
1022Russia2025-08-01
1023Brazil2025-08-18
1024Italy2025-08-07
1025France2025-08-23
1026France2025-08-27
1027Italy2025-08-07
1028Argentina2025-07-30
1029United Kingdom2025-08-21
1030Brazil2025-08-13
1031United Kingdom2025-08-22
1032United Kingdom2025-08-28
1033India2025-08-08
1034Argentina2025-08-08
1035France2025-08-14
1036Canada2025-08-09
1037India2025-08-09
1038Russia2025-08-12
1039Australia2025-08-06
1040Italy2025-08-06
1041India2025-07-30
1042Australia2025-08-24
1043United Kingdom2025-08-19
1044India2025-08-09
1045Japan2025-08-14
1046Germany2025-08-21
1047Brazil2025-08-20
1048Russia2025-08-02
1049United Kingdom2025-08-18

On-Demand Data

NameIdCountryDate
Cody I Perin1000India2025-08-05
Julie C Kusko1001Italy2025-08-19
Alejandro A Flosi1002France2025-08-27
Arvin N Caldarera1003Germany2025-08-08
Chavez X Flosi1004Australia2025-08-21
Morrow Q Rulapaugh1005Japan2025-08-10
Rodrigues G Kolmetz1006United Kingdom2025-08-27
James C Whobrey1007Italy2025-08-02
Misaki V Chui1008Japan2025-08-07
Cody F Albares1009India2025-08-08
Claire S Ruta1010Brazil2025-08-28
Stacey M Doe1011France2025-08-23
Darci D Glick1012Australia2025-08-27
Julie K Venere1013Argentina2025-07-30
Izzy Q Rulapaugh1014India2025-08-21
Ricardo F Malet1015Argentina2025-08-14
Clifford E Butt1016India2025-08-28
Tony N Doe1017Argentina2025-07-31
Clifford A Figeroa1018Italy2025-08-09
Greenwood V Nicka1019Germany2025-08-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja Q MorascaItalyIoni Bowcher PROPOSAL
Ashley T RulapaughGermanyOnyama Limba RENEWAL
Jeanfrancois M AmigonAustraliaOnyama Limba NEW
Silvio W FollerArgentinaBernardo Dominic RENEWAL
Aditya X ShinkoUnited KingdomElwin Sharvill QUALIFIED
Wickens S RoysterGermanyIvan Magalhaes UNQUALIFIED
Morrow J DarakjyAustraliaOnyama Limba PROPOSAL
Mayumi L ShinkoBrazilAnna Fali QUALIFIED
Sinclair W WieserItalyXuxue Feng QUALIFIED
Mujtaba Y SergiAustraliaAmy Elsner RENEWAL
Clifford W StensethArgentinaStephen Shaw NEW
Morrow B IturbideAustraliaBernardo Dominic NEW
Aruna J AmigonGermanyOnyama Limba NEW
Deepesh S MacleadItalyElwin Sharvill QUALIFIED
Stacey N NestleArgentinaIoni Bowcher UNQUALIFIED
Nicolas Q BologniaUnited KingdomAmy Elsner NEW
Julie D KuskoArgentinaIoni Bowcher PROPOSAL
Ivar M StockhamBrazilAsiya Javayant QUALIFIED
Nicolas W RutaJapanStephen Shaw PROPOSAL
Jeanfrancois F DoeArgentinaAnna Fali QUALIFIED
Julie R PerinCanadaAsiya Javayant QUALIFIED
Munro X StensethFranceAsiya Javayant NEGOTIATION
Leja H FollerCanadaAnna Fali NEGOTIATION
Deepesh E FollerIndiaIoni Bowcher NEW
Ricardo S AmigonAustraliaIvan Magalhaes RENEWAL
Wickens Q SaylorsUnited KingdomAnna Fali NEGOTIATION
James R WaycottUnited KingdomElwin Sharvill QUALIFIED
Jeanfrancois G SaylorsSpainIoni Bowcher PROPOSAL
David S SaylorsSpainElwin Sharvill RENEWAL
Antonio G MaletGermanyOnyama Limba QUALIFIED
Isabel Z FollerItalyIoni Bowcher PROPOSAL
Salvatore S DoeArgentinaIvan Magalhaes NEGOTIATION
Mayumi W ShinkoSpainAsiya Javayant UNQUALIFIED
Isabel G SergiAustraliaAnna Fali PROPOSAL
Mujtaba V NestleAustraliaElwin Sharvill NEW
Julie U IturbideBrazilAmy Elsner UNQUALIFIED
Julie C AlbaresAustraliaIvan Magalhaes UNQUALIFIED
Murillo S PerinUnited KingdomBernardo Dominic QUALIFIED
Arvin Y MaletCanadaAsiya Javayant NEGOTIATION
Ivar J SaylorsIndiaXuxue 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>