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
Aika Q MorascaSpainOnyama Limba RENEWAL
Francesco S StockhamArgentinaAsiya Javayant QUALIFIED
Kadeem D PerinCanadaXuxue Feng RENEWAL
Stacey W VenereUnited KingdomAmy Elsner QUALIFIED
James A AlbaresAustraliaBernardo Dominic NEW
Misaki W SergiUnited KingdomXuxue Feng NEGOTIATION
Stacey E GarufiFranceBernardo Dominic NEGOTIATION
Kaitlin F PerinCanadaIvan Magalhaes QUALIFIED
Sinclair W StockhamAustraliaBernardo Dominic NEGOTIATION
Emily N KuskoAustraliaElwin Sharvill QUALIFIED
Alejandro B ShinkoJapanStephen Shaw RENEWAL
Silvio A OstroskyGermanyIvan Magalhaes NEGOTIATION
Mujtaba T KuskoUnited KingdomIvan Magalhaes RENEWAL
Chavez R GauchoCanadaAnna Fali NEGOTIATION
Misaki E GarufiGermanyIoni Bowcher RENEWAL
Mayumi C OstroskyRussiaStephen Shaw UNQUALIFIED
Clifford C BowleyCanadaIvan Magalhaes PROPOSAL
Deepesh S StockhamGermanyIoni Bowcher NEGOTIATION
Sinclair B IturbideRussiaIoni Bowcher NEGOTIATION
Munro J CaudyIndiaXuxue Feng RENEWAL
Julie M SergiRussiaXuxue Feng NEW
Johnson B ButtGermanyStephen Shaw NEW
Greenwood A SchemmerCanadaElwin Sharvill PROPOSAL
Kaitlin B WaycottIndiaStephen Shaw PROPOSAL
Maria H PaprockiCanadaIvan Magalhaes PROPOSAL
Faith H WieserUnited KingdomAmy Elsner RENEWAL
Murillo Z FigeroaIndiaIvan Magalhaes UNQUALIFIED
Chavez B BowleyGermanyAmy Elsner PROPOSAL
Johnson Y OldroydBrazilBernardo Dominic QUALIFIED
Ashley Z BowleyAustraliaBernardo Dominic UNQUALIFIED
Clifford R InouyeJapanElwin Sharvill PROPOSAL
Maria L InouyeItalyElwin Sharvill UNQUALIFIED
Wickens X ButtArgentinaAsiya Javayant PROPOSAL
Aika K OstroskyGermanyBernardo Dominic PROPOSAL
Clifford Z ChuiItalyXuxue Feng QUALIFIED
Octavia P SchemmerSpainAnna Fali RENEWAL
Julie Y FigeroaUnited KingdomOnyama Limba RENEWAL
Aditya S OldroydAustraliaAmy Elsner PROPOSAL
Tony V RulapaughGermanyBernardo Dominic QUALIFIED
Alejandro G FigeroaJapanIvan Magalhaes RENEWAL
Nicolas D GarufiSpainBernardo Dominic NEW
Mujtaba V PoquetteCanadaAsiya Javayant NEW
Rodrigues F FollerGermanyAsiya Javayant NEW
Clifford Y SlusarskiSpainXuxue Feng NEW
Octavia D FollerBrazilAsiya Javayant UNQUALIFIED
Costa T VocelkaArgentinaIvan Magalhaes NEW
Munro S CaldareraItalyBernardo Dominic RENEWAL
Mayumi X GillianArgentinaElwin Sharvill NEW
James T RimSpainStephen Shaw NEGOTIATION
Arvin F BologniaItalyAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja L FlosiAustraliaAmy Elsner UNQUALIFIED
Leja L BriddickRussiaBernardo Dominic RENEWAL
Aditya V GillianArgentinaAsiya Javayant RENEWAL
Smith F CaudyArgentinaIvan Magalhaes RENEWAL
Mayumi N SaylorsSpainStephen Shaw QUALIFIED
Ashley O RimAustraliaIoni Bowcher UNQUALIFIED
Aruna N WhobreyAustraliaAnna Fali NEW
Francesco X DilliardFranceAnna Fali NEW
Jefferson Y BriddickAustraliaXuxue Feng RENEWAL
Silvio H NestleSpainAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika A DoeUnited Kingdom2026-10-31Commercial Press PROPOSAL9Elwin Sharvill
1001Juan A WhobreyArgentina2026-10-26Benton, John B Jr NEGOTIATION86Onyama Limba
1002Kadeem I PaprockiAustralia2026-10-27Dorl, James J Esq QUALIFIED37Xuxue Feng
1003Julie A PerinUnited Kingdom2026-11-10Buckley Miller Wright RENEWAL7Anna Fali
1004Tony B OstroskyGermany2026-11-02Chanay, Jeffrey A Esq UNQUALIFIED30Stephen Shaw
1005Francesco K BologniaItaly2026-10-16Chapman, Ross E Esq RENEWAL0Anna Fali
1006James X AlbaresJapan2026-11-10King, Christopher A Esq NEW3Ioni Bowcher
1007Emily D CaudyIndia2026-10-28Chapman, Ross E Esq PROPOSAL64Ivan Magalhaes
1008Cody Q WieserBrazil2026-11-04Truhlar And Truhlar Attys NEGOTIATION69Asiya Javayant
1009Adams U GillianJapan2026-10-23Morlong Associates RENEWAL7Elwin Sharvill
1010Mujtaba R TollnerBrazil2026-10-24Feltz Printing Service PROPOSAL40Bernardo Dominic
1011Tony M SlusarskiJapan2026-10-29Chanay, Jeffrey A Esq NEW60Elwin Sharvill
1012Mujtaba F FigeroaCanada2026-10-27Printing Dimensions PROPOSAL68Stephen Shaw
1013Salvatore B InouyeFrance2026-10-27Feltz Printing Service PROPOSAL59Ivan Magalhaes
1014Deepesh F KolmetzArgentina2026-10-21Rangoni Of Florence PROPOSAL37Ivan Magalhaes
1015Alejandro L RimUnited Kingdom2026-10-16Rousseaux, Michael Esq NEGOTIATION96Xuxue Feng
1016Octavia Y MaletAustralia2026-11-06Truhlar And Truhlar Attys PROPOSAL39Bernardo Dominic
1017Nicolas O InouyeSpain2026-10-26Feltz Printing Service QUALIFIED9Asiya Javayant
1018James F WieserIndia2026-11-04Commercial Press NEGOTIATION84Onyama Limba
1019Ivar Q MacleadJapan2026-10-28Feiner Bros QUALIFIED66Ioni Bowcher
1020David H OldroydRussia2026-10-22Morlong Associates NEW98Ioni Bowcher
1021Costa F MacleadFrance2026-11-06Morlong Associates NEW88Ioni Bowcher
1022Rodrigues D FollerGermany2026-10-22Chanay, Jeffrey A Esq RENEWAL29Anna Fali
1023Sinclair X GlickIndia2026-10-21Truhlar And Truhlar Attys RENEWAL88Bernardo Dominic
1024Rodrigues P MorascaGermany2026-11-08Printing Dimensions UNQUALIFIED61Elwin Sharvill
1025Francesco Q OstroskyGermany2026-11-02Benton, John B Jr PROPOSAL6Bernardo Dominic
1026Arvin K DilliardIndia2026-11-09Feiner Bros NEW38Elwin Sharvill
1027Izzy H BriddickCanada2026-10-25Chanay, Jeffrey A Esq QUALIFIED20Ioni Bowcher
1028Francesco C ChuiJapan2026-10-28Feiner Bros PROPOSAL27Anna Fali
1029Tony X SchemmerJapan2026-10-25Dorl, James J Esq PROPOSAL79Xuxue Feng
1030Smith P PaprockiJapan2026-10-23Morlong Associates QUALIFIED15Xuxue Feng
1031Maisha L WaycottBrazil2026-11-08Truhlar And Truhlar Attys QUALIFIED3Ivan Magalhaes
1032Salvatore D StockhamBrazil2026-10-18Rousseaux, Michael Esq NEW42Amy Elsner
1033Faith C BriddickRussia2026-11-02Benton, John B Jr PROPOSAL68Bernardo Dominic
1034Maisha K CaldareraGermany2026-11-07Buckley Miller Wright RENEWAL92Xuxue Feng
1035Isabel C BologniaIndia2026-10-25Morlong Associates RENEWAL40Ivan Magalhaes
1036Isabel W SchemmerCanada2026-11-03Chanay, Jeffrey A Esq NEGOTIATION0Xuxue Feng
1037Aruna Z ShinkoRussia2026-10-23Rousseaux, Michael Esq NEGOTIATION18Onyama Limba
1038Greenwood Q RutaFrance2026-11-14Morlong Associates RENEWAL41Xuxue Feng
1039Morrow W SlusarskiItaly2026-11-02Chapman, Ross E Esq NEGOTIATION46Asiya Javayant
1040Maisha H AmigonUnited Kingdom2026-10-30Feiner Bros PROPOSAL63Ioni Bowcher
1041Johnson A SergiSpain2026-11-10Morlong Associates QUALIFIED61Elwin Sharvill
1042Murillo J FollerJapan2026-11-04Rousseaux, Michael Esq RENEWAL1Ioni Bowcher
1043Stacey U CaudyArgentina2026-10-22Rousseaux, Michael Esq UNQUALIFIED84Bernardo Dominic
1044Isabel S SergiFrance2026-10-17Feiner Bros PROPOSAL65Elwin Sharvill
1045Jefferson A SlusarskiFrance2026-11-02Commercial Press NEW30Anna Fali
1046Chavez W MorascaGermany2026-10-24Morlong Associates PROPOSAL26Ioni Bowcher
1047Francesco T WhobreyIndia2026-11-10Feltz Printing Service NEGOTIATION84Anna Fali
1048Julie T GillianFrance2026-11-03Dorl, James J Esq UNQUALIFIED45Stephen Shaw
1049Leja J RutaCanada2026-11-14Rousseaux, Michael Esq UNQUALIFIED67Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aruna A BologniaJapanOnyama Limba NEGOTIATION
Wickens I WieserUnited KingdomAsiya Javayant NEGOTIATION
Ivar A TollnerSpainIoni Bowcher RENEWAL
Ivar U WaycottSpainBernardo Dominic NEW
Jennifer V BologniaIndiaBernardo Dominic NEGOTIATION
James V OldroydGermanyElwin Sharvill PROPOSAL
Maria S IturbideGermanyIvan Magalhaes NEGOTIATION
Wickens Z CaldareraSpainAsiya Javayant NEGOTIATION
Stacey O MaletUnited KingdomIoni Bowcher UNQUALIFIED
Aika J GarufiIndiaIoni Bowcher RENEWAL
Izzy I MaletSpainOnyama Limba NEGOTIATION
Johnson R ShinkoAustraliaAmy Elsner NEW
Kaitlin W SaylorsFranceBernardo Dominic NEW
Faith I ButtCanadaStephen Shaw UNQUALIFIED
Murillo X RoysterIndiaAsiya Javayant NEW
Julie Q PoquetteArgentinaStephen Shaw UNQUALIFIED
Jones G RutaArgentinaIvan Magalhaes PROPOSAL
Cody A DoeAustraliaAnna Fali PROPOSAL
Emily G ChuiItalyAmy Elsner QUALIFIED
David U AmigonCanadaOnyama Limba NEW
Darci T MorascaArgentinaAsiya Javayant NEW
Greenwood H MaletItalyOnyama Limba RENEWAL
Costa H KuskoJapanXuxue Feng QUALIFIED
Mayumi V OstroskyRussiaStephen Shaw RENEWAL
Juan M BriddickJapanAnna Fali PROPOSAL
Claire C RimBrazilStephen Shaw PROPOSAL
Aditya U OstroskyIndiaBernardo Dominic NEGOTIATION
Tony T SergiBrazilIvan Magalhaes NEGOTIATION
Costa I WhobreyCanadaAnna Fali PROPOSAL
Francesco P GillianArgentinaBernardo Dominic NEW
Jennifer Y DilliardIndiaIoni Bowcher UNQUALIFIED
Rodrigues Q CaldareraItalyAsiya Javayant QUALIFIED
Jennifer W WaycottFranceAmy Elsner NEW
Leon T RoysterItalyXuxue Feng QUALIFIED
Misaki T PaprockiUnited KingdomStephen Shaw UNQUALIFIED
Jefferson F SlusarskiCanadaIoni Bowcher UNQUALIFIED
Cody U DilliardIndiaStephen Shaw NEGOTIATION
Rodrigues H MarrierIndiaIoni Bowcher NEW
Salvatore V ButtItalyIoni Bowcher NEW
Leja B RutaSpainAmy Elsner QUALIFIED
Julie U RulapaughIndiaBernardo Dominic RENEWAL
Costa X SlusarskiCanadaBernardo Dominic NEW
Greenwood Q PaprockiJapanElwin Sharvill QUALIFIED
Jennifer M WaycottCanadaElwin Sharvill NEGOTIATION
Maisha O DarakjyAustraliaIoni Bowcher NEGOTIATION
Clifford V SlusarskiBrazilIoni Bowcher UNQUALIFIED
Nicolas P RulapaughJapanAnna Fali RENEWAL
Ricardo N GillianIndiaBernardo Dominic RENEWAL
Murillo P PerinGermanyXuxue Feng UNQUALIFIED
Ivar K InouyeIndiaAsiya Javayant RENEWAL
Frozen Columns
Name
Salvatore G Campain
Faith P Malet
Adams H Albares
Greenwood U Sergi
Nicolas K Kusko
Isabel A Slusarski
Maisha M Maclead
Maisha B Gillian
Morrow K Nicka
Jones K Venere
Stacey M Rim
Johnson R Garufi
David Q Ruta
Jefferson R Iturbide
Claire E Perin
Faith E Briddick
Aruna Q Inouye
Clifford Q Paprocki
Juan X Chui
Greenwood R Saylors
Kaitlin O Venere
Greenwood E Kusko
Mujtaba B Malet
Faith C Malet
Ivar X Maclead
Smith Y Caldarera
Deepesh C Gaucho
Ashley S Briddick
Ricardo I Venere
Smith H Garufi
Ricardo F Bolognia
Kaitlin A Caudy
Chavez S Ostrosky
Mujtaba Q Caudy
Rodrigues D Morasca
Cody M Garufi
Greenwood P Malet
Jones J Figeroa
Leja H Iturbide
Ricardo E Inouye
Munro A Malet
Wickens Z Darakjy
Aika P Chui
Aditya A Malet
Jefferson A Whobrey
Rodrigues Q Royster
Aruna X Caudy
Jones A Schemmer
Leon G Oldroyd
Jones S Vocelka
IdCountryDate
1000Italy2026-10-27
1001Australia2026-11-01
1002Italy2026-11-06
1003Brazil2026-10-16
1004Germany2026-10-31
1005India2026-10-19
1006Australia2026-10-26
1007Japan2026-10-18
1008India2026-11-02
1009United Kingdom2026-11-01
1010Japan2026-10-21
1011Canada2026-10-17
1012Spain2026-10-23
1013France2026-10-18
1014Italy2026-11-09
1015Italy2026-10-21
1016France2026-11-14
1017India2026-10-17
1018United Kingdom2026-10-21
1019United Kingdom2026-10-28
1020Spain2026-11-06
1021Australia2026-11-13
1022Italy2026-10-18
1023France2026-10-24
1024Russia2026-11-02
1025Argentina2026-10-24
1026India2026-10-24
1027United Kingdom2026-10-17
1028India2026-10-24
1029Russia2026-10-30
1030Italy2026-11-04
1031United Kingdom2026-10-20
1032India2026-11-04
1033India2026-10-26
1034Spain2026-11-09
1035Italy2026-10-17
1036Australia2026-10-28
1037Canada2026-10-17
1038Italy2026-10-20
1039Canada2026-10-23
1040Australia2026-10-30
1041India2026-10-27
1042India2026-11-09
1043Japan2026-11-03
1044United Kingdom2026-10-16
1045Russia2026-11-11
1046Canada2026-11-08
1047Argentina2026-10-27
1048France2026-10-20
1049Argentina2026-10-27

