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
Jeanfrancois S ChuiIndiaIvan Magalhaes NEGOTIATION
Leon O FerenczJapanAmy Elsner QUALIFIED
Aditya M ChuiItalyAsiya Javayant UNQUALIFIED
Emily I CaudyCanadaStephen Shaw PROPOSAL
Jennifer E TollnerRussiaAmy Elsner UNQUALIFIED
Jennifer R PoquetteArgentinaAmy Elsner NEW
Adams W DilliardItalyIvan Magalhaes UNQUALIFIED
Stacey V BriddickCanadaAsiya Javayant NEW
Emily I GillianCanadaIoni Bowcher RENEWAL
Murillo A WaycottItalyOnyama Limba PROPOSAL
Jeanfrancois T FigeroaArgentinaAnna Fali NEGOTIATION
Nicolas I FlosiFranceElwin Sharvill QUALIFIED
Smith A NestleArgentinaAsiya Javayant UNQUALIFIED
Rodrigues A SergiItalyOnyama Limba RENEWAL
Jefferson A SaylorsItalyOnyama Limba NEGOTIATION
Faith W InouyeJapanElwin Sharvill QUALIFIED
Cody X PaprockiItalyAsiya Javayant RENEWAL
Ivar Q SaylorsRussiaElwin Sharvill QUALIFIED
Mayumi A NestleAustraliaAmy Elsner RENEWAL
Tony Y FlosiSpainAnna Fali NEGOTIATION
Maisha J WaycottGermanyAsiya Javayant QUALIFIED
Greenwood C OldroydGermanyAnna Fali QUALIFIED
Maria R StockhamAustraliaAnna Fali NEW
Isabel M KolmetzCanadaElwin Sharvill PROPOSAL
Adams I NickaUnited KingdomBernardo Dominic UNQUALIFIED
Ricardo O RutaIndiaAnna Fali PROPOSAL
Rodrigues W FerenczBrazilBernardo Dominic PROPOSAL
Ricardo Q DarakjyItalyIvan Magalhaes QUALIFIED
Aditya B WhobreyAustraliaElwin Sharvill UNQUALIFIED
Smith T RulapaughFranceOnyama Limba QUALIFIED
Darci T ShinkoBrazilOnyama Limba PROPOSAL
Salvatore B SergiUnited KingdomXuxue Feng NEGOTIATION
Nicolas A GlickBrazilIvan Magalhaes RENEWAL
Adams Z NestleCanadaBernardo Dominic UNQUALIFIED
Jefferson B PaprockiRussiaAsiya Javayant RENEWAL
Stacey N GlickArgentinaStephen Shaw NEW
Misaki Z StockhamRussiaElwin Sharvill NEW
David E BowleyItalyAsiya Javayant NEW
Isabel T OldroydGermanyBernardo Dominic UNQUALIFIED
Misaki W GillianArgentinaElwin Sharvill RENEWAL
Chavez I GarufiBrazilAmy Elsner RENEWAL
Wickens F PerinGermanyAmy Elsner NEW
Izzy O BriddickSpainIoni Bowcher PROPOSAL
Mayumi W GlickArgentinaOnyama Limba QUALIFIED
Tony U FlosiBrazilBernardo Dominic UNQUALIFIED
Sinclair P WieserItalyIoni Bowcher RENEWAL
Francesco B FigeroaSpainAsiya Javayant NEGOTIATION
Juan Z AlbaresFranceElwin Sharvill NEGOTIATION
Jeanfrancois Q PaprockiFranceElwin Sharvill RENEWAL
Sinclair A NestleFranceAnna Fali NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Juan O RutaUnited KingdomXuxue Feng UNQUALIFIED
Johnson J GlickGermanyIoni Bowcher PROPOSAL
Ricardo N SchemmerCanadaStephen Shaw NEGOTIATION
Arvin X GlickGermanyAsiya Javayant NEW
Smith T VenereArgentinaAnna Fali QUALIFIED
Ashley D VenereItalyAmy Elsner NEW
Murillo F PerinIndiaStephen Shaw QUALIFIED
Antonio O SlusarskiItalyStephen Shaw PROPOSAL
Costa Q BologniaFranceXuxue Feng NEW
Isabel K CaudyItalyAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith C AlbaresIndia2026-09-16Buckley Miller Wright QUALIFIED22Elwin Sharvill
1001Aika C RoysterFrance2026-09-12Chapman, Ross E Esq NEGOTIATION97Elwin Sharvill
1002Leja U IturbideSpain2026-09-11Rousseaux, Michael Esq NEW65Anna Fali
1003Emily B WhobreyAustralia2026-09-11Truhlar And Truhlar Attys NEW71Elwin Sharvill
1004Sinclair M BowleyGermany2026-09-20Rangoni Of Florence QUALIFIED5Amy Elsner
1005Claire R InouyeJapan2026-09-08Morlong Associates RENEWAL30Amy Elsner
1006Sinclair Y ShinkoSpain2026-09-23Feltz Printing Service PROPOSAL98Onyama Limba
1007Costa C OldroydAustralia2026-09-16Feiner Bros RENEWAL6Ioni Bowcher
1008Francesco N TollnerIndia2026-09-25Dorl, James J Esq PROPOSAL99Elwin Sharvill
1009Faith X IturbideJapan2026-09-17Commercial Press UNQUALIFIED14Elwin Sharvill
1010Darci W GlickBrazil2026-09-10Buckley Miller Wright NEW52Bernardo Dominic
1011Alejandro H KolmetzFrance2026-09-17Morlong Associates QUALIFIED54Asiya Javayant
1012Antonio X InouyeSpain2026-09-01King, Christopher A Esq NEGOTIATION37Onyama Limba
1013Morrow X AlbaresGermany2026-09-02Commercial Press RENEWAL35Ivan Magalhaes
1014Nicolas N SergiCanada2026-09-29Benton, John B Jr NEW70Ioni Bowcher
1015Ashley M GillianFrance2026-09-02Feltz Printing Service NEGOTIATION47Bernardo Dominic
1016Juan B MaletArgentina2026-09-13Rousseaux, Michael Esq RENEWAL21Asiya Javayant
1017Clifford S MacleadIndia2026-08-31Printing Dimensions PROPOSAL40Amy Elsner
1018Chavez T StensethCanada2026-08-31Commercial Press RENEWAL37Stephen Shaw
1019Kaitlin K RutaCanada2026-09-09Chemel, James L Cpa NEW3Amy Elsner
1020James P DarakjyIndia2026-09-04Truhlar And Truhlar Attys NEGOTIATION55Xuxue Feng
1021David I GillianGermany2026-09-16Truhlar And Truhlar Attys QUALIFIED2Anna Fali
1022Clifford O SlusarskiCanada2026-09-24Commercial Press RENEWAL59Anna Fali
1023Ricardo V StensethSpain2026-09-21Truhlar And Truhlar Attys NEGOTIATION98Ivan Magalhaes
1024Rodrigues F TollnerUnited Kingdom2026-09-01Chapman, Ross E Esq NEW1Amy Elsner
1025Stacey S DilliardItaly2026-09-28Benton, John B Jr RENEWAL49Bernardo Dominic
1026Sinclair Y FigeroaItaly2026-09-05Chemel, James L Cpa RENEWAL63Ivan Magalhaes
1027Maisha L PerinItaly2026-09-28Morlong Associates NEGOTIATION33Amy Elsner
1028James E CaldareraRussia2026-09-13Feltz Printing Service NEGOTIATION53Bernardo Dominic
1029Alejandro Z DilliardUnited Kingdom2026-09-21Commercial Press QUALIFIED34Anna Fali
1030Darci K AlbaresFrance2026-09-15Benton, John B Jr RENEWAL78Amy Elsner
1031Maria N GauchoFrance2026-09-26Printing Dimensions UNQUALIFIED33Amy Elsner
1032Clifford Q IturbideUnited Kingdom2026-09-12Printing Dimensions RENEWAL87Ioni Bowcher
1033Leja R CampainBrazil2026-09-29Benton, John B Jr PROPOSAL97Asiya Javayant
1034Aditya X BologniaArgentina2026-09-13Chanay, Jeffrey A Esq UNQUALIFIED78Anna Fali
1035Isabel D CampainRussia2026-09-08Chapman, Ross E Esq UNQUALIFIED53Ivan Magalhaes
1036Jeanfrancois U SlusarskiRussia2026-09-27King, Christopher A Esq QUALIFIED14Amy Elsner
1037Murillo A MarrierSpain2026-09-14Rousseaux, Michael Esq NEW40Anna Fali
1038Rodrigues O ShinkoIndia2026-09-10Commercial Press RENEWAL75Stephen Shaw
1039Smith J NickaFrance2026-09-29Rousseaux, Michael Esq NEGOTIATION5Anna Fali
1040Claire G BologniaAustralia2026-09-15Benton, John B Jr NEGOTIATION10Amy Elsner
1041Julie I OstroskyItaly2026-09-22Chemel, James L Cpa NEW43Bernardo Dominic
1042Nicolas B PoquetteBrazil2026-09-18King, Christopher A Esq UNQUALIFIED5Bernardo Dominic
1043Ashley L BowleyItaly2026-09-03Buckley Miller Wright RENEWAL77Elwin Sharvill
1044Nicolas H MaletIndia2026-09-27Feltz Printing Service UNQUALIFIED56Ioni Bowcher
1045Faith M BowleyJapan2026-08-31Truhlar And Truhlar Attys PROPOSAL2Xuxue Feng
1046Darci G InouyeUnited Kingdom2026-09-17Chanay, Jeffrey A Esq PROPOSAL94Ioni Bowcher
1047Cody H SergiIndia2026-09-10Truhlar And Truhlar Attys NEGOTIATION91Stephen Shaw
1048Munro D CaudyGermany2026-09-08Truhlar And Truhlar Attys NEGOTIATION71Elwin Sharvill
1049Misaki Z CaudyGermany2026-09-01Feltz Printing Service PROPOSAL53Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Darci Z MorascaArgentinaAnna Fali RENEWAL
Murillo D PoquetteFranceIvan Magalhaes NEW
Sinclair W FigeroaRussiaBernardo Dominic QUALIFIED
Silvio W KolmetzAustraliaStephen Shaw NEW
Deepesh K DarakjyGermanyAnna Fali RENEWAL
Nicolas V DilliardJapanBernardo Dominic NEW
Silvio V FerenczRussiaStephen Shaw PROPOSAL
Mujtaba D RulapaughJapanIvan Magalhaes PROPOSAL
Maria N DarakjyUnited KingdomBernardo Dominic NEW
Jones B GarufiArgentinaElwin Sharvill NEW
Aruna Q BowleyFranceAnna Fali QUALIFIED
Juan O FigeroaGermanyElwin Sharvill QUALIFIED
David U FerenczRussiaBernardo Dominic RENEWAL
Octavia F VocelkaUnited KingdomIvan Magalhaes PROPOSAL
Wickens G DoeArgentinaIoni Bowcher RENEWAL
Isabel B GarufiAustraliaAsiya Javayant UNQUALIFIED
Rodrigues W DilliardCanadaIoni Bowcher NEGOTIATION
Francesco X ButtUnited KingdomStephen Shaw RENEWAL
Ricardo E MarrierCanadaIoni Bowcher RENEWAL
Clifford Z BriddickIndiaAnna Fali QUALIFIED
Aruna A KolmetzFranceElwin Sharvill QUALIFIED
Munro U MaletBrazilOnyama Limba QUALIFIED
Kadeem E DoeRussiaAnna Fali RENEWAL
Silvio L GarufiSpainElwin Sharvill QUALIFIED
Ashley U MarrierCanadaIvan Magalhaes UNQUALIFIED
Leon L ShinkoAustraliaBernardo Dominic NEW
Salvatore Z CaldareraIndiaBernardo Dominic RENEWAL
Aditya T MacleadRussiaAsiya Javayant PROPOSAL
Rodrigues B DoeCanadaAmy Elsner NEGOTIATION
Jefferson P DilliardItalyElwin Sharvill NEGOTIATION
Julie C ShinkoFranceElwin Sharvill NEGOTIATION
Chavez D ButtRussiaIoni Bowcher NEGOTIATION
Rodrigues U GillianBrazilBernardo Dominic NEGOTIATION
Faith W MarrierFranceOnyama Limba QUALIFIED
Octavia K DoeRussiaAsiya Javayant UNQUALIFIED
Nicolas E FerenczRussiaIoni Bowcher NEW
Kaitlin U GillianRussiaAnna Fali PROPOSAL
Costa E ButtGermanyXuxue Feng PROPOSAL
Clifford B StensethGermanyOnyama Limba UNQUALIFIED
Maria K BologniaGermanyXuxue Feng RENEWAL
Darci B GillianItalyAnna Fali RENEWAL
Ashley N OstroskySpainAmy Elsner QUALIFIED
Misaki W RulapaughRussiaOnyama Limba NEW
Kaitlin I MarrierUnited KingdomAmy Elsner UNQUALIFIED
Chavez T RimAustraliaBernardo Dominic NEW
Aruna G OstroskyUnited KingdomIvan Magalhaes RENEWAL
Tony A PoquetteItalyStephen Shaw UNQUALIFIED
Greenwood W VocelkaBrazilOnyama Limba RENEWAL
Aika S VenereGermanyAnna Fali NEGOTIATION
Adams G KolmetzBrazilStephen Shaw NEW
Frozen Columns
Name
Alejandro Q Doe
Greenwood E Tollner
Silvio C Briddick
Faith Y Figeroa
Rodrigues F Campain
James S Malet
Rodrigues I Amigon
Mayumi Y Malet
Alejandro F Briddick
Clifford Z Butt
Izzy U Oldroyd
Isabel T Bolognia
David Q Tollner
Arvin V Rulapaugh
Aruna D Schemmer
Greenwood S Caudy
Aditya K Kolmetz
Kadeem Q Waycott
Johnson J Paprocki
Stacey R Wieser
Stacey E Tollner
Maria A Kusko
Leja J Figeroa
Jennifer X Perin
Nicolas S Glick
Isabel M Stockham
Jefferson B Chui
Arvin U Butt
Jefferson Y Chui
Aruna L Garufi
Claire Q Gaucho
Greenwood E Nicka
Jefferson G Malet
Alejandro Y Stenseth
Murillo E Doe
James M Amigon
Mujtaba T Ruta
Aika G Amigon
Rodrigues V Marrier
James D Inouye
Jeanfrancois G Royster
Greenwood V Maclead
Kaitlin M Dilliard
Munro R Tollner
Ivar R Darakjy
Stacey B Briddick
Octavia Q Butt
Stacey W Albares
Smith G Iturbide
Deepesh E Garufi
IdCountryDate
1000Japan2026-09-24
1001Spain2026-08-31
1002Argentina2026-09-15
1003Russia2026-09-20
1004Brazil2026-09-01
1005Spain2026-08-31
1006India2026-09-28
1007Russia2026-09-07
1008United Kingdom2026-09-09
1009Russia2026-09-16
1010Brazil2026-09-07
1011Argentina2026-09-14
1012Russia2026-09-11
1013Brazil2026-09-07
1014France2026-09-15
1015Argentina2026-09-26
1016Argentina2026-09-06
1017Brazil2026-09-26
1018Italy2026-09-25
1019Argentina2026-09-08
1020Australia2026-09-26
1021India2026-09-12
1022Brazil2026-09-09
1023India2026-09-12
1024United Kingdom2026-09-02
1025Canada2026-09-29
1026Australia2026-09-12
1027Australia2026-09-10
1028Spain2026-09-14
1029Japan2026-09-18
1030Germany2026-09-05
1031Argentina2026-09-06
1032India2026-09-01
1033Canada2026-08-31
1034Italy2026-09-10
1035Brazil2026-09-09
1036Argentina2026-09-01
1037France2026-09-25
1038Australia2026-09-23
1039Russia2026-09-20
1040France2026-09-28
1041Italy2026-09-04
1042Russia2026-09-29
1043Japan2026-09-18
1044Argentina2026-09-02
1045United Kingdom2026-09-19
1046Canada2026-09-26
1047France2026-09-17
1048Germany2026-09-03
1049Italy2026-09-02

