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
Silvio V WaycottCanadaBernardo Dominic QUALIFIED
Wickens K PaprockiRussiaXuxue Feng PROPOSAL
Morrow Q CaudyCanadaIoni Bowcher NEW
Salvatore G BologniaUnited KingdomElwin Sharvill RENEWAL
Morrow L VenereArgentinaIvan Magalhaes PROPOSAL
Kadeem J RoysterUnited KingdomElwin Sharvill PROPOSAL
Kadeem Y RoysterGermanyIoni Bowcher UNQUALIFIED
Maria F GarufiBrazilAmy Elsner NEW
Arvin F GarufiUnited KingdomAmy Elsner NEW
Silvio A BologniaRussiaElwin Sharvill RENEWAL
Costa Q WieserIndiaAnna Fali QUALIFIED
Darci L IturbideGermanyAnna Fali QUALIFIED
Julie Z VocelkaItalyStephen Shaw NEGOTIATION
Morrow D KolmetzJapanOnyama Limba PROPOSAL
Octavia J SchemmerGermanyOnyama Limba RENEWAL
Smith M RoysterBrazilBernardo Dominic RENEWAL
Jeanfrancois D ShinkoItalyAsiya Javayant NEW
Rodrigues Q OldroydUnited KingdomXuxue Feng QUALIFIED
Silvio E GlickFranceIvan Magalhaes PROPOSAL
James H ChuiItalyIoni Bowcher PROPOSAL
Deepesh M NestleBrazilAnna Fali NEGOTIATION
Jennifer V VenereGermanyIoni Bowcher PROPOSAL
Julie A WhobreyArgentinaAmy Elsner PROPOSAL
Nicolas M BologniaUnited KingdomXuxue Feng PROPOSAL
Munro T OstroskyCanadaXuxue Feng NEGOTIATION
Johnson U WieserItalyIvan Magalhaes NEGOTIATION
David K GillianJapanAnna Fali QUALIFIED
Jones Q ChuiJapanAsiya Javayant PROPOSAL
Munro J KuskoRussiaOnyama Limba PROPOSAL
James F ShinkoCanadaBernardo Dominic UNQUALIFIED
Costa F MacleadJapanAnna Fali PROPOSAL
Leja X FerenczItalyElwin Sharvill UNQUALIFIED
Ricardo W CaldareraAustraliaElwin Sharvill QUALIFIED
Salvatore H MarrierArgentinaElwin Sharvill QUALIFIED
Octavia C RulapaughCanadaStephen Shaw QUALIFIED
Antonio K FlosiUnited KingdomAnna Fali NEW
Maria V MacleadFranceAmy Elsner NEGOTIATION
Izzy U GillianUnited KingdomBernardo Dominic UNQUALIFIED
Leon N InouyeGermanyBernardo Dominic UNQUALIFIED
Isabel B GlickGermanyStephen Shaw QUALIFIED
Stacey N FlosiSpainElwin Sharvill QUALIFIED
Deepesh Z TollnerItalyElwin Sharvill NEGOTIATION
Chavez T ChuiItalyElwin Sharvill NEGOTIATION
Smith F GlickFranceXuxue Feng PROPOSAL
Antonio S MarrierSpainElwin Sharvill RENEWAL
Darci P RutaSpainIoni Bowcher UNQUALIFIED
Darci Q PoquetteGermanyElwin Sharvill UNQUALIFIED
Juan N MacleadCanadaBernardo Dominic UNQUALIFIED
Emily F RoysterAustraliaStephen Shaw RENEWAL
Kadeem V OldroydCanadaXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro G AmigonCanadaElwin Sharvill NEW
Ivar Q PaprockiGermanyElwin Sharvill NEGOTIATION
Aruna N RimAustraliaElwin Sharvill NEGOTIATION
Ricardo X VocelkaArgentinaAnna Fali QUALIFIED
Maisha P TollnerIndiaBernardo Dominic UNQUALIFIED
Aika F RutaItalyAnna Fali UNQUALIFIED
Tony O WieserBrazilAsiya Javayant QUALIFIED
Chavez Z DilliardGermanyAsiya Javayant UNQUALIFIED
Chavez H PerinArgentinaAnna Fali NEW
Adams Q StockhamIndiaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas T SaylorsArgentina2026-10-07Morlong Associates UNQUALIFIED99Asiya Javayant
1001Alejandro Y SaylorsCanada2026-10-26King, Christopher A Esq PROPOSAL20Onyama Limba
1002Ricardo C SchemmerCanada2026-10-21Feiner Bros NEW72Elwin Sharvill
1003Tony K RulapaughBrazil2026-10-11Benton, John B Jr RENEWAL79Stephen Shaw
1004Chavez M GauchoArgentina2026-10-25Chanay, Jeffrey A Esq RENEWAL75Elwin Sharvill
1005Nicolas N FerenczRussia2026-10-13Buckley Miller Wright NEW49Asiya Javayant
1006Aditya I PoquetteItaly2026-10-23Rangoni Of Florence QUALIFIED75Onyama Limba
1007Claire S PerinSpain2026-10-21King, Christopher A Esq UNQUALIFIED18Anna Fali
1008Stacey Y GillianGermany2026-10-19Rangoni Of Florence NEGOTIATION25Ivan Magalhaes
1009Jennifer O StockhamIndia2026-10-13Dorl, James J Esq PROPOSAL50Anna Fali
1010Silvio K MorascaSpain2026-10-28Feiner Bros NEW78Stephen Shaw
1011Leon W AmigonIndia2026-10-30Benton, John B Jr NEW25Asiya Javayant
1012James O GauchoBrazil2026-10-25Buckley Miller Wright UNQUALIFIED64Anna Fali
1013Chavez F KuskoJapan2026-10-20Buckley Miller Wright NEGOTIATION7Asiya Javayant
1014Clifford P RoysterSpain2026-10-11Feltz Printing Service RENEWAL3Ioni Bowcher
1015Nicolas D FerenczUnited Kingdom2026-10-11Morlong Associates NEGOTIATION67Elwin Sharvill
1016Octavia D WhobreyCanada2026-10-03Morlong Associates RENEWAL90Xuxue Feng
1017Cody X ChuiAustralia2026-10-29Rousseaux, Michael Esq QUALIFIED61Amy Elsner
1018Silvio W KuskoRussia2026-10-14Feiner Bros NEW17Onyama Limba
1019Jones B WieserBrazil2026-10-16Commercial Press PROPOSAL74Amy Elsner
1020Adams H InouyeSpain2026-10-03Benton, John B Jr UNQUALIFIED97Anna Fali
1021Mujtaba Y AlbaresCanada2026-10-14Chemel, James L Cpa UNQUALIFIED75Ivan Magalhaes
1022Jeanfrancois R RoysterGermany2026-10-19Morlong Associates RENEWAL73Ivan Magalhaes
1023Leon A SergiAustralia2026-10-13Feiner Bros NEW73Asiya Javayant
1024Maisha Z GlickIndia2026-10-21Rangoni Of Florence UNQUALIFIED72Stephen Shaw
1025Aditya Y DoeFrance2026-10-10Benton, John B Jr NEW69Onyama Limba
1026Arvin J PoquetteArgentina2026-10-11Commercial Press QUALIFIED24Asiya Javayant
1027Tony Z GillianItaly2026-10-12Truhlar And Truhlar Attys NEGOTIATION12Xuxue Feng
1028Aruna Q WieserAustralia2026-10-04Printing Dimensions RENEWAL61Asiya Javayant
1029Sinclair V SaylorsBrazil2026-10-19Feltz Printing Service QUALIFIED77Asiya Javayant
1030Nicolas J RutaGermany2026-10-13Chapman, Ross E Esq RENEWAL9Elwin Sharvill
1031Maisha J PerinIndia2026-10-19Chapman, Ross E Esq QUALIFIED24Asiya Javayant
1032Leon J RulapaughUnited Kingdom2026-10-23Printing Dimensions NEGOTIATION96Amy Elsner
1033Maria M ChuiGermany2026-10-17Chemel, James L Cpa PROPOSAL73Onyama Limba
1034David D WieserAustralia2026-10-03Feltz Printing Service NEW88Elwin Sharvill
1035Chavez N CampainArgentina2026-10-04King, Christopher A Esq NEW98Ivan Magalhaes
1036Johnson B GauchoCanada2026-10-26Chapman, Ross E Esq NEGOTIATION79Elwin Sharvill
1037Julie B ChuiItaly2026-10-04Commercial Press UNQUALIFIED98Elwin Sharvill
1038Octavia A RulapaughRussia2026-10-27King, Christopher A Esq NEGOTIATION50Elwin Sharvill
1039Smith F OldroydBrazil2026-10-17Buckley Miller Wright PROPOSAL82Onyama Limba
1040Misaki K BologniaArgentina2026-10-07Chanay, Jeffrey A Esq QUALIFIED29Asiya Javayant
1041Claire E VenereRussia2026-10-18Printing Dimensions NEGOTIATION72Asiya Javayant
1042Costa B OstroskyArgentina2026-10-13Dorl, James J Esq NEW28Elwin Sharvill
1043Izzy T PaprockiArgentina2026-10-23Feiner Bros QUALIFIED57Amy Elsner
1044Juan P VocelkaUnited Kingdom2026-10-25Printing Dimensions NEW64Elwin Sharvill
1045Alejandro Y ChuiCanada2026-10-25Rousseaux, Michael Esq UNQUALIFIED81Asiya Javayant
1046Arvin N PerinUnited Kingdom2026-10-19Benton, John B Jr NEW67Asiya Javayant
1047Francesco J PerinIndia2026-10-03Truhlar And Truhlar Attys NEW22Xuxue Feng
1048Greenwood X CampainIndia2026-10-03King, Christopher A Esq NEGOTIATION60Amy Elsner
1049Sinclair X IturbideJapan2026-10-10Chanay, Jeffrey A Esq UNQUALIFIED9Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Morrow D SlusarskiArgentinaBernardo Dominic UNQUALIFIED
Faith Y BriddickJapanOnyama Limba PROPOSAL
Faith E MorascaFranceXuxue Feng NEGOTIATION
Johnson G WaycottJapanStephen Shaw PROPOSAL
Johnson G IturbideJapanIoni Bowcher NEGOTIATION
Cody O SaylorsArgentinaOnyama Limba NEW
Izzy M InouyeRussiaAnna Fali NEGOTIATION
Misaki Z ChuiSpainAsiya Javayant RENEWAL
Jennifer P SergiRussiaIoni Bowcher PROPOSAL
Leon A SlusarskiGermanyStephen Shaw NEGOTIATION
Juan V ShinkoItalyIvan Magalhaes RENEWAL
Clifford A RimIndiaXuxue Feng RENEWAL
Izzy N BologniaItalyIvan Magalhaes RENEWAL
Aditya B PaprockiBrazilOnyama Limba PROPOSAL
Deepesh U GarufiArgentinaAnna Fali PROPOSAL
Stacey P GlickIndiaXuxue Feng QUALIFIED
Rodrigues H StockhamIndiaXuxue Feng PROPOSAL
Munro A OldroydSpainAsiya Javayant NEGOTIATION
Alejandro Q MarrierSpainBernardo Dominic PROPOSAL
Munro P WieserSpainElwin Sharvill RENEWAL
Jennifer K CaldareraCanadaOnyama Limba RENEWAL
Arvin P NickaGermanyElwin Sharvill RENEWAL
Faith A BowleyRussiaAnna Fali QUALIFIED
Jefferson E CaldareraArgentinaStephen Shaw QUALIFIED
Jones U AlbaresGermanyIoni Bowcher RENEWAL
Aruna T NestleArgentinaOnyama Limba QUALIFIED
Leon B RimArgentinaBernardo Dominic UNQUALIFIED
Adams W BriddickAustraliaAnna Fali QUALIFIED
Leja H KolmetzAustraliaAmy Elsner QUALIFIED
Wickens X WhobreyGermanyIoni Bowcher NEW
Aruna Z WaycottRussiaStephen Shaw UNQUALIFIED
Francesco W NickaBrazilStephen Shaw NEGOTIATION
Alejandro F VocelkaUnited KingdomElwin Sharvill NEW
Maria F WhobreySpainElwin Sharvill QUALIFIED
Murillo Z ChuiAustraliaStephen Shaw PROPOSAL
Nicolas Z InouyeFranceXuxue Feng QUALIFIED
Emily A RimCanadaIoni Bowcher RENEWAL
Kadeem S SchemmerGermanyAmy Elsner NEGOTIATION
Morrow V FlosiAustraliaXuxue Feng PROPOSAL
Jeanfrancois C ShinkoSpainStephen Shaw NEGOTIATION
Alejandro O FerenczGermanyStephen Shaw QUALIFIED
Arvin A DilliardIndiaIoni Bowcher NEW
Salvatore S NickaCanadaStephen Shaw RENEWAL
James R SlusarskiItalyIvan Magalhaes UNQUALIFIED
Greenwood R SchemmerCanadaAnna Fali RENEWAL
Salvatore W InouyeRussiaAmy Elsner NEW
Francesco P BologniaItalyXuxue Feng NEW
Ivar L RutaItalyAsiya Javayant RENEWAL
Leon P RimFranceElwin Sharvill UNQUALIFIED
Misaki X BriddickItalyAmy Elsner PROPOSAL
Frozen Columns
Name
Munro R Rulapaugh
David U Rim
Rodrigues R Flosi
Salvatore R Malet
Silvio K Malet
Alejandro S Whobrey
Maria S Slusarski
Alejandro U Slusarski
Silvio G Stenseth
Octavia T Bowley
Alejandro S Campain
Isabel G Bolognia
Rodrigues X Iturbide
Jeanfrancois C Caudy
Salvatore R Waycott
Aditya T Amigon
Silvio F Poquette
Maria S Butt
Faith G Kolmetz
Jefferson W Saylors
Cody H Caldarera
Ashley F Ostrosky
Clifford U Stenseth
Greenwood B Dilliard
Chavez K Royster
Jeanfrancois D Shinko
Cody Y Dilliard
Aditya D Paprocki
Mayumi V Butt
Silvio O Gillian
Smith Z Nestle
Tony Z Ostrosky
Stacey G Kolmetz
Tony J Wieser
Stacey L Slusarski
Maisha N Poquette
Leon K Nicka
David M Ostrosky
Rodrigues B Figeroa
Izzy Y Shinko
Jones G Morasca
Francesco I Gaucho
Jefferson A Chui
Maria B Rulapaugh
Cody F Saylors
Cody G Darakjy
James M Whobrey
Nicolas G Ostrosky
Kadeem G Oldroyd
Antonio B Perin
IdCountryDate
1000France2026-10-21
1001Germany2026-10-16
1002Japan2026-10-24
1003Germany2026-10-26
1004Canada2026-10-03
1005Italy2026-10-20
1006Germany2026-10-04
1007Australia2026-10-08
1008Australia2026-10-25
1009France2026-10-05
1010India2026-10-14
1011Italy2026-10-20
1012Japan2026-10-16
1013India2026-10-28
1014Italy2026-10-03
1015Spain2026-10-19
1016France2026-10-23
1017Russia2026-10-25
1018Canada2026-10-17
1019Brazil2026-10-18
1020Brazil2026-10-31
1021Canada2026-10-18
1022Argentina2026-10-09
1023Germany2026-10-04
1024Brazil2026-10-31
1025Italy2026-10-20
1026Canada2026-10-06
1027Italy2026-10-07
1028India2026-10-23
1029Germany2026-10-22
1030Argentina2026-10-26
1031Argentina2026-10-20
1032Germany2026-10-27
1033Argentina2026-10-22
1034Argentina2026-10-09
1035Italy2026-10-21
1036Australia2026-10-21
1037Canada2026-10-11
1038Russia2026-10-08
1039Germany2026-10-28
1040Japan2026-10-07
1041Japan2026-10-09
1042France2026-10-23
1043Brazil2026-10-11
1044Italy2026-10-22
1045Spain2026-10-06
1046Russia2026-10-07
1047Brazil2026-10-05
1048Russia2026-10-21
1049Spain2026-10-09

