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
Sinclair T PaprockiBrazilBernardo Dominic PROPOSAL
Misaki M OldroydItalyOnyama Limba PROPOSAL
Ricardo L BologniaAustraliaElwin Sharvill UNQUALIFIED
Tony X VenereRussiaStephen Shaw UNQUALIFIED
Kaitlin I WaycottSpainXuxue Feng PROPOSAL
Mujtaba R GillianJapanStephen Shaw UNQUALIFIED
James X GarufiIndiaStephen Shaw QUALIFIED
Sinclair X WhobreyArgentinaIvan Magalhaes PROPOSAL
Deepesh H ChuiItalyAsiya Javayant NEW
James M GauchoCanadaBernardo Dominic UNQUALIFIED
Mujtaba J RoysterCanadaIvan Magalhaes NEGOTIATION
Johnson I PaprockiSpainIoni Bowcher RENEWAL
Munro K KolmetzCanadaIoni Bowcher QUALIFIED
Johnson S PoquetteArgentinaBernardo Dominic UNQUALIFIED
Aditya Y ShinkoCanadaIoni Bowcher QUALIFIED
Salvatore E AmigonIndiaAnna Fali NEW
Mayumi H MorascaIndiaOnyama Limba UNQUALIFIED
Deepesh F TollnerJapanXuxue Feng QUALIFIED
Salvatore I ChuiAustraliaIvan Magalhaes RENEWAL
Leja O ShinkoCanadaOnyama Limba UNQUALIFIED
Murillo J WieserArgentinaAsiya Javayant UNQUALIFIED
Julie M ShinkoBrazilXuxue Feng UNQUALIFIED
Clifford K KolmetzCanadaIoni Bowcher NEW
Clifford N GarufiSpainStephen Shaw RENEWAL
Stacey E PerinUnited KingdomXuxue Feng NEGOTIATION
Cody R WaycottJapanAmy Elsner UNQUALIFIED
Aruna J GlickIndiaBernardo Dominic RENEWAL
Sinclair I CampainRussiaElwin Sharvill UNQUALIFIED
Murillo C FlosiGermanyAnna Fali UNQUALIFIED
Jennifer E DilliardIndiaStephen Shaw RENEWAL
Aika Q VenereUnited KingdomElwin Sharvill PROPOSAL
Izzy I ShinkoIndiaAsiya Javayant NEW
Jefferson R CaudyRussiaAnna Fali RENEWAL
Deepesh L FigeroaRussiaIvan Magalhaes RENEWAL
Costa S BologniaBrazilXuxue Feng UNQUALIFIED
Costa Z PaprockiIndiaIvan Magalhaes UNQUALIFIED
Darci Y GlickCanadaStephen Shaw NEW
Greenwood G SchemmerFranceAmy Elsner RENEWAL
Cody Q AmigonUnited KingdomAsiya Javayant UNQUALIFIED
Misaki F PoquetteFranceIvan Magalhaes PROPOSAL
Kadeem K GlickAustraliaElwin Sharvill NEGOTIATION
Kaitlin M DoeItalyElwin Sharvill PROPOSAL
David S MacleadJapanAnna Fali RENEWAL
Antonio O PoquetteArgentinaIvan Magalhaes NEGOTIATION
Clifford H MaletItalyAnna Fali QUALIFIED
Jones S RutaRussiaElwin Sharvill NEW
Smith N CampainAustraliaIoni Bowcher NEGOTIATION
Francesco A FerenczItalyXuxue Feng NEW
Maisha F ChuiIndiaOnyama Limba NEGOTIATION
Emily K GauchoFranceXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Mayumi A SlusarskiItalyBernardo Dominic NEGOTIATION
Juan U AlbaresAustraliaXuxue Feng NEGOTIATION
Antonio I OstroskyGermanyStephen Shaw UNQUALIFIED
Kadeem Z SchemmerBrazilStephen Shaw PROPOSAL
Ashley T SergiAustraliaBernardo Dominic NEW
James H RoysterAustraliaAmy Elsner UNQUALIFIED
Darci P PerinItalyIvan Magalhaes RENEWAL
Claire X MaletBrazilXuxue Feng UNQUALIFIED
Chavez K KolmetzBrazilStephen Shaw RENEWAL
Alejandro Q SlusarskiItalyAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson W PerinIndia2026-10-18Printing Dimensions PROPOSAL77Anna Fali
1001Morrow D WaycottSpain2026-10-30Feiner Bros PROPOSAL0Anna Fali
1002Leon E OstroskyAustralia2026-11-08Chapman, Ross E Esq NEGOTIATION33Ivan Magalhaes
1003Costa P InouyeCanada2026-10-30Feiner Bros QUALIFIED75Ioni Bowcher
1004James D AmigonGermany2026-10-19Printing Dimensions NEW16Stephen Shaw
1005Aditya L AmigonArgentina2026-11-05Feltz Printing Service UNQUALIFIED95Ivan Magalhaes
1006Aruna V SergiArgentina2026-10-21Chanay, Jeffrey A Esq NEW45Bernardo Dominic
1007Kaitlin K VocelkaRussia2026-10-23Benton, John B Jr PROPOSAL16Bernardo Dominic
1008David G RulapaughUnited Kingdom2026-10-22Rangoni Of Florence PROPOSAL10Onyama Limba
1009Wickens W GarufiUnited Kingdom2026-10-17Feltz Printing Service NEGOTIATION86Bernardo Dominic
1010Jennifer M StockhamFrance2026-11-02Chanay, Jeffrey A Esq NEW71Xuxue Feng
1011Ivar W AmigonSpain2026-10-20Chanay, Jeffrey A Esq QUALIFIED32Asiya Javayant
1012Jones I StensethBrazil2026-11-09Dorl, James J Esq PROPOSAL85Anna Fali
1013Rodrigues H SaylorsBrazil2026-10-16Chanay, Jeffrey A Esq NEW99Stephen Shaw
1014Alejandro Z MorascaArgentina2026-10-16King, Christopher A Esq NEW19Ivan Magalhaes
1015Aditya T AlbaresJapan2026-11-05Truhlar And Truhlar Attys PROPOSAL54Onyama Limba
1016Morrow K AmigonFrance2026-10-30Chemel, James L Cpa RENEWAL59Stephen Shaw
1017Ricardo K RimArgentina2026-10-22Buckley Miller Wright UNQUALIFIED19Anna Fali
1018Francesco O MaletJapan2026-10-17Feltz Printing Service QUALIFIED95Ivan Magalhaes
1019Faith P GauchoGermany2026-10-20Feiner Bros NEW48Amy Elsner
1020Morrow U SlusarskiFrance2026-10-29Commercial Press PROPOSAL55Stephen Shaw
1021Leja V RimFrance2026-10-24King, Christopher A Esq PROPOSAL86Asiya Javayant
1022Smith V DilliardItaly2026-11-03Feltz Printing Service NEW41Amy Elsner
1023Jefferson Z PaprockiArgentina2026-11-05Buckley Miller Wright UNQUALIFIED64Ivan Magalhaes
1024David E OstroskyGermany2026-10-23Feltz Printing Service RENEWAL45Xuxue Feng
1025Leja U PerinJapan2026-11-06Feltz Printing Service NEGOTIATION30Anna Fali
1026Cody I ChuiSpain2026-11-06Printing Dimensions RENEWAL29Asiya Javayant
1027David X FollerRussia2026-10-28Chemel, James L Cpa RENEWAL1Asiya Javayant
1028Francesco A BowleyArgentina2026-11-05Dorl, James J Esq NEW47Ioni Bowcher
1029Smith L DilliardIndia2026-11-09Printing Dimensions PROPOSAL7Ivan Magalhaes
1030Tony Q NestleAustralia2026-11-01Chemel, James L Cpa UNQUALIFIED1Ioni Bowcher
1031Clifford R ShinkoSpain2026-10-19Buckley Miller Wright UNQUALIFIED37Bernardo Dominic
1032Murillo Y AlbaresUnited Kingdom2026-11-10Printing Dimensions PROPOSAL12Stephen Shaw
1033Ashley C FerenczBrazil2026-10-31Printing Dimensions UNQUALIFIED71Xuxue Feng
1034Clifford M OldroydBrazil2026-10-26Morlong Associates QUALIFIED1Stephen Shaw
1035Greenwood C WieserJapan2026-10-29Printing Dimensions QUALIFIED99Anna Fali
1036Cody B CaudyArgentina2026-10-24Feltz Printing Service QUALIFIED38Xuxue Feng
1037Jones T GillianCanada2026-10-28Feltz Printing Service QUALIFIED95Xuxue Feng
1038Maria P AmigonIndia2026-11-09Buckley Miller Wright PROPOSAL67Onyama Limba
1039Emily G MorascaFrance2026-10-12King, Christopher A Esq NEGOTIATION65Anna Fali
1040Ricardo Z KolmetzRussia2026-11-08King, Christopher A Esq PROPOSAL74Bernardo Dominic
1041Claire E KuskoSpain2026-11-01Chanay, Jeffrey A Esq QUALIFIED80Asiya Javayant
1042Smith K InouyeBrazil2026-11-08Benton, John B Jr QUALIFIED22Xuxue Feng
1043Mayumi R OstroskyRussia2026-10-25Benton, John B Jr NEW64Ioni Bowcher
1044Morrow C MaletJapan2026-10-27Truhlar And Truhlar Attys RENEWAL1Asiya Javayant
1045Deepesh Y PerinRussia2026-10-27Chapman, Ross E Esq NEGOTIATION73Stephen Shaw
1046Jeanfrancois Q MacleadSpain2026-10-28Rousseaux, Michael Esq RENEWAL42Anna Fali
1047Emily A RulapaughGermany2026-10-13Feiner Bros NEGOTIATION52Ioni Bowcher
1048Isabel J FollerJapan2026-10-15Truhlar And Truhlar Attys NEW65Asiya Javayant
1049Julie U BologniaFrance2026-10-26King, Christopher A Esq QUALIFIED45Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Morrow V VenereCanadaElwin Sharvill PROPOSAL
Maisha X RimGermanyIoni Bowcher QUALIFIED
Nicolas P PerinCanadaOnyama Limba PROPOSAL
Ashley I BowleyItalyAnna Fali NEW
Jennifer H IturbideUnited KingdomElwin Sharvill NEGOTIATION
Munro Y MacleadAustraliaIoni Bowcher NEGOTIATION
Faith A CaudyAustraliaStephen Shaw NEW
Kadeem Y NestleCanadaStephen Shaw UNQUALIFIED
Salvatore B RimSpainIvan Magalhaes QUALIFIED
Ricardo I GauchoBrazilElwin Sharvill NEW
Jeanfrancois J FlosiBrazilXuxue Feng RENEWAL
Francesco J KuskoUnited KingdomIoni Bowcher NEW
Darci C RulapaughIndiaIoni Bowcher NEGOTIATION
Faith D NestleIndiaOnyama Limba RENEWAL
Greenwood O SlusarskiArgentinaIvan Magalhaes PROPOSAL
Leja P OldroydGermanyElwin Sharvill NEW
Jones Z WaycottBrazilAmy Elsner QUALIFIED
Julie T MaletIndiaXuxue Feng RENEWAL
Jones O VocelkaGermanyIoni Bowcher NEW
Clifford Y PoquetteGermanyStephen Shaw PROPOSAL
Izzy C RulapaughIndiaBernardo Dominic PROPOSAL
Rodrigues G DilliardIndiaXuxue Feng NEGOTIATION
Izzy S PoquetteBrazilBernardo Dominic NEGOTIATION
Jennifer T WaycottCanadaIoni Bowcher UNQUALIFIED
Munro N PoquetteFranceIoni Bowcher QUALIFIED
Jefferson U RutaIndiaAmy Elsner NEGOTIATION
Leon B IturbideItalyAmy Elsner NEGOTIATION
Octavia Z GlickIndiaXuxue Feng NEW
Octavia E MacleadUnited KingdomAsiya Javayant PROPOSAL
Izzy J WaycottBrazilXuxue Feng UNQUALIFIED
Jeanfrancois P PoquetteAustraliaAmy Elsner UNQUALIFIED
Claire T BriddickAustraliaIoni Bowcher RENEWAL
Salvatore Y GlickGermanyAsiya Javayant QUALIFIED
Deepesh A DoeUnited KingdomIvan Magalhaes RENEWAL
Leon H ChuiGermanyStephen Shaw UNQUALIFIED
Chavez X ShinkoRussiaBernardo Dominic RENEWAL
Isabel V SaylorsArgentinaIvan Magalhaes NEW
Maria Y TollnerFranceIoni Bowcher RENEWAL
Jennifer L TollnerUnited KingdomIvan Magalhaes NEW
Ivar T NestleItalyElwin Sharvill RENEWAL
Tony H OldroydCanadaIoni Bowcher NEW
Leja P GillianRussiaAmy Elsner QUALIFIED
Smith P RimFranceElwin Sharvill QUALIFIED
Tony R RulapaughFranceIvan Magalhaes PROPOSAL
Deepesh F MaletGermanyBernardo Dominic UNQUALIFIED
Julie F GarufiArgentinaElwin Sharvill NEW
Misaki X BriddickBrazilAnna Fali NEGOTIATION
Francesco Q RutaJapanAnna Fali NEW
Aika G FerenczFranceIvan Magalhaes PROPOSAL
Costa H SlusarskiFranceAmy Elsner UNQUALIFIED
Frozen Columns
Name
Greenwood V Stenseth
Johnson Z Stockham
Ashley L Venere
Leon B Morasca
Maria K Royster
Clifford Q Caldarera
Maria M Schemmer
Nicolas B Kolmetz
Mayumi D Darakjy
Clifford Q Royster
Wickens N Glick
Antonio B Bolognia
Leon U Morasca
Costa D Waycott
Clifford B Briddick
David T Foller
Faith O Maclead
Mujtaba O Waycott
Darci W Saylors
Misaki G Stockham
Aditya V Flosi
Ricardo W Schemmer
Ashley T Venere
Leon C Ferencz
Arvin L Shinko
Jones P Stenseth
Arvin V Oldroyd
Aruna N Chui
Johnson M Whobrey
Jennifer A Gaucho
Octavia P Poquette
Arvin K Caudy
James E Darakjy
Mayumi N Oldroyd
Clifford B Malet
Arvin U Bowley
James K Butt
Cody V Glick
Murillo U Glick
Jennifer R Doe
Adams A Saylors
Misaki N Stenseth
Ashley P Figeroa
Morrow S Nestle
Wickens B Kolmetz
Adams B Briddick
Maisha N Bowley
Antonio S Caldarera
Kaitlin Q Rim
Isabel Z Figeroa
IdCountryDate
1000Japan2026-10-15
1001India2026-10-25
1002Canada2026-10-15
1003India2026-11-05
1004Italy2026-10-16
1005Brazil2026-10-31
1006Russia2026-11-10
1007Germany2026-10-16
1008Japan2026-11-02
1009Italy2026-10-22
1010Australia2026-11-10
1011Argentina2026-11-03
1012Australia2026-10-31
1013Spain2026-11-01
1014Argentina2026-11-10
1015United Kingdom2026-10-31
1016Germany2026-11-05
1017Russia2026-11-07
1018United Kingdom2026-11-02
1019Italy2026-10-14
1020Canada2026-10-19
1021Canada2026-10-17
1022India2026-10-13
1023Italy2026-10-16
1024Australia2026-11-01
1025Brazil2026-10-31
1026United Kingdom2026-11-02
1027Italy2026-10-17
1028Canada2026-10-23
1029Spain2026-11-06
1030Japan2026-11-04
1031France2026-10-24
1032Argentina2026-10-12
1033Russia2026-11-06
1034Japan2026-10-24
1035France2026-10-19
1036Australia2026-10-17
1037India2026-11-03
1038United Kingdom2026-10-25
1039Australia2026-11-04
1040India2026-11-05
1041Argentina2026-11-07
1042Japan2026-10-26
1043France2026-10-21
1044Italy2026-10-15
1045Russia2026-10-30
1046Russia2026-10-28
1047Spain2026-10-22
1048Japan2026-10-30
1049United Kingdom2026-10-27

