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
Francesco J OstroskyItalyStephen Shaw UNQUALIFIED
Aika D VenereIndiaBernardo Dominic PROPOSAL
Morrow F MarrierGermanyBernardo Dominic NEGOTIATION
Darci J SlusarskiRussiaIvan Magalhaes NEGOTIATION
Jefferson L CaldareraItalyStephen Shaw NEW
Ashley F FollerAustraliaIoni Bowcher PROPOSAL
Francesco P GlickGermanyBernardo Dominic QUALIFIED
James G BriddickIndiaIvan Magalhaes NEW
Francesco U OstroskyAustraliaAnna Fali RENEWAL
Sinclair A MaletGermanyStephen Shaw NEGOTIATION
Wickens G NickaAustraliaOnyama Limba NEGOTIATION
Munro Q RoysterCanadaIoni Bowcher RENEWAL
Munro Z FollerCanadaIvan Magalhaes NEGOTIATION
Juan A BologniaJapanIoni Bowcher PROPOSAL
Salvatore Q StockhamAustraliaAsiya Javayant PROPOSAL
Kaitlin U FollerFranceAnna Fali UNQUALIFIED
Aditya N RimIndiaBernardo Dominic PROPOSAL
Deepesh A CampainArgentinaAsiya Javayant RENEWAL
Clifford Y MaletAustraliaIvan Magalhaes QUALIFIED
Leon V FlosiIndiaIvan Magalhaes NEGOTIATION
Chavez V RimUnited KingdomAnna Fali QUALIFIED
Wickens U StockhamCanadaAmy Elsner PROPOSAL
Leon P WaycottFranceOnyama Limba NEGOTIATION
Jones W ButtBrazilBernardo Dominic QUALIFIED
Francesco E RimArgentinaAmy Elsner NEW
Adams D PaprockiUnited KingdomBernardo Dominic NEW
Misaki K ChuiItalyIoni Bowcher QUALIFIED
Aditya N AlbaresSpainOnyama Limba PROPOSAL
Cody H InouyeBrazilAmy Elsner QUALIFIED
Darci J VenereSpainAnna Fali QUALIFIED
Aruna O KuskoItalyIvan Magalhaes NEGOTIATION
Octavia C RulapaughGermanyStephen Shaw PROPOSAL
Alejandro S CaldareraArgentinaOnyama Limba PROPOSAL
Ashley G ChuiIndiaElwin Sharvill QUALIFIED
Nicolas S ButtGermanyBernardo Dominic PROPOSAL
Alejandro F WhobreyItalyXuxue Feng UNQUALIFIED
Greenwood O OstroskyItalyAmy Elsner RENEWAL
Kaitlin H MaletIndiaXuxue Feng NEGOTIATION
Jones C AlbaresFranceStephen Shaw UNQUALIFIED
Costa I StockhamBrazilBernardo Dominic RENEWAL
Johnson G OstroskyItalyXuxue Feng UNQUALIFIED
Octavia N GarufiArgentinaIoni Bowcher RENEWAL
Ivar I ShinkoCanadaElwin Sharvill QUALIFIED
Mayumi B SaylorsBrazilBernardo Dominic NEW
Johnson Q ButtSpainIvan Magalhaes RENEWAL
Misaki C RoysterSpainXuxue Feng NEW
Ivar R ButtCanadaOnyama Limba NEGOTIATION
Octavia S NickaJapanAnna Fali PROPOSAL
Rodrigues T AmigonUnited KingdomIvan Magalhaes QUALIFIED
Chavez L DilliardJapanElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Tony T FigeroaGermanyXuxue Feng NEGOTIATION
Jones U RutaJapanBernardo Dominic NEW
Maisha F SlusarskiBrazilOnyama Limba NEW
Kadeem C PerinGermanyAnna Fali QUALIFIED
Wickens Y OstroskyGermanyStephen Shaw NEGOTIATION
Stacey M ButtUnited KingdomStephen Shaw PROPOSAL
Juan S BologniaIndiaElwin Sharvill QUALIFIED
Salvatore P AmigonArgentinaIvan Magalhaes QUALIFIED
Leon M BologniaRussiaAsiya Javayant NEW
Tony G PerinSpainOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony S IturbideItaly2026-10-05Rangoni Of Florence NEGOTIATION38Asiya Javayant
1001Leja P SchemmerUnited Kingdom2026-10-02Commercial Press NEGOTIATION73Bernardo Dominic
1002David F WieserSpain2026-09-21Feltz Printing Service UNQUALIFIED92Onyama Limba
1003Isabel Z KuskoFrance2026-09-17Truhlar And Truhlar Attys QUALIFIED37Asiya Javayant
1004Mujtaba Q MorascaGermany2026-10-15Feltz Printing Service UNQUALIFIED69Onyama Limba
1005Johnson R BologniaRussia2026-10-04Feltz Printing Service RENEWAL31Anna Fali
1006Wickens X CaldareraRussia2026-09-25King, Christopher A Esq PROPOSAL52Ioni Bowcher
1007Johnson L IturbideBrazil2026-10-09Rousseaux, Michael Esq PROPOSAL37Elwin Sharvill
1008Clifford I VocelkaFrance2026-10-08Benton, John B Jr NEGOTIATION65Asiya Javayant
1009Kaitlin V SchemmerItaly2026-10-15Buckley Miller Wright RENEWAL53Stephen Shaw
1010Costa O FerenczIndia2026-10-10Commercial Press UNQUALIFIED86Bernardo Dominic
1011Mayumi R MacleadUnited Kingdom2026-10-14Buckley Miller Wright PROPOSAL48Bernardo Dominic
1012Arvin J BriddickCanada2026-09-21Printing Dimensions RENEWAL57Asiya Javayant
1013Alejandro D GauchoCanada2026-09-25Morlong Associates QUALIFIED68Ioni Bowcher
1014Chavez V PerinArgentina2026-09-19Morlong Associates RENEWAL68Anna Fali
1015Clifford O ChuiRussia2026-10-02Benton, John B Jr NEGOTIATION20Onyama Limba
1016Salvatore M MacleadUnited Kingdom2026-09-16Feiner Bros NEGOTIATION14Stephen Shaw
1017Ivar Q SaylorsUnited Kingdom2026-09-22Printing Dimensions QUALIFIED74Ivan Magalhaes
1018Adams K VocelkaIndia2026-10-13Feltz Printing Service NEGOTIATION6Elwin Sharvill
1019Greenwood A GillianSpain2026-09-17Chemel, James L Cpa NEW25Amy Elsner
1020Munro T SlusarskiItaly2026-10-10Commercial Press PROPOSAL3Stephen Shaw
1021Smith K CaldareraCanada2026-10-07Printing Dimensions NEGOTIATION19Bernardo Dominic
1022Murillo A InouyeCanada2026-09-26Dorl, James J Esq PROPOSAL51Ivan Magalhaes
1023Kadeem H FigeroaBrazil2026-10-10Chanay, Jeffrey A Esq NEW65Asiya Javayant
1024Darci C ButtJapan2026-10-08Commercial Press NEGOTIATION22Anna Fali
1025Francesco H ShinkoSpain2026-09-17Rousseaux, Michael Esq QUALIFIED35Ioni Bowcher
1026Aika T ButtItaly2026-09-16Feiner Bros QUALIFIED91Elwin Sharvill
1027Darci J DilliardRussia2026-09-17Commercial Press NEW34Amy Elsner
1028Jennifer N MarrierGermany2026-09-20Printing Dimensions NEW24Bernardo Dominic
1029Aruna O KuskoIndia2026-09-23Chapman, Ross E Esq PROPOSAL78Xuxue Feng
1030Aruna V BologniaAustralia2026-09-21Chapman, Ross E Esq PROPOSAL13Onyama Limba
1031Jones C VenereRussia2026-09-25Buckley Miller Wright RENEWAL87Amy Elsner
1032Silvio V SchemmerAustralia2026-10-04Rousseaux, Michael Esq NEGOTIATION14Onyama Limba
1033Salvatore F RoysterCanada2026-09-20Benton, John B Jr NEGOTIATION82Ioni Bowcher
1034Leja X AmigonAustralia2026-10-07Dorl, James J Esq UNQUALIFIED94Stephen Shaw
1035Smith N IturbideAustralia2026-10-09Feiner Bros QUALIFIED82Ivan Magalhaes
1036James R MaletItaly2026-09-18Commercial Press NEW66Asiya Javayant
1037Leja M RoysterIndia2026-10-04Chemel, James L Cpa RENEWAL22Anna Fali
1038Alejandro W StensethGermany2026-09-17Chanay, Jeffrey A Esq NEGOTIATION59Asiya Javayant
1039Ricardo O BowleyGermany2026-09-26Printing Dimensions UNQUALIFIED39Elwin Sharvill
1040Darci A SchemmerAustralia2026-09-16Morlong Associates QUALIFIED36Ivan Magalhaes
1041Adams H RoysterAustralia2026-10-09Buckley Miller Wright RENEWAL8Ivan Magalhaes
1042Ivar T StensethItaly2026-10-10Dorl, James J Esq PROPOSAL95Onyama Limba
1043Adams Y InouyeJapan2026-10-07Chapman, Ross E Esq UNQUALIFIED71Stephen Shaw
1044Smith S VenereFrance2026-09-23Rousseaux, Michael Esq PROPOSAL68Amy Elsner
1045Jeanfrancois W FigeroaUnited Kingdom2026-09-25Chapman, Ross E Esq NEW60Anna Fali
1046Antonio L CaldareraRussia2026-10-10Buckley Miller Wright QUALIFIED94Ioni Bowcher
1047Jeanfrancois R MorascaJapan2026-10-01Printing Dimensions NEW30Stephen Shaw
1048Deepesh M FerenczArgentina2026-09-24Morlong Associates RENEWAL8Ivan Magalhaes
1049Costa V FigeroaJapan2026-09-30Rousseaux, Michael Esq NEGOTIATION60Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Darci D GarufiArgentinaIoni Bowcher QUALIFIED
Darci Q FerenczRussiaAnna Fali NEGOTIATION
Ivar E TollnerRussiaIoni Bowcher PROPOSAL
Nicolas K BologniaCanadaAmy Elsner PROPOSAL
David U WhobreyArgentinaIvan Magalhaes QUALIFIED
Ivar W MacleadIndiaBernardo Dominic NEW
Kadeem Y KuskoCanadaXuxue Feng NEW
David Q BologniaSpainElwin Sharvill PROPOSAL
Stacey J KuskoRussiaAmy Elsner NEW
Clifford W VenereIndiaBernardo Dominic NEW
Leja Y CampainRussiaIoni Bowcher QUALIFIED
Adams S TollnerUnited KingdomAmy Elsner NEGOTIATION
Adams U MaletIndiaIoni Bowcher RENEWAL
Emily G BologniaIndiaOnyama Limba PROPOSAL
Izzy C CampainCanadaElwin Sharvill PROPOSAL
Adams P OstroskyIndiaIvan Magalhaes RENEWAL
Claire Y OldroydGermanyIoni Bowcher NEGOTIATION
Juan S FerenczCanadaIoni Bowcher NEW
Arvin U OldroydGermanyStephen Shaw PROPOSAL
Alejandro P GauchoIndiaIvan Magalhaes UNQUALIFIED
Maisha M MaletIndiaAnna Fali PROPOSAL
Wickens D GauchoCanadaStephen Shaw QUALIFIED
Kadeem D OstroskyIndiaElwin Sharvill QUALIFIED
Ricardo P MaletUnited KingdomIvan Magalhaes UNQUALIFIED
Clifford T DarakjyUnited KingdomIoni Bowcher UNQUALIFIED
Ricardo W MacleadItalyAmy Elsner NEGOTIATION
Cody T DilliardIndiaXuxue Feng PROPOSAL
Izzy N RimIndiaBernardo Dominic NEW
Isabel P SergiUnited KingdomAnna Fali RENEWAL
Ivar W NickaItalyStephen Shaw RENEWAL
Stacey J WaycottJapanAsiya Javayant UNQUALIFIED
Johnson O GauchoUnited KingdomAmy Elsner NEW
Octavia K OstroskyAustraliaElwin Sharvill NEW
Tony O VocelkaRussiaAmy Elsner NEGOTIATION
Costa U OstroskyFranceBernardo Dominic NEW
Clifford U RutaJapanIvan Magalhaes PROPOSAL
Jennifer C InouyeFranceAmy Elsner UNQUALIFIED
Leja L FerenczIndiaIvan Magalhaes PROPOSAL
Chavez P StockhamCanadaAsiya Javayant RENEWAL
Octavia X MacleadFranceOnyama Limba UNQUALIFIED
Murillo N InouyeJapanIoni Bowcher RENEWAL
Cody J DilliardIndiaOnyama Limba RENEWAL
Claire F FigeroaFranceIvan Magalhaes QUALIFIED
Ricardo I WieserArgentinaAsiya Javayant NEGOTIATION
Rodrigues M GauchoArgentinaBernardo Dominic RENEWAL
Darci X VenereArgentinaBernardo Dominic QUALIFIED
Costa G ButtAustraliaStephen Shaw PROPOSAL
Aruna I FerenczAustraliaAnna Fali QUALIFIED
Costa O NickaBrazilElwin Sharvill PROPOSAL
Wickens Y FollerCanadaAnna Fali NEGOTIATION
Frozen Columns
Name
Alejandro A Schemmer
Claire S Doe
Emily O Kusko
Octavia C Oldroyd
Julie Q Kolmetz
Jeanfrancois U Shinko
Maria Y Morasca
Kadeem K Dilliard
Isabel X Briddick
Izzy I Perin
Julie J Tollner
Octavia V Slusarski
Leja N Doe
Mujtaba N Marrier
Salvatore K Butt
Emily B Kusko
Faith V Morasca
Morrow Z Nestle
Jennifer X Nicka
Silvio C Rim
Julie F Whobrey
Julie S Nestle
Tony Z Vocelka
Morrow B Perin
Maria F Foller
Tony F Ferencz
Costa L Inouye
Stacey M Butt
Jennifer G Poquette
Darci L Doe
Ivar X Kolmetz
Clifford E Malet
Faith U Gaucho
Jennifer B Saylors
Rodrigues T Kusko
Ricardo L Bowley
Darci R Butt
Chavez J Schemmer
Stacey U Morasca
Leon P Perin
Rodrigues L Shinko
Isabel F Waycott
Octavia D Whobrey
Ashley M Campain
Cody E Morasca
Emily N Stenseth
Isabel A Saylors
Greenwood E Amigon
Antonio D Sergi
Wickens I Nestle
IdCountryDate
1000Italy2026-09-29
1001Brazil2026-09-27
1002Germany2026-09-30
1003Japan2026-10-05
1004France2026-10-11
1005United Kingdom2026-10-09
1006Japan2026-10-07
1007Brazil2026-10-13
1008Canada2026-09-17
1009Australia2026-09-26
1010Germany2026-09-26
1011Italy2026-09-30
1012Japan2026-10-02
1013Russia2026-10-08
1014Italy2026-10-15
1015United Kingdom2026-09-24
1016Australia2026-09-21
1017India2026-10-02
1018Italy2026-10-09
1019France2026-09-17
1020Germany2026-10-10
1021Russia2026-10-09
1022Brazil2026-09-22
1023Argentina2026-09-21
1024Canada2026-09-28
1025Australia2026-10-15
1026Brazil2026-10-04
1027Australia2026-09-26
1028Spain2026-09-17
1029Russia2026-09-17
1030Japan2026-10-06
1031Spain2026-09-30
1032Canada2026-10-01
1033Germany2026-09-23
1034Australia2026-10-13
1035Germany2026-10-14
1036India2026-09-24
1037Argentina2026-10-10
1038Australia2026-10-06
1039Japan2026-10-15
1040India2026-09-19
1041France2026-09-19
1042Germany2026-09-19
1043Italy2026-10-09
1044Japan2026-09-26
1045Spain2026-10-06
1046United Kingdom2026-10-02
1047Japan2026-09-22
1048Spain2026-10-10
1049Spain2026-09-19