On-Demand Data

NameIdCountryDate
Aika B Albares1000Brazil2026-09-20
Ivar P Stenseth1001United Kingdom2026-09-15
Silvio Y Stockham1002Spain2026-09-12
Adams G Doe1003United Kingdom2026-09-25
Smith A Waycott1004Germany2026-09-03
Costa Z Inouye1005Germany2026-09-16
Kadeem N Tollner1006Canada2026-09-09
Jones I Whobrey1007India2026-09-26
Costa J Stockham1008Canada2026-09-01
Salvatore K Stenseth1009Russia2026-09-27
Aika L Amigon1010Spain2026-09-04
Darci Y Bowley1011India2026-09-25
Juan F Schemmer1012Spain2026-09-28
Clifford O Darakjy1013Spain2026-09-14
Antonio O Slusarski1014Australia2026-09-01
Wickens S Sergi1015United Kingdom2026-09-04
Clifford W Ferencz1016Italy2026-09-15
Kaitlin E Morasca1017United Kingdom2026-09-23
Wickens E Albares1018United Kingdom2026-09-15
Octavia I Wieser1019France2026-09-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna K InouyeUnited KingdomBernardo Dominic PROPOSAL
Tony F VenereRussiaIoni Bowcher RENEWAL
Aika T MaletGermanyIvan Magalhaes RENEWAL
Jones E WaycottFranceAsiya Javayant NEGOTIATION
Cody U FigeroaUnited KingdomStephen Shaw RENEWAL
Claire A SlusarskiJapanAnna Fali PROPOSAL
Leon T MacleadJapanXuxue Feng PROPOSAL
Silvio N VenereRussiaStephen Shaw NEGOTIATION
Cody R NickaJapanBernardo Dominic PROPOSAL
Wickens I FlosiCanadaStephen Shaw QUALIFIED
Arvin D DilliardFranceAsiya Javayant UNQUALIFIED
Ricardo E ShinkoIndiaOnyama Limba NEGOTIATION
Salvatore J AlbaresIndiaIoni Bowcher UNQUALIFIED
Rodrigues D FlosiArgentinaAmy Elsner NEW
Costa V FollerArgentinaElwin Sharvill NEW
Kaitlin V SaylorsArgentinaAsiya Javayant NEW
Arvin N MaletAustraliaIoni Bowcher NEGOTIATION
Costa A TollnerCanadaElwin Sharvill UNQUALIFIED
Leja S StensethIndiaIoni Bowcher QUALIFIED
Greenwood O VocelkaCanadaBernardo Dominic NEW
Silvio E FlosiBrazilOnyama Limba UNQUALIFIED
Jennifer D OstroskyIndiaXuxue Feng NEGOTIATION
Aditya N BriddickUnited KingdomXuxue Feng RENEWAL
Aika L OldroydFranceIoni Bowcher NEGOTIATION
Octavia S SaylorsBrazilAmy Elsner RENEWAL
Morrow H SaylorsCanadaStephen Shaw NEGOTIATION
Adams C AlbaresUnited KingdomElwin Sharvill NEW
Jefferson H RulapaughItalyAsiya Javayant NEW
Morrow S GauchoJapanAsiya Javayant PROPOSAL
Stacey N NickaBrazilStephen Shaw QUALIFIED
Wickens D GillianRussiaAmy Elsner NEW
Rodrigues O NestleSpainIvan Magalhaes UNQUALIFIED
Kaitlin Q PerinCanadaStephen Shaw NEGOTIATION
Misaki Q GarufiFranceStephen Shaw UNQUALIFIED
Aditya M DilliardIndiaAnna Fali NEW
David Z MaletCanadaBernardo Dominic QUALIFIED
Aruna S RoysterRussiaIvan Magalhaes NEW
Munro M GauchoFranceElwin Sharvill NEGOTIATION
Murillo B FollerJapanOnyama Limba RENEWAL
Adams Y DoeBrazilElwin Sharvill PROPOSAL

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