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 U GauchoRussiaXuxue Feng RENEWAL
Rodrigues R KuskoBrazilBernardo Dominic RENEWAL
Arvin E MarrierJapanElwin Sharvill NEGOTIATION
Silvio P FigeroaGermanyStephen Shaw NEW
Kadeem U InouyeFranceAnna Fali UNQUALIFIED
Ivar Z DilliardItalyXuxue Feng UNQUALIFIED
Rodrigues J InouyeSpainAsiya Javayant RENEWAL
Ashley G ShinkoFranceAnna Fali UNQUALIFIED
Misaki N CaldareraJapanAsiya Javayant RENEWAL
Smith Z TollnerBrazilStephen Shaw UNQUALIFIED
Adams C OstroskyAustraliaBernardo Dominic RENEWAL
Ashley R CaudyUnited KingdomAsiya Javayant NEGOTIATION
Julie P VocelkaAustraliaIoni Bowcher UNQUALIFIED
Munro U OstroskyFranceIvan Magalhaes NEW
Juan C GlickItalyAnna Fali NEW
Adams I SlusarskiArgentinaAnna Fali QUALIFIED
Ricardo D GauchoCanadaAsiya Javayant UNQUALIFIED
Ivar R InouyeBrazilIvan Magalhaes PROPOSAL
Alejandro B PoquetteSpainAnna Fali QUALIFIED
Isabel V SergiBrazilIoni Bowcher NEW
Aruna P SergiArgentinaXuxue Feng QUALIFIED
Maisha P CaudyFranceElwin Sharvill RENEWAL
Aditya T KuskoSpainBernardo Dominic RENEWAL
Kadeem M GauchoUnited KingdomAmy Elsner QUALIFIED
Kadeem R MarrierRussiaElwin Sharvill QUALIFIED
Tony U MaletFranceIvan Magalhaes NEW
Greenwood B MarrierJapanAnna Fali NEW
Cody T MacleadAustraliaStephen Shaw NEW
James B WaycottUnited KingdomOnyama Limba RENEWAL
Greenwood D PoquetteBrazilXuxue Feng RENEWAL
Johnson V CaudyArgentinaBernardo Dominic RENEWAL
Jones J OldroydAustraliaAnna Fali QUALIFIED
Murillo W ChuiItalyIoni Bowcher RENEWAL
Aika K MaletArgentinaIoni Bowcher QUALIFIED
Francesco O WieserGermanyAmy Elsner NEGOTIATION
Antonio R BriddickItalyXuxue Feng RENEWAL
Morrow H DarakjyFranceAnna Fali UNQUALIFIED
Silvio W MaletRussiaBernardo Dominic PROPOSAL
Maisha O BowleyIndiaAsiya Javayant PROPOSAL
Kaitlin B PoquetteUnited KingdomElwin Sharvill NEGOTIATION
Faith I ChuiIndiaAmy Elsner PROPOSAL
Juan E SlusarskiJapanBernardo Dominic NEW
Salvatore H CaldareraFranceXuxue Feng UNQUALIFIED
Salvatore S SlusarskiItalyXuxue Feng PROPOSAL
Faith E MaletItalyXuxue Feng NEW
Leon W DoeJapanOnyama Limba QUALIFIED
Aditya W AlbaresAustraliaAnna Fali PROPOSAL
Greenwood C RimFranceElwin Sharvill PROPOSAL
Salvatore C AmigonFranceAmy Elsner NEW
Ricardo Q WhobreySpainStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon S SchemmerBrazilOnyama Limba PROPOSAL
Salvatore V NestleJapanXuxue Feng NEW
Smith W GlickUnited KingdomXuxue Feng RENEWAL
Maisha B OldroydAustraliaIoni Bowcher PROPOSAL
Juan Q VocelkaItalyAmy Elsner NEW
Aditya S RoysterArgentinaElwin Sharvill RENEWAL
Mujtaba V MarrierItalyStephen Shaw NEW
Antonio H PaprockiAustraliaAnna Fali PROPOSAL
Chavez Y OldroydSpainAsiya Javayant QUALIFIED
Emily Z RimSpainXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna H KolmetzFrance2026-10-17Feiner Bros NEW40Ioni Bowcher
1001Stacey Z PoquetteAustralia2026-10-04Chapman, Ross E Esq PROPOSAL32Onyama Limba
1002Smith I StensethCanada2026-10-12Printing Dimensions NEW34Onyama Limba
1003Juan O RimUnited Kingdom2026-10-14Benton, John B Jr UNQUALIFIED62Anna Fali
1004Claire U FerenczArgentina2026-10-16Buckley Miller Wright UNQUALIFIED17Ioni Bowcher
1005Aika W RutaJapan2026-10-11Truhlar And Truhlar Attys PROPOSAL83Ivan Magalhaes
1006Julie W IturbideBrazil2026-09-25Rangoni Of Florence NEGOTIATION57Bernardo Dominic
1007Munro V SaylorsJapan2026-10-19Printing Dimensions QUALIFIED26Ioni Bowcher
1008Costa X FlosiBrazil2026-10-13Truhlar And Truhlar Attys UNQUALIFIED23Stephen Shaw
1009Antonio U KolmetzGermany2026-10-14Printing Dimensions QUALIFIED7Elwin Sharvill
1010Maisha I StockhamUnited Kingdom2026-09-25Buckley Miller Wright QUALIFIED35Stephen Shaw
1011Julie E IturbideItaly2026-10-02King, Christopher A Esq RENEWAL89Bernardo Dominic
1012Alejandro N WieserUnited Kingdom2026-09-28Chemel, James L Cpa NEW83Onyama Limba
1013Isabel M CaudyUnited Kingdom2026-09-25Benton, John B Jr PROPOSAL41Stephen Shaw
1014Jones V PerinBrazil2026-10-14Chapman, Ross E Esq UNQUALIFIED76Onyama Limba
1015Ricardo W SergiBrazil2026-10-17Benton, John B Jr NEW70Amy Elsner
1016Kaitlin H KolmetzFrance2026-09-28Feiner Bros PROPOSAL57Elwin Sharvill
1017Mujtaba L ButtAustralia2026-10-10Feiner Bros NEGOTIATION20Asiya Javayant
1018Smith S IturbideJapan2026-10-01Chapman, Ross E Esq NEGOTIATION87Ivan Magalhaes
1019Alejandro N VenereArgentina2026-10-12Printing Dimensions NEGOTIATION83Anna Fali
1020Ricardo W SaylorsUnited Kingdom2026-09-29Truhlar And Truhlar Attys QUALIFIED95Onyama Limba
1021Jefferson A ChuiFrance2026-10-12King, Christopher A Esq NEW81Ioni Bowcher
1022Juan R FollerArgentina2026-09-25Buckley Miller Wright PROPOSAL56Stephen Shaw
1023Clifford W DilliardItaly2026-10-12Dorl, James J Esq QUALIFIED43Asiya Javayant
1024Jones C VenereItaly2026-10-14Chemel, James L Cpa UNQUALIFIED83Xuxue Feng
1025Costa V NickaUnited Kingdom2026-09-29Dorl, James J Esq UNQUALIFIED41Ioni Bowcher
1026Leon I PerinItaly2026-09-28Chapman, Ross E Esq RENEWAL20Asiya Javayant
1027Aika Z IturbideJapan2026-09-30Chapman, Ross E Esq PROPOSAL67Stephen Shaw
1028Munro V RulapaughItaly2026-10-13King, Christopher A Esq NEW76Anna Fali
1029Silvio U RulapaughItaly2026-10-05Morlong Associates NEW28Elwin Sharvill
1030Kadeem V MacleadAustralia2026-10-10Chapman, Ross E Esq NEGOTIATION68Ivan Magalhaes
1031James H AlbaresItaly2026-10-19Benton, John B Jr QUALIFIED91Amy Elsner
1032Smith U BologniaFrance2026-10-03Rangoni Of Florence PROPOSAL40Ioni Bowcher
1033Munro W PaprockiArgentina2026-10-02Truhlar And Truhlar Attys NEW84Anna Fali
1034Misaki Q MaletBrazil2026-09-28Rousseaux, Michael Esq UNQUALIFIED66Ioni Bowcher
1035Johnson I NickaGermany2026-10-09Chapman, Ross E Esq UNQUALIFIED93Ivan Magalhaes
1036Claire Z StensethIndia2026-10-12Benton, John B Jr PROPOSAL75Onyama Limba
1037Francesco O StockhamRussia2026-10-04Feiner Bros NEW16Amy Elsner
1038Darci V WaycottItaly2026-10-18Dorl, James J Esq UNQUALIFIED66Onyama Limba
1039Kadeem Q WaycottArgentina2026-10-16Chemel, James L Cpa RENEWAL97Amy Elsner
1040Mujtaba J BowleyItaly2026-09-24King, Christopher A Esq NEW36Ivan Magalhaes
1041Kaitlin O PaprockiCanada2026-10-22Chanay, Jeffrey A Esq PROPOSAL96Onyama Limba
1042Arvin M NickaCanada2026-10-11Feiner Bros RENEWAL85Stephen Shaw
1043Morrow U FerenczSpain2026-10-12Feiner Bros NEW66Anna Fali
1044Juan E MarrierRussia2026-10-07Buckley Miller Wright PROPOSAL41Amy Elsner
1045Salvatore K BowleyUnited Kingdom2026-10-02Dorl, James J Esq PROPOSAL85Elwin Sharvill
1046Morrow D DoeCanada2026-09-26Dorl, James J Esq NEW86Onyama Limba
1047Misaki G MarrierArgentina2026-10-12Chemel, James L Cpa UNQUALIFIED62Onyama Limba
1048Faith S PaprockiRussia2026-10-06Commercial Press NEW25Anna Fali
1049Isabel X RoysterBrazil2026-10-14Buckley Miller Wright QUALIFIED63Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Ricardo W ChuiRussiaOnyama Limba UNQUALIFIED
Arvin J DoeSpainAnna Fali NEW
Costa S DoeFranceBernardo Dominic NEGOTIATION
Deepesh L SchemmerIndiaXuxue Feng QUALIFIED
Murillo T DilliardItalyIoni Bowcher PROPOSAL
Chavez P KolmetzItalyAnna Fali UNQUALIFIED
Jefferson R InouyeGermanyAnna Fali NEW
Kaitlin T SchemmerCanadaAmy Elsner NEW
Munro O PerinCanadaBernardo Dominic UNQUALIFIED
Jeanfrancois Z RulapaughGermanyIvan Magalhaes QUALIFIED
Claire C PaprockiCanadaAsiya Javayant NEGOTIATION
Jones V RoysterArgentinaOnyama Limba NEGOTIATION
Leon V CaudyAustraliaAnna Fali NEGOTIATION
Greenwood S KolmetzJapanIoni Bowcher PROPOSAL
Nicolas U ChuiFranceXuxue Feng RENEWAL
James O StockhamIndiaElwin Sharvill RENEWAL
Antonio G AmigonItalyAnna Fali RENEWAL
Maisha P DilliardGermanyIoni Bowcher NEW
Isabel W AmigonRussiaXuxue Feng RENEWAL
Arvin S CaldareraSpainXuxue Feng NEGOTIATION
Jones G KolmetzGermanyIoni Bowcher UNQUALIFIED
Jennifer F GarufiFranceAsiya Javayant NEGOTIATION
Leon I GlickArgentinaAnna Fali NEGOTIATION
Kaitlin Y PoquetteFranceIoni Bowcher QUALIFIED
Emily C FerenczBrazilIoni Bowcher NEW
Sinclair G VocelkaUnited KingdomIoni Bowcher QUALIFIED
Nicolas N SaylorsUnited KingdomIoni Bowcher RENEWAL
Maisha U AlbaresArgentinaIvan Magalhaes UNQUALIFIED
Arvin Z ButtGermanyAmy Elsner PROPOSAL
Maisha X NestleArgentinaOnyama Limba NEW
Wickens W FigeroaJapanXuxue Feng NEGOTIATION
Jennifer P FlosiJapanAnna Fali QUALIFIED
Munro P StockhamUnited KingdomIoni Bowcher RENEWAL
James V CampainItalyAsiya Javayant UNQUALIFIED
David D CaldareraIndiaIoni Bowcher NEW
Wickens H ChuiRussiaAmy Elsner NEW
Alejandro N AlbaresRussiaAnna Fali PROPOSAL
Jones L AmigonArgentinaAnna Fali QUALIFIED
Aruna L KolmetzItalyAsiya Javayant UNQUALIFIED
Jones C WhobreySpainStephen Shaw PROPOSAL
Ricardo Q MacleadAustraliaOnyama Limba NEW
Sinclair P MaletFranceIvan Magalhaes QUALIFIED
Isabel F PaprockiBrazilElwin Sharvill UNQUALIFIED
Kaitlin K ChuiAustraliaBernardo Dominic QUALIFIED
Jones I KolmetzSpainXuxue Feng RENEWAL
Jennifer N PaprockiRussiaIoni Bowcher UNQUALIFIED
Octavia T CaldareraIndiaStephen Shaw RENEWAL
Salvatore Q IturbideItalyOnyama Limba NEW
Leja Y RutaUnited KingdomAnna Fali PROPOSAL
Faith M NestleBrazilAmy Elsner PROPOSAL
Frozen Columns
Name
Maria S Slusarski
Antonio D Schemmer
Morrow Y Schemmer
Aika I Dilliard
Isabel N Inouye
Mujtaba W Royster
Kaitlin F Waycott
Antonio T Morasca
Misaki P Campain
Tony Q Briddick
Morrow Z Glick
Greenwood J Butt
Murillo I Venere
Jeanfrancois O Ostrosky
Ashley E Poquette
Maria B Sergi
Ivar Z Doe
Julie N Bolognia
Tony O Maclead
Morrow M Dilliard
Misaki A Bowley
Juan G Amigon
Salvatore Y Paprocki
Leja I Caldarera
Tony P Venere
Misaki S Kusko
Misaki Z Sergi
Tony Q Bolognia
Juan C Nicka
James G Kusko
Munro T Schemmer
Jefferson H Amigon
Clifford I Perin
Deepesh N Butt
Faith K Kusko
Kaitlin J Stockham
Misaki I Chui
Chavez M Ferencz
Ivar U Butt
Rodrigues E Caudy
Aruna E Darakjy
Mayumi F Albares
Jennifer V Stenseth
Ricardo S Albares
Maisha L Kusko
Kaitlin Y Ruta
Alejandro R Poquette
James O Rulapaugh
Greenwood T Gillian
Alejandro B Rulapaugh
IdCountryDate
1000Canada2026-09-25
1001Japan2026-10-07
1002Australia2026-10-12
1003India2026-10-11
1004Argentina2026-10-13
1005Germany2026-10-09
1006Germany2026-10-10
1007United Kingdom2026-10-09
1008Brazil2026-10-04
1009United Kingdom2026-10-08
1010Germany2026-10-07
1011Argentina2026-09-27
1012Australia2026-10-03
1013Spain2026-10-01
1014United Kingdom2026-10-01
1015Argentina2026-09-24
1016Argentina2026-10-19
1017United Kingdom2026-10-04
1018France2026-09-25
1019United Kingdom2026-10-18
1020Argentina2026-10-19
1021Spain2026-10-15
1022Argentina2026-10-10
1023Russia2026-09-26
1024Russia2026-09-28
1025France2026-10-08
1026Germany2026-10-10
1027Spain2026-10-20
1028Italy2026-10-08
1029Spain2026-10-04
1030India2026-10-09
1031Germany2026-10-11
1032Argentina2026-09-24
1033India2026-10-06
1034Canada2026-10-23
1035Brazil2026-09-25
1036Argentina2026-10-15
1037Brazil2026-10-01
1038Germany2026-10-03
1039Australia2026-09-28
1040France2026-10-02
1041Russia2026-10-08
1042Germany2026-10-14
1043Canada2026-10-02
1044Japan2026-10-20
1045Italy2026-10-14
1046Spain2026-09-29
1047United Kingdom2026-10-15
1048Argentina2026-09-27
1049Australia2026-10-08

