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
Emily E OstroskyCanadaAsiya Javayant NEW
Jennifer X CaudyGermanyAsiya Javayant NEW
Smith F NestleItalyAnna Fali NEGOTIATION
Munro M ChuiCanadaXuxue Feng NEW
Chavez Y MorascaAustraliaElwin Sharvill QUALIFIED
Jones S NestleItalyStephen Shaw QUALIFIED
Wickens N GillianCanadaElwin Sharvill UNQUALIFIED
Salvatore Y BowleyItalyAsiya Javayant UNQUALIFIED
Claire Q MaletUnited KingdomOnyama Limba NEW
Maria Y NestleUnited KingdomIoni Bowcher NEW
Antonio M NickaAustraliaAsiya Javayant QUALIFIED
Munro Z InouyeFranceAmy Elsner RENEWAL
Jones G MaletIndiaIoni Bowcher NEGOTIATION
Isabel N BriddickFranceAmy Elsner QUALIFIED
Sinclair W BriddickIndiaAsiya Javayant UNQUALIFIED
Greenwood A MaletItalyOnyama Limba UNQUALIFIED
Leja C DoeRussiaIoni Bowcher RENEWAL
James Y OstroskyJapanAnna Fali NEW
Julie U GlickArgentinaOnyama Limba NEGOTIATION
Morrow X GarufiGermanyAnna Fali NEW
Silvio L SergiRussiaXuxue Feng QUALIFIED
Alejandro R GillianJapanBernardo Dominic UNQUALIFIED
Emily C RimItalyAmy Elsner QUALIFIED
Claire C KuskoJapanBernardo Dominic QUALIFIED
Faith S TollnerSpainAmy Elsner RENEWAL
Morrow D AlbaresSpainElwin Sharvill NEGOTIATION
Deepesh F CaldareraUnited KingdomAnna Fali QUALIFIED
Kaitlin O FlosiJapanAmy Elsner QUALIFIED
Kadeem C NickaUnited KingdomAmy Elsner QUALIFIED
Clifford U ChuiFranceOnyama Limba QUALIFIED
Aika S GauchoSpainIvan Magalhaes NEW
Ashley M KolmetzIndiaOnyama Limba RENEWAL
Darci I MaletCanadaOnyama Limba RENEWAL
Maria P MorascaIndiaOnyama Limba NEW
Salvatore P VenereRussiaXuxue Feng RENEWAL
Leon E CaudyUnited KingdomAsiya Javayant NEGOTIATION
Mujtaba D MaletUnited KingdomXuxue Feng NEGOTIATION
Smith W CaudyBrazilStephen Shaw QUALIFIED
Aika B ShinkoFranceOnyama Limba PROPOSAL
Costa Q BowleyArgentinaXuxue Feng UNQUALIFIED
Octavia I TollnerUnited KingdomElwin Sharvill QUALIFIED
Jones F MacleadIndiaStephen Shaw PROPOSAL
Maria M StensethFranceStephen Shaw PROPOSAL
Salvatore W GillianRussiaIoni Bowcher RENEWAL
Sinclair H CaldareraRussiaAmy Elsner PROPOSAL
Misaki E PaprockiIndiaIoni Bowcher QUALIFIED
Ricardo Y MaletBrazilAsiya Javayant UNQUALIFIED
Antonio N PoquetteRussiaAmy Elsner NEGOTIATION
Salvatore P FigeroaBrazilAsiya Javayant UNQUALIFIED
Silvio U SlusarskiJapanIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aika X GauchoAustraliaAnna Fali RENEWAL
Darci S MarrierBrazilAmy Elsner NEW
Smith N PerinSpainXuxue Feng NEW
Tony C MaletJapanIvan Magalhaes PROPOSAL
Deepesh J ShinkoSpainStephen Shaw RENEWAL
Greenwood I SaylorsUnited KingdomIvan Magalhaes RENEWAL
Costa E PoquetteFranceBernardo Dominic NEGOTIATION
Greenwood L AlbaresSpainOnyama Limba PROPOSAL
Johnson I MarrierCanadaIoni Bowcher NEW
Munro K RoysterItalyAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi N RimSpain2026-09-20Chapman, Ross E Esq PROPOSAL23Onyama Limba
1001Aditya X AmigonArgentina2026-10-12Feltz Printing Service UNQUALIFIED1Ivan Magalhaes
1002Izzy C KuskoItaly2026-10-09Feltz Printing Service QUALIFIED74Stephen Shaw
1003Ricardo D BriddickAustralia2026-09-26Feiner Bros NEGOTIATION14Anna Fali
1004Isabel Z WhobreyRussia2026-09-20Chanay, Jeffrey A Esq PROPOSAL39Asiya Javayant
1005Greenwood S DoeAustralia2026-09-20Feiner Bros PROPOSAL54Asiya Javayant
1006Jones E BriddickUnited Kingdom2026-09-21King, Christopher A Esq NEGOTIATION58Stephen Shaw
1007Antonio E VenereCanada2026-10-15King, Christopher A Esq NEW10Bernardo Dominic
1008Aruna O FigeroaCanada2026-09-19Dorl, James J Esq QUALIFIED31Stephen Shaw
1009Rodrigues J CaldareraSpain2026-09-21Buckley Miller Wright PROPOSAL11Stephen Shaw
1010Claire F ShinkoAustralia2026-10-09Feiner Bros QUALIFIED90Onyama Limba
1011Smith W KolmetzIndia2026-09-29Chemel, James L Cpa NEW67Ivan Magalhaes
1012Costa Z SaylorsJapan2026-10-14Dorl, James J Esq PROPOSAL76Elwin Sharvill
1013Isabel W MacleadGermany2026-10-03Rangoni Of Florence NEGOTIATION13Stephen Shaw
1014Darci D GlickFrance2026-09-19Feltz Printing Service QUALIFIED72Onyama Limba
1015Greenwood P GarufiArgentina2026-10-03Benton, John B Jr NEW2Bernardo Dominic
1016Salvatore B KolmetzItaly2026-09-25Chanay, Jeffrey A Esq UNQUALIFIED72Ioni Bowcher
1017Clifford P BowleyUnited Kingdom2026-09-19Chanay, Jeffrey A Esq PROPOSAL6Elwin Sharvill
1018Kaitlin K SaylorsCanada2026-10-09Chapman, Ross E Esq PROPOSAL74Xuxue Feng
1019Greenwood K VocelkaUnited Kingdom2026-10-01Buckley Miller Wright NEW87Onyama Limba
1020Costa P IturbideItaly2026-09-26Buckley Miller Wright UNQUALIFIED76Anna Fali
1021Tony D GauchoBrazil2026-10-07Rousseaux, Michael Esq QUALIFIED24Xuxue Feng
1022Adams D CaudyRussia2026-09-27Chemel, James L Cpa NEW90Onyama Limba
1023Sinclair G StockhamCanada2026-10-03Chanay, Jeffrey A Esq RENEWAL27Stephen Shaw
1024Jeanfrancois J VenereItaly2026-10-01Truhlar And Truhlar Attys NEGOTIATION24Bernardo Dominic
1025Tony F TollnerGermany2026-10-08Chanay, Jeffrey A Esq RENEWAL35Stephen Shaw
1026Smith W PerinGermany2026-09-16Dorl, James J Esq RENEWAL81Elwin Sharvill
1027Smith X BologniaItaly2026-10-03Buckley Miller Wright RENEWAL71Xuxue Feng
1028Jennifer T WaycottAustralia2026-10-05Chanay, Jeffrey A Esq NEGOTIATION4Onyama Limba
1029Claire S MacleadIndia2026-10-06Dorl, James J Esq UNQUALIFIED11Amy Elsner
1030Rodrigues I FollerIndia2026-10-08Buckley Miller Wright NEGOTIATION46Amy Elsner
1031Chavez N ButtArgentina2026-09-24Commercial Press UNQUALIFIED17Stephen Shaw
1032Rodrigues W GillianCanada2026-10-05Rousseaux, Michael Esq QUALIFIED54Xuxue Feng
1033Aditya O MacleadArgentina2026-10-12Buckley Miller Wright RENEWAL97Elwin Sharvill
1034Jefferson T PaprockiSpain2026-09-25Chanay, Jeffrey A Esq UNQUALIFIED92Ioni Bowcher
1035Mayumi A KuskoGermany2026-09-25Rousseaux, Michael Esq QUALIFIED89Anna Fali
1036Emily E MaletSpain2026-09-28King, Christopher A Esq UNQUALIFIED78Asiya Javayant
1037Cody Y RoysterArgentina2026-10-06Commercial Press NEW31Xuxue Feng
1038Deepesh Y GillianFrance2026-10-05Feiner Bros QUALIFIED81Xuxue Feng
1039Ivar T AlbaresJapan2026-10-15Morlong Associates NEW92Ioni Bowcher
1040Leon S PerinItaly2026-09-25Chanay, Jeffrey A Esq QUALIFIED74Ivan Magalhaes
1041Kaitlin Z ButtBrazil2026-09-26Chanay, Jeffrey A Esq RENEWAL35Ioni Bowcher
1042David O WaycottSpain2026-10-15Printing Dimensions PROPOSAL9Asiya Javayant
1043Johnson F SaylorsJapan2026-10-12Morlong Associates NEGOTIATION69Xuxue Feng
1044David K MaletSpain2026-10-11Chemel, James L Cpa UNQUALIFIED7Bernardo Dominic
1045Mayumi O ShinkoRussia2026-10-10King, Christopher A Esq RENEWAL61Bernardo Dominic
1046Costa U SlusarskiItaly2026-10-15Morlong Associates RENEWAL80Xuxue Feng
1047Faith B SaylorsFrance2026-09-21Dorl, James J Esq PROPOSAL88Xuxue Feng
1048Faith N FlosiSpain2026-10-06Benton, John B Jr RENEWAL86Asiya Javayant
1049Ricardo Y RulapaughAustralia2026-10-15Feiner Bros NEGOTIATION3Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Tony G SergiUnited KingdomIoni Bowcher UNQUALIFIED
David R NestleJapanStephen Shaw UNQUALIFIED
Misaki C KolmetzAustraliaBernardo Dominic NEW
Wickens F GillianCanadaIoni Bowcher NEW
Alejandro W MorascaAustraliaAsiya Javayant PROPOSAL
Cody A NestleAustraliaIoni Bowcher NEW
Ashley S MorascaSpainAnna Fali QUALIFIED
Stacey O VenereJapanIvan Magalhaes PROPOSAL
Aika B GauchoAustraliaElwin Sharvill PROPOSAL
Emily T GlickCanadaBernardo Dominic NEGOTIATION
Emily Y OstroskyFranceStephen Shaw PROPOSAL
Emily E RulapaughIndiaIoni Bowcher UNQUALIFIED
Nicolas B NestleItalyOnyama Limba NEGOTIATION
Nicolas W RulapaughAustraliaStephen Shaw RENEWAL
Costa G FollerCanadaAsiya Javayant NEW
Munro M AmigonCanadaAmy Elsner UNQUALIFIED
Leon Z GlickJapanElwin Sharvill NEGOTIATION
Nicolas J VenereItalyElwin Sharvill RENEWAL
Ashley D MaletGermanyAnna Fali PROPOSAL
James K NestleSpainAsiya Javayant UNQUALIFIED
Julie P BologniaIndiaElwin Sharvill UNQUALIFIED
Jeanfrancois B FerenczAustraliaElwin Sharvill NEW
Francesco W SergiBrazilIoni Bowcher RENEWAL
Rodrigues R MaletAustraliaAnna Fali RENEWAL
Aditya P FerenczJapanAmy Elsner NEW
Costa A SaylorsFranceOnyama Limba QUALIFIED
Johnson F FollerIndiaBernardo Dominic UNQUALIFIED
Nicolas B MacleadRussiaElwin Sharvill UNQUALIFIED
Chavez C GillianBrazilIoni Bowcher QUALIFIED
Jones S IturbideFranceIvan Magalhaes UNQUALIFIED
Juan P DoeCanadaOnyama Limba NEW
Greenwood M MaletCanadaBernardo Dominic QUALIFIED
Ivar I RulapaughRussiaIvan Magalhaes NEW
Maria V GauchoBrazilAnna Fali NEGOTIATION
David O VocelkaSpainIoni Bowcher RENEWAL
Isabel T CaldareraAustraliaXuxue Feng NEGOTIATION
Clifford T OstroskyBrazilBernardo Dominic QUALIFIED
Ricardo A StensethCanadaStephen Shaw UNQUALIFIED
Misaki R SlusarskiAustraliaIvan Magalhaes UNQUALIFIED
Sinclair Y PaprockiUnited KingdomOnyama Limba RENEWAL
Julie N MorascaArgentinaElwin Sharvill NEGOTIATION
Leja Q NickaSpainElwin Sharvill UNQUALIFIED
Jeanfrancois Q BowleyRussiaIoni Bowcher QUALIFIED
Aika C RutaUnited KingdomXuxue Feng NEW
Aditya T FlosiIndiaElwin Sharvill NEW
Maria M MorascaAustraliaXuxue Feng PROPOSAL
David U ChuiIndiaStephen Shaw NEW
Munro R PerinItalyStephen Shaw RENEWAL
Jeanfrancois R DilliardCanadaBernardo Dominic NEGOTIATION
Jones U OldroydUnited KingdomOnyama Limba NEW
Frozen Columns
Name
James F Chui
Maria E Foller
Morrow Q Ostrosky
David I Glick
Darci K Slusarski
Sinclair U Poquette
Costa A Ostrosky
Aditya L Shinko
Murillo Z Caudy
Francesco P Malet
Aruna K Perin
Munro I Nestle
Misaki C Albares
Jefferson V Gaucho
Isabel L Albares
Murillo X Paprocki
Aruna W Kolmetz
Aika W Sergi
Alejandro Z Rim
Maisha U Inouye
Francesco W Inouye
Julie O Rim
Claire Y Malet
Ivar H Campain
Claire G Caudy
Antonio Z Waycott
Wickens Y Ruta
Kaitlin Z Sergi
Leon C Figeroa
Antonio D Malet
Leon X Campain
Salvatore J Saylors
Munro H Oldroyd
Jeanfrancois C Flosi
Cody W Poquette
Emily M Marrier
Jeanfrancois C Whobrey
Jeanfrancois Z Kolmetz
Clifford M Marrier
Deepesh N Poquette
Ashley F Stenseth
Antonio R Malet
Morrow G Dilliard
Misaki G Malet
Antonio U Stockham
Greenwood V Rim
James P Maclead
Sinclair X Inouye
Aika P Amigon
Johnson M Darakjy
IdCountryDate
1000Argentina2026-10-12
1001Russia2026-09-25
1002Spain2026-09-26
1003Germany2026-10-08
1004Italy2026-10-15
1005Italy2026-09-25
1006Russia2026-09-23
1007India2026-10-10
1008France2026-09-23
1009Japan2026-09-23
1010Russia2026-10-14
1011Argentina2026-09-23
1012Germany2026-10-04
1013Germany2026-09-28
1014Spain2026-10-01
1015Japan2026-09-18
1016Russia2026-10-05
1017Russia2026-10-04
1018Argentina2026-10-03
1019Spain2026-10-14
1020Italy2026-09-25
1021Russia2026-09-22
1022Japan2026-10-13
1023Argentina2026-10-07
1024Russia2026-10-10
1025Australia2026-09-25
1026Spain2026-10-09
1027United Kingdom2026-10-08
1028Italy2026-09-27
1029Russia2026-09-26
1030France2026-09-19
1031Russia2026-10-01
1032Italy2026-10-10
1033France2026-10-08
1034Brazil2026-09-21
1035Argentina2026-10-07
1036Argentina2026-09-24
1037Germany2026-09-27
1038United Kingdom2026-09-29
1039Spain2026-09-26
1040Spain2026-09-30
1041Russia2026-09-29
1042United Kingdom2026-09-19
1043Russia2026-10-12
1044Spain2026-10-06
1045Australia2026-10-02
1046Spain2026-09-21
1047Russia2026-10-07
1048Spain2026-09-30
1049United Kingdom2026-10-01

