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
Stacey A NickaIndiaAmy Elsner NEGOTIATION
Leja J VenereItalyXuxue Feng RENEWAL
Sinclair G OstroskySpainStephen Shaw PROPOSAL
Cody I AmigonJapanXuxue Feng PROPOSAL
Jefferson N FollerItalyAmy Elsner PROPOSAL
Kaitlin X OldroydJapanStephen Shaw UNQUALIFIED
Stacey B MarrierRussiaAsiya Javayant NEW
Juan V PoquetteRussiaIvan Magalhaes RENEWAL
Kadeem K AmigonFranceXuxue Feng UNQUALIFIED
Kadeem C MacleadGermanyElwin Sharvill PROPOSAL
Deepesh H KolmetzCanadaStephen Shaw PROPOSAL
Francesco W BologniaRussiaBernardo Dominic RENEWAL
Cody Z MacleadUnited KingdomElwin Sharvill UNQUALIFIED
Clifford H FlosiCanadaAmy Elsner NEW
Johnson F MaletAustraliaAsiya Javayant NEGOTIATION
James A NestleFranceStephen Shaw QUALIFIED
Tony G RulapaughUnited KingdomBernardo Dominic NEW
Darci O StockhamItalyIoni Bowcher QUALIFIED
Morrow I PaprockiCanadaOnyama Limba NEW
Sinclair W RoysterAustraliaXuxue Feng NEW
Maria J ButtJapanAnna Fali NEW
Jefferson N BriddickSpainXuxue Feng RENEWAL
Emily C BologniaBrazilBernardo Dominic UNQUALIFIED
Juan D RulapaughSpainAmy Elsner NEW
Deepesh W CaudyBrazilAsiya Javayant PROPOSAL
Juan E InouyeArgentinaAnna Fali NEGOTIATION
Aruna I MacleadRussiaStephen Shaw QUALIFIED
Smith R CaudyArgentinaAsiya Javayant PROPOSAL
Faith R VenereUnited KingdomAsiya Javayant NEGOTIATION
Sinclair K FigeroaFranceXuxue Feng PROPOSAL
Faith D CampainRussiaAmy Elsner RENEWAL
Octavia O RimGermanyOnyama Limba NEGOTIATION
James S MaletAustraliaIoni Bowcher RENEWAL
Salvatore U VocelkaIndiaAnna Fali RENEWAL
Rodrigues Y CaldareraAustraliaIvan Magalhaes NEW
Sinclair S WieserFranceXuxue Feng PROPOSAL
Jennifer N RulapaughUnited KingdomBernardo Dominic PROPOSAL
Leon U SchemmerGermanyBernardo Dominic NEGOTIATION
Mayumi T GauchoSpainOnyama Limba UNQUALIFIED
Cody D NestleArgentinaIoni Bowcher NEGOTIATION
Adams M CaldareraGermanyOnyama Limba PROPOSAL
Morrow G GarufiSpainAmy Elsner RENEWAL
Jeanfrancois K VenereSpainStephen Shaw UNQUALIFIED
Maisha L GillianRussiaAnna Fali PROPOSAL
Silvio V RimSpainBernardo Dominic NEGOTIATION
Murillo G FigeroaCanadaXuxue Feng NEW
Murillo S FigeroaAustraliaElwin Sharvill RENEWAL
Aika Z NickaArgentinaBernardo Dominic QUALIFIED
Francesco K WieserItalyAnna Fali UNQUALIFIED
Morrow C AmigonBrazilStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leja J GauchoArgentinaAmy Elsner UNQUALIFIED
Nicolas T DoeSpainAmy Elsner NEGOTIATION
Maisha R RoysterSpainIvan Magalhaes RENEWAL
Aditya G SergiAustraliaAsiya Javayant UNQUALIFIED
Emily S MarrierArgentinaIoni Bowcher NEW
Munro U MaletAustraliaBernardo Dominic NEGOTIATION
Greenwood B SlusarskiRussiaIvan Magalhaes RENEWAL
Mujtaba L RimSpainAsiya Javayant NEGOTIATION
Munro X VenereAustraliaBernardo Dominic UNQUALIFIED
Misaki E WaycottArgentinaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin I KolmetzItaly2026-10-06Rangoni Of Florence NEW38Ivan Magalhaes
1001Alejandro A MaletJapan2026-10-22Morlong Associates NEW1Xuxue Feng
1002Aditya A KolmetzUnited Kingdom2026-10-23Rousseaux, Michael Esq NEW96Xuxue Feng
1003Adams W VocelkaGermany2026-09-27Chemel, James L Cpa PROPOSAL39Ioni Bowcher
1004Ricardo Q FerenczRussia2026-09-29Printing Dimensions RENEWAL57Anna Fali
1005Sinclair A SchemmerItaly2026-10-01Chanay, Jeffrey A Esq RENEWAL81Xuxue Feng
1006Isabel D KolmetzIndia2026-10-07Chemel, James L Cpa NEW5Ivan Magalhaes
1007Leon Z SaylorsAustralia2026-10-08Rangoni Of Florence NEGOTIATION65Xuxue Feng
1008Morrow B AmigonSpain2026-10-07Rousseaux, Michael Esq UNQUALIFIED93Xuxue Feng
1009Sinclair O OldroydFrance2026-09-26Dorl, James J Esq PROPOSAL7Amy Elsner
1010Sinclair E FerenczUnited Kingdom2026-09-26Truhlar And Truhlar Attys NEW90Anna Fali
1011James P AlbaresUnited Kingdom2026-10-17Chanay, Jeffrey A Esq NEW97Xuxue Feng
1012Faith W WhobreyJapan2026-10-11Feltz Printing Service NEGOTIATION52Xuxue Feng
1013Smith H OldroydJapan2026-10-15Truhlar And Truhlar Attys QUALIFIED62Amy Elsner
1014Ashley X AmigonJapan2026-10-07Truhlar And Truhlar Attys NEW46Xuxue Feng
1015Maria E GauchoUnited Kingdom2026-10-15Benton, John B Jr UNQUALIFIED52Ioni Bowcher
1016Antonio R NickaAustralia2026-10-18Benton, John B Jr QUALIFIED40Elwin Sharvill
1017Jefferson Y DoeCanada2026-10-06King, Christopher A Esq UNQUALIFIED77Elwin Sharvill
1018Darci B KuskoUnited Kingdom2026-09-26Dorl, James J Esq NEGOTIATION64Ioni Bowcher
1019Tony B DilliardFrance2026-10-18Commercial Press NEW70Onyama Limba
1020Izzy K IturbideGermany2026-10-09Rangoni Of Florence QUALIFIED77Anna Fali
1021Maisha L FigeroaIndia2026-09-26Feltz Printing Service NEW91Onyama Limba
1022James V RimIndia2026-10-11Rousseaux, Michael Esq RENEWAL3Anna Fali
1023Mujtaba B ChuiAustralia2026-10-13Buckley Miller Wright NEW38Stephen Shaw
1024Tony C RoysterRussia2026-10-07Rousseaux, Michael Esq PROPOSAL5Anna Fali
1025Julie R SlusarskiCanada2026-10-05Chapman, Ross E Esq RENEWAL20Elwin Sharvill
1026Smith G CaldareraAustralia2026-10-13Commercial Press PROPOSAL29Xuxue Feng
1027Morrow V ButtCanada2026-09-27Rangoni Of Florence RENEWAL34Stephen Shaw
1028Silvio Q OstroskyItaly2026-10-01Commercial Press NEGOTIATION17Onyama Limba
1029Morrow G FollerGermany2026-10-18Chapman, Ross E Esq PROPOSAL75Bernardo Dominic
1030Ashley Y SlusarskiBrazil2026-10-06Feiner Bros PROPOSAL73Bernardo Dominic
1031Maisha X GlickCanada2026-10-16Dorl, James J Esq QUALIFIED71Anna Fali
1032Antonio K OldroydIndia2026-09-25Commercial Press QUALIFIED34Asiya Javayant
1033Deepesh A SaylorsGermany2026-10-03Feiner Bros NEGOTIATION86Elwin Sharvill
1034Claire A VenereAustralia2026-09-29Benton, John B Jr NEGOTIATION66Amy Elsner
1035Leon L InouyeJapan2026-10-13Rangoni Of Florence UNQUALIFIED9Asiya Javayant
1036Deepesh W StockhamGermany2026-10-07Commercial Press NEGOTIATION25Stephen Shaw
1037Isabel Z ShinkoGermany2026-09-30Rangoni Of Florence UNQUALIFIED13Onyama Limba
1038Emily O FerenczGermany2026-10-08Dorl, James J Esq RENEWAL7Xuxue Feng
1039Greenwood T TollnerArgentina2026-10-17Morlong Associates RENEWAL90Onyama Limba
1040Wickens K VocelkaAustralia2026-09-25Chemel, James L Cpa PROPOSAL82Stephen Shaw
1041Clifford V BowleyIndia2026-10-04Chanay, Jeffrey A Esq UNQUALIFIED28Xuxue Feng
1042Maisha Y MarrierIndia2026-10-10Truhlar And Truhlar Attys PROPOSAL50Onyama Limba
1043Juan K CaudySpain2026-09-25Morlong Associates NEW66Xuxue Feng
1044Ricardo V TollnerArgentina2026-10-13Morlong Associates NEGOTIATION48Elwin Sharvill
1045Octavia D SaylorsArgentina2026-10-21Chapman, Ross E Esq PROPOSAL17Xuxue Feng
1046Adams G CampainGermany2026-09-25Chemel, James L Cpa QUALIFIED48Xuxue Feng
1047Nicolas Q CampainUnited Kingdom2026-10-02Dorl, James J Esq RENEWAL84Xuxue Feng
1048Smith P GauchoItaly2026-10-17Chemel, James L Cpa PROPOSAL74Ioni Bowcher
1049Morrow C AlbaresArgentina2026-09-30Truhlar And Truhlar Attys NEW91Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Kadeem M FigeroaUnited KingdomElwin Sharvill QUALIFIED
Kaitlin M SergiBrazilAsiya Javayant QUALIFIED
Mayumi L SergiIndiaAmy Elsner NEW
Aditya W BologniaJapanOnyama Limba QUALIFIED
Emily R MacleadUnited KingdomStephen Shaw NEW
Sinclair C SlusarskiIndiaAsiya Javayant NEGOTIATION
Maria R MorascaCanadaIvan Magalhaes RENEWAL
Maisha B ChuiAustraliaAmy Elsner NEGOTIATION
Leon V BriddickBrazilAnna Fali NEW
Maria B MacleadBrazilAmy Elsner QUALIFIED
Izzy J VocelkaRussiaIoni Bowcher QUALIFIED
Deepesh I MarrierSpainElwin Sharvill NEGOTIATION
Arvin M CaldareraArgentinaStephen Shaw NEGOTIATION
Chavez L SaylorsArgentinaAsiya Javayant QUALIFIED
Kaitlin P InouyeItalyAnna Fali UNQUALIFIED
Johnson C OldroydRussiaElwin Sharvill PROPOSAL
Ashley Z StensethItalyElwin Sharvill PROPOSAL
Leja O BriddickCanadaAmy Elsner UNQUALIFIED
Silvio V PerinUnited KingdomIvan Magalhaes RENEWAL
Johnson N WieserIndiaElwin Sharvill PROPOSAL
Misaki G DilliardGermanyBernardo Dominic QUALIFIED
Smith Y StensethArgentinaXuxue Feng NEW
Emily I SergiRussiaBernardo Dominic QUALIFIED
Leja D AlbaresJapanElwin Sharvill UNQUALIFIED
Wickens R BologniaFranceIoni Bowcher QUALIFIED
Stacey O WhobreySpainStephen Shaw RENEWAL
Mujtaba H FollerSpainOnyama Limba NEGOTIATION
Munro G IturbideSpainIoni Bowcher NEGOTIATION
Kaitlin L CaudyGermanyAnna Fali QUALIFIED
Maria N GillianArgentinaIoni Bowcher QUALIFIED
Arvin M RimSpainBernardo Dominic QUALIFIED
Maria S ShinkoUnited KingdomAsiya Javayant NEW
Julie C SaylorsSpainAmy Elsner UNQUALIFIED
Francesco U AmigonBrazilIoni Bowcher QUALIFIED
Morrow A OldroydFranceIvan Magalhaes NEW
Morrow T MaletSpainIoni Bowcher NEGOTIATION
Claire X PaprockiJapanIvan Magalhaes QUALIFIED
Wickens S PerinCanadaXuxue Feng QUALIFIED
James L DarakjyAustraliaAmy Elsner UNQUALIFIED
Smith I MaletItalyXuxue Feng NEGOTIATION
Costa D MaletIndiaOnyama Limba QUALIFIED
Chavez T RimArgentinaAnna Fali RENEWAL
Leja N SaylorsCanadaIvan Magalhaes PROPOSAL
Salvatore A CampainFranceXuxue Feng NEGOTIATION
Julie T TollnerArgentinaIvan Magalhaes NEGOTIATION
Wickens J GlickBrazilStephen Shaw RENEWAL
Stacey A BriddickSpainAsiya Javayant QUALIFIED
Wickens S GarufiRussiaAmy Elsner NEW
Julie Q BriddickItalyXuxue Feng QUALIFIED
Rodrigues A SchemmerJapanBernardo Dominic PROPOSAL
Frozen Columns
Name
Costa A Campain
Leon Q Ostrosky
Ricardo H Kusko
Clifford M Sergi
Maisha C Vocelka
Antonio L Malet
Salvatore Z Royster
Jefferson Z Figeroa
Aruna F Whobrey
Salvatore Q Glick
Silvio D Kusko
Leon A Rim
Ricardo O Iturbide
Maria B Nicka
Stacey R Stockham
Salvatore N Glick
Mayumi Q Tollner
Silvio R Ruta
Silvio V Bolognia
James F Shinko
Cody F Briddick
Darci D Figeroa
Emily V Bolognia
Izzy C Gillian
Smith J Paprocki
Jeanfrancois E Inouye
Emily R Amigon
James R Albares
Antonio L Morasca
Johnson Y Ferencz
Kaitlin P Flosi
Silvio U Oldroyd
Maisha O Iturbide
Leja C Nicka
Cody Q Malet
Rodrigues C Flosi
Smith O Marrier
Aruna C Butt
Misaki H Stockham
Kadeem F Rim
Kadeem Z Perin
Jefferson F Rim
Sinclair X Rim
Costa T Dilliard
Greenwood N Rulapaugh
Leon Y Royster
Ivar X Kusko
Julie P Nicka
Clifford J Shinko
Mujtaba N Slusarski
IdCountryDate
1000Canada2026-09-27
1001Italy2026-10-19
1002United Kingdom2026-10-20
1003Argentina2026-10-23
1004Argentina2026-10-15
1005France2026-10-01
1006Italy2026-10-22
1007United Kingdom2026-10-04
1008Italy2026-10-19
1009Japan2026-10-05
1010Russia2026-09-30
1011Canada2026-10-16
1012Argentina2026-10-01
1013Italy2026-09-24
1014Canada2026-09-25
1015Australia2026-09-27
1016Brazil2026-10-14
1017United Kingdom2026-10-07
1018Argentina2026-10-09
1019Germany2026-10-08
1020Italy2026-10-04
1021Canada2026-10-16
1022France2026-09-29
1023Italy2026-10-18
1024France2026-10-23
1025Argentina2026-10-18
1026India2026-10-18
1027Russia2026-10-22
1028Russia2026-09-30
1029France2026-09-28
1030Argentina2026-10-04
1031Canada2026-10-16
1032Argentina2026-10-11
1033Australia2026-10-06
1034India2026-10-13
1035Russia2026-10-18
1036Russia2026-09-29
1037Canada2026-10-12
1038France2026-09-27
1039France2026-10-12
1040Russia2026-10-20
1041Brazil2026-10-20
1042Spain2026-09-26
1043India2026-09-28
1044France2026-10-06
1045Brazil2026-10-05
1046Russia2026-10-01
1047Italy2026-10-22
1048France2026-10-13
1049Australia2026-09-25

