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
Nicolas N PerinIndiaStephen Shaw RENEWAL
Nicolas Z IturbideAustraliaAnna Fali UNQUALIFIED
Tony R MorascaRussiaIvan Magalhaes QUALIFIED
Kadeem K StockhamBrazilXuxue Feng RENEWAL
Francesco V PerinFranceOnyama Limba RENEWAL
Jones B RutaUnited KingdomXuxue Feng UNQUALIFIED
Chavez A ChuiAustraliaIvan Magalhaes RENEWAL
Aika C BologniaIndiaIoni Bowcher NEGOTIATION
Stacey R KolmetzIndiaAnna Fali UNQUALIFIED
Jennifer B KolmetzIndiaIoni Bowcher UNQUALIFIED
David J NickaJapanXuxue Feng QUALIFIED
Salvatore J MorascaItalyOnyama Limba UNQUALIFIED
Jennifer E StensethIndiaAnna Fali RENEWAL
Smith D OstroskyRussiaIoni Bowcher QUALIFIED
Mujtaba J SaylorsSpainElwin Sharvill NEW
Ivar V MarrierArgentinaAnna Fali UNQUALIFIED
Murillo F ButtAustraliaAsiya Javayant NEW
Arvin N WaycottIndiaBernardo Dominic NEW
Alejandro V BriddickIndiaBernardo Dominic NEGOTIATION
Sinclair J InouyeJapanXuxue Feng QUALIFIED
Nicolas I FerenczGermanyIvan Magalhaes QUALIFIED
Octavia R AlbaresArgentinaBernardo Dominic NEGOTIATION
Octavia B DoeAustraliaIoni Bowcher PROPOSAL
Emily U RimAustraliaAmy Elsner QUALIFIED
Aruna M BriddickGermanyAsiya Javayant RENEWAL
Salvatore I RoysterItalyStephen Shaw RENEWAL
Jefferson L FigeroaBrazilElwin Sharvill NEW
Misaki K VenereIndiaIoni Bowcher QUALIFIED
Tony C KolmetzRussiaIoni Bowcher RENEWAL
Jefferson B WaycottSpainXuxue Feng NEW
Jeanfrancois B MarrierRussiaAnna Fali PROPOSAL
Alejandro C IturbideItalyElwin Sharvill PROPOSAL
Darci S RutaArgentinaIvan Magalhaes UNQUALIFIED
Rodrigues D SergiGermanyAsiya Javayant PROPOSAL
Clifford Q NestleUnited KingdomXuxue Feng NEW
Francesco R NickaBrazilStephen Shaw RENEWAL
Misaki L OldroydGermanyBernardo Dominic NEW
Nicolas D PerinJapanIoni Bowcher RENEWAL
Silvio N MaletIndiaAnna Fali UNQUALIFIED
Clifford M FigeroaFranceIvan Magalhaes NEGOTIATION
Stacey E GlickRussiaAnna Fali QUALIFIED
Isabel Q ShinkoCanadaStephen Shaw PROPOSAL
Izzy Y CaudySpainAsiya Javayant RENEWAL
Arvin S OstroskyUnited KingdomOnyama Limba NEGOTIATION
Deepesh H ButtSpainStephen Shaw PROPOSAL
Izzy L RoysterBrazilStephen Shaw PROPOSAL
Stacey J WieserRussiaOnyama Limba NEGOTIATION
Ivar H MaletAustraliaAnna Fali RENEWAL
Maria O InouyeJapanBernardo Dominic NEGOTIATION
Costa Z OldroydUnited KingdomAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Maisha G ButtFranceAnna Fali UNQUALIFIED
Leon J RulapaughIndiaXuxue Feng UNQUALIFIED
Murillo N WaycottAustraliaIvan Magalhaes NEGOTIATION
Jeanfrancois Q DoeFranceBernardo Dominic NEGOTIATION
Juan D SergiGermanyElwin Sharvill RENEWAL
Alejandro Y CaudyItalyStephen Shaw UNQUALIFIED
Mujtaba L KolmetzAustraliaXuxue Feng NEGOTIATION
Wickens D KuskoArgentinaBernardo Dominic NEGOTIATION
Jones V MorascaCanadaAmy Elsner NEGOTIATION
Chavez X VenereRussiaAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel Y RutaRussia2026-09-07Truhlar And Truhlar Attys PROPOSAL14Elwin Sharvill
1001Mayumi D TollnerCanada2026-09-19Chanay, Jeffrey A Esq UNQUALIFIED17Xuxue Feng
1002Murillo N DoeBrazil2026-09-12Morlong Associates UNQUALIFIED14Amy Elsner
1003Ivar I FlosiItaly2026-09-25King, Christopher A Esq NEGOTIATION57Bernardo Dominic
1004Misaki Z IturbideArgentina2026-09-21Chapman, Ross E Esq NEGOTIATION21Ioni Bowcher
1005Chavez H MaletUnited Kingdom2026-09-14Rangoni Of Florence PROPOSAL87Bernardo Dominic
1006Ricardo T RutaCanada2026-09-30Truhlar And Truhlar Attys NEW75Anna Fali
1007Johnson D GauchoRussia2026-09-19Rangoni Of Florence PROPOSAL78Bernardo Dominic
1008Jennifer J CaudySpain2026-09-08Morlong Associates NEW17Ioni Bowcher
1009Aditya W InouyeUnited Kingdom2026-09-25Printing Dimensions QUALIFIED36Asiya Javayant
1010Ivar X RulapaughCanada2026-09-10Rousseaux, Michael Esq RENEWAL50Xuxue Feng
1011Emily H CampainIndia2026-09-24Buckley Miller Wright RENEWAL19Xuxue Feng
1012Juan K SchemmerJapan2026-09-07Dorl, James J Esq NEGOTIATION26Elwin Sharvill
1013Murillo R PerinUnited Kingdom2026-09-10Chemel, James L Cpa NEW20Stephen Shaw
1014Smith M OldroydArgentina2026-09-24Feltz Printing Service QUALIFIED36Anna Fali
1015Julie A PerinArgentina2026-09-29Chapman, Ross E Esq NEGOTIATION11Xuxue Feng
1016Kaitlin G MorascaSpain2026-09-24Commercial Press NEGOTIATION96Asiya Javayant
1017Tony W AlbaresGermany2026-09-12Feltz Printing Service RENEWAL79Anna Fali
1018Deepesh G DoeRussia2026-09-10Morlong Associates NEGOTIATION18Ioni Bowcher
1019Isabel D GlickItaly2026-09-18Truhlar And Truhlar Attys NEW58Xuxue Feng
1020Jennifer F WhobreySpain2026-09-07Truhlar And Truhlar Attys RENEWAL23Stephen Shaw
1021Costa D VenereFrance2026-09-08Feltz Printing Service QUALIFIED27Stephen Shaw
1022Julie Z MacleadUnited Kingdom2026-09-30Chapman, Ross E Esq RENEWAL56Onyama Limba
1023Leon V OstroskyGermany2026-09-06Chapman, Ross E Esq QUALIFIED2Stephen Shaw
1024Silvio W MorascaArgentina2026-09-26Morlong Associates UNQUALIFIED4Stephen Shaw
1025Cody O StockhamGermany2026-09-13Chemel, James L Cpa UNQUALIFIED86Ivan Magalhaes
1026Alejandro E KuskoItaly2026-09-28Rousseaux, Michael Esq UNQUALIFIED30Elwin Sharvill
1027Leon N StockhamRussia2026-09-08Morlong Associates NEGOTIATION60Onyama Limba
1028Juan P PerinRussia2026-09-10Rousseaux, Michael Esq PROPOSAL72Onyama Limba
1029Francesco Y SlusarskiFrance2026-09-15Commercial Press QUALIFIED69Bernardo Dominic
1030Leja B VocelkaArgentina2026-09-09Chemel, James L Cpa NEGOTIATION10Stephen Shaw
1031Stacey T KuskoJapan2026-09-05Chanay, Jeffrey A Esq NEGOTIATION13Elwin Sharvill
1032Salvatore W CampainAustralia2026-09-10Rousseaux, Michael Esq RENEWAL51Asiya Javayant
1033Sinclair R CaudyJapan2026-10-01Feiner Bros RENEWAL25Onyama Limba
1034Cody L NestleBrazil2026-09-26Chemel, James L Cpa NEW37Asiya Javayant
1035James N IturbideIndia2026-09-16Morlong Associates PROPOSAL98Anna Fali
1036Munro T GauchoCanada2026-09-10Commercial Press NEW54Ivan Magalhaes
1037Aika C GlickAustralia2026-09-22Truhlar And Truhlar Attys UNQUALIFIED2Asiya Javayant
1038Alejandro W MorascaGermany2026-09-24Dorl, James J Esq QUALIFIED11Anna Fali
1039Murillo W CaudyJapan2026-09-11Rousseaux, Michael Esq RENEWAL21Bernardo Dominic
1040James Q RulapaughItaly2026-09-05Buckley Miller Wright RENEWAL52Anna Fali
1041Emily F OldroydUnited Kingdom2026-09-24Benton, John B Jr NEW73Amy Elsner
1042David L StockhamUnited Kingdom2026-09-16Truhlar And Truhlar Attys UNQUALIFIED74Asiya Javayant
1043Stacey X RutaBrazil2026-09-15Buckley Miller Wright UNQUALIFIED28Bernardo Dominic
1044Adams A RulapaughJapan2026-09-16Rangoni Of Florence NEW73Stephen Shaw
1045Emily C VenereFrance2026-09-06Benton, John B Jr PROPOSAL24Asiya Javayant
1046Sinclair X RoysterCanada2026-09-21Benton, John B Jr RENEWAL87Amy Elsner
1047Leon F KolmetzBrazil2026-09-08Printing Dimensions UNQUALIFIED66Anna Fali
1048David N CampainJapan2026-09-10Chemel, James L Cpa PROPOSAL31Stephen Shaw
1049David T GauchoItaly2026-09-05Truhlar And Truhlar Attys NEGOTIATION74Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Isabel F SchemmerArgentinaXuxue Feng NEW
Antonio Z DoeBrazilIoni Bowcher UNQUALIFIED
Munro G BowleyBrazilAsiya Javayant NEGOTIATION
Octavia T CaldareraRussiaOnyama Limba UNQUALIFIED
Jefferson K PerinCanadaIoni Bowcher PROPOSAL
Mayumi C AmigonUnited KingdomXuxue Feng QUALIFIED
Murillo V MaletUnited KingdomBernardo Dominic NEW
Octavia P OldroydRussiaAnna Fali NEGOTIATION
Jefferson M MaletUnited KingdomIvan Magalhaes NEGOTIATION
Julie E KuskoArgentinaElwin Sharvill NEGOTIATION
Smith Z DilliardJapanIvan Magalhaes PROPOSAL
Octavia X DoeBrazilElwin Sharvill NEW
Arvin C NestleJapanElwin Sharvill RENEWAL
Ivar Z WieserCanadaIvan Magalhaes QUALIFIED
Maria H MaletCanadaIvan Magalhaes PROPOSAL
Antonio R AmigonArgentinaXuxue Feng UNQUALIFIED
Silvio F SlusarskiIndiaStephen Shaw PROPOSAL
Izzy A NickaAustraliaAsiya Javayant RENEWAL
Maisha J OldroydItalyAnna Fali UNQUALIFIED
Ricardo H ButtUnited KingdomAmy Elsner PROPOSAL
Costa F RulapaughUnited KingdomBernardo Dominic NEW
Darci M TollnerArgentinaBernardo Dominic PROPOSAL
Johnson B TollnerGermanyIvan Magalhaes RENEWAL
Deepesh W SchemmerBrazilStephen Shaw PROPOSAL
Silvio B CaldareraBrazilIoni Bowcher UNQUALIFIED
Julie N GlickJapanAnna Fali UNQUALIFIED
Deepesh B GauchoRussiaStephen Shaw RENEWAL
Misaki W TollnerGermanyAsiya Javayant UNQUALIFIED
Leja T SchemmerRussiaBernardo Dominic RENEWAL
Juan N MarrierGermanyAnna Fali NEGOTIATION
Munro P DilliardFranceStephen Shaw RENEWAL
Ashley M RulapaughSpainXuxue Feng PROPOSAL
Aika A VenereUnited KingdomAmy Elsner UNQUALIFIED
Jennifer Q FollerIndiaOnyama Limba NEGOTIATION
Silvio H OldroydGermanyIvan Magalhaes NEW
Jennifer U BriddickRussiaXuxue Feng UNQUALIFIED
Aruna J OldroydIndiaIoni Bowcher NEGOTIATION
Faith O RulapaughSpainAmy Elsner NEW
Octavia X GarufiArgentinaOnyama Limba NEW
Alejandro U BologniaGermanyIvan Magalhaes NEGOTIATION
Jennifer J OstroskyUnited KingdomStephen Shaw NEW
Deepesh J PerinSpainIvan Magalhaes PROPOSAL
Kadeem G GauchoUnited KingdomOnyama Limba NEW
Wickens E DarakjyArgentinaStephen Shaw UNQUALIFIED
Silvio O GauchoArgentinaOnyama Limba NEGOTIATION
Jennifer I DilliardIndiaIoni Bowcher NEGOTIATION
Aruna T PerinIndiaIvan Magalhaes NEW
Leon D InouyeFranceElwin Sharvill UNQUALIFIED
Jones E RulapaughGermanyOnyama Limba RENEWAL
Isabel U StockhamItalyStephen Shaw PROPOSAL
Frozen Columns
Name
Kaitlin J Caldarera
Morrow A Foller
Adams V Morasca
Aditya V Amigon
Aruna A Malet
Juan C Dilliard
Claire V Kusko
Morrow X Rim
Leja Y Caudy
Wickens L Ruta
Tony U Caldarera
Isabel T Morasca
Smith L Amigon
Silvio W Royster
Smith A Malet
Alejandro C Kusko
Emily I Waycott
Jones X Doe
Adams X Figeroa
Darci Q Shinko
Leon S Waycott
Cody U Royster
Morrow T Flosi
Leon Q Ferencz
Leja U Chui
Wickens A Inouye
Antonio P Gillian
Aditya W Figeroa
Mayumi J Bolognia
Greenwood L Stockham
Maisha N Whobrey
Emily Q Amigon
Izzy Z Stockham
Leja M Dilliard
Jeanfrancois B Malet
Aruna V Kolmetz
Francesco K Malet
Kaitlin V Waycott
Sinclair U Saylors
Adams L Stenseth
Isabel L Chui
Munro F Campain
Ricardo P Oldroyd
Isabel S Shinko
Aika I Marrier
Silvio W Caldarera
Maisha M Shinko
Leja H Kusko
Darci P Waycott
Arvin Y Saylors
IdCountryDate
1000Japan2026-09-20
1001Italy2026-09-09
1002India2026-09-07
1003United Kingdom2026-09-10
1004Spain2026-09-22
1005France2026-09-03
1006Italy2026-09-15
1007Brazil2026-09-13
1008Canada2026-09-17
1009Japan2026-09-26
1010Russia2026-09-24
1011Italy2026-09-21
1012India2026-09-19
1013Japan2026-09-08
1014France2026-09-28
1015Canada2026-09-22
1016India2026-09-15
1017Brazil2026-09-28
1018Spain2026-09-25
1019Italy2026-09-13
1020Germany2026-09-27
1021United Kingdom2026-09-12
1022Italy2026-09-23
1023Russia2026-09-29
1024Canada2026-09-02
1025Japan2026-09-15
1026Germany2026-09-28
1027Spain2026-09-18
1028Canada2026-09-16
1029Russia2026-09-05
1030Canada2026-09-03
1031Argentina2026-09-21
1032Russia2026-09-28
1033Germany2026-09-07
1034France2026-09-21
1035United Kingdom2026-09-13
1036Italy2026-09-12
1037Germany2026-09-12
1038Australia2026-09-24
1039Japan2026-09-08
1040India2026-09-18
1041Japan2026-09-22
1042Russia2026-09-20
1043India2026-09-30
1044Russia2026-09-04
1045Germany2026-09-03
1046France2026-09-24
1047Japan2026-09-09
1048India2026-10-01
1049Italy2026-09-05