On-Demand Data

NameIdCountryDate
Smith G Dilliard1000Germany2026-10-17
Misaki S Ostrosky1001Russia2026-10-10
Costa P Royster1002India2026-10-06
Aika N Dilliard1003Italy2026-10-13
Kadeem U Whobrey1004Canada2026-10-11
Nicolas G Gaucho1005Argentina2026-10-03
Costa X Kolmetz1006Canada2026-10-30
Smith H Shinko1007India2026-10-13
Murillo Q Slusarski1008India2026-10-19
Aruna L Kolmetz1009India2026-10-14
Johnson E Slusarski1010Russia2026-10-29
Jennifer A Ruta1011France2026-10-14
Jennifer U Kusko1012India2026-10-13
Aruna D Poquette1013United Kingdom2026-10-03
Costa H Figeroa1014Canada2026-10-11
Tony V Slusarski1015Russia2026-10-19
Murillo D Briddick1016Italy2026-10-11
Wickens N Marrier1017Canada2026-10-14
Arvin P Iturbide1018Japan2026-10-22
Claire T Glick1019Italy2026-10-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith E SergiGermanyAnna Fali RENEWAL
Munro M FlosiUnited KingdomIoni Bowcher UNQUALIFIED
James U GarufiBrazilXuxue Feng RENEWAL
Leon F SaylorsCanadaElwin Sharvill NEW
Maria S AlbaresItalyStephen Shaw RENEWAL
Alejandro V TollnerArgentinaAnna Fali RENEWAL
Stacey P SergiItalyElwin Sharvill QUALIFIED
Greenwood S FerenczSpainIvan Magalhaes RENEWAL
Leja Z PerinIndiaElwin Sharvill NEW
Emily A GarufiJapanIvan Magalhaes QUALIFIED
Aditya B TollnerBrazilElwin Sharvill RENEWAL
Ricardo I DarakjyIndiaAmy Elsner RENEWAL
Isabel C GlickBrazilIvan Magalhaes UNQUALIFIED
Smith T GauchoItalyXuxue Feng QUALIFIED
Aditya C KuskoFranceAmy Elsner QUALIFIED
Sinclair H RutaSpainAnna Fali QUALIFIED
Greenwood L SlusarskiIndiaStephen Shaw UNQUALIFIED
Aika Z SergiUnited KingdomAmy Elsner QUALIFIED
Alejandro P NickaFranceOnyama Limba UNQUALIFIED
Aika X MacleadBrazilAmy Elsner PROPOSAL
Deepesh D IturbideBrazilXuxue Feng QUALIFIED
Aditya V ShinkoUnited KingdomStephen Shaw PROPOSAL
Chavez N InouyeFranceAnna Fali NEGOTIATION
David U RulapaughIndiaAnna Fali PROPOSAL
Mujtaba Q PoquetteIndiaIvan Magalhaes PROPOSAL
Morrow K GauchoSpainXuxue Feng PROPOSAL
Chavez A CampainRussiaAnna Fali UNQUALIFIED
Aditya Q PerinSpainAnna Fali UNQUALIFIED
Alejandro Z BriddickCanadaAnna Fali PROPOSAL
Juan G DarakjyArgentinaAnna Fali UNQUALIFIED
Antonio R AmigonArgentinaBernardo Dominic UNQUALIFIED
Salvatore I InouyeItalyElwin Sharvill NEGOTIATION
Mujtaba F GlickUnited KingdomElwin Sharvill RENEWAL
Cody A SchemmerGermanyBernardo Dominic QUALIFIED
Clifford T VocelkaCanadaAsiya Javayant PROPOSAL
Claire Q WaycottGermanyOnyama Limba QUALIFIED
Arvin X CampainGermanyAnna Fali NEW
Jennifer P MorascaCanadaIvan Magalhaes PROPOSAL
Kadeem H GauchoItalyElwin Sharvill RENEWAL
Salvatore Q WieserGermanyOnyama Limba 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>