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
Faith T SaylorsCanadaOnyama Limba UNQUALIFIED
Greenwood K MaletGermanyAnna Fali NEW
Ashley P PoquetteUnited KingdomElwin Sharvill QUALIFIED
Alejandro P StockhamRussiaStephen Shaw NEGOTIATION
Jones L DarakjyCanadaAsiya Javayant UNQUALIFIED
James X BowleyBrazilStephen Shaw NEW
Francesco N GlickSpainXuxue Feng NEW
James Q InouyeFranceAmy Elsner NEW
Tony K MarrierFranceAmy Elsner UNQUALIFIED
Darci M OstroskyCanadaElwin Sharvill PROPOSAL
Jeanfrancois J MarrierAustraliaAmy Elsner UNQUALIFIED
Silvio U SlusarskiArgentinaStephen Shaw NEGOTIATION
Rodrigues D ButtUnited KingdomAmy Elsner NEW
Smith O ButtFranceAmy Elsner NEGOTIATION
Rodrigues I FlosiItalyIvan Magalhaes RENEWAL
Cody H PerinRussiaBernardo Dominic PROPOSAL
Adams D ButtArgentinaIoni Bowcher QUALIFIED
Stacey F KuskoAustraliaOnyama Limba UNQUALIFIED
Kadeem C PoquetteSpainXuxue Feng QUALIFIED
Silvio M AlbaresAustraliaOnyama Limba NEGOTIATION
Jeanfrancois K WhobreySpainAmy Elsner RENEWAL
Aditya S StockhamSpainAsiya Javayant UNQUALIFIED
Mujtaba K AlbaresJapanBernardo Dominic PROPOSAL
Jeanfrancois J BowleyRussiaAnna Fali QUALIFIED
Adams W GarufiCanadaXuxue Feng RENEWAL
Ashley W PoquetteSpainAmy Elsner QUALIFIED
Octavia Y RutaIndiaOnyama Limba NEGOTIATION
Darci Q DarakjyFranceElwin Sharvill NEW
Kaitlin I NickaBrazilIoni Bowcher UNQUALIFIED
Kadeem E NickaArgentinaElwin Sharvill PROPOSAL
Arvin G InouyeSpainIvan Magalhaes RENEWAL
Silvio S OldroydUnited KingdomOnyama Limba NEW
Costa H MarrierJapanBernardo Dominic RENEWAL
David L AmigonItalyAsiya Javayant QUALIFIED
Salvatore H AlbaresArgentinaAsiya Javayant UNQUALIFIED
Darci C StockhamUnited KingdomElwin Sharvill UNQUALIFIED
David F ChuiFranceOnyama Limba QUALIFIED
Julie M CaldareraItalyIoni Bowcher PROPOSAL
Mayumi M SchemmerAustraliaStephen Shaw UNQUALIFIED
Octavia D NestleIndiaAsiya Javayant NEW
Kaitlin C PaprockiItalyAsiya Javayant PROPOSAL
Smith N MacleadGermanyAmy Elsner UNQUALIFIED
Clifford G PerinRussiaOnyama Limba NEGOTIATION
Morrow V NickaBrazilAsiya Javayant NEW
Faith H CaudyItalyStephen Shaw NEGOTIATION
Stacey X SaylorsArgentinaAsiya Javayant QUALIFIED
Silvio E GlickIndiaOnyama Limba UNQUALIFIED
Ashley L SchemmerArgentinaXuxue Feng NEGOTIATION
Chavez P MaletItalyXuxue Feng NEW
Salvatore S ButtUnited KingdomAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Kadeem S WaycottArgentinaAnna Fali NEW
Morrow M PerinUnited KingdomIoni Bowcher PROPOSAL
Ricardo Z FigeroaCanadaIvan Magalhaes PROPOSAL
Chavez J TollnerRussiaAnna Fali QUALIFIED
Darci E GillianItalyXuxue Feng QUALIFIED
Ashley A BriddickRussiaXuxue Feng PROPOSAL
Isabel N FlosiGermanyAnna Fali QUALIFIED
Jeanfrancois Y BologniaUnited KingdomAsiya Javayant UNQUALIFIED
Jennifer E SlusarskiIndiaAmy Elsner NEGOTIATION
Aika D WieserRussiaIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood C VocelkaUnited Kingdom2026-10-25Benton, John B Jr NEGOTIATION5Ioni Bowcher
1001Deepesh W FerenczAustralia2026-10-23Benton, John B Jr NEW94Asiya Javayant
1002Kadeem A MarrierItaly2026-10-22Feiner Bros QUALIFIED69Xuxue Feng
1003Maria F FerenczFrance2026-10-06Printing Dimensions QUALIFIED32Onyama Limba
1004Misaki I MarrierJapan2026-10-26Dorl, James J Esq RENEWAL36Onyama Limba
1005Ivar S NickaIndia2026-10-10Rangoni Of Florence PROPOSAL38Stephen Shaw
1006Smith W BologniaUnited Kingdom2026-09-30Morlong Associates UNQUALIFIED20Anna Fali
1007Jones X MacleadFrance2026-10-08Benton, John B Jr NEGOTIATION36Onyama Limba
1008Aruna M OldroydCanada2026-10-24Chemel, James L Cpa NEW0Onyama Limba
1009Julie N KolmetzAustralia2026-10-13Buckley Miller Wright QUALIFIED31Elwin Sharvill
1010Francesco I CaudySpain2026-10-15Rousseaux, Michael Esq UNQUALIFIED84Elwin Sharvill
1011Darci Q FlosiRussia2026-10-12Commercial Press NEW33Stephen Shaw
1012Kadeem K RimAustralia2026-10-19Chapman, Ross E Esq UNQUALIFIED10Elwin Sharvill
1013Johnson L SaylorsJapan2026-10-11Morlong Associates QUALIFIED33Onyama Limba
1014Jones T RutaUnited Kingdom2026-10-09Buckley Miller Wright NEW77Xuxue Feng
1015Claire S PerinRussia2026-10-10Chapman, Ross E Esq RENEWAL0Bernardo Dominic
1016Cody G GauchoArgentina2026-10-16Rangoni Of Florence QUALIFIED41Anna Fali
1017Claire U KolmetzGermany2026-10-01Feiner Bros NEGOTIATION1Anna Fali
1018Salvatore Q MarrierUnited Kingdom2026-10-13Feltz Printing Service PROPOSAL23Onyama Limba
1019Aditya U KuskoSpain2026-10-19Feltz Printing Service PROPOSAL45Ivan Magalhaes
1020Wickens Z GauchoUnited Kingdom2026-09-28King, Christopher A Esq NEGOTIATION87Asiya Javayant
1021James M PerinItaly2026-10-01Printing Dimensions QUALIFIED14Anna Fali
1022Jennifer U RoysterCanada2026-10-15Benton, John B Jr QUALIFIED15Stephen Shaw
1023Jones P MaletSpain2026-10-19Feiner Bros RENEWAL51Asiya Javayant
1024Faith B GauchoItaly2026-10-16Chanay, Jeffrey A Esq UNQUALIFIED42Amy Elsner
1025Rodrigues D GarufiItaly2026-10-05Feltz Printing Service RENEWAL0Amy Elsner
1026Maisha D WaycottGermany2026-10-26King, Christopher A Esq QUALIFIED14Amy Elsner
1027Arvin X CampainIndia2026-10-23Benton, John B Jr UNQUALIFIED15Xuxue Feng
1028Aditya G BriddickFrance2026-10-20Morlong Associates RENEWAL63Onyama Limba
1029Jefferson F OstroskyFrance2026-10-24Rousseaux, Michael Esq NEW13Xuxue Feng
1030Misaki B FollerFrance2026-10-02Benton, John B Jr PROPOSAL57Ivan Magalhaes
1031Misaki K StockhamFrance2026-10-11Chapman, Ross E Esq UNQUALIFIED0Xuxue Feng
1032Ivar D RulapaughArgentina2026-10-16Dorl, James J Esq UNQUALIFIED14Anna Fali
1033Mujtaba E CampainGermany2026-10-05Chemel, James L Cpa QUALIFIED87Asiya Javayant
1034Leja Y VenereItaly2026-10-01Truhlar And Truhlar Attys UNQUALIFIED64Stephen Shaw
1035Nicolas X DarakjyFrance2026-10-26Truhlar And Truhlar Attys RENEWAL37Xuxue Feng
1036Jefferson C StockhamSpain2026-09-28Feltz Printing Service UNQUALIFIED44Xuxue Feng
1037Stacey A CaldareraRussia2026-10-12Chapman, Ross E Esq NEGOTIATION92Onyama Limba
1038Nicolas V GlickFrance2026-09-30Feiner Bros RENEWAL44Ioni Bowcher
1039Chavez G DilliardAustralia2026-10-14Truhlar And Truhlar Attys PROPOSAL21Xuxue Feng
1040Kadeem Q StockhamItaly2026-10-12Dorl, James J Esq NEW19Stephen Shaw
1041Claire U FollerItaly2026-10-22Commercial Press NEW72Anna Fali
1042Sinclair K RimArgentina2026-10-10Chapman, Ross E Esq PROPOSAL57Bernardo Dominic
1043Jefferson F BriddickIndia2026-10-13Benton, John B Jr RENEWAL90Anna Fali
1044Ricardo Y StockhamArgentina2026-10-11Commercial Press RENEWAL94Ivan Magalhaes
1045Tony B FollerBrazil2026-10-09Chemel, James L Cpa NEGOTIATION58Amy Elsner
1046Sinclair Z ChuiAustralia2026-10-10Feltz Printing Service NEGOTIATION50Stephen Shaw
1047Stacey P FigeroaSpain2026-10-14Rangoni Of Florence PROPOSAL67Bernardo Dominic
1048Smith E MorascaItaly2026-10-18Benton, John B Jr PROPOSAL21Xuxue Feng
1049Chavez X MorascaItaly2026-09-27Chemel, James L Cpa NEGOTIATION60Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Maisha K KolmetzCanadaXuxue Feng UNQUALIFIED
Johnson H MorascaIndiaIvan Magalhaes NEW
Silvio C DilliardSpainBernardo Dominic RENEWAL
David V StockhamItalyAsiya Javayant QUALIFIED
Maria D GarufiFranceAmy Elsner RENEWAL
Munro E StensethAustraliaIvan Magalhaes QUALIFIED
Leja Q SaylorsAustraliaElwin Sharvill PROPOSAL
Juan Z DoeJapanAsiya Javayant QUALIFIED
Francesco N GlickItalyOnyama Limba PROPOSAL
Misaki E SchemmerRussiaIoni Bowcher NEGOTIATION
Sinclair Y IturbideIndiaIvan Magalhaes PROPOSAL
Murillo U WaycottUnited KingdomAsiya Javayant PROPOSAL
Kaitlin R VenereAustraliaElwin Sharvill NEW
Chavez R RutaFranceAsiya Javayant UNQUALIFIED
Antonio A CampainArgentinaAnna Fali RENEWAL
Octavia J BowleySpainBernardo Dominic RENEWAL
Kaitlin T StensethIndiaAnna Fali NEW
Salvatore J MorascaBrazilXuxue Feng NEGOTIATION
Emily I BowleySpainAmy Elsner RENEWAL
Jeanfrancois I CaldareraGermanyAsiya Javayant PROPOSAL
Alejandro V WhobreyGermanyXuxue Feng PROPOSAL
Jones H BowleyBrazilAmy Elsner PROPOSAL
Maisha T IturbideIndiaXuxue Feng NEGOTIATION
Greenwood L OstroskyIndiaBernardo Dominic RENEWAL
Jefferson M RimGermanyIoni Bowcher NEGOTIATION
Leon W DarakjyAustraliaAnna Fali RENEWAL
Murillo G PaprockiCanadaOnyama Limba PROPOSAL
Octavia J BologniaItalyStephen Shaw QUALIFIED
Wickens D MaletJapanIoni Bowcher NEW
Leon V SlusarskiRussiaIvan Magalhaes PROPOSAL
Wickens A AlbaresIndiaStephen Shaw NEW
Mayumi D CaldareraBrazilBernardo Dominic PROPOSAL
Morrow E CaudyUnited KingdomBernardo Dominic UNQUALIFIED
Darci J RoysterItalyIoni Bowcher PROPOSAL
Johnson E DoeBrazilAsiya Javayant NEW
Jefferson J MacleadItalyElwin Sharvill RENEWAL
Isabel U BriddickIndiaIoni Bowcher NEGOTIATION
Emily K IturbideIndiaStephen Shaw PROPOSAL
Smith N AmigonCanadaIoni Bowcher QUALIFIED
Arvin C MacleadFranceAsiya Javayant QUALIFIED
Jeanfrancois Y RimRussiaIoni Bowcher RENEWAL
Rodrigues S GarufiRussiaXuxue Feng RENEWAL
Wickens O RoysterGermanyElwin Sharvill PROPOSAL
Johnson X MacleadGermanyXuxue Feng RENEWAL
Darci E GlickFranceAmy Elsner NEGOTIATION
Ivar W FollerSpainStephen Shaw NEW
Juan C WhobreyAustraliaXuxue Feng NEGOTIATION
Jones W GauchoItalyElwin Sharvill RENEWAL
Octavia P FollerIndiaOnyama Limba QUALIFIED
Jefferson B CaldareraArgentinaElwin Sharvill UNQUALIFIED
Frozen Columns
Name
Costa W Foller
Maria X Venere
Ashley I Inouye
Leon O Albares
Jones B Marrier
Claire E Venere
Adams P Oldroyd
Leon Q Rim
Antonio V Stenseth
Clifford O Shinko
Ricardo T Perin
Smith T Flosi
Stacey J Wieser
Rodrigues X Figeroa
Francesco D Caldarera
Munro B Ostrosky
Alejandro S Flosi
Cody F Chui
Deepesh H Ruta
Johnson O Flosi
Leja W Amigon
Octavia P Tollner
Antonio M Dilliard
Costa L Bowley
Mayumi F Oldroyd
Jeanfrancois R Nestle
Murillo S Shinko
Stacey A Maclead
Ricardo D Bolognia
Aruna W Vocelka
Aruna S Malet
Izzy U Royster
Nicolas X Bolognia
Darci V Tollner
Costa N Kusko
Munro D Gillian
Mayumi C Marrier
Kaitlin D Marrier
Isabel H Malet
Silvio V Rim
Greenwood C Malet
Chavez T Caldarera
Octavia H Royster
Leja C Venere
Maria R Oldroyd
Ivar E Bowley
Aika E Albares
Chavez U Slusarski
Jeanfrancois B Schemmer
Salvatore R Slusarski
IdCountryDate
1000Australia2026-09-28
1001Australia2026-10-02
1002Germany2026-10-05
1003Italy2026-10-08
1004India2026-10-20
1005India2026-10-15
1006France2026-09-29
1007Germany2026-10-21
1008United Kingdom2026-10-11
1009Germany2026-10-07
1010Argentina2026-10-20
1011Argentina2026-10-09
1012Japan2026-10-03
1013Spain2026-10-08
1014Canada2026-10-01
1015Australia2026-09-29
1016Brazil2026-10-11
1017Russia2026-10-07
1018Japan2026-10-23
1019France2026-10-25
1020United Kingdom2026-10-11
1021France2026-09-30
1022Brazil2026-10-12
1023Spain2026-10-09
1024Italy2026-10-05
1025Italy2026-10-21
1026France2026-10-03
1027Japan2026-09-28
1028France2026-10-20
1029India2026-10-11
1030Argentina2026-10-17
1031Italy2026-09-27
1032India2026-10-09
1033Russia2026-10-26
1034India2026-10-12
1035Canada2026-10-12
1036Brazil2026-10-10
1037France2026-10-13
1038France2026-09-29
1039Germany2026-10-15
1040France2026-10-13
1041Argentina2026-10-25
1042Italy2026-10-03
1043Japan2026-10-08
1044Italy2026-10-06
1045Russia2026-10-25
1046Argentina2026-09-28
1047Russia2026-10-01
1048Spain2026-10-24
1049India2026-10-18

