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
Maria T ShinkoArgentinaAsiya Javayant PROPOSAL
Misaki E SchemmerUnited KingdomXuxue Feng NEW
Kadeem W StockhamItalyAnna Fali PROPOSAL
Leon E MacleadIndiaIoni Bowcher QUALIFIED
Ashley C KuskoFranceIoni Bowcher NEGOTIATION
Emily W RimRussiaIoni Bowcher UNQUALIFIED
Johnson G KuskoCanadaOnyama Limba QUALIFIED
Antonio G BriddickGermanyAmy Elsner NEGOTIATION
Jeanfrancois J MaletGermanyIvan Magalhaes PROPOSAL
Julie J MarrierRussiaIoni Bowcher NEW
Jones U ButtFranceOnyama Limba NEW
Jones P AmigonAustraliaAsiya Javayant QUALIFIED
Munro H InouyeFranceIoni Bowcher UNQUALIFIED
Mujtaba A GarufiItalyAnna Fali QUALIFIED
Tony U FigeroaItalyOnyama Limba UNQUALIFIED
Maisha N MaletSpainXuxue Feng RENEWAL
Leja Z CampainGermanyAmy Elsner NEGOTIATION
Deepesh N OldroydIndiaAnna Fali UNQUALIFIED
Antonio X InouyeSpainOnyama Limba NEW
Wickens M StockhamSpainAsiya Javayant NEGOTIATION
Mayumi P ChuiJapanOnyama Limba RENEWAL
Leon N WaycottJapanOnyama Limba QUALIFIED
Maisha Z RutaRussiaBernardo Dominic NEGOTIATION
Ashley E InouyeFranceAnna Fali PROPOSAL
Morrow D KolmetzSpainElwin Sharvill NEW
Maisha B RulapaughJapanIvan Magalhaes QUALIFIED
Octavia C FerenczAustraliaAnna Fali RENEWAL
Misaki G PoquetteJapanIvan Magalhaes QUALIFIED
Alejandro T FlosiCanadaIoni Bowcher NEW
Jeanfrancois E NestleItalyAmy Elsner QUALIFIED
Octavia R FollerBrazilAmy Elsner NEGOTIATION
Ivar Q SlusarskiJapanAnna Fali NEW
Maisha A RutaBrazilBernardo Dominic NEGOTIATION
Costa C MaletUnited KingdomAsiya Javayant QUALIFIED
Ricardo Z DarakjyArgentinaXuxue Feng QUALIFIED
Alejandro O PoquetteJapanBernardo Dominic NEGOTIATION
Smith X GarufiSpainIvan Magalhaes NEW
Julie H PaprockiRussiaOnyama Limba QUALIFIED
Faith C BriddickIndiaIvan Magalhaes NEGOTIATION
Sinclair B StensethFranceBernardo Dominic NEW
Emily H AlbaresUnited KingdomIvan Magalhaes RENEWAL
Mujtaba K CampainAustraliaStephen Shaw NEGOTIATION
Smith B IturbideGermanyStephen Shaw PROPOSAL
Deepesh M GlickIndiaIoni Bowcher NEGOTIATION
Jeanfrancois W IturbideIndiaAmy Elsner UNQUALIFIED
Aditya U PoquetteCanadaXuxue Feng PROPOSAL
Adams P FollerBrazilAnna Fali QUALIFIED
Leon J KuskoGermanyIvan Magalhaes RENEWAL
Chavez A CampainBrazilXuxue Feng RENEWAL
Costa K MacleadArgentinaXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Faith I DoeJapanAmy Elsner RENEWAL
Aruna W GauchoUnited KingdomAnna Fali RENEWAL
Maria I GlickCanadaIvan Magalhaes NEW
Clifford P BowleyArgentinaAmy Elsner UNQUALIFIED
Aruna D MaletGermanyAmy Elsner RENEWAL
Faith H OldroydAustraliaOnyama Limba QUALIFIED
Murillo T PerinRussiaXuxue Feng PROPOSAL
Jefferson S IturbideJapanIvan Magalhaes QUALIFIED
Clifford E RulapaughIndiaStephen Shaw NEGOTIATION
James C BowleyCanadaAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood X FigeroaRussia2026-10-19Commercial Press UNQUALIFIED96Ioni Bowcher
1001Silvio S DilliardAustralia2026-10-04Benton, John B Jr NEGOTIATION62Asiya Javayant
1002Aruna O StockhamBrazil2026-10-23Chemel, James L Cpa QUALIFIED73Amy Elsner
1003Munro X DilliardAustralia2026-10-05King, Christopher A Esq NEGOTIATION30Asiya Javayant
1004Ivar R GillianSpain2026-10-15Feltz Printing Service NEGOTIATION86Stephen Shaw
1005Leja X WaycottFrance2026-10-01King, Christopher A Esq PROPOSAL5Amy Elsner
1006Salvatore Z RimCanada2026-10-05Feltz Printing Service NEGOTIATION4Amy Elsner
1007Aika O BologniaFrance2026-10-15Commercial Press PROPOSAL22Elwin Sharvill
1008Maisha C StensethItaly2026-10-01Commercial Press PROPOSAL71Onyama Limba
1009Rodrigues L FigeroaSpain2026-10-23Chanay, Jeffrey A Esq NEW26Asiya Javayant
1010Arvin T RoysterJapan2026-10-23Feltz Printing Service PROPOSAL28Anna Fali
1011Smith J MorascaArgentina2026-10-14Buckley Miller Wright RENEWAL25Asiya Javayant
1012Izzy E MaletJapan2026-10-01Feiner Bros PROPOSAL95Xuxue Feng
1013Salvatore W PoquetteSpain2026-10-05Feltz Printing Service UNQUALIFIED3Asiya Javayant
1014Costa T MarrierJapan2026-10-10Chemel, James L Cpa UNQUALIFIED74Asiya Javayant
1015Costa W SlusarskiJapan2026-09-27Chanay, Jeffrey A Esq PROPOSAL77Onyama Limba
1016Arvin F ButtIndia2026-10-08Truhlar And Truhlar Attys UNQUALIFIED42Ioni Bowcher
1017James E SlusarskiRussia2026-10-15Feiner Bros NEW5Elwin Sharvill
1018Isabel E AlbaresArgentina2026-10-16Chapman, Ross E Esq RENEWAL95Bernardo Dominic
1019Arvin E SlusarskiIndia2026-10-09Printing Dimensions NEGOTIATION61Elwin Sharvill
1020Smith E SergiUnited Kingdom2026-10-20Commercial Press NEW27Onyama Limba
1021Smith Z BowleyRussia2026-10-12Feltz Printing Service PROPOSAL38Asiya Javayant
1022Munro G DarakjyJapan2026-10-12Feiner Bros NEW38Amy Elsner
1023Maisha M NestleGermany2026-10-09Dorl, James J Esq PROPOSAL75Amy Elsner
1024Sinclair Z ButtIndia2026-10-16King, Christopher A Esq RENEWAL66Ivan Magalhaes
1025Francesco A GarufiArgentina2026-10-05Rousseaux, Michael Esq RENEWAL88Anna Fali
1026Nicolas Z VenereAustralia2026-10-09Morlong Associates QUALIFIED8Asiya Javayant
1027Misaki K OldroydRussia2026-10-18Commercial Press PROPOSAL77Xuxue Feng
1028Isabel R GarufiArgentina2026-10-13King, Christopher A Esq QUALIFIED74Anna Fali
1029Smith P BowleyIndia2026-09-27Chanay, Jeffrey A Esq NEW61Onyama Limba
1030Tony W DilliardBrazil2026-10-18Feltz Printing Service NEGOTIATION70Asiya Javayant
1031Chavez M InouyeJapan2026-10-05Feltz Printing Service NEGOTIATION19Elwin Sharvill
1032Sinclair D GillianRussia2026-10-03Feiner Bros QUALIFIED44Ioni Bowcher
1033Izzy I ChuiIndia2026-10-11Commercial Press NEW52Xuxue Feng
1034Costa O ShinkoFrance2026-10-16King, Christopher A Esq PROPOSAL10Xuxue Feng
1035Stacey M CampainFrance2026-09-29Truhlar And Truhlar Attys NEGOTIATION48Xuxue Feng
1036Sinclair I MarrierBrazil2026-10-05Printing Dimensions NEGOTIATION86Amy Elsner
1037Adams S BowleySpain2026-10-19Chanay, Jeffrey A Esq QUALIFIED51Asiya Javayant
1038Tony X PerinUnited Kingdom2026-10-22Printing Dimensions RENEWAL95Stephen Shaw
1039Juan S RutaCanada2026-10-24Chanay, Jeffrey A Esq NEGOTIATION68Onyama Limba
1040Aditya T StockhamGermany2026-10-15Printing Dimensions RENEWAL7Onyama Limba
1041Nicolas M SaylorsCanada2026-10-13Benton, John B Jr RENEWAL13Xuxue Feng
1042Izzy O WaycottJapan2026-10-20Buckley Miller Wright PROPOSAL3Ioni Bowcher
1043Aditya Q MaletSpain2026-10-22Morlong Associates UNQUALIFIED55Ioni Bowcher
1044Emily Y MaletAustralia2026-10-13Feiner Bros NEGOTIATION74Anna Fali
1045Sinclair J DoeJapan2026-10-12Dorl, James J Esq NEW93Ioni Bowcher
1046Ashley B BriddickJapan2026-10-17Printing Dimensions RENEWAL73Anna Fali
1047Greenwood W SaylorsJapan2026-09-28Feltz Printing Service RENEWAL60Elwin Sharvill
1048Octavia Z SchemmerCanada2026-10-16Chemel, James L Cpa NEW3Bernardo Dominic
1049Morrow M NickaAustralia2026-10-20King, Christopher A Esq NEGOTIATION42Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Octavia H DilliardFranceAmy Elsner UNQUALIFIED
Rodrigues M SergiCanadaBernardo Dominic UNQUALIFIED
Maisha M FigeroaSpainIvan Magalhaes UNQUALIFIED
Adams H DilliardIndiaAsiya Javayant QUALIFIED
Emily P MarrierRussiaStephen Shaw RENEWAL
Julie U IturbideAustraliaOnyama Limba UNQUALIFIED
Ivar Z PoquetteFranceIoni Bowcher NEW
Murillo H WaycottBrazilAsiya Javayant PROPOSAL
Wickens F CaldareraGermanyIoni Bowcher RENEWAL
Rodrigues D NestleJapanElwin Sharvill UNQUALIFIED
Jones V BowleyArgentinaOnyama Limba QUALIFIED
Salvatore W GillianItalyAmy Elsner PROPOSAL
Juan V ShinkoGermanyOnyama Limba RENEWAL
Aruna H RoysterUnited KingdomAsiya Javayant NEW
Jennifer S DilliardArgentinaStephen Shaw RENEWAL
James F FlosiUnited KingdomIoni Bowcher NEW
Nicolas I GillianSpainIoni Bowcher NEGOTIATION
Jeanfrancois T OstroskyFranceIvan Magalhaes NEGOTIATION
Julie O DarakjyFranceAsiya Javayant PROPOSAL
Juan K ShinkoRussiaAmy Elsner PROPOSAL
Cody R WieserUnited KingdomElwin Sharvill QUALIFIED
Morrow M FlosiBrazilAmy Elsner NEGOTIATION
Aika V FerenczSpainElwin Sharvill NEW
Leja B PaprockiBrazilAnna Fali UNQUALIFIED
Silvio T DilliardRussiaAmy Elsner RENEWAL
Maisha M InouyeGermanyElwin Sharvill QUALIFIED
Stacey Q CampainFranceOnyama Limba PROPOSAL
Kaitlin P DarakjyGermanyBernardo Dominic NEGOTIATION
Alejandro Y VocelkaIndiaIoni Bowcher NEGOTIATION
Murillo D WieserIndiaXuxue Feng QUALIFIED
Clifford B MacleadItalyAnna Fali UNQUALIFIED
Adams U FollerGermanyXuxue Feng NEGOTIATION
Ashley N StensethSpainOnyama Limba NEW
Jones E GarufiJapanAnna Fali QUALIFIED
Darci G FollerAustraliaAsiya Javayant RENEWAL
Wickens L MarrierFranceStephen Shaw UNQUALIFIED
Antonio G DoeAustraliaXuxue Feng UNQUALIFIED
Izzy V FlosiFranceAnna Fali PROPOSAL
Misaki D RoysterArgentinaAnna Fali RENEWAL
Munro C VocelkaFranceAsiya Javayant NEW
Juan M DarakjyJapanBernardo Dominic UNQUALIFIED
Rodrigues C RutaFranceIoni Bowcher PROPOSAL
David E FlosiItalyAmy Elsner RENEWAL
Salvatore T CampainIndiaAsiya Javayant NEW
Mujtaba W KuskoAustraliaOnyama Limba NEGOTIATION
Sinclair B FollerGermanyOnyama Limba UNQUALIFIED
Darci Z IturbideCanadaAnna Fali PROPOSAL
Isabel U TollnerIndiaStephen Shaw PROPOSAL
Jefferson G BowleyIndiaStephen Shaw NEGOTIATION
Salvatore C RimJapanElwin Sharvill NEGOTIATION
Frozen Columns
Name
Ricardo L Foller
Faith O Shinko
Jones Y Figeroa
Morrow F Glick
Maria H Doe
Darci J Albares
David R Campain
Isabel L Albares
Maria O Sergi
Smith W Dilliard
Jeanfrancois J Tollner
Mayumi V Poquette
Tony Q Caudy
Clifford M Wieser
David D Iturbide
Jeanfrancois S Glick
Smith X Morasca
Stacey E Dilliard
Juan R Gaucho
Clifford C Morasca
Julie C Rim
Ashley Q Gillian
Jefferson D Tollner
Faith C Stenseth
Leon E Glick
Murillo K Kolmetz
Silvio R Oldroyd
Ricardo I Ostrosky
Jones G Oldroyd
Jeanfrancois C Oldroyd
Alejandro Z Maclead
Nicolas Z Perin
Rodrigues W Perin
Kaitlin O Stenseth
Nicolas D Stenseth
Ricardo H Venere
Arvin R Slusarski
Maria S Stenseth
Francesco V Briddick
Mujtaba O Venere
Sinclair S Inouye
Claire Z Waycott
James R Campain
Misaki I Malet
Greenwood I Bolognia
Faith K Darakjy
Adams A Foller
Ashley J Paprocki
Julie Z Ferencz
Stacey C Caldarera
IdCountryDate
1000Canada2026-10-09
1001Brazil2026-10-09
1002France2026-09-27
1003Italy2026-10-05
1004United Kingdom2026-09-30
1005Russia2026-10-16
1006Spain2026-09-29
1007Japan2026-10-16
1008Germany2026-09-30
1009France2026-10-10
1010United Kingdom2026-09-26
1011Germany2026-10-20
1012Brazil2026-10-13
1013Argentina2026-10-12
1014Japan2026-10-06
1015Brazil2026-09-29
1016France2026-10-11
1017Australia2026-09-27
1018United Kingdom2026-10-14
1019Spain2026-10-18
1020Brazil2026-10-12
1021India2026-10-19
1022Russia2026-10-06
1023Argentina2026-10-12
1024France2026-10-05
1025Argentina2026-09-30
1026Argentina2026-10-20
1027France2026-09-28
1028Argentina2026-10-03
1029India2026-10-09
1030Brazil2026-10-21
1031Italy2026-10-05
1032Italy2026-10-16
1033Germany2026-10-19
1034Brazil2026-09-29
1035Argentina2026-10-08
1036Argentina2026-09-29
1037Argentina2026-09-27
1038India2026-10-23
1039Germany2026-10-16
1040Japan2026-09-25
1041Germany2026-09-29
1042Germany2026-10-24
1043France2026-09-27
1044Germany2026-09-30
1045Russia2026-10-14
1046Australia2026-10-24
1047Italy2026-10-10
1048Brazil2026-10-21
1049Spain2026-10-19

