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
Ashley X BriddickUnited KingdomAsiya Javayant NEGOTIATION
Ashley N InouyeUnited KingdomAnna Fali UNQUALIFIED
Octavia J SaylorsFranceXuxue Feng NEGOTIATION
Stacey D CaudyIndiaElwin Sharvill PROPOSAL
Darci W NickaSpainIvan Magalhaes QUALIFIED
Wickens H NickaGermanyBernardo Dominic RENEWAL
Deepesh B PaprockiCanadaAsiya Javayant NEGOTIATION
Isabel B ShinkoArgentinaStephen Shaw PROPOSAL
Nicolas S PerinCanadaXuxue Feng NEW
Chavez C CaldareraItalyElwin Sharvill NEGOTIATION
Leja I MarrierJapanAnna Fali UNQUALIFIED
Octavia I InouyeAustraliaXuxue Feng RENEWAL
Adams P RimArgentinaIoni Bowcher UNQUALIFIED
Cody F ButtGermanyElwin Sharvill QUALIFIED
Murillo Q RimRussiaOnyama Limba RENEWAL
Maisha C RoysterArgentinaAsiya Javayant NEGOTIATION
Francesco A InouyeGermanyStephen Shaw UNQUALIFIED
Ashley L TollnerCanadaIoni Bowcher RENEWAL
Chavez M WaycottGermanyElwin Sharvill NEW
Faith M WieserFranceBernardo Dominic NEGOTIATION
Nicolas D KuskoSpainIoni Bowcher NEW
Aditya T WhobreyRussiaIoni Bowcher NEGOTIATION
Maria S MaletUnited KingdomAsiya Javayant RENEWAL
Izzy F GauchoItalyIvan Magalhaes NEW
Aika G BowleyJapanBernardo Dominic NEGOTIATION
Ashley U CaudySpainAmy Elsner NEGOTIATION
Silvio L MorascaUnited KingdomIoni Bowcher PROPOSAL
Emily T InouyeIndiaIvan Magalhaes NEW
Sinclair Z WhobreyIndiaBernardo Dominic UNQUALIFIED
Ricardo I RutaBrazilElwin Sharvill QUALIFIED
Costa D MacleadItalyAnna Fali NEGOTIATION
Jones F WaycottFranceIoni Bowcher UNQUALIFIED
Adams N WhobreyAustraliaElwin Sharvill UNQUALIFIED
Stacey F AlbaresJapanBernardo Dominic QUALIFIED
Izzy M SlusarskiGermanyStephen Shaw RENEWAL
Mayumi N SchemmerRussiaAmy Elsner QUALIFIED
Smith W RimGermanyIoni Bowcher RENEWAL
Isabel J CampainItalyAmy Elsner RENEWAL
Aruna C CaldareraSpainIoni Bowcher RENEWAL
Faith V RimIndiaAnna Fali NEGOTIATION
Ivar E StockhamRussiaXuxue Feng NEW
Smith L GlickAustraliaBernardo Dominic RENEWAL
Izzy P BowleyArgentinaStephen Shaw RENEWAL
Darci Y RulapaughCanadaIoni Bowcher QUALIFIED
Murillo I FigeroaArgentinaXuxue Feng NEGOTIATION
Maria P FlosiBrazilAmy Elsner QUALIFIED
Nicolas B VenereSpainXuxue Feng RENEWAL
Aika J CaldareraIndiaStephen Shaw UNQUALIFIED
Greenwood G CaudySpainXuxue Feng QUALIFIED
Ricardo N RulapaughRussiaAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon K NickaFranceElwin Sharvill NEGOTIATION
Francesco X InouyeItalyOnyama Limba RENEWAL
Tony N DilliardArgentinaStephen Shaw UNQUALIFIED
Kaitlin M StockhamAustraliaAmy Elsner NEW
Juan J DoeIndiaAnna Fali NEGOTIATION
Faith Y AmigonBrazilAsiya Javayant UNQUALIFIED
Francesco O InouyeGermanyIvan Magalhaes UNQUALIFIED
Stacey M DoeUnited KingdomStephen Shaw PROPOSAL
James N CampainAustraliaIoni Bowcher QUALIFIED
Ivar M InouyeRussiaBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin U FlosiGermany2026-10-27Printing Dimensions UNQUALIFIED13Asiya Javayant
1001Isabel T TollnerIndia2026-10-27Benton, John B Jr NEGOTIATION25Ioni Bowcher
1002Deepesh Y NestleUnited Kingdom2026-10-13Buckley Miller Wright PROPOSAL93Ivan Magalhaes
1003Sinclair C DilliardArgentina2026-11-03Commercial Press NEGOTIATION39Xuxue Feng
1004Darci L FigeroaBrazil2026-10-28Benton, John B Jr PROPOSAL86Onyama Limba
1005Ricardo I DarakjyIndia2026-10-20Rangoni Of Florence UNQUALIFIED50Anna Fali
1006Ivar H PerinItaly2026-10-17Commercial Press RENEWAL1Asiya Javayant
1007Deepesh O SaylorsSpain2026-10-30Buckley Miller Wright NEGOTIATION30Bernardo Dominic
1008Octavia J KolmetzJapan2026-10-31Feltz Printing Service QUALIFIED89Onyama Limba
1009Wickens W NickaItaly2026-10-16King, Christopher A Esq NEW58Anna Fali
1010Tony N AlbaresRussia2026-10-15King, Christopher A Esq UNQUALIFIED28Asiya Javayant
1011Greenwood G InouyeArgentina2026-11-09Chanay, Jeffrey A Esq UNQUALIFIED38Anna Fali
1012Emily R StockhamCanada2026-10-14Chapman, Ross E Esq NEGOTIATION61Asiya Javayant
1013Tony H CaldareraBrazil2026-10-20Feltz Printing Service PROPOSAL17Bernardo Dominic
1014Ashley X BowleyJapan2026-10-27Buckley Miller Wright UNQUALIFIED51Ivan Magalhaes
1015Johnson V NestleUnited Kingdom2026-10-17Morlong Associates NEW76Onyama Limba
1016Johnson R BriddickIndia2026-10-23Chapman, Ross E Esq NEW34Xuxue Feng
1017Octavia E GlickItaly2026-11-07Rousseaux, Michael Esq NEGOTIATION95Amy Elsner
1018Maria A NickaCanada2026-10-17King, Christopher A Esq NEW51Bernardo Dominic
1019Mujtaba Z ButtSpain2026-11-05Chemel, James L Cpa PROPOSAL58Bernardo Dominic
1020Misaki V KuskoItaly2026-11-07Printing Dimensions NEW58Bernardo Dominic
1021Greenwood A WhobreyArgentina2026-10-25Feiner Bros UNQUALIFIED5Amy Elsner
1022Mujtaba S DoeFrance2026-10-30Rangoni Of Florence QUALIFIED26Asiya Javayant
1023Deepesh L WaycottBrazil2026-11-11Chanay, Jeffrey A Esq QUALIFIED97Onyama Limba
1024Francesco Z FerenczFrance2026-10-13Buckley Miller Wright QUALIFIED77Ioni Bowcher
1025Costa X RoysterUnited Kingdom2026-11-05Morlong Associates NEW67Bernardo Dominic
1026Jeanfrancois H BriddickGermany2026-11-07Rousseaux, Michael Esq RENEWAL99Stephen Shaw
1027Leja A GauchoSpain2026-10-23Morlong Associates QUALIFIED94Elwin Sharvill
1028David E ShinkoSpain2026-10-26Morlong Associates QUALIFIED74Elwin Sharvill
1029Alejandro H FollerJapan2026-10-24Rousseaux, Michael Esq UNQUALIFIED63Anna Fali
1030Rodrigues G FlosiUnited Kingdom2026-10-14Benton, John B Jr NEW34Stephen Shaw
1031Sinclair N CaudyRussia2026-11-03Morlong Associates NEW90Bernardo Dominic
1032Rodrigues Q CampainIndia2026-10-15Benton, John B Jr PROPOSAL3Elwin Sharvill
1033Jeanfrancois G KuskoRussia2026-10-28Rousseaux, Michael Esq PROPOSAL60Ioni Bowcher
1034Jones W PoquetteGermany2026-10-25Dorl, James J Esq RENEWAL99Stephen Shaw
1035Rodrigues A KolmetzJapan2026-10-19Rangoni Of Florence NEW5Anna Fali
1036Silvio E PaprockiAustralia2026-11-10Chapman, Ross E Esq RENEWAL74Amy Elsner
1037Jones D GarufiIndia2026-10-18Truhlar And Truhlar Attys NEGOTIATION29Stephen Shaw
1038Arvin R WhobreyRussia2026-10-29Chapman, Ross E Esq NEGOTIATION96Ivan Magalhaes
1039Morrow R RutaItaly2026-10-31Chemel, James L Cpa NEGOTIATION91Asiya Javayant
1040Julie D DarakjyArgentina2026-11-03Benton, John B Jr PROPOSAL99Asiya Javayant
1041Maisha Q OstroskyUnited Kingdom2026-10-31Rousseaux, Michael Esq NEGOTIATION23Amy Elsner
1042Clifford L MarrierSpain2026-10-14Feltz Printing Service NEW43Stephen Shaw
1043Salvatore J PaprockiGermany2026-10-24Commercial Press QUALIFIED41Ivan Magalhaes
1044Ricardo B FollerUnited Kingdom2026-11-09Morlong Associates UNQUALIFIED43Ioni Bowcher
1045Mayumi I ChuiGermany2026-11-04Morlong Associates UNQUALIFIED63Stephen Shaw
1046Silvio L KolmetzGermany2026-10-18Chapman, Ross E Esq PROPOSAL33Stephen Shaw
1047Leon C SchemmerUnited Kingdom2026-11-02Buckley Miller Wright UNQUALIFIED20Ivan Magalhaes
1048Cody M DilliardUnited Kingdom2026-11-10Feiner Bros UNQUALIFIED69Bernardo Dominic
1049Tony P VocelkaBrazil2026-10-30Commercial Press PROPOSAL16Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Deepesh P ChuiSpainBernardo Dominic QUALIFIED
Faith N ShinkoFranceAsiya Javayant NEW
Greenwood O VenereFranceAnna Fali NEW
Maria B VenereSpainXuxue Feng UNQUALIFIED
Ricardo K AlbaresItalyAmy Elsner NEW
Arvin I OldroydRussiaIoni Bowcher UNQUALIFIED
Chavez C IturbideArgentinaOnyama Limba QUALIFIED
Deepesh B MorascaUnited KingdomXuxue Feng NEW
Clifford Z WaycottSpainIvan Magalhaes NEGOTIATION
Claire D GlickRussiaXuxue Feng NEGOTIATION
Jones K FerenczSpainBernardo Dominic RENEWAL
Misaki M ChuiJapanIoni Bowcher NEGOTIATION
Mayumi N BriddickIndiaAnna Fali QUALIFIED
Kadeem S FollerBrazilAnna Fali QUALIFIED
Leon S VocelkaCanadaXuxue Feng RENEWAL
Salvatore R MacleadJapanBernardo Dominic QUALIFIED
David R RimCanadaStephen Shaw NEW
Juan W RoysterUnited KingdomElwin Sharvill QUALIFIED
Mujtaba F FollerGermanyAmy Elsner QUALIFIED
Chavez Z TollnerRussiaBernardo Dominic NEW
Costa W StensethUnited KingdomBernardo Dominic RENEWAL
Juan S FigeroaGermanyAmy Elsner UNQUALIFIED
Chavez U CaudyJapanXuxue Feng RENEWAL
Izzy B FerenczArgentinaAsiya Javayant PROPOSAL
Greenwood K VocelkaFranceXuxue Feng PROPOSAL
Isabel T BowleyIndiaAsiya Javayant UNQUALIFIED
Arvin H SaylorsJapanElwin Sharvill NEW
Maisha B WaycottItalyIvan Magalhaes RENEWAL
Francesco D FerenczIndiaOnyama Limba NEW
Silvio Y InouyeRussiaXuxue Feng NEGOTIATION
Greenwood D OstroskyGermanyXuxue Feng RENEWAL
Smith M TollnerBrazilAsiya Javayant NEGOTIATION
Jeanfrancois I GarufiSpainBernardo Dominic NEW
Kadeem V FollerSpainIoni Bowcher QUALIFIED
Julie Y SergiIndiaIvan Magalhaes UNQUALIFIED
Juan E VocelkaArgentinaElwin Sharvill PROPOSAL
Darci N OldroydCanadaElwin Sharvill PROPOSAL
Jeanfrancois W PerinJapanBernardo Dominic QUALIFIED
Kadeem A SergiRussiaElwin Sharvill NEGOTIATION
Silvio M MacleadJapanBernardo Dominic UNQUALIFIED
James J FlosiBrazilIvan Magalhaes RENEWAL
Murillo K CampainJapanAmy Elsner PROPOSAL
Costa E NickaSpainStephen Shaw NEGOTIATION
Salvatore K ChuiAustraliaXuxue Feng NEGOTIATION
Mayumi E RulapaughGermanyStephen Shaw NEW
Murillo J PaprockiRussiaAsiya Javayant QUALIFIED
Tony W SaylorsCanadaAsiya Javayant QUALIFIED
Leon I BowleyAustraliaXuxue Feng NEGOTIATION
Costa C RulapaughJapanAmy Elsner UNQUALIFIED
Francesco Y WieserAustraliaElwin Sharvill PROPOSAL
Frozen Columns
Name
Smith R Flosi
Adams C Ruta
Maisha B Paprocki
Jefferson T Paprocki
Mujtaba Y Figeroa
Johnson L Rim
Smith V Royster
Murillo U Oldroyd
Murillo T Sergi
Greenwood L Wieser
Aditya R Royster
Aditya N Perin
Morrow X Kusko
David D Rulapaugh
Antonio Y Paprocki
Ashley U Ruta
Izzy R Royster
Adams W Caldarera
Costa U Albares
Aruna H Stockham
Alejandro T Marrier
Leon A Schemmer
Stacey B Kusko
Nicolas R Stockham
Aika E Nestle
Rodrigues G Figeroa
Johnson P Kolmetz
Greenwood V Caudy
Kadeem U Rim
Kaitlin U Kusko
Smith M Paprocki
Ashley W Nestle
James Q Campain
Misaki A Gaucho
Kaitlin G Dilliard
Tony D Darakjy
Izzy I Wieser
Alejandro T Waycott
Stacey X Kusko
Rodrigues N Whobrey
Leon U Caudy
Smith O Figeroa
Jennifer X Slusarski
Juan E Whobrey
Chavez F Campain
Chavez Z Figeroa
David H Stockham
Kadeem D Slusarski
Maisha B Doe
Rodrigues T Paprocki
IdCountryDate
1000Japan2026-10-24
1001France2026-10-13
1002Japan2026-10-24
1003Italy2026-11-02
1004Canada2026-11-05
1005Spain2026-10-13
1006Argentina2026-10-18
1007United Kingdom2026-10-27
1008Brazil2026-10-25
1009Japan2026-10-13
1010Canada2026-10-28
1011Argentina2026-11-08
1012Germany2026-11-09
1013India2026-10-16
1014Brazil2026-10-18
1015Russia2026-10-13
1016India2026-10-25
1017United Kingdom2026-10-30
1018India2026-10-27
1019India2026-10-26
1020Russia2026-10-21
1021United Kingdom2026-11-09
1022Brazil2026-11-10
1023Canada2026-11-08
1024Italy2026-10-31
1025Japan2026-10-27
1026France2026-10-23
1027Australia2026-11-02
1028Germany2026-10-31
1029Japan2026-10-23
1030Brazil2026-10-29
1031Russia2026-10-18
1032India2026-10-27
1033Russia2026-11-02
1034Argentina2026-10-20
1035Brazil2026-10-13
1036Russia2026-10-16
1037Germany2026-10-14
1038Brazil2026-11-10
1039United Kingdom2026-10-30
1040Brazil2026-10-28
1041Canada2026-10-14
1042Germany2026-10-28
1043Australia2026-11-09
1044Russia2026-10-27
1045Australia2026-10-28
1046India2026-10-31
1047Brazil2026-10-27
1048Spain2026-10-25
1049Brazil2026-10-29

