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
Greenwood L DarakjyGermanyStephen Shaw UNQUALIFIED
Misaki M AlbaresCanadaStephen Shaw PROPOSAL
Greenwood H KuskoJapanOnyama Limba QUALIFIED
Ashley E AmigonIndiaAnna Fali NEW
Ashley F GillianGermanyAmy Elsner RENEWAL
Aditya T NestleFranceIvan Magalhaes PROPOSAL
Arvin U RulapaughAustraliaXuxue Feng PROPOSAL
Misaki W FerenczBrazilXuxue Feng UNQUALIFIED
Aruna N SaylorsUnited KingdomIoni Bowcher RENEWAL
Emily Z CaudyAustraliaBernardo Dominic RENEWAL
Jefferson B WhobreyUnited KingdomIoni Bowcher QUALIFIED
Kaitlin O ShinkoAustraliaElwin Sharvill PROPOSAL
Juan P FigeroaUnited KingdomElwin Sharvill UNQUALIFIED
Ashley S GillianGermanyAmy Elsner UNQUALIFIED
Misaki O FigeroaFranceBernardo Dominic UNQUALIFIED
Aditya P StockhamArgentinaStephen Shaw NEW
Octavia Z OldroydBrazilIvan Magalhaes NEW
Darci R CampainCanadaAsiya Javayant QUALIFIED
Kadeem R RoysterAustraliaIoni Bowcher QUALIFIED
Antonio P StensethAustraliaStephen Shaw PROPOSAL
Johnson G KuskoFranceBernardo Dominic UNQUALIFIED
Izzy U CampainFranceAsiya Javayant PROPOSAL
Julie Z NestleBrazilIvan Magalhaes NEGOTIATION
Arvin N BologniaCanadaAnna Fali UNQUALIFIED
Ashley F DilliardBrazilElwin Sharvill PROPOSAL
Tony P BriddickAustraliaStephen Shaw QUALIFIED
Leon O FerenczArgentinaBernardo Dominic UNQUALIFIED
Greenwood L NickaArgentinaIoni Bowcher NEW
Deepesh Y FollerCanadaElwin Sharvill NEGOTIATION
Isabel W ShinkoArgentinaBernardo Dominic UNQUALIFIED
Francesco V KolmetzRussiaIvan Magalhaes NEGOTIATION
Morrow B StensethJapanElwin Sharvill UNQUALIFIED
Stacey E WhobreyArgentinaXuxue Feng RENEWAL
David Z CaudyIndiaElwin Sharvill RENEWAL
Aditya K SchemmerAustraliaAnna Fali RENEWAL
Salvatore T MarrierSpainXuxue Feng UNQUALIFIED
Kaitlin Q BowleyJapanXuxue Feng NEGOTIATION
Alejandro P PaprockiJapanAsiya Javayant PROPOSAL
Alejandro D GlickArgentinaAsiya Javayant QUALIFIED
Munro Q CaldareraItalyAmy Elsner PROPOSAL
Clifford H DilliardBrazilElwin Sharvill RENEWAL
Aruna Z NestleBrazilElwin Sharvill QUALIFIED
Maria E BowleyGermanyAnna Fali QUALIFIED
Mujtaba W FerenczBrazilOnyama Limba QUALIFIED
Aika C OldroydUnited KingdomOnyama Limba NEGOTIATION
Rodrigues X GarufiFranceXuxue Feng QUALIFIED
Faith S GlickIndiaStephen Shaw QUALIFIED
Maria I VenereCanadaStephen Shaw PROPOSAL
Aditya W PerinAustraliaIvan Magalhaes RENEWAL
Jones S SlusarskiFranceBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin P RoysterGermanyXuxue Feng QUALIFIED
Leon H AmigonArgentinaXuxue Feng PROPOSAL
Sinclair I DilliardArgentinaIvan Magalhaes UNQUALIFIED
Jefferson Y BriddickRussiaXuxue Feng NEW
Aruna S BriddickItalyAsiya Javayant UNQUALIFIED
Stacey P RulapaughSpainIvan Magalhaes PROPOSAL
Kadeem W RimCanadaAmy Elsner NEGOTIATION
Aditya I OldroydJapanAnna Fali UNQUALIFIED
James R NestleCanadaAsiya Javayant PROPOSAL
David Z RoysterAustraliaAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams H GauchoAustralia2026-11-12Truhlar And Truhlar Attys NEGOTIATION88Anna Fali
1001Julie G IturbideIndia2026-11-10Rangoni Of Florence NEW14Asiya Javayant
1002Alejandro N AlbaresIndia2026-10-20Chemel, James L Cpa NEGOTIATION87Anna Fali
1003Juan Q FollerFrance2026-11-03Truhlar And Truhlar Attys NEW85Ioni Bowcher
1004Johnson W SlusarskiArgentina2026-11-12Chanay, Jeffrey A Esq NEW5Stephen Shaw
1005Cody E BriddickIndia2026-10-29Dorl, James J Esq NEW11Stephen Shaw
1006Costa A WieserFrance2026-11-07Rousseaux, Michael Esq RENEWAL0Ivan Magalhaes
1007Jefferson C MarrierAustralia2026-11-01Commercial Press NEW78Onyama Limba
1008Jones K MacleadItaly2026-10-31Chapman, Ross E Esq QUALIFIED10Elwin Sharvill
1009Murillo D MaletGermany2026-11-06King, Christopher A Esq UNQUALIFIED69Ioni Bowcher
1010Greenwood T GlickUnited Kingdom2026-11-04Buckley Miller Wright NEW89Asiya Javayant
1011Mayumi M FigeroaUnited Kingdom2026-10-23Printing Dimensions NEW34Anna Fali
1012Stacey N CampainCanada2026-10-18Chapman, Ross E Esq RENEWAL1Amy Elsner
1013Francesco Y MarrierBrazil2026-10-14Feltz Printing Service UNQUALIFIED28Anna Fali
1014Johnson R ButtJapan2026-10-29Dorl, James J Esq QUALIFIED34Asiya Javayant
1015Sinclair T FlosiCanada2026-11-02Printing Dimensions NEGOTIATION0Amy Elsner
1016Jeanfrancois G StensethRussia2026-11-06Feiner Bros RENEWAL48Elwin Sharvill
1017James L WieserAustralia2026-11-11Printing Dimensions RENEWAL40Bernardo Dominic
1018Costa O CaudyIndia2026-10-21Feltz Printing Service UNQUALIFIED83Ivan Magalhaes
1019Isabel Q VocelkaGermany2026-10-30Rousseaux, Michael Esq NEW94Anna Fali
1020Silvio X DarakjyJapan2026-10-17Feltz Printing Service PROPOSAL61Xuxue Feng
1021Wickens W ShinkoSpain2026-10-28Printing Dimensions NEGOTIATION53Ioni Bowcher
1022Ricardo K ChuiFrance2026-11-06King, Christopher A Esq NEW48Elwin Sharvill
1023Adams R CampainBrazil2026-10-25Commercial Press UNQUALIFIED10Elwin Sharvill
1024Adams X CaldareraBrazil2026-10-16Feltz Printing Service QUALIFIED4Xuxue Feng
1025Clifford F KuskoCanada2026-11-08Commercial Press NEGOTIATION32Xuxue Feng
1026Alejandro I ShinkoFrance2026-11-09King, Christopher A Esq PROPOSAL98Xuxue Feng
1027Greenwood X BologniaBrazil2026-10-30Chemel, James L Cpa PROPOSAL1Ivan Magalhaes
1028James B DilliardSpain2026-10-21Commercial Press PROPOSAL37Amy Elsner
1029Wickens R ButtItaly2026-10-29Morlong Associates UNQUALIFIED3Elwin Sharvill
1030Jennifer E ChuiUnited Kingdom2026-10-16Feltz Printing Service PROPOSAL99Ioni Bowcher
1031Salvatore B CaldareraBrazil2026-10-26Rangoni Of Florence PROPOSAL90Ivan Magalhaes
1032Claire L GauchoRussia2026-10-28Feiner Bros QUALIFIED71Onyama Limba
1033Julie X SergiRussia2026-10-31Rousseaux, Michael Esq QUALIFIED42Stephen Shaw
1034Salvatore T RulapaughArgentina2026-10-18Chanay, Jeffrey A Esq PROPOSAL58Asiya Javayant
1035Antonio R GarufiJapan2026-11-04Truhlar And Truhlar Attys QUALIFIED4Ioni Bowcher
1036Juan O ChuiRussia2026-11-11King, Christopher A Esq NEGOTIATION23Amy Elsner
1037Faith G PerinGermany2026-11-06Buckley Miller Wright QUALIFIED65Anna Fali
1038Leon Q PerinItaly2026-11-06Morlong Associates QUALIFIED47Ivan Magalhaes
1039Jeanfrancois U RulapaughBrazil2026-11-08King, Christopher A Esq PROPOSAL67Elwin Sharvill
1040Arvin G BowleySpain2026-11-04Dorl, James J Esq QUALIFIED7Onyama Limba
1041Wickens R FlosiUnited Kingdom2026-10-21Rousseaux, Michael Esq UNQUALIFIED27Xuxue Feng
1042Murillo I RimArgentina2026-11-05Feltz Printing Service RENEWAL13Xuxue Feng
1043Ivar D GillianJapan2026-10-27Rangoni Of Florence QUALIFIED43Anna Fali
1044Faith L KolmetzUnited Kingdom2026-11-01Rangoni Of Florence NEGOTIATION80Anna Fali
1045Izzy S RoysterArgentina2026-11-09Commercial Press UNQUALIFIED86Anna Fali
1046Ricardo R FlosiItaly2026-11-09Morlong Associates UNQUALIFIED15Onyama Limba
1047Sinclair H GarufiItaly2026-10-27Truhlar And Truhlar Attys NEGOTIATION44Amy Elsner
1048Sinclair A RoysterJapan2026-10-26Printing Dimensions RENEWAL66Elwin Sharvill
1049Kaitlin M DilliardRussia2026-10-31Chanay, Jeffrey A Esq NEW99Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Johnson Y BriddickUnited KingdomAsiya Javayant UNQUALIFIED
Morrow T CaldareraIndiaIoni Bowcher NEW
Darci X MaletBrazilAsiya Javayant PROPOSAL
Costa S KuskoAustraliaOnyama Limba NEGOTIATION
Aditya T SlusarskiItalyElwin Sharvill NEW
Nicolas V VenereGermanyBernardo Dominic NEGOTIATION
Alejandro K AlbaresIndiaIvan Magalhaes NEGOTIATION
Faith M OldroydGermanyStephen Shaw RENEWAL
Izzy E AmigonJapanXuxue Feng RENEWAL
Johnson X RutaItalyXuxue Feng NEW
Murillo R NestleJapanElwin Sharvill NEGOTIATION
Tony O OldroydArgentinaBernardo Dominic QUALIFIED
Isabel R VenereFranceAsiya Javayant QUALIFIED
Alejandro V SaylorsGermanyIvan Magalhaes QUALIFIED
Nicolas Z KolmetzBrazilOnyama Limba NEW
Stacey R KolmetzItalyStephen Shaw NEW
Ivar X CampainBrazilAsiya Javayant PROPOSAL
Ricardo U DoeBrazilXuxue Feng NEW
Kadeem J WhobreyBrazilIvan Magalhaes UNQUALIFIED
David Q OldroydArgentinaAmy Elsner RENEWAL
Jennifer Z MaletArgentinaIvan Magalhaes QUALIFIED
Greenwood O StensethFranceElwin Sharvill NEW
Deepesh U CaudyRussiaXuxue Feng UNQUALIFIED
Chavez X CampainAustraliaXuxue Feng PROPOSAL
Octavia E TollnerFranceElwin Sharvill PROPOSAL
Adams D PoquetteIndiaAnna Fali NEW
Claire B AmigonRussiaOnyama Limba PROPOSAL
Maisha J MorascaBrazilAmy Elsner NEW
Deepesh I RimSpainElwin Sharvill QUALIFIED
Misaki R WaycottJapanElwin Sharvill NEW
Leon Q GauchoSpainIoni Bowcher QUALIFIED
Antonio T CaldareraUnited KingdomAmy Elsner UNQUALIFIED
Emily C BologniaSpainOnyama Limba QUALIFIED
Stacey I ButtBrazilXuxue Feng NEW
James F OstroskyRussiaBernardo Dominic PROPOSAL
Morrow H MorascaJapanOnyama Limba QUALIFIED
Ricardo Y MacleadBrazilStephen Shaw NEGOTIATION
Ivar Z NickaBrazilAsiya Javayant NEW
Munro D WhobreyUnited KingdomOnyama Limba RENEWAL
Izzy V NickaJapanAmy Elsner UNQUALIFIED
Chavez Y StensethItalyAsiya Javayant UNQUALIFIED
Juan K WieserArgentinaAsiya Javayant NEW
Izzy O WieserBrazilBernardo Dominic QUALIFIED
Leja O AlbaresJapanAnna Fali UNQUALIFIED
Misaki A DarakjyGermanyIvan Magalhaes NEW
James J TollnerAustraliaXuxue Feng PROPOSAL
Leja Z PerinFranceElwin Sharvill QUALIFIED
Johnson S AmigonIndiaStephen Shaw NEW
Misaki R WieserCanadaAmy Elsner RENEWAL
Silvio H GlickSpainIoni Bowcher NEW
Frozen Columns
Name
Darci W Caudy
Mayumi N Malet
Emily S Tollner
Leon O Oldroyd
Faith B Dilliard
Nicolas O Dilliard
Jeanfrancois J Caudy
Jeanfrancois M Malet
Silvio J Ferencz
Julie W Wieser
Leja U Caudy
Octavia H Garufi
Clifford C Rulapaugh
Maisha E Kusko
Alejandro Y Campain
Sinclair J Waycott
Morrow Q Waycott
Mujtaba I Malet
Clifford A Gillian
Alejandro X Poquette
Greenwood C Tollner
Darci Z Iturbide
Mujtaba F Perin
Ashley J Kolmetz
Chavez A Butt
James E Glick
Maria Y Campain
Silvio G Paprocki
Ivar C Stockham
Morrow E Kolmetz
Ivar Q Gillian
Darci X Nestle
Sinclair A Ferencz
Tony G Campain
Leon M Kusko
Wickens Q Gaucho
David V Campain
Greenwood L Whobrey
Rodrigues Q Marrier
Claire Z Paprocki
Costa T Kusko
Tony J Waycott
Isabel P Perin
Ashley R Ruta
Salvatore A Maclead
Tony Y Perin
Kadeem W Stenseth
Murillo K Amigon
Tony V Chui
Johnson B Oldroyd
IdCountryDate
1000Italy2026-10-21
1001Australia2026-10-19
1002Russia2026-10-20
1003Brazil2026-11-06
1004France2026-10-28
1005Spain2026-11-05
1006Japan2026-10-27
1007India2026-10-27
1008Argentina2026-10-20
1009Germany2026-11-12
1010India2026-11-04
1011Canada2026-10-16
1012Argentina2026-11-02
1013France2026-10-28
1014Argentina2026-10-21
1015United Kingdom2026-10-26
1016Germany2026-11-04
1017Japan2026-10-29
1018United Kingdom2026-10-21
1019India2026-11-02
1020Canada2026-10-30
1021Brazil2026-10-31
1022India2026-10-21
1023Germany2026-10-18
1024United Kingdom2026-10-30
1025Germany2026-10-22
1026Russia2026-10-28
1027Japan2026-10-15
1028Argentina2026-10-15
1029Australia2026-10-19
1030Japan2026-11-11
1031France2026-10-31
1032Spain2026-10-29
1033India2026-10-14
1034Italy2026-11-02
1035United Kingdom2026-10-20
1036Germany2026-10-14
1037Brazil2026-10-23
1038United Kingdom2026-10-15
1039Brazil2026-10-18
1040India2026-10-31
1041Brazil2026-11-06
1042Germany2026-10-31
1043Italy2026-10-31
1044Australia2026-11-02
1045Japan2026-11-08
1046Russia2026-10-28
1047Brazil2026-11-02
1048Brazil2026-10-26
1049Germany2026-10-29