On-Demand Data

NameIdCountryDate
Aruna N Glick1000Australia2026-10-23
Jeanfrancois G Bowley1001Germany2026-09-29
Clifford O Ferencz1002Argentina2026-10-05
Leon G Royster1003France2026-09-27
Jefferson R Caudy1004United Kingdom2026-10-12
Cody S Gillian1005Spain2026-10-02
Aruna T Shinko1006United Kingdom2026-10-11
Isabel Q Gaucho1007Argentina2026-10-08
Antonio N Ferencz1008Russia2026-09-30
Aruna N Foller1009Spain2026-10-01
Juan L Slusarski1010Russia2026-10-24
Costa A Caldarera1011France2026-10-05
Smith S Amigon1012India2026-09-27
Ashley Q Rim1013Russia2026-10-08
James Q Venere1014Russia2026-10-19
Stacey F Ostrosky1015Italy2026-10-24
James P Poquette1016Canada2026-10-11
Claire J Nestle1017Spain2026-10-23
Mayumi H Sergi1018India2026-09-27
David X Perin1019Japan2026-10-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna I RutaGermanyStephen Shaw RENEWAL
Cody W DoeSpainAsiya Javayant NEW
Jennifer R AmigonSpainElwin Sharvill QUALIFIED
Juan A ChuiJapanIoni Bowcher QUALIFIED
Maria I SergiArgentinaIoni Bowcher NEGOTIATION
Leja J InouyeUnited KingdomAsiya Javayant RENEWAL
Clifford F DoeItalyOnyama Limba NEGOTIATION
Arvin O NestleSpainOnyama Limba NEGOTIATION
Leon R PoquetteBrazilIvan Magalhaes PROPOSAL
Isabel V DilliardUnited KingdomAsiya Javayant RENEWAL
Greenwood I StensethArgentinaElwin Sharvill UNQUALIFIED
Cody W FerenczIndiaIoni Bowcher NEGOTIATION
Juan O BologniaSpainXuxue Feng NEGOTIATION
Juan M DarakjyItalyAmy Elsner PROPOSAL
Aika S WaycottGermanyAsiya Javayant NEGOTIATION
Sinclair S SergiArgentinaElwin Sharvill NEGOTIATION
Leja U OstroskyBrazilOnyama Limba PROPOSAL
Juan B DilliardArgentinaBernardo Dominic PROPOSAL
Isabel H FerenczCanadaIoni Bowcher RENEWAL
Rodrigues S GillianItalyStephen Shaw NEW
Julie U FollerBrazilIvan Magalhaes PROPOSAL
Izzy J WaycottAustraliaBernardo Dominic UNQUALIFIED
Kaitlin B KuskoAustraliaIoni Bowcher RENEWAL
Tony O MaletSpainAmy Elsner QUALIFIED
Faith R WaycottItalyAmy Elsner NEGOTIATION
Mayumi Z SchemmerUnited KingdomOnyama Limba UNQUALIFIED
Morrow K PoquetteIndiaBernardo Dominic PROPOSAL
Costa U PoquetteGermanyXuxue Feng NEGOTIATION
Jones H SchemmerIndiaIoni Bowcher NEW
Jennifer O PerinBrazilAmy Elsner QUALIFIED
Jennifer R BologniaAustraliaOnyama Limba RENEWAL
Wickens P CaldareraAustraliaOnyama Limba QUALIFIED
Clifford F VenereGermanyBernardo Dominic NEGOTIATION
Stacey R AlbaresItalyIvan Magalhaes NEGOTIATION
Murillo F VenereBrazilAnna Fali RENEWAL
Jefferson X CaldareraFranceAmy Elsner NEGOTIATION
Deepesh N PerinUnited KingdomXuxue Feng NEW
Jones F KolmetzAustraliaIoni Bowcher NEGOTIATION
Wickens W ChuiRussiaAsiya Javayant NEGOTIATION
Alejandro T MarrierCanadaIvan Magalhaes RENEWAL

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