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
Salvatore W AmigonJapanAnna Fali NEGOTIATION
Faith H TollnerIndiaAmy Elsner QUALIFIED
Octavia D SlusarskiFranceBernardo Dominic RENEWAL
James L CaldareraJapanStephen Shaw UNQUALIFIED
Munro O DilliardArgentinaAmy Elsner QUALIFIED
Leja H KuskoBrazilAnna Fali UNQUALIFIED
Jefferson J SaylorsJapanIvan Magalhaes NEGOTIATION
Chavez C FigeroaFranceAmy Elsner NEW
Octavia Z ChuiIndiaBernardo Dominic NEGOTIATION
David P MarrierItalyOnyama Limba UNQUALIFIED
Leja Y ChuiAustraliaOnyama Limba UNQUALIFIED
Morrow L StockhamItalyOnyama Limba PROPOSAL
Jennifer W OstroskyItalyIoni Bowcher NEGOTIATION
Leon D FollerGermanyOnyama Limba NEW
Salvatore A RimArgentinaAmy Elsner NEGOTIATION
Francesco D FerenczArgentinaIoni Bowcher QUALIFIED
Faith E FerenczIndiaXuxue Feng NEW
Munro O CaudyRussiaAsiya Javayant NEW
Stacey K GauchoBrazilIvan Magalhaes UNQUALIFIED
Nicolas C SaylorsIndiaAmy Elsner NEW
Maria N PerinUnited KingdomElwin Sharvill RENEWAL
Ivar H IturbideSpainAmy Elsner NEW
Nicolas J FerenczArgentinaElwin Sharvill UNQUALIFIED
Emily N MarrierSpainIvan Magalhaes PROPOSAL
Jennifer I RoysterCanadaAnna Fali QUALIFIED
Rodrigues Z ShinkoBrazilAsiya Javayant QUALIFIED
Morrow R PerinIndiaAsiya Javayant NEW
Cody F StensethGermanyBernardo Dominic NEW
Claire B OstroskyGermanyXuxue Feng UNQUALIFIED
Cody F StockhamAustraliaOnyama Limba QUALIFIED
Ashley P BriddickUnited KingdomElwin Sharvill RENEWAL
Claire Y SergiBrazilXuxue Feng NEGOTIATION
Alejandro D WhobreyGermanyStephen Shaw QUALIFIED
Arvin X ChuiArgentinaIoni Bowcher UNQUALIFIED
Juan I RutaIndiaAnna Fali QUALIFIED
Deepesh S GlickJapanXuxue Feng NEW
Leon Q GillianCanadaAmy Elsner NEW
Leja D StockhamCanadaIoni Bowcher NEGOTIATION
Rodrigues U BriddickArgentinaAsiya Javayant NEW
Sinclair X FerenczArgentinaIvan Magalhaes NEGOTIATION
Leon S FigeroaJapanBernardo Dominic NEGOTIATION
Chavez P SergiItalyStephen Shaw UNQUALIFIED
Smith O WieserFranceElwin Sharvill NEW
Kaitlin B FerenczArgentinaAsiya Javayant NEW
Julie H NickaBrazilOnyama Limba NEGOTIATION
Kaitlin B PaprockiRussiaAnna Fali RENEWAL
Jeanfrancois K CampainSpainAnna Fali PROPOSAL
Emily P BologniaRussiaAsiya Javayant QUALIFIED
Jeanfrancois G StensethGermanyOnyama Limba NEW
Johnson J TollnerGermanyElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Julie I GarufiIndiaBernardo Dominic NEGOTIATION
Jeanfrancois T TollnerUnited KingdomElwin Sharvill PROPOSAL
Kadeem J CampainCanadaAnna Fali QUALIFIED
Claire P IturbideFranceIvan Magalhaes UNQUALIFIED
Isabel P SaylorsIndiaIvan Magalhaes UNQUALIFIED
Darci M CaldareraBrazilAnna Fali PROPOSAL
Smith C TollnerItalyBernardo Dominic NEGOTIATION
Johnson E RimUnited KingdomStephen Shaw PROPOSAL
Costa Z FigeroaCanadaBernardo Dominic PROPOSAL
Deepesh D ShinkoAustraliaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria B DarakjyIndia2026-10-05Rangoni Of Florence UNQUALIFIED76Anna Fali
1001Arvin P WaycottCanada2026-10-12Truhlar And Truhlar Attys QUALIFIED73Asiya Javayant
1002Antonio U TollnerBrazil2026-10-23Chapman, Ross E Esq PROPOSAL79Bernardo Dominic
1003Clifford Q CaudyIndia2026-10-14King, Christopher A Esq QUALIFIED98Onyama Limba
1004Misaki T SaylorsJapan2026-10-06Dorl, James J Esq NEW56Bernardo Dominic
1005Cody X CaldareraItaly2026-10-03Feltz Printing Service QUALIFIED58Amy Elsner
1006Chavez F AmigonSpain2026-10-25Commercial Press NEGOTIATION58Elwin Sharvill
1007Adams F CampainGermany2026-10-23Truhlar And Truhlar Attys UNQUALIFIED39Xuxue Feng
1008Costa I PerinUnited Kingdom2026-10-07Feiner Bros NEGOTIATION67Anna Fali
1009Ivar B RulapaughArgentina2026-10-05Buckley Miller Wright NEW11Stephen Shaw
1010Salvatore R SaylorsRussia2026-10-26Truhlar And Truhlar Attys NEW75Ioni Bowcher
1011Julie V MacleadSpain2026-10-26Commercial Press NEGOTIATION55Anna Fali
1012Costa S StensethSpain2026-10-19Morlong Associates RENEWAL38Onyama Limba
1013Isabel R DoeFrance2026-10-10Printing Dimensions UNQUALIFIED85Asiya Javayant
1014Claire J AmigonIndia2026-10-30Truhlar And Truhlar Attys QUALIFIED31Anna Fali
1015Faith J MacleadIndia2026-10-29Truhlar And Truhlar Attys NEW82Anna Fali
1016Chavez T SlusarskiSpain2026-10-27Feltz Printing Service QUALIFIED7Amy Elsner
1017Juan O ChuiBrazil2026-10-07King, Christopher A Esq NEGOTIATION41Amy Elsner
1018Rodrigues S CaudyUnited Kingdom2026-10-23Feiner Bros RENEWAL2Ioni Bowcher
1019Francesco X MorascaSpain2026-10-05Morlong Associates PROPOSAL41Xuxue Feng
1020James Z StensethItaly2026-10-06Morlong Associates PROPOSAL37Asiya Javayant
1021Murillo J GarufiFrance2026-10-20Chapman, Ross E Esq PROPOSAL53Anna Fali
1022Maisha U StockhamSpain2026-10-15King, Christopher A Esq UNQUALIFIED71Anna Fali
1023Isabel Z RimBrazil2026-10-19Chapman, Ross E Esq NEGOTIATION69Anna Fali
1024Clifford K DarakjyGermany2026-10-07Rousseaux, Michael Esq UNQUALIFIED48Xuxue Feng
1025Kaitlin D PaprockiItaly2026-10-11Printing Dimensions RENEWAL89Asiya Javayant
1026Adams H GlickRussia2026-11-01Buckley Miller Wright PROPOSAL32Bernardo Dominic
1027Izzy P InouyeItaly2026-10-29Benton, John B Jr NEW69Ivan Magalhaes
1028Aditya P ShinkoBrazil2026-10-16Benton, John B Jr QUALIFIED69Bernardo Dominic
1029Tony Y GarufiFrance2026-10-30Feltz Printing Service UNQUALIFIED4Onyama Limba
1030Rodrigues N WhobreyIndia2026-10-12Chapman, Ross E Esq NEW17Ivan Magalhaes
1031Claire F AlbaresItaly2026-10-11Commercial Press UNQUALIFIED4Xuxue Feng
1032Jefferson P ButtAustralia2026-10-17Commercial Press PROPOSAL77Asiya Javayant
1033Ivar Q SergiUnited Kingdom2026-10-13Morlong Associates PROPOSAL2Xuxue Feng
1034Jennifer X BowleyArgentina2026-11-01Buckley Miller Wright NEW2Xuxue Feng
1035Smith D SergiItaly2026-10-09Rangoni Of Florence RENEWAL51Ioni Bowcher
1036Smith L FerenczCanada2026-10-29Rousseaux, Michael Esq NEW39Elwin Sharvill
1037Isabel L WaycottAustralia2026-11-01Chapman, Ross E Esq UNQUALIFIED70Amy Elsner
1038Aruna V StensethRussia2026-10-17Dorl, James J Esq NEW2Asiya Javayant
1039Nicolas B BowleyRussia2026-10-21Morlong Associates UNQUALIFIED14Elwin Sharvill
1040Ivar S WhobreyGermany2026-10-14King, Christopher A Esq RENEWAL14Ivan Magalhaes
1041David M DoeAustralia2026-10-22Feiner Bros NEW51Ivan Magalhaes
1042Ivar Y RulapaughFrance2026-10-31Truhlar And Truhlar Attys PROPOSAL25Elwin Sharvill
1043Murillo J BowleySpain2026-10-17Chemel, James L Cpa QUALIFIED30Asiya Javayant
1044Murillo U RoysterCanada2026-10-20Dorl, James J Esq RENEWAL52Asiya Javayant
1045Morrow S IturbideCanada2026-10-09Chemel, James L Cpa NEW75Stephen Shaw
1046Chavez Z MacleadFrance2026-10-14Chemel, James L Cpa QUALIFIED87Elwin Sharvill
1047Greenwood Q CaudyBrazil2026-10-05Chanay, Jeffrey A Esq NEW49Amy Elsner
1048Maisha E DilliardUnited Kingdom2026-10-03Chanay, Jeffrey A Esq RENEWAL13Bernardo Dominic
1049Misaki V SchemmerAustralia2026-10-06Chemel, James L Cpa UNQUALIFIED81Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Juan N VenereCanadaIoni Bowcher NEGOTIATION
Maisha N ChuiFranceIoni Bowcher RENEWAL
Leja R GillianFranceOnyama Limba NEW
Costa O MarrierUnited KingdomAsiya Javayant RENEWAL
Costa T CaudyGermanyStephen Shaw PROPOSAL
Jones K TollnerCanadaBernardo Dominic PROPOSAL
Jeanfrancois D SergiAustraliaIoni Bowcher RENEWAL
Jefferson R KolmetzBrazilElwin Sharvill NEGOTIATION
Aruna E ChuiBrazilIvan Magalhaes NEGOTIATION
James H MacleadCanadaStephen Shaw QUALIFIED
Maria E SlusarskiBrazilXuxue Feng RENEWAL
Greenwood X PaprockiItalyAmy Elsner UNQUALIFIED
Jennifer M BologniaUnited KingdomIoni Bowcher NEW
Francesco A FerenczFranceAmy Elsner QUALIFIED
Sinclair W MaletFranceBernardo Dominic QUALIFIED
Aruna X BowleyItalyXuxue Feng NEGOTIATION
Jefferson B RutaRussiaIoni Bowcher NEW
Cody A GlickItalyBernardo Dominic RENEWAL
Arvin J AmigonArgentinaAsiya Javayant UNQUALIFIED
Munro B MorascaGermanyAnna Fali NEW
Adams T PoquetteUnited KingdomBernardo Dominic RENEWAL
Mujtaba P AmigonArgentinaElwin Sharvill UNQUALIFIED
Rodrigues C GauchoItalyIvan Magalhaes QUALIFIED
Aditya I OstroskyCanadaAsiya Javayant RENEWAL
Aruna X NickaJapanBernardo Dominic RENEWAL
Tony C StockhamIndiaAmy Elsner RENEWAL
Julie Y AmigonCanadaStephen Shaw RENEWAL
David H BriddickCanadaAsiya Javayant UNQUALIFIED
Mujtaba M DoeIndiaAnna Fali PROPOSAL
Munro F PerinArgentinaAsiya Javayant RENEWAL
Cody T AmigonGermanyIvan Magalhaes RENEWAL
Emily X MarrierAustraliaAnna Fali NEGOTIATION
Faith U VocelkaGermanyAsiya Javayant QUALIFIED
Antonio Q NickaJapanBernardo Dominic UNQUALIFIED
Jones N WaycottBrazilXuxue Feng NEGOTIATION
Ivar I VocelkaSpainBernardo Dominic QUALIFIED
Mujtaba I SaylorsItalyXuxue Feng RENEWAL
Alejandro X DarakjyCanadaAnna Fali RENEWAL
Alejandro F InouyeArgentinaStephen Shaw PROPOSAL
Darci B GauchoSpainStephen Shaw NEGOTIATION
Maisha A GauchoAustraliaElwin Sharvill QUALIFIED
Emily D DarakjySpainOnyama Limba QUALIFIED
Clifford A AmigonGermanyAmy Elsner NEGOTIATION
Chavez A MaletCanadaOnyama Limba QUALIFIED
Misaki Q PerinFranceIvan Magalhaes RENEWAL
Johnson D SergiJapanOnyama Limba NEGOTIATION
Smith G MacleadGermanyBernardo Dominic NEW
Stacey F OstroskyAustraliaStephen Shaw PROPOSAL
Sinclair D RulapaughBrazilXuxue Feng NEW
Cody F CampainItalyElwin Sharvill PROPOSAL
Frozen Columns
Name
Rodrigues P Kolmetz
Stacey W Foller
Maria Z Shinko
Salvatore Q Malet
Juan G Amigon
Faith Y Vocelka
Izzy T Slusarski
Leja C Whobrey
Darci N Rim
Greenwood L Kusko
Johnson Q Paprocki
David E Rulapaugh
Maisha D Stockham
Johnson Z Bowley
Jeanfrancois N Nestle
Aika G Tollner
Izzy G Nestle
Chavez G Albares
Aruna U Nestle
James E Flosi
Chavez V Stockham
Clifford G Foller
Silvio X Saylors
Jones M Bowley
Clifford B Glick
Mayumi C Oldroyd
Murillo P Nicka
Kadeem Q Caudy
Nicolas R Stockham
Jefferson K Amigon
James S Saylors
Sinclair O Gaucho
Silvio H Albares
Nicolas W Dilliard
Juan B Sergi
Clifford E Caldarera
Juan H Stenseth
Aditya I Bowley
Jones T Amigon
James F Campain
Darci H Waycott
Aditya M Perin
Faith Z Venere
Aruna F Bolognia
Smith W Kolmetz
Deepesh R Figeroa
Juan K Kusko
David P Maclead
Morrow I Garufi
Mujtaba Q Flosi
IdCountryDate
1000Argentina2026-10-30
1001Argentina2026-10-30
1002Brazil2026-10-25
1003India2026-11-01
1004Spain2026-10-22
1005Russia2026-10-31
1006Canada2026-10-20
1007Russia2026-10-15
1008Germany2026-10-19
1009Germany2026-10-11
1010Australia2026-10-12
1011India2026-10-29
1012Spain2026-10-07
1013France2026-10-27
1014Italy2026-10-30
1015Germany2026-10-08
1016United Kingdom2026-10-13
1017Germany2026-10-18
1018Italy2026-10-20
1019France2026-10-26
1020Argentina2026-10-11
1021United Kingdom2026-10-29
1022United Kingdom2026-10-04
1023France2026-10-22
1024Brazil2026-10-08
1025Canada2026-10-23
1026Brazil2026-10-28
1027United Kingdom2026-10-17
1028Spain2026-10-14
1029Russia2026-10-26
1030India2026-10-21
1031Australia2026-10-11
1032Germany2026-10-31
1033Russia2026-10-03
1034Brazil2026-10-31
1035United Kingdom2026-10-04
1036France2026-10-23
1037Brazil2026-10-31
1038Canada2026-10-20
1039Argentina2026-10-03
1040France2026-10-22
1041United Kingdom2026-10-12
1042Germany2026-10-29
1043Canada2026-10-26
1044Japan2026-10-15
1045United Kingdom2026-10-19
1046India2026-10-23
1047United Kingdom2026-10-03
1048Italy2026-10-26
1049France2026-10-22

