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
Cody D ShinkoCanadaElwin Sharvill NEGOTIATION
Leja G MaletRussiaAmy Elsner NEGOTIATION
Jefferson Q VocelkaJapanAsiya Javayant PROPOSAL
Costa Z MaletUnited KingdomIvan Magalhaes PROPOSAL
Octavia D RoysterJapanStephen Shaw NEGOTIATION
Arvin R OstroskyBrazilIoni Bowcher RENEWAL
Greenwood K SlusarskiCanadaIoni Bowcher PROPOSAL
Adams O MaletRussiaIoni Bowcher PROPOSAL
Mayumi H AmigonFranceAnna Fali NEW
Silvio R MorascaArgentinaAnna Fali UNQUALIFIED
Costa N AlbaresGermanyElwin Sharvill RENEWAL
Chavez H InouyeArgentinaXuxue Feng NEW
Maisha O CampainGermanyXuxue Feng PROPOSAL
Misaki G OldroydRussiaAnna Fali NEW
Wickens B AlbaresItalyAnna Fali RENEWAL
Jefferson O WieserFranceAsiya Javayant QUALIFIED
Darci C CaldareraJapanAmy Elsner NEGOTIATION
Maisha F NestleArgentinaAmy Elsner RENEWAL
Clifford H GillianSpainAnna Fali RENEWAL
Ricardo K MacleadBrazilIvan Magalhaes QUALIFIED
Francesco M CaldareraSpainIoni Bowcher UNQUALIFIED
Smith Q SaylorsSpainStephen Shaw NEGOTIATION
David U OstroskyCanadaOnyama Limba RENEWAL
Faith V IturbideSpainXuxue Feng PROPOSAL
Nicolas Q KuskoItalyXuxue Feng NEGOTIATION
Jefferson Z SlusarskiFranceXuxue Feng NEW
Ivar X FlosiIndiaElwin Sharvill NEW
Nicolas D OldroydGermanyAmy Elsner UNQUALIFIED
Claire I StensethBrazilXuxue Feng QUALIFIED
Kaitlin I InouyeCanadaAsiya Javayant NEGOTIATION
Arvin G KolmetzFranceIoni Bowcher NEW
Mayumi G DoeRussiaIvan Magalhaes RENEWAL
James W WaycottRussiaElwin Sharvill PROPOSAL
Costa A AlbaresIndiaAsiya Javayant RENEWAL
Kadeem T DarakjyJapanOnyama Limba QUALIFIED
Arvin K RimCanadaAsiya Javayant UNQUALIFIED
Wickens Y GlickFranceIoni Bowcher NEW
Mayumi R WhobreyCanadaAsiya Javayant NEGOTIATION
Salvatore J NestleGermanyIvan Magalhaes NEGOTIATION
Cody N NestleItalyOnyama Limba UNQUALIFIED
Jeanfrancois B DoeIndiaStephen Shaw RENEWAL
Isabel I AmigonItalyOnyama Limba QUALIFIED
Arvin F RimUnited KingdomBernardo Dominic RENEWAL
Mayumi L WaycottGermanyIoni Bowcher NEW
Ricardo H AmigonUnited KingdomXuxue Feng UNQUALIFIED
James O CaldareraArgentinaIoni Bowcher QUALIFIED
Ricardo Z TollnerBrazilOnyama Limba UNQUALIFIED
Murillo E VocelkaItalyOnyama Limba QUALIFIED
Sinclair N GlickIndiaAnna Fali PROPOSAL
Costa R InouyeBrazilStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Jefferson K PerinGermanyIvan Magalhaes RENEWAL
Rodrigues C WieserRussiaElwin Sharvill NEW
Claire P IturbideArgentinaAnna Fali RENEWAL
Julie O RutaBrazilStephen Shaw QUALIFIED
Jennifer K KolmetzGermanyAsiya Javayant NEW
Maria C MaletItalyOnyama Limba PROPOSAL
Maisha E GillianSpainElwin Sharvill NEGOTIATION
Tony Y GlickSpainAsiya Javayant NEW
Rodrigues S InouyeIndiaElwin Sharvill NEW
Jefferson O IturbideBrazilXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria M FlosiGermany2026-10-12King, Christopher A Esq PROPOSAL71Stephen Shaw
1001Aruna F FigeroaItaly2026-10-13Benton, John B Jr NEGOTIATION72Anna Fali
1002Arvin K VocelkaCanada2026-10-11Truhlar And Truhlar Attys PROPOSAL92Ivan Magalhaes
1003Silvio L StensethAustralia2026-09-22King, Christopher A Esq NEGOTIATION45Anna Fali
1004Clifford G CaudyAustralia2026-09-30Rousseaux, Michael Esq PROPOSAL69Xuxue Feng
1005Alejandro M ChuiArgentina2026-10-12Rousseaux, Michael Esq RENEWAL58Ioni Bowcher
1006Francesco I TollnerBrazil2026-10-18Dorl, James J Esq PROPOSAL36Elwin Sharvill
1007Leja G ChuiJapan2026-10-18Rousseaux, Michael Esq NEGOTIATION52Amy Elsner
1008Greenwood H MorascaUnited Kingdom2026-10-11Chanay, Jeffrey A Esq UNQUALIFIED37Ioni Bowcher
1009Emily F BowleyAustralia2026-09-23Truhlar And Truhlar Attys PROPOSAL79Ivan Magalhaes
1010Kadeem V InouyeIndia2026-09-24Commercial Press NEGOTIATION66Ioni Bowcher
1011Mayumi F IturbideAustralia2026-10-05Truhlar And Truhlar Attys NEW21Elwin Sharvill
1012Wickens O RimArgentina2026-09-24Truhlar And Truhlar Attys PROPOSAL98Bernardo Dominic
1013Emily T FlosiSpain2026-10-18Rousseaux, Michael Esq PROPOSAL11Ivan Magalhaes
1014Salvatore N RutaUnited Kingdom2026-10-07Chemel, James L Cpa PROPOSAL0Stephen Shaw
1015Emily Z RutaRussia2026-09-23Chemel, James L Cpa QUALIFIED4Elwin Sharvill
1016Jennifer J PoquetteArgentina2026-10-16Rangoni Of Florence RENEWAL78Stephen Shaw
1017Adams J MaletIndia2026-10-16Feltz Printing Service PROPOSAL30Onyama Limba
1018Jennifer X ChuiRussia2026-09-23Printing Dimensions NEW96Xuxue Feng
1019Leja T IturbideRussia2026-09-25Truhlar And Truhlar Attys NEW16Bernardo Dominic
1020Antonio M RulapaughAustralia2026-10-20Chemel, James L Cpa NEGOTIATION81Xuxue Feng
1021Alejandro Z SlusarskiUnited Kingdom2026-09-28Buckley Miller Wright PROPOSAL29Asiya Javayant
1022Morrow P DilliardCanada2026-09-24Feiner Bros NEW86Bernardo Dominic
1023Nicolas J BologniaAustralia2026-09-22Feltz Printing Service RENEWAL69Xuxue Feng
1024Maisha Z GlickBrazil2026-10-09Rangoni Of Florence NEGOTIATION19Amy Elsner
1025Mujtaba Y CaudyFrance2026-10-15Chanay, Jeffrey A Esq PROPOSAL31Anna Fali
1026Mayumi F SaylorsBrazil2026-09-27Morlong Associates NEW33Stephen Shaw
1027Julie K OldroydGermany2026-10-09Rousseaux, Michael Esq PROPOSAL69Ioni Bowcher
1028Munro D WaycottAustralia2026-09-27Feltz Printing Service RENEWAL95Anna Fali
1029Wickens L OstroskyArgentina2026-09-23Truhlar And Truhlar Attys NEGOTIATION6Ioni Bowcher
1030Jones Z GlickAustralia2026-09-22Printing Dimensions RENEWAL45Asiya Javayant
1031Kaitlin N GlickSpain2026-10-07Commercial Press PROPOSAL88Anna Fali
1032Jeanfrancois W OldroydJapan2026-10-20Chanay, Jeffrey A Esq PROPOSAL8Anna Fali
1033Salvatore F AmigonIndia2026-10-14Buckley Miller Wright NEGOTIATION61Onyama Limba
1034Alejandro Q RimGermany2026-10-04Feiner Bros RENEWAL47Asiya Javayant
1035David M ChuiItaly2026-10-17Buckley Miller Wright PROPOSAL55Elwin Sharvill
1036Mayumi B GarufiJapan2026-09-22Truhlar And Truhlar Attys QUALIFIED5Elwin Sharvill
1037Jones A VenereFrance2026-10-20Printing Dimensions UNQUALIFIED67Onyama Limba
1038Maisha Y OstroskyUnited Kingdom2026-09-24Commercial Press UNQUALIFIED41Onyama Limba
1039Faith R PerinAustralia2026-10-12Chemel, James L Cpa NEW31Elwin Sharvill
1040Francesco R CampainUnited Kingdom2026-10-10Rousseaux, Michael Esq UNQUALIFIED65Xuxue Feng
1041Salvatore T StockhamSpain2026-10-18Dorl, James J Esq PROPOSAL73Ioni Bowcher
1042Julie P KuskoAustralia2026-09-24Printing Dimensions UNQUALIFIED98Asiya Javayant
1043Jones V BowleyUnited Kingdom2026-09-29Rousseaux, Michael Esq UNQUALIFIED10Xuxue Feng
1044Jeanfrancois A RoysterCanada2026-09-27Feiner Bros UNQUALIFIED20Asiya Javayant
1045Antonio C GarufiJapan2026-09-28Feltz Printing Service NEGOTIATION79Anna Fali
1046Jefferson Q TollnerFrance2026-09-27Truhlar And Truhlar Attys NEGOTIATION50Ivan Magalhaes
1047Antonio D OldroydItaly2026-10-07Commercial Press UNQUALIFIED53Bernardo Dominic
1048Faith F NickaCanada2026-10-18Morlong Associates QUALIFIED18Amy Elsner
1049Nicolas F FlosiArgentina2026-09-26King, Christopher A Esq PROPOSAL73Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Arvin F CaudyJapanAmy Elsner UNQUALIFIED
Leja D DarakjyFranceAsiya Javayant NEW
Darci L PoquetteAustraliaStephen Shaw QUALIFIED
Antonio N BowleyItalyXuxue Feng NEW
Ricardo U DoeAustraliaElwin Sharvill NEW
Aika X NestleItalyStephen Shaw NEW
Octavia N RimIndiaElwin Sharvill NEGOTIATION
Leja H RoysterBrazilAnna Fali PROPOSAL
Kaitlin P ShinkoRussiaIoni Bowcher UNQUALIFIED
Silvio M FlosiSpainIoni Bowcher NEGOTIATION
Octavia V PaprockiBrazilStephen Shaw PROPOSAL
Emily N InouyeRussiaAsiya Javayant NEW
Isabel W SlusarskiRussiaElwin Sharvill RENEWAL
Antonio B WhobreyBrazilIoni Bowcher UNQUALIFIED
Isabel I VocelkaCanadaAmy Elsner RENEWAL
James N SergiFranceIvan Magalhaes RENEWAL
Johnson X BriddickIndiaAsiya Javayant PROPOSAL
Ivar W GauchoBrazilXuxue Feng NEGOTIATION
Aika B CaudyBrazilOnyama Limba RENEWAL
Izzy M SaylorsSpainXuxue Feng NEGOTIATION
Octavia B MacleadArgentinaAsiya Javayant NEGOTIATION
Nicolas O InouyeRussiaAmy Elsner QUALIFIED
Faith L GillianItalyStephen Shaw RENEWAL
Nicolas X FerenczSpainAnna Fali NEGOTIATION
Emily B RimSpainAmy Elsner UNQUALIFIED
David I FollerAustraliaOnyama Limba PROPOSAL
Aika Q FerenczRussiaStephen Shaw NEW
Francesco E SlusarskiAustraliaXuxue Feng PROPOSAL
Chavez G NestleItalyElwin Sharvill UNQUALIFIED
Leon R PaprockiItalyOnyama Limba QUALIFIED
Julie Z ChuiItalyIoni Bowcher NEW
Faith S FerenczJapanIvan Magalhaes RENEWAL
Sinclair B AlbaresIndiaAsiya Javayant PROPOSAL
Johnson A GauchoUnited KingdomAmy Elsner RENEWAL
Munro O StensethCanadaBernardo Dominic RENEWAL
Arvin D MacleadRussiaAnna Fali QUALIFIED
Maria E KuskoJapanXuxue Feng RENEWAL
Aruna Y StensethJapanAsiya Javayant RENEWAL
Ivar I PaprockiArgentinaAnna Fali NEGOTIATION
Greenwood X VocelkaIndiaAsiya Javayant NEW
Mayumi W NestleFranceAmy Elsner NEGOTIATION
Murillo D CaldareraFranceElwin Sharvill QUALIFIED
Sinclair Y MarrierUnited KingdomElwin Sharvill UNQUALIFIED
Jeanfrancois F BowleyJapanBernardo Dominic NEGOTIATION
Munro T RutaItalyOnyama Limba UNQUALIFIED
Maisha C FerenczJapanAmy Elsner QUALIFIED
Antonio R TollnerUnited KingdomXuxue Feng NEGOTIATION
Alejandro E GlickSpainAmy Elsner PROPOSAL
Deepesh A NickaUnited KingdomElwin Sharvill QUALIFIED
Jeanfrancois X TollnerBrazilAsiya Javayant QUALIFIED
Frozen Columns
Name
Arvin L Gaucho
Wickens Z Venere
Kaitlin K Wieser
Ashley F Marrier
Leon I Inouye
Arvin C Marrier
Aditya U Bowley
Francesco Q Nestle
Clifford W Ostrosky
Izzy S Oldroyd
Jeanfrancois E Doe
Tony O Saylors
Rodrigues R Malet
Tony H Iturbide
Smith V Dilliard
Jones Y Morasca
Francesco S Caldarera
Cody C Stockham
Jefferson G Briddick
Chavez P Bowley
Jeanfrancois X Marrier
Chavez D Stockham
Francesco I Saylors
Salvatore F Kusko
Emily I Saylors
Clifford C Foller
Silvio X Caudy
Claire B Inouye
Clifford A Darakjy
Morrow H Venere
Ricardo M Poquette
Aika E Paprocki
Juan E Slusarski
Mayumi F Gillian
James R Butt
Sinclair E Maclead
Stacey T Ostrosky
Jones Q Briddick
Aika S Rulapaugh
Tony B Doe
David D Garufi
Murillo G Schemmer
Misaki F Stockham
Antonio H Wieser
Smith R Flosi
Greenwood A Stenseth
Adams R Poquette
Nicolas F Nestle
Arvin G Sergi
Jennifer G Amigon
IdCountryDate
1000Australia2026-10-18
1001Canada2026-10-07
1002Argentina2026-10-10
1003Japan2026-10-04
1004Brazil2026-10-16
1005Australia2026-10-17
1006Italy2026-09-27
1007India2026-10-16
1008Canada2026-10-15
1009India2026-10-12
1010India2026-10-13
1011France2026-09-26
1012Argentina2026-10-14
1013India2026-10-06
1014Italy2026-09-24
1015United Kingdom2026-10-15
1016Australia2026-09-30
1017Germany2026-09-25
1018Brazil2026-09-28
1019France2026-10-13
1020Italy2026-10-12
1021India2026-09-29
1022United Kingdom2026-10-08
1023Spain2026-10-13
1024Canada2026-09-25
1025France2026-10-16
1026France2026-09-29
1027Canada2026-09-29
1028Germany2026-10-13
1029India2026-10-07
1030Germany2026-09-26
1031United Kingdom2026-09-22
1032Italy2026-09-25
1033Italy2026-10-12
1034France2026-09-29
1035United Kingdom2026-10-08
1036Germany2026-09-29
1037France2026-10-04
1038Russia2026-10-08
1039Germany2026-10-15
1040Italy2026-10-15
1041Brazil2026-09-22
1042Russia2026-10-13
1043Russia2026-09-26
1044Australia2026-09-21
1045Germany2026-09-26
1046Russia2026-09-27
1047Australia2026-09-27
1048Spain2026-10-09
1049Brazil2026-09-26

