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
Octavia S CaldareraBrazilElwin Sharvill NEGOTIATION
Emily S GlickAustraliaAsiya Javayant PROPOSAL
Chavez J ShinkoArgentinaAsiya Javayant PROPOSAL
Wickens S CaudyArgentinaIvan Magalhaes NEW
Jones C DilliardUnited KingdomElwin Sharvill QUALIFIED
Aika W VocelkaItalyAsiya Javayant RENEWAL
Silvio T KuskoGermanyIvan Magalhaes QUALIFIED
Antonio B CampainUnited KingdomStephen Shaw PROPOSAL
Silvio I DilliardItalyIoni Bowcher NEW
Arvin X PerinRussiaIoni Bowcher PROPOSAL
Tony N OstroskySpainAsiya Javayant PROPOSAL
Chavez P SergiAustraliaXuxue Feng RENEWAL
Wickens V SlusarskiAustraliaAsiya Javayant NEW
Murillo Y PaprockiFranceIoni Bowcher RENEWAL
Julie Y IturbideSpainAsiya Javayant RENEWAL
Mayumi H BowleyItalyAnna Fali NEW
Arvin B WhobreyGermanyIoni Bowcher NEGOTIATION
Munro S WieserUnited KingdomBernardo Dominic QUALIFIED
Sinclair P RutaAustraliaBernardo Dominic PROPOSAL
Mayumi M RutaItalyBernardo Dominic NEGOTIATION
Octavia E MorascaItalyOnyama Limba RENEWAL
Mayumi S SergiSpainStephen Shaw NEW
Tony X WieserFranceXuxue Feng NEGOTIATION
Nicolas P RulapaughIndiaOnyama Limba QUALIFIED
Maisha V MacleadCanadaOnyama Limba NEGOTIATION
Costa Q InouyeArgentinaAnna Fali RENEWAL
Emily E DilliardIndiaXuxue Feng NEW
Rodrigues O StensethSpainAmy Elsner UNQUALIFIED
Jones E InouyeCanadaOnyama Limba NEGOTIATION
Johnson C OldroydFranceAnna Fali NEW
Mujtaba J KolmetzBrazilIvan Magalhaes QUALIFIED
Wickens P BowleyGermanyStephen Shaw NEW
Octavia O IturbideFranceBernardo Dominic UNQUALIFIED
Sinclair T ButtSpainStephen Shaw NEW
Adams R BriddickFranceAmy Elsner NEGOTIATION
Nicolas M PaprockiSpainStephen Shaw RENEWAL
Tony X KuskoAustraliaIvan Magalhaes QUALIFIED
Octavia B NickaItalyXuxue Feng NEW
Ricardo P FollerJapanXuxue Feng RENEWAL
Emily K RoysterRussiaOnyama Limba NEW
Tony N RulapaughRussiaStephen Shaw NEGOTIATION
Faith V StensethCanadaAnna Fali PROPOSAL
Ricardo N RutaItalyAmy Elsner UNQUALIFIED
Greenwood E WaycottGermanyOnyama Limba QUALIFIED
Aditya G MaletFranceBernardo Dominic QUALIFIED
Claire O KolmetzRussiaStephen Shaw UNQUALIFIED
Wickens Y PerinItalyXuxue Feng NEGOTIATION
Stacey U StensethGermanyOnyama Limba RENEWAL
Arvin F FlosiRussiaIoni Bowcher NEGOTIATION
David Y WieserRussiaElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Morrow B WhobreyIndiaStephen Shaw QUALIFIED
Jennifer V FollerUnited KingdomStephen Shaw NEGOTIATION
Alejandro L KuskoGermanyBernardo Dominic RENEWAL
Aditya P PaprockiIndiaElwin Sharvill NEGOTIATION
Ricardo T OldroydJapanStephen Shaw NEGOTIATION
Kaitlin X OstroskyCanadaAmy Elsner PROPOSAL
Aruna M PerinSpainElwin Sharvill NEGOTIATION
Mujtaba O DarakjyUnited KingdomIvan Magalhaes QUALIFIED
Costa K WhobreyFranceIvan Magalhaes QUALIFIED
Costa W WieserAustraliaIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow T DarakjyAustralia2026-09-21Feltz Printing Service NEGOTIATION94Bernardo Dominic
1001Antonio F StockhamIndia2026-09-29King, Christopher A Esq RENEWAL33Anna Fali
1002Kadeem T GarufiUnited Kingdom2026-09-22King, Christopher A Esq NEGOTIATION48Onyama Limba
1003Ashley Z ShinkoGermany2026-09-27Rangoni Of Florence RENEWAL42Xuxue Feng
1004Jones S OldroydJapan2026-10-14Rousseaux, Michael Esq PROPOSAL3Xuxue Feng
1005Claire E WaycottSpain2026-10-07Commercial Press RENEWAL41Bernardo Dominic
1006Salvatore G MarrierIndia2026-09-25Feiner Bros QUALIFIED54Amy Elsner
1007Tony H PaprockiRussia2026-09-15Dorl, James J Esq NEGOTIATION26Stephen Shaw
1008Francesco I PerinCanada2026-09-27Benton, John B Jr RENEWAL33Bernardo Dominic
1009Claire R NestleBrazil2026-09-16Dorl, James J Esq PROPOSAL51Bernardo Dominic
1010Emily R NestleAustralia2026-09-28Rousseaux, Michael Esq RENEWAL79Stephen Shaw
1011Leja H SergiAustralia2026-09-22Printing Dimensions NEW29Elwin Sharvill
1012Murillo U MarrierGermany2026-10-11Morlong Associates NEW75Stephen Shaw
1013Aruna O BowleyIndia2026-10-11Feltz Printing Service QUALIFIED81Stephen Shaw
1014Ashley F InouyeSpain2026-10-13Benton, John B Jr UNQUALIFIED0Anna Fali
1015Leja A OstroskyArgentina2026-10-12Chanay, Jeffrey A Esq RENEWAL39Ioni Bowcher
1016Johnson K SergiIndia2026-10-04Chemel, James L Cpa NEGOTIATION43Onyama Limba
1017Nicolas W MaletGermany2026-10-03Rangoni Of Florence QUALIFIED80Xuxue Feng
1018Leja L MarrierSpain2026-09-23Truhlar And Truhlar Attys QUALIFIED73Bernardo Dominic
1019Claire O FlosiUnited Kingdom2026-10-09Printing Dimensions PROPOSAL81Stephen Shaw
1020Jeanfrancois L RulapaughItaly2026-09-16Dorl, James J Esq RENEWAL14Anna Fali
1021Maisha B ButtAustralia2026-10-13Feltz Printing Service QUALIFIED99Amy Elsner
1022Jeanfrancois E PoquetteRussia2026-09-27Commercial Press QUALIFIED3Stephen Shaw
1023Jeanfrancois O FerenczIndia2026-10-06Morlong Associates PROPOSAL98Asiya Javayant
1024Ashley N StockhamJapan2026-09-21Buckley Miller Wright UNQUALIFIED25Bernardo Dominic
1025Alejandro U FollerIndia2026-09-26Dorl, James J Esq PROPOSAL43Amy Elsner
1026Isabel H DarakjySpain2026-09-28Commercial Press QUALIFIED23Onyama Limba
1027Deepesh M GlickBrazil2026-09-15Chapman, Ross E Esq RENEWAL28Amy Elsner
1028Francesco L MorascaIndia2026-10-12Feltz Printing Service PROPOSAL39Elwin Sharvill
1029Kadeem V StensethGermany2026-10-02Feiner Bros UNQUALIFIED2Ivan Magalhaes
1030Octavia E VocelkaArgentina2026-09-29Truhlar And Truhlar Attys UNQUALIFIED84Onyama Limba
1031Cody K StensethItaly2026-10-10Benton, John B Jr NEW23Stephen Shaw
1032Mujtaba P BriddickSpain2026-10-12Benton, John B Jr UNQUALIFIED49Onyama Limba
1033Claire P RulapaughAustralia2026-10-02Chemel, James L Cpa UNQUALIFIED69Bernardo Dominic
1034Salvatore L DarakjyUnited Kingdom2026-10-07Feiner Bros RENEWAL42Onyama Limba
1035Chavez G DilliardFrance2026-09-30Printing Dimensions PROPOSAL66Bernardo Dominic
1036Morrow V DoeSpain2026-09-16Benton, John B Jr UNQUALIFIED55Amy Elsner
1037Cody N CaldareraBrazil2026-09-25Feltz Printing Service PROPOSAL12Xuxue Feng
1038Nicolas P PoquetteSpain2026-09-30Printing Dimensions RENEWAL77Anna Fali
1039Adams B DarakjySpain2026-09-21Commercial Press NEGOTIATION67Anna Fali
1040Alejandro S WhobreyItaly2026-10-14King, Christopher A Esq QUALIFIED3Ioni Bowcher
1041David I TollnerRussia2026-09-25Feiner Bros NEGOTIATION64Bernardo Dominic
1042Kadeem W GarufiItaly2026-09-16Truhlar And Truhlar Attys UNQUALIFIED92Stephen Shaw
1043Aruna A CaudyIndia2026-09-18Feltz Printing Service PROPOSAL85Asiya Javayant
1044Adams J DoeSpain2026-10-11Chanay, Jeffrey A Esq PROPOSAL80Ivan Magalhaes
1045Misaki E StockhamAustralia2026-09-22Morlong Associates QUALIFIED61Asiya Javayant
1046Salvatore M SlusarskiRussia2026-10-08Rousseaux, Michael Esq RENEWAL95Stephen Shaw
1047Sinclair K NickaBrazil2026-10-08Buckley Miller Wright PROPOSAL83Xuxue Feng
1048Kaitlin S RoysterAustralia2026-09-25Feiner Bros NEW57Onyama Limba
1049Adams B VenereSpain2026-10-07Printing Dimensions QUALIFIED5Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aditya F SchemmerArgentinaAsiya Javayant RENEWAL
Greenwood V FlosiBrazilIoni Bowcher QUALIFIED
Wickens L FigeroaAustraliaAnna Fali UNQUALIFIED
Juan W VenereFranceAmy Elsner QUALIFIED
Aditya T SchemmerCanadaStephen Shaw NEGOTIATION
Greenwood Q TollnerUnited KingdomOnyama Limba PROPOSAL
Leon Z KolmetzCanadaStephen Shaw NEGOTIATION
Jefferson U DilliardAustraliaAsiya Javayant NEGOTIATION
Sinclair J FigeroaRussiaAmy Elsner QUALIFIED
Sinclair S PaprockiRussiaElwin Sharvill NEW
Chavez C BriddickFranceXuxue Feng QUALIFIED
Juan D PerinFranceXuxue Feng RENEWAL
Silvio V CampainIndiaBernardo Dominic PROPOSAL
Munro R WieserArgentinaAmy Elsner QUALIFIED
Stacey E MacleadArgentinaStephen Shaw PROPOSAL
Munro C FerenczSpainElwin Sharvill RENEWAL
Kaitlin X DarakjyJapanXuxue Feng UNQUALIFIED
Maisha R ChuiCanadaAnna Fali NEGOTIATION
Johnson Z OldroydIndiaXuxue Feng NEW
Jennifer D StockhamCanadaOnyama Limba PROPOSAL
Misaki K IturbideRussiaOnyama Limba RENEWAL
Johnson V MarrierUnited KingdomXuxue Feng NEGOTIATION
Clifford X RoysterAustraliaAnna Fali NEGOTIATION
Sinclair V RutaFranceElwin Sharvill NEGOTIATION
Murillo Q MorascaRussiaAsiya Javayant QUALIFIED
James I DarakjyRussiaBernardo Dominic NEW
Greenwood L ChuiFranceStephen Shaw NEW
Claire A PaprockiUnited KingdomIoni Bowcher QUALIFIED
Jones J ChuiFranceBernardo Dominic NEGOTIATION
Chavez M PerinFranceAsiya Javayant UNQUALIFIED
Aditya Z BriddickArgentinaBernardo Dominic NEGOTIATION
Aika T CaldareraJapanOnyama Limba PROPOSAL
Arvin C RimJapanAnna Fali NEW
Adams O BowleyItalyXuxue Feng PROPOSAL
Juan C GauchoAustraliaAsiya Javayant UNQUALIFIED
Faith U SchemmerGermanyStephen Shaw PROPOSAL
Izzy V KolmetzGermanyOnyama Limba NEGOTIATION
Emily H KolmetzJapanXuxue Feng NEGOTIATION
Leon F TollnerBrazilXuxue Feng PROPOSAL
Rodrigues W PerinIndiaStephen Shaw QUALIFIED
Alejandro T VenereAustraliaIoni Bowcher QUALIFIED
Murillo B VenereFranceOnyama Limba QUALIFIED
Julie D OldroydArgentinaAmy Elsner NEGOTIATION
Ricardo U SergiSpainXuxue Feng PROPOSAL
Smith G GauchoBrazilXuxue Feng UNQUALIFIED
Jennifer D FollerJapanOnyama Limba NEGOTIATION
Johnson I GauchoFranceXuxue Feng QUALIFIED
Maisha K MaletCanadaOnyama Limba UNQUALIFIED
Aditya Y GlickSpainIoni Bowcher UNQUALIFIED
Sinclair R PerinItalyOnyama Limba RENEWAL
Frozen Columns
Name
Silvio F Flosi
Chavez R Tollner
Wickens E Rulapaugh
Ashley D Campain
Juan Z Glick
Aditya K Stockham
Tony X Bolognia
Juan U Caudy
Jeanfrancois U Stockham
Julie P Malet
Jones W Glick
Costa P Flosi
Deepesh C Foller
Jeanfrancois W Doe
Antonio J Oldroyd
Rodrigues T Albares
Wickens U Glick
Morrow T Shinko
Maisha K Iturbide
Jones N Poquette
Juan T Tollner
Kadeem U Caudy
Rodrigues I Waycott
Mayumi Q Garufi
Jennifer U Gaucho
Darci V Glick
Kaitlin T Rim
Jeanfrancois N Maclead
Darci I Chui
Emily T Gillian
Maria O Shinko
Jennifer J Butt
Claire H Whobrey
Rodrigues R Poquette
Adams J Malet
Aditya O Garufi
Misaki A Poquette
Stacey G Morasca
Aika T Butt
Jones Z Butt
Jefferson L Caudy
Isabel U Glick
Faith Y Waycott
Cody O Wieser
Aika T Rulapaugh
Aika T Iturbide
Jones O Schemmer
Smith T Tollner
Faith C Malet
Silvio T Wieser
IdCountryDate
1000Brazil2026-09-15
1001Canada2026-10-14
1002Brazil2026-09-19
1003Japan2026-09-28
1004India2026-09-17
1005Spain2026-09-15
1006Germany2026-10-02
1007Spain2026-10-14
1008Germany2026-09-25
1009Brazil2026-10-04
1010Russia2026-09-17
1011Brazil2026-10-14
1012France2026-09-29
1013Japan2026-09-27
1014Canada2026-09-27
1015Canada2026-09-17
1016India2026-09-16
1017France2026-10-08
1018Italy2026-09-27
1019France2026-09-22
1020United Kingdom2026-10-08
1021Russia2026-09-18
1022Italy2026-09-20
1023France2026-09-30
1024United Kingdom2026-09-23
1025Argentina2026-09-25
1026India2026-10-14
1027Russia2026-10-11
1028Argentina2026-10-06
1029Canada2026-10-14
1030Canada2026-09-16
1031Argentina2026-10-03
1032Australia2026-09-18
1033United Kingdom2026-09-16
1034Argentina2026-09-21
1035France2026-09-20
1036Australia2026-10-01
1037Russia2026-10-04
1038France2026-10-07
1039Japan2026-10-11
1040Germany2026-09-27
1041Argentina2026-10-11
1042Spain2026-09-26
1043France2026-09-20
1044Italy2026-10-02
1045Italy2026-10-14
1046United Kingdom2026-09-17
1047Brazil2026-10-06
1048Germany2026-09-18
1049India2026-09-27

