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
Aditya T WieserArgentinaAnna Fali QUALIFIED
Antonio Q PerinCanadaAnna Fali RENEWAL
Jeanfrancois H RutaItalyXuxue Feng NEW
Greenwood H DilliardItalyIoni Bowcher QUALIFIED
Adams S FigeroaBrazilStephen Shaw UNQUALIFIED
Alejandro O CaldareraRussiaBernardo Dominic NEW
Leon O StockhamIndiaOnyama Limba PROPOSAL
Aditya Z SaylorsRussiaOnyama Limba RENEWAL
Emily Z KolmetzFranceStephen Shaw RENEWAL
Maria P FigeroaJapanIoni Bowcher QUALIFIED
Alejandro M GillianGermanyIoni Bowcher RENEWAL
Wickens H WaycottFranceElwin Sharvill UNQUALIFIED
Jennifer E ShinkoJapanOnyama Limba NEGOTIATION
Wickens D TollnerJapanAsiya Javayant NEGOTIATION
Mujtaba W FigeroaArgentinaXuxue Feng QUALIFIED
Claire H SergiFranceAnna Fali PROPOSAL
Nicolas L AmigonBrazilBernardo Dominic PROPOSAL
Tony C CampainIndiaAnna Fali QUALIFIED
Smith X AlbaresRussiaXuxue Feng NEGOTIATION
Jeanfrancois X BriddickAustraliaStephen Shaw PROPOSAL
Izzy P FlosiUnited KingdomAsiya Javayant RENEWAL
Arvin I MorascaAustraliaOnyama Limba PROPOSAL
Chavez T KolmetzJapanElwin Sharvill NEGOTIATION
Clifford G RoysterAustraliaOnyama Limba NEW
Jennifer B AlbaresAustraliaXuxue Feng NEW
Deepesh J ShinkoBrazilBernardo Dominic NEW
Jeanfrancois F MacleadSpainStephen Shaw NEGOTIATION
James U VenereIndiaElwin Sharvill RENEWAL
Isabel A CaldareraBrazilStephen Shaw NEGOTIATION
Salvatore K PerinJapanElwin Sharvill PROPOSAL
Francesco S KuskoSpainStephen Shaw PROPOSAL
Adams Y ButtUnited KingdomOnyama Limba PROPOSAL
Mayumi C PoquetteBrazilIoni Bowcher QUALIFIED
Jones R MaletBrazilAnna Fali NEW
Aditya O StockhamJapanOnyama Limba NEGOTIATION
Claire V PaprockiArgentinaIvan Magalhaes RENEWAL
Silvio T ButtGermanyAsiya Javayant NEGOTIATION
Maria G FerenczIndiaOnyama Limba QUALIFIED
Tony L BowleyFranceBernardo Dominic RENEWAL
Nicolas C InouyeArgentinaElwin Sharvill PROPOSAL
Juan B NickaBrazilElwin Sharvill NEW
Cody L FerenczArgentinaIoni Bowcher UNQUALIFIED
Maria C AlbaresAustraliaBernardo Dominic UNQUALIFIED
Murillo Q WieserFranceOnyama Limba RENEWAL
Rodrigues C NestleIndiaIoni Bowcher UNQUALIFIED
Faith W IturbideCanadaIvan Magalhaes NEW
Isabel Z ChuiJapanElwin Sharvill NEW
Smith F InouyeIndiaAnna Fali UNQUALIFIED
Clifford W AlbaresRussiaIoni Bowcher RENEWAL
Antonio Z PerinItalyStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Kaitlin L ShinkoCanadaIvan Magalhaes QUALIFIED
Faith D KolmetzItalyIoni Bowcher QUALIFIED
Leon L AlbaresSpainAsiya Javayant RENEWAL
Jeanfrancois L KuskoGermanyStephen Shaw NEGOTIATION
Ivar H RulapaughArgentinaStephen Shaw UNQUALIFIED
Francesco I BriddickRussiaStephen Shaw PROPOSAL
Smith K PaprockiBrazilIoni Bowcher QUALIFIED
Jefferson J BowleyRussiaIoni Bowcher UNQUALIFIED
Octavia K KolmetzIndiaBernardo Dominic QUALIFIED
Cody O WieserJapanAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa U DilliardArgentina2026-09-19Printing Dimensions RENEWAL76Ivan Magalhaes
1001Octavia Z StockhamIndia2026-10-08Morlong Associates PROPOSAL18Onyama Limba
1002Kaitlin U GauchoArgentina2026-10-12Commercial Press NEW62Ioni Bowcher
1003Rodrigues E RutaIndia2026-09-20Dorl, James J Esq PROPOSAL92Bernardo Dominic
1004Jefferson I TollnerFrance2026-09-19Benton, John B Jr RENEWAL78Xuxue Feng
1005Salvatore R MacleadGermany2026-09-27Chemel, James L Cpa PROPOSAL62Anna Fali
1006David J OldroydGermany2026-09-30Truhlar And Truhlar Attys UNQUALIFIED40Anna Fali
1007Jones N NickaUnited Kingdom2026-10-10Truhlar And Truhlar Attys RENEWAL54Asiya Javayant
1008Jones R AlbaresBrazil2026-09-27Rangoni Of Florence RENEWAL38Asiya Javayant
1009Morrow F VenereBrazil2026-09-27Rangoni Of Florence NEGOTIATION30Stephen Shaw
1010Clifford D OstroskyItaly2026-09-29Morlong Associates PROPOSAL91Elwin Sharvill
1011Smith F ButtCanada2026-10-07Commercial Press RENEWAL51Elwin Sharvill
1012Darci W CaldareraBrazil2026-10-11Benton, John B Jr QUALIFIED87Amy Elsner
1013Ricardo L ButtItaly2026-09-13Rangoni Of Florence QUALIFIED78Ivan Magalhaes
1014Kadeem E BologniaSpain2026-09-17Feiner Bros PROPOSAL4Bernardo Dominic
1015Francesco O RutaRussia2026-09-27Dorl, James J Esq NEGOTIATION81Stephen Shaw
1016David G PerinUnited Kingdom2026-09-28Commercial Press PROPOSAL98Elwin Sharvill
1017Kadeem Y MorascaGermany2026-09-20Benton, John B Jr NEW61Amy Elsner
1018Greenwood P BowleyIndia2026-09-27Chemel, James L Cpa NEW34Bernardo Dominic
1019Antonio G MaletFrance2026-09-25Feiner Bros NEGOTIATION88Stephen Shaw
1020Maria K FigeroaIndia2026-09-19Chanay, Jeffrey A Esq UNQUALIFIED11Onyama Limba
1021Wickens M SergiItaly2026-10-11Buckley Miller Wright PROPOSAL71Elwin Sharvill
1022Wickens V WhobreyFrance2026-09-27Benton, John B Jr NEGOTIATION34Ivan Magalhaes
1023Salvatore T FlosiFrance2026-09-26Rousseaux, Michael Esq PROPOSAL13Stephen Shaw
1024Leja Q SlusarskiIndia2026-10-04Printing Dimensions UNQUALIFIED65Ioni Bowcher
1025Maisha Y NickaCanada2026-09-28Benton, John B Jr QUALIFIED24Elwin Sharvill
1026Sinclair O AmigonRussia2026-09-15Morlong Associates NEGOTIATION58Elwin Sharvill
1027James Q DilliardRussia2026-09-22Dorl, James J Esq RENEWAL82Xuxue Feng
1028Johnson T ChuiItaly2026-10-04Commercial Press RENEWAL39Stephen Shaw
1029Wickens P OldroydAustralia2026-10-10Chemel, James L Cpa PROPOSAL68Asiya Javayant
1030Aditya W BologniaFrance2026-10-01Chanay, Jeffrey A Esq QUALIFIED20Onyama Limba
1031Greenwood U FerenczRussia2026-09-29King, Christopher A Esq PROPOSAL6Stephen Shaw
1032Aditya Y StensethGermany2026-09-16Chapman, Ross E Esq QUALIFIED60Ivan Magalhaes
1033Juan V RutaFrance2026-10-01Dorl, James J Esq UNQUALIFIED37Stephen Shaw
1034David A FigeroaIndia2026-09-24Truhlar And Truhlar Attys UNQUALIFIED68Xuxue Feng
1035Mujtaba L KuskoUnited Kingdom2026-09-14Chemel, James L Cpa NEGOTIATION74Onyama Limba
1036Jefferson N FlosiAustralia2026-09-18Chemel, James L Cpa QUALIFIED25Onyama Limba
1037Ivar C GarufiItaly2026-10-07Commercial Press RENEWAL88Bernardo Dominic
1038Costa Z MorascaBrazil2026-09-22Chemel, James L Cpa QUALIFIED23Amy Elsner
1039Silvio S DilliardGermany2026-09-21Chanay, Jeffrey A Esq RENEWAL38Amy Elsner
1040Murillo I BowleyJapan2026-09-14Feiner Bros RENEWAL5Onyama Limba
1041Jones C MarrierRussia2026-10-12Truhlar And Truhlar Attys PROPOSAL82Bernardo Dominic
1042Isabel L IturbideItaly2026-09-29Chemel, James L Cpa PROPOSAL64Bernardo Dominic
1043Costa S ShinkoIndia2026-10-06Dorl, James J Esq QUALIFIED20Amy Elsner
1044Rodrigues K RutaSpain2026-09-15Buckley Miller Wright RENEWAL87Bernardo Dominic
1045Greenwood N MacleadGermany2026-09-17Commercial Press PROPOSAL77Onyama Limba
1046Darci D RutaAustralia2026-10-03Benton, John B Jr PROPOSAL96Elwin Sharvill
1047Morrow X StockhamIndia2026-10-12Buckley Miller Wright QUALIFIED73Amy Elsner
1048Izzy S StockhamIndia2026-09-26Chanay, Jeffrey A Esq QUALIFIED0Xuxue Feng
1049Arvin I InouyeAustralia2026-09-24Commercial Press PROPOSAL30Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Francesco C StensethSpainStephen Shaw NEGOTIATION
Isabel H DoeIndiaOnyama Limba NEW
Greenwood K MacleadCanadaXuxue Feng UNQUALIFIED
Tony R CampainIndiaBernardo Dominic NEW
Kadeem Q RulapaughGermanyAnna Fali PROPOSAL
Jennifer P BriddickSpainAmy Elsner NEGOTIATION
Greenwood P GlickItalyXuxue Feng RENEWAL
Mujtaba K StockhamAustraliaStephen Shaw NEW
Chavez J PerinAustraliaAnna Fali RENEWAL
Maisha S GauchoGermanyAsiya Javayant RENEWAL
Greenwood E BriddickArgentinaBernardo Dominic NEGOTIATION
Adams Z ButtItalyAnna Fali PROPOSAL
James Z FlosiSpainOnyama Limba QUALIFIED
Jennifer K PoquetteUnited KingdomAnna Fali PROPOSAL
Ashley S MaletBrazilXuxue Feng NEW
Isabel B BologniaJapanIvan Magalhaes UNQUALIFIED
Maria N MaletBrazilOnyama Limba UNQUALIFIED
Izzy O StockhamRussiaOnyama Limba RENEWAL
Chavez T VocelkaCanadaStephen Shaw UNQUALIFIED
James J ShinkoItalyAnna Fali NEW
Juan W ButtFranceAsiya Javayant QUALIFIED
Isabel H RutaArgentinaBernardo Dominic UNQUALIFIED
Smith K FlosiAustraliaOnyama Limba UNQUALIFIED
Julie Y MorascaIndiaBernardo Dominic NEGOTIATION
Adams F GlickBrazilAsiya Javayant PROPOSAL
Cody L ChuiGermanyAnna Fali RENEWAL
David P ButtAustraliaOnyama Limba NEW
Murillo B IturbideFranceIvan Magalhaes PROPOSAL
Jones A MorascaRussiaElwin Sharvill NEW
Wickens E WieserGermanyAsiya Javayant NEGOTIATION
Silvio R MorascaGermanyXuxue Feng QUALIFIED
Costa T ButtCanadaXuxue Feng RENEWAL
Wickens Q OldroydBrazilElwin Sharvill PROPOSAL
James C WieserIndiaAmy Elsner PROPOSAL
Darci W RutaRussiaAmy Elsner QUALIFIED
Jones R SaylorsJapanXuxue Feng UNQUALIFIED
Jefferson B ShinkoSpainAsiya Javayant NEW
Jefferson B ChuiIndiaAnna Fali NEGOTIATION
Darci R ShinkoUnited KingdomIoni Bowcher PROPOSAL
Mujtaba C FlosiFranceXuxue Feng PROPOSAL
Isabel F MarrierArgentinaElwin Sharvill RENEWAL
Juan R IturbideFranceBernardo Dominic QUALIFIED
Leon N StensethFranceAmy Elsner NEGOTIATION
Munro R KuskoIndiaIoni Bowcher NEGOTIATION
Stacey K GlickAustraliaStephen Shaw NEW
Izzy V CaldareraFranceXuxue Feng PROPOSAL
Stacey U RimGermanyAsiya Javayant NEW
Alejandro X PerinUnited KingdomOnyama Limba NEGOTIATION
Misaki S RoysterAustraliaAsiya Javayant NEGOTIATION
Rodrigues F FlosiJapanOnyama Limba PROPOSAL
Frozen Columns
Name
Ivar T Albares
Aditya U Tollner
Jennifer R Chui
Greenwood B Darakjy
Leja E Foller
Ivar J Glick
Jeanfrancois S Paprocki
Isabel C Vocelka
Smith R Schemmer
Smith A Wieser
Johnson M Gaucho
Clifford L Royster
Murillo Z Marrier
Nicolas H Caldarera
Emily X Chui
Jeanfrancois S Maclead
Cody S Marrier
Clifford O Albares
Francesco L Chui
Aika Z Bowley
Wickens G Venere
Sinclair U Darakjy
Jefferson S Marrier
Alejandro Z Vocelka
Costa L Nicka
Ashley G Gillian
Clifford E Whobrey
Ivar X Chui
Aika C Perin
Rodrigues A Venere
Jennifer G Ferencz
Chavez Z Schemmer
Stacey H Glick
Alejandro I Poquette
Cody P Stenseth
Aruna U Caudy
Julie G Garufi
Leon F Inouye
Munro C Flosi
Maisha Y Chui
Ricardo U Nicka
Maisha O Garufi
Leja Z Garufi
Smith X Darakjy
Arvin O Chui
Greenwood D Gillian
Aruna L Amigon
Claire H Albares
Greenwood W Oldroyd
Misaki E Royster
IdCountryDate
1000Russia2026-09-19
1001Canada2026-09-14
1002United Kingdom2026-10-01
1003Italy2026-09-13
1004Spain2026-10-08
1005Germany2026-10-07
1006Germany2026-09-14
1007Germany2026-09-16
1008Argentina2026-09-15
1009Germany2026-09-14
1010Japan2026-10-12
1011Spain2026-10-05
1012Spain2026-10-06
1013Australia2026-10-07
1014Spain2026-09-24
1015India2026-10-03
1016United Kingdom2026-10-07
1017Japan2026-10-05
1018Australia2026-10-04
1019Russia2026-09-20
1020India2026-09-15
1021United Kingdom2026-10-04
1022France2026-09-29
1023Spain2026-09-17
1024Australia2026-09-17
1025Spain2026-09-30
1026Argentina2026-09-16
1027France2026-09-17
1028Spain2026-10-08
1029Brazil2026-10-12
1030Spain2026-10-11
1031Canada2026-10-02
1032India2026-09-28
1033Russia2026-10-07
1034Russia2026-10-09
1035Japan2026-09-20
1036Germany2026-10-10
1037United Kingdom2026-09-20
1038France2026-09-17
1039Canada2026-09-30
1040Spain2026-09-21
1041Argentina2026-10-09
1042Australia2026-09-27
1043Japan2026-09-25
1044Japan2026-09-23
1045Germany2026-10-08
1046Italy2026-10-10
1047United Kingdom2026-10-01
1048France2026-10-04
1049India2026-09-21

