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
Ivar G GauchoIndiaStephen Shaw UNQUALIFIED
Adams I CaldareraGermanyIoni Bowcher RENEWAL
Silvio D WaycottBrazilXuxue Feng NEGOTIATION
Claire H StensethRussiaIvan Magalhaes UNQUALIFIED
Izzy V SchemmerFranceAnna Fali NEGOTIATION
Mayumi C PerinIndiaAmy Elsner NEGOTIATION
Smith P IturbideCanadaIoni Bowcher RENEWAL
Jennifer V RimUnited KingdomStephen Shaw PROPOSAL
Tony P MacleadAustraliaIoni Bowcher NEGOTIATION
Johnson R TollnerBrazilAmy Elsner QUALIFIED
Adams A DilliardJapanElwin Sharvill QUALIFIED
Tony K KolmetzFranceOnyama Limba RENEWAL
Octavia H DoeAustraliaIvan Magalhaes NEW
Murillo K AmigonCanadaIvan Magalhaes NEGOTIATION
Alejandro N PoquetteGermanyAmy Elsner RENEWAL
Jennifer E IturbideGermanyAsiya Javayant PROPOSAL
Alejandro C CampainItalyAnna Fali NEW
Faith B MaletItalyElwin Sharvill RENEWAL
Salvatore H CaldareraItalyXuxue Feng RENEWAL
Leon Z WaycottCanadaElwin Sharvill UNQUALIFIED
Ashley S KuskoItalyIoni Bowcher NEW
Deepesh T RulapaughIndiaXuxue Feng NEW
Stacey O FollerRussiaXuxue Feng PROPOSAL
Munro L TollnerAustraliaIoni Bowcher QUALIFIED
Jefferson O FlosiBrazilXuxue Feng QUALIFIED
Jefferson K SergiGermanyIvan Magalhaes RENEWAL
Aditya X DarakjyRussiaIoni Bowcher QUALIFIED
Deepesh M VenereUnited KingdomXuxue Feng NEW
Jefferson G FigeroaAustraliaBernardo Dominic PROPOSAL
Chavez Z MaletGermanyElwin Sharvill NEW
Jones P IturbideRussiaXuxue Feng NEGOTIATION
Aruna R CaudyCanadaAnna Fali NEW
Misaki W FlosiRussiaAmy Elsner UNQUALIFIED
Silvio D NestleGermanyOnyama Limba NEW
Aditya G BriddickBrazilStephen Shaw PROPOSAL
Wickens C NickaAustraliaStephen Shaw RENEWAL
Octavia T WhobreyCanadaElwin Sharvill UNQUALIFIED
Octavia J PoquetteItalyAnna Fali NEW
Sinclair S WaycottJapanStephen Shaw PROPOSAL
Isabel M OldroydGermanyIoni Bowcher PROPOSAL
Maria R DarakjyGermanyBernardo Dominic RENEWAL
Costa B AlbaresItalyStephen Shaw UNQUALIFIED
Maria F GillianItalyAmy Elsner RENEWAL
Wickens Y OstroskyGermanyOnyama Limba NEW
Mujtaba J WieserJapanAsiya Javayant PROPOSAL
Leja P KolmetzUnited KingdomAnna Fali NEW
Mujtaba G StockhamUnited KingdomBernardo Dominic UNQUALIFIED
Emily J PerinCanadaXuxue Feng PROPOSAL
Nicolas B RoysterBrazilOnyama Limba NEW
Morrow V ChuiCanadaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Wickens R PoquetteItalyBernardo Dominic NEGOTIATION
Faith Y BologniaSpainIvan Magalhaes PROPOSAL
Arvin N BriddickUnited KingdomAmy Elsner UNQUALIFIED
Adams Z MarrierRussiaOnyama Limba UNQUALIFIED
Aruna F WieserCanadaIoni Bowcher NEW
Chavez G GauchoRussiaStephen Shaw RENEWAL
Ricardo L FlosiUnited KingdomIoni Bowcher PROPOSAL
Izzy J BowleyFranceAsiya Javayant UNQUALIFIED
Smith M GillianRussiaAsiya Javayant NEGOTIATION
Darci O FlosiJapanBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya N DarakjyFrance2026-09-14King, Christopher A Esq RENEWAL34Stephen Shaw
1001Julie Z WieserSpain2026-09-29Feltz Printing Service PROPOSAL9Ioni Bowcher
1002Maisha T InouyeUnited Kingdom2026-09-20Chanay, Jeffrey A Esq NEGOTIATION61Ivan Magalhaes
1003Leja B MorascaIndia2026-09-25Chanay, Jeffrey A Esq UNQUALIFIED25Ioni Bowcher
1004Emily Z BowleyRussia2026-10-07Commercial Press NEGOTIATION47Stephen Shaw
1005Claire U AmigonBrazil2026-10-02Rousseaux, Michael Esq QUALIFIED74Anna Fali
1006Munro F OldroydIndia2026-09-25Feiner Bros QUALIFIED23Asiya Javayant
1007Alejandro S KuskoBrazil2026-09-09Chemel, James L Cpa UNQUALIFIED15Ioni Bowcher
1008Clifford T StockhamItaly2026-10-03Printing Dimensions QUALIFIED91Amy Elsner
1009Jones Z GauchoJapan2026-09-30Commercial Press PROPOSAL27Onyama Limba
1010Darci F WhobreyCanada2026-10-07Feltz Printing Service NEW17Ivan Magalhaes
1011Misaki I FerenczCanada2026-09-27Rousseaux, Michael Esq NEW33Onyama Limba
1012Murillo H CaudyIndia2026-09-18Truhlar And Truhlar Attys RENEWAL52Elwin Sharvill
1013Wickens P GarufiCanada2026-09-18Morlong Associates NEW66Bernardo Dominic
1014Antonio B MacleadBrazil2026-09-10Feiner Bros NEGOTIATION60Elwin Sharvill
1015Leja K RutaItaly2026-09-24Feltz Printing Service NEW93Stephen Shaw
1016Aika G OldroydSpain2026-09-23Dorl, James J Esq RENEWAL95Xuxue Feng
1017Maria G PerinUnited Kingdom2026-09-09Chanay, Jeffrey A Esq UNQUALIFIED76Ioni Bowcher
1018Wickens E TollnerSpain2026-09-13Benton, John B Jr NEGOTIATION40Stephen Shaw
1019Leon I PaprockiGermany2026-09-18Chemel, James L Cpa NEGOTIATION43Asiya Javayant
1020Darci P DoeFrance2026-10-02Rousseaux, Michael Esq PROPOSAL50Ivan Magalhaes
1021Leja I TollnerGermany2026-10-05Dorl, James J Esq QUALIFIED86Stephen Shaw
1022Misaki Z MaletFrance2026-10-02Dorl, James J Esq UNQUALIFIED8Elwin Sharvill
1023Aruna M ButtRussia2026-09-16Chanay, Jeffrey A Esq NEW68Elwin Sharvill
1024Ivar W MorascaAustralia2026-09-10Feiner Bros NEW60Xuxue Feng
1025Mujtaba G WaycottBrazil2026-09-11Morlong Associates QUALIFIED26Asiya Javayant
1026Costa B WhobreyCanada2026-10-06Feiner Bros QUALIFIED30Elwin Sharvill
1027Nicolas U FollerJapan2026-09-22Morlong Associates UNQUALIFIED30Elwin Sharvill
1028Greenwood X FollerJapan2026-09-12Commercial Press RENEWAL30Asiya Javayant
1029Leon P SergiJapan2026-09-30Morlong Associates QUALIFIED80Amy Elsner
1030Sinclair N NickaAustralia2026-10-07Commercial Press NEW76Ivan Magalhaes
1031Arvin Q VocelkaArgentina2026-09-16Rangoni Of Florence RENEWAL61Onyama Limba
1032Misaki W PaprockiSpain2026-09-24Truhlar And Truhlar Attys NEW18Anna Fali
1033Darci C InouyeUnited Kingdom2026-09-17Chemel, James L Cpa QUALIFIED31Xuxue Feng
1034Maisha U OldroydUnited Kingdom2026-09-22Chapman, Ross E Esq NEGOTIATION36Bernardo Dominic
1035Stacey R SergiSpain2026-10-05Benton, John B Jr NEW92Bernardo Dominic
1036Salvatore D MacleadJapan2026-09-12King, Christopher A Esq RENEWAL52Ioni Bowcher
1037Nicolas F BriddickUnited Kingdom2026-09-19Commercial Press UNQUALIFIED91Ivan Magalhaes
1038Nicolas J NestleBrazil2026-10-03Feltz Printing Service NEGOTIATION31Xuxue Feng
1039Darci Z WhobreyBrazil2026-09-27Morlong Associates QUALIFIED56Ivan Magalhaes
1040Salvatore V RimSpain2026-09-25Morlong Associates QUALIFIED62Ioni Bowcher
1041Wickens J FerenczSpain2026-09-16Truhlar And Truhlar Attys QUALIFIED16Xuxue Feng
1042Salvatore C MaletSpain2026-09-27Truhlar And Truhlar Attys PROPOSAL35Anna Fali
1043Kadeem W TollnerJapan2026-10-06King, Christopher A Esq NEGOTIATION91Asiya Javayant
1044Kadeem K BriddickGermany2026-10-01Buckley Miller Wright PROPOSAL58Xuxue Feng
1045Kaitlin Y CampainRussia2026-10-02Printing Dimensions PROPOSAL59Onyama Limba
1046Leon E TollnerUnited Kingdom2026-09-30Rousseaux, Michael Esq PROPOSAL3Amy Elsner
1047Ricardo P BriddickIndia2026-10-06Rangoni Of Florence NEGOTIATION42Bernardo Dominic
1048Maisha C GillianItaly2026-09-09Dorl, James J Esq NEW24Asiya Javayant
1049Maisha T GlickArgentina2026-10-04Rangoni Of Florence NEGOTIATION12Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Darci D AmigonFranceXuxue Feng NEW
David Z FollerRussiaStephen Shaw NEW
James F MarrierJapanAsiya Javayant UNQUALIFIED
Mayumi F GauchoArgentinaBernardo Dominic UNQUALIFIED
Johnson S ChuiFranceXuxue Feng NEGOTIATION
Arvin H WaycottBrazilXuxue Feng UNQUALIFIED
Clifford H DilliardItalyIvan Magalhaes QUALIFIED
Aruna A PerinArgentinaAnna Fali UNQUALIFIED
Chavez R GillianCanadaStephen Shaw PROPOSAL
Ivar X VenereFranceAmy Elsner NEGOTIATION
Claire N VenereCanadaIvan Magalhaes QUALIFIED
Kadeem M FerenczFranceXuxue Feng QUALIFIED
Wickens R BriddickJapanAsiya Javayant NEGOTIATION
Aditya A MaletBrazilAnna Fali QUALIFIED
Deepesh Z StockhamGermanyElwin Sharvill PROPOSAL
Ivar I MaletFranceIoni Bowcher RENEWAL
Claire S BriddickBrazilIoni Bowcher RENEWAL
Morrow S BriddickGermanyBernardo Dominic RENEWAL
Munro U KolmetzUnited KingdomOnyama Limba QUALIFIED
Kaitlin Y BologniaGermanyBernardo Dominic PROPOSAL
Jones U StensethAustraliaIoni Bowcher RENEWAL
Rodrigues Y CampainRussiaAmy Elsner RENEWAL
Julie L WaycottIndiaXuxue Feng QUALIFIED
Misaki Q RulapaughGermanyStephen Shaw NEW
Octavia U KuskoFranceStephen Shaw PROPOSAL
Stacey T NestleItalyAnna Fali QUALIFIED
David I GillianSpainAmy Elsner PROPOSAL
Emily E FerenczBrazilBernardo Dominic NEW
Maria C VenereRussiaBernardo Dominic PROPOSAL
David S WaycottArgentinaIoni Bowcher NEW
Salvatore I WaycottSpainXuxue Feng RENEWAL
Stacey I MaletBrazilOnyama Limba UNQUALIFIED
Isabel F GlickRussiaXuxue Feng RENEWAL
Aruna Y FerenczUnited KingdomIvan Magalhaes QUALIFIED
Morrow F KuskoFranceOnyama Limba NEGOTIATION
Juan V GauchoSpainAnna Fali NEGOTIATION
Maria M GauchoJapanAmy Elsner RENEWAL
Ricardo P IturbideJapanIvan Magalhaes QUALIFIED
Silvio K KuskoUnited KingdomElwin Sharvill PROPOSAL
James H AmigonItalyAmy Elsner QUALIFIED
Aruna F MorascaBrazilStephen Shaw PROPOSAL
Francesco Z VenereCanadaAmy Elsner QUALIFIED
Leon Q WieserItalyElwin Sharvill RENEWAL
Francesco Q BologniaCanadaAmy Elsner NEW
Salvatore N WhobreyIndiaAsiya Javayant NEW
Munro L DoeUnited KingdomIoni Bowcher RENEWAL
Kadeem Z AlbaresAustraliaAmy Elsner NEGOTIATION
Faith I FollerFranceAnna Fali UNQUALIFIED
Silvio Y KolmetzBrazilIvan Magalhaes PROPOSAL
Claire F OstroskyFranceXuxue Feng RENEWAL
Frozen Columns
Name
Jefferson N Stenseth
Misaki H Saylors
Octavia R Doe
Kadeem A Venere
Rodrigues D Morasca
Maisha U Dilliard
Mayumi E Foller
Clifford F Nestle
Leja M Stockham
Claire J Butt
Murillo L Ruta
Murillo J Rim
Arvin A Foller
Deepesh M Iturbide
Jennifer O Venere
Mujtaba D Dilliard
Sinclair J Venere
James A Sergi
Smith T Bolognia
Morrow G Royster
Kaitlin I Caudy
Jefferson U Amigon
Johnson R Vocelka
Munro S Rim
Greenwood O Chui
Jeanfrancois J Kusko
Sinclair Z Stenseth
Mayumi A Iturbide
Misaki U Sergi
Stacey H Doe
Ashley X Venere
Salvatore U Stenseth
Stacey U Campain
Johnson J Ruta
Munro W Saylors
Munro G Rulapaugh
Octavia R Kolmetz
Stacey Q Inouye
Arvin Z Inouye
Murillo S Dilliard
Munro A Glick
Jeanfrancois B Ferencz
Arvin J Ruta
Isabel E Briddick
Octavia V Royster
Smith W Shinko
Adams X Vocelka
Tony L Ostrosky
Kaitlin S Bolognia
Jennifer L Glick
IdCountryDate
1000Argentina2026-09-27
1001Brazil2026-10-04
1002France2026-09-30
1003France2026-09-28
1004Argentina2026-09-16
1005Australia2026-09-17
1006Japan2026-09-19
1007Canada2026-09-28
1008Italy2026-09-09
1009Italy2026-09-14
1010Brazil2026-10-04
1011Japan2026-09-25
1012Russia2026-09-10
1013Russia2026-10-03
1014Canada2026-09-10
1015Germany2026-09-16
1016France2026-10-07
1017Spain2026-09-22
1018United Kingdom2026-10-03
1019India2026-09-17
1020India2026-09-25
1021Brazil2026-10-05
1022Argentina2026-09-10
1023Japan2026-09-08
1024Russia2026-09-23
1025France2026-09-13
1026Canada2026-09-13
1027Canada2026-10-03
1028Brazil2026-10-03
1029Canada2026-09-25
1030Brazil2026-10-04
1031Brazil2026-09-27
1032Canada2026-09-24
1033United Kingdom2026-09-18
1034Canada2026-10-05
1035India2026-09-11
1036Italy2026-09-26
1037Spain2026-09-11
1038Germany2026-09-29
1039India2026-09-28
1040Germany2026-10-02
1041Germany2026-09-17
1042France2026-10-03
1043Spain2026-09-10
1044Germany2026-09-26
1045Germany2026-09-08
1046Canada2026-10-02
1047Argentina2026-09-29
1048Italy2026-09-23
1049United Kingdom2026-09-29

