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
Isabel S BologniaBrazilIoni Bowcher NEW
Aika B GlickRussiaStephen Shaw UNQUALIFIED
Aruna H FollerBrazilIvan Magalhaes PROPOSAL
Ricardo F VocelkaGermanyIoni Bowcher UNQUALIFIED
Johnson J SergiSpainStephen Shaw RENEWAL
Mayumi S FigeroaIndiaAnna Fali NEW
Jennifer O AlbaresCanadaIvan Magalhaes QUALIFIED
Smith J IturbideArgentinaBernardo Dominic PROPOSAL
Isabel O KuskoGermanyAsiya Javayant QUALIFIED
Emily W WaycottItalyAnna Fali NEGOTIATION
Maria J WieserAustraliaXuxue Feng UNQUALIFIED
Greenwood Y OldroydUnited KingdomElwin Sharvill PROPOSAL
Greenwood U GillianUnited KingdomXuxue Feng NEW
Stacey S IturbideUnited KingdomXuxue Feng NEGOTIATION
Leon Z SlusarskiSpainIoni Bowcher QUALIFIED
Mujtaba U RulapaughItalyOnyama Limba PROPOSAL
Claire Z FollerGermanyBernardo Dominic NEW
Rodrigues E CampainCanadaAnna Fali UNQUALIFIED
Aika I SaylorsIndiaAsiya Javayant UNQUALIFIED
Maisha X MaletAustraliaStephen Shaw UNQUALIFIED
Morrow Q IturbideUnited KingdomAnna Fali PROPOSAL
Ivar I CampainJapanAsiya Javayant PROPOSAL
Salvatore Q CaldareraGermanyXuxue Feng RENEWAL
Ashley N SchemmerBrazilAnna Fali PROPOSAL
Julie O BologniaSpainElwin Sharvill QUALIFIED
Smith T BowleySpainXuxue Feng RENEWAL
Ashley J PoquetteIndiaBernardo Dominic RENEWAL
Misaki T OldroydArgentinaStephen Shaw QUALIFIED
Jefferson Z TollnerIndiaStephen Shaw NEGOTIATION
David I TollnerGermanyStephen Shaw NEW
Kaitlin G ShinkoSpainOnyama Limba PROPOSAL
Juan Y AmigonUnited KingdomOnyama Limba UNQUALIFIED
James Y GauchoIndiaIoni Bowcher NEGOTIATION
Leon B IturbideRussiaOnyama Limba NEW
Kaitlin N MaletBrazilElwin Sharvill UNQUALIFIED
Silvio E MorascaUnited KingdomAmy Elsner QUALIFIED
Emily I VenereFranceElwin Sharvill NEGOTIATION
Costa W AlbaresCanadaXuxue Feng NEW
Mayumi R ButtCanadaAnna Fali NEW
Murillo Q NestleJapanAsiya Javayant NEW
Francesco W MaletCanadaAnna Fali NEW
Johnson O PoquetteFranceXuxue Feng RENEWAL
Antonio R ChuiGermanyElwin Sharvill NEW
Mayumi M SergiFranceXuxue Feng UNQUALIFIED
Maisha C SergiBrazilIoni Bowcher RENEWAL
Francesco Q OldroydIndiaAsiya Javayant NEW
Leja X ChuiItalyOnyama Limba UNQUALIFIED
Aditya R FerenczRussiaAnna Fali UNQUALIFIED
Claire F SergiFranceIoni Bowcher QUALIFIED
Claire F MaletUnited KingdomElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Octavia C CaudyUnited KingdomIoni Bowcher NEGOTIATION
Jones F OldroydFranceIvan Magalhaes NEW
Arvin P FlosiBrazilStephen Shaw UNQUALIFIED
Tony K DilliardIndiaAnna Fali PROPOSAL
Claire S BriddickJapanIoni Bowcher NEGOTIATION
Tony O GarufiBrazilAmy Elsner NEGOTIATION
Leja R PaprockiGermanyXuxue Feng NEW
Alejandro C SlusarskiJapanElwin Sharvill RENEWAL
Leja P DarakjyArgentinaAsiya Javayant NEGOTIATION
Costa L AlbaresAustraliaIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson N SergiBrazil2026-09-22Feltz Printing Service QUALIFIED78Anna Fali
1001David C RulapaughUnited Kingdom2026-09-13Commercial Press NEGOTIATION53Elwin Sharvill
1002Darci J WaycottUnited Kingdom2026-09-25Chapman, Ross E Esq QUALIFIED57Anna Fali
1003Jeanfrancois X FerenczJapan2026-09-13Benton, John B Jr QUALIFIED3Stephen Shaw
1004Isabel M SaylorsBrazil2026-10-01Feltz Printing Service NEW60Stephen Shaw
1005Kadeem I TollnerArgentina2026-09-21Feltz Printing Service PROPOSAL80Ioni Bowcher
1006Costa V DoeFrance2026-09-21Dorl, James J Esq RENEWAL77Stephen Shaw
1007Tony U FlosiSpain2026-10-01Truhlar And Truhlar Attys NEGOTIATION90Anna Fali
1008Julie S WieserBrazil2026-10-05Truhlar And Truhlar Attys NEGOTIATION75Elwin Sharvill
1009Mujtaba J BologniaGermany2026-10-04Morlong Associates QUALIFIED59Elwin Sharvill
1010Maisha M GarufiUnited Kingdom2026-09-18Feiner Bros UNQUALIFIED90Xuxue Feng
1011David O SaylorsRussia2026-09-19Chapman, Ross E Esq UNQUALIFIED80Xuxue Feng
1012Darci R MarrierCanada2026-09-21Morlong Associates NEW90Stephen Shaw
1013Deepesh J VenereSpain2026-09-20Printing Dimensions NEW84Elwin Sharvill
1014Clifford S MaletSpain2026-10-02King, Christopher A Esq NEW58Xuxue Feng
1015Nicolas N InouyeSpain2026-09-18King, Christopher A Esq NEW78Onyama Limba
1016Ivar O WieserRussia2026-09-22Rousseaux, Michael Esq PROPOSAL50Onyama Limba
1017Isabel N MarrierAustralia2026-09-23Chapman, Ross E Esq PROPOSAL16Ioni Bowcher
1018Johnson B GlickGermany2026-10-02Dorl, James J Esq UNQUALIFIED29Stephen Shaw
1019Johnson Y DoeJapan2026-09-19Buckley Miller Wright NEGOTIATION70Asiya Javayant
1020Chavez U ChuiFrance2026-09-16Morlong Associates RENEWAL45Ivan Magalhaes
1021Cody K FigeroaAustralia2026-09-18Feiner Bros RENEWAL28Amy Elsner
1022Smith R DilliardGermany2026-10-11Commercial Press NEW38Asiya Javayant
1023Arvin Z MorascaItaly2026-09-19Printing Dimensions UNQUALIFIED53Anna Fali
1024Salvatore T MorascaItaly2026-10-05Feltz Printing Service NEW41Amy Elsner
1025Greenwood G WaycottUnited Kingdom2026-09-14Morlong Associates RENEWAL42Ivan Magalhaes
1026Adams W GillianAustralia2026-10-11Feiner Bros UNQUALIFIED6Anna Fali
1027David N OldroydGermany2026-10-02Truhlar And Truhlar Attys NEGOTIATION74Amy Elsner
1028Juan W BowleyItaly2026-09-30Feltz Printing Service NEW89Asiya Javayant
1029Emily B ChuiFrance2026-10-06Truhlar And Truhlar Attys QUALIFIED23Xuxue Feng
1030Misaki C ButtRussia2026-10-12Truhlar And Truhlar Attys UNQUALIFIED34Ioni Bowcher
1031Aika D WieserIndia2026-09-18Benton, John B Jr QUALIFIED39Amy Elsner
1032Smith B SchemmerFrance2026-10-01Chanay, Jeffrey A Esq NEW70Onyama Limba
1033Darci K SlusarskiCanada2026-09-16Commercial Press UNQUALIFIED8Bernardo Dominic
1034Jefferson W SchemmerAustralia2026-09-24Feltz Printing Service QUALIFIED41Amy Elsner
1035Ashley N OldroydBrazil2026-10-04Morlong Associates RENEWAL60Xuxue Feng
1036Tony X BriddickIndia2026-09-22Dorl, James J Esq NEW94Stephen Shaw
1037Izzy J KolmetzCanada2026-10-11Dorl, James J Esq NEW50Xuxue Feng
1038Ricardo O RutaJapan2026-10-12King, Christopher A Esq UNQUALIFIED96Bernardo Dominic
1039Tony I TollnerUnited Kingdom2026-09-29Truhlar And Truhlar Attys RENEWAL44Anna Fali
1040Ivar E PaprockiIndia2026-09-18Rousseaux, Michael Esq NEW89Stephen Shaw
1041Costa F ButtFrance2026-09-23Feiner Bros RENEWAL85Stephen Shaw
1042James F CampainIndia2026-10-04Feltz Printing Service NEW77Stephen Shaw
1043Adams V ChuiJapan2026-10-11Commercial Press PROPOSAL49Ivan Magalhaes
1044David H AlbaresFrance2026-09-18Chemel, James L Cpa NEW73Ioni Bowcher
1045Isabel B AlbaresAustralia2026-10-11Truhlar And Truhlar Attys RENEWAL30Onyama Limba
1046Kaitlin J WieserAustralia2026-09-19Chapman, Ross E Esq NEW9Elwin Sharvill
1047Kaitlin L KuskoJapan2026-09-28Feltz Printing Service NEW77Anna Fali
1048Kadeem L OstroskyArgentina2026-09-13King, Christopher A Esq NEGOTIATION11Bernardo Dominic
1049Faith E KolmetzRussia2026-09-21Commercial Press RENEWAL12Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Costa R OstroskyUnited KingdomOnyama Limba QUALIFIED
Leja L MaletJapanAsiya Javayant PROPOSAL
Antonio R SchemmerRussiaIvan Magalhaes PROPOSAL
Clifford X KolmetzBrazilXuxue Feng NEGOTIATION
Adams J MaletUnited KingdomElwin Sharvill UNQUALIFIED
Aditya K GillianSpainOnyama Limba RENEWAL
Rodrigues N SaylorsAustraliaXuxue Feng QUALIFIED
Murillo M SlusarskiIndiaAmy Elsner NEGOTIATION
Ivar M GauchoFranceStephen Shaw NEW
Jefferson E CaudyCanadaXuxue Feng NEGOTIATION
Munro T AmigonGermanyIoni Bowcher NEGOTIATION
Alejandro K PerinJapanIoni Bowcher RENEWAL
Stacey J GarufiFranceIvan Magalhaes UNQUALIFIED
Smith T CaldareraArgentinaXuxue Feng PROPOSAL
Rodrigues T FigeroaIndiaIoni Bowcher UNQUALIFIED
Aika D MaletBrazilElwin Sharvill NEGOTIATION
Emily J OstroskyFranceStephen Shaw RENEWAL
Kadeem D GarufiIndiaIvan Magalhaes NEW
Leon A FlosiCanadaIvan Magalhaes PROPOSAL
Ricardo V AmigonCanadaAsiya Javayant PROPOSAL
Emily R TollnerItalyOnyama Limba PROPOSAL
Leja E GauchoRussiaBernardo Dominic PROPOSAL
Isabel S MorascaRussiaAsiya Javayant UNQUALIFIED
Murillo C KolmetzItalyBernardo Dominic PROPOSAL
Misaki T SchemmerSpainXuxue Feng PROPOSAL
Morrow K GillianBrazilAsiya Javayant UNQUALIFIED
Kadeem A SlusarskiSpainIvan Magalhaes QUALIFIED
David P ChuiItalyIvan Magalhaes NEW
Ricardo Q OldroydSpainStephen Shaw NEW
Clifford N MacleadFranceAmy Elsner NEGOTIATION
Arvin T RimUnited KingdomXuxue Feng NEGOTIATION
Octavia Y WaycottAustraliaIoni Bowcher NEW
Smith K AlbaresCanadaAmy Elsner QUALIFIED
Misaki D AmigonCanadaOnyama Limba QUALIFIED
Jefferson Z IturbideArgentinaElwin Sharvill NEW
Arvin B KolmetzAustraliaXuxue Feng NEGOTIATION
Nicolas G DilliardArgentinaAmy Elsner PROPOSAL
Francesco O GillianItalyOnyama Limba QUALIFIED
James Q ChuiIndiaOnyama Limba RENEWAL
Salvatore L OldroydAustraliaAmy Elsner RENEWAL
Greenwood N CampainRussiaAmy Elsner QUALIFIED
Misaki E GauchoAustraliaBernardo Dominic QUALIFIED
Salvatore V MorascaUnited KingdomOnyama Limba UNQUALIFIED
Clifford X NestleUnited KingdomStephen Shaw QUALIFIED
Aditya V WhobreyArgentinaBernardo Dominic NEW
Arvin P FlosiIndiaAnna Fali UNQUALIFIED
Costa R SergiItalyBernardo Dominic PROPOSAL
Rodrigues N PaprockiFranceAmy Elsner NEW
David K RoysterArgentinaIvan Magalhaes PROPOSAL
Arvin P ChuiAustraliaAsiya Javayant NEW
Frozen Columns
Name
Adams S Shinko
Mayumi R Rulapaugh
Sinclair I Doe
Smith E Morasca
Costa X Figeroa
Salvatore E Inouye
Murillo Y Caldarera
Adams F Dilliard
Izzy U Inouye
Munro J Ferencz
Adams A Iturbide
Izzy S Gillian
Jeanfrancois Z Paprocki
Silvio Z Maclead
Cody O Stenseth
Aruna X Stockham
Johnson H Nestle
Deepesh X Ostrosky
Aditya W Ostrosky
Misaki V Glick
Francesco W Malet
Faith X Shinko
Aditya R Whobrey
Sinclair P Maclead
Aika M Wieser
Sinclair T Rim
Emily C Briddick
Cody D Maclead
Chavez R Stockham
Morrow X Amigon
Morrow R Bowley
Ashley I Caudy
Jennifer Z Dilliard
Silvio X Malet
Stacey H Vocelka
Jeanfrancois S Morasca
Octavia N Rim
Antonio W Bowley
Sinclair O Sergi
Darci Q Maclead
Jennifer M Foller
Ashley G Glick
Izzy H Malet
Mayumi C Malet
Morrow U Figeroa
Kaitlin P Malet
Aika S Perin
Juan W Caldarera
Mujtaba D Ruta
Leon H Bowley
IdCountryDate
1000France2026-09-16
1001India2026-09-15
1002Argentina2026-09-15
1003Argentina2026-09-14
1004Spain2026-10-10
1005Germany2026-10-05
1006Italy2026-09-22
1007Italy2026-09-20
1008Brazil2026-10-01
1009France2026-09-15
1010Italy2026-09-20
1011United Kingdom2026-10-05
1012Brazil2026-09-15
1013Germany2026-09-25
1014United Kingdom2026-10-11
1015Russia2026-09-24
1016Russia2026-09-23
1017Brazil2026-10-04
1018Spain2026-10-05
1019Russia2026-09-21
1020France2026-10-12
1021Germany2026-10-02
1022Japan2026-09-17
1023Germany2026-09-17
1024United Kingdom2026-09-15
1025Australia2026-09-25
1026Canada2026-09-18
1027United Kingdom2026-09-21
1028Argentina2026-09-30
1029Japan2026-09-30
1030United Kingdom2026-09-16
1031United Kingdom2026-10-10
1032Russia2026-09-13
1033Spain2026-09-22
1034India2026-09-18
1035Argentina2026-09-27
1036Germany2026-10-05
1037Australia2026-09-14
1038Japan2026-09-18
1039Italy2026-09-15
1040Brazil2026-09-25
1041United Kingdom2026-09-29
1042Japan2026-09-13
1043Brazil2026-09-24
1044Canada2026-10-02
1045Germany2026-09-28
1046Spain2026-10-06
1047Russia2026-09-16
1048Canada2026-10-12
1049Argentina2026-09-22

