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
Morrow W CaldareraJapanAsiya Javayant QUALIFIED
Aruna B SaylorsArgentinaXuxue Feng PROPOSAL
Leon G FlosiSpainXuxue Feng UNQUALIFIED
Juan T CaldareraAustraliaIvan Magalhaes NEGOTIATION
Smith K ChuiArgentinaIoni Bowcher RENEWAL
Maria F MorascaBrazilBernardo Dominic PROPOSAL
Claire J WaycottRussiaIvan Magalhaes QUALIFIED
Octavia D AmigonBrazilAmy Elsner UNQUALIFIED
Claire Z RimJapanAsiya Javayant NEGOTIATION
Octavia W StensethJapanAnna Fali NEGOTIATION
Munro O KuskoBrazilAnna Fali NEW
Silvio F GlickItalyAsiya Javayant NEGOTIATION
Wickens N KuskoBrazilXuxue Feng PROPOSAL
Darci Y VocelkaBrazilIoni Bowcher PROPOSAL
Kaitlin H KolmetzAustraliaBernardo Dominic UNQUALIFIED
Claire D NestleGermanyAsiya Javayant PROPOSAL
Morrow J BriddickAustraliaStephen Shaw NEGOTIATION
Silvio B BriddickIndiaXuxue Feng RENEWAL
Jefferson F KuskoSpainElwin Sharvill RENEWAL
Ivar T FlosiSpainIvan Magalhaes NEGOTIATION
Aditya T BologniaSpainAnna Fali RENEWAL
Jones P FerenczFranceElwin Sharvill QUALIFIED
James R DarakjyCanadaStephen Shaw NEW
James J FlosiItalyOnyama Limba RENEWAL
Cody N SlusarskiSpainAsiya Javayant NEGOTIATION
Johnson T WaycottRussiaAsiya Javayant UNQUALIFIED
Stacey G CaudyItalyIoni Bowcher NEW
James A SaylorsRussiaIoni Bowcher QUALIFIED
Adams U MacleadAustraliaIvan Magalhaes PROPOSAL
Faith P FigeroaUnited KingdomElwin Sharvill RENEWAL
Jones Z ChuiGermanyOnyama Limba NEGOTIATION
Aditya C SlusarskiSpainIvan Magalhaes QUALIFIED
Emily I AmigonFranceAnna Fali QUALIFIED
Isabel S OstroskyIndiaStephen Shaw NEW
Faith A MorascaBrazilXuxue Feng UNQUALIFIED
Julie M WaycottGermanyAnna Fali NEGOTIATION
Salvatore K AlbaresSpainIoni Bowcher NEGOTIATION
Arvin T SchemmerUnited KingdomAsiya Javayant UNQUALIFIED
Mujtaba Q CaldareraJapanOnyama Limba PROPOSAL
Murillo O OldroydUnited KingdomIoni Bowcher NEW
Cody F PerinFranceOnyama Limba QUALIFIED
Ricardo T OldroydRussiaIoni Bowcher NEGOTIATION
Aruna P BowleySpainXuxue Feng RENEWAL
Misaki F MorascaJapanBernardo Dominic RENEWAL
Kaitlin M MacleadItalyAnna Fali NEW
Ricardo F SchemmerRussiaXuxue Feng RENEWAL
Faith K ShinkoArgentinaStephen Shaw UNQUALIFIED
Juan Z BologniaJapanIoni Bowcher NEGOTIATION
Maria G WhobreyGermanyIvan Magalhaes RENEWAL
Stacey U AmigonCanadaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jennifer C GlickCanadaAsiya Javayant NEW
Jennifer Q ShinkoFranceElwin Sharvill UNQUALIFIED
Aditya K FlosiGermanyElwin Sharvill PROPOSAL
Morrow K IturbideRussiaOnyama Limba RENEWAL
Aruna Q ShinkoItalyAnna Fali NEW
Greenwood B KuskoSpainAnna Fali NEGOTIATION
Aika K MaletBrazilXuxue Feng RENEWAL
Alejandro W DoeUnited KingdomIoni Bowcher RENEWAL
Cody F SergiItalyIvan Magalhaes NEW
Aruna Z MarrierUnited KingdomIvan Magalhaes NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio N MarrierArgentina2026-10-09Commercial Press NEW9Ivan Magalhaes
1001Clifford P TollnerArgentina2026-10-08Truhlar And Truhlar Attys RENEWAL55Onyama Limba
1002Chavez C TollnerIndia2026-09-26Buckley Miller Wright UNQUALIFIED58Ivan Magalhaes
1003Stacey F MorascaSpain2026-10-01Morlong Associates UNQUALIFIED95Xuxue Feng
1004Maisha G MaletRussia2026-10-06Benton, John B Jr PROPOSAL92Anna Fali
1005Tony M SergiFrance2026-09-29Printing Dimensions QUALIFIED93Ioni Bowcher
1006Alejandro V FerenczIndia2026-10-03Feltz Printing Service PROPOSAL53Bernardo Dominic
1007Francesco G GillianIndia2026-10-08Feiner Bros NEW28Ioni Bowcher
1008Jennifer U RulapaughCanada2026-10-10Chapman, Ross E Esq UNQUALIFIED81Xuxue Feng
1009Jennifer E BriddickIndia2026-09-23King, Christopher A Esq NEGOTIATION60Bernardo Dominic
1010Ricardo S FigeroaAustralia2026-10-03Commercial Press UNQUALIFIED41Elwin Sharvill
1011Maisha J WaycottSpain2026-10-05Rangoni Of Florence PROPOSAL73Bernardo Dominic
1012Emily R PaprockiItaly2026-09-21Chemel, James L Cpa NEGOTIATION71Xuxue Feng
1013Darci M TollnerRussia2026-10-03Commercial Press PROPOSAL24Xuxue Feng
1014Jennifer R DoeUnited Kingdom2026-10-12Feltz Printing Service NEW85Amy Elsner
1015Cody D KuskoAustralia2026-10-10Chemel, James L Cpa PROPOSAL71Stephen Shaw
1016Morrow E RutaRussia2026-10-01Buckley Miller Wright UNQUALIFIED93Stephen Shaw
1017Kaitlin E GarufiFrance2026-09-18Chanay, Jeffrey A Esq RENEWAL64Onyama Limba
1018Murillo P MorascaItaly2026-09-17Feltz Printing Service PROPOSAL76Anna Fali
1019Julie Q PoquetteAustralia2026-10-07Rangoni Of Florence QUALIFIED68Anna Fali
1020Misaki M AlbaresGermany2026-09-27Morlong Associates QUALIFIED31Bernardo Dominic
1021Chavez Y VocelkaBrazil2026-10-15Morlong Associates NEGOTIATION37Ivan Magalhaes
1022James B GarufiAustralia2026-10-01Morlong Associates PROPOSAL49Onyama Limba
1023Smith K WaycottUnited Kingdom2026-10-01King, Christopher A Esq RENEWAL35Stephen Shaw
1024Costa Z RimArgentina2026-10-01Dorl, James J Esq NEW90Ioni Bowcher
1025Arvin S ButtUnited Kingdom2026-09-18Printing Dimensions RENEWAL23Elwin Sharvill
1026Clifford X NestleAustralia2026-10-15Printing Dimensions QUALIFIED72Stephen Shaw
1027Nicolas B ButtSpain2026-09-27Rousseaux, Michael Esq QUALIFIED67Xuxue Feng
1028Nicolas P AmigonGermany2026-09-22Chemel, James L Cpa RENEWAL81Onyama Limba
1029Aditya Z FollerItaly2026-09-25Truhlar And Truhlar Attys PROPOSAL13Onyama Limba
1030Stacey Y SergiJapan2026-10-06Rousseaux, Michael Esq RENEWAL21Ivan Magalhaes
1031Murillo E KolmetzRussia2026-09-29Chapman, Ross E Esq RENEWAL59Asiya Javayant
1032Mayumi D RoysterCanada2026-09-29Rangoni Of Florence RENEWAL13Xuxue Feng
1033Mujtaba H DoeCanada2026-10-16Chapman, Ross E Esq QUALIFIED83Amy Elsner
1034Aditya Y FigeroaCanada2026-09-27Benton, John B Jr NEGOTIATION55Onyama Limba
1035Rodrigues H VenereArgentina2026-09-19Commercial Press RENEWAL38Amy Elsner
1036Mayumi N OstroskyRussia2026-10-14Chemel, James L Cpa PROPOSAL99Xuxue Feng
1037Alejandro J FigeroaSpain2026-10-06Chanay, Jeffrey A Esq UNQUALIFIED76Onyama Limba
1038Munro A TollnerIndia2026-09-30Chemel, James L Cpa RENEWAL49Bernardo Dominic
1039Jefferson S DarakjyItaly2026-09-30Chanay, Jeffrey A Esq NEW26Anna Fali
1040Ashley J MaletGermany2026-10-16Printing Dimensions RENEWAL6Ivan Magalhaes
1041Greenwood G CampainItaly2026-10-14Chemel, James L Cpa QUALIFIED59Ivan Magalhaes
1042Sinclair N SaylorsBrazil2026-10-03Rousseaux, Michael Esq QUALIFIED64Elwin Sharvill
1043Emily J MorascaSpain2026-10-08Feiner Bros PROPOSAL17Asiya Javayant
1044Munro V BologniaGermany2026-09-26Chapman, Ross E Esq NEGOTIATION69Asiya Javayant
1045Stacey L BologniaJapan2026-09-29Buckley Miller Wright NEGOTIATION89Ioni Bowcher
1046Mujtaba X RulapaughGermany2026-10-16King, Christopher A Esq NEGOTIATION21Ioni Bowcher
1047Ivar F StockhamUnited Kingdom2026-10-08Printing Dimensions RENEWAL27Asiya Javayant
1048Isabel C ShinkoFrance2026-10-06Morlong Associates RENEWAL66Amy Elsner
1049Ricardo Z SaylorsIndia2026-09-18Chapman, Ross E Esq UNQUALIFIED12Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Tony F BriddickUnited KingdomOnyama Limba RENEWAL
Leja P GauchoSpainXuxue Feng UNQUALIFIED
Rodrigues I AmigonUnited KingdomBernardo Dominic NEW
Rodrigues W StockhamItalyIoni Bowcher PROPOSAL
Munro M FollerBrazilBernardo Dominic PROPOSAL
Nicolas W TollnerIndiaBernardo Dominic PROPOSAL
Adams E VocelkaSpainXuxue Feng UNQUALIFIED
Leja E ChuiBrazilXuxue Feng NEGOTIATION
Chavez U PerinBrazilElwin Sharvill UNQUALIFIED
Silvio Q GauchoBrazilAsiya Javayant NEGOTIATION
Ashley P BriddickRussiaAsiya Javayant NEGOTIATION
Silvio W ShinkoIndiaAsiya Javayant RENEWAL
Ivar H DilliardSpainIoni Bowcher NEW
Aika B PoquetteAustraliaAnna Fali NEW
Nicolas R KuskoFranceIoni Bowcher NEGOTIATION
Clifford E KolmetzFranceIvan Magalhaes QUALIFIED
Munro G NestleGermanyBernardo Dominic PROPOSAL
Jefferson S InouyeBrazilAnna Fali PROPOSAL
Kaitlin E FigeroaIndiaOnyama Limba RENEWAL
Stacey Q FlosiFranceElwin Sharvill UNQUALIFIED
Faith M ChuiJapanBernardo Dominic PROPOSAL
Darci M StensethJapanAsiya Javayant NEGOTIATION
Munro G MacleadJapanIvan Magalhaes NEW
Faith U AmigonUnited KingdomAmy Elsner NEGOTIATION
Darci E FollerAustraliaOnyama Limba RENEWAL
Isabel J OstroskyFranceOnyama Limba NEGOTIATION
Juan F StensethArgentinaStephen Shaw NEGOTIATION
Faith V MaletRussiaAnna Fali NEGOTIATION
Mayumi P WhobreyUnited KingdomStephen Shaw PROPOSAL
Deepesh E GillianFranceXuxue Feng PROPOSAL
Murillo R DoeItalyIvan Magalhaes QUALIFIED
Jennifer X CaudyUnited KingdomStephen Shaw PROPOSAL
Kaitlin D DilliardBrazilAmy Elsner QUALIFIED
Murillo E FigeroaIndiaElwin Sharvill UNQUALIFIED
Costa N VenereUnited KingdomElwin Sharvill PROPOSAL
Nicolas Q AmigonUnited KingdomIvan Magalhaes UNQUALIFIED
Maisha N KuskoItalyAmy Elsner NEW
Ashley P FollerFranceIvan Magalhaes NEW
Adams W RulapaughRussiaIoni Bowcher QUALIFIED
Jones E RoysterRussiaAmy Elsner NEW
Izzy N RimItalyIoni Bowcher NEGOTIATION
Aruna Y GillianAustraliaAsiya Javayant NEW
Julie N BriddickIndiaAmy Elsner RENEWAL
Izzy W AmigonBrazilXuxue Feng NEW
Misaki C RutaUnited KingdomElwin Sharvill NEW
Misaki U RutaUnited KingdomAnna Fali NEW
Aika F StensethSpainAsiya Javayant QUALIFIED
Alejandro B VocelkaCanadaXuxue Feng RENEWAL
Francesco K RulapaughIndiaIvan Magalhaes PROPOSAL
Darci D AmigonUnited KingdomElwin Sharvill NEGOTIATION
Frozen Columns
Name
Johnson V Garufi
Kaitlin S Stenseth
Costa Z Caudy
Emily N Slusarski
Rodrigues R Waycott
Faith Y Amigon
Antonio E Bolognia
Tony L Malet
Stacey U Gillian
Jefferson I Foller
Isabel C Malet
Sinclair S Albares
Wickens H Tollner
Costa Y Caudy
Tony F Inouye
Munro K Doe
David S Bowley
Aditya S Malet
Francesco N Ostrosky
Antonio A Waycott
Ivar H Ruta
Deepesh E Venere
Munro Z Iturbide
James E Perin
Ivar P Oldroyd
Nicolas N Nicka
James L Rulapaugh
Ivar S Dilliard
Maria I Butt
Ricardo W Malet
Juan S Paprocki
Darci N Waycott
Leon Q Flosi
Isabel T Foller
Izzy U Morasca
Jeanfrancois Y Flosi
Sinclair D Vocelka
Sinclair I Kolmetz
Ivar B Nestle
Alejandro I Darakjy
Maria L Amigon
Costa S Ruta
Aditya G Bolognia
Leja N Iturbide
Stacey K Poquette
Greenwood K Darakjy
Mayumi H Saylors
Silvio H Ostrosky
Emily D Nestle
Sinclair T Ostrosky
IdCountryDate
1000Italy2026-10-02
1001Spain2026-09-30
1002Spain2026-09-29
1003Canada2026-09-29
1004Canada2026-10-02
1005India2026-09-19
1006Brazil2026-10-10
1007Italy2026-10-10
1008France2026-09-29
1009Japan2026-09-29
1010Russia2026-10-08
1011Brazil2026-10-10
1012India2026-10-10
1013Spain2026-09-26
1014Germany2026-10-02
1015Japan2026-09-20
1016Canada2026-10-14
1017India2026-10-09
1018Russia2026-09-18
1019Spain2026-09-19
1020India2026-09-26
1021Argentina2026-09-20
1022United Kingdom2026-09-23
1023Argentina2026-10-11
1024Spain2026-09-26
1025Japan2026-09-18
1026Italy2026-09-17
1027Australia2026-09-25
1028Canada2026-10-05
1029Brazil2026-09-26
1030Brazil2026-10-02
1031India2026-10-02
1032Argentina2026-09-22
1033France2026-10-16
1034Russia2026-10-10
1035France2026-10-02
1036France2026-09-18
1037Canada2026-10-10
1038Canada2026-10-12
1039Brazil2026-09-18
1040India2026-09-19
1041Spain2026-10-06
1042Germany2026-09-30
1043Australia2026-09-21
1044Russia2026-10-11
1045Italy2026-09-20
1046Argentina2026-09-27
1047Brazil2026-10-04
1048Canada2026-09-30
1049France2026-10-08

