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
Alejandro Y OldroydIndiaIvan Magalhaes UNQUALIFIED
Isabel O CaudySpainAmy Elsner PROPOSAL
Mayumi I FlosiIndiaOnyama Limba QUALIFIED
Aruna L SchemmerRussiaStephen Shaw PROPOSAL
Munro T CaldareraArgentinaElwin Sharvill RENEWAL
Aruna C CampainIndiaIvan Magalhaes NEW
Kadeem Y GarufiRussiaOnyama Limba RENEWAL
Juan E GillianFranceAmy Elsner NEGOTIATION
Costa G ChuiSpainBernardo Dominic PROPOSAL
Ivar W IturbideItalyIoni Bowcher PROPOSAL
Mayumi P SlusarskiUnited KingdomAmy Elsner UNQUALIFIED
Antonio C WhobreyItalyAnna Fali UNQUALIFIED
Maria Q KuskoRussiaAsiya Javayant UNQUALIFIED
Cody W FollerSpainOnyama Limba UNQUALIFIED
Maisha J RulapaughBrazilAsiya Javayant PROPOSAL
Jeanfrancois B RutaIndiaAsiya Javayant PROPOSAL
Deepesh B MaletItalyBernardo Dominic UNQUALIFIED
Octavia M RimSpainIvan Magalhaes NEGOTIATION
Maisha T IturbideFranceAmy Elsner PROPOSAL
Tony G AlbaresItalyAsiya Javayant UNQUALIFIED
David K BologniaGermanyIvan Magalhaes RENEWAL
Smith F IturbideUnited KingdomAsiya Javayant PROPOSAL
Ricardo M StockhamItalyXuxue Feng PROPOSAL
Aruna B CaudyGermanyAmy Elsner QUALIFIED
Juan F PerinArgentinaIvan Magalhaes RENEWAL
Jennifer W DilliardFranceIoni Bowcher NEW
Silvio P NestleIndiaElwin Sharvill PROPOSAL
Smith H BriddickCanadaIoni Bowcher UNQUALIFIED
Deepesh F StensethUnited KingdomAnna Fali RENEWAL
Maria D RulapaughRussiaAnna Fali NEW
Stacey B StockhamRussiaXuxue Feng QUALIFIED
Kaitlin N WieserItalyOnyama Limba NEGOTIATION
Sinclair X DoeIndiaStephen Shaw RENEWAL
Kaitlin E NestleAustraliaBernardo Dominic NEW
Isabel Q StensethGermanyIvan Magalhaes NEGOTIATION
Cody Q OstroskyArgentinaOnyama Limba NEW
Ricardo Y GillianGermanyIvan Magalhaes QUALIFIED
Faith X TollnerCanadaAnna Fali PROPOSAL
Octavia U AlbaresIndiaStephen Shaw PROPOSAL
Salvatore O ButtGermanyAmy Elsner QUALIFIED
Darci G FigeroaIndiaXuxue Feng NEW
Claire X RoysterSpainAmy Elsner RENEWAL
Sinclair A SchemmerRussiaStephen Shaw QUALIFIED
Sinclair A RimArgentinaStephen Shaw UNQUALIFIED
Maria I BowleyCanadaIoni Bowcher RENEWAL
Leja O MaletArgentinaXuxue Feng NEW
Maria Q SaylorsUnited KingdomElwin Sharvill NEGOTIATION
Mayumi J NestleItalyStephen Shaw RENEWAL
Mayumi D BriddickItalyAnna Fali QUALIFIED
Sinclair I CampainJapanOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Juan C InouyeIndiaXuxue Feng UNQUALIFIED
Salvatore D IturbideJapanStephen Shaw PROPOSAL
Misaki U PerinCanadaBernardo Dominic NEW
Ivar K RulapaughBrazilAnna Fali QUALIFIED
David J PaprockiIndiaIvan Magalhaes NEW
Izzy T RimAustraliaIvan Magalhaes UNQUALIFIED
Kadeem E BriddickItalyAnna Fali RENEWAL
David T NickaIndiaIoni Bowcher RENEWAL
Maisha W DoeFranceIoni Bowcher QUALIFIED
Wickens Y WaycottBrazilXuxue Feng UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody I VocelkaBrazil2025-09-28Commercial Press PROPOSAL72Onyama Limba
1001Costa A WhobreyCanada2025-10-14Dorl, James J Esq UNQUALIFIED87Ioni Bowcher
1002Jeanfrancois W BowleyCanada2025-09-20Benton, John B Jr NEGOTIATION80Asiya Javayant
1003James L BowleyCanada2025-10-16Benton, John B Jr QUALIFIED28Amy Elsner
1004Johnson V FerenczGermany2025-10-07King, Christopher A Esq UNQUALIFIED51Onyama Limba
1005Leja A PaprockiBrazil2025-10-13Buckley Miller Wright PROPOSAL8Ioni Bowcher
1006Mayumi M RimBrazil2025-09-27Benton, John B Jr NEGOTIATION99Xuxue Feng
1007Jeanfrancois U GillianItaly2025-10-04Feiner Bros NEGOTIATION27Ivan Magalhaes
1008Maisha F NickaSpain2025-10-12Feiner Bros NEGOTIATION52Asiya Javayant
1009Leja O PoquetteFrance2025-10-07Rangoni Of Florence NEGOTIATION16Xuxue Feng
1010Aruna R PaprockiRussia2025-10-18Benton, John B Jr NEGOTIATION15Anna Fali
1011Morrow N SergiArgentina2025-09-24King, Christopher A Esq QUALIFIED99Onyama Limba
1012Tony M DoeAustralia2025-09-24Commercial Press QUALIFIED12Xuxue Feng
1013Ricardo K RimFrance2025-10-02Chapman, Ross E Esq NEGOTIATION61Onyama Limba
1014Nicolas O NickaSpain2025-10-11Dorl, James J Esq UNQUALIFIED28Anna Fali
1015Maisha J TollnerAustralia2025-10-09Feltz Printing Service QUALIFIED83Anna Fali
1016Johnson V SlusarskiIndia2025-09-26Rousseaux, Michael Esq RENEWAL53Elwin Sharvill
1017David F PerinCanada2025-10-03Chanay, Jeffrey A Esq RENEWAL90Anna Fali
1018Francesco S MaletArgentina2025-09-24Printing Dimensions UNQUALIFIED20Onyama Limba
1019Isabel X PoquetteFrance2025-09-27Commercial Press NEW30Amy Elsner
1020Kadeem O ButtIndia2025-10-04Morlong Associates PROPOSAL90Stephen Shaw
1021Stacey E RoysterArgentina2025-10-19Rangoni Of Florence UNQUALIFIED19Ivan Magalhaes
1022Costa V ShinkoSpain2025-09-29Chapman, Ross E Esq NEGOTIATION94Onyama Limba
1023Octavia H CampainArgentina2025-09-21Chapman, Ross E Esq NEW95Xuxue Feng
1024Octavia A GarufiJapan2025-10-19Truhlar And Truhlar Attys NEGOTIATION27Amy Elsner
1025Aruna Y GillianIndia2025-09-23Feltz Printing Service QUALIFIED3Onyama Limba
1026Mujtaba F AlbaresUnited Kingdom2025-10-07Feltz Printing Service NEGOTIATION81Bernardo Dominic
1027Adams F CaudySpain2025-10-01Chapman, Ross E Esq NEGOTIATION61Bernardo Dominic
1028Munro Y MarrierGermany2025-10-11Commercial Press UNQUALIFIED99Anna Fali
1029Arvin J StensethAustralia2025-10-02Printing Dimensions RENEWAL86Ivan Magalhaes
1030Sinclair Z StockhamGermany2025-10-03Printing Dimensions NEGOTIATION74Amy Elsner
1031Chavez R WieserGermany2025-10-18Printing Dimensions QUALIFIED61Elwin Sharvill
1032Juan N SergiUnited Kingdom2025-10-01Buckley Miller Wright NEGOTIATION28Elwin Sharvill
1033Isabel Y RulapaughJapan2025-10-01Feiner Bros NEGOTIATION18Anna Fali
1034Mayumi T GarufiUnited Kingdom2025-10-02Chanay, Jeffrey A Esq NEGOTIATION52Ivan Magalhaes
1035Ricardo V InouyeGermany2025-09-27Dorl, James J Esq UNQUALIFIED67Amy Elsner
1036Munro F PoquetteAustralia2025-09-20Chanay, Jeffrey A Esq RENEWAL52Stephen Shaw
1037Nicolas C DarakjyArgentina2025-10-02Chemel, James L Cpa NEGOTIATION2Anna Fali
1038Mayumi G FigeroaBrazil2025-10-14Dorl, James J Esq PROPOSAL0Ivan Magalhaes
1039Ashley V KuskoIndia2025-10-02Dorl, James J Esq UNQUALIFIED77Elwin Sharvill
1040Ricardo X FigeroaGermany2025-09-29King, Christopher A Esq QUALIFIED13Bernardo Dominic
1041Rodrigues Q VocelkaUnited Kingdom2025-10-18Truhlar And Truhlar Attys UNQUALIFIED79Asiya Javayant
1042Isabel S MorascaUnited Kingdom2025-09-25Feiner Bros QUALIFIED11Ivan Magalhaes
1043Ashley G BowleyRussia2025-10-08Feltz Printing Service RENEWAL46Xuxue Feng
1044Mujtaba V GlickSpain2025-10-18Feiner Bros NEW44Onyama Limba
1045Julie V BriddickGermany2025-10-01Morlong Associates PROPOSAL21Ioni Bowcher
1046Mayumi C StockhamAustralia2025-09-27Rangoni Of Florence NEGOTIATION74Xuxue Feng
1047Aditya T BriddickIndia2025-10-07Benton, John B Jr RENEWAL0Asiya Javayant
1048Mayumi H StensethAustralia2025-10-02Truhlar And Truhlar Attys UNQUALIFIED5Bernardo Dominic
1049Wickens O MorascaCanada2025-09-21Chemel, James L Cpa PROPOSAL27Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Adams N TollnerSpainAsiya Javayant UNQUALIFIED
Darci H FigeroaUnited KingdomAsiya Javayant QUALIFIED
Jones L MacleadJapanIvan Magalhaes PROPOSAL
Misaki Z OstroskyIndiaIvan Magalhaes PROPOSAL
Deepesh K SlusarskiRussiaBernardo Dominic QUALIFIED
Jones X PerinFranceBernardo Dominic QUALIFIED
Aika N DarakjyCanadaAnna Fali QUALIFIED
Stacey F AmigonCanadaIvan Magalhaes PROPOSAL
Maisha Q SlusarskiFranceElwin Sharvill UNQUALIFIED
Jones N KolmetzFranceElwin Sharvill RENEWAL
Francesco V PaprockiItalyAmy Elsner PROPOSAL
Clifford S MaletBrazilAsiya Javayant PROPOSAL
Jefferson C VocelkaRussiaIoni Bowcher NEGOTIATION
Aditya P MarrierItalyIvan Magalhaes UNQUALIFIED
Juan Y AlbaresUnited KingdomAnna Fali RENEWAL
James C WieserUnited KingdomXuxue Feng UNQUALIFIED
Mayumi F ButtFranceOnyama Limba RENEWAL
Francesco X RulapaughSpainOnyama Limba NEGOTIATION
Mayumi O SaylorsJapanXuxue Feng PROPOSAL
Maria W WaycottBrazilAsiya Javayant QUALIFIED
Wickens P WieserSpainIvan Magalhaes QUALIFIED
David B ButtJapanAnna Fali RENEWAL
Antonio L StensethGermanyAsiya Javayant NEGOTIATION
Misaki T SergiUnited KingdomOnyama Limba PROPOSAL
Francesco M OstroskyFranceIvan Magalhaes NEGOTIATION
Deepesh S WaycottArgentinaBernardo Dominic RENEWAL
Jefferson U WhobreyArgentinaIoni Bowcher PROPOSAL
Silvio L MaletAustraliaBernardo Dominic PROPOSAL
Leon O PoquetteUnited KingdomBernardo Dominic RENEWAL
Tony Q NestleBrazilBernardo Dominic NEGOTIATION
Greenwood U OldroydSpainXuxue Feng PROPOSAL
Leon S GlickItalyXuxue Feng NEW
Costa G DoeSpainIoni Bowcher UNQUALIFIED
Kaitlin X MaletRussiaOnyama Limba UNQUALIFIED
Antonio C MorascaCanadaElwin Sharvill QUALIFIED
Murillo D ButtSpainAnna Fali NEGOTIATION
Chavez A BowleyBrazilIoni Bowcher NEGOTIATION
Tony R AlbaresUnited KingdomOnyama Limba RENEWAL
Silvio Z WaycottFranceAsiya Javayant QUALIFIED
Sinclair H RimBrazilStephen Shaw RENEWAL
Sinclair B FollerSpainStephen Shaw PROPOSAL
Deepesh D FerenczArgentinaStephen Shaw NEW
Johnson T WieserCanadaAsiya Javayant RENEWAL
Nicolas D RulapaughGermanyElwin Sharvill RENEWAL
Chavez B OstroskyCanadaIvan Magalhaes NEGOTIATION
Munro E GarufiIndiaElwin Sharvill NEW
James I GlickBrazilOnyama Limba NEW
Jefferson M SchemmerUnited KingdomIvan Magalhaes UNQUALIFIED
Faith N VenereCanadaBernardo Dominic RENEWAL
Darci Z CampainItalyXuxue Feng NEW
Frozen Columns
Name
Jennifer J Slusarski
Darci S Wieser
Aika A Gillian
Alejandro G Saylors
Salvatore K Stockham
Jeanfrancois P Bowley
Chavez O Bowley
Izzy Q Schemmer
Kadeem Y Gillian
Murillo Q Kusko
Ricardo W Kolmetz
Aruna K Bolognia
Jefferson F Foller
Arvin M Glick
Maisha U Malet
Kadeem Z Malet
Misaki H Royster
Costa A Nestle
Jennifer Y Sergi
Costa F Inouye
Smith Y Ostrosky
Smith X Caldarera
Munro R Campain
Leja V Flosi
Munro W Garufi
Costa H Marrier
Costa H Malet
Darci U Albares
Alejandro F Rulapaugh
Izzy P Venere
Maisha T Glick
James D Tollner
Nicolas B Butt
Claire N Sergi
Aruna G Campain
Arvin A Iturbide
Maria Z Chui
Aika L Stockham
Jefferson Z Figeroa
Salvatore H Sergi
Cody X Malet
Morrow C Amigon
Morrow V Gillian
Ashley K Maclead
Ivar S Tollner
Faith Y Caldarera
Maisha N Butt
Ashley B Venere
Mayumi C Albares
Sinclair K Perin
IdCountryDate
1000Japan2025-10-02
1001France2025-09-21
1002Spain2025-10-04
1003France2025-10-03
1004Australia2025-10-09
1005Australia2025-09-20
1006Russia2025-10-11
1007Argentina2025-09-22
1008France2025-09-25
1009Spain2025-10-04
1010Italy2025-09-20
1011Italy2025-10-17
1012Germany2025-09-24
1013Canada2025-09-26
1014Brazil2025-10-06
1015France2025-10-03
1016United Kingdom2025-10-04
1017India2025-10-08
1018United Kingdom2025-10-08
1019Argentina2025-10-16
1020Germany2025-09-30
1021Russia2025-10-07
1022Australia2025-10-04
1023Canada2025-09-24
1024Canada2025-09-23
1025Spain2025-10-19
1026Russia2025-09-30
1027Spain2025-10-02
1028Canada2025-09-20
1029Canada2025-10-05
1030India2025-10-16
1031Canada2025-09-26
1032Brazil2025-10-10
1033Australia2025-10-09
1034Russia2025-09-22
1035France2025-10-16
1036Canada2025-10-14
1037India2025-10-05
1038Australia2025-10-16
1039Spain2025-10-18
1040Canada2025-09-25
1041France2025-10-07
1042Spain2025-09-21
1043Russia2025-10-11
1044Brazil2025-10-04
1045Germany2025-10-13
1046Australia2025-09-23
1047Germany2025-10-18
1048Australia2025-09-30
1049Australia2025-10-06