On-Demand Data

NameIdCountryDate
Aditya U Ostrosky1000Australia2026-10-07
Ashley K Vocelka1001Japan2026-10-18
Maisha Q Nicka1002Italy2026-09-26
Jones S Stockham1003France2026-10-13
Johnson X Ostrosky1004Australia2026-10-21
Cody A Maclead1005Spain2026-10-04
Murillo R Gillian1006United Kingdom2026-10-03
Julie H Stenseth1007Russia2026-09-28
Adams X Glick1008Italy2026-09-27
Isabel F Caldarera1009Brazil2026-09-25
Juan Y Marrier1010Japan2026-09-26
Stacey V Chui1011Germany2026-10-04
Jones R Oldroyd1012Brazil2026-10-20
Aruna S Sergi1013Italy2026-10-19
Chavez P Rulapaugh1014Japan2026-10-21
Stacey C Schemmer1015Japan2026-09-26
Julie V Shinko1016India2026-10-14
Deepesh W Gillian1017Spain2026-10-14
Greenwood I Kusko1018France2026-10-17
Jeanfrancois G Stenseth1019Russia2026-10-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez T OldroydArgentinaStephen Shaw NEW
Greenwood M StockhamItalyIvan Magalhaes PROPOSAL
Nicolas G BriddickArgentinaXuxue Feng UNQUALIFIED
Mujtaba U GauchoJapanAmy Elsner NEW
Leon C NestleFranceAsiya Javayant NEW
Johnson O SlusarskiSpainAnna Fali NEW
Ashley M SchemmerSpainIvan Magalhaes QUALIFIED
Julie A MarrierGermanyIoni Bowcher PROPOSAL
Wickens Z GlickItalyStephen Shaw NEW
Greenwood F VocelkaIndiaAnna Fali QUALIFIED
Maria I PoquetteIndiaIvan Magalhaes RENEWAL
Munro N WhobreyBrazilElwin Sharvill QUALIFIED
Claire L ChuiRussiaAnna Fali UNQUALIFIED
Wickens Y AmigonUnited KingdomBernardo Dominic NEGOTIATION
Chavez V SergiArgentinaStephen Shaw NEW
Alejandro L ShinkoItalyXuxue Feng UNQUALIFIED
Francesco P SlusarskiRussiaAmy Elsner UNQUALIFIED
Kadeem T KuskoUnited KingdomAmy Elsner QUALIFIED
Morrow R MaletBrazilOnyama Limba QUALIFIED
Munro Q ChuiAustraliaAnna Fali QUALIFIED
Clifford U FigeroaUnited KingdomAnna Fali UNQUALIFIED
Faith F CampainSpainAmy Elsner UNQUALIFIED
Wickens P GillianCanadaStephen Shaw PROPOSAL
Antonio E TollnerArgentinaAmy Elsner NEGOTIATION
Antonio F CampainRussiaOnyama Limba NEW
Nicolas J BowleyRussiaElwin Sharvill NEW
Juan N TollnerFranceXuxue Feng QUALIFIED
Silvio P FollerFranceAsiya Javayant RENEWAL
Mujtaba X NickaUnited KingdomElwin Sharvill NEGOTIATION
Claire V OldroydJapanOnyama Limba PROPOSAL
Wickens V ShinkoBrazilIvan Magalhaes NEGOTIATION
Murillo B AlbaresRussiaIoni Bowcher QUALIFIED
Salvatore Q PerinItalyAnna Fali QUALIFIED
Aditya D CaudyItalyBernardo Dominic RENEWAL
Chavez L DarakjyJapanElwin Sharvill RENEWAL
Jennifer N FlosiGermanyAsiya Javayant RENEWAL
Maisha Q RulapaughItalyBernardo Dominic QUALIFIED
Jeanfrancois E RutaGermanyOnyama Limba NEW
Nicolas K TollnerJapanBernardo Dominic NEGOTIATION
Deepesh R GarufiUnited KingdomXuxue Feng QUALIFIED

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