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
Greenwood U MorascaFranceXuxue Feng RENEWAL
Deepesh N VocelkaAustraliaIoni Bowcher NEGOTIATION
Isabel M OstroskyBrazilBernardo Dominic UNQUALIFIED
Jennifer D VenereBrazilBernardo Dominic PROPOSAL
Alejandro A AmigonGermanyXuxue Feng RENEWAL
Wickens A TollnerCanadaAsiya Javayant UNQUALIFIED
James Q BriddickGermanyAsiya Javayant RENEWAL
Wickens G SchemmerJapanIoni Bowcher PROPOSAL
Antonio R RoysterBrazilXuxue Feng NEW
Costa X KuskoRussiaElwin Sharvill RENEWAL
Murillo H KuskoItalyIoni Bowcher NEW
Munro B VocelkaGermanyBernardo Dominic NEGOTIATION
Costa E PerinAustraliaIoni Bowcher NEGOTIATION
James A AmigonIndiaIoni Bowcher NEGOTIATION
Stacey P ChuiArgentinaBernardo Dominic UNQUALIFIED
Emily H OldroydArgentinaBernardo Dominic QUALIFIED
Wickens J MarrierRussiaAnna Fali QUALIFIED
Cody W GillianArgentinaBernardo Dominic NEGOTIATION
Jones F CaudyAustraliaStephen Shaw PROPOSAL
Claire F MorascaGermanyAnna Fali NEW
Chavez W SlusarskiItalyBernardo Dominic NEW
Alejandro M DarakjyItalyXuxue Feng NEGOTIATION
Antonio P VocelkaAustraliaIoni Bowcher QUALIFIED
Sinclair L OldroydArgentinaOnyama Limba RENEWAL
Jennifer P FlosiArgentinaStephen Shaw PROPOSAL
Juan W AlbaresFranceAsiya Javayant PROPOSAL
Adams J MaletGermanyOnyama Limba UNQUALIFIED
Maria U DilliardSpainOnyama Limba UNQUALIFIED
James L NickaUnited KingdomXuxue Feng RENEWAL
James H KolmetzFranceXuxue Feng NEGOTIATION
Maisha N AmigonFranceBernardo Dominic QUALIFIED
Alejandro H TollnerGermanyIoni Bowcher RENEWAL
Jennifer J GillianAustraliaElwin Sharvill QUALIFIED
Izzy F IturbideGermanyIoni Bowcher UNQUALIFIED
Johnson F ButtRussiaOnyama Limba NEGOTIATION
Jefferson Y RutaJapanElwin Sharvill PROPOSAL
Kadeem R SergiGermanyAmy Elsner NEGOTIATION
Murillo S AlbaresJapanAmy Elsner PROPOSAL
Tony F MacleadItalyAmy Elsner UNQUALIFIED
Sinclair T SlusarskiRussiaXuxue Feng RENEWAL
Chavez B SchemmerSpainIoni Bowcher PROPOSAL
Johnson O InouyeRussiaBernardo Dominic NEW
Jeanfrancois O CaldareraUnited KingdomIvan Magalhaes NEGOTIATION
James P VocelkaAustraliaOnyama Limba QUALIFIED
Mayumi H FerenczBrazilOnyama Limba NEW
Cody C IturbideAustraliaXuxue Feng UNQUALIFIED
Francesco L RulapaughBrazilBernardo Dominic NEW
Jeanfrancois Q StensethGermanyStephen Shaw NEW
Clifford W AlbaresRussiaAsiya Javayant RENEWAL
Emily R MaletItalyAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Kaitlin R ChuiItalyAsiya Javayant QUALIFIED
Kaitlin Z SergiCanadaIoni Bowcher QUALIFIED
Maisha S BriddickGermanyIoni Bowcher UNQUALIFIED
Izzy V ChuiFranceBernardo Dominic QUALIFIED
Smith N WaycottSpainOnyama Limba NEW
Jennifer N RoysterBrazilIoni Bowcher PROPOSAL
Clifford G FlosiUnited KingdomAsiya Javayant RENEWAL
Claire J ShinkoArgentinaIvan Magalhaes QUALIFIED
Cody G SaylorsGermanyBernardo Dominic QUALIFIED
Smith R SlusarskiJapanAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria U InouyeUnited Kingdom2026-09-04King, Christopher A Esq UNQUALIFIED73Stephen Shaw
1001Wickens E PaprockiArgentina2026-09-19Chemel, James L Cpa UNQUALIFIED89Asiya Javayant
1002Salvatore W MaletSpain2026-09-13Feiner Bros UNQUALIFIED38Bernardo Dominic
1003Munro F ShinkoJapan2026-09-05Rangoni Of Florence RENEWAL43Onyama Limba
1004Leon Z GauchoArgentina2026-09-13King, Christopher A Esq NEGOTIATION50Asiya Javayant
1005Kadeem R MaletRussia2026-09-06Feiner Bros PROPOSAL98Onyama Limba
1006Adams N StockhamItaly2026-09-03Commercial Press PROPOSAL38Bernardo Dominic
1007Greenwood M SlusarskiRussia2026-09-27Feltz Printing Service UNQUALIFIED40Amy Elsner
1008Mayumi H OldroydItaly2026-09-23Feiner Bros PROPOSAL78Bernardo Dominic
1009Emily P KuskoAustralia2026-09-12Rangoni Of Florence NEW61Ioni Bowcher
1010Leja Q RoysterGermany2026-09-04Feiner Bros UNQUALIFIED52Amy Elsner
1011Isabel I WieserBrazil2026-09-07Chapman, Ross E Esq QUALIFIED34Ioni Bowcher
1012Wickens V StockhamCanada2026-09-27Feiner Bros PROPOSAL65Anna Fali
1013Julie E NickaBrazil2026-09-09Buckley Miller Wright RENEWAL37Anna Fali
1014Tony B GlickJapan2026-09-09Feiner Bros UNQUALIFIED40Ivan Magalhaes
1015Mayumi A SchemmerBrazil2026-09-28Printing Dimensions QUALIFIED43Ioni Bowcher
1016Rodrigues V MaletIndia2026-09-04Truhlar And Truhlar Attys RENEWAL56Onyama Limba
1017Maria T BowleyIndia2026-09-07Chemel, James L Cpa RENEWAL50Bernardo Dominic
1018Ashley R NickaGermany2026-09-05Feltz Printing Service UNQUALIFIED66Onyama Limba
1019Smith I NickaGermany2026-09-23Morlong Associates PROPOSAL50Bernardo Dominic
1020Kaitlin Z FerenczAustralia2026-09-26Truhlar And Truhlar Attys QUALIFIED42Asiya Javayant
1021Maisha H BriddickJapan2026-09-18Feltz Printing Service QUALIFIED73Stephen Shaw
1022Adams Z FlosiUnited Kingdom2026-09-22Commercial Press RENEWAL86Stephen Shaw
1023Stacey O FigeroaJapan2026-09-16Morlong Associates RENEWAL97Stephen Shaw
1024Jennifer H PoquetteJapan2026-09-10Dorl, James J Esq UNQUALIFIED66Xuxue Feng
1025Murillo J RutaRussia2026-09-30Truhlar And Truhlar Attys UNQUALIFIED26Anna Fali
1026Darci C SergiIndia2026-09-23King, Christopher A Esq UNQUALIFIED39Bernardo Dominic
1027Stacey G DilliardFrance2026-09-29Feiner Bros NEGOTIATION12Ivan Magalhaes
1028Aika S PaprockiFrance2026-09-08Chapman, Ross E Esq UNQUALIFIED87Asiya Javayant
1029Greenwood W RulapaughGermany2026-09-03Chemel, James L Cpa QUALIFIED43Onyama Limba
1030Greenwood P SergiUnited Kingdom2026-09-23Rousseaux, Michael Esq UNQUALIFIED59Amy Elsner
1031Jennifer Y OldroydJapan2026-09-29Truhlar And Truhlar Attys UNQUALIFIED96Ivan Magalhaes
1032Leja P ChuiFrance2026-09-12Feltz Printing Service PROPOSAL2Bernardo Dominic
1033Greenwood M VocelkaRussia2026-09-23Chanay, Jeffrey A Esq PROPOSAL82Ioni Bowcher
1034Ivar F BowleyBrazil2026-09-10Chemel, James L Cpa QUALIFIED8Anna Fali
1035Aditya T FigeroaIndia2026-09-18Dorl, James J Esq NEW4Onyama Limba
1036Rodrigues Q VocelkaAustralia2026-09-20King, Christopher A Esq RENEWAL71Xuxue Feng
1037Chavez F NestleJapan2026-09-07Chemel, James L Cpa NEW24Elwin Sharvill
1038Morrow Z FigeroaGermany2026-09-04King, Christopher A Esq PROPOSAL80Elwin Sharvill
1039Julie T WaycottCanada2026-09-04Buckley Miller Wright UNQUALIFIED70Elwin Sharvill
1040Jefferson Q RulapaughFrance2026-09-07Chapman, Ross E Esq RENEWAL12Amy Elsner
1041Morrow Q MaletFrance2026-09-11Commercial Press UNQUALIFIED54Elwin Sharvill
1042Wickens A RutaFrance2026-09-07Feltz Printing Service UNQUALIFIED83Asiya Javayant
1043Darci F StockhamCanada2026-09-15Chanay, Jeffrey A Esq RENEWAL75Ivan Magalhaes
1044James K GillianJapan2026-09-05Benton, John B Jr NEW96Stephen Shaw
1045Kaitlin A AmigonRussia2026-09-05Benton, John B Jr NEGOTIATION7Amy Elsner
1046Darci Z MaletFrance2026-09-20Chapman, Ross E Esq RENEWAL16Amy Elsner
1047Isabel C BriddickItaly2026-10-02Rangoni Of Florence UNQUALIFIED31Ioni Bowcher
1048Salvatore T NickaJapan2026-09-27Chemel, James L Cpa NEW54Ioni Bowcher
1049Cody G CaudyArgentina2026-09-11King, Christopher A Esq NEGOTIATION87Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Izzy R RutaUnited KingdomStephen Shaw RENEWAL
Ashley H BologniaIndiaStephen Shaw NEW
Morrow K NickaCanadaAmy Elsner NEW
Claire S AmigonUnited KingdomAnna Fali UNQUALIFIED
Cody I SchemmerJapanStephen Shaw PROPOSAL
Faith Z NestleRussiaIvan Magalhaes PROPOSAL
Cody Z SaylorsRussiaBernardo Dominic PROPOSAL
Claire F WhobreyArgentinaStephen Shaw QUALIFIED
Sinclair Y IturbideBrazilStephen Shaw UNQUALIFIED
Jefferson C BriddickIndiaXuxue Feng RENEWAL
Leon E ChuiRussiaIvan Magalhaes NEGOTIATION
Cody F DarakjyFranceOnyama Limba UNQUALIFIED
Francesco Y RutaFranceAsiya Javayant NEGOTIATION
Claire B AmigonRussiaIvan Magalhaes QUALIFIED
Ivar E CaudyGermanyOnyama Limba RENEWAL
Kaitlin L RoysterAustraliaIoni Bowcher UNQUALIFIED
Sinclair R GarufiGermanyAnna Fali UNQUALIFIED
Deepesh N SaylorsGermanyAmy Elsner NEW
Sinclair G MaletBrazilOnyama Limba QUALIFIED
Silvio A ChuiFranceIvan Magalhaes NEW
Francesco N KolmetzFranceAmy Elsner NEW
Silvio V ButtBrazilAmy Elsner RENEWAL
Wickens M WieserItalyBernardo Dominic QUALIFIED
Alejandro H StockhamBrazilOnyama Limba RENEWAL
Sinclair V AmigonAustraliaIoni Bowcher PROPOSAL
Greenwood R ButtItalyIoni Bowcher UNQUALIFIED
Darci G NickaJapanBernardo Dominic PROPOSAL
Julie P SlusarskiIndiaIoni Bowcher PROPOSAL
Greenwood B BowleyRussiaBernardo Dominic UNQUALIFIED
Sinclair K KuskoFranceOnyama Limba NEGOTIATION
Wickens Q SchemmerIndiaElwin Sharvill NEGOTIATION
Antonio T KolmetzSpainAmy Elsner QUALIFIED
Ashley L RulapaughItalyIvan Magalhaes PROPOSAL
Leon H DarakjyBrazilIoni Bowcher PROPOSAL
Chavez P DoeIndiaIvan Magalhaes RENEWAL
Darci F MarrierArgentinaAnna Fali QUALIFIED
Mujtaba U NestleBrazilBernardo Dominic PROPOSAL
Leon L ButtArgentinaXuxue Feng PROPOSAL
James N FlosiJapanOnyama Limba RENEWAL
Leja Y PerinAustraliaElwin Sharvill RENEWAL
Adams G FerenczRussiaOnyama Limba UNQUALIFIED
Munro I KolmetzAustraliaOnyama Limba UNQUALIFIED
Murillo I FigeroaIndiaAmy Elsner NEW
Jeanfrancois I DarakjyJapanAmy Elsner RENEWAL
Aditya G DoeSpainAsiya Javayant NEGOTIATION
Costa C RimIndiaAmy Elsner NEW
Aruna R AmigonIndiaStephen Shaw UNQUALIFIED
Darci J GlickBrazilElwin Sharvill NEW
Greenwood Z VenereAustraliaBernardo Dominic NEGOTIATION
Faith J RimGermanyAsiya Javayant PROPOSAL
Frozen Columns
Name
Silvio I Poquette
Aruna I Whobrey
Costa C Saylors
Costa Y Chui
Darci Z Marrier
Jennifer R Nicka
Jefferson T Gillian
Nicolas B Oldroyd
Ashley V Oldroyd
David H Figeroa
Arvin L Poquette
Jennifer D Rulapaugh
Aika P Butt
Ricardo Z Bolognia
Isabel X Schemmer
Maisha I Tollner
Ashley X Stockham
Tony H Bolognia
Maria G Gaucho
Aika T Wieser
Antonio K Bowley
Mayumi G Doe
Aruna F Royster
Jefferson P Shinko
Maisha Q Flosi
Cody A Doe
Clifford H Caudy
Darci S Albares
Stacey S Marrier
Deepesh M Maclead
Rodrigues Q Nicka
Octavia U Gaucho
Munro B Vocelka
Adams S Royster
Mayumi Q Poquette
Juan Q Glick
Claire D Malet
Alejandro L Oldroyd
Leon L Saylors
Maisha W Maclead
Faith X Campain
Leja K Butt
Ashley N Vocelka
Adams M Rim
Jefferson Q Morasca
Alejandro P Perin
Darci M Foller
Jeanfrancois Q Paprocki
Tony W Campain
Ashley K Darakjy
IdCountryDate
1000Italy2026-09-06
1001Italy2026-09-13
1002Brazil2026-09-14
1003Argentina2026-09-30
1004India2026-09-12
1005Australia2026-09-10
1006Italy2026-09-03
1007Germany2026-09-10
1008United Kingdom2026-09-17
1009Spain2026-09-23
1010India2026-09-24
1011Germany2026-09-27
1012Argentina2026-09-21
1013Spain2026-09-21
1014Germany2026-09-06
1015United Kingdom2026-09-11
1016Australia2026-09-19
1017Italy2026-09-26
1018Italy2026-09-14
1019Italy2026-09-20
1020Australia2026-09-23
1021Brazil2026-09-13
1022Russia2026-09-28
1023India2026-09-29
1024Japan2026-09-22
1025India2026-09-09
1026Spain2026-09-07
1027Canada2026-09-05
1028Spain2026-09-05
1029India2026-09-25
1030Spain2026-09-16
1031Brazil2026-09-15
1032United Kingdom2026-09-15
1033Spain2026-09-17
1034United Kingdom2026-09-24
1035Canada2026-09-05
1036France2026-09-03
1037United Kingdom2026-09-11
1038France2026-09-09
1039Spain2026-09-10
1040United Kingdom2026-09-11
1041India2026-09-23
1042Japan2026-09-24
1043Brazil2026-09-07
1044Japan2026-09-30
1045India2026-09-10
1046Argentina2026-09-13
1047Germany2026-10-02
1048Russia2026-09-12
1049Australia2026-09-27