On-Demand Data

NameIdCountryDate
Aruna A Campain1000Spain2026-10-04
Aditya N Glick1001Argentina2026-09-11
Aditya L Nestle1002Australia2026-09-18
Clifford Q Doe1003Australia2026-09-23
Kaitlin R Rim1004Russia2026-09-17
Jennifer M Flosi1005Argentina2026-10-04
Faith J Bowley1006France2026-10-06
Aruna G Iturbide1007Russia2026-09-13
Ivar X Oldroyd1008India2026-09-29
Julie O Foller1009Argentina2026-10-07
Aika V Chui1010Italy2026-09-27
Jeanfrancois E Bowley1011Argentina2026-09-15
Juan Q Waycott1012Germany2026-10-05
Arvin F Saylors1013Australia2026-09-10
Aditya R Bolognia1014Germany2026-09-10
Clifford Y Maclead1015France2026-09-15
Darci L Caudy1016Italy2026-09-19
Ashley K Gillian1017Brazil2026-09-25
Darci H Ostrosky1018Germany2026-09-21
Jones N Shinko1019Spain2026-10-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro H ShinkoGermanyAmy Elsner NEW
Francesco X PoquetteCanadaAsiya Javayant UNQUALIFIED
David I ButtCanadaElwin Sharvill UNQUALIFIED
Emily E WaycottGermanyXuxue Feng RENEWAL
Kaitlin Q RoysterGermanyIoni Bowcher RENEWAL
Cody I ShinkoFranceAmy Elsner QUALIFIED
Leja Z MaletJapanIoni Bowcher QUALIFIED
Juan D KuskoUnited KingdomAnna Fali QUALIFIED
Emily J FollerRussiaAnna Fali PROPOSAL
Costa W ShinkoFranceIoni Bowcher RENEWAL
Izzy C FigeroaUnited KingdomOnyama Limba NEW
David B NickaRussiaElwin Sharvill NEW
Jefferson K DarakjyRussiaIoni Bowcher NEGOTIATION
Rodrigues C SchemmerCanadaXuxue Feng PROPOSAL
Kadeem O VocelkaFranceXuxue Feng NEW
Murillo A MaletBrazilIoni Bowcher NEW
Julie L BologniaArgentinaIvan Magalhaes NEGOTIATION
Jefferson Z InouyeArgentinaElwin Sharvill PROPOSAL
Leon E DilliardSpainOnyama Limba NEW
Tony K KolmetzJapanIoni Bowcher RENEWAL
Morrow A GlickGermanyAsiya Javayant NEW
Murillo X RimArgentinaXuxue Feng UNQUALIFIED
David W SchemmerAustraliaXuxue Feng NEGOTIATION
Arvin I TollnerIndiaIoni Bowcher QUALIFIED
Deepesh O KuskoUnited KingdomIvan Magalhaes QUALIFIED
Chavez Q AmigonRussiaAnna Fali QUALIFIED
Rodrigues U StockhamAustraliaOnyama Limba RENEWAL
Jeanfrancois P CampainSpainXuxue Feng PROPOSAL
Kaitlin V PerinSpainAsiya Javayant NEW
Wickens D VenereArgentinaAsiya Javayant RENEWAL
Johnson T WieserUnited KingdomIvan Magalhaes UNQUALIFIED
Jeanfrancois J StockhamGermanyIvan Magalhaes RENEWAL
Izzy J NestleItalyAsiya Javayant RENEWAL
Costa L MarrierCanadaStephen Shaw RENEWAL
Ivar G SchemmerGermanyElwin Sharvill PROPOSAL
Mayumi Q AmigonItalyIoni Bowcher NEW
Leon W PerinIndiaAmy Elsner NEGOTIATION
Francesco P WhobreyJapanAnna Fali NEGOTIATION
David W StockhamUnited KingdomElwin Sharvill UNQUALIFIED
Antonio K VocelkaFranceBernardo Dominic NEW

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