On-Demand Data

NameIdCountryDate
Adams B Glick1000Russia2026-09-29
Juan Q Stockham1001India2026-10-17
Morrow M Shinko1002Australia2026-10-07
Morrow H Poquette1003Australia2026-10-04
Jefferson F Rim1004United Kingdom2026-10-03
Maria K Foller1005Russia2026-10-14
Leja W Ostrosky1006Canada2026-09-29
Adams M Butt1007Japan2026-10-25
Octavia G Tollner1008France2026-10-07
Greenwood W Ruta1009Australia2026-10-16
Kadeem V Vocelka1010Russia2026-10-26
Tony C Garufi1011Italy2026-10-02
James O Ostrosky1012Russia2026-10-26
Julie U Nicka1013Canada2026-10-08
Aruna A Venere1014Spain2026-10-14
Juan O Vocelka1015Argentina2026-10-22
Adams K Poquette1016Italy2026-09-28
Wickens Z Iturbide1017India2026-10-10
Mayumi Q Albares1018Argentina2026-10-07
Smith B Figeroa1019Australia2026-09-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio G BriddickItalyBernardo Dominic PROPOSAL
Rodrigues W PaprockiArgentinaElwin Sharvill RENEWAL
Julie F KolmetzIndiaAsiya Javayant NEW
Jefferson W CaudyAustraliaStephen Shaw QUALIFIED
Munro L MaletJapanIvan Magalhaes PROPOSAL
Izzy S GauchoJapanStephen Shaw PROPOSAL
Alejandro C KolmetzBrazilXuxue Feng NEW
Tony B CaldareraUnited KingdomXuxue Feng UNQUALIFIED
Emily E AmigonJapanStephen Shaw NEGOTIATION
Costa Y ButtRussiaIoni Bowcher RENEWAL
Deepesh K SaylorsArgentinaIoni Bowcher RENEWAL
Mayumi F SlusarskiIndiaBernardo Dominic RENEWAL
Rodrigues K FigeroaRussiaAmy Elsner NEGOTIATION
Darci Y AlbaresItalyIoni Bowcher PROPOSAL
Emily P NickaGermanyAnna Fali RENEWAL
Cody N NickaArgentinaElwin Sharvill PROPOSAL
Maisha Z OstroskyUnited KingdomStephen Shaw RENEWAL
Arvin O MorascaArgentinaXuxue Feng RENEWAL
Sinclair H ButtIndiaIvan Magalhaes NEGOTIATION
Sinclair B SergiBrazilOnyama Limba NEW
Jefferson D AlbaresRussiaElwin Sharvill NEGOTIATION
Chavez I MorascaFranceStephen Shaw UNQUALIFIED
Aika T GlickBrazilIvan Magalhaes PROPOSAL
Alejandro K FollerBrazilStephen Shaw PROPOSAL
Francesco J SchemmerRussiaAnna Fali UNQUALIFIED
Salvatore O FigeroaArgentinaIvan Magalhaes NEGOTIATION
Alejandro L RimFranceIvan Magalhaes UNQUALIFIED
Leja L MaletRussiaAmy Elsner UNQUALIFIED
Jennifer E WaycottSpainIvan Magalhaes NEW
Smith B AmigonBrazilStephen Shaw NEGOTIATION
Francesco A DoeRussiaXuxue Feng PROPOSAL
Murillo T AmigonSpainIvan Magalhaes UNQUALIFIED
David W OldroydGermanyIoni Bowcher NEGOTIATION
Ricardo J OstroskyAustraliaElwin Sharvill UNQUALIFIED
James E SergiUnited KingdomIvan Magalhaes NEGOTIATION
Emily M WieserAustraliaElwin Sharvill PROPOSAL
Maria K AmigonArgentinaStephen Shaw RENEWAL
Murillo G FollerRussiaAmy Elsner QUALIFIED
Claire U FigeroaSpainAsiya Javayant NEGOTIATION
Faith O InouyeBrazilAsiya Javayant QUALIFIED

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