On-Demand Data

NameIdCountryDate
Aditya J Garufi1000Spain2026-09-22
Leon M Waycott1001Argentina2026-10-06
Adams T Venere1002Argentina2026-09-21
Chavez M Stenseth1003Russia2026-09-30
Izzy X Royster1004Brazil2026-09-16
Morrow I Doe1005Canada2026-10-08
Wickens G Rim1006Brazil2026-09-24
Leon I Rim1007Japan2026-10-11
Claire K Slusarski1008Spain2026-09-27
Jennifer B Rim1009Spain2026-09-23
Adams C Paprocki1010Japan2026-10-06
Octavia I Garufi1011Germany2026-09-13
Salvatore R Briddick1012Russia2026-09-17
Antonio W Morasca1013France2026-09-20
Greenwood Z Inouye1014Japan2026-09-22
James E Figeroa1015Russia2026-09-15
Sinclair J Rim1016Brazil2026-10-07
Alejandro X Briddick1017Italy2026-09-26
Deepesh P Perin1018Australia2026-09-14
Antonio L Briddick1019Australia2026-09-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha T SaylorsArgentinaIvan Magalhaes RENEWAL
Mujtaba Z StensethItalyAmy Elsner NEGOTIATION
James E StensethBrazilAnna Fali RENEWAL
Maisha N SergiJapanAnna Fali RENEWAL
Jennifer M MacleadSpainStephen Shaw QUALIFIED
Aditya P WhobreySpainAsiya Javayant QUALIFIED
Ivar Q IturbideSpainAsiya Javayant PROPOSAL
Chavez O CaudyArgentinaOnyama Limba NEW
Aruna G StockhamAustraliaXuxue Feng UNQUALIFIED
Wickens T FollerArgentinaAnna Fali RENEWAL
Izzy X MaletIndiaAsiya Javayant NEGOTIATION
Jennifer C ShinkoItalyOnyama Limba PROPOSAL
Jones M SlusarskiArgentinaAmy Elsner QUALIFIED
Ashley Y VocelkaBrazilBernardo Dominic NEGOTIATION
Costa V VocelkaItalyAnna Fali NEW
James B ChuiSpainIvan Magalhaes PROPOSAL
Deepesh W MarrierAustraliaIvan Magalhaes NEGOTIATION
Ricardo G NestleCanadaIvan Magalhaes UNQUALIFIED
Kaitlin G PerinJapanStephen Shaw RENEWAL
Alejandro W BowleySpainXuxue Feng UNQUALIFIED
Darci D VenereFranceAmy Elsner NEW
Nicolas X GlickGermanyIvan Magalhaes QUALIFIED
Isabel B DilliardUnited KingdomXuxue Feng UNQUALIFIED
Julie Z FollerSpainIvan Magalhaes QUALIFIED
Isabel F MaletBrazilBernardo Dominic NEW
Izzy B SlusarskiFranceXuxue Feng PROPOSAL
Julie E MacleadBrazilIvan Magalhaes QUALIFIED
Clifford N MarrierArgentinaIvan Magalhaes RENEWAL
Deepesh H FerenczCanadaOnyama Limba RENEWAL
Aditya B FlosiBrazilBernardo Dominic RENEWAL
Julie X KolmetzGermanyIvan Magalhaes QUALIFIED
Maisha L ShinkoRussiaOnyama Limba RENEWAL
Julie T SlusarskiJapanBernardo Dominic NEGOTIATION
Leon V FerenczBrazilAmy Elsner PROPOSAL
Costa N VocelkaItalyAsiya Javayant PROPOSAL
Silvio B PoquetteCanadaIvan Magalhaes NEGOTIATION
Greenwood I DarakjyJapanAnna Fali RENEWAL
Ricardo U SchemmerArgentinaAmy Elsner RENEWAL
Stacey K GillianAustraliaOnyama Limba NEGOTIATION
Ashley C CaldareraBrazilStephen Shaw UNQUALIFIED

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