On-Demand Data

NameIdCountryDate
Kaitlin F Inouye1000India2026-10-14
Ricardo V Glick1001Italy2026-10-18
Greenwood K Doe1002Italy2026-10-17
Clifford C Malet1003India2026-10-31
Julie X Caudy1004Italy2026-10-20
Adams V Schemmer1005Germany2026-10-29
Greenwood L Maclead1006France2026-11-04
Greenwood Z Nicka1007Italy2026-10-16
Smith L Flosi1008Russia2026-11-08
Cody K Kolmetz1009India2026-10-15
Chavez R Kusko1010Argentina2026-11-11
Mayumi U Schemmer1011Brazil2026-10-21
Julie C Figeroa1012France2026-11-11
Jennifer P Stenseth1013Italy2026-11-03
Adams W Iturbide1014Italy2026-10-26
Deepesh F Paprocki1015Argentina2026-11-10
Misaki C Nestle1016France2026-10-29
Chavez N Sergi1017Italy2026-10-19
Cody E Stockham1018United Kingdom2026-11-01
Aditya K Gaucho1019Germany2026-10-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio J WaycottJapanAsiya Javayant PROPOSAL
Clifford Q TollnerSpainIvan Magalhaes NEGOTIATION
Maria A DilliardRussiaBernardo Dominic QUALIFIED
Stacey L WhobreyFranceStephen Shaw NEGOTIATION
Kaitlin T StockhamAustraliaBernardo Dominic NEW
Mayumi L ChuiRussiaIvan Magalhaes NEGOTIATION
Octavia W IturbideIndiaStephen Shaw PROPOSAL
Leon C RoysterArgentinaIvan Magalhaes QUALIFIED
Kadeem L FigeroaAustraliaAsiya Javayant NEW
Johnson Y RutaCanadaIoni Bowcher RENEWAL
Maisha R ButtSpainAnna Fali QUALIFIED
Isabel S CaldareraBrazilStephen Shaw QUALIFIED
Nicolas I RoysterIndiaAnna Fali QUALIFIED
Arvin C BologniaAustraliaAsiya Javayant UNQUALIFIED
Rodrigues W VenereAustraliaAnna Fali PROPOSAL
Aditya V MarrierArgentinaBernardo Dominic NEGOTIATION
David Q FlosiJapanIoni Bowcher RENEWAL
Claire Y MorascaBrazilAmy Elsner PROPOSAL
Alejandro H RoysterFranceAnna Fali UNQUALIFIED
Arvin V BologniaBrazilBernardo Dominic RENEWAL
Sinclair C WhobreyUnited KingdomIoni Bowcher RENEWAL
Ricardo C VocelkaArgentinaOnyama Limba NEW
Leon R ButtGermanyAmy Elsner NEW
Ashley Y VocelkaAustraliaAsiya Javayant PROPOSAL
Kadeem Y SlusarskiFranceAnna Fali UNQUALIFIED
Ricardo K RimJapanXuxue Feng QUALIFIED
Wickens M BologniaCanadaOnyama Limba PROPOSAL
Maisha X WieserArgentinaBernardo Dominic NEGOTIATION
Deepesh C BriddickItalyXuxue Feng PROPOSAL
Cody Z MarrierAustraliaAsiya Javayant RENEWAL
Aika U BriddickFranceXuxue Feng PROPOSAL
Adams I SlusarskiCanadaXuxue Feng UNQUALIFIED
Stacey S NickaRussiaIvan Magalhaes UNQUALIFIED
Kaitlin V SchemmerGermanyBernardo Dominic QUALIFIED
David X SergiIndiaElwin Sharvill QUALIFIED
Kadeem J BriddickArgentinaBernardo Dominic RENEWAL
Jeanfrancois O GlickArgentinaElwin Sharvill PROPOSAL
Smith D NickaItalyBernardo Dominic NEW
Jefferson I WieserArgentinaAsiya Javayant UNQUALIFIED
James L CaldareraBrazilStephen Shaw NEGOTIATION

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