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
Morrow X KolmetzJapanIvan Magalhaes PROPOSAL
Stacey F RimFranceAsiya Javayant NEGOTIATION
Costa J RimAustraliaXuxue Feng PROPOSAL
Clifford T MorascaGermanyAnna Fali PROPOSAL
Ivar V AmigonFranceStephen Shaw NEW
Maria A WaycottBrazilIvan Magalhaes RENEWAL
Leon G BriddickGermanyXuxue Feng QUALIFIED
Murillo E BowleyAustraliaOnyama Limba PROPOSAL
Francesco V TollnerUnited KingdomIoni Bowcher UNQUALIFIED
Smith E CaldareraAustraliaXuxue Feng QUALIFIED
Rodrigues G CaudySpainStephen Shaw NEGOTIATION
Antonio P GlickItalyAsiya Javayant QUALIFIED
Maisha I DarakjySpainStephen Shaw UNQUALIFIED
Izzy S NestleBrazilBernardo Dominic NEW
Aika T KuskoSpainAmy Elsner NEGOTIATION
Smith G IturbideArgentinaIoni Bowcher UNQUALIFIED
Smith U MacleadIndiaXuxue Feng RENEWAL
Adams G ButtGermanyAmy Elsner UNQUALIFIED
Greenwood L GillianIndiaAsiya Javayant RENEWAL
Murillo X RimSpainOnyama Limba PROPOSAL
Leja H MarrierAustraliaAmy Elsner QUALIFIED
Salvatore O ShinkoItalyStephen Shaw RENEWAL
Isabel D FlosiArgentinaBernardo Dominic NEW
Sinclair V AmigonBrazilBernardo Dominic PROPOSAL
Wickens F VocelkaItalyIvan Magalhaes UNQUALIFIED
Misaki A FollerUnited KingdomOnyama Limba PROPOSAL
Izzy Q SchemmerArgentinaOnyama Limba RENEWAL
Francesco C TollnerCanadaIvan Magalhaes QUALIFIED
Misaki I BologniaArgentinaXuxue Feng RENEWAL
Kaitlin E RoysterJapanAmy Elsner PROPOSAL
Tony P VenereFranceElwin Sharvill NEW
Morrow L PoquetteJapanOnyama Limba RENEWAL
Aditya P WieserIndiaAsiya Javayant UNQUALIFIED
Costa G SergiSpainIoni Bowcher QUALIFIED
Izzy O OldroydGermanyBernardo Dominic QUALIFIED
Maisha V SaylorsSpainBernardo Dominic UNQUALIFIED
Greenwood N VenereRussiaIoni Bowcher UNQUALIFIED
Alejandro A SlusarskiArgentinaStephen Shaw UNQUALIFIED
Leon D FlosiArgentinaBernardo Dominic UNQUALIFIED
Mayumi E GillianGermanyIvan Magalhaes UNQUALIFIED
Maria Y NickaItalyAsiya Javayant PROPOSAL
Deepesh L VenereFranceIvan Magalhaes NEGOTIATION
Arvin X PaprockiUnited KingdomAnna Fali NEW
Leon Y SaylorsFranceStephen Shaw UNQUALIFIED
Jones V ShinkoFranceStephen Shaw NEW
Johnson D SaylorsIndiaIoni Bowcher UNQUALIFIED
Smith Y DoeSpainStephen Shaw RENEWAL
David H PaprockiIndiaXuxue Feng UNQUALIFIED
James L OstroskySpainAnna Fali RENEWAL
Kadeem U KuskoGermanyIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria K FerenczUnited KingdomAmy Elsner UNQUALIFIED
Juan A StockhamCanadaElwin Sharvill UNQUALIFIED
Claire W RutaRussiaIvan Magalhaes RENEWAL
Arvin E TollnerUnited KingdomAnna Fali QUALIFIED
Ashley P CaldareraItalyAsiya Javayant UNQUALIFIED
Leja J VenereBrazilAmy Elsner QUALIFIED
Aditya N NickaGermanyBernardo Dominic RENEWAL
Maria P OstroskyAustraliaStephen Shaw UNQUALIFIED
Isabel H MorascaCanadaAnna Fali RENEWAL
Leja G MaletCanadaIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith Y KuskoFrance2026-10-17Rangoni Of Florence UNQUALIFIED86Elwin Sharvill
1001Jones V KolmetzItaly2026-10-16Chanay, Jeffrey A Esq NEGOTIATION25Ioni Bowcher
1002Kadeem L MaletGermany2026-09-30Printing Dimensions PROPOSAL83Xuxue Feng
1003Adams P CaudyBrazil2026-10-10Feltz Printing Service RENEWAL35Amy Elsner
1004Ivar F MacleadCanada2026-10-14Morlong Associates RENEWAL35Onyama Limba
1005Juan T VenereFrance2026-10-13Commercial Press QUALIFIED99Ioni Bowcher
1006Jefferson S GillianItaly2026-10-05Chanay, Jeffrey A Esq UNQUALIFIED24Anna Fali
1007Maisha X BowleyItaly2026-10-15Chanay, Jeffrey A Esq RENEWAL48Anna Fali
1008Silvio H WieserSpain2026-09-24Feiner Bros RENEWAL14Anna Fali
1009Sinclair T WaycottUnited Kingdom2026-10-16Chapman, Ross E Esq NEW58Elwin Sharvill
1010Johnson H BologniaFrance2026-10-14Printing Dimensions UNQUALIFIED5Stephen Shaw
1011Munro M CaldareraArgentina2026-10-14Chapman, Ross E Esq UNQUALIFIED21Ivan Magalhaes
1012Adams Y MarrierRussia2026-10-04Rousseaux, Michael Esq UNQUALIFIED64Onyama Limba
1013Julie K VocelkaUnited Kingdom2026-09-23Morlong Associates NEGOTIATION25Elwin Sharvill
1014Cody W AmigonItaly2026-09-22Buckley Miller Wright RENEWAL22Anna Fali
1015James P GlickArgentina2026-10-21Buckley Miller Wright PROPOSAL76Stephen Shaw
1016Mujtaba S MaletSpain2026-10-03Printing Dimensions UNQUALIFIED83Asiya Javayant
1017Smith F BriddickIndia2026-09-22Dorl, James J Esq PROPOSAL67Asiya Javayant
1018Antonio L BowleyAustralia2026-10-20Buckley Miller Wright UNQUALIFIED56Ivan Magalhaes
1019Jennifer T ButtCanada2026-10-03Chapman, Ross E Esq UNQUALIFIED83Ioni Bowcher
1020Adams Q WhobreyArgentina2026-09-23Dorl, James J Esq RENEWAL75Onyama Limba
1021Misaki U CaldareraJapan2026-10-03Truhlar And Truhlar Attys NEGOTIATION80Ioni Bowcher
1022Wickens Y TollnerJapan2026-10-10Buckley Miller Wright NEW87Bernardo Dominic
1023Mujtaba Z TollnerArgentina2026-10-01Commercial Press UNQUALIFIED91Bernardo Dominic
1024Munro S MorascaSpain2026-09-26Rangoni Of Florence UNQUALIFIED17Ioni Bowcher
1025Kaitlin C BowleyArgentina2026-10-12Truhlar And Truhlar Attys QUALIFIED77Ivan Magalhaes
1026Greenwood V SaylorsIndia2026-10-18Chapman, Ross E Esq PROPOSAL2Elwin Sharvill
1027Munro B FerenczArgentina2026-10-14Dorl, James J Esq PROPOSAL7Elwin Sharvill
1028Adams W DilliardAustralia2026-10-15Printing Dimensions UNQUALIFIED38Ioni Bowcher
1029Darci A MarrierCanada2026-10-10Feiner Bros RENEWAL23Anna Fali
1030Silvio E GillianUnited Kingdom2026-10-08Dorl, James J Esq PROPOSAL4Ivan Magalhaes
1031Julie N DarakjyJapan2026-09-24Dorl, James J Esq NEW54Amy Elsner
1032Aditya V FerenczUnited Kingdom2026-10-06Truhlar And Truhlar Attys NEW58Asiya Javayant
1033Emily C InouyeCanada2026-09-30Rangoni Of Florence RENEWAL31Amy Elsner
1034Leja B StensethAustralia2026-10-04Feltz Printing Service QUALIFIED35Stephen Shaw
1035Wickens N BologniaAustralia2026-10-04Benton, John B Jr PROPOSAL20Ivan Magalhaes
1036Jeanfrancois A BowleyBrazil2026-09-28Buckley Miller Wright UNQUALIFIED60Xuxue Feng
1037Murillo S MaletIndia2026-10-05Chemel, James L Cpa PROPOSAL62Ivan Magalhaes
1038Leon I WhobreyJapan2026-10-19Chapman, Ross E Esq NEW22Stephen Shaw
1039Ivar J WieserGermany2026-10-02Chapman, Ross E Esq NEW22Ioni Bowcher
1040Isabel N RulapaughBrazil2026-09-26Rousseaux, Michael Esq UNQUALIFIED50Xuxue Feng
1041Claire M FigeroaUnited Kingdom2026-10-09Feltz Printing Service RENEWAL85Stephen Shaw
1042Kadeem Y DarakjyUnited Kingdom2026-10-19Rousseaux, Michael Esq PROPOSAL92Amy Elsner
1043Ivar J StensethAustralia2026-10-19Chapman, Ross E Esq QUALIFIED71Ivan Magalhaes
1044Kaitlin C WhobreyItaly2026-10-20Buckley Miller Wright PROPOSAL23Onyama Limba
1045Aika M IturbideIndia2026-10-05Benton, John B Jr RENEWAL12Bernardo Dominic
1046Rodrigues V AmigonCanada2026-10-06Feltz Printing Service NEGOTIATION91Ioni Bowcher
1047Ricardo L AmigonRussia2026-10-21Feltz Printing Service QUALIFIED5Asiya Javayant
1048Kadeem I GauchoBrazil2026-09-28Buckley Miller Wright NEGOTIATION98Onyama Limba
1049Sinclair V RutaIndia2026-10-15Dorl, James J Esq PROPOSAL26Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Greenwood O GillianArgentinaIvan Magalhaes RENEWAL
Jennifer X BologniaAustraliaOnyama Limba PROPOSAL
Maria Q GillianJapanXuxue Feng NEW
Clifford B NestleSpainElwin Sharvill RENEWAL
Isabel X MaletSpainBernardo Dominic NEGOTIATION
Jones K MorascaRussiaIvan Magalhaes NEGOTIATION
Tony P MorascaIndiaIvan Magalhaes QUALIFIED
Aditya K CaldareraBrazilAsiya Javayant NEGOTIATION
Ricardo F InouyeAustraliaIvan Magalhaes NEGOTIATION
James A AlbaresFranceBernardo Dominic NEW
Claire L PaprockiItalyXuxue Feng NEW
Mayumi U NestleUnited KingdomStephen Shaw RENEWAL
Francesco K VocelkaFranceIoni Bowcher UNQUALIFIED
Misaki V VenereAustraliaAnna Fali UNQUALIFIED
Misaki T CaldareraGermanyIvan Magalhaes UNQUALIFIED
Ashley Y NickaJapanXuxue Feng NEGOTIATION
Francesco X PerinGermanyOnyama Limba UNQUALIFIED
Jennifer J ButtUnited KingdomElwin Sharvill QUALIFIED
Cody P RutaFranceElwin Sharvill NEGOTIATION
Jefferson A DoeCanadaAmy Elsner PROPOSAL
Clifford Y SlusarskiUnited KingdomAnna Fali NEW
Rodrigues G FigeroaBrazilAsiya Javayant NEGOTIATION
Emily K SchemmerGermanyAnna Fali QUALIFIED
Juan V GauchoGermanyAmy Elsner PROPOSAL
Aruna D SaylorsFranceOnyama Limba UNQUALIFIED
Aditya B VenereAustraliaOnyama Limba NEGOTIATION
Cody C OstroskySpainBernardo Dominic NEW
Kaitlin S DoeArgentinaOnyama Limba NEW
Ricardo B StensethIndiaAmy Elsner NEW
Murillo J KolmetzUnited KingdomAnna Fali RENEWAL
Faith D VenereAustraliaXuxue Feng NEGOTIATION
Leja Q RulapaughBrazilAsiya Javayant NEW
Jeanfrancois B RulapaughCanadaAnna Fali NEW
Nicolas N SchemmerArgentinaAsiya Javayant QUALIFIED
Greenwood E FlosiSpainIvan Magalhaes UNQUALIFIED
Rodrigues W DilliardIndiaAnna Fali NEGOTIATION
Maisha G WhobreyFranceAnna Fali RENEWAL
Wickens Q TollnerIndiaAnna Fali UNQUALIFIED
Stacey D IturbideBrazilBernardo Dominic QUALIFIED
Ashley H ChuiGermanyIvan Magalhaes NEW
Johnson E IturbideIndiaStephen Shaw UNQUALIFIED
Johnson E TollnerBrazilOnyama Limba NEW
Silvio N GauchoFranceAmy Elsner RENEWAL
Mayumi W WaycottGermanyAmy Elsner UNQUALIFIED
Leja Q GillianRussiaStephen Shaw NEW
Maisha K ShinkoItalyAmy Elsner NEW
Jefferson L PerinArgentinaIoni Bowcher RENEWAL
Munro G VenereGermanyIoni Bowcher QUALIFIED
Murillo U ChuiItalyAsiya Javayant PROPOSAL
Darci X PoquetteGermanyIvan Magalhaes QUALIFIED
Frozen Columns
Name
Claire S Gaucho
Munro U Dilliard
Izzy H Garufi
Kadeem D Paprocki
James H Rim
Silvio Q Morasca
Jennifer U Briddick
Johnson F Figeroa
Leja Z Albares
Rodrigues V Flosi
Alejandro C Ostrosky
Deepesh N Malet
Maria R Gaucho
Julie H Rim
James R Ferencz
Izzy V Rim
Munro Z Whobrey
Morrow U Stenseth
Mayumi V Iturbide
Murillo O Nestle
Adams B Inouye
Kaitlin X Briddick
Jennifer I Chui
Deepesh H Inouye
Jeanfrancois O Slusarski
Mayumi R Rulapaugh
Wickens M Campain
Jennifer I Ostrosky
Salvatore R Iturbide
Greenwood K Ruta
Julie W Inouye
Sinclair A Stockham
Emily I Kolmetz
Ashley S Nestle
Greenwood R Gaucho
Ricardo R Garufi
Smith N Kusko
Mujtaba Q Saylors
Salvatore C Figeroa
Julie I Vocelka
Arvin H Kusko
Maria Q Ruta
Alejandro V Kolmetz
Izzy C Royster
Mujtaba A Nestle
Chavez Q Doe
Misaki W Chui
Leja R Bowley
Rodrigues Y Poquette
Jennifer S Nicka
IdCountryDate
1000Russia2026-09-26
1001France2026-10-09
1002Japan2026-10-19
1003Germany2026-10-21
1004Canada2026-10-10
1005Canada2026-10-03
1006Brazil2026-09-27
1007Germany2026-10-06
1008Japan2026-10-04
1009Russia2026-10-07
1010Germany2026-10-08
1011Germany2026-10-07
1012Japan2026-10-16
1013India2026-10-19
1014Spain2026-10-02
1015United Kingdom2026-10-16
1016India2026-10-14
1017Australia2026-10-03
1018United Kingdom2026-09-23
1019Italy2026-10-04
1020Brazil2026-10-03
1021United Kingdom2026-09-28
1022Brazil2026-09-28
1023Japan2026-09-23
1024Canada2026-10-20
1025Australia2026-10-04
1026France2026-10-09
1027Germany2026-10-03
1028Argentina2026-10-01
1029Spain2026-10-15
1030Australia2026-09-22
1031Italy2026-10-10
1032Japan2026-09-28
1033United Kingdom2026-09-24
1034Argentina2026-10-19
1035Brazil2026-10-04
1036Russia2026-09-22
1037Spain2026-09-27
1038Argentina2026-10-14
1039Germany2026-10-18
1040Spain2026-10-19
1041Canada2026-09-29
1042Spain2026-09-28
1043France2026-09-23
1044Argentina2026-10-19
1045United Kingdom2026-10-02
1046Russia2026-10-20
1047Argentina2026-10-06
1048Brazil2026-09-27
1049Italy2026-09-28

