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
Sinclair H StockhamUnited KingdomOnyama Limba PROPOSAL
Greenwood D BriddickIndiaElwin Sharvill NEGOTIATION
Juan C MacleadJapanElwin Sharvill QUALIFIED
Cody O PerinUnited KingdomIvan Magalhaes QUALIFIED
Arvin Q DilliardArgentinaOnyama Limba NEGOTIATION
Jennifer T DilliardArgentinaStephen Shaw UNQUALIFIED
Jones P BologniaUnited KingdomBernardo Dominic UNQUALIFIED
Francesco T RulapaughRussiaAsiya Javayant QUALIFIED
Isabel J FerenczItalyIoni Bowcher PROPOSAL
Nicolas T BowleyFranceAmy Elsner NEGOTIATION
Smith H WhobreyItalyBernardo Dominic QUALIFIED
Morrow W WhobreyIndiaIoni Bowcher NEW
Morrow U StockhamSpainIvan Magalhaes RENEWAL
Mujtaba W WaycottFranceIoni Bowcher QUALIFIED
Aruna B InouyeFranceStephen Shaw UNQUALIFIED
Deepesh C WieserFranceIoni Bowcher UNQUALIFIED
Arvin W InouyeCanadaElwin Sharvill NEW
Salvatore T PerinCanadaElwin Sharvill UNQUALIFIED
David R OldroydFranceBernardo Dominic PROPOSAL
Greenwood D TollnerIndiaElwin Sharvill RENEWAL
Isabel E RimItalyAsiya Javayant RENEWAL
Claire J ButtItalyXuxue Feng NEW
Costa Z FerenczCanadaIoni Bowcher NEW
Chavez X OldroydArgentinaIvan Magalhaes UNQUALIFIED
Wickens Z ShinkoArgentinaAnna Fali QUALIFIED
Greenwood A GlickSpainAnna Fali QUALIFIED
Morrow W GarufiBrazilStephen Shaw PROPOSAL
Mujtaba R BologniaAustraliaBernardo Dominic UNQUALIFIED
James R BowleyItalyElwin Sharvill PROPOSAL
Leja T ChuiBrazilBernardo Dominic NEW
Chavez B VocelkaItalyIvan Magalhaes PROPOSAL
Chavez M AlbaresBrazilAsiya Javayant NEW
Cody R TollnerGermanyXuxue Feng PROPOSAL
Tony Z BologniaArgentinaAsiya Javayant QUALIFIED
Clifford H RutaCanadaAnna Fali RENEWAL
Mujtaba U NickaArgentinaAnna Fali NEW
Maisha N InouyeArgentinaAmy Elsner NEGOTIATION
Kaitlin F KolmetzSpainStephen Shaw NEW
Misaki O RulapaughIndiaElwin Sharvill UNQUALIFIED
Julie C ShinkoAustraliaAmy Elsner NEW
Wickens J FerenczCanadaElwin Sharvill NEW
Juan A AlbaresBrazilAsiya Javayant UNQUALIFIED
Ricardo E KuskoGermanyAnna Fali RENEWAL
Jones P PaprockiCanadaAsiya Javayant QUALIFIED
Mayumi R TollnerUnited KingdomIvan Magalhaes NEGOTIATION
Salvatore Y BriddickIndiaAmy Elsner UNQUALIFIED
Stacey Z PerinJapanBernardo Dominic PROPOSAL
Kaitlin Q PoquetteUnited KingdomStephen Shaw RENEWAL
Greenwood Y GlickArgentinaAsiya Javayant UNQUALIFIED
Costa R CaldareraCanadaOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Leon L SaylorsGermanyStephen Shaw UNQUALIFIED
Darci J VocelkaItalyBernardo Dominic PROPOSAL
Alejandro M WaycottCanadaStephen Shaw PROPOSAL
Juan C AmigonSpainAmy Elsner NEGOTIATION
Ashley Y SlusarskiSpainXuxue Feng NEGOTIATION
Misaki E MaletBrazilBernardo Dominic QUALIFIED
Deepesh C GillianItalyIoni Bowcher UNQUALIFIED
Emily Q InouyeUnited KingdomStephen Shaw PROPOSAL
Wickens Q StockhamItalyElwin Sharvill RENEWAL
Cody R ChuiAustraliaIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore Y DilliardUnited Kingdom2026-10-04Rangoni Of Florence RENEWAL70Elwin Sharvill
1001Maria A ButtCanada2026-09-30Rangoni Of Florence NEW52Amy Elsner
1002Adams J PoquetteGermany2026-10-04Rangoni Of Florence UNQUALIFIED78Ioni Bowcher
1003James D PerinFrance2026-09-30Chemel, James L Cpa RENEWAL60Ioni Bowcher
1004Jennifer W DarakjyAustralia2026-09-23Rousseaux, Michael Esq NEGOTIATION45Anna Fali
1005Misaki V PoquetteJapan2026-09-23King, Christopher A Esq RENEWAL55Asiya Javayant
1006Ricardo G GillianIndia2026-09-22Chanay, Jeffrey A Esq NEW46Ivan Magalhaes
1007Ivar J SchemmerCanada2026-09-27Feltz Printing Service PROPOSAL27Xuxue Feng
1008Sinclair A BriddickIndia2026-09-28Dorl, James J Esq NEW1Stephen Shaw
1009Chavez L CampainArgentina2026-10-05Benton, John B Jr NEW96Anna Fali
1010Faith E BriddickAustralia2026-09-17Morlong Associates QUALIFIED27Elwin Sharvill
1011Greenwood B AmigonIndia2026-09-23Dorl, James J Esq NEGOTIATION77Xuxue Feng
1012Isabel H KuskoIndia2026-09-16King, Christopher A Esq NEW43Amy Elsner
1013Misaki P GarufiJapan2026-09-11Chapman, Ross E Esq UNQUALIFIED60Bernardo Dominic
1014Aruna S PoquetteArgentina2026-10-01Dorl, James J Esq QUALIFIED22Anna Fali
1015Ivar Y AlbaresBrazil2026-09-28Truhlar And Truhlar Attys RENEWAL19Anna Fali
1016Juan D AmigonItaly2026-10-05Truhlar And Truhlar Attys QUALIFIED73Bernardo Dominic
1017Rodrigues M VenereRussia2026-09-13Dorl, James J Esq PROPOSAL33Ivan Magalhaes
1018Greenwood D PoquetteAustralia2026-09-18Morlong Associates NEW18Asiya Javayant
1019Misaki V GarufiRussia2026-10-03Rousseaux, Michael Esq PROPOSAL82Stephen Shaw
1020Aika X SchemmerBrazil2026-09-22Benton, John B Jr RENEWAL86Bernardo Dominic
1021Maisha C GlickBrazil2026-09-15Commercial Press NEGOTIATION61Anna Fali
1022Darci O SergiRussia2026-10-03Rangoni Of Florence UNQUALIFIED46Asiya Javayant
1023Morrow S CaudyUnited Kingdom2026-09-11Rangoni Of Florence UNQUALIFIED37Elwin Sharvill
1024Sinclair H DarakjyArgentina2026-09-17Dorl, James J Esq NEW8Anna Fali
1025Chavez W RimIndia2026-10-03Morlong Associates RENEWAL90Xuxue Feng
1026David O CampainIndia2026-09-15Buckley Miller Wright UNQUALIFIED84Bernardo Dominic
1027Izzy I StensethSpain2026-10-02Rangoni Of Florence RENEWAL94Stephen Shaw
1028Tony C FigeroaAustralia2026-09-27Chapman, Ross E Esq PROPOSAL97Ioni Bowcher
1029Jeanfrancois Q FerenczFrance2026-09-12Truhlar And Truhlar Attys NEW72Elwin Sharvill
1030Sinclair J NestleAustralia2026-09-21Rangoni Of Florence RENEWAL79Elwin Sharvill
1031Aika P MaletUnited Kingdom2026-09-18King, Christopher A Esq UNQUALIFIED6Elwin Sharvill
1032Kaitlin M SergiIndia2026-09-28Chemel, James L Cpa PROPOSAL5Amy Elsner
1033Rodrigues Q SergiFrance2026-09-06Feltz Printing Service PROPOSAL40Bernardo Dominic
1034Misaki Q VocelkaCanada2026-09-26Morlong Associates NEW1Stephen Shaw
1035Murillo K GarufiSpain2026-09-16Feltz Printing Service PROPOSAL54Elwin Sharvill
1036Munro G SaylorsJapan2026-09-28Rangoni Of Florence UNQUALIFIED71Anna Fali
1037Stacey Y WaycottGermany2026-09-24Printing Dimensions QUALIFIED33Elwin Sharvill
1038Leon P CaldareraItaly2026-09-16Rangoni Of Florence UNQUALIFIED23Ivan Magalhaes
1039Ivar B GarufiFrance2026-09-19Dorl, James J Esq PROPOSAL80Xuxue Feng
1040Leja R GarufiSpain2026-10-05Benton, John B Jr NEW90Xuxue Feng
1041Octavia D BologniaRussia2026-09-18Benton, John B Jr NEW41Amy Elsner
1042Ashley W OstroskyJapan2026-10-05Printing Dimensions NEW25Ivan Magalhaes
1043Izzy K CaudyUnited Kingdom2026-09-10Feiner Bros PROPOSAL78Ioni Bowcher
1044Silvio Q RulapaughItaly2026-09-25Dorl, James J Esq NEW95Onyama Limba
1045Costa C PerinCanada2026-10-04Benton, John B Jr NEGOTIATION30Onyama Limba
1046Aruna L AmigonFrance2026-09-29Commercial Press NEW36Onyama Limba
1047Claire J DilliardAustralia2026-09-26Chanay, Jeffrey A Esq NEGOTIATION92Bernardo Dominic
1048Aika U WhobreyJapan2026-10-01King, Christopher A Esq UNQUALIFIED54Amy Elsner
1049Stacey T SlusarskiIndia2026-09-09Chanay, Jeffrey A Esq NEGOTIATION50Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba S TollnerUnited KingdomIoni Bowcher NEGOTIATION
Ashley K IturbideArgentinaAmy Elsner NEW
Juan R VenereBrazilAmy Elsner NEW
Nicolas P CaldareraFranceBernardo Dominic UNQUALIFIED
Salvatore P FerenczCanadaAmy Elsner PROPOSAL
Octavia G GillianCanadaIoni Bowcher RENEWAL
Aruna F StensethAustraliaElwin Sharvill QUALIFIED
Salvatore J AlbaresUnited KingdomStephen Shaw QUALIFIED
Silvio E DarakjyAustraliaAsiya Javayant NEW
Aditya S KuskoBrazilAmy Elsner RENEWAL
Costa V OldroydSpainAsiya Javayant QUALIFIED
Clifford G NestleIndiaOnyama Limba NEW
Aditya O MaletFranceElwin Sharvill UNQUALIFIED
Adams F SlusarskiIndiaIoni Bowcher QUALIFIED
Cody V MarrierRussiaElwin Sharvill NEW
Leja P PaprockiCanadaAnna Fali QUALIFIED
Ivar V VocelkaAustraliaElwin Sharvill NEW
Stacey S DilliardGermanyIoni Bowcher NEW
Kadeem I MarrierItalyAnna Fali NEGOTIATION
Chavez C DoeItalyIvan Magalhaes PROPOSAL
Darci O WaycottCanadaStephen Shaw RENEWAL
Kaitlin L CampainItalyIvan Magalhaes UNQUALIFIED
Adams F MaletFranceXuxue Feng QUALIFIED
Darci C SaylorsUnited KingdomXuxue Feng UNQUALIFIED
Aruna B WieserJapanElwin Sharvill QUALIFIED
Tony A GarufiUnited KingdomAnna Fali RENEWAL
Rodrigues B FerenczItalyIvan Magalhaes RENEWAL
Alejandro X NickaRussiaStephen Shaw PROPOSAL
Costa P OstroskyFranceXuxue Feng RENEWAL
Chavez D FollerRussiaOnyama Limba PROPOSAL
Adams W GillianSpainIvan Magalhaes NEW
Smith H NestleArgentinaStephen Shaw NEGOTIATION
Leja F WaycottUnited KingdomAnna Fali PROPOSAL
David Z BowleyGermanyIvan Magalhaes QUALIFIED
Costa J OldroydJapanStephen Shaw NEW
Emily A RutaCanadaAmy Elsner PROPOSAL
Jeanfrancois Z MorascaGermanyAnna Fali RENEWAL
Maisha F VenereArgentinaIvan Magalhaes RENEWAL
Aditya H TollnerRussiaAsiya Javayant NEW
Alejandro W MaletSpainAnna Fali PROPOSAL
Jones W PoquetteBrazilIvan Magalhaes QUALIFIED
Juan F RutaBrazilAmy Elsner QUALIFIED
Jefferson D InouyeFranceXuxue Feng QUALIFIED
Octavia S WieserCanadaElwin Sharvill RENEWAL
Morrow Y VenereGermanyIvan Magalhaes NEGOTIATION
Leja U NestleCanadaBernardo Dominic QUALIFIED
Maisha E GillianJapanIvan Magalhaes RENEWAL
Ricardo W GarufiBrazilBernardo Dominic NEW
Ashley H FigeroaCanadaAmy Elsner PROPOSAL
Kadeem U FigeroaJapanIoni Bowcher PROPOSAL
Frozen Columns
Name
David J Perin
Wickens U Butt
Nicolas S Caldarera
Smith R Stenseth
Octavia A Amigon
Claire R Paprocki
Morrow D Ruta
Isabel U Morasca
Alejandro D Campain
Claire O Vocelka
Greenwood C Sergi
Morrow X Ferencz
Sinclair Q Albares
Deepesh M Malet
Nicolas C Waycott
Deepesh U Ferencz
Stacey C Tollner
Faith K Darakjy
Stacey K Caldarera
Izzy V Royster
Izzy S Iturbide
Costa V Dilliard
Alejandro U Shinko
Wickens D Tollner
Mujtaba I Doe
Leja K Iturbide
Ricardo L Ferencz
Munro G Flosi
Claire B Kolmetz
Adams P Malet
Johnson B Paprocki
Jones C Slusarski
Claire B Butt
Jones P Wieser
Munro O Nestle
Leja X Schemmer
Francesco W Tollner
Faith R Malet
Silvio K Caudy
Munro U Whobrey
Francesco R Campain
Isabel R Doe
Antonio B Foller
Deepesh X Darakjy
Francesco I Dilliard
Jennifer E Bowley
Nicolas H Kolmetz
Rodrigues Q Whobrey
Smith Y Albares
Wickens V Malet
IdCountryDate
1000Argentina2026-09-18
1001Spain2026-09-09
1002Brazil2026-09-11
1003Japan2026-09-28
1004Canada2026-09-19
1005Germany2026-09-19
1006United Kingdom2026-09-09
1007Canada2026-09-08
1008Canada2026-10-03
1009Canada2026-10-04
1010Argentina2026-09-21
1011Russia2026-09-19
1012United Kingdom2026-09-15
1013Japan2026-09-19
1014Argentina2026-09-09
1015Australia2026-10-04
1016Argentina2026-09-29
1017Japan2026-09-23
1018Canada2026-09-20
1019France2026-09-15
1020India2026-10-05
1021Argentina2026-09-10
1022Australia2026-09-09
1023Australia2026-09-27
1024Canada2026-09-19
1025Russia2026-10-04
1026Australia2026-09-15
1027France2026-09-23
1028Australia2026-09-18
1029Argentina2026-09-26
1030Brazil2026-09-24
1031Germany2026-09-15
1032Japan2026-09-20
1033France2026-09-07
1034Brazil2026-09-23
1035Canada2026-09-27
1036Germany2026-09-30
1037Japan2026-09-08
1038Argentina2026-09-14
1039Australia2026-09-09
1040Brazil2026-09-30
1041Spain2026-09-06
1042Russia2026-09-07
1043Australia2026-09-25
1044Australia2026-10-01
1045Argentina2026-09-12
1046Spain2026-10-04
1047India2026-09-12
1048France2026-10-02
1049Argentina2026-09-19

