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 F KuskoUnited KingdomAnna Fali RENEWAL
Murillo A OldroydRussiaBernardo Dominic QUALIFIED
Kaitlin Y CaldareraFranceAsiya Javayant PROPOSAL
Maisha J BowleySpainAmy Elsner RENEWAL
Jefferson Z PoquetteFranceAsiya Javayant NEGOTIATION
David Q GarufiUnited KingdomStephen Shaw QUALIFIED
Silvio I MacleadSpainIoni Bowcher QUALIFIED
Claire M TollnerGermanyBernardo Dominic NEGOTIATION
Jeanfrancois R BologniaJapanElwin Sharvill NEW
Munro U ChuiGermanyAmy Elsner NEGOTIATION
Greenwood C RutaCanadaBernardo Dominic PROPOSAL
Francesco B SergiAustraliaIvan Magalhaes RENEWAL
Claire X DoeFranceElwin Sharvill UNQUALIFIED
Claire V GarufiBrazilElwin Sharvill NEGOTIATION
Costa F RutaFranceXuxue Feng RENEWAL
Kaitlin Q CaudyUnited KingdomElwin Sharvill UNQUALIFIED
Aika T RimSpainElwin Sharvill PROPOSAL
Jefferson I MorascaCanadaOnyama Limba QUALIFIED
Jefferson F MacleadCanadaIoni Bowcher NEW
Leja K OstroskyCanadaIoni Bowcher PROPOSAL
Misaki J WieserAustraliaIvan Magalhaes QUALIFIED
James N ButtJapanXuxue Feng QUALIFIED
Nicolas H GlickBrazilIoni Bowcher NEW
Deepesh N PoquetteCanadaStephen Shaw RENEWAL
Juan H ButtAustraliaOnyama Limba NEGOTIATION
Ashley G PaprockiSpainAmy Elsner RENEWAL
Chavez X TollnerArgentinaIoni Bowcher NEW
Wickens O BologniaUnited KingdomXuxue Feng PROPOSAL
Jennifer Q FlosiArgentinaAnna Fali PROPOSAL
Sinclair Z MaletCanadaAsiya Javayant UNQUALIFIED
Julie N SchemmerCanadaElwin Sharvill UNQUALIFIED
Antonio Y RulapaughRussiaIvan Magalhaes PROPOSAL
James H SergiBrazilAmy Elsner PROPOSAL
Julie E FerenczRussiaIoni Bowcher NEW
Johnson N ChuiCanadaIvan Magalhaes NEGOTIATION
Izzy Z ShinkoIndiaElwin Sharvill PROPOSAL
Salvatore M GillianRussiaAsiya Javayant PROPOSAL
Aditya J FlosiUnited KingdomIoni Bowcher RENEWAL
Antonio C MaletFranceAmy Elsner NEW
Munro Q DarakjyArgentinaOnyama Limba NEW
Ivar S SlusarskiBrazilIvan Magalhaes RENEWAL
Tony D PerinGermanyStephen Shaw NEGOTIATION
Wickens M AmigonBrazilBernardo Dominic PROPOSAL
Izzy W CaudyGermanyOnyama Limba RENEWAL
Aruna H SaylorsGermanyIvan Magalhaes UNQUALIFIED
Jones U VenereAustraliaAmy Elsner RENEWAL
Claire F InouyeSpainElwin Sharvill UNQUALIFIED
Sinclair W TollnerRussiaOnyama Limba PROPOSAL
Rodrigues X GauchoRussiaElwin Sharvill QUALIFIED
Maria C DilliardAustraliaOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika T CaudyItalyAsiya Javayant RENEWAL
Arvin W KuskoCanadaAnna Fali NEW
Chavez B InouyeRussiaElwin Sharvill UNQUALIFIED
Rodrigues K ChuiUnited KingdomIvan Magalhaes UNQUALIFIED
Jefferson Z SergiGermanyElwin Sharvill PROPOSAL
Leja F CaudySpainAmy Elsner QUALIFIED
Maria B PerinItalyBernardo Dominic RENEWAL
Jeanfrancois J WhobreySpainAnna Fali UNQUALIFIED
Maisha Q MaletJapanAnna Fali QUALIFIED
Maria E CampainJapanBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood U CampainFrance2026-09-10Printing Dimensions NEW42Amy Elsner
1001Tony B GauchoFrance2026-10-01Chanay, Jeffrey A Esq NEW47Asiya Javayant
1002Clifford F RutaCanada2026-09-18Chapman, Ross E Esq NEW1Anna Fali
1003Arvin U ButtRussia2026-09-27Rousseaux, Michael Esq NEGOTIATION62Bernardo Dominic
1004Morrow M GlickArgentina2026-09-22Rangoni Of Florence NEW92Ivan Magalhaes
1005Mujtaba O SlusarskiBrazil2026-09-08Truhlar And Truhlar Attys QUALIFIED64Ioni Bowcher
1006Cody Z BriddickAustralia2026-09-11Rangoni Of Florence UNQUALIFIED74Anna Fali
1007Leja J WieserUnited Kingdom2026-09-11Rangoni Of Florence RENEWAL6Anna Fali
1008Murillo H MorascaJapan2026-10-07Benton, John B Jr NEGOTIATION33Bernardo Dominic
1009Darci Z OstroskyCanada2026-10-07Chapman, Ross E Esq PROPOSAL59Elwin Sharvill
1010Antonio N InouyeCanada2026-09-12Rousseaux, Michael Esq NEGOTIATION54Ivan Magalhaes
1011Tony M FlosiItaly2026-09-15Commercial Press UNQUALIFIED37Elwin Sharvill
1012Ivar S VenereRussia2026-09-08Morlong Associates PROPOSAL82Ioni Bowcher
1013Octavia G DarakjyItaly2026-09-30Chanay, Jeffrey A Esq QUALIFIED66Ioni Bowcher
1014Wickens N VenereCanada2026-10-04King, Christopher A Esq QUALIFIED41Xuxue Feng
1015Jones I RoysterUnited Kingdom2026-09-26Feltz Printing Service UNQUALIFIED54Amy Elsner
1016Sinclair D PoquetteArgentina2026-09-14King, Christopher A Esq PROPOSAL24Elwin Sharvill
1017Aika G NestleAustralia2026-10-02Chemel, James L Cpa PROPOSAL99Stephen Shaw
1018Salvatore K GarufiFrance2026-09-23Chapman, Ross E Esq QUALIFIED77Ioni Bowcher
1019Maisha Z IturbideIndia2026-09-14Dorl, James J Esq QUALIFIED45Xuxue Feng
1020Claire P NestleGermany2026-09-12Printing Dimensions QUALIFIED0Asiya Javayant
1021Francesco H ChuiGermany2026-09-13Benton, John B Jr RENEWAL26Asiya Javayant
1022Ivar B SchemmerCanada2026-09-15Chemel, James L Cpa PROPOSAL53Elwin Sharvill
1023Darci O MarrierAustralia2026-09-22Chanay, Jeffrey A Esq QUALIFIED95Bernardo Dominic
1024Emily C AlbaresRussia2026-09-12Truhlar And Truhlar Attys UNQUALIFIED98Onyama Limba
1025Jeanfrancois J FerenczBrazil2026-10-03Benton, John B Jr NEW73Asiya Javayant
1026Mujtaba J MaletJapan2026-09-28Feiner Bros NEW3Elwin Sharvill
1027Faith L DarakjyItaly2026-10-05Truhlar And Truhlar Attys RENEWAL84Amy Elsner
1028Antonio W KolmetzRussia2026-10-06King, Christopher A Esq NEGOTIATION41Elwin Sharvill
1029Jennifer V ShinkoArgentina2026-09-10Chemel, James L Cpa QUALIFIED23Bernardo Dominic
1030Claire R AlbaresUnited Kingdom2026-09-21Feltz Printing Service NEGOTIATION36Amy Elsner
1031Leja Y VocelkaCanada2026-09-23Morlong Associates QUALIFIED19Anna Fali
1032Emily L RutaIndia2026-09-28Chemel, James L Cpa NEGOTIATION7Bernardo Dominic
1033David M KuskoRussia2026-09-13Rangoni Of Florence QUALIFIED32Amy Elsner
1034James R FerenczGermany2026-09-21Benton, John B Jr QUALIFIED53Onyama Limba
1035Cody V RulapaughIndia2026-09-11Chanay, Jeffrey A Esq NEW23Amy Elsner
1036Leon O WieserJapan2026-09-16Printing Dimensions QUALIFIED19Stephen Shaw
1037Costa R FollerBrazil2026-09-25Buckley Miller Wright PROPOSAL95Ioni Bowcher
1038Isabel G GauchoGermany2026-09-20Dorl, James J Esq RENEWAL15Amy Elsner
1039Jefferson M FigeroaItaly2026-10-03Commercial Press QUALIFIED86Bernardo Dominic
1040Jeanfrancois L NestleItaly2026-09-15Truhlar And Truhlar Attys NEGOTIATION25Stephen Shaw
1041Kaitlin Z DoeItaly2026-09-30Chanay, Jeffrey A Esq NEGOTIATION33Amy Elsner
1042Sinclair V SlusarskiRussia2026-10-03Rangoni Of Florence NEGOTIATION58Asiya Javayant
1043Munro H NickaGermany2026-09-08Chanay, Jeffrey A Esq NEGOTIATION3Elwin Sharvill
1044Izzy M PaprockiUnited Kingdom2026-09-14Chanay, Jeffrey A Esq NEW16Stephen Shaw
1045Izzy H BologniaBrazil2026-09-22Rousseaux, Michael Esq QUALIFIED41Amy Elsner
1046Murillo K ButtJapan2026-10-07Printing Dimensions QUALIFIED53Onyama Limba
1047Kaitlin E RulapaughGermany2026-09-12Benton, John B Jr UNQUALIFIED79Stephen Shaw
1048Julie B GlickItaly2026-10-01Rousseaux, Michael Esq NEW4Anna Fali
1049Claire C CaudyGermany2026-09-11Chanay, Jeffrey A Esq QUALIFIED26Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Munro A DarakjyArgentinaIvan Magalhaes QUALIFIED
Stacey U NestleSpainXuxue Feng NEGOTIATION
Ricardo M KolmetzSpainIvan Magalhaes NEGOTIATION
Deepesh H ButtArgentinaElwin Sharvill PROPOSAL
Johnson V RutaBrazilAmy Elsner NEGOTIATION
Murillo L StensethSpainOnyama Limba QUALIFIED
Johnson P FlosiGermanyIoni Bowcher PROPOSAL
Rodrigues C DilliardCanadaStephen Shaw RENEWAL
Antonio X AmigonGermanyAnna Fali RENEWAL
Arvin B MarrierSpainElwin Sharvill NEW
Leja P GlickCanadaElwin Sharvill UNQUALIFIED
Costa B ChuiGermanyIoni Bowcher NEW
Adams T WieserSpainOnyama Limba QUALIFIED
Izzy C PaprockiBrazilIvan Magalhaes NEGOTIATION
Misaki U GlickBrazilAsiya Javayant RENEWAL
Johnson Y GauchoAustraliaStephen Shaw NEW
Munro J StockhamIndiaIvan Magalhaes PROPOSAL
Salvatore J AmigonIndiaAsiya Javayant NEW
Rodrigues D SaylorsRussiaAnna Fali RENEWAL
Costa B DarakjyRussiaAsiya Javayant QUALIFIED
Deepesh T DarakjyBrazilOnyama Limba NEW
Maria L MorascaItalyAsiya Javayant PROPOSAL
Rodrigues W PerinIndiaOnyama Limba PROPOSAL
Leja R SlusarskiUnited KingdomStephen Shaw NEW
Adams V GlickItalyBernardo Dominic UNQUALIFIED
Isabel G SchemmerBrazilAsiya Javayant QUALIFIED
Leon M CaldareraUnited KingdomStephen Shaw RENEWAL
Julie S MacleadCanadaIoni Bowcher PROPOSAL
Julie C FlosiIndiaElwin Sharvill PROPOSAL
Leja Z DoeSpainAsiya Javayant NEW
Julie B MarrierRussiaElwin Sharvill QUALIFIED
Smith Y FerenczUnited KingdomAnna Fali PROPOSAL
Mayumi G OldroydRussiaAsiya Javayant RENEWAL
Kaitlin X GauchoIndiaAnna Fali UNQUALIFIED
Kaitlin M WhobreyRussiaAnna Fali PROPOSAL
Izzy C SergiFranceStephen Shaw NEW
Clifford H BowleySpainXuxue Feng NEW
Chavez C VenereAustraliaStephen Shaw QUALIFIED
Jones I NickaBrazilXuxue Feng RENEWAL
Wickens M ChuiUnited KingdomAmy Elsner QUALIFIED
Ricardo D GillianGermanyElwin Sharvill UNQUALIFIED
Jones U MaletSpainAsiya Javayant UNQUALIFIED
Darci A KuskoIndiaBernardo Dominic NEW
Greenwood N FerenczSpainAnna Fali UNQUALIFIED
Aruna R KuskoJapanElwin Sharvill PROPOSAL
Ashley T ButtIndiaOnyama Limba UNQUALIFIED
Mujtaba D FlosiIndiaAmy Elsner RENEWAL
Leon K FlosiRussiaOnyama Limba NEW
Jefferson S RoysterSpainIoni Bowcher RENEWAL
Jones Z FollerCanadaIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Francesco P Oldroyd
Deepesh Z Ostrosky
Costa M Malet
Stacey D Dilliard
Ivar O Oldroyd
Jefferson G Flosi
Clifford X Flosi
Antonio E Kusko
Nicolas I Oldroyd
Aika P Waycott
Juan E Rim
Munro Z Tollner
Leja O Tollner
Darci Z Royster
Arvin S Saylors
Faith H Malet
Johnson D Kusko
Kadeem R Maclead
Aditya N Whobrey
Smith H Nestle
Jennifer K Stockham
Kadeem R Rim
Jones T Venere
Leon R Schemmer
Aika N Nestle
Leon O Malet
Greenwood Z Chui
Chavez F Figeroa
Johnson P Iturbide
Arvin R Ferencz
Aditya E Tollner
Wickens V Royster
Faith V Briddick
Ricardo J Glick
Costa X Caudy
Misaki J Rim
Kadeem U Venere
Leja F Ostrosky
David I Chui
Nicolas B Stockham
Francesco U Stenseth
Smith Y Dilliard
Aruna W Malet
Rodrigues A Chui
Juan O Chui
Murillo Z Caudy
Adams G Chui
Arvin C Waycott
Johnson D Nicka
Faith Z Ferencz
IdCountryDate
1000India2026-09-29
1001Japan2026-09-26
1002Argentina2026-10-02
1003Spain2026-09-30
1004Germany2026-09-27
1005Germany2026-09-27
1006Germany2026-09-24
1007France2026-09-10
1008Australia2026-09-10
1009Russia2026-10-04
1010Argentina2026-09-19
1011United Kingdom2026-09-14
1012Russia2026-09-16
1013United Kingdom2026-09-25
1014Australia2026-09-28
1015Japan2026-10-07
1016Brazil2026-09-16
1017Australia2026-09-11
1018India2026-10-05
1019India2026-09-26
1020United Kingdom2026-09-15
1021France2026-09-09
1022Argentina2026-09-08
1023Japan2026-10-01
1024United Kingdom2026-10-02
1025France2026-10-07
1026Japan2026-09-27
1027United Kingdom2026-10-04
1028Brazil2026-09-15
1029Germany2026-09-15
1030Spain2026-10-02
1031Japan2026-10-03
1032Germany2026-09-11
1033Australia2026-09-27
1034France2026-09-12
1035Japan2026-10-02
1036Canada2026-09-17
1037Canada2026-09-16
1038India2026-09-10
1039Canada2026-09-12
1040Spain2026-10-02
1041Spain2026-09-15
1042Australia2026-10-03
1043Germany2026-09-25
1044France2026-09-26
1045Brazil2026-10-06
1046Canada2026-10-03
1047Australia2026-09-19
1048Germany2026-09-26
1049France2026-09-28