On-Demand Data

NameIdCountryDate
Mayumi B Schemmer1000United Kingdom2026-10-15
Aruna W Flosi1001Germany2026-10-29
Ashley Z Flosi1002France2026-10-19
Cody H Gillian1003Japan2026-10-14
Isabel M Kusko1004Argentina2026-10-31
Antonio N Venere1005Brazil2026-10-30
Juan P Maclead1006Italy2026-10-22
Octavia E Venere1007United Kingdom2026-11-09
Aruna W Doe1008Italy2026-11-09
Leja Z Bowley1009India2026-10-15
Jefferson G Glick1010Spain2026-11-11
Francesco Q Maclead1011Japan2026-11-11
Kadeem J Figeroa1012Italy2026-11-06
David M Amigon1013Argentina2026-10-27
Jennifer F Darakjy1014Brazil2026-10-19
Morrow X Amigon1015Italy2026-10-24
Kadeem S Malet1016Italy2026-11-02
Munro Z Iturbide1017France2026-10-16
Morrow Q Bowley1018Brazil2026-11-08
Kadeem X Schemmer1019Russia2026-11-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie L AmigonRussiaXuxue Feng PROPOSAL
Francesco A WieserSpainStephen Shaw QUALIFIED
Smith E GauchoUnited KingdomStephen Shaw PROPOSAL
Deepesh Y DarakjyBrazilStephen Shaw RENEWAL
Arvin E WieserGermanyAnna Fali NEW
Ashley T BriddickSpainOnyama Limba RENEWAL
Kaitlin B SchemmerRussiaAmy Elsner NEW
Stacey T RimIndiaIoni Bowcher NEW
Adams G StensethCanadaAmy Elsner NEW
Leon N RoysterArgentinaElwin Sharvill NEGOTIATION
Misaki F DilliardFranceBernardo Dominic QUALIFIED
Jefferson F FollerJapanOnyama Limba NEGOTIATION
Aika V NestleBrazilBernardo Dominic NEGOTIATION
Antonio B FlosiJapanStephen Shaw UNQUALIFIED
Francesco B VenereJapanAsiya Javayant QUALIFIED
Ashley U FlosiRussiaIvan Magalhaes PROPOSAL
James D VenereSpainIoni Bowcher NEW
Morrow S MacleadUnited KingdomAnna Fali RENEWAL
David C StockhamGermanyBernardo Dominic NEW
Johnson H PaprockiBrazilBernardo Dominic QUALIFIED
Jennifer U FerenczJapanElwin Sharvill UNQUALIFIED
Darci F MaletArgentinaIvan Magalhaes PROPOSAL
Octavia P BologniaSpainAnna Fali PROPOSAL
David O FlosiItalyIoni Bowcher QUALIFIED
Alejandro I ChuiUnited KingdomAmy Elsner RENEWAL
Mujtaba L FollerUnited KingdomElwin Sharvill NEGOTIATION
Chavez B TollnerBrazilElwin Sharvill NEW
Jefferson O NickaUnited KingdomOnyama Limba UNQUALIFIED
Misaki W PoquetteGermanyXuxue Feng UNQUALIFIED
Wickens W TollnerSpainXuxue Feng NEGOTIATION
Sinclair G BowleyRussiaXuxue Feng RENEWAL
Alejandro E PerinIndiaElwin Sharvill PROPOSAL
Aditya S GillianFranceStephen Shaw PROPOSAL
Rodrigues C RimAustraliaOnyama Limba NEGOTIATION
Julie B IturbideAustraliaBernardo Dominic NEGOTIATION
Aditya P AlbaresArgentinaElwin Sharvill QUALIFIED
Jefferson J BowleyAustraliaElwin Sharvill RENEWAL
Darci H StockhamRussiaXuxue Feng NEGOTIATION
Rodrigues U FigeroaFranceOnyama Limba NEW
Izzy P AmigonBrazilBernardo Dominic 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>