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
James N RulapaughArgentinaIvan Magalhaes UNQUALIFIED
Munro L PaprockiUnited KingdomAsiya Javayant RENEWAL
Ashley W SergiItalyIvan Magalhaes NEW
Morrow J KuskoCanadaAnna Fali PROPOSAL
Costa F CampainRussiaIvan Magalhaes NEW
Octavia L PaprockiBrazilOnyama Limba PROPOSAL
Johnson Q RoysterItalyElwin Sharvill PROPOSAL
Sinclair R CaudyFranceAsiya Javayant UNQUALIFIED
Francesco E MarrierSpainOnyama Limba RENEWAL
Adams N DarakjyBrazilIoni Bowcher NEGOTIATION
Juan R CampainGermanyAnna Fali QUALIFIED
Kadeem T GillianArgentinaBernardo Dominic QUALIFIED
Deepesh P BowleyJapanAmy Elsner NEGOTIATION
Chavez I IturbideGermanyAmy Elsner RENEWAL
Emily J PerinRussiaIvan Magalhaes QUALIFIED
Aditya Y WaycottIndiaBernardo Dominic PROPOSAL
Wickens C ShinkoAustraliaBernardo Dominic NEGOTIATION
Leja Y StensethBrazilAsiya Javayant NEGOTIATION
Munro H CaudyBrazilXuxue Feng UNQUALIFIED
James R VocelkaAustraliaStephen Shaw RENEWAL
Jennifer D OldroydGermanyXuxue Feng PROPOSAL
Rodrigues Z MarrierFranceElwin Sharvill UNQUALIFIED
Silvio Y RimFranceIvan Magalhaes PROPOSAL
Leon U CaldareraSpainAmy Elsner RENEWAL
Jennifer V CaudyCanadaIoni Bowcher UNQUALIFIED
Leja D MarrierUnited KingdomStephen Shaw RENEWAL
Smith K StockhamGermanyOnyama Limba QUALIFIED
Leja S SaylorsArgentinaElwin Sharvill NEW
Murillo J GauchoAustraliaOnyama Limba NEGOTIATION
Johnson G InouyeGermanyOnyama Limba NEGOTIATION
Octavia I RimJapanAmy Elsner NEW
Munro G DoeSpainIvan Magalhaes QUALIFIED
Maisha E TollnerIndiaStephen Shaw QUALIFIED
Johnson T KolmetzGermanyIoni Bowcher UNQUALIFIED
Clifford R MaletRussiaElwin Sharvill NEGOTIATION
Jefferson C VocelkaAustraliaAnna Fali NEGOTIATION
Jeanfrancois O DilliardFranceXuxue Feng QUALIFIED
Isabel G MacleadIndiaAmy Elsner RENEWAL
Misaki S GillianArgentinaBernardo Dominic RENEWAL
Costa O DilliardRussiaBernardo Dominic RENEWAL
Munro L ChuiItalyOnyama Limba UNQUALIFIED
Aditya Y RulapaughBrazilAsiya Javayant NEW
Wickens P FollerAustraliaBernardo Dominic PROPOSAL
Chavez Y MarrierAustraliaOnyama Limba RENEWAL
Adams P PaprockiRussiaAmy Elsner UNQUALIFIED
Stacey D RoysterItalyAsiya Javayant UNQUALIFIED
Adams E WhobreyBrazilAmy Elsner QUALIFIED
Chavez W KuskoCanadaElwin Sharvill NEGOTIATION
Francesco H OstroskyFranceAmy Elsner NEW
Morrow K PoquetteAustraliaBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Stacey Q SergiJapanIvan Magalhaes PROPOSAL
Silvio J AlbaresBrazilIvan Magalhaes QUALIFIED
Alejandro N ShinkoFranceElwin Sharvill NEGOTIATION
Isabel S WieserJapanOnyama Limba QUALIFIED
Cody O PerinIndiaIoni Bowcher NEGOTIATION
Darci O CampainArgentinaAnna Fali UNQUALIFIED
Mujtaba O ShinkoRussiaIoni Bowcher NEGOTIATION
Maisha U RutaCanadaAmy Elsner UNQUALIFIED
Costa Y SergiAustraliaAnna Fali RENEWAL
Izzy X FollerJapanAsiya Javayant UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley S DoeIndia2026-09-25Dorl, James J Esq NEGOTIATION35Stephen Shaw
1001Morrow A MarrierGermany2026-09-15Rousseaux, Michael Esq RENEWAL70Ioni Bowcher
1002Arvin T CaudyFrance2026-09-10Printing Dimensions NEGOTIATION98Bernardo Dominic
1003Johnson O MaletGermany2026-09-15Rousseaux, Michael Esq QUALIFIED3Asiya Javayant
1004Izzy E GarufiAustralia2026-09-06Chanay, Jeffrey A Esq NEW82Amy Elsner
1005Claire V MorascaCanada2026-10-03Commercial Press PROPOSAL7Xuxue Feng
1006Emily F SlusarskiBrazil2026-09-21Feiner Bros NEGOTIATION41Stephen Shaw
1007Leja Y FerenczItaly2026-09-30King, Christopher A Esq NEGOTIATION55Elwin Sharvill
1008Ricardo D RimUnited Kingdom2026-10-02Chanay, Jeffrey A Esq RENEWAL15Ivan Magalhaes
1009Costa F BriddickCanada2026-09-27King, Christopher A Esq QUALIFIED86Elwin Sharvill
1010Cody R DarakjyBrazil2026-09-19Dorl, James J Esq NEGOTIATION46Amy Elsner
1011Chavez J StensethGermany2026-09-16Chapman, Ross E Esq RENEWAL31Asiya Javayant
1012Rodrigues C DoeArgentina2026-09-25Morlong Associates NEW29Anna Fali
1013Ricardo Y BriddickUnited Kingdom2026-09-08Morlong Associates NEW99Xuxue Feng
1014Kaitlin D BologniaUnited Kingdom2026-09-13Buckley Miller Wright RENEWAL99Bernardo Dominic
1015Wickens L WieserFrance2026-09-28Rangoni Of Florence NEGOTIATION7Stephen Shaw
1016Kadeem E WhobreySpain2026-09-21Feltz Printing Service RENEWAL44Amy Elsner
1017Maria J RulapaughItaly2026-09-13Commercial Press UNQUALIFIED92Amy Elsner
1018Stacey H TollnerItaly2026-10-02Buckley Miller Wright RENEWAL17Ioni Bowcher
1019Adams N StockhamAustralia2026-09-12Rousseaux, Michael Esq UNQUALIFIED37Elwin Sharvill
1020Munro S MaletJapan2026-09-04Commercial Press PROPOSAL87Anna Fali
1021Claire A VocelkaCanada2026-09-30Chemel, James L Cpa NEGOTIATION50Stephen Shaw
1022Isabel H ChuiAustralia2026-09-05Feltz Printing Service NEGOTIATION57Ivan Magalhaes
1023Johnson T SchemmerUnited Kingdom2026-09-20Rousseaux, Michael Esq NEGOTIATION11Onyama Limba
1024Clifford C GarufiCanada2026-09-09Chanay, Jeffrey A Esq UNQUALIFIED27Ivan Magalhaes
1025Chavez J IturbideRussia2026-09-13Chanay, Jeffrey A Esq RENEWAL16Amy Elsner
1026Ashley H InouyeBrazil2026-10-02Chapman, Ross E Esq UNQUALIFIED18Amy Elsner
1027Stacey Q NestleGermany2026-09-09Chanay, Jeffrey A Esq PROPOSAL43Elwin Sharvill
1028Juan O BriddickBrazil2026-09-11Feiner Bros PROPOSAL71Ivan Magalhaes
1029Morrow A GauchoBrazil2026-09-21Printing Dimensions QUALIFIED30Ioni Bowcher
1030Antonio O GillianSpain2026-10-01Rousseaux, Michael Esq PROPOSAL88Ivan Magalhaes
1031Alejandro F StockhamGermany2026-09-14Truhlar And Truhlar Attys NEW50Onyama Limba
1032Arvin Y ShinkoIndia2026-10-03Buckley Miller Wright RENEWAL33Xuxue Feng
1033Antonio I SaylorsCanada2026-09-22Rousseaux, Michael Esq UNQUALIFIED19Bernardo Dominic
1034Johnson X SergiFrance2026-09-23Dorl, James J Esq PROPOSAL48Xuxue Feng
1035Jefferson K WieserItaly2026-09-16Buckley Miller Wright RENEWAL1Xuxue Feng
1036Claire I DoeItaly2026-09-24Truhlar And Truhlar Attys NEW6Ioni Bowcher
1037Julie X FerenczFrance2026-09-12Chanay, Jeffrey A Esq RENEWAL87Elwin Sharvill
1038Isabel N PaprockiArgentina2026-09-14Chanay, Jeffrey A Esq NEGOTIATION21Elwin Sharvill
1039Costa P CaldareraFrance2026-09-23Feiner Bros RENEWAL76Stephen Shaw
1040Jeanfrancois Q BriddickBrazil2026-09-05Chapman, Ross E Esq NEW31Ioni Bowcher
1041Ricardo F ShinkoArgentina2026-09-14Dorl, James J Esq NEGOTIATION77Stephen Shaw
1042Ashley I SchemmerAustralia2026-09-17Rousseaux, Michael Esq NEGOTIATION49Amy Elsner
1043Chavez Z CaudyCanada2026-09-08Feltz Printing Service RENEWAL30Ivan Magalhaes
1044Cody X OstroskyIndia2026-09-07Chemel, James L Cpa UNQUALIFIED0Stephen Shaw
1045Jefferson U FerenczIndia2026-09-30Rousseaux, Michael Esq NEW63Stephen Shaw
1046Greenwood P SaylorsSpain2026-09-28Chemel, James L Cpa QUALIFIED68Asiya Javayant
1047Costa L DarakjyCanada2026-10-01Dorl, James J Esq RENEWAL7Bernardo Dominic
1048Claire N MacleadSpain2026-09-04Feltz Printing Service RENEWAL91Amy Elsner
1049Mujtaba C AmigonJapan2026-09-20Feiner Bros NEGOTIATION13Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Mayumi A ChuiItalyAnna Fali RENEWAL
Alejandro S RulapaughUnited KingdomIvan Magalhaes PROPOSAL
Darci Q InouyeArgentinaAmy Elsner PROPOSAL
Rodrigues U PerinJapanAnna Fali PROPOSAL
Smith M GlickSpainElwin Sharvill PROPOSAL
Ashley N PaprockiCanadaAmy Elsner PROPOSAL
Alejandro H VenereFranceAnna Fali QUALIFIED
Isabel B DilliardCanadaIvan Magalhaes PROPOSAL
Mujtaba V FigeroaJapanElwin Sharvill QUALIFIED
Alejandro E MaletFranceIvan Magalhaes PROPOSAL
Aika V KuskoRussiaAsiya Javayant NEGOTIATION
Faith N MorascaRussiaOnyama Limba PROPOSAL
Mayumi W StensethIndiaIvan Magalhaes QUALIFIED
Sinclair P AlbaresJapanAnna Fali RENEWAL
Rodrigues E TollnerFranceAnna Fali RENEWAL
Izzy L IturbideBrazilElwin Sharvill RENEWAL
Kaitlin W PaprockiUnited KingdomIoni Bowcher UNQUALIFIED
Izzy D ButtJapanBernardo Dominic UNQUALIFIED
Nicolas P CaldareraFranceOnyama Limba NEGOTIATION
Kaitlin O PoquetteAustraliaXuxue Feng UNQUALIFIED
Izzy B GillianIndiaAsiya Javayant UNQUALIFIED
Emily P VocelkaBrazilXuxue Feng NEGOTIATION
Misaki T DoeFranceElwin Sharvill NEGOTIATION
Clifford T ChuiCanadaAmy Elsner QUALIFIED
Stacey B DilliardCanadaIoni Bowcher UNQUALIFIED
Deepesh R StockhamItalyElwin Sharvill NEGOTIATION
Chavez X RoysterBrazilIvan Magalhaes NEW
Wickens A TollnerItalyAsiya Javayant NEW
Jeanfrancois O DoeItalyIoni Bowcher UNQUALIFIED
Munro N KuskoSpainBernardo Dominic PROPOSAL
Mayumi M MaletSpainBernardo Dominic UNQUALIFIED
Faith S MorascaAustraliaXuxue Feng RENEWAL
Alejandro V TollnerGermanyBernardo Dominic PROPOSAL
Darci A FollerFranceAsiya Javayant UNQUALIFIED
Kaitlin M FollerFranceOnyama Limba QUALIFIED
David S ButtUnited KingdomIvan Magalhaes QUALIFIED
Nicolas I ButtRussiaAsiya Javayant NEW
Munro L PoquetteSpainIoni Bowcher QUALIFIED
Misaki Y IturbideAustraliaElwin Sharvill RENEWAL
Jones E RulapaughBrazilBernardo Dominic PROPOSAL
Jeanfrancois W RimSpainIoni Bowcher UNQUALIFIED
Arvin Y RimAustraliaElwin Sharvill PROPOSAL
Francesco J BowleyIndiaXuxue Feng QUALIFIED
Jeanfrancois N ChuiJapanAnna Fali UNQUALIFIED
Wickens J InouyeJapanBernardo Dominic NEW
Greenwood K NestleAustraliaAsiya Javayant QUALIFIED
Isabel G GillianGermanyAmy Elsner UNQUALIFIED
Silvio E InouyeUnited KingdomAmy Elsner NEW
Isabel N InouyeFranceAnna Fali PROPOSAL
Sinclair U InouyeArgentinaBernardo Dominic PROPOSAL
Frozen Columns
Name
Misaki F Briddick
Adams L Venere
Jefferson G Ruta
Juan T Figeroa
Sinclair W Stockham
Wickens E Tollner
Aika K Flosi
Juan V Amigon
Smith W Tollner
Aditya D Ferencz
Ricardo B Shinko
Antonio E Waycott
Octavia H Saylors
Juan I Dilliard
Nicolas H Gillian
Alejandro M Butt
Misaki H Garufi
Jones V Nicka
Kadeem W Venere
Rodrigues R Paprocki
Octavia O Poquette
Stacey S Bowley
Misaki J Gillian
Adams S Waycott
Aika M Campain
James M Royster
Kaitlin S Malet
Aditya S Butt
Jeanfrancois S Campain
Faith D Caldarera
Greenwood R Kusko
Salvatore E Whobrey
Murillo Z Kolmetz
Cody H Paprocki
Darci V Kolmetz
Silvio N Dilliard
Claire W Stockham
Cody F Nestle
Silvio D Butt
Aruna O Gaucho
Francesco W Gillian
Aruna Q Foller
Greenwood V Kusko
Silvio I Foller
Costa W Shinko
Isabel R Saylors
James B Gillian
Ivar Q Darakjy
Ricardo B Flosi
Salvatore F Caudy
IdCountryDate
1000Canada2026-09-18
1001United Kingdom2026-10-02
1002Russia2026-09-19
1003United Kingdom2026-09-27
1004Italy2026-09-24
1005Spain2026-09-19
1006Argentina2026-09-21
1007Italy2026-10-01
1008Germany2026-09-10
1009India2026-10-02
1010Canada2026-09-24
1011Canada2026-09-23
1012Canada2026-09-23
1013Brazil2026-09-07
1014Russia2026-09-18
1015Brazil2026-09-15
1016United Kingdom2026-09-27
1017Japan2026-09-30
1018Italy2026-09-13
1019Italy2026-09-12
1020Germany2026-09-06
1021Spain2026-09-30
1022Germany2026-10-03
1023Brazil2026-09-05
1024Spain2026-09-22
1025Japan2026-09-23
1026Japan2026-09-21
1027Brazil2026-09-17
1028United Kingdom2026-09-17
1029Brazil2026-09-19
1030Australia2026-09-06
1031Spain2026-09-09
1032Spain2026-10-01
1033Russia2026-09-11
1034Germany2026-09-10
1035India2026-09-04
1036Brazil2026-09-09
1037France2026-09-11
1038Russia2026-09-17
1039Canada2026-09-06
1040Russia2026-10-02
1041United Kingdom2026-09-22
1042Spain2026-09-05
1043Argentina2026-09-07
1044United Kingdom2026-09-27
1045United Kingdom2026-09-23
1046France2026-09-12
1047Canada2026-09-12
1048Brazil2026-09-07
1049Italy2026-09-29

