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
Aika F SergiIndiaIoni Bowcher UNQUALIFIED
Izzy A RulapaughBrazilAsiya Javayant PROPOSAL
Adams U RutaSpainBernardo Dominic RENEWAL
Alejandro N GlickCanadaIvan Magalhaes RENEWAL
Jeanfrancois S PoquetteArgentinaAmy Elsner QUALIFIED
Ricardo D SaylorsJapanIoni Bowcher UNQUALIFIED
Isabel M SergiCanadaBernardo Dominic UNQUALIFIED
Munro X DarakjyIndiaAmy Elsner QUALIFIED
Jeanfrancois E VocelkaSpainStephen Shaw NEGOTIATION
Cody N PaprockiBrazilStephen Shaw NEGOTIATION
Jeanfrancois X OstroskyUnited KingdomAsiya Javayant UNQUALIFIED
Ricardo O MaletFranceStephen Shaw RENEWAL
Munro C OldroydAustraliaAsiya Javayant QUALIFIED
Maria I GlickItalyElwin Sharvill NEW
Jennifer Q CaudyUnited KingdomOnyama Limba UNQUALIFIED
Nicolas F BriddickJapanBernardo Dominic NEW
Jones E CaldareraCanadaOnyama Limba PROPOSAL
Munro Z FerenczCanadaXuxue Feng NEW
Darci V KolmetzIndiaXuxue Feng QUALIFIED
Ashley X RutaBrazilElwin Sharvill NEGOTIATION
Johnson K CampainFranceElwin Sharvill PROPOSAL
Faith U WhobreyBrazilIvan Magalhaes UNQUALIFIED
Claire D FigeroaItalyBernardo Dominic PROPOSAL
Juan L MorascaItalyIvan Magalhaes RENEWAL
Nicolas M RulapaughAustraliaAnna Fali UNQUALIFIED
Faith D MorascaBrazilAsiya Javayant PROPOSAL
Jones L CaudyCanadaOnyama Limba NEW
Kadeem Q RimRussiaAmy Elsner PROPOSAL
Izzy V CampainBrazilAnna Fali UNQUALIFIED
Maisha H KolmetzGermanyBernardo Dominic UNQUALIFIED
Maisha Z FlosiCanadaAsiya Javayant NEGOTIATION
Maria V GlickItalyAmy Elsner QUALIFIED
Kaitlin M ButtIndiaXuxue Feng UNQUALIFIED
Aika P CaudyAustraliaAnna Fali NEW
James M RimArgentinaBernardo Dominic NEW
James F CaldareraGermanyBernardo Dominic PROPOSAL
Greenwood U WieserJapanAsiya Javayant UNQUALIFIED
David S StensethFranceElwin Sharvill PROPOSAL
David T MaletCanadaOnyama Limba QUALIFIED
Jeanfrancois P MaletUnited KingdomElwin Sharvill NEGOTIATION
Jennifer G SaylorsArgentinaIvan Magalhaes NEW
Isabel E FerenczCanadaIoni Bowcher NEGOTIATION
Ashley Q MacleadJapanStephen Shaw RENEWAL
Murillo G MarrierBrazilElwin Sharvill QUALIFIED
Johnson V NickaRussiaIvan Magalhaes RENEWAL
David O StensethUnited KingdomStephen Shaw NEGOTIATION
Nicolas B MacleadGermanyStephen Shaw NEGOTIATION
Greenwood N RimSpainStephen Shaw RENEWAL
Aika E RimGermanyElwin Sharvill PROPOSAL
Ashley H FerenczCanadaIoni Bowcher NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Clifford W WaycottAustraliaElwin Sharvill QUALIFIED
Ivar B FlosiIndiaBernardo Dominic NEGOTIATION
Stacey J RulapaughJapanAsiya Javayant UNQUALIFIED
Leja Z SchemmerCanadaAnna Fali QUALIFIED
Maisha O PaprockiCanadaAmy Elsner UNQUALIFIED
Darci R DilliardItalyIvan Magalhaes RENEWAL
Faith C BowleyArgentinaIoni Bowcher PROPOSAL
Greenwood Z PerinItalyStephen Shaw QUALIFIED
Chavez M DilliardIndiaAnna Fali RENEWAL
Ivar R GarufiJapanXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa A StensethRussia2026-10-02Feltz Printing Service PROPOSAL41Anna Fali
1001Emily L OldroydFrance2026-09-26Rousseaux, Michael Esq NEGOTIATION48Anna Fali
1002Darci E MaletAustralia2026-10-17Dorl, James J Esq UNQUALIFIED97Amy Elsner
1003Nicolas M DilliardIndia2026-09-19King, Christopher A Esq NEGOTIATION94Bernardo Dominic
1004Octavia U VocelkaBrazil2026-10-06Truhlar And Truhlar Attys UNQUALIFIED1Anna Fali
1005Clifford G VenereJapan2026-10-17Buckley Miller Wright NEGOTIATION5Ivan Magalhaes
1006Johnson T MacleadIndia2026-10-12Buckley Miller Wright NEW40Amy Elsner
1007Costa L RutaFrance2026-10-04Commercial Press UNQUALIFIED16Bernardo Dominic
1008Octavia M DarakjyCanada2026-10-12Feltz Printing Service NEW33Bernardo Dominic
1009Francesco P WhobreyAustralia2026-09-25Commercial Press RENEWAL43Onyama Limba
1010Alejandro K CaldareraJapan2026-10-11Chemel, James L Cpa NEGOTIATION27Asiya Javayant
1011Jones Q OldroydSpain2026-10-09Feltz Printing Service NEGOTIATION27Asiya Javayant
1012Francesco T WieserFrance2026-09-28Truhlar And Truhlar Attys RENEWAL83Ivan Magalhaes
1013Salvatore A AmigonItaly2026-10-14Commercial Press UNQUALIFIED53Stephen Shaw
1014Alejandro O CampainSpain2026-09-24Commercial Press RENEWAL86Ivan Magalhaes
1015Chavez O DarakjyIndia2026-10-08Morlong Associates NEW50Ivan Magalhaes
1016Alejandro Z StockhamAustralia2026-10-14Feltz Printing Service UNQUALIFIED81Onyama Limba
1017Emily H KolmetzAustralia2026-09-25Rangoni Of Florence NEW71Ioni Bowcher
1018Octavia B FlosiIndia2026-10-13Chanay, Jeffrey A Esq NEGOTIATION9Stephen Shaw
1019Tony G DarakjyAustralia2026-10-11Chemel, James L Cpa NEW44Bernardo Dominic
1020Johnson N GarufiFrance2026-09-29Feltz Printing Service RENEWAL48Stephen Shaw
1021Antonio L WhobreyAustralia2026-09-20Morlong Associates QUALIFIED51Ioni Bowcher
1022Chavez Z SergiRussia2026-10-11Feltz Printing Service NEW39Ioni Bowcher
1023Nicolas K NestleSpain2026-09-27King, Christopher A Esq NEGOTIATION1Ioni Bowcher
1024Clifford P PerinRussia2026-10-08King, Christopher A Esq PROPOSAL6Ioni Bowcher
1025Nicolas B MarrierSpain2026-09-23Benton, John B Jr NEW86Ioni Bowcher
1026Deepesh F VenereUnited Kingdom2026-10-04Chapman, Ross E Esq NEGOTIATION0Anna Fali
1027Julie B AlbaresJapan2026-09-25Feltz Printing Service NEW22Asiya Javayant
1028Aika O RutaIndia2026-09-26King, Christopher A Esq UNQUALIFIED75Amy Elsner
1029Tony V ChuiIndia2026-09-24Printing Dimensions UNQUALIFIED87Stephen Shaw
1030Mayumi P PoquetteJapan2026-09-23Buckley Miller Wright RENEWAL14Ivan Magalhaes
1031Jeanfrancois K RutaRussia2026-10-06Commercial Press NEGOTIATION58Stephen Shaw
1032Salvatore C StensethIndia2026-10-09Morlong Associates QUALIFIED38Xuxue Feng
1033Wickens M PerinSpain2026-09-28Printing Dimensions PROPOSAL77Anna Fali
1034Johnson A BowleyUnited Kingdom2026-09-19Feiner Bros PROPOSAL85Onyama Limba
1035Julie M GillianBrazil2026-09-22Rangoni Of Florence NEW77Elwin Sharvill
1036Kaitlin I TollnerIndia2026-10-02Buckley Miller Wright QUALIFIED1Elwin Sharvill
1037Stacey U WieserGermany2026-10-02Chemel, James L Cpa UNQUALIFIED60Ivan Magalhaes
1038Mujtaba N MacleadAustralia2026-10-09Feltz Printing Service NEW78Stephen Shaw
1039Kadeem V CaudyItaly2026-10-08Chapman, Ross E Esq RENEWAL88Elwin Sharvill
1040Ivar B DilliardArgentina2026-10-14Dorl, James J Esq UNQUALIFIED58Xuxue Feng
1041Aika F FollerJapan2026-09-30Rousseaux, Michael Esq RENEWAL70Asiya Javayant
1042Jones V VenereSpain2026-10-18Printing Dimensions RENEWAL6Elwin Sharvill
1043Kaitlin Z RutaFrance2026-09-26Feiner Bros NEGOTIATION80Stephen Shaw
1044Jennifer R NestleJapan2026-09-24Dorl, James J Esq RENEWAL94Asiya Javayant
1045Smith X SergiGermany2026-10-10Benton, John B Jr PROPOSAL82Bernardo Dominic
1046Octavia X MorascaIndia2026-10-06Rousseaux, Michael Esq NEW70Anna Fali
1047Darci A BowleyAustralia2026-10-02Feltz Printing Service RENEWAL89Onyama Limba
1048Juan I CaldareraCanada2026-10-13King, Christopher A Esq QUALIFIED90Stephen Shaw
1049Chavez N OldroydItaly2026-10-07Chanay, Jeffrey A Esq RENEWAL88Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Silvio H BriddickGermanyAnna Fali PROPOSAL
Smith L VenereFranceOnyama Limba NEW
Arvin X FlosiCanadaAnna Fali PROPOSAL
Aditya P StensethSpainAmy Elsner NEGOTIATION
Aruna B RutaItalyXuxue Feng QUALIFIED
Jefferson P MaletRussiaXuxue Feng RENEWAL
Munro K DoeRussiaAsiya Javayant QUALIFIED
Smith C TollnerArgentinaElwin Sharvill QUALIFIED
Francesco G MarrierAustraliaAsiya Javayant NEGOTIATION
Ashley Q WhobreyItalyAsiya Javayant RENEWAL
Sinclair Q GillianJapanBernardo Dominic UNQUALIFIED
Clifford J MaletArgentinaStephen Shaw UNQUALIFIED
Aruna J BowleyUnited KingdomIvan Magalhaes QUALIFIED
Alejandro L RoysterUnited KingdomAmy Elsner NEGOTIATION
Cody B NestleCanadaElwin Sharvill RENEWAL
Murillo U NestleArgentinaAsiya Javayant NEW
Alejandro S FerenczBrazilIoni Bowcher RENEWAL
Darci L KuskoCanadaBernardo Dominic PROPOSAL
Munro U SaylorsIndiaStephen Shaw NEW
Leja G RoysterUnited KingdomBernardo Dominic NEGOTIATION
Jefferson L PerinAustraliaOnyama Limba QUALIFIED
Tony U OldroydIndiaElwin Sharvill PROPOSAL
Kadeem F FigeroaFranceAmy Elsner RENEWAL
Clifford L KuskoFranceElwin Sharvill NEGOTIATION
Arvin Y WaycottCanadaOnyama Limba QUALIFIED
Mujtaba N CaldareraBrazilAsiya Javayant RENEWAL
Deepesh R SergiIndiaStephen Shaw NEW
Jones Y CaudyCanadaIoni Bowcher PROPOSAL
Octavia S SergiIndiaStephen Shaw NEW
Ivar X SaylorsSpainBernardo Dominic PROPOSAL
Nicolas F MaletCanadaAmy Elsner QUALIFIED
Aditya L GarufiSpainBernardo Dominic RENEWAL
Juan T StensethSpainBernardo Dominic UNQUALIFIED
Emily T NickaAustraliaBernardo Dominic PROPOSAL
Murillo L WaycottRussiaIoni Bowcher UNQUALIFIED
Aruna I AmigonBrazilIvan Magalhaes QUALIFIED
Nicolas T RimGermanyIoni Bowcher UNQUALIFIED
Alejandro J PerinIndiaAsiya Javayant NEGOTIATION
Greenwood D RimItalyOnyama Limba UNQUALIFIED
Julie Z VenereFranceAsiya Javayant NEGOTIATION
Leja G SlusarskiBrazilIoni Bowcher RENEWAL
Isabel F SlusarskiRussiaIvan Magalhaes UNQUALIFIED
Jennifer U BowleyFranceIvan Magalhaes NEW
Izzy O RimIndiaIvan Magalhaes QUALIFIED
Rodrigues K WieserFranceStephen Shaw QUALIFIED
Faith D CampainItalyBernardo Dominic UNQUALIFIED
Izzy O VenereRussiaIoni Bowcher QUALIFIED
Jones Z VenereRussiaAmy Elsner PROPOSAL
Maisha B StensethRussiaBernardo Dominic PROPOSAL
Aika J VocelkaRussiaIvan Magalhaes NEW
Frozen Columns
Name
Ashley V Marrier
Munro T Darakjy
Greenwood M Caldarera
Aika B Saylors
Emily X Malet
Aika G Figeroa
Jennifer R Kolmetz
Tony J Figeroa
Mayumi J Shinko
Aruna U Shinko
Munro O Perin
Kadeem N Bowley
Ricardo S Gaucho
Sinclair V Royster
Smith Y Venere
Nicolas M Royster
Kaitlin B Inouye
Julie S Ruta
Maria X Ferencz
Darci B Flosi
Jones G Morasca
Alejandro L Doe
Morrow V Flosi
Morrow Q Iturbide
Munro C Darakjy
Ivar Q Gaucho
Chavez D Doe
Wickens L Doe
Jennifer Y Shinko
Jones B Caldarera
Jeanfrancois U Briddick
Morrow Q Nestle
Ricardo J Saylors
Julie S Rim
Aruna V Amigon
Francesco O Maclead
Antonio P Nicka
Silvio A Malet
Wickens H Maclead
Salvatore W Caldarera
Jennifer X Gillian
Ivar M Butt
David M Glick
Ashley F Venere
Ricardo K Shinko
Morrow B Sergi
Stacey U Gillian
Salvatore B Dilliard
Alejandro P Ruta
Kadeem T Paprocki
IdCountryDate
1000Canada2026-09-23
1001United Kingdom2026-09-19
1002Japan2026-10-10
1003France2026-09-23
1004India2026-10-13
1005India2026-10-12
1006Canada2026-09-30
1007France2026-10-08
1008Japan2026-10-07
1009Canada2026-10-10
1010Australia2026-10-03
1011Germany2026-10-18
1012Germany2026-09-27
1013Japan2026-10-14
1014Australia2026-10-15
1015Australia2026-10-11
1016Germany2026-09-30
1017Spain2026-09-26
1018France2026-10-07
1019Brazil2026-10-01
1020Brazil2026-09-29
1021Australia2026-09-30
1022Germany2026-09-26
1023France2026-10-01
1024Brazil2026-09-27
1025Russia2026-10-01
1026Canada2026-10-03
1027India2026-10-13
1028Italy2026-10-18
1029Australia2026-10-06
1030Spain2026-10-13
1031Brazil2026-10-13
1032Germany2026-10-09
1033Russia2026-10-04
1034India2026-09-26
1035Germany2026-10-15
1036Italy2026-10-16
1037United Kingdom2026-09-22
1038Canada2026-10-17
1039India2026-10-08
1040Spain2026-10-14
1041United Kingdom2026-09-26
1042Argentina2026-10-06
1043Canada2026-10-18
1044Italy2026-10-18
1045Argentina2026-10-04
1046Canada2026-10-13
1047Argentina2026-09-19
1048Japan2026-10-01
1049Italy2026-10-05

