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
Claire J MacleadBrazilAmy Elsner NEGOTIATION
Cody J AmigonFranceAmy Elsner RENEWAL
Mayumi U AmigonAustraliaBernardo Dominic PROPOSAL
Clifford B InouyeFranceAsiya Javayant QUALIFIED
Maria G DarakjyIndiaAsiya Javayant NEGOTIATION
Greenwood K VenereFranceStephen Shaw UNQUALIFIED
Rodrigues Z SaylorsBrazilAmy Elsner QUALIFIED
Arvin J WieserRussiaIvan Magalhaes NEW
Juan R NestleUnited KingdomXuxue Feng RENEWAL
Adams C RutaIndiaAnna Fali PROPOSAL
Tony B GillianSpainBernardo Dominic NEGOTIATION
Alejandro I IturbideIndiaIoni Bowcher PROPOSAL
James W NestleAustraliaAsiya Javayant PROPOSAL
Ricardo J SergiAustraliaXuxue Feng NEW
Jones A GillianRussiaBernardo Dominic PROPOSAL
Mayumi Y FollerGermanyOnyama Limba PROPOSAL
Cody I BriddickUnited KingdomStephen Shaw RENEWAL
Darci R TollnerRussiaIoni Bowcher NEW
Jones J PoquetteAustraliaAnna Fali RENEWAL
Ashley U RimUnited KingdomIoni Bowcher NEW
Clifford U RulapaughRussiaIvan Magalhaes NEW
Smith S StensethItalyStephen Shaw NEW
David A KolmetzIndiaBernardo Dominic NEW
Maria X VocelkaUnited KingdomBernardo Dominic NEGOTIATION
Leja W PoquetteUnited KingdomAnna Fali NEGOTIATION
Emily D RutaBrazilElwin Sharvill UNQUALIFIED
James N GlickRussiaAnna Fali RENEWAL
Costa Y MarrierFranceOnyama Limba RENEWAL
Faith B KuskoItalyAmy Elsner UNQUALIFIED
Maisha L OstroskyFranceIvan Magalhaes NEGOTIATION
Ivar C CaldareraUnited KingdomIoni Bowcher NEW
Jeanfrancois D FigeroaCanadaIvan Magalhaes NEGOTIATION
Julie B FollerArgentinaAnna Fali NEW
Stacey Y StensethRussiaAmy Elsner PROPOSAL
Cody B MorascaRussiaBernardo Dominic NEGOTIATION
Jennifer Q RulapaughSpainAnna Fali RENEWAL
Greenwood G PerinJapanElwin Sharvill RENEWAL
Adams N MarrierSpainAsiya Javayant PROPOSAL
Johnson O KolmetzIndiaXuxue Feng QUALIFIED
Rodrigues W ChuiIndiaOnyama Limba PROPOSAL
Salvatore I InouyeAustraliaStephen Shaw PROPOSAL
Jones D StockhamRussiaIoni Bowcher QUALIFIED
Misaki R SergiAustraliaXuxue Feng UNQUALIFIED
Smith O InouyeIndiaAnna Fali QUALIFIED
Arvin T AlbaresBrazilOnyama Limba NEW
Jeanfrancois P AmigonRussiaElwin Sharvill NEGOTIATION
Cody U BologniaUnited KingdomIoni Bowcher UNQUALIFIED
Morrow K ButtArgentinaXuxue Feng NEW
Jefferson S MorascaGermanyXuxue Feng QUALIFIED
Stacey J TollnerArgentinaBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Cody L GlickSpainAnna Fali UNQUALIFIED
Emily Z FollerJapanIoni Bowcher UNQUALIFIED
Kaitlin D GauchoUnited KingdomOnyama Limba QUALIFIED
Deepesh K PerinGermanyElwin Sharvill RENEWAL
Jennifer N VenereCanadaOnyama Limba NEGOTIATION
Salvatore Y SchemmerBrazilIoni Bowcher NEGOTIATION
Izzy N WieserCanadaStephen Shaw RENEWAL
Murillo E RimUnited KingdomAnna Fali RENEWAL
Sinclair G GarufiGermanyAsiya Javayant NEW
Nicolas J PerinRussiaIvan Magalhaes RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez I CaudyJapan2026-10-08Morlong Associates NEGOTIATION48Anna Fali
1001Sinclair X FigeroaCanada2026-10-24Dorl, James J Esq QUALIFIED91Anna Fali
1002Silvio X WaycottCanada2026-10-18Printing Dimensions PROPOSAL23Elwin Sharvill
1003Rodrigues F FollerArgentina2026-10-08Chemel, James L Cpa NEW68Stephen Shaw
1004James A MaletUnited Kingdom2026-10-01Benton, John B Jr UNQUALIFIED44Ioni Bowcher
1005Salvatore V FollerRussia2026-09-28King, Christopher A Esq RENEWAL93Ioni Bowcher
1006Aruna K OldroydFrance2026-09-25Chapman, Ross E Esq NEW17Stephen Shaw
1007Aika J CampainJapan2026-10-02Chapman, Ross E Esq PROPOSAL73Asiya Javayant
1008Rodrigues Z TollnerFrance2026-09-30Chemel, James L Cpa QUALIFIED4Ivan Magalhaes
1009Isabel Q DarakjyGermany2026-10-15Dorl, James J Esq QUALIFIED88Elwin Sharvill
1010Octavia G SchemmerUnited Kingdom2026-10-01Chanay, Jeffrey A Esq UNQUALIFIED56Ioni Bowcher
1011Kadeem K OldroydIndia2026-10-07Morlong Associates UNQUALIFIED46Asiya Javayant
1012Leja K KolmetzJapan2026-09-26Benton, John B Jr UNQUALIFIED82Amy Elsner
1013Faith Z GauchoJapan2026-10-21Feltz Printing Service PROPOSAL28Bernardo Dominic
1014Wickens Y IturbideFrance2026-10-03Feltz Printing Service RENEWAL1Ioni Bowcher
1015Rodrigues B VenereAustralia2026-10-01Benton, John B Jr RENEWAL91Bernardo Dominic
1016Alejandro Y AmigonUnited Kingdom2026-10-23Rangoni Of Florence QUALIFIED34Stephen Shaw
1017Silvio K AlbaresRussia2026-10-16Rousseaux, Michael Esq PROPOSAL22Asiya Javayant
1018Salvatore T VocelkaItaly2026-10-09Benton, John B Jr QUALIFIED2Ivan Magalhaes
1019Murillo T ButtAustralia2026-09-27Feiner Bros QUALIFIED59Xuxue Feng
1020Jennifer F AlbaresAustralia2026-10-12Benton, John B Jr RENEWAL13Bernardo Dominic
1021Clifford X GauchoJapan2026-10-05Buckley Miller Wright QUALIFIED94Xuxue Feng
1022Alejandro C KolmetzJapan2026-10-20King, Christopher A Esq UNQUALIFIED25Asiya Javayant
1023Aruna P NestleRussia2026-09-28Printing Dimensions UNQUALIFIED53Onyama Limba
1024Leon M IturbideItaly2026-10-11Feiner Bros QUALIFIED76Onyama Limba
1025Antonio G CaudyIndia2026-10-19Rousseaux, Michael Esq UNQUALIFIED88Asiya Javayant
1026Leja R MaletAustralia2026-10-15Rousseaux, Michael Esq NEW22Xuxue Feng
1027Kadeem V GarufiCanada2026-09-26Printing Dimensions NEW51Stephen Shaw
1028Ivar T OldroydBrazil2026-10-05Morlong Associates RENEWAL93Onyama Limba
1029Smith P KolmetzAustralia2026-10-12Benton, John B Jr UNQUALIFIED51Xuxue Feng
1030Aditya K NestleBrazil2026-10-01Feiner Bros NEW12Xuxue Feng
1031Ricardo Y SaylorsSpain2026-10-24Chemel, James L Cpa PROPOSAL56Onyama Limba
1032Aruna X KuskoUnited Kingdom2026-10-13Rangoni Of Florence UNQUALIFIED87Onyama Limba
1033Rodrigues A WaycottJapan2026-10-15Chemel, James L Cpa UNQUALIFIED72Asiya Javayant
1034Izzy Y MaletFrance2026-10-01Commercial Press UNQUALIFIED19Anna Fali
1035Cody H StensethJapan2026-10-10Rangoni Of Florence NEGOTIATION62Ivan Magalhaes
1036Aditya F CaudyJapan2026-10-12Chapman, Ross E Esq RENEWAL6Onyama Limba
1037Jefferson U TollnerIndia2026-10-10King, Christopher A Esq PROPOSAL50Bernardo Dominic
1038Kaitlin H DilliardSpain2026-10-05Feltz Printing Service PROPOSAL95Anna Fali
1039Salvatore J PerinJapan2026-10-03Chanay, Jeffrey A Esq NEW72Stephen Shaw
1040Jefferson G KuskoArgentina2026-09-29Chapman, Ross E Esq NEGOTIATION98Anna Fali
1041Clifford R CaudyItaly2026-10-19Commercial Press NEW99Asiya Javayant
1042Faith K MaletRussia2026-10-23Rousseaux, Michael Esq QUALIFIED7Stephen Shaw
1043Johnson V ButtUnited Kingdom2026-10-20Dorl, James J Esq RENEWAL19Stephen Shaw
1044James P RulapaughArgentina2026-10-15Feiner Bros RENEWAL94Anna Fali
1045Clifford U SchemmerAustralia2026-10-15Chanay, Jeffrey A Esq NEW30Stephen Shaw
1046Munro U CaudyBrazil2026-10-09Dorl, James J Esq NEW76Ioni Bowcher
1047Jones Z GauchoCanada2026-10-08Feiner Bros NEGOTIATION26Xuxue Feng
1048Alejandro F CaldareraFrance2026-10-14Commercial Press QUALIFIED60Bernardo Dominic
1049Smith I NestleRussia2026-10-23Feiner Bros RENEWAL82Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Greenwood T DilliardGermanyAnna Fali PROPOSAL
Claire L RulapaughJapanIvan Magalhaes NEW
Silvio J RoysterCanadaBernardo Dominic RENEWAL
Kadeem J StensethGermanyIvan Magalhaes PROPOSAL
Murillo J KuskoCanadaIoni Bowcher RENEWAL
Claire R DoeAustraliaStephen Shaw NEGOTIATION
James E RulapaughItalyIvan Magalhaes PROPOSAL
Cody Z GarufiCanadaElwin Sharvill NEW
Ricardo I VenereUnited KingdomIoni Bowcher NEGOTIATION
Juan O MaletJapanAmy Elsner NEGOTIATION
Ashley E GlickSpainAmy Elsner NEGOTIATION
Stacey R DilliardItalyStephen Shaw NEW
Ivar I FlosiIndiaAnna Fali NEW
Isabel M GlickIndiaOnyama Limba RENEWAL
Chavez K ChuiArgentinaStephen Shaw UNQUALIFIED
Ashley E KolmetzIndiaBernardo Dominic PROPOSAL
Emily W SaylorsArgentinaBernardo Dominic PROPOSAL
Tony H PerinIndiaIoni Bowcher RENEWAL
Arvin T RutaJapanAmy Elsner QUALIFIED
Isabel H FlosiUnited KingdomAmy Elsner PROPOSAL
Leon L DilliardSpainBernardo Dominic PROPOSAL
Ashley I SlusarskiRussiaOnyama Limba UNQUALIFIED
Adams K InouyeCanadaStephen Shaw RENEWAL
Silvio S KolmetzFranceIoni Bowcher RENEWAL
Francesco N AmigonArgentinaIvan Magalhaes NEGOTIATION
Jones Z NestleUnited KingdomAmy Elsner PROPOSAL
Alejandro T ShinkoUnited KingdomElwin Sharvill NEW
Leja S WaycottBrazilIoni Bowcher RENEWAL
Deepesh H CaudyAustraliaIoni Bowcher NEW
Leja X TollnerRussiaIoni Bowcher PROPOSAL
Claire W RutaRussiaElwin Sharvill RENEWAL
Maisha H PoquetteBrazilXuxue Feng PROPOSAL
Jeanfrancois B ButtAustraliaElwin Sharvill QUALIFIED
Darci O StensethGermanyAsiya Javayant UNQUALIFIED
Jefferson W TollnerArgentinaElwin Sharvill PROPOSAL
Nicolas W GauchoJapanIoni Bowcher RENEWAL
Arvin E MaletBrazilAsiya Javayant NEGOTIATION
Rodrigues R DarakjyIndiaOnyama Limba NEGOTIATION
Faith J PaprockiAustraliaElwin Sharvill NEW
Izzy G MaletItalyStephen Shaw QUALIFIED
Leja E DarakjyFranceStephen Shaw RENEWAL
Arvin A VenereCanadaOnyama Limba QUALIFIED
Octavia N VocelkaAustraliaXuxue Feng NEGOTIATION
Isabel Z VocelkaJapanAmy Elsner PROPOSAL
Salvatore N BriddickGermanyBernardo Dominic PROPOSAL
Alejandro Z GillianUnited KingdomElwin Sharvill QUALIFIED
Silvio N IturbideCanadaBernardo Dominic NEGOTIATION
Cody D GarufiGermanyAsiya Javayant UNQUALIFIED
Alejandro L PoquetteFranceElwin Sharvill NEW
Antonio S BowleyItalyAnna Fali UNQUALIFIED
Frozen Columns
Name
Maisha F Morasca
Ricardo O Briddick
Francesco B Inouye
Stacey C Amigon
Tony P Doe
Aruna N Poquette
James N Malet
Salvatore I Marrier
Leja J Figeroa
Claire I Saylors
Munro C Rulapaugh
Murillo J Ostrosky
Tony C Paprocki
Leja K Bowley
Tony K Marrier
Alejandro F Sergi
Greenwood L Flosi
Arvin N Gillian
Maria O Shinko
Mujtaba X Darakjy
Antonio A Saylors
Antonio F Paprocki
Leja A Schemmer
Maria H Caldarera
Smith L Briddick
Emily M Schemmer
Julie Q Rim
Darci O Dilliard
Chavez X Ruta
Maisha R Waycott
Morrow T Royster
Cody U Bowley
Aika F Foller
Silvio I Ferencz
James K Shinko
Francesco R Oldroyd
David U Ferencz
Deepesh U Waycott
Nicolas L Kolmetz
Ivar I Whobrey
Wickens J Dilliard
Ashley H Vocelka
Octavia X Iturbide
Octavia F Kusko
Mayumi X Waycott
Jones N Dilliard
James E Venere
Misaki M Campain
Julie P Caldarera
Nicolas G Stenseth
IdCountryDate
1000Germany2026-10-14
1001Argentina2026-10-19
1002Brazil2026-10-18
1003Japan2026-09-30
1004Australia2026-10-05
1005Spain2026-10-06
1006Brazil2026-10-02
1007Japan2026-10-10
1008United Kingdom2026-10-07
1009Italy2026-09-27
1010Italy2026-09-26
1011Italy2026-10-11
1012Spain2026-09-25
1013Spain2026-10-22
1014India2026-09-25
1015Australia2026-10-10
1016France2026-09-27
1017France2026-09-30
1018France2026-10-01
1019India2026-09-25
1020Spain2026-10-13
1021Russia2026-10-10
1022Spain2026-10-01
1023Germany2026-10-14
1024Australia2026-10-23
1025Spain2026-10-16
1026India2026-10-14
1027Japan2026-10-24
1028Spain2026-10-13
1029Japan2026-10-04
1030Argentina2026-10-03
1031Russia2026-09-29
1032India2026-09-30
1033Australia2026-10-03
1034Argentina2026-10-05
1035Germany2026-10-17
1036Brazil2026-10-05
1037Japan2026-10-14
1038France2026-10-15
1039India2026-10-04
1040Italy2026-10-14
1041India2026-10-05
1042France2026-10-13
1043Italy2026-10-02
1044India2026-10-16
1045Canada2026-10-16
1046Italy2026-10-13
1047Spain2026-10-04
1048Japan2026-09-26
1049Russia2026-10-02