On-Demand Data

NameIdCountryDate
Tony V Royster1000Canada2026-10-03
Antonio D Flosi1001Canada2026-09-22
Francesco E Marrier1002Germany2026-09-10
Octavia O Iturbide1003Brazil2026-09-30
Izzy H Paprocki1004Australia2026-09-22
Jones F Kusko1005Brazil2026-09-16
Leon C Caudy1006Japan2026-09-16
Emily D Bowley1007Germany2026-09-28
Izzy F Kolmetz1008Brazil2026-09-05
Tony U Morasca1009France2026-09-18
Nicolas L Tollner1010France2026-09-20
Stacey C Rim1011United Kingdom2026-09-30
Clifford T Bolognia1012Russia2026-09-14
Julie P Wieser1013France2026-09-18
Tony W Rulapaugh1014Japan2026-09-12
Ivar R Caudy1015Italy2026-09-15
Octavia T Dilliard1016Germany2026-09-26
Morrow H Ruta1017Italy2026-09-19
Salvatore M Figeroa1018India2026-10-03
Salvatore C Gillian1019Canada2026-10-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio S KuskoJapanAnna Fali UNQUALIFIED
Greenwood H StensethGermanyAsiya Javayant NEW
Jefferson Y StensethArgentinaXuxue Feng UNQUALIFIED
Kadeem C SlusarskiRussiaIoni Bowcher QUALIFIED
Stacey O DoeUnited KingdomIvan Magalhaes UNQUALIFIED
Leja Z MaletUnited KingdomXuxue Feng UNQUALIFIED
Greenwood K WhobreyCanadaIoni Bowcher NEW
James M SaylorsUnited KingdomIoni Bowcher NEGOTIATION
Jones G VenereJapanStephen Shaw RENEWAL
Francesco J NickaRussiaBernardo Dominic PROPOSAL
Johnson A StensethRussiaAnna Fali RENEWAL
Tony R SchemmerBrazilIvan Magalhaes RENEWAL
Sinclair J RoysterBrazilElwin Sharvill NEGOTIATION
Leon J AlbaresJapanAsiya Javayant NEW
Clifford V MaletGermanyIoni Bowcher RENEWAL
Maria G SchemmerJapanAnna Fali UNQUALIFIED
Julie O MacleadCanadaXuxue Feng RENEWAL
Chavez P GauchoCanadaIvan Magalhaes NEGOTIATION
Costa E ChuiBrazilAsiya Javayant PROPOSAL
Arvin S FerenczCanadaOnyama Limba QUALIFIED
Ashley F StensethItalyBernardo Dominic QUALIFIED
Jeanfrancois L PaprockiCanadaStephen Shaw PROPOSAL
Smith B ChuiJapanAsiya Javayant UNQUALIFIED
Nicolas Q SlusarskiCanadaAnna Fali UNQUALIFIED
Johnson V SergiArgentinaXuxue Feng PROPOSAL
Julie C AmigonRussiaIvan Magalhaes UNQUALIFIED
Kaitlin C FollerBrazilIvan Magalhaes NEGOTIATION
Maisha Q SchemmerRussiaAmy Elsner RENEWAL
Jennifer Q DarakjyBrazilAmy Elsner PROPOSAL
Misaki F ShinkoIndiaBernardo Dominic UNQUALIFIED
Costa D GillianAustraliaIoni Bowcher QUALIFIED
Silvio M IturbideBrazilAsiya Javayant RENEWAL
Claire Q CaudyCanadaBernardo Dominic RENEWAL
Isabel F PerinGermanyBernardo Dominic NEGOTIATION
Emily U AmigonGermanyElwin Sharvill RENEWAL
Stacey S OldroydFranceStephen Shaw NEW
Stacey X CaudyRussiaAnna Fali NEW
Alejandro O SergiGermanyOnyama Limba NEGOTIATION
Smith T RutaFranceIoni Bowcher NEW
Murillo S RutaJapanAnna Fali 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>