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
Izzy T FollerAustraliaXuxue Feng PROPOSAL
Emily R MaletItalyAmy Elsner PROPOSAL
Izzy J MaletFranceIoni Bowcher NEW
Arvin N DarakjyArgentinaStephen Shaw NEGOTIATION
Silvio G RoysterGermanyIoni Bowcher UNQUALIFIED
Misaki R BologniaFranceIvan Magalhaes RENEWAL
Mujtaba J GlickIndiaStephen Shaw UNQUALIFIED
Tony P VocelkaJapanStephen Shaw UNQUALIFIED
Octavia C MacleadBrazilIvan Magalhaes NEW
Julie N FollerRussiaAnna Fali PROPOSAL
Leon R CaudyJapanBernardo Dominic PROPOSAL
Julie P CaudyCanadaAsiya Javayant NEGOTIATION
Leja J RutaFranceStephen Shaw RENEWAL
Chavez X VenereCanadaAmy Elsner NEW
Octavia S GillianItalyIoni Bowcher QUALIFIED
Clifford R PaprockiCanadaBernardo Dominic UNQUALIFIED
Misaki C MacleadCanadaStephen Shaw NEW
Johnson J DoeArgentinaAsiya Javayant NEW
Wickens D AmigonSpainAsiya Javayant NEW
Jeanfrancois W GauchoBrazilAsiya Javayant PROPOSAL
Maisha L NickaItalyXuxue Feng QUALIFIED
Tony P GauchoArgentinaIoni Bowcher QUALIFIED
Nicolas E SlusarskiJapanXuxue Feng UNQUALIFIED
Tony F WhobreyIndiaIoni Bowcher NEW
Octavia U GlickItalyElwin Sharvill UNQUALIFIED
Mujtaba Y SaylorsCanadaElwin Sharvill PROPOSAL
Clifford D SlusarskiArgentinaElwin Sharvill RENEWAL
Aditya T StockhamCanadaAsiya Javayant UNQUALIFIED
James B StensethUnited KingdomStephen Shaw RENEWAL
Leja N VocelkaItalyStephen Shaw NEW
Maria F ButtSpainBernardo Dominic QUALIFIED
Leja Q CaldareraItalyBernardo Dominic NEW
Deepesh V ChuiFranceAmy Elsner NEW
Octavia J CampainUnited KingdomIvan Magalhaes NEGOTIATION
Murillo Q PaprockiIndiaIvan Magalhaes QUALIFIED
Mujtaba Y RimSpainAsiya Javayant RENEWAL
Smith V WhobreyUnited KingdomStephen Shaw QUALIFIED
Ricardo Z MarrierFranceXuxue Feng QUALIFIED
Nicolas C VocelkaFranceXuxue Feng PROPOSAL
Misaki Y DilliardAustraliaStephen Shaw UNQUALIFIED
Aditya Z SlusarskiIndiaAsiya Javayant RENEWAL
Silvio A GillianCanadaIoni Bowcher RENEWAL
Faith X FigeroaIndiaXuxue Feng RENEWAL
Jennifer N RoysterGermanyAmy Elsner NEW
Izzy K FerenczIndiaIvan Magalhaes UNQUALIFIED
Claire N RoysterUnited KingdomAsiya Javayant RENEWAL
Izzy Q FollerAustraliaIoni Bowcher NEGOTIATION
Maisha U CampainCanadaBernardo Dominic PROPOSAL
Mujtaba D KolmetzArgentinaAnna Fali RENEWAL
David R FerenczFranceIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Greenwood F DoeRussiaStephen Shaw NEW
Jefferson F RutaBrazilIoni Bowcher PROPOSAL
Stacey Z AmigonSpainAnna Fali RENEWAL
Morrow T MaletJapanAmy Elsner UNQUALIFIED
Julie I WhobreyArgentinaAmy Elsner NEGOTIATION
Murillo A ShinkoItalyStephen Shaw RENEWAL
Sinclair O MarrierArgentinaIvan Magalhaes PROPOSAL
Salvatore D SchemmerJapanOnyama Limba UNQUALIFIED
Clifford E FigeroaIndiaAmy Elsner RENEWAL
Maisha S GlickArgentinaAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia H BologniaGermany2026-09-20King, Christopher A Esq PROPOSAL52Anna Fali
1001Costa G DilliardItaly2026-10-13Feiner Bros PROPOSAL44Amy Elsner
1002Clifford A SchemmerRussia2026-09-18Benton, John B Jr UNQUALIFIED3Elwin Sharvill
1003Greenwood U MorascaAustralia2026-10-05Morlong Associates NEW76Elwin Sharvill
1004Claire P VenereSpain2026-09-17Dorl, James J Esq PROPOSAL22Stephen Shaw
1005Silvio H CampainAustralia2026-09-18King, Christopher A Esq UNQUALIFIED14Stephen Shaw
1006Mujtaba U GarufiArgentina2026-09-14Printing Dimensions QUALIFIED87Anna Fali
1007Nicolas S FlosiArgentina2026-09-26Buckley Miller Wright QUALIFIED75Asiya Javayant
1008Jefferson W MacleadFrance2026-10-08Dorl, James J Esq UNQUALIFIED30Ivan Magalhaes
1009Deepesh W PaprockiCanada2026-10-10Morlong Associates UNQUALIFIED80Ivan Magalhaes
1010Sinclair S DoeCanada2026-09-30Rangoni Of Florence NEW67Anna Fali
1011Isabel D BowleyFrance2026-09-17Buckley Miller Wright NEGOTIATION69Bernardo Dominic
1012Alejandro Y DarakjyJapan2026-09-27Commercial Press UNQUALIFIED75Ivan Magalhaes
1013Alejandro P BologniaArgentina2026-09-17Feltz Printing Service QUALIFIED46Xuxue Feng
1014Ivar H ChuiArgentina2026-09-19Rangoni Of Florence RENEWAL78Onyama Limba
1015Murillo N PerinJapan2026-09-30Buckley Miller Wright NEGOTIATION93Onyama Limba
1016Octavia B PoquetteIndia2026-10-11Buckley Miller Wright PROPOSAL99Asiya Javayant
1017Emily P RutaItaly2026-10-02Feiner Bros NEGOTIATION27Onyama Limba
1018Silvio O DarakjyJapan2026-09-28Chanay, Jeffrey A Esq PROPOSAL10Anna Fali
1019Stacey L RimArgentina2026-10-12Feiner Bros QUALIFIED22Onyama Limba
1020Nicolas S BriddickFrance2026-09-29Benton, John B Jr NEGOTIATION33Anna Fali
1021James I WhobreyFrance2026-09-24Chanay, Jeffrey A Esq NEGOTIATION41Xuxue Feng
1022Francesco G ChuiUnited Kingdom2026-09-27Rousseaux, Michael Esq PROPOSAL10Xuxue Feng
1023Antonio Q PaprockiUnited Kingdom2026-10-03Truhlar And Truhlar Attys QUALIFIED57Ioni Bowcher
1024Jennifer L TollnerAustralia2026-10-07Truhlar And Truhlar Attys RENEWAL85Anna Fali
1025Chavez L FerenczIndia2026-09-23Buckley Miller Wright RENEWAL12Onyama Limba
1026Leon V MaletRussia2026-10-12Chanay, Jeffrey A Esq QUALIFIED37Xuxue Feng
1027Greenwood P NestleGermany2026-09-17Chanay, Jeffrey A Esq NEW43Stephen Shaw
1028Clifford Q CaldareraArgentina2026-09-19Dorl, James J Esq NEW37Bernardo Dominic
1029Julie W ChuiBrazil2026-09-25Feltz Printing Service QUALIFIED67Bernardo Dominic
1030Aika Q PaprockiRussia2026-09-28Chemel, James L Cpa RENEWAL55Anna Fali
1031Emily L BologniaJapan2026-09-29Rousseaux, Michael Esq QUALIFIED2Elwin Sharvill
1032Maisha R MarrierJapan2026-10-08Feltz Printing Service NEW64Bernardo Dominic
1033Faith K AmigonFrance2026-09-16Commercial Press NEGOTIATION17Xuxue Feng
1034Johnson B CampainGermany2026-09-17Rangoni Of Florence RENEWAL60Anna Fali
1035Deepesh X MacleadSpain2026-10-07Printing Dimensions NEW62Elwin Sharvill
1036Mayumi M FollerUnited Kingdom2026-09-25Printing Dimensions QUALIFIED2Onyama Limba
1037Jefferson E WaycottCanada2026-09-25Feiner Bros QUALIFIED56Stephen Shaw
1038Ricardo P OstroskyItaly2026-10-06Dorl, James J Esq RENEWAL29Ioni Bowcher
1039Aditya Z CaudyGermany2026-09-21Commercial Press RENEWAL32Bernardo Dominic
1040Francesco B KolmetzRussia2026-09-14Benton, John B Jr QUALIFIED7Asiya Javayant
1041Aruna M BriddickGermany2026-09-26Rousseaux, Michael Esq NEW5Bernardo Dominic
1042Faith G GillianIndia2026-09-24Morlong Associates NEGOTIATION85Bernardo Dominic
1043Aditya K KolmetzJapan2026-10-01Commercial Press PROPOSAL88Amy Elsner
1044James B ShinkoBrazil2026-10-07Dorl, James J Esq RENEWAL63Xuxue Feng
1045Misaki G GlickGermany2026-09-26Chemel, James L Cpa UNQUALIFIED93Onyama Limba
1046Leon W SergiArgentina2026-10-02King, Christopher A Esq NEGOTIATION20Onyama Limba
1047Nicolas I VenereRussia2026-10-03Truhlar And Truhlar Attys QUALIFIED95Stephen Shaw
1048Misaki O CaudyCanada2026-09-23Buckley Miller Wright NEW16Onyama Limba
1049Stacey R MorascaJapan2026-10-07Morlong Associates PROPOSAL86Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Aruna J AmigonUnited KingdomBernardo Dominic QUALIFIED
Julie J NestleBrazilBernardo Dominic PROPOSAL
Sinclair C PaprockiGermanyAmy Elsner NEW
Ashley I SaylorsSpainAnna Fali NEGOTIATION
Ricardo Y MarrierJapanAmy Elsner PROPOSAL
Murillo P OldroydUnited KingdomElwin Sharvill NEW
James Z WieserCanadaAsiya Javayant UNQUALIFIED
Munro N SaylorsUnited KingdomElwin Sharvill NEGOTIATION
Tony B VenereArgentinaAsiya Javayant QUALIFIED
Clifford I BowleyFranceAsiya Javayant QUALIFIED
Murillo V DilliardRussiaElwin Sharvill NEW
Faith B OstroskyBrazilStephen Shaw PROPOSAL
Chavez D VocelkaRussiaAsiya Javayant UNQUALIFIED
Smith X FlosiRussiaElwin Sharvill UNQUALIFIED
Ashley Q WieserIndiaOnyama Limba PROPOSAL
Octavia H PaprockiFranceIoni Bowcher PROPOSAL
Emily W VocelkaAustraliaOnyama Limba UNQUALIFIED
Munro L IturbideIndiaXuxue Feng NEGOTIATION
Sinclair Y BriddickRussiaOnyama Limba UNQUALIFIED
Deepesh B GlickItalyAnna Fali RENEWAL
Munro U IturbideFranceAnna Fali NEGOTIATION
Leon M MacleadItalyStephen Shaw NEW
Leja W MaletRussiaAmy Elsner NEW
Jones J MorascaRussiaAsiya Javayant QUALIFIED
Izzy S WaycottItalyAnna Fali NEW
Antonio A FerenczItalyStephen Shaw PROPOSAL
Octavia C StockhamIndiaXuxue Feng NEGOTIATION
Leon M WhobreyFranceXuxue Feng UNQUALIFIED
Jennifer X OldroydCanadaAnna Fali PROPOSAL
Salvatore W FerenczIndiaStephen Shaw NEGOTIATION
Kaitlin I GarufiArgentinaAsiya Javayant RENEWAL
Wickens F BriddickRussiaXuxue Feng QUALIFIED
Francesco N FigeroaItalyIoni Bowcher PROPOSAL
Antonio I ShinkoRussiaAmy Elsner RENEWAL
Morrow S WhobreyIndiaIoni Bowcher UNQUALIFIED
Emily O NickaSpainElwin Sharvill QUALIFIED
Jefferson P ShinkoRussiaOnyama Limba QUALIFIED
Arvin S RutaUnited KingdomAmy Elsner PROPOSAL
Leja W StensethArgentinaXuxue Feng NEGOTIATION
Aruna S FollerFranceXuxue Feng NEW
Alejandro T DilliardIndiaAmy Elsner NEGOTIATION
Alejandro V DilliardIndiaOnyama Limba QUALIFIED
Juan C WaycottFranceIoni Bowcher QUALIFIED
Emily D OstroskyUnited KingdomAmy Elsner UNQUALIFIED
Wickens P ButtSpainAsiya Javayant NEW
Kaitlin H KuskoAustraliaAsiya Javayant UNQUALIFIED
Silvio P MorascaRussiaElwin Sharvill QUALIFIED
Clifford P StensethFranceOnyama Limba NEW
Johnson J BologniaCanadaAnna Fali NEGOTIATION
Jennifer M MaletAustraliaStephen Shaw NEGOTIATION
Frozen Columns
Name
Silvio E Poquette
Leon Z Schemmer
Mujtaba Q Ferencz
Leon H Nestle
Morrow C Caldarera
Ashley A Chui
Munro S Saylors
Leja L Iturbide
Smith E Slusarski
Octavia R Royster
Alejandro V Inouye
Maria V Amigon
Ricardo G Rulapaugh
Maria K Sergi
Ashley V Figeroa
Salvatore Y Caldarera
David W Darakjy
Francesco I Gillian
Aruna K Foller
Alejandro L Amigon
Maria G Schemmer
Emily G Royster
Leja Y Maclead
James A Whobrey
Arvin L Rulapaugh
Adams S Darakjy
Maisha H Doe
Aika M Kolmetz
Murillo K Rim
Jefferson R Figeroa
Mayumi C Glick
Tony J Ruta
Kadeem N Schemmer
Adams D Oldroyd
Aruna M Butt
Misaki Q Glick
Cody O Briddick
Chavez P Schemmer
Smith W Ruta
Rodrigues T Glick
Jefferson I Chui
Julie V Caudy
Jennifer B Stockham
Darci D Chui
Mayumi R Vocelka
Stacey B Gaucho
Kaitlin Z Dilliard
Faith J Caldarera
Antonio C Bowley
Clifford G Rulapaugh
IdCountryDate
1000Russia2026-09-30
1001Russia2026-10-13
1002Spain2026-10-10
1003France2026-09-25
1004India2026-09-25
1005Italy2026-10-08
1006Germany2026-10-07
1007United Kingdom2026-09-23
1008Germany2026-09-29
1009Argentina2026-10-01
1010France2026-10-06
1011Canada2026-10-08
1012Canada2026-09-18
1013Brazil2026-09-23
1014Canada2026-10-12
1015Australia2026-09-14
1016United Kingdom2026-10-04
1017Australia2026-10-04
1018Brazil2026-10-09
1019Australia2026-10-04
1020France2026-09-14
1021Australia2026-09-15
1022Russia2026-10-10
1023Germany2026-09-25
1024Japan2026-10-05
1025Australia2026-10-13
1026Brazil2026-09-26
1027United Kingdom2026-09-19
1028Russia2026-09-29
1029Spain2026-10-04
1030Japan2026-09-30
1031Russia2026-10-08
1032Japan2026-09-14
1033Argentina2026-10-10
1034Japan2026-09-23
1035Russia2026-09-30
1036Argentina2026-10-01
1037Australia2026-09-18
1038United Kingdom2026-10-05
1039Japan2026-10-07
1040Japan2026-09-20
1041United Kingdom2026-10-03
1042France2026-10-12
1043Argentina2026-09-20
1044Canada2026-10-12
1045Brazil2026-10-11
1046Argentina2026-10-01
1047Japan2026-09-19
1048Italy2026-10-05
1049Italy2026-10-11