On-Demand Data

NameIdCountryDate
Morrow X Ferencz1000Australia2026-09-15
Nicolas B Kusko1001Russia2026-10-11
Jones A Kusko1002Argentina2026-09-30
Deepesh B Stenseth1003Argentina2026-09-14
James G Figeroa1004Brazil2026-10-03
Ashley G Campain1005Germany2026-09-28
Francesco R Marrier1006Russia2026-09-15
Francesco Y Marrier1007Japan2026-10-12
Salvatore E Tollner1008Germany2026-09-26
David V Morasca1009Russia2026-09-19
Kaitlin R Paprocki1010Japan2026-10-01
Ivar L Shinko1011India2026-09-25
Smith D Tollner1012Brazil2026-10-08
Jones Y Whobrey1013India2026-09-22
Silvio H Briddick1014Russia2026-09-23
Clifford J Amigon1015United Kingdom2026-09-22
Maisha Z Shinko1016Italy2026-09-22
Adams T Royster1017France2026-09-30
Izzy Z Ruta1018France2026-10-12
Maria A Ferencz1019Argentina2026-09-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody U TollnerGermanyAsiya Javayant NEW
David J WieserGermanyXuxue Feng QUALIFIED
Cody U MacleadUnited KingdomAmy Elsner NEGOTIATION
Wickens U GauchoSpainIoni Bowcher RENEWAL
Juan I PerinArgentinaOnyama Limba NEW
Julie I KuskoIndiaAmy Elsner NEGOTIATION
Izzy B OldroydArgentinaAmy Elsner NEW
Francesco M GauchoIndiaElwin Sharvill UNQUALIFIED
Emily F BowleyJapanIvan Magalhaes UNQUALIFIED
Stacey C KuskoFranceStephen Shaw UNQUALIFIED
Isabel V DoeSpainAmy Elsner QUALIFIED
Wickens Q CaldareraIndiaOnyama Limba NEW
Costa G NestleIndiaBernardo Dominic UNQUALIFIED
Ivar V SlusarskiAustraliaElwin Sharvill UNQUALIFIED
Munro V DoeRussiaIoni Bowcher NEGOTIATION
Claire A SchemmerRussiaIoni Bowcher UNQUALIFIED
Darci R FigeroaUnited KingdomBernardo Dominic NEGOTIATION
Mujtaba V NestleUnited KingdomAsiya Javayant PROPOSAL
Octavia H OldroydItalyOnyama Limba RENEWAL
Salvatore C SchemmerJapanIoni Bowcher QUALIFIED
Clifford F BowleyGermanyOnyama Limba QUALIFIED
Kadeem P PaprockiJapanAsiya Javayant RENEWAL
Leon Q SlusarskiUnited KingdomAmy Elsner QUALIFIED
Claire X DilliardCanadaAsiya Javayant RENEWAL
Ashley K FollerRussiaIvan Magalhaes QUALIFIED
Maria Y DoeSpainAnna Fali QUALIFIED
Jeanfrancois M GlickJapanAnna Fali NEW
Alejandro V StockhamRussiaAnna Fali NEGOTIATION
Kadeem P FerenczGermanyStephen Shaw NEGOTIATION
Izzy A ShinkoFranceAnna Fali UNQUALIFIED
Arvin I ShinkoCanadaAmy Elsner NEW
Wickens P DilliardCanadaAsiya Javayant NEW
Antonio C KuskoFranceAnna Fali NEW
Leja S BriddickArgentinaOnyama Limba NEW
Adams Q KuskoAustraliaIoni Bowcher NEW
Misaki D VocelkaIndiaElwin Sharvill NEW
Leon S VocelkaAustraliaAsiya Javayant NEGOTIATION
Tony O MacleadBrazilIoni Bowcher QUALIFIED
Ashley D MarrierSpainAnna Fali QUALIFIED
Jeanfrancois E AlbaresBrazilAmy Elsner 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>