On-Demand Data

NameIdCountryDate
James S Kolmetz1000Spain2026-10-13
Leja O Figeroa1001Russia2026-11-09
Smith T Vocelka1002Germany2026-10-29
David W Poquette1003France2026-10-24
Leon O Rim1004Australia2026-11-07
Antonio Z Morasca1005France2026-10-22
Costa G Rulapaugh1006Russia2026-10-21
Claire J Maclead1007Russia2026-10-16
Leja E Stockham1008Australia2026-10-26
Maria Q Nestle1009Spain2026-10-15
Deepesh E Kusko1010Russia2026-10-21
Deepesh Z Inouye1011Argentina2026-10-24
Wickens X Garufi1012France2026-11-01
Munro U Tollner1013Japan2026-10-12
Stacey Z Doe1014Argentina2026-11-05
Jones B Whobrey1015Japan2026-11-08
Antonio Z Figeroa1016Brazil2026-10-30
Alejandro Q Bolognia1017United Kingdom2026-10-21
Greenwood Z Paprocki1018Australia2026-11-10
Rodrigues E Butt1019France2026-10-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson S AlbaresSpainAnna Fali PROPOSAL
James J MacleadUnited KingdomBernardo Dominic QUALIFIED
Clifford L OldroydRussiaElwin Sharvill NEGOTIATION
Francesco C PoquetteArgentinaElwin Sharvill NEW
Kadeem G GarufiIndiaBernardo Dominic PROPOSAL
Jones V MaletAustraliaAnna Fali NEGOTIATION
Stacey Q IturbideIndiaStephen Shaw NEW
Munro V PerinUnited KingdomBernardo Dominic PROPOSAL
Kaitlin H VocelkaIndiaIoni Bowcher RENEWAL
Kaitlin S WieserJapanBernardo Dominic UNQUALIFIED
Adams S ButtRussiaIoni Bowcher PROPOSAL
Wickens A GauchoIndiaAnna Fali RENEWAL
Maisha N StensethItalyAnna Fali NEW
Smith U NestleJapanElwin Sharvill NEW
Sinclair R RulapaughBrazilXuxue Feng NEW
James S SlusarskiGermanyAnna Fali PROPOSAL
Jeanfrancois Z AmigonRussiaStephen Shaw PROPOSAL
Alejandro B FerenczFranceOnyama Limba RENEWAL
Faith C DoeSpainAsiya Javayant PROPOSAL
Julie C MacleadJapanAmy Elsner NEGOTIATION
Ivar C BriddickIndiaAmy Elsner NEGOTIATION
Faith H GlickSpainXuxue Feng NEW
Johnson Q MorascaRussiaAsiya Javayant UNQUALIFIED
Jones T NestleArgentinaAnna Fali NEGOTIATION
Izzy J GillianCanadaBernardo Dominic NEGOTIATION
Jones I GlickUnited KingdomElwin Sharvill NEGOTIATION
Julie A VocelkaCanadaAsiya Javayant QUALIFIED
James D CampainAustraliaXuxue Feng NEGOTIATION
James C RimAustraliaBernardo Dominic NEW
Maisha H FollerJapanElwin Sharvill NEGOTIATION
Emily G SaylorsBrazilXuxue Feng PROPOSAL
Mujtaba N StockhamUnited KingdomIvan Magalhaes NEW
Ashley M MarrierItalyIoni Bowcher NEGOTIATION
Jefferson A FollerGermanyElwin Sharvill QUALIFIED
Nicolas S ChuiRussiaElwin Sharvill RENEWAL
Arvin H RoysterRussiaElwin Sharvill NEW
Mayumi B NestleGermanyStephen Shaw UNQUALIFIED
Misaki I BriddickBrazilElwin Sharvill NEGOTIATION
Johnson U ChuiRussiaElwin Sharvill QUALIFIED
Faith V GillianJapanStephen Shaw NEW

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