On-Demand Data

NameIdCountryDate
Costa C Figeroa1000Russia2025-10-12
Deepesh Z Tollner1001France2025-09-28
Adams Y Bolognia1002India2025-09-28
Adams Q Rulapaugh1003United Kingdom2025-10-13
Kadeem D Caldarera1004Australia2025-09-24
Jefferson H Garufi1005Russia2025-10-14
Adams D Waycott1006Argentina2025-09-27
Ricardo C Maclead1007Canada2025-10-18
Deepesh S Morasca1008Russia2025-10-13
Chavez J Doe1009India2025-10-02
Jones A Stenseth1010Australia2025-09-23
Rodrigues J Malet1011Japan2025-10-10
Darci S Darakjy1012Italy2025-10-13
Julie O Royster1013Russia2025-09-22
Kaitlin P Rim1014Germany2025-10-18
Salvatore M Schemmer1015Brazil2025-09-28
Aika Z Kolmetz1016Brazil2025-10-06
Costa L Whobrey1017Spain2025-09-28
Kaitlin H Briddick1018Spain2025-10-11
Claire O Ostrosky1019Brazil2025-10-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire X FerenczCanadaStephen Shaw NEW
Isabel F GillianGermanyStephen Shaw NEW
Faith W InouyeUnited KingdomElwin Sharvill QUALIFIED
Alejandro Y VocelkaJapanIvan Magalhaes UNQUALIFIED
Salvatore F InouyeRussiaOnyama Limba RENEWAL
Darci B BriddickSpainAsiya Javayant QUALIFIED
Johnson V TollnerBrazilElwin Sharvill UNQUALIFIED
Chavez M CaldareraIndiaElwin Sharvill NEW
James T CaudyIndiaIvan Magalhaes QUALIFIED
Leja N MacleadItalyAsiya Javayant PROPOSAL
Misaki L GillianCanadaElwin Sharvill NEGOTIATION
Sinclair V OldroydItalyAnna Fali NEGOTIATION
Ricardo K FerenczSpainBernardo Dominic QUALIFIED
Ricardo F MorascaItalyOnyama Limba QUALIFIED
Ricardo T RulapaughCanadaBernardo Dominic NEGOTIATION
Kadeem P FigeroaArgentinaStephen Shaw QUALIFIED
Arvin G PerinAustraliaStephen Shaw QUALIFIED
Kadeem B ShinkoJapanAsiya Javayant RENEWAL
Emily P BriddickGermanyIvan Magalhaes PROPOSAL
Leja I BriddickJapanStephen Shaw RENEWAL
Aika N GillianItalyIvan Magalhaes PROPOSAL
Maria O DoeIndiaIvan Magalhaes QUALIFIED
Kaitlin P InouyeFranceElwin Sharvill QUALIFIED
Mujtaba I CaudyFranceAsiya Javayant QUALIFIED
Nicolas J InouyeArgentinaIoni Bowcher NEGOTIATION
Deepesh U MacleadRussiaAsiya Javayant RENEWAL
Mujtaba K InouyeCanadaAnna Fali PROPOSAL
Cody T FollerJapanAsiya Javayant QUALIFIED
Arvin Q ShinkoArgentinaElwin Sharvill RENEWAL
Ricardo B SaylorsSpainBernardo Dominic PROPOSAL
Nicolas V BowleyRussiaIvan Magalhaes NEW
Claire U FigeroaJapanAnna Fali PROPOSAL
Ashley X FollerFranceAnna Fali PROPOSAL
Emily H SlusarskiIndiaIvan Magalhaes QUALIFIED
Izzy U RimSpainIvan Magalhaes RENEWAL
Maria P InouyeUnited KingdomStephen Shaw RENEWAL
Cody Q RulapaughAustraliaAmy Elsner RENEWAL
Jennifer P PaprockiIndiaBernardo Dominic NEW
Tony H ButtArgentinaAsiya Javayant UNQUALIFIED
Jones A FigeroaGermanyStephen Shaw PROPOSAL

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