On-Demand Data

NameIdCountryDate
Chavez M Gillian1000Canada2026-09-24
Alejandro L Stockham1001Germany2026-09-22
Smith Y Iturbide1002Germany2026-10-02
Leon S Saylors1003Canada2026-10-14
Jennifer J Kolmetz1004Canada2026-10-03
Munro S Caudy1005India2026-09-16
Isabel P Schemmer1006Japan2026-10-03
Alejandro V Ferencz1007Australia2026-10-07
Arvin S Malet1008Argentina2026-10-08
Greenwood Q Albares1009United Kingdom2026-10-10
Emily U Malet1010Canada2026-09-19
Jennifer I Poquette1011Brazil2026-09-26
Johnson O Malet1012Spain2026-10-13
Stacey G Albares1013Canada2026-09-17
Jeanfrancois I Butt1014Canada2026-09-16
Salvatore W Darakjy1015Japan2026-10-03
Stacey I Flosi1016India2026-10-12
Greenwood L Caldarera1017Canada2026-09-18
Mayumi F Wieser1018Australia2026-09-20
Chavez P Iturbide1019France2026-10-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood H KolmetzArgentinaIvan Magalhaes NEGOTIATION
Alejandro F ChuiGermanyAmy Elsner PROPOSAL
Darci W GauchoJapanAsiya Javayant QUALIFIED
Misaki D PaprockiCanadaElwin Sharvill PROPOSAL
Alejandro G SaylorsItalyStephen Shaw NEGOTIATION
Misaki L NickaBrazilXuxue Feng QUALIFIED
Clifford Y NickaArgentinaAnna Fali PROPOSAL
Octavia Y RimFranceBernardo Dominic UNQUALIFIED
Leon L ShinkoBrazilStephen Shaw QUALIFIED
David K StensethUnited KingdomXuxue Feng NEGOTIATION
Johnson H WieserJapanAmy Elsner RENEWAL
Adams N WhobreyGermanyAmy Elsner NEGOTIATION
Stacey L TollnerUnited KingdomAnna Fali QUALIFIED
Jeanfrancois L KuskoCanadaXuxue Feng NEGOTIATION
Julie I WieserIndiaStephen Shaw NEGOTIATION
James N StensethAustraliaIoni Bowcher NEW
Jeanfrancois G InouyeBrazilAsiya Javayant RENEWAL
Maria I WieserFranceAnna Fali PROPOSAL
Ashley C SaylorsItalyIvan Magalhaes RENEWAL
Leja C StockhamFranceStephen Shaw NEGOTIATION
Munro L BologniaJapanOnyama Limba PROPOSAL
Johnson X StockhamFranceBernardo Dominic RENEWAL
Aditya Z NickaGermanyBernardo Dominic QUALIFIED
Francesco Y RimBrazilIoni Bowcher NEGOTIATION
Smith O MorascaItalyOnyama Limba PROPOSAL
Deepesh A MarrierBrazilXuxue Feng NEGOTIATION
Greenwood J GarufiUnited KingdomAsiya Javayant QUALIFIED
Johnson S CaldareraAustraliaAnna Fali NEW
Cody L SlusarskiRussiaOnyama Limba UNQUALIFIED
Aditya H ButtItalyXuxue Feng QUALIFIED
Isabel T TollnerArgentinaAsiya Javayant RENEWAL
Kaitlin P FollerArgentinaStephen Shaw RENEWAL
Arvin G StensethIndiaOnyama Limba PROPOSAL
Tony D MacleadIndiaIoni Bowcher PROPOSAL
Silvio I CaudyGermanyAnna Fali NEW
Murillo R WieserGermanyAmy Elsner PROPOSAL
Ricardo A AmigonCanadaIvan Magalhaes UNQUALIFIED
Kaitlin H FollerCanadaIoni Bowcher NEGOTIATION
Chavez E KolmetzUnited KingdomIvan Magalhaes UNQUALIFIED
Leja E BowleyRussiaAnna Fali 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>