On-Demand Data

NameIdCountryDate
Morrow W Shinko1000Japan2026-10-14
Morrow J Foller1001France2026-10-17
Greenwood Y Chui1002Russia2026-10-01
Maisha F Flosi1003Russia2026-10-18
Juan J Maclead1004India2026-09-22
Aika E Ruta1005Argentina2026-09-21
Clifford I Bowley1006Canada2026-09-22
Deepesh E Malet1007France2026-09-29
Murillo N Glick1008Japan2026-10-08
Ricardo I Nicka1009Canada2026-10-01
Mayumi E Albares1010Japan2026-10-08
Silvio F Flosi1011India2026-10-10
Claire Q Ruta1012Russia2026-09-23
Mujtaba Y Royster1013United Kingdom2026-09-21
Cody H Stenseth1014Japan2026-10-15
Francesco W Venere1015Germany2026-09-27
Wickens B Campain1016Italy2026-09-19
Adams V Caudy1017Italy2026-10-02
Faith R Doe1018Italy2026-09-19
Mujtaba R Tollner1019Argentina2026-10-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair L KuskoGermanyIoni Bowcher QUALIFIED
Jefferson L OstroskyAustraliaOnyama Limba UNQUALIFIED
Leon M MorascaRussiaIvan Magalhaes RENEWAL
Costa T PerinRussiaAmy Elsner NEGOTIATION
Aruna G NestleUnited KingdomIoni Bowcher PROPOSAL
Mayumi U VenereCanadaOnyama Limba PROPOSAL
Darci D GlickItalyElwin Sharvill NEW
Claire O BologniaFranceStephen Shaw UNQUALIFIED
Aditya X WieserGermanyStephen Shaw NEW
Faith R BriddickItalyStephen Shaw UNQUALIFIED
Johnson G RimIndiaIvan Magalhaes NEGOTIATION
Octavia B NestleArgentinaOnyama Limba NEGOTIATION
Clifford V GauchoItalyAnna Fali NEW
Isabel W RoysterSpainStephen Shaw QUALIFIED
Deepesh H PerinSpainIoni Bowcher PROPOSAL
Aditya M GlickJapanAnna Fali QUALIFIED
Deepesh D ButtJapanIoni Bowcher NEW
Jennifer L PaprockiUnited KingdomAsiya Javayant NEW
Kadeem S KuskoJapanIvan Magalhaes RENEWAL
Smith A NickaItalyAmy Elsner NEW
Deepesh T StockhamAustraliaIoni Bowcher PROPOSAL
Sinclair M ChuiAustraliaIvan Magalhaes NEW
Morrow G PerinFranceAmy Elsner NEGOTIATION
Chavez X RulapaughUnited KingdomOnyama Limba QUALIFIED
Salvatore L GillianRussiaBernardo Dominic NEW
Aika S BriddickUnited KingdomStephen Shaw RENEWAL
Julie C OstroskyFranceElwin Sharvill QUALIFIED
Salvatore L AmigonJapanOnyama Limba UNQUALIFIED
Tony L WhobreyItalyElwin Sharvill UNQUALIFIED
Kadeem E GlickGermanyElwin Sharvill QUALIFIED
Maria M GlickJapanAmy Elsner PROPOSAL
Jeanfrancois T StensethJapanBernardo Dominic QUALIFIED
Maria Z KolmetzIndiaBernardo Dominic QUALIFIED
Wickens B GlickBrazilAsiya Javayant PROPOSAL
Antonio M WhobreyCanadaIoni Bowcher NEW
Wickens F GarufiBrazilIvan Magalhaes NEW
Jefferson T GarufiSpainAnna Fali QUALIFIED
Deepesh T DoeAustraliaIvan Magalhaes UNQUALIFIED
Octavia Y StockhamGermanyAsiya Javayant PROPOSAL
Jeanfrancois X SaylorsItalyXuxue Feng 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>