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 D MaletUnited KingdomOnyama Limba RENEWAL
Antonio G WhobreyCanadaAmy Elsner PROPOSAL
Cody E MaletUnited KingdomIvan Magalhaes QUALIFIED
Ivar L MaletBrazilStephen Shaw NEW
Aika Y SaylorsSpainElwin Sharvill PROPOSAL
Jeanfrancois T RoysterRussiaOnyama Limba UNQUALIFIED
Ashley M DoeItalyElwin Sharvill NEGOTIATION
Ashley S MaletCanadaIvan Magalhaes PROPOSAL
Juan L TollnerBrazilXuxue Feng QUALIFIED
Darci Y OldroydArgentinaIvan Magalhaes QUALIFIED
Salvatore Q FlosiArgentinaOnyama Limba QUALIFIED
Maisha J DoeSpainAnna Fali NEGOTIATION
Julie T SlusarskiJapanXuxue Feng NEGOTIATION
Leon F MacleadItalyAsiya Javayant NEW
Maria A PoquetteIndiaElwin Sharvill RENEWAL
Jefferson V FollerCanadaAsiya Javayant RENEWAL
Ricardo Z BologniaItalyAsiya Javayant UNQUALIFIED
Salvatore W ShinkoRussiaElwin Sharvill QUALIFIED
Juan C RoysterBrazilIvan Magalhaes UNQUALIFIED
Claire D VocelkaAustraliaAsiya Javayant QUALIFIED
Aika H NickaIndiaIvan Magalhaes NEW
Stacey J StockhamFranceAsiya Javayant PROPOSAL
Juan Z DoeJapanOnyama Limba UNQUALIFIED
Deepesh N TollnerBrazilXuxue Feng UNQUALIFIED
Clifford U NestleItalyIoni Bowcher QUALIFIED
Mayumi Y StensethCanadaXuxue Feng RENEWAL
Aruna S WieserUnited KingdomElwin Sharvill PROPOSAL
Julie O OldroydBrazilXuxue Feng NEGOTIATION
Kadeem L MorascaUnited KingdomAmy Elsner NEW
James J GlickBrazilIoni Bowcher PROPOSAL
Maisha J InouyeRussiaIoni Bowcher NEW
Costa F GlickRussiaAsiya Javayant NEW
Johnson J ButtJapanAsiya Javayant RENEWAL
Aruna J DilliardUnited KingdomStephen Shaw UNQUALIFIED
Claire C NickaFranceIoni Bowcher NEW
Kaitlin V MarrierAustraliaIoni Bowcher UNQUALIFIED
Jeanfrancois R TollnerBrazilStephen Shaw QUALIFIED
Aruna W VocelkaJapanOnyama Limba QUALIFIED
Cody W PaprockiBrazilStephen Shaw RENEWAL
Leon V VocelkaUnited KingdomAsiya Javayant QUALIFIED
Clifford V CampainGermanyXuxue Feng NEGOTIATION
James S GarufiUnited KingdomStephen Shaw NEGOTIATION
Emily E StockhamJapanStephen Shaw RENEWAL
Salvatore Q DarakjyFranceBernardo Dominic NEGOTIATION
Leja G InouyeRussiaElwin Sharvill UNQUALIFIED
Clifford E BologniaIndiaIoni Bowcher UNQUALIFIED
Jefferson A MacleadArgentinaIoni Bowcher RENEWAL
Leon W OldroydAustraliaAnna Fali PROPOSAL
Alejandro E ChuiIndiaElwin Sharvill QUALIFIED
Juan N IturbideCanadaAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Cody A CaudyArgentinaIvan Magalhaes UNQUALIFIED
Morrow K CaldareraGermanyXuxue Feng NEGOTIATION
Nicolas A SchemmerCanadaBernardo Dominic NEW
Alejandro S TollnerUnited KingdomIvan Magalhaes NEW
Aika B IturbideSpainElwin Sharvill NEGOTIATION
Aika V ShinkoIndiaStephen Shaw NEGOTIATION
James V StensethGermanyIvan Magalhaes UNQUALIFIED
Misaki J RoysterSpainBernardo Dominic RENEWAL
Murillo B StensethUnited KingdomAmy Elsner NEW
Kaitlin P ButtItalyXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo X SergiFrance2026-09-12Commercial Press RENEWAL93Onyama Limba
1001Salvatore K KuskoItaly2026-09-08Feltz Printing Service NEGOTIATION88Anna Fali
1002Jefferson B OldroydBrazil2026-09-09Feltz Printing Service RENEWAL64Stephen Shaw
1003Maisha T RoysterFrance2026-10-03Commercial Press QUALIFIED34Anna Fali
1004Claire A MacleadUnited Kingdom2026-09-13Dorl, James J Esq PROPOSAL87Amy Elsner
1005Misaki I SaylorsAustralia2026-09-19Chemel, James L Cpa UNQUALIFIED85Stephen Shaw
1006Deepesh Q RoysterFrance2026-09-22Chanay, Jeffrey A Esq RENEWAL92Ivan Magalhaes
1007Jefferson A BologniaItaly2026-09-26Feiner Bros RENEWAL4Amy Elsner
1008Johnson I BriddickCanada2026-09-15Benton, John B Jr NEGOTIATION83Stephen Shaw
1009Aika F AlbaresAustralia2026-09-07Morlong Associates NEW38Asiya Javayant
1010Juan S MacleadJapan2026-09-10Benton, John B Jr NEW63Ioni Bowcher
1011Claire G RoysterUnited Kingdom2026-09-13Rangoni Of Florence NEW37Elwin Sharvill
1012Ivar E VocelkaRussia2026-09-29Feiner Bros PROPOSAL27Ioni Bowcher
1013Faith H NickaUnited Kingdom2026-10-03Feltz Printing Service QUALIFIED50Onyama Limba
1014Aditya W AmigonGermany2026-09-23Rousseaux, Michael Esq NEGOTIATION25Bernardo Dominic
1015Isabel F SlusarskiJapan2026-10-04Dorl, James J Esq QUALIFIED57Asiya Javayant
1016Arvin B MaletBrazil2026-09-24Chapman, Ross E Esq NEW0Bernardo Dominic
1017Arvin K WaycottAustralia2026-09-10Rousseaux, Michael Esq NEGOTIATION85Anna Fali
1018Jennifer T PerinFrance2026-09-27Rangoni Of Florence PROPOSAL15Stephen Shaw
1019Jefferson E GauchoArgentina2026-09-30Feltz Printing Service QUALIFIED98Stephen Shaw
1020Jefferson F GarufiArgentina2026-09-10Rangoni Of Florence UNQUALIFIED34Bernardo Dominic
1021Jennifer K MorascaIndia2026-09-07Feiner Bros UNQUALIFIED12Stephen Shaw
1022Julie O WieserGermany2026-09-22Printing Dimensions NEGOTIATION9Asiya Javayant
1023Jefferson V ButtGermany2026-09-06Feiner Bros PROPOSAL42Onyama Limba
1024Ricardo U IturbideJapan2026-10-04Chanay, Jeffrey A Esq QUALIFIED58Anna Fali
1025Salvatore Q SaylorsIndia2026-10-04King, Christopher A Esq QUALIFIED99Amy Elsner
1026Mujtaba S RutaArgentina2026-09-17King, Christopher A Esq RENEWAL49Asiya Javayant
1027Smith P OldroydUnited Kingdom2026-09-06Chanay, Jeffrey A Esq NEGOTIATION54Asiya Javayant
1028Mujtaba C VenereItaly2026-09-19Feiner Bros UNQUALIFIED18Asiya Javayant
1029Jennifer L RulapaughSpain2026-09-18Dorl, James J Esq PROPOSAL93Stephen Shaw
1030Sinclair R ChuiGermany2026-10-03Printing Dimensions RENEWAL8Ioni Bowcher
1031Johnson H WaycottRussia2026-09-18Buckley Miller Wright QUALIFIED11Stephen Shaw
1032Kadeem Z SaylorsItaly2026-09-20King, Christopher A Esq NEW34Anna Fali
1033Ashley O GauchoCanada2026-09-14Printing Dimensions PROPOSAL32Anna Fali
1034Alejandro M FollerJapan2026-09-07Chapman, Ross E Esq RENEWAL82Ioni Bowcher
1035Jones Z BowleyIndia2026-10-03Truhlar And Truhlar Attys UNQUALIFIED45Anna Fali
1036Sinclair N MarrierJapan2026-09-08Printing Dimensions RENEWAL95Ivan Magalhaes
1037Antonio V NestleUnited Kingdom2026-09-07Rangoni Of Florence QUALIFIED23Amy Elsner
1038Ricardo U SaylorsUnited Kingdom2026-09-17King, Christopher A Esq RENEWAL53Ivan Magalhaes
1039Jeanfrancois N AlbaresItaly2026-09-09Rousseaux, Michael Esq NEW83Ioni Bowcher
1040Kadeem F BowleyFrance2026-09-08Buckley Miller Wright NEGOTIATION10Xuxue Feng
1041Salvatore A VenereBrazil2026-09-09Chapman, Ross E Esq QUALIFIED25Ivan Magalhaes
1042Juan G BologniaItaly2026-09-09Printing Dimensions QUALIFIED63Bernardo Dominic
1043Isabel H GlickSpain2026-09-15Dorl, James J Esq NEGOTIATION65Amy Elsner
1044Smith D AmigonJapan2026-09-15Chapman, Ross E Esq QUALIFIED60Bernardo Dominic
1045Jeanfrancois P VenereCanada2026-09-28Feltz Printing Service QUALIFIED98Stephen Shaw
1046Julie O FerenczIndia2026-09-28Printing Dimensions QUALIFIED12Ioni Bowcher
1047Aditya X OldroydArgentina2026-09-16Morlong Associates PROPOSAL44Elwin Sharvill
1048Jennifer N StockhamIndia2026-09-26Printing Dimensions NEGOTIATION11Amy Elsner
1049Alejandro Z BowleyCanada2026-09-11Buckley Miller Wright NEW10Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Mayumi D WieserArgentinaAsiya Javayant UNQUALIFIED
Nicolas I RoysterArgentinaOnyama Limba NEW
Arvin Z GillianRussiaXuxue Feng RENEWAL
Mayumi E WieserSpainIoni Bowcher RENEWAL
Darci Y FlosiFranceOnyama Limba UNQUALIFIED
Jeanfrancois I PerinFranceIoni Bowcher NEW
Deepesh F FollerJapanAmy Elsner NEW
Mujtaba U NickaJapanIoni Bowcher NEGOTIATION
Antonio A NestleJapanIoni Bowcher RENEWAL
Octavia X MacleadGermanyIoni Bowcher QUALIFIED
Maisha N NickaJapanBernardo Dominic QUALIFIED
Faith T NickaBrazilAmy Elsner QUALIFIED
Julie D CaldareraAustraliaOnyama Limba QUALIFIED
Izzy S SlusarskiItalyIoni Bowcher NEGOTIATION
Aditya F MarrierItalyElwin Sharvill QUALIFIED
Tony F FigeroaFranceElwin Sharvill NEGOTIATION
Stacey W GauchoUnited KingdomBernardo Dominic NEGOTIATION
Wickens E PerinRussiaOnyama Limba PROPOSAL
Aditya J MacleadItalyAnna Fali UNQUALIFIED
Tony W WhobreyBrazilAmy Elsner RENEWAL
Maisha P BriddickSpainAmy Elsner RENEWAL
Maisha R DoeIndiaStephen Shaw RENEWAL
Izzy N BologniaRussiaElwin Sharvill PROPOSAL
Tony O CampainJapanStephen Shaw QUALIFIED
David E VocelkaArgentinaOnyama Limba NEW
Murillo M InouyeBrazilBernardo Dominic RENEWAL
Izzy S GillianJapanStephen Shaw PROPOSAL
Salvatore S VenereArgentinaXuxue Feng NEGOTIATION
James Q AlbaresRussiaIoni Bowcher PROPOSAL
Aika G ChuiAustraliaIvan Magalhaes NEGOTIATION
Darci E GlickCanadaXuxue Feng QUALIFIED
Greenwood C CaudyAustraliaAnna Fali PROPOSAL
Alejandro P SergiUnited KingdomElwin Sharvill QUALIFIED
Mujtaba K CaudyRussiaAnna Fali PROPOSAL
Isabel Y CaldareraRussiaOnyama Limba PROPOSAL
Faith E DoeUnited KingdomStephen Shaw NEGOTIATION
Clifford D WhobreyFranceAmy Elsner UNQUALIFIED
Smith Y MaletFranceXuxue Feng RENEWAL
Alejandro D DoeUnited KingdomElwin Sharvill NEGOTIATION
Kaitlin V RoysterFranceBernardo Dominic RENEWAL
Smith P AmigonCanadaXuxue Feng NEW
Mujtaba A AmigonJapanIoni Bowcher RENEWAL
Juan L BologniaCanadaOnyama Limba NEGOTIATION
Mujtaba N PerinGermanyXuxue Feng RENEWAL
Mujtaba W VenereBrazilElwin Sharvill UNQUALIFIED
Ashley Q AlbaresAustraliaBernardo Dominic UNQUALIFIED
Emily L CaudyArgentinaIvan Magalhaes UNQUALIFIED
Mujtaba H KolmetzGermanyOnyama Limba UNQUALIFIED
Julie D GarufiAustraliaAnna Fali PROPOSAL
Aruna E InouyeSpainIvan Magalhaes RENEWAL
Frozen Columns
Name
Kadeem G Kolmetz
Francesco U Gaucho
Murillo T Venere
Sinclair J Iturbide
Faith F Stockham
Murillo X Perin
Ivar F Iturbide
Greenwood P Rulapaugh
Jennifer I Saylors
Jefferson R Bolognia
Jefferson C Poquette
Silvio L Whobrey
Greenwood M Foller
David F Glick
Aditya Y Iturbide
Francesco L Poquette
Maisha D Perin
Faith Y Ruta
Adams P Amigon
Murillo C Stenseth
David E Dilliard
James V Slusarski
Leja F Kolmetz
Costa X Oldroyd
Costa Y Bowley
Wickens E Whobrey
Mayumi F Caudy
Ivar F Perin
Morrow O Kolmetz
Cody B Kusko
Jeanfrancois U Caudy
Smith Y Maclead
Aika N Glick
Costa L Poquette
Leja Z Malet
Antonio S Garufi
Morrow T Marrier
Murillo S Doe
Jeanfrancois I Caldarera
Maisha G Campain
Claire U Ruta
Octavia T Nestle
Faith U Ferencz
Mayumi X Campain
Tony N Butt
Julie E Amigon
Faith Q Sergi
Greenwood R Rim
Arvin D Sergi
Maria K Paprocki
IdCountryDate
1000Germany2026-10-01
1001Brazil2026-10-01
1002Russia2026-09-22
1003Germany2026-09-22
1004Japan2026-09-06
1005United Kingdom2026-10-03
1006United Kingdom2026-09-16
1007Japan2026-09-26
1008Brazil2026-09-30
1009France2026-09-20
1010Canada2026-09-16
1011Italy2026-09-28
1012Argentina2026-09-25
1013Japan2026-09-10
1014Russia2026-09-27
1015Canada2026-09-24
1016France2026-09-20
1017Italy2026-09-17
1018Canada2026-09-17
1019Spain2026-09-12
1020Australia2026-09-07
1021Russia2026-09-14
1022India2026-09-25
1023Canada2026-09-23
1024Italy2026-09-06
1025France2026-10-01
1026Argentina2026-09-17
1027France2026-09-30
1028Italy2026-09-13
1029Italy2026-09-10
1030Brazil2026-09-17
1031Brazil2026-09-30
1032France2026-09-15
1033Germany2026-09-08
1034Russia2026-09-08
1035India2026-09-06
1036United Kingdom2026-09-18
1037Russia2026-10-02
1038Russia2026-09-09
1039United Kingdom2026-09-29
1040Italy2026-09-19
1041India2026-09-16
1042Russia2026-09-25
1043United Kingdom2026-09-19
1044Brazil2026-09-19
1045France2026-09-20
1046France2026-09-21
1047France2026-10-01
1048Canada2026-09-10
1049Japan2026-09-27

