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
Misaki Q StockhamUnited KingdomIoni Bowcher UNQUALIFIED
Johnson S BowleySpainStephen Shaw NEW
Stacey Z KuskoFranceBernardo Dominic PROPOSAL
Jennifer R NickaItalyIoni Bowcher PROPOSAL
Darci J BriddickGermanyIvan Magalhaes NEW
Nicolas S GillianIndiaAnna Fali QUALIFIED
Deepesh W FigeroaUnited KingdomAnna Fali QUALIFIED
Aika O VocelkaIndiaIoni Bowcher NEW
Mayumi Q FerenczAustraliaIoni Bowcher QUALIFIED
Mujtaba B CampainRussiaOnyama Limba NEW
Emily L WaycottRussiaElwin Sharvill PROPOSAL
Deepesh V SergiUnited KingdomXuxue Feng PROPOSAL
Darci Z MorascaAustraliaAnna Fali NEW
Aika Z SergiGermanyAnna Fali UNQUALIFIED
Leon M OstroskyBrazilAnna Fali NEGOTIATION
Tony D MorascaIndiaOnyama Limba QUALIFIED
Aruna J WieserRussiaAmy Elsner QUALIFIED
Tony E ShinkoBrazilElwin Sharvill RENEWAL
Antonio P PerinBrazilOnyama Limba UNQUALIFIED
Ricardo N BowleyIndiaAsiya Javayant PROPOSAL
Morrow B PerinFranceXuxue Feng NEW
Kadeem W MacleadCanadaStephen Shaw UNQUALIFIED
Ricardo F StensethArgentinaAsiya Javayant PROPOSAL
Ricardo N WhobreyRussiaAnna Fali NEW
Isabel H StockhamGermanyBernardo Dominic RENEWAL
Greenwood I RutaRussiaIoni Bowcher PROPOSAL
Isabel S FerenczRussiaAnna Fali NEW
Arvin P WaycottFranceOnyama Limba NEGOTIATION
Ashley G PaprockiIndiaBernardo Dominic QUALIFIED
Kaitlin L RulapaughCanadaAsiya Javayant NEW
Kaitlin S MacleadCanadaBernardo Dominic NEGOTIATION
Ivar X VenereSpainElwin Sharvill RENEWAL
Isabel M InouyeFranceAnna Fali UNQUALIFIED
Johnson N GillianArgentinaAsiya Javayant UNQUALIFIED
Arvin P WaycottGermanyOnyama Limba NEW
Cody V RoysterItalyIoni Bowcher RENEWAL
Isabel K StockhamAustraliaAsiya Javayant UNQUALIFIED
David N BowleyIndiaAmy Elsner NEW
Deepesh U DarakjyRussiaAmy Elsner QUALIFIED
Leon E BriddickArgentinaIoni Bowcher QUALIFIED
Mayumi G WaycottCanadaXuxue Feng PROPOSAL
Aika W NestleArgentinaElwin Sharvill NEGOTIATION
Wickens N PoquetteUnited KingdomBernardo Dominic NEW
Alejandro Q BriddickFranceBernardo Dominic RENEWAL
Julie E VocelkaSpainAmy Elsner NEGOTIATION
Silvio S IturbideItalyBernardo Dominic QUALIFIED
Jones V CaldareraRussiaAnna Fali PROPOSAL
Tony Q KuskoArgentinaBernardo Dominic NEW
Nicolas W PoquetteRussiaAnna Fali QUALIFIED
Ricardo P PaprockiUnited KingdomAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Kadeem T SergiUnited KingdomIvan Magalhaes NEGOTIATION
Salvatore O PoquetteGermanyAnna Fali RENEWAL
Tony T VenereUnited KingdomElwin Sharvill UNQUALIFIED
Clifford F StensethRussiaStephen Shaw UNQUALIFIED
Stacey E PaprockiItalyStephen Shaw NEW
Leon X WieserArgentinaAmy Elsner QUALIFIED
Ashley A OstroskyRussiaIoni Bowcher NEGOTIATION
Izzy A CampainItalyAmy Elsner NEW
Silvio Y AmigonUnited KingdomOnyama Limba PROPOSAL
Juan S WieserIndiaElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba G TollnerGermany2026-10-12Feiner Bros NEW30Ioni Bowcher
1001Maria M BologniaItaly2026-10-05Dorl, James J Esq RENEWAL63Amy Elsner
1002Ricardo G RutaGermany2026-10-16Dorl, James J Esq NEGOTIATION60Onyama Limba
1003Sinclair Y InouyeItaly2026-09-23Chapman, Ross E Esq NEGOTIATION86Onyama Limba
1004Sinclair P OstroskyItaly2026-09-22Rousseaux, Michael Esq NEW39Asiya Javayant
1005Mujtaba O StensethRussia2026-10-12Morlong Associates RENEWAL20Anna Fali
1006Jeanfrancois G BriddickBrazil2026-10-05Benton, John B Jr NEW27Asiya Javayant
1007Izzy B DarakjyUnited Kingdom2026-10-03Truhlar And Truhlar Attys NEW91Stephen Shaw
1008Claire Y GlickItaly2026-10-03Feltz Printing Service QUALIFIED78Xuxue Feng
1009Ashley Q FlosiAustralia2026-09-22Buckley Miller Wright PROPOSAL7Amy Elsner
1010Jeanfrancois G OldroydRussia2026-10-11Chemel, James L Cpa QUALIFIED41Amy Elsner
1011Clifford Q KolmetzRussia2026-10-03Feiner Bros NEGOTIATION56Anna Fali
1012Deepesh H CaudyJapan2026-10-08Benton, John B Jr QUALIFIED92Ioni Bowcher
1013Mayumi I RulapaughBrazil2026-10-14Dorl, James J Esq NEW98Bernardo Dominic
1014Munro U WaycottArgentina2026-10-15Chemel, James L Cpa PROPOSAL66Stephen Shaw
1015Claire H FigeroaAustralia2026-10-02Rousseaux, Michael Esq NEW28Ioni Bowcher
1016Smith F PerinUnited Kingdom2026-09-21King, Christopher A Esq PROPOSAL51Elwin Sharvill
1017Antonio H WaycottCanada2026-09-22Chapman, Ross E Esq PROPOSAL46Xuxue Feng
1018Johnson P WaycottCanada2026-09-26Chanay, Jeffrey A Esq QUALIFIED56Elwin Sharvill
1019Chavez B SergiJapan2026-09-24Feltz Printing Service NEGOTIATION83Anna Fali
1020Aruna E InouyeRussia2026-10-06Rangoni Of Florence RENEWAL95Bernardo Dominic
1021Maria B OstroskyUnited Kingdom2026-10-06Feltz Printing Service QUALIFIED52Onyama Limba
1022Leja H BriddickItaly2026-09-26Buckley Miller Wright NEGOTIATION33Ioni Bowcher
1023Johnson W MaletUnited Kingdom2026-10-05Chapman, Ross E Esq RENEWAL85Stephen Shaw
1024Jeanfrancois Q OldroydUnited Kingdom2026-10-05King, Christopher A Esq RENEWAL7Anna Fali
1025James O SaylorsArgentina2026-10-03Chapman, Ross E Esq NEW97Xuxue Feng
1026Isabel H PaprockiItaly2026-09-30Commercial Press UNQUALIFIED12Anna Fali
1027James R NestleArgentina2026-10-06King, Christopher A Esq UNQUALIFIED69Xuxue Feng
1028Jones A PoquetteArgentina2026-09-19Dorl, James J Esq RENEWAL62Amy Elsner
1029Costa B NickaUnited Kingdom2026-09-23Chapman, Ross E Esq QUALIFIED75Onyama Limba
1030Kaitlin G BowleyFrance2026-10-01King, Christopher A Esq UNQUALIFIED47Amy Elsner
1031Faith Q WieserUnited Kingdom2026-10-12Printing Dimensions NEGOTIATION95Asiya Javayant
1032Emily Q RimJapan2026-10-03Buckley Miller Wright UNQUALIFIED55Ioni Bowcher
1033Cody S AmigonItaly2026-10-11Buckley Miller Wright RENEWAL44Stephen Shaw
1034Aika H CaldareraIndia2026-10-17Chanay, Jeffrey A Esq NEW98Amy Elsner
1035Izzy Q BologniaIndia2026-09-25Rangoni Of Florence NEGOTIATION75Ioni Bowcher
1036Ricardo Y BologniaFrance2026-10-02Feiner Bros RENEWAL30Stephen Shaw
1037Francesco M SlusarskiRussia2026-10-06Dorl, James J Esq NEW15Ioni Bowcher
1038Jefferson V VenereUnited Kingdom2026-09-25Truhlar And Truhlar Attys NEGOTIATION33Xuxue Feng
1039Silvio T AmigonCanada2026-09-23Feltz Printing Service PROPOSAL40Onyama Limba
1040Kaitlin Q WaycottFrance2026-10-06Chemel, James L Cpa QUALIFIED22Amy Elsner
1041Izzy W RimArgentina2026-09-29Feltz Printing Service QUALIFIED42Onyama Limba
1042Munro Z RulapaughIndia2026-10-01King, Christopher A Esq QUALIFIED91Amy Elsner
1043Izzy C RutaArgentina2026-09-27Buckley Miller Wright QUALIFIED55Elwin Sharvill
1044Adams E SlusarskiGermany2026-09-20Feiner Bros NEGOTIATION65Ioni Bowcher
1045Morrow T WaycottJapan2026-09-24Printing Dimensions NEW52Ivan Magalhaes
1046Kaitlin A AmigonAustralia2026-10-05Printing Dimensions QUALIFIED90Anna Fali
1047Stacey Q PoquetteIndia2026-10-07Commercial Press RENEWAL28Ioni Bowcher
1048Antonio O CampainAustralia2026-10-06Truhlar And Truhlar Attys NEW40Bernardo Dominic
1049Smith E DarakjyRussia2026-09-30King, Christopher A Esq RENEWAL18Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Ivar W CaldareraBrazilElwin Sharvill NEGOTIATION
Izzy J MaletSpainAsiya Javayant UNQUALIFIED
Ricardo F VenereGermanyBernardo Dominic PROPOSAL
Cody G BowleyArgentinaOnyama Limba NEGOTIATION
Jennifer K CampainIndiaIvan Magalhaes PROPOSAL
Cody K PaprockiItalyStephen Shaw UNQUALIFIED
Alejandro O RoysterArgentinaElwin Sharvill UNQUALIFIED
Antonio W DoeArgentinaAsiya Javayant PROPOSAL
Smith O InouyeIndiaIoni Bowcher RENEWAL
Murillo L FollerSpainAmy Elsner NEW
Aika Y ButtRussiaIvan Magalhaes UNQUALIFIED
Tony R BowleyJapanXuxue Feng NEGOTIATION
Misaki G PaprockiAustraliaIvan Magalhaes PROPOSAL
Alejandro M OldroydBrazilIvan Magalhaes NEW
Munro W AmigonCanadaOnyama Limba RENEWAL
Alejandro Q SchemmerFranceAnna Fali QUALIFIED
Claire P KolmetzJapanStephen Shaw PROPOSAL
Tony T WaycottAustraliaAnna Fali RENEWAL
Clifford W MaletArgentinaIoni Bowcher QUALIFIED
Deepesh P SaylorsBrazilIoni Bowcher RENEWAL
Jennifer L DilliardUnited KingdomElwin Sharvill PROPOSAL
Jennifer I DarakjyIndiaIoni Bowcher PROPOSAL
Maisha D GarufiBrazilAnna Fali RENEWAL
Munro R CaudyGermanyAnna Fali PROPOSAL
Julie I WaycottUnited KingdomOnyama Limba UNQUALIFIED
Jennifer M CampainRussiaIvan Magalhaes QUALIFIED
Clifford O RoysterGermanyXuxue Feng UNQUALIFIED
Deepesh G GauchoIndiaElwin Sharvill RENEWAL
Arvin Y VenereSpainIvan Magalhaes NEW
Chavez L WieserFranceAsiya Javayant NEGOTIATION
Salvatore D MacleadBrazilXuxue Feng QUALIFIED
Murillo J PerinCanadaIvan Magalhaes NEW
Stacey N RoysterUnited KingdomElwin Sharvill QUALIFIED
David N DilliardArgentinaAmy Elsner QUALIFIED
Munro C WieserSpainOnyama Limba PROPOSAL
Izzy T FollerFranceAsiya Javayant NEGOTIATION
Maria N BowleyRussiaElwin Sharvill NEW
Greenwood X SergiFranceOnyama Limba UNQUALIFIED
James F WaycottArgentinaAmy Elsner NEGOTIATION
Francesco W CampainItalyIoni Bowcher UNQUALIFIED
Costa D GauchoArgentinaElwin Sharvill RENEWAL
Johnson Q FigeroaRussiaIoni Bowcher UNQUALIFIED
James M BriddickJapanBernardo Dominic NEW
Tony U MaletAustraliaAsiya Javayant UNQUALIFIED
Misaki M GauchoSpainBernardo Dominic QUALIFIED
Octavia H GlickCanadaAnna Fali NEGOTIATION
Morrow M GlickCanadaOnyama Limba UNQUALIFIED
Leon T PoquetteBrazilOnyama Limba QUALIFIED
Claire D IturbideAustraliaOnyama Limba RENEWAL
Kadeem F SchemmerArgentinaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Julie W Vocelka
Chavez W Waycott
Aruna I Saylors
Misaki F Schemmer
Silvio A Chui
Darci E Waycott
Jeanfrancois L Briddick
Tony A Flosi
Mayumi L Marrier
Clifford G Wieser
Kadeem Q Ferencz
Aika K Rim
Leon Y Glick
Deepesh R Paprocki
Leon D Gaucho
Murillo M Malet
Aika D Wieser
Claire E Sergi
Smith Y Vocelka
Antonio Q Malet
James T Stockham
Salvatore K Iturbide
Adams X Kusko
Silvio Y Amigon
Izzy E Rim
Jennifer O Chui
Ashley S Flosi
Clifford S Paprocki
Salvatore N Nicka
Clifford H Stenseth
Jeanfrancois J Campain
Juan W Rulapaugh
Silvio F Oldroyd
Adams Z Malet
Juan W Kusko
Aruna F Gillian
Antonio O Malet
Mujtaba O Chui
Smith G Nestle
Tony F Flosi
Sinclair A Caldarera
Johnson D Amigon
Ivar E Stockham
Julie R Ruta
Juan Q Venere
Maria D Stockham
Silvio H Campain
Misaki B Morasca
Antonio X Nestle
Misaki I Malet
IdCountryDate
1000Germany2026-10-14
1001India2026-10-02
1002Germany2026-10-17
1003Brazil2026-10-14
1004Japan2026-10-14
1005Brazil2026-10-05
1006Spain2026-10-05
1007Italy2026-09-30
1008Canada2026-09-22
1009Canada2026-10-17
1010Australia2026-10-01
1011Russia2026-09-26
1012Germany2026-10-17
1013Spain2026-10-03
1014Canada2026-09-25
1015Australia2026-10-16
1016Germany2026-10-08
1017Australia2026-09-21
1018Australia2026-09-27
1019Germany2026-09-28
1020Japan2026-10-18
1021United Kingdom2026-10-15
1022India2026-10-13
1023United Kingdom2026-09-24
1024Argentina2026-10-17
1025Australia2026-09-22
1026Australia2026-10-16
1027Germany2026-09-24
1028Japan2026-09-20
1029Japan2026-09-21
1030India2026-10-05
1031India2026-10-02
1032Brazil2026-10-07
1033Germany2026-09-29
1034India2026-09-20
1035Brazil2026-09-19
1036Russia2026-09-19
1037United Kingdom2026-09-30
1038Japan2026-09-22
1039India2026-09-26
1040Argentina2026-10-10
1041Argentina2026-09-30
1042Canada2026-10-16
1043United Kingdom2026-09-27
1044Russia2026-10-10
1045Canada2026-10-07
1046Italy2026-10-13
1047Canada2026-10-02
1048Spain2026-10-01
1049Brazil2026-10-15