On-Demand Data

NameIdCountryDate
Clifford H Maclead1000India2026-09-19
Jones I Sergi1001Germany2026-09-30
Sinclair Y Vocelka1002Germany2026-09-21
Morrow I Oldroyd1003Brazil2026-09-30
Misaki K Figeroa1004India2026-09-04
Morrow Z Waycott1005France2026-09-22
Ashley O Oldroyd1006Russia2026-09-20
Juan X Figeroa1007Italy2026-09-20
Faith P Campain1008Japan2026-09-20
Leja C Doe1009Italy2026-09-17
Misaki J Perin1010Australia2026-09-15
Morrow L Rim1011India2026-09-03
Arvin S Rim1012Japan2026-09-21
Maisha K Garufi1013Canada2026-09-18
Antonio A Tollner1014Australia2026-09-17
Julie J Ferencz1015Australia2026-09-14
Nicolas C Vocelka1016Japan2026-09-09
Morrow P Flosi1017United Kingdom2026-09-18
Leja R Nestle1018Germany2026-09-25
Isabel D Nestle1019France2026-09-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith T AmigonGermanyAmy Elsner PROPOSAL
Kadeem B ButtArgentinaXuxue Feng RENEWAL
Jeanfrancois B WhobreySpainXuxue Feng QUALIFIED
David E FlosiRussiaElwin Sharvill PROPOSAL
Claire O AlbaresJapanAnna Fali RENEWAL
David A SlusarskiBrazilAsiya Javayant RENEWAL
Julie R FerenczGermanyIoni Bowcher QUALIFIED
Greenwood O GarufiFranceOnyama Limba NEW
Silvio H IturbideItalyXuxue Feng PROPOSAL
Faith B MaletGermanyXuxue Feng PROPOSAL
Stacey N KolmetzIndiaIoni Bowcher NEGOTIATION
Jones W ShinkoIndiaElwin Sharvill NEGOTIATION
Johnson M SergiCanadaStephen Shaw UNQUALIFIED
Leja S NickaBrazilOnyama Limba UNQUALIFIED
Munro K KolmetzRussiaElwin Sharvill PROPOSAL
Isabel V TollnerCanadaXuxue Feng NEGOTIATION
Jennifer E ChuiUnited KingdomIoni Bowcher RENEWAL
Ashley V CampainUnited KingdomXuxue Feng NEGOTIATION
Julie L MaletJapanOnyama Limba RENEWAL
Kadeem N TollnerRussiaAsiya Javayant RENEWAL
Leon I RimSpainXuxue Feng NEGOTIATION
Izzy Z MorascaItalyOnyama Limba QUALIFIED
Leja K CampainFranceElwin Sharvill NEGOTIATION
Leon I BologniaIndiaAsiya Javayant UNQUALIFIED
Mujtaba S WieserBrazilIoni Bowcher UNQUALIFIED
Clifford D NestleIndiaAsiya Javayant RENEWAL
Faith U AlbaresGermanyIoni Bowcher RENEWAL
Jones G SergiJapanXuxue Feng PROPOSAL
Chavez F StensethItalyBernardo Dominic UNQUALIFIED
Costa K MarrierCanadaAnna Fali NEGOTIATION
Jennifer X InouyeAustraliaOnyama Limba NEW
Aika Z MaletJapanAnna Fali QUALIFIED
Costa N SlusarskiSpainBernardo Dominic NEW
Wickens C NickaUnited KingdomOnyama Limba RENEWAL
Jennifer E SergiJapanXuxue Feng PROPOSAL
Jefferson N GlickArgentinaBernardo Dominic UNQUALIFIED
Smith O KolmetzUnited KingdomAmy Elsner NEGOTIATION
Murillo R SergiItalyStephen Shaw NEW
Smith B MacleadJapanBernardo Dominic UNQUALIFIED
David S StensethUnited KingdomAmy Elsner QUALIFIED

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