On-Demand Data

NameIdCountryDate
Costa U Schemmer1000France2026-10-02
Misaki K Stenseth1001France2026-09-27
James H Inouye1002Japan2026-09-11
Jefferson V Poquette1003Brazil2026-10-01
Ricardo I Rim1004Australia2026-09-09
David G Butt1005France2026-09-17
Francesco Q Marrier1006Brazil2026-09-13
Murillo M Oldroyd1007Russia2026-09-17
Ashley A Schemmer1008Australia2026-09-23
Sinclair D Tollner1009Germany2026-09-22
Silvio Y Amigon1010India2026-09-13
Sinclair M Waycott1011Australia2026-09-24
Faith H Royster1012Spain2026-09-26
Salvatore W Poquette1013Australia2026-09-27
Ivar T Maclead1014United Kingdom2026-09-29
Maria Z Foller1015France2026-09-08
Clifford G Maclead1016Japan2026-09-15
Adams I Caudy1017Russia2026-09-26
Juan L Saylors1018Argentina2026-09-21
Maria M Whobrey1019Australia2026-09-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel B DoeGermanyElwin Sharvill NEGOTIATION
Aditya U CaldareraAustraliaAsiya Javayant NEGOTIATION
Wickens Z MacleadItalyElwin Sharvill NEW
Nicolas K KolmetzIndiaBernardo Dominic UNQUALIFIED
Leja E VocelkaIndiaAnna Fali NEW
Rodrigues N GarufiSpainXuxue Feng PROPOSAL
Clifford M MaletCanadaXuxue Feng NEW
Aditya U TollnerAustraliaXuxue Feng RENEWAL
Claire G AmigonBrazilXuxue Feng NEGOTIATION
Ivar M MaletArgentinaAsiya Javayant RENEWAL
Maria J VenereRussiaStephen Shaw NEGOTIATION
Jones B CampainIndiaAmy Elsner NEGOTIATION
Emily U BologniaArgentinaIvan Magalhaes PROPOSAL
Deepesh D DoeRussiaIvan Magalhaes NEW
Ricardo S MarrierBrazilIoni Bowcher RENEWAL
Mujtaba E OstroskyBrazilAmy Elsner PROPOSAL
Aika R StensethItalyXuxue Feng NEW
Julie C WhobreyJapanXuxue Feng NEGOTIATION
Kaitlin U BriddickRussiaAnna Fali UNQUALIFIED
Emily L KolmetzJapanStephen Shaw RENEWAL
Jones T NestleAustraliaXuxue Feng NEW
Munro D AmigonRussiaIvan Magalhaes NEGOTIATION
Ashley C AlbaresAustraliaElwin Sharvill NEW
Johnson L RutaGermanyAsiya Javayant NEGOTIATION
Mayumi I BowleyRussiaBernardo Dominic QUALIFIED
Maria X CaudyAustraliaBernardo Dominic QUALIFIED
Julie B MarrierSpainStephen Shaw PROPOSAL
Claire T PoquetteItalyIvan Magalhaes RENEWAL
Leja B KolmetzRussiaBernardo Dominic NEW
Alejandro X BologniaCanadaOnyama Limba UNQUALIFIED
Salvatore O VocelkaAustraliaBernardo Dominic PROPOSAL
Rodrigues P WaycottFranceAmy Elsner NEGOTIATION
David C WhobreyCanadaStephen Shaw RENEWAL
Emily G SergiGermanyBernardo Dominic NEGOTIATION
Clifford H DoeIndiaXuxue Feng NEW
Leon D StockhamRussiaElwin Sharvill PROPOSAL
Julie Q VocelkaFranceIoni Bowcher QUALIFIED
Johnson V GlickAustraliaBernardo Dominic QUALIFIED
Adams D NickaItalyBernardo Dominic RENEWAL
Claire A RoysterArgentinaAmy Elsner 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>