On-Demand Data

NameIdCountryDate
Munro F Iturbide1000Japan2026-09-30
Maria Y Maclead1001United Kingdom2026-09-24
Aika D Bowley1002Brazil2026-09-30
Aditya A Ostrosky1003Spain2026-09-17
Francesco I Gillian1004Spain2026-09-27
Octavia K Saylors1005Brazil2026-09-30
Misaki R Shinko1006Russia2026-09-06
Chavez H Morasca1007Japan2026-09-14
Aika A Caudy1008Australia2026-09-19
Leja W Flosi1009Canada2026-09-06
Izzy S Ferencz1010Germany2026-10-01
Mayumi M Gillian1011India2026-09-12
Alejandro E Malet1012Russia2026-09-20
Emily R Sergi1013Italy2026-09-10
Faith C Garufi1014Spain2026-09-08
David T Tollner1015Argentina2026-10-03
Clifford A Kolmetz1016Spain2026-09-18
Jones N Inouye1017France2026-09-30
Jefferson V Foller1018United Kingdom2026-10-01
Rodrigues U Poquette1019Germany2026-09-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro P BriddickCanadaOnyama Limba NEGOTIATION
Ivar H ChuiCanadaAmy Elsner PROPOSAL
Francesco H PoquetteIndiaIoni Bowcher UNQUALIFIED
Maria P MorascaSpainIvan Magalhaes PROPOSAL
Alejandro C KolmetzGermanyOnyama Limba UNQUALIFIED
Rodrigues R AmigonUnited KingdomXuxue Feng UNQUALIFIED
Wickens F WaycottAustraliaAsiya Javayant QUALIFIED
Izzy U OldroydCanadaIoni Bowcher PROPOSAL
Maisha J MacleadFranceXuxue Feng NEW
Morrow X BologniaIndiaAsiya Javayant PROPOSAL
Misaki Z RoysterIndiaBernardo Dominic RENEWAL
Jefferson T RoysterItalyAsiya Javayant UNQUALIFIED
Juan H PerinBrazilElwin Sharvill QUALIFIED
Silvio I NestleAustraliaIvan Magalhaes RENEWAL
Alejandro K ShinkoGermanyBernardo Dominic RENEWAL
Francesco V IturbideBrazilAmy Elsner UNQUALIFIED
David E CaudyGermanyAsiya Javayant NEGOTIATION
Aika V MarrierGermanyXuxue Feng PROPOSAL
Clifford F CaldareraBrazilElwin Sharvill QUALIFIED
Francesco K PaprockiIndiaStephen Shaw UNQUALIFIED
Stacey C KolmetzCanadaAmy Elsner QUALIFIED
Emily W DilliardGermanyIvan Magalhaes NEW
Greenwood Z NickaUnited KingdomBernardo Dominic PROPOSAL
Aditya K PoquetteUnited KingdomIvan Magalhaes NEGOTIATION
Chavez W GarufiItalyElwin Sharvill QUALIFIED
Mayumi H BriddickUnited KingdomOnyama Limba NEGOTIATION
Aruna K MorascaJapanXuxue Feng NEGOTIATION
Maisha L RoysterItalyOnyama Limba NEGOTIATION
Antonio B AlbaresIndiaAnna Fali RENEWAL
Kadeem R GarufiFranceBernardo Dominic QUALIFIED
Aika U RulapaughAustraliaElwin Sharvill NEW
Octavia J BowleyIndiaAnna Fali RENEWAL
Kadeem R InouyeItalyOnyama Limba QUALIFIED
Jefferson R StockhamUnited KingdomAsiya Javayant NEGOTIATION
Silvio V SlusarskiSpainXuxue Feng PROPOSAL
Kadeem R BologniaArgentinaIvan Magalhaes RENEWAL
Leja U KuskoItalyBernardo Dominic UNQUALIFIED
Juan Q WieserFranceBernardo Dominic RENEWAL
Nicolas N BologniaIndiaAsiya Javayant UNQUALIFIED
Sinclair K MorascaAustraliaElwin Sharvill NEW

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