On-Demand Data

NameIdCountryDate
Deepesh I Butt1000Russia2026-10-07
Darci V Caudy1001Canada2026-10-08
Jeanfrancois W Stockham1002Argentina2026-09-21
Aika X Perin1003India2026-10-08
Adams M Doe1004France2026-10-13
Jones C Sergi1005France2026-10-10
Stacey Q Albares1006Japan2026-09-22
Tony I Doe1007Argentina2026-09-22
Maisha G Marrier1008Canada2026-10-04
Ashley W Ferencz1009Australia2026-09-24
Maria Q Caudy1010Argentina2026-10-03
Murillo A Gillian1011Brazil2026-10-13
Sinclair Y Garufi1012Germany2026-10-08
Greenwood G Ostrosky1013France2026-09-18
Arvin X Venere1014Italy2026-10-13
Claire I Whobrey1015Italy2026-10-02
Claire B Malet1016France2026-09-14
Munro V Morasca1017Japan2026-09-29
Nicolas E Malet1018Brazil2026-09-14
Alejandro S Kolmetz1019India2026-09-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika J SlusarskiArgentinaStephen Shaw RENEWAL
Greenwood Q WaycottIndiaElwin Sharvill RENEWAL
Salvatore R CaudyFranceXuxue Feng RENEWAL
Leja O ShinkoCanadaElwin Sharvill RENEWAL
Costa C PoquetteUnited KingdomAsiya Javayant UNQUALIFIED
Tony H GarufiRussiaElwin Sharvill PROPOSAL
Maria V WaycottIndiaAnna Fali NEGOTIATION
Kaitlin G OstroskySpainAmy Elsner NEGOTIATION
Julie I InouyeAustraliaElwin Sharvill RENEWAL
Maisha Q PaprockiSpainAnna Fali QUALIFIED
Mayumi S SaylorsFranceStephen Shaw RENEWAL
Adams I RutaArgentinaOnyama Limba QUALIFIED
Kadeem I MarrierAustraliaStephen Shaw NEGOTIATION
Nicolas Y AmigonJapanAnna Fali NEGOTIATION
Morrow I RimRussiaOnyama Limba NEGOTIATION
Emily Q GillianIndiaAnna Fali PROPOSAL
Julie T CampainSpainAsiya Javayant NEGOTIATION
Jennifer Y BologniaGermanyElwin Sharvill UNQUALIFIED
Faith H AmigonFranceOnyama Limba QUALIFIED
Mujtaba J MarrierAustraliaAsiya Javayant QUALIFIED
Chavez Z SchemmerAustraliaAsiya Javayant NEGOTIATION
Mujtaba P KuskoJapanElwin Sharvill NEGOTIATION
Silvio A KuskoSpainXuxue Feng QUALIFIED
Cody A ChuiAustraliaStephen Shaw NEGOTIATION
Clifford X SergiArgentinaIvan Magalhaes QUALIFIED
Salvatore W StensethAustraliaElwin Sharvill NEGOTIATION
Claire G AlbaresGermanyAsiya Javayant RENEWAL
Jones D OldroydFranceElwin Sharvill NEW
Maisha D FlosiArgentinaStephen Shaw NEW
Silvio K DoeIndiaElwin Sharvill UNQUALIFIED
Izzy N OstroskyItalyAmy Elsner NEW
Claire Z WhobreyUnited KingdomElwin Sharvill NEW
David B MarrierJapanAnna Fali NEW
Misaki M IturbideArgentinaStephen Shaw UNQUALIFIED
Antonio H ChuiUnited KingdomIvan Magalhaes UNQUALIFIED
Octavia O NestleAustraliaIoni Bowcher PROPOSAL
Ivar F DoeBrazilElwin Sharvill UNQUALIFIED
Johnson B FerenczItalyIvan Magalhaes UNQUALIFIED
Maria P WieserRussiaElwin Sharvill NEW
Faith P CampainIndiaAmy Elsner 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>