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
Ricardo F NickaBrazilBernardo Dominic NEW
Julie Y BowleyGermanyElwin Sharvill NEGOTIATION
Faith R SaylorsCanadaAsiya Javayant RENEWAL
Antonio F FigeroaAustraliaOnyama Limba NEW
Aditya G DoeRussiaAnna Fali NEW
Wickens D KolmetzItalyXuxue Feng RENEWAL
Kadeem E SergiBrazilBernardo Dominic UNQUALIFIED
Maisha V ButtSpainIoni Bowcher RENEWAL
David Q OstroskyAustraliaAnna Fali PROPOSAL
Antonio W RimIndiaAnna Fali NEW
James S BowleyUnited KingdomAsiya Javayant RENEWAL
Ivar P SchemmerIndiaStephen Shaw NEGOTIATION
Chavez K AmigonJapanOnyama Limba UNQUALIFIED
Kadeem O ShinkoCanadaStephen Shaw UNQUALIFIED
Izzy J FlosiIndiaIoni Bowcher UNQUALIFIED
Claire Z AmigonIndiaBernardo Dominic NEGOTIATION
Alejandro W WaycottFranceAmy Elsner RENEWAL
Costa O BologniaGermanyXuxue Feng QUALIFIED
Stacey L PoquetteFranceIvan Magalhaes UNQUALIFIED
Julie T ShinkoArgentinaIoni Bowcher NEW
Deepesh Q MaletFranceXuxue Feng RENEWAL
Salvatore U DarakjyUnited KingdomStephen Shaw NEW
Misaki S InouyeRussiaStephen Shaw PROPOSAL
Greenwood L WaycottAustraliaStephen Shaw NEW
Jennifer N GauchoArgentinaStephen Shaw NEW
Aika G StockhamAustraliaOnyama Limba PROPOSAL
Alejandro F ButtAustraliaAnna Fali NEW
Clifford Z AmigonAustraliaIoni Bowcher PROPOSAL
Cody V RimUnited KingdomElwin Sharvill NEGOTIATION
Clifford B GlickCanadaIvan Magalhaes NEW
Munro G OldroydIndiaOnyama Limba QUALIFIED
Faith O SlusarskiRussiaIvan Magalhaes UNQUALIFIED
Ashley B DarakjyCanadaOnyama Limba PROPOSAL
Deepesh R GarufiGermanyElwin Sharvill NEGOTIATION
Jeanfrancois U GauchoUnited KingdomElwin Sharvill NEW
Alejandro R KolmetzIndiaAnna Fali UNQUALIFIED
Leon M IturbideSpainAmy Elsner PROPOSAL
Aruna N AmigonJapanElwin Sharvill NEGOTIATION
David E MacleadSpainIvan Magalhaes NEGOTIATION
Kaitlin U NestleBrazilAmy Elsner PROPOSAL
Aditya H PaprockiRussiaIvan Magalhaes QUALIFIED
Sinclair E MacleadUnited KingdomIoni Bowcher PROPOSAL
Misaki V InouyeGermanyXuxue Feng PROPOSAL
Misaki N NestleRussiaElwin Sharvill RENEWAL
Claire E MacleadSpainOnyama Limba UNQUALIFIED
James H MaletIndiaStephen Shaw NEGOTIATION
Jones W FigeroaAustraliaElwin Sharvill PROPOSAL
Misaki V MaletArgentinaOnyama Limba NEW
Greenwood A BologniaRussiaAmy Elsner QUALIFIED
Clifford Z GlickFranceIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Aruna O BologniaSpainAnna Fali UNQUALIFIED
James U FollerGermanyStephen Shaw PROPOSAL
Octavia X AmigonArgentinaAsiya Javayant NEW
Silvio B FlosiBrazilIvan Magalhaes PROPOSAL
David D FollerCanadaStephen Shaw NEW
Faith L PerinAustraliaIoni Bowcher NEGOTIATION
Aruna D WhobreyIndiaElwin Sharvill RENEWAL
Leja I SergiSpainIvan Magalhaes UNQUALIFIED
Octavia X AlbaresBrazilElwin Sharvill NEW
Leon V OldroydCanadaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem P ShinkoCanada2026-09-30Rousseaux, Michael Esq PROPOSAL32Xuxue Feng
1001Octavia S SchemmerAustralia2026-09-19Commercial Press NEGOTIATION13Ioni Bowcher
1002Greenwood U TollnerGermany2026-10-03Feltz Printing Service PROPOSAL95Amy Elsner
1003Julie A CaudyCanada2026-09-27Truhlar And Truhlar Attys NEW77Amy Elsner
1004Clifford O InouyeItaly2026-10-05King, Christopher A Esq UNQUALIFIED23Elwin Sharvill
1005Jeanfrancois M MarrierJapan2026-09-19Printing Dimensions RENEWAL66Anna Fali
1006Leon X SergiSpain2026-10-08Chanay, Jeffrey A Esq NEGOTIATION39Anna Fali
1007Jeanfrancois I OldroydSpain2026-10-14King, Christopher A Esq RENEWAL8Elwin Sharvill
1008Cody V SlusarskiAustralia2026-10-07Morlong Associates PROPOSAL22Ivan Magalhaes
1009Wickens J CampainItaly2026-09-24Dorl, James J Esq NEW40Amy Elsner
1010Tony T VocelkaCanada2026-10-10Chapman, Ross E Esq UNQUALIFIED42Asiya Javayant
1011Maria Z CampainGermany2026-09-29King, Christopher A Esq NEW59Amy Elsner
1012Mayumi Y FlosiArgentina2026-10-14Chanay, Jeffrey A Esq QUALIFIED88Anna Fali
1013Deepesh B GillianRussia2026-10-10Chanay, Jeffrey A Esq RENEWAL11Onyama Limba
1014Leon J ChuiFrance2026-09-15Rangoni Of Florence NEW61Bernardo Dominic
1015Jefferson P FlosiGermany2026-09-27Feltz Printing Service PROPOSAL23Bernardo Dominic
1016Greenwood G VocelkaGermany2026-10-14Buckley Miller Wright RENEWAL17Anna Fali
1017Kadeem Z SergiJapan2026-09-26Buckley Miller Wright QUALIFIED78Ioni Bowcher
1018Izzy N FigeroaItaly2026-10-04Chemel, James L Cpa PROPOSAL19Elwin Sharvill
1019Darci Z SaylorsSpain2026-09-27Rangoni Of Florence NEW0Anna Fali
1020Isabel D MacleadArgentina2026-09-18Rousseaux, Michael Esq NEW78Amy Elsner
1021Ivar Y AmigonUnited Kingdom2026-09-28Buckley Miller Wright UNQUALIFIED51Elwin Sharvill
1022Adams C DoeArgentina2026-09-15Dorl, James J Esq QUALIFIED21Amy Elsner
1023Johnson I OldroydBrazil2026-10-02Chapman, Ross E Esq UNQUALIFIED94Anna Fali
1024Juan J MaletCanada2026-10-03Feltz Printing Service RENEWAL55Stephen Shaw
1025Jefferson E RoysterBrazil2026-10-05Dorl, James J Esq NEGOTIATION5Bernardo Dominic
1026Clifford G SchemmerArgentina2026-09-18Feiner Bros NEW83Anna Fali
1027Johnson B RulapaughCanada2026-09-15Truhlar And Truhlar Attys UNQUALIFIED43Asiya Javayant
1028Clifford J VenereJapan2026-09-17Chanay, Jeffrey A Esq NEGOTIATION28Xuxue Feng
1029Rodrigues J FollerArgentina2026-10-08Rousseaux, Michael Esq NEW95Onyama Limba
1030Costa L PerinBrazil2026-09-18Chemel, James L Cpa PROPOSAL41Anna Fali
1031James G SaylorsAustralia2026-10-11Commercial Press PROPOSAL17Ivan Magalhaes
1032Jones V DoeCanada2026-10-06Benton, John B Jr UNQUALIFIED48Onyama Limba
1033Ricardo D IturbideBrazil2026-10-14King, Christopher A Esq UNQUALIFIED44Ivan Magalhaes
1034Aditya Y SlusarskiItaly2026-10-05Printing Dimensions NEGOTIATION16Asiya Javayant
1035Tony I IturbideAustralia2026-09-23Buckley Miller Wright UNQUALIFIED9Asiya Javayant
1036Misaki F SlusarskiSpain2026-09-17Truhlar And Truhlar Attys UNQUALIFIED80Anna Fali
1037Izzy D DarakjyBrazil2026-09-24Rangoni Of Florence NEGOTIATION68Stephen Shaw
1038Ivar U OldroydJapan2026-09-28Feltz Printing Service PROPOSAL96Bernardo Dominic
1039Jeanfrancois K FigeroaArgentina2026-09-29Morlong Associates PROPOSAL55Asiya Javayant
1040Munro U WaycottItaly2026-09-17Printing Dimensions NEW75Bernardo Dominic
1041Ivar U ButtArgentina2026-09-25Feiner Bros QUALIFIED92Anna Fali
1042Aika C GarufiFrance2026-10-12Morlong Associates PROPOSAL53Asiya Javayant
1043Antonio E GillianGermany2026-09-16Chapman, Ross E Esq QUALIFIED83Anna Fali
1044Greenwood F MarrierGermany2026-10-09Feiner Bros QUALIFIED8Ivan Magalhaes
1045David X ChuiUnited Kingdom2026-10-04Benton, John B Jr UNQUALIFIED3Ioni Bowcher
1046Alejandro K VocelkaJapan2026-10-12Rousseaux, Michael Esq QUALIFIED49Ioni Bowcher
1047Wickens D WieserFrance2026-09-25Feltz Printing Service UNQUALIFIED0Stephen Shaw
1048Leja K StockhamGermany2026-09-18Benton, John B Jr NEW69Stephen Shaw
1049James K WieserBrazil2026-09-19Buckley Miller Wright UNQUALIFIED98Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Adams Q IturbideIndiaAsiya Javayant QUALIFIED
Juan K VocelkaRussiaXuxue Feng NEW
Aika H AmigonGermanyAnna Fali NEGOTIATION
Chavez U BriddickIndiaAmy Elsner QUALIFIED
Antonio U RulapaughUnited KingdomIoni Bowcher PROPOSAL
James O OldroydUnited KingdomOnyama Limba RENEWAL
Smith G ChuiRussiaIoni Bowcher NEW
Aditya Z GillianFranceIvan Magalhaes UNQUALIFIED
Faith M MarrierGermanyElwin Sharvill RENEWAL
Leja F OldroydIndiaIvan Magalhaes QUALIFIED
James Z NickaGermanyStephen Shaw QUALIFIED
Sinclair I VenereUnited KingdomIvan Magalhaes QUALIFIED
Clifford Q WaycottJapanElwin Sharvill PROPOSAL
Jeanfrancois Y PoquetteRussiaElwin Sharvill RENEWAL
Aditya H MorascaUnited KingdomIoni Bowcher QUALIFIED
Cody H OldroydSpainIoni Bowcher NEW
Jennifer Y PaprockiFranceXuxue Feng UNQUALIFIED
Rodrigues W MaletCanadaXuxue Feng NEW
Aruna W SlusarskiArgentinaAmy Elsner NEGOTIATION
Arvin Z GauchoSpainXuxue Feng RENEWAL
Juan T DilliardFranceStephen Shaw NEW
Ricardo Q GlickCanadaAnna Fali UNQUALIFIED
Maisha K FollerGermanyXuxue Feng RENEWAL
Leja V MacleadJapanStephen Shaw PROPOSAL
Wickens O AmigonSpainIoni Bowcher PROPOSAL
Emily L DarakjyAustraliaAsiya Javayant UNQUALIFIED
Misaki P SlusarskiItalyBernardo Dominic NEGOTIATION
Adams S GarufiAustraliaOnyama Limba RENEWAL
Maisha C CampainIndiaXuxue Feng UNQUALIFIED
Francesco L RulapaughJapanIoni Bowcher UNQUALIFIED
Mujtaba F GarufiIndiaIoni Bowcher RENEWAL
Aika K PaprockiBrazilBernardo Dominic NEW
Mayumi M TollnerUnited KingdomAsiya Javayant NEGOTIATION
Cody Y AmigonAustraliaOnyama Limba UNQUALIFIED
Jones H CaldareraArgentinaBernardo Dominic PROPOSAL
Ivar A WaycottIndiaXuxue Feng RENEWAL
Maria S FerenczAustraliaAnna Fali PROPOSAL
Mayumi M NickaAustraliaBernardo Dominic PROPOSAL
Antonio D BologniaGermanyIvan Magalhaes UNQUALIFIED
James T SergiRussiaXuxue Feng NEGOTIATION
Adams P BriddickAustraliaAsiya Javayant UNQUALIFIED
Faith I FollerSpainBernardo Dominic QUALIFIED
Juan G BologniaUnited KingdomAsiya Javayant QUALIFIED
Deepesh Z PaprockiSpainXuxue Feng PROPOSAL
Sinclair K KuskoRussiaIoni Bowcher NEGOTIATION
Darci B FlosiRussiaElwin Sharvill PROPOSAL
Isabel A CaldareraRussiaStephen Shaw UNQUALIFIED
Darci O GillianUnited KingdomXuxue Feng NEW
Julie M OldroydIndiaAnna Fali UNQUALIFIED
Izzy X MorascaSpainStephen Shaw RENEWAL
Frozen Columns
Name
Jennifer A Poquette
Clifford U Whobrey
Deepesh Y Royster
Smith Z Ferencz
Kaitlin I Albares
Mujtaba P Kusko
Octavia I Wieser
Deepesh D Campain
Smith W Malet
Mujtaba Q Rulapaugh
Mayumi H Foller
Antonio T Malet
Kadeem D Albares
Izzy D Malet
Leja J Butt
Octavia G Oldroyd
Julie V Whobrey
Leja S Foller
Aditya T Poquette
Ricardo K Royster
Munro H Bowley
Izzy O Poquette
Deepesh R Albares
Claire F Gillian
Leja P Marrier
Alejandro E Perin
Julie S Caldarera
Mujtaba R Butt
James C Darakjy
Izzy K Whobrey
Greenwood E Iturbide
Emily Z Stenseth
Tony X Darakjy
Munro W Caldarera
Julie B Kolmetz
Sinclair J Doe
Izzy T Saylors
Maisha G Kolmetz
Izzy U Nicka
Jefferson S Nestle
Misaki O Doe
Claire X Venere
Kadeem Y Caudy
Faith K Royster
Cody G Vocelka
Maisha Q Inouye
Salvatore C Campain
Darci A Dilliard
Aruna A Paprocki
Ashley G Campain
IdCountryDate
1000India2026-10-06
1001Spain2026-09-24
1002Germany2026-09-17
1003Germany2026-10-11
1004Spain2026-09-17
1005Spain2026-09-22
1006Brazil2026-09-15
1007France2026-10-08
1008Germany2026-10-11
1009Australia2026-09-16
1010Australia2026-10-07
1011Italy2026-10-11
1012Australia2026-09-24
1013Japan2026-10-11
1014Australia2026-09-29
1015Russia2026-09-17
1016Brazil2026-09-26
1017Canada2026-10-03
1018Russia2026-09-25
1019Brazil2026-09-26
1020United Kingdom2026-10-07
1021Spain2026-09-16
1022Germany2026-10-10
1023Brazil2026-09-19
1024Japan2026-09-26
1025Russia2026-09-15
1026Italy2026-10-06
1027Spain2026-09-18
1028India2026-09-23
1029Russia2026-10-01
1030Australia2026-09-20
1031Canada2026-09-25
1032Argentina2026-09-25
1033Japan2026-09-29
1034India2026-09-19
1035Germany2026-10-11
1036Canada2026-09-16
1037Japan2026-10-01
1038Australia2026-09-19
1039Canada2026-10-02
1040Brazil2026-09-26
1041Germany2026-09-16
1042Japan2026-09-21
1043Argentina2026-10-11
1044Brazil2026-09-16
1045Australia2026-10-06
1046Italy2026-09-29
1047Germany2026-10-06
1048France2026-10-13
1049Italy2026-10-05