On-Demand Data

NameIdCountryDate
Alejandro J Sergi1000Russia2026-09-26
Isabel W Rim1001Spain2026-09-27
Aika K Waycott1002France2026-10-11
Costa P Campain1003Brazil2026-09-30
David G Waycott1004Germany2026-10-11
Adams E Malet1005Italy2026-10-17
Arvin Y Glick1006Russia2026-10-02
Izzy Y Chui1007United Kingdom2026-10-10
Jeanfrancois Z Kusko1008Italy2026-10-13
Jeanfrancois T Wieser1009Argentina2026-09-24
Faith Q Oldroyd1010Germany2026-09-23
Silvio C Inouye1011Italy2026-10-18
Misaki V Iturbide1012United Kingdom2026-09-22
Faith C Stockham1013Canada2026-10-08
Juan U Flosi1014Japan2026-09-22
Silvio C Amigon1015Italy2026-10-02
Aruna M Malet1016Australia2026-09-26
Octavia X Bolognia1017Argentina2026-10-14
Alejandro B Wieser1018Germany2026-10-17
Deepesh U Rulapaugh1019Canada2026-10-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore R FollerFranceIoni Bowcher PROPOSAL
Alejandro X MorascaSpainAsiya Javayant RENEWAL
Claire H BriddickUnited KingdomOnyama Limba PROPOSAL
Munro D AmigonFranceIoni Bowcher UNQUALIFIED
Ivar N WieserBrazilAnna Fali QUALIFIED
Murillo Y SergiJapanElwin Sharvill QUALIFIED
Alejandro X SergiSpainIoni Bowcher NEGOTIATION
Ashley E PaprockiRussiaStephen Shaw NEW
Sinclair S WaycottBrazilBernardo Dominic UNQUALIFIED
Kaitlin Z MorascaRussiaIoni Bowcher RENEWAL
Greenwood P NestleCanadaIoni Bowcher NEW
Faith N SergiCanadaXuxue Feng RENEWAL
Stacey P MaletSpainXuxue Feng PROPOSAL
Sinclair S IturbideFranceAsiya Javayant UNQUALIFIED
Juan O VocelkaSpainOnyama Limba NEGOTIATION
Morrow Z PaprockiCanadaOnyama Limba QUALIFIED
Maisha T IturbideAustraliaXuxue Feng RENEWAL
Jones Z CampainAustraliaStephen Shaw NEGOTIATION
Misaki Y BologniaAustraliaIoni Bowcher UNQUALIFIED
Faith B VenereGermanyOnyama Limba UNQUALIFIED
Clifford J MorascaIndiaAsiya Javayant NEW
Wickens F GlickItalyIvan Magalhaes PROPOSAL
Alejandro T MaletBrazilXuxue Feng NEW
Darci D PaprockiArgentinaStephen Shaw NEGOTIATION
Clifford K DilliardUnited KingdomAnna Fali UNQUALIFIED
Alejandro L DarakjyCanadaIvan Magalhaes RENEWAL
Leja V BologniaSpainStephen Shaw NEW
Kaitlin T BriddickUnited KingdomAnna Fali UNQUALIFIED
Ivar K StensethArgentinaElwin Sharvill UNQUALIFIED
Salvatore T MacleadIndiaOnyama Limba UNQUALIFIED
Cody N NestleUnited KingdomAmy Elsner RENEWAL
Nicolas C NestleRussiaAsiya Javayant QUALIFIED
Aruna X BologniaUnited KingdomStephen Shaw PROPOSAL
Jones C WaycottCanadaXuxue Feng QUALIFIED
Kaitlin D GlickItalyOnyama Limba NEW
Darci U PaprockiFranceOnyama Limba NEW
Julie F MarrierAustraliaIvan Magalhaes RENEWAL
Wickens X RimFranceXuxue Feng PROPOSAL
Munro V PoquetteIndiaIvan Magalhaes NEW
Kadeem F MaletUnited KingdomOnyama Limba UNQUALIFIED

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