On-Demand Data

NameIdCountryDate
Claire T Butt1000Germany2026-10-04
Sinclair J Briddick1001Canada2026-10-22
Francesco F Schemmer1002Australia2026-10-21
Adams G Oldroyd1003Brazil2026-10-01
Deepesh Q Tollner1004Italy2026-09-28
Faith L Waycott1005Canada2026-10-11
Darci H Whobrey1006United Kingdom2026-10-13
Ricardo E Maclead1007United Kingdom2026-09-30
Wickens V Slusarski1008Russia2026-09-27
Deepesh Z Chui1009Spain2026-10-10
Cody B Flosi1010Australia2026-10-22
Munro Z Rim1011United Kingdom2026-09-26
Isabel L Albares1012Canada2026-10-03
Ashley P Stenseth1013Brazil2026-10-20
Antonio S Chui1014Germany2026-10-16
Kadeem F Waycott1015Spain2026-10-08
Smith V Figeroa1016Canada2026-10-20
Jones Z Perin1017Japan2026-10-13
Alejandro V Bolognia1018United Kingdom2026-10-21
Kadeem C Garufi1019India2026-09-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna V WhobreyArgentinaAnna Fali RENEWAL
Claire A MarrierBrazilIvan Magalhaes NEW
Mayumi X BologniaUnited KingdomBernardo Dominic RENEWAL
Smith U CampainRussiaIvan Magalhaes PROPOSAL
Nicolas L MorascaRussiaElwin Sharvill UNQUALIFIED
Jones G CampainSpainElwin Sharvill RENEWAL
Leon F RulapaughArgentinaAmy Elsner NEW
Arvin A FollerRussiaAsiya Javayant NEGOTIATION
Leon O OldroydAustraliaStephen Shaw PROPOSAL
Claire V BowleyGermanyOnyama Limba NEW
Stacey K NickaCanadaAmy Elsner NEGOTIATION
Murillo F ButtUnited KingdomIoni Bowcher UNQUALIFIED
Aruna S MaletSpainAmy Elsner NEGOTIATION
Darci J GlickFranceIoni Bowcher QUALIFIED
Jennifer S ShinkoAustraliaAmy Elsner NEW
Misaki Y RoysterGermanyIvan Magalhaes NEGOTIATION
Deepesh J FigeroaAustraliaElwin Sharvill PROPOSAL
Maisha O SchemmerCanadaIvan Magalhaes UNQUALIFIED
Jones I NestleAustraliaAnna Fali QUALIFIED
Ivar K NestleJapanIoni Bowcher NEGOTIATION
Jennifer M DarakjyIndiaIvan Magalhaes QUALIFIED
Jennifer H InouyeArgentinaElwin Sharvill PROPOSAL
Rodrigues L MacleadArgentinaOnyama Limba UNQUALIFIED
Salvatore F BowleyArgentinaBernardo Dominic PROPOSAL
Mayumi R CampainIndiaAnna Fali UNQUALIFIED
Ricardo A InouyeFranceAsiya Javayant QUALIFIED
Kadeem W AmigonFranceAmy Elsner UNQUALIFIED
Francesco P VocelkaArgentinaAmy Elsner NEGOTIATION
Arvin Z BowleyBrazilElwin Sharvill QUALIFIED
Leja W DarakjyAustraliaBernardo Dominic PROPOSAL
Julie Y PoquetteItalyBernardo Dominic QUALIFIED
Adams X GlickIndiaIoni Bowcher PROPOSAL
Mujtaba V SlusarskiCanadaAmy Elsner PROPOSAL
Alejandro Z VenereUnited KingdomXuxue Feng PROPOSAL
Jones J PaprockiGermanyIvan Magalhaes QUALIFIED
Cody E PaprockiSpainOnyama Limba NEW
Emily D KolmetzJapanAmy Elsner QUALIFIED
Costa Y InouyeCanadaOnyama Limba RENEWAL
Sinclair O CaudyAustraliaOnyama Limba NEGOTIATION
Leja E OstroskyAustraliaStephen Shaw 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>