On-Demand Data

NameIdCountryDate
Clifford J Dilliard1000France2026-09-29
Cody V Ferencz1001Canada2026-09-18
Sinclair B Iturbide1002Spain2026-09-21
Alejandro H Campain1003Australia2026-10-11
Stacey L Nestle1004Russia2026-09-16
Morrow X Rim1005Russia2026-10-13
David B Malet1006Spain2026-09-28
Aditya K Rim1007Spain2026-09-21
Alejandro T Oldroyd1008Argentina2026-09-22
Johnson K Malet1009France2026-09-23
Leja X Doe1010Argentina2026-09-22
Alejandro K Ostrosky1011Australia2026-09-27
Ivar L Shinko1012Spain2026-10-11
Arvin V Waycott1013Spain2026-09-18
Leja W Amigon1014Brazil2026-10-12
Wickens N Caudy1015Spain2026-09-21
Antonio K Caudy1016India2026-10-12
Antonio E Kolmetz1017Argentina2026-10-04
Alejandro E Oldroyd1018Italy2026-10-13
Aditya I Bolognia1019Spain2026-10-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford T FlosiItalyAnna Fali QUALIFIED
Mujtaba P PerinRussiaElwin Sharvill RENEWAL
Johnson P BriddickGermanyIoni Bowcher PROPOSAL
Aruna S StensethIndiaAnna Fali RENEWAL
Silvio G RulapaughGermanyElwin Sharvill UNQUALIFIED
Jennifer I FerenczRussiaAsiya Javayant RENEWAL
Chavez Q PerinUnited KingdomBernardo Dominic QUALIFIED
Costa W RulapaughItalyOnyama Limba NEW
Ivar V CampainArgentinaElwin Sharvill PROPOSAL
Tony U VocelkaIndiaStephen Shaw PROPOSAL
Ivar S SlusarskiCanadaXuxue Feng PROPOSAL
Octavia U FollerSpainElwin Sharvill QUALIFIED
Darci T WieserGermanyStephen Shaw RENEWAL
Leon F BriddickItalyIoni Bowcher QUALIFIED
Adams H StockhamSpainXuxue Feng PROPOSAL
Stacey W RutaJapanAsiya Javayant NEGOTIATION
Ivar U ButtFranceElwin Sharvill RENEWAL
Maisha V WieserGermanyAsiya Javayant NEW
Ivar X BologniaItalyAmy Elsner PROPOSAL
Clifford L FerenczItalyIoni Bowcher UNQUALIFIED
Morrow B ChuiJapanIoni Bowcher RENEWAL
Jones M FerenczCanadaElwin Sharvill PROPOSAL
Adams Y SlusarskiUnited KingdomAsiya Javayant NEGOTIATION
Arvin X PoquetteCanadaIvan Magalhaes RENEWAL
Emily E FollerJapanOnyama Limba UNQUALIFIED
Jones T SaylorsFranceBernardo Dominic NEGOTIATION
Claire S ShinkoSpainIvan Magalhaes NEW
Maria C CaldareraAustraliaOnyama Limba RENEWAL
Aruna P InouyeRussiaIoni Bowcher UNQUALIFIED
Costa I SaylorsIndiaElwin Sharvill QUALIFIED
Deepesh U BriddickUnited KingdomAsiya Javayant PROPOSAL
Isabel Q CaudyJapanXuxue Feng PROPOSAL
Antonio N SlusarskiItalyStephen Shaw NEGOTIATION
Clifford B WhobreyItalyIvan Magalhaes PROPOSAL
Julie F AlbaresItalyOnyama Limba NEW
Darci N PerinBrazilIvan Magalhaes NEW
Antonio J DoeUnited KingdomBernardo Dominic PROPOSAL
Aika A StensethBrazilAnna Fali NEW
Julie K ChuiIndiaOnyama Limba UNQUALIFIED
Juan P FigeroaArgentinaXuxue Feng 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>