On-Demand Data

NameIdCountryDate
Jeanfrancois W Whobrey1000Japan2026-09-12
Munro U Whobrey1001Argentina2026-09-08
Kaitlin Z Bowley1002Italy2026-09-30
Silvio N Oldroyd1003Japan2026-09-21
Francesco X Gillian1004Spain2026-09-20
Adams H Foller1005France2026-09-21
Tony B Stenseth1006Canada2026-10-03
Clifford R Saylors1007France2026-09-08
Cody C Shinko1008United Kingdom2026-09-17
Costa Q Kusko1009Canada2026-09-07
Aruna P Caldarera1010Argentina2026-09-23
Leon Y Malet1011Australia2026-09-21
Jefferson F Venere1012Italy2026-09-20
Kadeem B Dilliard1013Russia2026-09-06
Clifford O Malet1014Italy2026-10-01
Nicolas D Nicka1015India2026-09-08
Silvio U Vocelka1016United Kingdom2026-09-30
Aika N Paprocki1017Australia2026-09-13
Johnson M Briddick1018Australia2026-09-22
Maisha D Slusarski1019Germany2026-09-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson A FlosiJapanXuxue Feng QUALIFIED
Costa M RimFranceAmy Elsner NEW
Izzy L NestleIndiaAnna Fali RENEWAL
Alejandro S FerenczItalyAnna Fali QUALIFIED
Emily M MorascaIndiaIvan Magalhaes NEGOTIATION
Smith B PerinFranceAnna Fali PROPOSAL
Nicolas V GillianFranceAnna Fali RENEWAL
Sinclair F FerenczJapanAsiya Javayant UNQUALIFIED
Mayumi M InouyeAustraliaAsiya Javayant RENEWAL
Sinclair G MorascaSpainElwin Sharvill RENEWAL
Alejandro L SchemmerCanadaElwin Sharvill QUALIFIED
Johnson J PoquetteAustraliaIvan Magalhaes QUALIFIED
Leja C BologniaArgentinaAsiya Javayant QUALIFIED
Ivar H NestleIndiaAnna Fali NEGOTIATION
Darci A RulapaughItalyBernardo Dominic RENEWAL
Emily V MarrierSpainAsiya Javayant RENEWAL
Faith V RulapaughRussiaXuxue Feng UNQUALIFIED
Faith P RutaCanadaStephen Shaw NEW
Juan X PerinJapanOnyama Limba UNQUALIFIED
Costa W RimUnited KingdomIoni Bowcher PROPOSAL
Aika H AmigonUnited KingdomOnyama Limba PROPOSAL
Tony Q MorascaArgentinaBernardo Dominic UNQUALIFIED
Julie R WhobreyBrazilIoni Bowcher PROPOSAL
Leon Y AmigonJapanIvan Magalhaes PROPOSAL
Isabel S SchemmerJapanStephen Shaw NEW
Juan M BriddickFranceAsiya Javayant QUALIFIED
Chavez S FlosiCanadaOnyama Limba NEW
Faith T KolmetzFranceIoni Bowcher NEW
Julie B WaycottItalyAnna Fali UNQUALIFIED
Aditya M BriddickSpainElwin Sharvill QUALIFIED
Salvatore V SchemmerArgentinaAmy Elsner QUALIFIED
Cody P MorascaIndiaIoni Bowcher NEW
Deepesh T PaprockiSpainAnna Fali UNQUALIFIED
Jones N StensethAustraliaIvan Magalhaes NEW
Jennifer R VocelkaCanadaXuxue Feng NEGOTIATION
Silvio M AlbaresFranceAsiya Javayant UNQUALIFIED
Maisha K WaycottBrazilAmy Elsner RENEWAL
Faith K SergiFranceStephen Shaw NEW
Octavia I KuskoFranceIvan Magalhaes NEW
Johnson N NickaJapanStephen Shaw 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>