On-Demand Data

NameIdCountryDate
Juan I Dilliard1000India2026-10-07
Nicolas B Slusarski1001India2026-10-14
Emily R Iturbide1002India2026-10-16
Francesco R Wieser1003Canada2026-09-20
Mayumi D Royster1004Argentina2026-09-26
Ashley A Dilliard1005Japan2026-10-03
Leja E Albares1006Russia2026-10-12
Sinclair S Royster1007Italy2026-10-11
Munro A Dilliard1008Japan2026-10-06
Munro M Gillian1009Germany2026-09-19
Salvatore S Inouye1010Spain2026-09-29
Alejandro Q Rim1011Japan2026-10-04
Deepesh S Campain1012India2026-10-14
Darci A Gaucho1013United Kingdom2026-10-01
Munro U Shinko1014Australia2026-10-07
Jennifer J Briddick1015Russia2026-09-29
Smith E Schemmer1016India2026-10-04
Jones G Ruta1017India2026-09-17
Costa C Maclead1018Canada2026-09-29
Sinclair A Ferencz1019Australia2026-10-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo W InouyeGermanyBernardo Dominic NEGOTIATION
Aika E RimJapanAmy Elsner UNQUALIFIED
James S FlosiJapanXuxue Feng QUALIFIED
Ivar F VocelkaIndiaAnna Fali RENEWAL
Deepesh X OldroydFranceElwin Sharvill NEGOTIATION
Deepesh I MacleadGermanyIvan Magalhaes QUALIFIED
Costa M MarrierBrazilElwin Sharvill QUALIFIED
Murillo H WieserItalyBernardo Dominic RENEWAL
Antonio N AmigonAustraliaBernardo Dominic UNQUALIFIED
Aditya H BologniaIndiaBernardo Dominic RENEWAL
Izzy P TollnerGermanyAsiya Javayant UNQUALIFIED
Tony Y BowleySpainElwin Sharvill QUALIFIED
Salvatore X SaylorsGermanyAsiya Javayant NEGOTIATION
Ricardo O StensethIndiaAnna Fali QUALIFIED
Sinclair L DoeAustraliaAsiya Javayant QUALIFIED
Morrow S PoquetteGermanyBernardo Dominic RENEWAL
Smith S NickaFranceAsiya Javayant RENEWAL
Aika J GauchoArgentinaAnna Fali UNQUALIFIED
Leon J BologniaBrazilIvan Magalhaes NEGOTIATION
Kadeem C MarrierArgentinaAnna Fali NEGOTIATION
David M ChuiJapanOnyama Limba UNQUALIFIED
Deepesh P TollnerJapanElwin Sharvill QUALIFIED
Sinclair W MarrierFranceAmy Elsner UNQUALIFIED
Claire Z SchemmerFranceBernardo Dominic PROPOSAL
Silvio F FollerFranceOnyama Limba QUALIFIED
Salvatore W SchemmerAustraliaOnyama Limba PROPOSAL
Ivar L MacleadAustraliaAsiya Javayant RENEWAL
Sinclair W PerinItalyIoni Bowcher RENEWAL
Claire E IturbideUnited KingdomOnyama Limba UNQUALIFIED
Silvio T VocelkaGermanyElwin Sharvill RENEWAL
Claire D AlbaresCanadaAnna Fali QUALIFIED
Salvatore M CampainRussiaAsiya Javayant NEGOTIATION
Mayumi R TollnerRussiaElwin Sharvill NEGOTIATION
Cody S StensethAustraliaAmy Elsner RENEWAL
Jeanfrancois H KuskoRussiaStephen Shaw RENEWAL
Nicolas T RimFranceBernardo Dominic NEGOTIATION
Sinclair Q MorascaCanadaElwin Sharvill QUALIFIED
Ricardo D VocelkaItalyBernardo Dominic PROPOSAL
Munro E WaycottCanadaAsiya Javayant UNQUALIFIED
Izzy W RutaBrazilStephen Shaw 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>