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 G KuskoIndiaOnyama Limba RENEWAL
Juan C NickaArgentinaElwin Sharvill NEW
Jennifer J WhobreyAustraliaOnyama Limba RENEWAL
Mujtaba G AlbaresRussiaStephen Shaw PROPOSAL
Aruna D PoquetteGermanyXuxue Feng QUALIFIED
Emily V KuskoCanadaIoni Bowcher QUALIFIED
Munro S WieserRussiaAsiya Javayant PROPOSAL
Jefferson Q WaycottJapanAsiya Javayant NEGOTIATION
David T MacleadFranceAmy Elsner PROPOSAL
Maria F FigeroaUnited KingdomIvan Magalhaes NEW
Stacey T MaletBrazilElwin Sharvill UNQUALIFIED
Costa T RimIndiaAsiya Javayant NEGOTIATION
Deepesh L KuskoGermanyIoni Bowcher QUALIFIED
Johnson B RimSpainAnna Fali RENEWAL
Jeanfrancois S KolmetzAustraliaStephen Shaw UNQUALIFIED
Izzy P PoquetteCanadaAnna Fali RENEWAL
Silvio X IturbideRussiaIvan Magalhaes PROPOSAL
James A SaylorsJapanElwin Sharvill NEGOTIATION
Jones W GarufiFranceXuxue Feng UNQUALIFIED
Octavia P OldroydRussiaIvan Magalhaes QUALIFIED
Leja K SlusarskiBrazilElwin Sharvill UNQUALIFIED
Morrow G GlickItalyOnyama Limba PROPOSAL
Francesco R VenereSpainAmy Elsner NEW
Morrow W StockhamAustraliaElwin Sharvill UNQUALIFIED
Francesco U FigeroaUnited KingdomBernardo Dominic NEGOTIATION
Arvin O WieserUnited KingdomAnna Fali RENEWAL
Izzy Q BowleyItalyElwin Sharvill NEGOTIATION
Leja Z FerenczRussiaOnyama Limba PROPOSAL
Leon G PoquetteSpainStephen Shaw NEGOTIATION
Emily F PoquetteAustraliaIoni Bowcher QUALIFIED
Costa T NickaCanadaBernardo Dominic NEW
Murillo R StockhamJapanAmy Elsner UNQUALIFIED
Faith Q IturbideUnited KingdomIvan Magalhaes RENEWAL
Chavez N FigeroaBrazilIvan Magalhaes QUALIFIED
Aditya N ChuiCanadaIoni Bowcher PROPOSAL
Maria Z RoysterCanadaIoni Bowcher QUALIFIED
Kadeem Y SaylorsSpainStephen Shaw RENEWAL
Aruna S SaylorsItalyAsiya Javayant RENEWAL
Costa B MaletGermanyAsiya Javayant NEGOTIATION
Kaitlin E MaletFranceIoni Bowcher NEGOTIATION
Adams U NickaSpainXuxue Feng NEW
Cody X SaylorsJapanAsiya Javayant QUALIFIED
David H ChuiCanadaIoni Bowcher UNQUALIFIED
Aditya L InouyeRussiaIvan Magalhaes NEW
Francesco Y GillianArgentinaIoni Bowcher PROPOSAL
Aditya P RimSpainElwin Sharvill QUALIFIED
Claire Z SchemmerIndiaOnyama Limba NEGOTIATION
Claire Y CampainGermanyIoni Bowcher NEGOTIATION
Maisha F CampainAustraliaIvan Magalhaes QUALIFIED
Faith H KuskoIndiaStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Deepesh K MacleadArgentinaIvan Magalhaes UNQUALIFIED
Deepesh M RulapaughGermanyStephen Shaw UNQUALIFIED
Aditya E MacleadItalyIoni Bowcher RENEWAL
Munro P BowleyRussiaIoni Bowcher PROPOSAL
Leon S PerinBrazilOnyama Limba QUALIFIED
James M AlbaresItalyElwin Sharvill UNQUALIFIED
Cody H VocelkaGermanyIoni Bowcher RENEWAL
Murillo L GarufiJapanXuxue Feng NEGOTIATION
Munro U GillianCanadaAsiya Javayant UNQUALIFIED
Murillo L KolmetzSpainAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro X ChuiItaly2026-11-06Dorl, James J Esq NEW80Anna Fali
1001Deepesh I DoeGermany2026-10-17Dorl, James J Esq NEW21Ivan Magalhaes
1002David R ButtAustralia2026-10-14Chemel, James L Cpa PROPOSAL50Elwin Sharvill
1003Salvatore F RulapaughRussia2026-11-06Rousseaux, Michael Esq NEGOTIATION81Anna Fali
1004Mayumi Q KolmetzAustralia2026-10-24Benton, John B Jr NEGOTIATION22Ivan Magalhaes
1005Aika P RoysterGermany2026-11-12Truhlar And Truhlar Attys PROPOSAL78Elwin Sharvill
1006Darci I SaylorsSpain2026-10-14Feiner Bros NEGOTIATION53Ivan Magalhaes
1007Johnson K ShinkoJapan2026-10-31Feiner Bros QUALIFIED88Amy Elsner
1008Rodrigues G FollerGermany2026-10-24Rangoni Of Florence NEW62Amy Elsner
1009Jeanfrancois I OldroydItaly2026-10-25Morlong Associates RENEWAL86Amy Elsner
1010Sinclair J BowleyItaly2026-10-16Dorl, James J Esq PROPOSAL84Ioni Bowcher
1011Octavia G GillianIndia2026-10-15Chanay, Jeffrey A Esq QUALIFIED45Xuxue Feng
1012Ashley C StockhamItaly2026-11-01Chapman, Ross E Esq UNQUALIFIED81Asiya Javayant
1013Julie H VenereUnited Kingdom2026-10-24Chemel, James L Cpa NEGOTIATION97Ivan Magalhaes
1014Wickens O PerinItaly2026-10-30Commercial Press UNQUALIFIED67Ivan Magalhaes
1015Aruna C FigeroaUnited Kingdom2026-10-31Commercial Press NEW52Amy Elsner
1016Sinclair G FollerItaly2026-11-05Feltz Printing Service PROPOSAL42Bernardo Dominic
1017Arvin B ChuiRussia2026-10-24Dorl, James J Esq RENEWAL11Elwin Sharvill
1018Tony S DilliardArgentina2026-10-19Rousseaux, Michael Esq NEW29Bernardo Dominic
1019Claire W BowleyJapan2026-11-10Truhlar And Truhlar Attys RENEWAL2Ioni Bowcher
1020Jennifer O DoeArgentina2026-10-21Morlong Associates UNQUALIFIED3Bernardo Dominic
1021James S OldroydIndia2026-11-08Commercial Press RENEWAL61Xuxue Feng
1022Kadeem V GauchoGermany2026-10-18Morlong Associates NEGOTIATION21Elwin Sharvill
1023Salvatore W KolmetzUnited Kingdom2026-11-04Benton, John B Jr UNQUALIFIED43Stephen Shaw
1024Costa V PaprockiFrance2026-11-01Morlong Associates NEW94Ioni Bowcher
1025Arvin H NickaArgentina2026-10-30Dorl, James J Esq PROPOSAL58Onyama Limba
1026Costa Z MacleadAustralia2026-10-27Feltz Printing Service QUALIFIED96Xuxue Feng
1027Morrow M AlbaresItaly2026-10-26Morlong Associates PROPOSAL55Stephen Shaw
1028Jeanfrancois H PoquetteIndia2026-11-08Feiner Bros NEW76Stephen Shaw
1029Maria K PaprockiJapan2026-10-25Chanay, Jeffrey A Esq PROPOSAL26Stephen Shaw
1030Maria C ButtIndia2026-10-26Rangoni Of Florence RENEWAL90Anna Fali
1031Ricardo O ShinkoArgentina2026-10-20King, Christopher A Esq PROPOSAL95Bernardo Dominic
1032Maisha M OldroydGermany2026-10-14Benton, John B Jr NEW93Elwin Sharvill
1033Rodrigues U BowleyAustralia2026-11-11Morlong Associates PROPOSAL77Stephen Shaw
1034Antonio E FlosiBrazil2026-10-26Chemel, James L Cpa UNQUALIFIED25Bernardo Dominic
1035Munro N StockhamCanada2026-10-22Chapman, Ross E Esq NEW21Bernardo Dominic
1036James T ShinkoSpain2026-10-24Benton, John B Jr NEGOTIATION82Ioni Bowcher
1037Rodrigues D RutaJapan2026-11-03Dorl, James J Esq UNQUALIFIED87Amy Elsner
1038Leon Y VenereIndia2026-10-28Printing Dimensions PROPOSAL71Onyama Limba
1039Munro W GillianItaly2026-11-02Feltz Printing Service RENEWAL21Stephen Shaw
1040Maria P SchemmerJapan2026-11-01Commercial Press NEW91Xuxue Feng
1041Francesco T NestleUnited Kingdom2026-11-09Feiner Bros PROPOSAL64Stephen Shaw
1042Aditya H SchemmerUnited Kingdom2026-10-24Dorl, James J Esq RENEWAL80Onyama Limba
1043Claire D KolmetzRussia2026-10-27Benton, John B Jr NEW41Stephen Shaw
1044Aruna M MaletJapan2026-10-16Truhlar And Truhlar Attys PROPOSAL74Onyama Limba
1045Ashley K CaldareraItaly2026-11-10Feltz Printing Service NEGOTIATION76Stephen Shaw
1046Johnson P VenereAustralia2026-11-11King, Christopher A Esq NEGOTIATION92Bernardo Dominic
1047Adams F IturbideUnited Kingdom2026-10-20Chemel, James L Cpa UNQUALIFIED29Ioni Bowcher
1048Aika L KolmetzGermany2026-11-07Benton, John B Jr RENEWAL21Ivan Magalhaes
1049Johnson X GarufiGermany2026-10-28Buckley Miller Wright RENEWAL48Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Ivar Q OldroydCanadaXuxue Feng PROPOSAL
Alejandro D StockhamGermanyIvan Magalhaes NEGOTIATION
Alejandro Q KuskoBrazilBernardo Dominic UNQUALIFIED
Jennifer C ButtBrazilElwin Sharvill PROPOSAL
Deepesh B StockhamItalyXuxue Feng PROPOSAL
Sinclair L BowleyCanadaAnna Fali PROPOSAL
David Q StensethBrazilAmy Elsner QUALIFIED
Morrow L RoysterIndiaAmy Elsner UNQUALIFIED
Misaki J SaylorsUnited KingdomAmy Elsner UNQUALIFIED
Stacey C InouyeArgentinaIoni Bowcher RENEWAL
Aruna S RoysterJapanStephen Shaw NEGOTIATION
Adams K RutaUnited KingdomIvan Magalhaes RENEWAL
Costa M BowleySpainStephen Shaw NEGOTIATION
Clifford R VocelkaGermanyIoni Bowcher PROPOSAL
Julie Y AlbaresJapanBernardo Dominic PROPOSAL
Cody P OldroydItalyOnyama Limba NEW
Nicolas J CaldareraRussiaElwin Sharvill NEGOTIATION
Tony G MarrierBrazilAnna Fali NEW
Tony A OldroydUnited KingdomBernardo Dominic NEW
Cody Q WaycottJapanElwin Sharvill QUALIFIED
Jennifer K DoeItalyXuxue Feng QUALIFIED
Clifford T PaprockiRussiaElwin Sharvill PROPOSAL
Mayumi Z AmigonAustraliaIoni Bowcher NEGOTIATION
Juan A DarakjyJapanIvan Magalhaes NEW
Clifford I CaldareraCanadaAnna Fali RENEWAL
Clifford A FollerBrazilAmy Elsner NEGOTIATION
Aditya G ShinkoJapanIvan Magalhaes PROPOSAL
Chavez I BriddickGermanyIoni Bowcher PROPOSAL
Costa K IturbideFranceBernardo Dominic NEGOTIATION
Salvatore E FerenczJapanElwin Sharvill NEGOTIATION
Octavia O OldroydArgentinaAsiya Javayant NEW
Ricardo A DilliardIndiaXuxue Feng PROPOSAL
Murillo R PaprockiSpainAmy Elsner NEW
Greenwood S PaprockiItalyAmy Elsner RENEWAL
Aika L AlbaresFranceXuxue Feng QUALIFIED
Mayumi P MacleadIndiaAmy Elsner QUALIFIED
Aruna Z RimJapanBernardo Dominic QUALIFIED
Deepesh M InouyeFranceIoni Bowcher PROPOSAL
Adams Q FlosiFranceOnyama Limba RENEWAL
Izzy J StockhamSpainIvan Magalhaes PROPOSAL
Salvatore C GillianJapanAnna Fali UNQUALIFIED
Leja L KolmetzFranceIvan Magalhaes UNQUALIFIED
Juan Y TollnerFranceStephen Shaw UNQUALIFIED
Sinclair O TollnerRussiaAnna Fali PROPOSAL
Sinclair Q FerenczArgentinaIvan Magalhaes NEW
Aruna E PerinFranceAsiya Javayant RENEWAL
James L TollnerCanadaAmy Elsner NEGOTIATION
Claire N SergiCanadaAnna Fali RENEWAL
Rodrigues A ShinkoSpainXuxue Feng UNQUALIFIED
Jones T BriddickCanadaElwin Sharvill PROPOSAL
Frozen Columns
Name
Leon K Briddick
Clifford H Kolmetz
Kaitlin N Waycott
Greenwood Y Doe
Maisha U Glick
Morrow N Bolognia
Emily X Iturbide
Stacey F Dilliard
Sinclair W Ruta
David S Rim
Aika V Oldroyd
Clifford X Paprocki
Adams D Vocelka
Ashley L Oldroyd
Octavia P Marrier
Cody Y Shinko
Alejandro W Whobrey
Smith C Flosi
Jones Y Inouye
Francesco S Poquette
Deepesh B Rulapaugh
Adams Y Slusarski
Leon W Waycott
Adams A Doe
Murillo Q Poquette
Ivar W Waycott
Mujtaba X Schemmer
Arvin P Sergi
Juan A Flosi
Costa L Briddick
Tony V Bolognia
Stacey Q Gillian
Izzy D Doe
Stacey C Bolognia
Munro H Briddick
Alejandro C Sergi
Maisha U Chui
Jones K Ferencz
Tony E Vocelka
Isabel J Ostrosky
Jennifer R Perin
Mayumi M Nicka
Isabel B Perin
James M Foller
Izzy M Iturbide
Costa L Dilliard
Izzy W Albares
Jennifer I Nestle
Wickens N Doe
Stacey A Doe
IdCountryDate
1000Argentina2026-10-26
1001Italy2026-10-31
1002Argentina2026-10-18
1003Russia2026-11-03
1004France2026-10-24
1005Germany2026-10-27
1006Russia2026-10-21
1007Spain2026-11-08
1008Australia2026-10-24
1009Italy2026-11-02
1010Japan2026-11-02
1011Germany2026-10-24
1012Argentina2026-11-06
1013United Kingdom2026-11-06
1014India2026-11-10
1015United Kingdom2026-10-31
1016Australia2026-11-08
1017Argentina2026-10-18
1018Brazil2026-10-29
1019Canada2026-10-28
1020Argentina2026-10-30
1021Russia2026-10-27
1022Canada2026-10-30
1023Japan2026-11-07
1024Australia2026-11-02
1025Germany2026-11-04
1026Argentina2026-11-03
1027Spain2026-11-03
1028Germany2026-10-14
1029Brazil2026-10-23
1030Japan2026-10-25
1031Argentina2026-10-27
1032Brazil2026-10-23
1033Italy2026-10-21
1034Argentina2026-11-05
1035France2026-10-23
1036Japan2026-11-03
1037France2026-10-21
1038Canada2026-10-17
1039France2026-11-01
1040Japan2026-10-27
1041Spain2026-11-12
1042Germany2026-10-31
1043Japan2026-11-10
1044India2026-11-09
1045Russia2026-10-17
1046India2026-10-26
1047France2026-10-30
1048Italy2026-10-23
1049Brazil2026-10-15