On-Demand Data

NameIdCountryDate
Tony Y Nicka1000Russia2026-09-19
Jones T Morasca1001Argentina2026-10-01
Darci M Foller1002Brazil2026-10-02
Morrow V Shinko1003France2026-09-19
Deepesh T Inouye1004Spain2026-09-21
Morrow R Kolmetz1005United Kingdom2026-10-05
Leon X Ferencz1006France2026-10-08
Alejandro M Dilliard1007France2026-09-26
Aika I Flosi1008Japan2026-10-04
Deepesh Y Royster1009Australia2026-09-23
Costa C Maclead1010India2026-10-08
Munro A Schemmer1011Italy2026-10-15
Sinclair A Vocelka1012Italy2026-10-11
Maisha R Campain1013Canada2026-10-14
Maria B Nestle1014Canada2026-09-21
Munro S Kusko1015France2026-10-15
David D Malet1016India2026-09-20
Misaki Y Garufi1017Spain2026-09-27
Ivar B Garufi1018Russia2026-09-25
Izzy M Figeroa1019France2026-09-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo S StockhamIndiaStephen Shaw UNQUALIFIED
Mujtaba O WhobreyIndiaElwin Sharvill NEW
Stacey Q OldroydRussiaIoni Bowcher PROPOSAL
Morrow C RoysterItalyStephen Shaw RENEWAL
Mayumi A PerinItalyXuxue Feng QUALIFIED
Greenwood T ButtRussiaAmy Elsner RENEWAL
Leon Z BologniaCanadaAnna Fali NEGOTIATION
Mayumi G RimArgentinaBernardo Dominic UNQUALIFIED
Kadeem H NickaGermanyIvan Magalhaes NEW
Mujtaba Y ShinkoIndiaIvan Magalhaes UNQUALIFIED
Smith Q BologniaSpainAnna Fali UNQUALIFIED
Ashley K AlbaresArgentinaAnna Fali PROPOSAL
Smith H ChuiGermanyOnyama Limba NEGOTIATION
Rodrigues V GauchoGermanyBernardo Dominic RENEWAL
Arvin H GillianGermanyStephen Shaw QUALIFIED
Stacey I MacleadItalyIvan Magalhaes QUALIFIED
Murillo V InouyeArgentinaStephen Shaw NEGOTIATION
Julie K GlickRussiaXuxue Feng RENEWAL
Cody R WhobreyUnited KingdomAnna Fali NEGOTIATION
Octavia E OstroskyRussiaElwin Sharvill NEGOTIATION
Murillo T MacleadItalyBernardo Dominic QUALIFIED
Tony F IturbideArgentinaElwin Sharvill UNQUALIFIED
Smith H GauchoRussiaAsiya Javayant QUALIFIED
Kadeem R SlusarskiBrazilAsiya Javayant NEW
Francesco H SergiItalyOnyama Limba UNQUALIFIED
Tony S WaycottArgentinaElwin Sharvill UNQUALIFIED
Murillo Q WieserArgentinaOnyama Limba NEW
Clifford K MarrierFranceAsiya Javayant QUALIFIED
Kadeem L StockhamJapanIvan Magalhaes RENEWAL
Maisha C BowleyGermanyOnyama Limba RENEWAL
Darci Y OldroydGermanyOnyama Limba RENEWAL
Aruna D RoysterUnited KingdomStephen Shaw PROPOSAL
James A FollerJapanStephen Shaw QUALIFIED
Rodrigues C SergiArgentinaIoni Bowcher NEW
Emily W GauchoArgentinaBernardo Dominic QUALIFIED
Tony I NestleItalyAnna Fali NEGOTIATION
Adams G RulapaughUnited KingdomIoni Bowcher NEW
Izzy D MarrierCanadaIvan Magalhaes QUALIFIED
Clifford M SlusarskiCanadaElwin Sharvill PROPOSAL
Kaitlin U WaycottFranceBernardo Dominic PROPOSAL

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