On-Demand Data

NameIdCountryDate
Maisha W Doe1000France2026-10-02
Aruna Q Saylors1001Spain2026-10-04
Deepesh H Ostrosky1002Germany2026-09-22
Jones I Caldarera1003Russia2026-09-25
Misaki K Nicka1004Australia2026-10-12
Mayumi H Kusko1005Russia2026-09-27
Silvio P Paprocki1006Brazil2026-10-01
Claire H Flosi1007Italy2026-10-03
Darci C Marrier1008United Kingdom2026-10-16
Emily B Slusarski1009Canada2026-10-14
Mayumi P Ostrosky1010Argentina2026-10-05
Morrow Z Royster1011Russia2026-10-01
Deepesh L Flosi1012Argentina2026-09-23
Faith L Ostrosky1013Italy2026-09-28
Stacey Y Figeroa1014Argentina2026-10-02
Clifford A Butt1015Argentina2026-10-12
Ricardo D Wieser1016Brazil2026-10-14
Aika U Venere1017Russia2026-09-21
Julie A Saylors1018Italy2026-09-24
Julie O Tollner1019Russia2026-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow I MaletAustraliaOnyama Limba NEW
Aruna A BriddickAustraliaIoni Bowcher PROPOSAL
Jefferson G CampainCanadaIoni Bowcher NEW
David F VenereGermanyBernardo Dominic NEW
Greenwood R AlbaresJapanAmy Elsner RENEWAL
Jefferson I SchemmerIndiaAmy Elsner UNQUALIFIED
Jeanfrancois I DoeSpainStephen Shaw RENEWAL
Cody Y VocelkaUnited KingdomElwin Sharvill RENEWAL
James C WhobreyArgentinaAsiya Javayant NEW
Emily G OldroydJapanAmy Elsner RENEWAL
Claire E VocelkaAustraliaIvan Magalhaes PROPOSAL
David M RimJapanStephen Shaw NEW
Leon Y SergiCanadaIoni Bowcher NEW
Munro N GauchoGermanyXuxue Feng RENEWAL
Greenwood C CaudyCanadaAnna Fali NEGOTIATION
Juan S ButtArgentinaStephen Shaw NEW
Leja X WaycottAustraliaStephen Shaw UNQUALIFIED
Chavez A InouyeBrazilBernardo Dominic NEGOTIATION
Octavia Y VocelkaCanadaAmy Elsner PROPOSAL
Ashley M AmigonIndiaBernardo Dominic RENEWAL
Wickens B MacleadAustraliaAnna Fali NEGOTIATION
Arvin Z StensethUnited KingdomAmy Elsner UNQUALIFIED
Costa J SchemmerCanadaIoni Bowcher PROPOSAL
Aika F FigeroaUnited KingdomOnyama Limba UNQUALIFIED
Claire A PaprockiCanadaElwin Sharvill RENEWAL
Arvin O RimArgentinaXuxue Feng QUALIFIED
Nicolas M BologniaFranceAmy Elsner PROPOSAL
Claire P DilliardJapanStephen Shaw PROPOSAL
Claire G ShinkoRussiaAnna Fali RENEWAL
Stacey I FlosiCanadaOnyama Limba PROPOSAL
Tony P WieserUnited KingdomOnyama Limba NEW
Murillo F GillianJapanIvan Magalhaes RENEWAL
Faith X StockhamItalyAsiya Javayant QUALIFIED
Silvio W InouyeGermanyIoni Bowcher PROPOSAL
Sinclair N BowleyBrazilElwin Sharvill NEW
Francesco C RulapaughItalyIoni Bowcher PROPOSAL
Ricardo S GarufiJapanXuxue Feng QUALIFIED
Chavez D OstroskyIndiaAsiya Javayant PROPOSAL
Deepesh E BowleyJapanOnyama Limba QUALIFIED
Izzy X MorascaJapanBernardo Dominic 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>