On-Demand Data

NameIdCountryDate
Stacey P Maclead1000Italy2026-11-03
Jeanfrancois M Butt1001Argentina2026-11-07
Arvin F Gaucho1002France2026-11-01
Rodrigues Y Amigon1003Argentina2026-10-20
Kaitlin L Nicka1004Germany2026-10-30
Sinclair U Poquette1005Argentina2026-10-21
Misaki S Butt1006Canada2026-11-02
Deepesh S Nicka1007United Kingdom2026-10-31
Cody U Glick1008India2026-10-31
Chavez E Perin1009Germany2026-10-24
James Q Whobrey1010Australia2026-11-02
Morrow E Amigon1011Japan2026-10-17
Kaitlin A Royster1012United Kingdom2026-10-30
Jennifer V Oldroyd1013Russia2026-10-18
Aruna Q Perin1014India2026-10-29
Johnson K Perin1015Germany2026-10-28
Ashley K Ferencz1016Italy2026-10-29
Rodrigues C Albares1017Germany2026-10-30
Morrow P Slusarski1018Japan2026-10-24
Aika H Slusarski1019Brazil2026-11-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford V SlusarskiCanadaXuxue Feng NEW
Munro Z AmigonRussiaAmy Elsner NEW
Smith L CaldareraArgentinaStephen Shaw NEGOTIATION
Silvio F CaudyBrazilOnyama Limba NEW
Maria F StensethJapanIoni Bowcher QUALIFIED
Claire M PaprockiItalyElwin Sharvill NEW
Maria U GarufiGermanyAsiya Javayant UNQUALIFIED
Silvio W CampainSpainXuxue Feng QUALIFIED
Murillo A ShinkoSpainOnyama Limba RENEWAL
James Y ShinkoItalyAnna Fali QUALIFIED
Izzy C DilliardItalyIoni Bowcher NEGOTIATION
Johnson H ChuiCanadaStephen Shaw QUALIFIED
Murillo S AlbaresAustraliaAmy Elsner PROPOSAL
Morrow Q WaycottGermanyOnyama Limba NEGOTIATION
Kaitlin X StockhamUnited KingdomAsiya Javayant UNQUALIFIED
Aika N CaudyItalyIvan Magalhaes QUALIFIED
Cody Y GarufiAustraliaBernardo Dominic RENEWAL
Munro O MacleadRussiaIvan Magalhaes NEW
Aditya M ButtAustraliaAsiya Javayant UNQUALIFIED
Aruna G MaletBrazilStephen Shaw PROPOSAL
Aika R ShinkoArgentinaAsiya Javayant NEW
Aika Z KolmetzRussiaIoni Bowcher QUALIFIED
Darci Q AmigonCanadaAsiya Javayant NEW
Rodrigues E RulapaughIndiaAnna Fali RENEWAL
Jennifer A AmigonAustraliaIoni Bowcher NEW
Leon P ButtFranceXuxue Feng NEGOTIATION
Clifford C CaudyBrazilAnna Fali NEW
Izzy Z StockhamJapanAnna Fali NEGOTIATION
Salvatore B SchemmerItalyXuxue Feng UNQUALIFIED
Arvin J WieserItalyStephen Shaw UNQUALIFIED
Adams K AmigonArgentinaOnyama Limba PROPOSAL
Aika S FigeroaSpainXuxue Feng QUALIFIED
Jennifer P VenereFranceXuxue Feng NEW
Darci D GarufiCanadaOnyama Limba PROPOSAL
Claire Q FollerJapanIvan Magalhaes RENEWAL
Aruna C SlusarskiArgentinaBernardo Dominic QUALIFIED
Arvin P BriddickFranceAmy Elsner QUALIFIED
Alejandro T PoquetteGermanyOnyama Limba NEGOTIATION
Sinclair V BologniaItalyAmy Elsner QUALIFIED
David X BowleySpainAnna Fali 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>