On-Demand Data

NameIdCountryDate
Kaitlin T Waycott1000Australia2026-10-21
Arvin R Stenseth1001United Kingdom2026-10-03
Aruna Q Oldroyd1002Germany2026-10-11
Clifford Y Malet1003Canada2026-10-10
Maisha M Ruta1004France2026-10-26
Aditya S Royster1005Argentina2026-10-11
Arvin P Sergi1006India2026-10-26
Emily R Chui1007Spain2026-10-22
Sinclair Y Malet1008Argentina2026-10-27
Mujtaba T Perin1009India2026-10-20
Leon V Schemmer1010Russia2026-10-20
Izzy Q Butt1011Canada2026-10-26
Cody R Wieser1012United Kingdom2026-10-08
Sinclair R Campain1013Spain2026-10-20
Antonio L Royster1014United Kingdom2026-10-29
Murillo N Bowley1015Spain2026-10-12
Isabel I Garufi1016Australia2026-10-31
Silvio W Marrier1017United Kingdom2026-10-20
Mayumi O Malet1018France2026-10-08
Murillo M Gillian1019Japan2026-10-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones S DoeAustraliaAmy Elsner PROPOSAL
Clifford Z VenereSpainBernardo Dominic NEGOTIATION
Octavia D FerenczRussiaOnyama Limba PROPOSAL
Isabel W GarufiIndiaAsiya Javayant NEGOTIATION
Jones Z SergiAustraliaBernardo Dominic PROPOSAL
Jones O RutaJapanXuxue Feng NEGOTIATION
Emily N PerinUnited KingdomAnna Fali QUALIFIED
Aditya K StensethArgentinaIvan Magalhaes NEGOTIATION
Leja Y VenereCanadaOnyama Limba PROPOSAL
Adams B StensethCanadaAnna Fali NEGOTIATION
Kadeem A BowleyRussiaOnyama Limba PROPOSAL
Jones P GlickFranceIvan Magalhaes NEW
Izzy L VenereRussiaAmy Elsner NEW
Alejandro E RimCanadaElwin Sharvill UNQUALIFIED
Salvatore M PerinCanadaIoni Bowcher RENEWAL
Emily F DarakjyAustraliaIvan Magalhaes NEGOTIATION
Nicolas X CampainJapanStephen Shaw QUALIFIED
Rodrigues R PerinItalyXuxue Feng UNQUALIFIED
Salvatore Z BologniaCanadaElwin Sharvill RENEWAL
Maisha F GillianAustraliaBernardo Dominic PROPOSAL
David X ChuiCanadaIvan Magalhaes NEGOTIATION
Emily Y GillianJapanIvan Magalhaes QUALIFIED
Isabel M FerenczItalyElwin Sharvill QUALIFIED
Tony L BriddickUnited KingdomIoni Bowcher RENEWAL
Sinclair D PerinUnited KingdomIoni Bowcher QUALIFIED
Chavez B SlusarskiRussiaIvan Magalhaes QUALIFIED
Isabel O StockhamRussiaAmy Elsner UNQUALIFIED
Costa W AlbaresIndiaIoni Bowcher NEW
Costa R SergiUnited KingdomAsiya Javayant RENEWAL
Julie E GlickGermanyAnna Fali PROPOSAL
Kaitlin Q PerinUnited KingdomAnna Fali RENEWAL
Ashley J InouyeAustraliaAsiya Javayant UNQUALIFIED
Darci C CampainItalyIvan Magalhaes RENEWAL
Tony P BologniaBrazilBernardo Dominic RENEWAL
Costa J PoquetteAustraliaXuxue Feng QUALIFIED
Misaki I FigeroaFranceElwin Sharvill UNQUALIFIED
Izzy N StockhamBrazilElwin Sharvill RENEWAL
Alejandro F InouyeFranceIvan Magalhaes NEGOTIATION
Jones O DoeGermanyStephen Shaw QUALIFIED
Clifford C VocelkaAustraliaElwin Sharvill 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>