On-Demand Data

NameIdCountryDate
Rodrigues H Dilliard1000Russia2026-09-19
Antonio R Perin1001Australia2026-09-24
Costa J Kusko1002United Kingdom2026-09-22
Claire Z Amigon1003United Kingdom2026-09-05
Greenwood J Wieser1004Australia2026-09-26
Mayumi A Tollner1005Canada2026-09-27
Kadeem N Foller1006Japan2026-09-07
Mayumi L Kolmetz1007Japan2026-09-17
Greenwood L Poquette1008France2026-09-16
Claire N Perin1009France2026-09-26
Sinclair Y Caudy1010Australia2026-09-14
Silvio Z Paprocki1011Australia2026-09-26
Nicolas Y Gaucho1012Argentina2026-09-18
Rodrigues A Paprocki1013Germany2026-09-14
Sinclair C Marrier1014Spain2026-09-09
Mujtaba D Schemmer1015Japan2026-09-18
Jefferson W Venere1016Japan2026-09-16
Ashley C Tollner1017India2026-09-22
Aika A Briddick1018Spain2026-09-27
Ricardo K Royster1019United Kingdom2026-09-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon E KolmetzIndiaIvan Magalhaes NEW
Mayumi I BologniaSpainElwin Sharvill UNQUALIFIED
Murillo L FerenczFranceStephen Shaw NEGOTIATION
Munro C MorascaJapanXuxue Feng RENEWAL
Kadeem L WieserIndiaAsiya Javayant NEW
Cody R VocelkaAustraliaStephen Shaw PROPOSAL
Juan Y StensethAustraliaBernardo Dominic QUALIFIED
Kadeem E PaprockiRussiaAsiya Javayant NEW
Julie Y StockhamArgentinaAsiya Javayant UNQUALIFIED
Jeanfrancois N OldroydBrazilIvan Magalhaes PROPOSAL
Octavia D RoysterJapanAnna Fali PROPOSAL
Ivar C RimArgentinaIvan Magalhaes QUALIFIED
Greenwood Z InouyeGermanyElwin Sharvill UNQUALIFIED
Francesco W PaprockiSpainBernardo Dominic PROPOSAL
Kadeem T KolmetzJapanIvan Magalhaes QUALIFIED
Wickens C InouyeItalyIvan Magalhaes QUALIFIED
Salvatore O RutaGermanyElwin Sharvill QUALIFIED
James V SergiItalyXuxue Feng RENEWAL
Munro N InouyeFranceAmy Elsner NEW
Adams M SergiUnited KingdomXuxue Feng RENEWAL
Misaki O VenereJapanAmy Elsner NEGOTIATION
Sinclair U VenereAustraliaAsiya Javayant NEGOTIATION
Chavez L CaudyCanadaBernardo Dominic RENEWAL
Rodrigues C BowleyFranceBernardo Dominic PROPOSAL
David Q MorascaUnited KingdomAmy Elsner PROPOSAL
Jennifer V WieserJapanAmy Elsner NEGOTIATION
Aika Y ShinkoFranceAmy Elsner NEGOTIATION
Aruna T AmigonFranceBernardo Dominic PROPOSAL
Greenwood T RutaJapanOnyama Limba NEGOTIATION
Tony Z FlosiUnited KingdomOnyama Limba RENEWAL
Ashley H ButtJapanAmy Elsner NEGOTIATION
David M GillianItalyIvan Magalhaes NEGOTIATION
Wickens W GillianGermanyAnna Fali UNQUALIFIED
Munro C DoeAustraliaXuxue Feng NEGOTIATION
Izzy Q OstroskyGermanyAsiya Javayant RENEWAL
Misaki K GarufiArgentinaAsiya Javayant QUALIFIED
David W TollnerRussiaIoni Bowcher PROPOSAL
Jones X KuskoArgentinaAmy Elsner RENEWAL
Alejandro Q ButtSpainAsiya Javayant NEGOTIATION
Wickens Q NickaJapanAmy Elsner NEW

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