On-Demand Data

NameIdCountryDate
Ricardo Q Garufi1000Brazil2026-10-09
Julie I Ostrosky1001Japan2026-10-21
Clifford P Tollner1002Italy2026-10-13
Wickens Y Schemmer1003France2026-10-10
Jennifer M Ostrosky1004United Kingdom2026-10-10
Silvio G Sergi1005Spain2026-10-15
Murillo L Rim1006Canada2026-10-10
Munro W Schemmer1007Argentina2026-10-11
Deepesh M Nestle1008Russia2026-10-01
Ivar Z Shinko1009France2026-10-02
Deepesh A Caudy1010Argentina2026-10-02
Maria L Ruta1011Argentina2026-09-28
Clifford X Waycott1012Australia2026-10-02
Deepesh G Kusko1013Germany2026-10-21
Leon G Inouye1014Argentina2026-10-17
Francesco H Stenseth1015Germany2026-10-17
Juan W Flosi1016Brazil2026-09-24
Tony Z Caldarera1017Spain2026-10-03
Murillo B Figeroa1018United Kingdom2026-10-01
Emily S Waycott1019Brazil2026-09-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey T RutaIndiaAsiya Javayant UNQUALIFIED
Kadeem B NickaCanadaStephen Shaw PROPOSAL
Aruna A VenereGermanyOnyama Limba RENEWAL
Isabel R ButtSpainOnyama Limba UNQUALIFIED
Maisha P InouyeFranceOnyama Limba NEGOTIATION
Clifford I NestleAustraliaXuxue Feng NEW
Salvatore V VocelkaBrazilOnyama Limba QUALIFIED
Kaitlin S MaletIndiaAmy Elsner PROPOSAL
Antonio D InouyeRussiaElwin Sharvill NEW
Maria L GlickIndiaIoni Bowcher NEGOTIATION
Jennifer E StensethIndiaIoni Bowcher QUALIFIED
Octavia O FollerItalyBernardo Dominic RENEWAL
Emily J SchemmerAustraliaElwin Sharvill PROPOSAL
Aruna F RutaArgentinaElwin Sharvill UNQUALIFIED
Munro H BologniaSpainBernardo Dominic QUALIFIED
Faith S FigeroaBrazilAmy Elsner QUALIFIED
Costa T IturbideIndiaBernardo Dominic NEGOTIATION
Deepesh J BowleyJapanStephen Shaw NEGOTIATION
Leon W MorascaCanadaAsiya Javayant PROPOSAL
Tony V PoquetteCanadaAmy Elsner NEW
Adams C DilliardUnited KingdomAsiya Javayant PROPOSAL
Jeanfrancois P SaylorsAustraliaBernardo Dominic RENEWAL
Mujtaba X DoeRussiaXuxue Feng NEW
Julie Q NestleGermanyAmy Elsner RENEWAL
Sinclair H NickaGermanyElwin Sharvill PROPOSAL
Leon T MaletRussiaIvan Magalhaes UNQUALIFIED
Maisha V MorascaAustraliaAnna Fali RENEWAL
Murillo E OstroskyJapanAsiya Javayant RENEWAL
Costa X PoquetteUnited KingdomAsiya Javayant QUALIFIED
James A GarufiAustraliaXuxue Feng NEW
Faith X VocelkaIndiaOnyama Limba RENEWAL
Claire N StensethFranceOnyama Limba NEW
Costa N FerenczSpainStephen Shaw UNQUALIFIED
Salvatore R StockhamRussiaAmy Elsner NEW
Nicolas N PerinIndiaOnyama Limba NEGOTIATION
Murillo I NickaBrazilIoni Bowcher QUALIFIED
Wickens M CampainFranceAsiya Javayant RENEWAL
Ivar D WaycottJapanStephen Shaw PROPOSAL
Morrow V NestleArgentinaBernardo Dominic PROPOSAL
Octavia Q DarakjyIndiaOnyama Limba 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>