On-Demand Data

NameIdCountryDate
Isabel N Rim1000United Kingdom2026-10-11
Leja U Maclead1001India2026-10-03
Claire P Albares1002Italy2026-09-27
Julie M Caldarera1003France2026-09-27
James A Flosi1004Argentina2026-09-19
Isabel C Shinko1005France2026-10-03
Leon E Kolmetz1006Japan2026-10-02
Murillo J Inouye1007Russia2026-09-26
Smith M Maclead1008Italy2026-10-04
Greenwood N Whobrey1009Australia2026-10-18
Salvatore D Schemmer1010Argentina2026-10-09
Stacey I Gaucho1011France2026-10-06
James D Kolmetz1012Italy2026-10-14
Ricardo G Darakjy1013Germany2026-09-29
Costa Z Royster1014India2026-10-07
Julie H Slusarski1015France2026-09-30
Aika R Malet1016India2026-09-26
James U Figeroa1017Spain2026-10-10
Stacey H Bowley1018India2026-09-27
Jeanfrancois G Foller1019Australia2026-10-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Deepesh K PoquetteArgentinaStephen Shaw RENEWAL
Nicolas U SchemmerGermanyOnyama Limba NEW
Jefferson H SergiBrazilIoni Bowcher NEGOTIATION
Greenwood U CampainItalyOnyama Limba RENEWAL
Stacey Y MarrierCanadaAnna Fali UNQUALIFIED
Francesco P AmigonArgentinaAsiya Javayant QUALIFIED
Sinclair Q OldroydJapanIvan Magalhaes PROPOSAL
Kadeem M GauchoIndiaIoni Bowcher NEW
Morrow E GarufiCanadaElwin Sharvill QUALIFIED
Mayumi Q MacleadBrazilStephen Shaw NEW
Kaitlin S ChuiFranceOnyama Limba NEW
Emily V StockhamGermanyIvan Magalhaes NEW
Nicolas B GauchoGermanyAmy Elsner UNQUALIFIED
Darci X CampainJapanXuxue Feng UNQUALIFIED
Maria C SchemmerItalyXuxue Feng QUALIFIED
Octavia B SergiFranceBernardo Dominic QUALIFIED
Isabel K FerenczJapanAsiya Javayant NEW
Aika A StensethFranceOnyama Limba NEGOTIATION
Adams P RutaArgentinaBernardo Dominic NEGOTIATION
Alejandro Y RoysterRussiaAsiya Javayant RENEWAL
Smith N OldroydItalyIoni Bowcher PROPOSAL
Jones K PerinItalyOnyama Limba RENEWAL
Mujtaba B MorascaCanadaOnyama Limba NEW
David Q WaycottGermanyAnna Fali UNQUALIFIED
Sinclair D SchemmerBrazilAsiya Javayant NEW
Morrow V CaudyGermanyAsiya Javayant NEW
Stacey W PoquetteFranceAmy Elsner UNQUALIFIED
Leja B StockhamUnited KingdomBernardo Dominic NEW
Darci G AlbaresArgentinaIoni Bowcher PROPOSAL
Aika E PoquetteUnited KingdomOnyama Limba UNQUALIFIED
Stacey C SchemmerSpainElwin Sharvill RENEWAL
Jeanfrancois A WhobreyBrazilElwin Sharvill NEGOTIATION
Alejandro X IturbideCanadaStephen Shaw RENEWAL
Claire L DarakjyBrazilStephen Shaw UNQUALIFIED
Chavez X FlosiBrazilAnna Fali PROPOSAL
Chavez Z AlbaresJapanAsiya Javayant QUALIFIED
Jones B CampainSpainXuxue Feng NEGOTIATION
Leon D FollerFranceElwin Sharvill NEW
Julie R DoeCanadaStephen Shaw NEW
Leon A GarufiItalyBernardo Dominic 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>