On-Demand Data

NameIdCountryDate
Deepesh H Ruta1000Brazil2026-11-01
Jennifer E Waycott1001Japan2026-11-08
Maisha Z Iturbide1002Russia2026-11-01
Adams V Ruta1003France2026-10-17
Chavez F Briddick1004India2026-10-28
Murillo C Inouye1005United Kingdom2026-10-19
Jennifer U Flosi1006Canada2026-11-05
Sinclair O Dilliard1007Argentina2026-10-24
Nicolas Q Maclead1008Australia2026-11-05
Antonio F Iturbide1009Spain2026-10-21
Emily E Marrier1010Japan2026-11-08
Chavez W Waycott1011Japan2026-11-10
Emily Z Sergi1012Canada2026-11-11
Sinclair N Venere1013Germany2026-10-14
Munro Q Marrier1014Germany2026-11-09
Jennifer P Ruta1015Japan2026-10-15
James I Maclead1016Japan2026-10-17
Smith Y Gillian1017Argentina2026-10-20
Izzy F Inouye1018Germany2026-10-20
Chavez J Campain1019France2026-10-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi H IturbideGermanyIoni Bowcher NEW
Adams L MacleadAustraliaXuxue Feng RENEWAL
Clifford F SlusarskiItalyAmy Elsner RENEWAL
Antonio B RulapaughRussiaAsiya Javayant UNQUALIFIED
Octavia H GillianIndiaAsiya Javayant NEW
Aika B GauchoIndiaBernardo Dominic UNQUALIFIED
Izzy T KuskoSpainAnna Fali UNQUALIFIED
Nicolas B PaprockiCanadaIoni Bowcher NEW
Cody E AmigonJapanAnna Fali NEGOTIATION
Claire S MarrierRussiaAmy Elsner NEGOTIATION
Jones F StensethSpainIvan Magalhaes QUALIFIED
Arvin B RulapaughArgentinaIvan Magalhaes PROPOSAL
Clifford A MarrierJapanStephen Shaw UNQUALIFIED
Jefferson C DarakjyIndiaIoni Bowcher UNQUALIFIED
Leja C NickaFranceAmy Elsner QUALIFIED
Silvio H ShinkoFranceAmy Elsner PROPOSAL
Isabel S ButtAustraliaXuxue Feng NEW
Aruna R StockhamBrazilStephen Shaw NEW
Izzy T ShinkoJapanAnna Fali PROPOSAL
Cody Q OldroydSpainXuxue Feng UNQUALIFIED
Cody E PoquetteRussiaElwin Sharvill QUALIFIED
Smith I GarufiGermanyXuxue Feng NEW
Nicolas J RoysterCanadaStephen Shaw UNQUALIFIED
James U GillianJapanStephen Shaw UNQUALIFIED
James T CampainIndiaAsiya Javayant NEW
Faith P RutaRussiaElwin Sharvill UNQUALIFIED
Adams M SaylorsCanadaOnyama Limba RENEWAL
Octavia N RoysterArgentinaAsiya Javayant NEW
Arvin U TollnerArgentinaOnyama Limba UNQUALIFIED
Leja H SchemmerArgentinaBernardo Dominic RENEWAL
Izzy X RutaRussiaIvan Magalhaes RENEWAL
Claire C PoquetteItalyIoni Bowcher PROPOSAL
Ricardo V CaldareraRussiaAnna Fali PROPOSAL
Kadeem G DarakjyFranceStephen Shaw PROPOSAL
Mujtaba H AmigonFranceAsiya Javayant PROPOSAL
Clifford I ShinkoItalyIoni Bowcher PROPOSAL
Jones P PaprockiCanadaOnyama Limba RENEWAL
Aditya J IturbideFranceElwin Sharvill QUALIFIED
Francesco Y FerenczBrazilStephen Shaw RENEWAL
Octavia O GlickFranceXuxue Feng NEGOTIATION

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