On-Demand Data

NameIdCountryDate
Smith M Malet1000Italy2026-10-13
Juan E Whobrey1001Japan2026-09-23
Chavez O Bowley1002Italy2026-10-10
Antonio V Whobrey1003Italy2026-09-25
Jennifer E Rim1004United Kingdom2026-10-13
Maisha Y Caldarera1005Italy2026-10-06
Aditya C Rim1006India2026-10-05
Alejandro J Gaucho1007Japan2026-09-15
Maisha R Garufi1008Italy2026-10-02
Costa K Whobrey1009Japan2026-09-22
Maria B Sergi1010Australia2026-09-17
Wickens G Perin1011Australia2026-09-20
Rodrigues L Flosi1012Australia2026-09-22
Wickens F Waycott1013France2026-10-14
Jones X Tollner1014Argentina2026-09-30
Izzy F Shinko1015India2026-10-13
Costa K Albares1016Argentina2026-10-02
Aruna Q Kusko1017France2026-10-01
Smith G Tollner1018Canada2026-09-26
Wickens V Morasca1019India2026-09-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Wickens O MacleadUnited KingdomIvan Magalhaes RENEWAL
Smith B FigeroaFranceAsiya Javayant RENEWAL
Clifford L AmigonCanadaAsiya Javayant PROPOSAL
Deepesh N CaldareraCanadaElwin Sharvill PROPOSAL
Jennifer Y DoeSpainStephen Shaw UNQUALIFIED
Kaitlin K PerinUnited KingdomOnyama Limba UNQUALIFIED
Greenwood G SchemmerBrazilAmy Elsner NEGOTIATION
Leja L PaprockiJapanAnna Fali QUALIFIED
Maisha I IturbideBrazilBernardo Dominic RENEWAL
Clifford Y VocelkaAustraliaAnna Fali RENEWAL
Costa M OldroydSpainElwin Sharvill QUALIFIED
Misaki K InouyeAustraliaElwin Sharvill PROPOSAL
Mayumi M CaldareraCanadaIvan Magalhaes RENEWAL
Arvin Y DarakjyBrazilOnyama Limba NEW
Francesco R RimArgentinaAmy Elsner NEW
Misaki I AmigonGermanyElwin Sharvill UNQUALIFIED
Maria X TollnerGermanyAsiya Javayant NEGOTIATION
Izzy J DarakjyBrazilIvan Magalhaes NEGOTIATION
Greenwood U MorascaGermanyAmy Elsner QUALIFIED
Izzy V OstroskySpainAnna Fali NEGOTIATION
Stacey K MaletFranceIvan Magalhaes NEW
Murillo W StensethFranceStephen Shaw UNQUALIFIED
Costa Y OstroskyIndiaAsiya Javayant QUALIFIED
Wickens X RulapaughFranceIoni Bowcher PROPOSAL
Faith Z DilliardIndiaElwin Sharvill PROPOSAL
Francesco M CaldareraIndiaBernardo Dominic UNQUALIFIED
Tony M WieserJapanXuxue Feng RENEWAL
Mayumi I CaldareraAustraliaAsiya Javayant UNQUALIFIED
Faith U NestleUnited KingdomElwin Sharvill NEGOTIATION
David V ShinkoFranceElwin Sharvill QUALIFIED
Julie I FigeroaFranceBernardo Dominic QUALIFIED
Mayumi S BologniaSpainElwin Sharvill RENEWAL
Jennifer I OstroskyIndiaIvan Magalhaes PROPOSAL
Ivar L GlickBrazilAmy Elsner QUALIFIED
Ashley L IturbideAustraliaOnyama Limba PROPOSAL
Nicolas E GillianUnited KingdomIoni Bowcher RENEWAL
Rodrigues F BriddickSpainAsiya Javayant RENEWAL
Murillo E InouyeUnited KingdomIoni Bowcher QUALIFIED
Munro K DoeBrazilBernardo Dominic UNQUALIFIED
Munro K WaycottItalyElwin Sharvill NEGOTIATION

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