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
Leja V FigeroaIndiaOnyama Limba QUALIFIED
Ivar X BowleyGermanyOnyama Limba NEGOTIATION
Leon T ButtSpainIvan Magalhaes NEW
Antonio U IturbideBrazilStephen Shaw RENEWAL
Munro O GauchoJapanXuxue Feng NEGOTIATION
Chavez H MaletItalyElwin Sharvill QUALIFIED
Leon G AlbaresBrazilAnna Fali PROPOSAL
Claire J GauchoFranceElwin Sharvill NEW
Ricardo T AmigonRussiaAsiya Javayant RENEWAL
Morrow G ShinkoArgentinaBernardo Dominic NEGOTIATION
Alejandro K GarufiIndiaIvan Magalhaes PROPOSAL
Silvio T FerenczBrazilAnna Fali UNQUALIFIED
Stacey G FlosiFranceIvan Magalhaes RENEWAL
Juan Z FerenczBrazilOnyama Limba RENEWAL
Ashley R SchemmerItalyStephen Shaw RENEWAL
Wickens Q AmigonRussiaStephen Shaw QUALIFIED
Aruna B RutaUnited KingdomElwin Sharvill NEGOTIATION
Johnson Q ButtFranceAmy Elsner NEW
Mayumi R RulapaughItalyXuxue Feng QUALIFIED
Emily M FerenczJapanXuxue Feng UNQUALIFIED
Salvatore T MaletAustraliaOnyama Limba NEW
Mayumi X DoeFranceStephen Shaw NEW
Aika T RimFranceAsiya Javayant PROPOSAL
Adams E RimFranceXuxue Feng RENEWAL
Alejandro V PaprockiUnited KingdomStephen Shaw UNQUALIFIED
Morrow X GarufiIndiaIvan Magalhaes NEW
Darci D FollerUnited KingdomAnna Fali NEGOTIATION
Morrow L RoysterCanadaOnyama Limba NEGOTIATION
Kaitlin H SchemmerArgentinaIvan Magalhaes RENEWAL
Darci S RimRussiaOnyama Limba QUALIFIED
Misaki Y FlosiRussiaXuxue Feng QUALIFIED
Arvin W WieserUnited KingdomAmy Elsner NEGOTIATION
Clifford K RimGermanyAmy Elsner NEW
Jeanfrancois G RulapaughUnited KingdomOnyama Limba NEGOTIATION
Tony T OstroskyArgentinaElwin Sharvill QUALIFIED
Ashley O RoysterSpainXuxue Feng NEGOTIATION
Jeanfrancois U ChuiSpainAmy Elsner NEGOTIATION
Cody J DoeAustraliaElwin Sharvill UNQUALIFIED
Leja S SergiArgentinaAnna Fali NEW
Claire T GlickGermanyElwin Sharvill QUALIFIED
Costa L NickaRussiaXuxue Feng UNQUALIFIED
Leja C TollnerArgentinaElwin Sharvill NEGOTIATION
Munro V MaletArgentinaStephen Shaw QUALIFIED
Isabel J MarrierIndiaElwin Sharvill PROPOSAL
Claire Q RimUnited KingdomOnyama Limba PROPOSAL
Leon R PoquetteJapanAnna Fali QUALIFIED
Ashley X DoeUnited KingdomXuxue Feng UNQUALIFIED
Greenwood V RimRussiaBernardo Dominic PROPOSAL
Smith O BowleyJapanIvan Magalhaes UNQUALIFIED
Tony E RoysterSpainAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
David F FollerCanadaStephen Shaw NEW
Nicolas C TollnerSpainStephen Shaw QUALIFIED
Leja W TollnerRussiaElwin Sharvill QUALIFIED
Mayumi Y GlickSpainOnyama Limba RENEWAL
Kaitlin H InouyeFranceOnyama Limba QUALIFIED
Johnson I IturbideAustraliaOnyama Limba QUALIFIED
David Z FerenczSpainStephen Shaw NEW
Smith U KolmetzItalyAsiya Javayant QUALIFIED
Ashley X WieserRussiaAmy Elsner NEGOTIATION
Johnson W PerinGermanyStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro O PerinGermany2026-10-28Rousseaux, Michael Esq UNQUALIFIED67Xuxue Feng
1001Misaki J NickaCanada2026-09-30Benton, John B Jr QUALIFIED74Stephen Shaw
1002Johnson D DoeAustralia2026-10-14Commercial Press NEW47Onyama Limba
1003Tony C FerenczGermany2026-10-23Dorl, James J Esq NEW26Ivan Magalhaes
1004Rodrigues E FigeroaItaly2026-10-19Chapman, Ross E Esq NEW42Ioni Bowcher
1005Silvio Z OldroydIndia2026-10-26Chemel, James L Cpa PROPOSAL79Ioni Bowcher
1006Leon N BriddickItaly2026-10-11Buckley Miller Wright UNQUALIFIED40Ioni Bowcher
1007Mayumi T VocelkaIndia2026-10-22Chemel, James L Cpa UNQUALIFIED63Onyama Limba
1008Jones N SergiUnited Kingdom2026-10-19Truhlar And Truhlar Attys RENEWAL5Anna Fali
1009Clifford S BowleyFrance2026-10-25Chapman, Ross E Esq QUALIFIED22Stephen Shaw
1010Maria I StockhamArgentina2026-10-25Morlong Associates NEW11Ivan Magalhaes
1011Munro X StensethSpain2026-10-04Commercial Press NEGOTIATION50Ioni Bowcher
1012Maria K GarufiRussia2026-10-02Buckley Miller Wright UNQUALIFIED80Amy Elsner
1013Kadeem Q BologniaGermany2026-10-11Rousseaux, Michael Esq NEGOTIATION81Xuxue Feng
1014Adams Y OldroydBrazil2026-10-28Morlong Associates NEW11Xuxue Feng
1015Arvin U CampainJapan2026-10-29Morlong Associates QUALIFIED49Ioni Bowcher
1016Julie P FigeroaAustralia2026-10-29Buckley Miller Wright UNQUALIFIED82Xuxue Feng
1017Adams Y VocelkaCanada2026-09-30Benton, John B Jr RENEWAL26Asiya Javayant
1018Leon Z FlosiArgentina2026-10-06Rousseaux, Michael Esq PROPOSAL97Asiya Javayant
1019Jones H FerenczIndia2026-10-16Morlong Associates UNQUALIFIED79Bernardo Dominic
1020Leja K SaylorsCanada2026-10-14Truhlar And Truhlar Attys QUALIFIED62Ioni Bowcher
1021Aika B ShinkoRussia2026-10-16Buckley Miller Wright RENEWAL58Ivan Magalhaes
1022Jefferson G RutaAustralia2026-10-27Chanay, Jeffrey A Esq QUALIFIED97Onyama Limba
1023Ricardo T PoquetteIndia2026-10-03Rangoni Of Florence QUALIFIED3Ioni Bowcher
1024Costa E WieserSpain2026-10-24Dorl, James J Esq QUALIFIED31Elwin Sharvill
1025Mayumi U IturbideAustralia2026-10-10Buckley Miller Wright UNQUALIFIED98Bernardo Dominic
1026Francesco N StockhamIndia2026-10-23Buckley Miller Wright NEW13Elwin Sharvill
1027Juan J NestleCanada2026-10-17Buckley Miller Wright NEW22Asiya Javayant
1028Arvin E DarakjyBrazil2026-10-26Rousseaux, Michael Esq NEW56Stephen Shaw
1029Wickens K StockhamGermany2026-10-18Chanay, Jeffrey A Esq RENEWAL75Ioni Bowcher
1030Juan T GlickIndia2026-10-01Chemel, James L Cpa RENEWAL45Amy Elsner
1031Aika N OstroskyUnited Kingdom2026-10-11Rousseaux, Michael Esq NEGOTIATION90Onyama Limba
1032Ivar E BowleyFrance2026-10-11Buckley Miller Wright PROPOSAL99Stephen Shaw
1033Adams D NestleUnited Kingdom2026-10-22Buckley Miller Wright PROPOSAL55Onyama Limba
1034Isabel L OldroydBrazil2026-10-15Feltz Printing Service QUALIFIED78Ioni Bowcher
1035Octavia Q MaletGermany2026-10-24Chemel, James L Cpa PROPOSAL71Onyama Limba
1036Silvio V GauchoCanada2026-10-15Rangoni Of Florence NEW2Onyama Limba
1037Francesco V ChuiBrazil2026-10-15Dorl, James J Esq RENEWAL18Bernardo Dominic
1038Alejandro O TollnerSpain2026-10-14Commercial Press PROPOSAL22Xuxue Feng
1039Murillo G MaletArgentina2026-10-28Feltz Printing Service QUALIFIED10Stephen Shaw
1040Julie O StockhamGermany2026-10-09Dorl, James J Esq UNQUALIFIED25Elwin Sharvill
1041Chavez P GlickIndia2026-10-24Morlong Associates NEGOTIATION16Xuxue Feng
1042Mujtaba A PerinBrazil2026-10-18Printing Dimensions NEGOTIATION41Onyama Limba
1043Francesco C ChuiCanada2026-10-22Commercial Press RENEWAL19Ioni Bowcher
1044Misaki B NickaRussia2026-10-24Feiner Bros QUALIFIED16Stephen Shaw
1045Ashley Y FerenczBrazil2026-10-17Feiner Bros QUALIFIED43Ioni Bowcher
1046Jeanfrancois Y SlusarskiUnited Kingdom2026-10-18Chapman, Ross E Esq UNQUALIFIED56Anna Fali
1047Smith U MaletUnited Kingdom2026-10-18Feiner Bros QUALIFIED6Bernardo Dominic
1048Jones D KolmetzRussia2026-10-14Chanay, Jeffrey A Esq RENEWAL99Asiya Javayant
1049Murillo J MacleadAustralia2026-10-17Chapman, Ross E Esq NEGOTIATION80Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Murillo R DoeFranceElwin Sharvill UNQUALIFIED
Aditya A FollerRussiaIvan Magalhaes PROPOSAL
Octavia R VocelkaGermanyBernardo Dominic QUALIFIED
Silvio K StensethFranceXuxue Feng NEGOTIATION
Ashley W CampainAustraliaXuxue Feng NEW
Clifford N SergiGermanyAmy Elsner RENEWAL
Antonio K MaletAustraliaBernardo Dominic PROPOSAL
Mujtaba V SergiRussiaIvan Magalhaes PROPOSAL
Julie J VenereCanadaElwin Sharvill UNQUALIFIED
Octavia Q GlickCanadaBernardo Dominic RENEWAL
Octavia U InouyeRussiaIvan Magalhaes NEGOTIATION
Jeanfrancois X InouyeGermanyElwin Sharvill PROPOSAL
Aruna S KolmetzGermanyAnna Fali PROPOSAL
Darci N RimAustraliaAsiya Javayant RENEWAL
Kadeem F NestleArgentinaIvan Magalhaes QUALIFIED
Mujtaba H CampainSpainAnna Fali RENEWAL
Ricardo F SaylorsAustraliaXuxue Feng UNQUALIFIED
Aditya C GillianArgentinaOnyama Limba NEGOTIATION
Leja F MaletCanadaXuxue Feng NEW
Deepesh K PaprockiJapanOnyama Limba NEGOTIATION
Salvatore T StensethItalyAsiya Javayant NEGOTIATION
Nicolas K AlbaresJapanIoni Bowcher UNQUALIFIED
Arvin T StockhamFranceAmy Elsner UNQUALIFIED
Rodrigues F SlusarskiCanadaAnna Fali RENEWAL
Claire S NestleUnited KingdomStephen Shaw RENEWAL
Johnson L MarrierCanadaAmy Elsner UNQUALIFIED
Tony B BowleyAustraliaStephen Shaw RENEWAL
Julie H GarufiArgentinaAnna Fali NEGOTIATION
Arvin L MaletCanadaAmy Elsner PROPOSAL
Jones H RutaFranceIvan Magalhaes PROPOSAL
Clifford L NestleRussiaBernardo Dominic NEGOTIATION
Maisha V MarrierSpainOnyama Limba NEW
Greenwood P BologniaRussiaIoni Bowcher NEW
Clifford C DoeCanadaAmy Elsner RENEWAL
Greenwood D NestleBrazilElwin Sharvill NEGOTIATION
Greenwood N StensethRussiaAmy Elsner RENEWAL
Mayumi I BowleyItalyOnyama Limba RENEWAL
Costa F TollnerBrazilXuxue Feng UNQUALIFIED
Jeanfrancois Q SlusarskiAustraliaOnyama Limba UNQUALIFIED
Leja O IturbideUnited KingdomOnyama Limba NEW
Greenwood G MaletCanadaXuxue Feng QUALIFIED
Munro R PerinSpainIoni Bowcher UNQUALIFIED
Antonio U ShinkoArgentinaXuxue Feng NEGOTIATION
Jennifer A NickaArgentinaAsiya Javayant QUALIFIED
Alejandro O BriddickFranceAsiya Javayant UNQUALIFIED
Aika W RulapaughJapanBernardo Dominic QUALIFIED
James Y CaudyArgentinaIoni Bowcher NEW
Adams M KolmetzAustraliaAnna Fali PROPOSAL
Mujtaba U FerenczArgentinaXuxue Feng QUALIFIED
Cody P MacleadAustraliaAmy Elsner QUALIFIED
Frozen Columns
Name
Emily V Maclead
Munro Q Malet
Smith E Garufi
Claire C Butt
Ivar P Slusarski
Tony Y Chui
Darci I Caudy
Smith O Whobrey
Greenwood R Perin
Leon W Kolmetz
Leon Z Rim
Maisha Z Stockham
Chavez U Caldarera
Rodrigues T Perin
Ashley R Flosi
Clifford V Paprocki
Julie T Gillian
Stacey B Vocelka
Chavez E Waycott
Faith N Bolognia
Murillo V Slusarski
Jefferson F Slusarski
Misaki Z Campain
Maria J Flosi
Deepesh I Iturbide
Leja Z Maclead
Maria I Sergi
Darci I Wieser
Claire D Malet
Adams L Paprocki
Clifford Y Figeroa
Antonio C Briddick
Sinclair X Stenseth
Munro S Gaucho
Alejandro L Stockham
Jennifer H Chui
Jones Z Albares
Ricardo C Gaucho
Tony D Foller
Jennifer F Slusarski
Izzy M Kolmetz
Jones P Inouye
Octavia N Ostrosky
Antonio M Nicka
Isabel K Garufi
Mujtaba Q Caudy
Jones U Rulapaugh
Costa A Sergi
Isabel S Oldroyd
Isabel D Darakjy
IdCountryDate
1000Brazil2026-10-02
1001Spain2026-10-11
1002Australia2026-10-09
1003United Kingdom2026-10-26
1004Germany2026-10-19
1005United Kingdom2026-10-06
1006Japan2026-10-26
1007Brazil2026-09-30
1008Argentina2026-10-12
1009Brazil2026-10-08
1010United Kingdom2026-10-01
1011United Kingdom2026-10-07
1012Argentina2026-10-11
1013Canada2026-10-04
1014Japan2026-10-28
1015Argentina2026-10-14
1016Canada2026-10-01
1017Argentina2026-10-20
1018Russia2026-10-20
1019Brazil2026-10-13
1020Brazil2026-10-17
1021India2026-10-28
1022Germany2026-10-17
1023United Kingdom2026-10-11
1024Japan2026-10-06
1025Argentina2026-10-28
1026France2026-10-02
1027Australia2026-10-16
1028Russia2026-10-27
1029Australia2026-10-24
1030United Kingdom2026-10-13
1031United Kingdom2026-10-09
1032Italy2026-10-21
1033Brazil2026-10-21
1034Italy2026-10-16
1035India2026-10-22
1036France2026-10-07
1037Russia2026-10-10
1038Spain2026-10-27
1039Canada2026-10-23
1040France2026-10-17
1041Russia2026-10-13
1042India2026-10-10
1043Brazil2026-10-12
1044France2026-10-23
1045Italy2026-10-19
1046France2026-10-14
1047Germany2026-10-17
1048Japan2026-10-22
1049Brazil2026-10-29

On-Demand Data

NameIdCountryDate
Ricardo K Doe1000United Kingdom2026-10-27
Silvio T Ostrosky1001India2026-10-05
Maria S Shinko1002France2026-10-12
Murillo I Malet1003Canada2026-10-28
Antonio X Poquette1004Canada2026-10-07
Nicolas G Doe1005Germany2026-10-26
Stacey B Caudy1006France2026-10-24
Sinclair R Glick1007Germany2026-10-24
Claire E Kolmetz1008Spain2026-10-10
Murillo N Butt1009Canada2026-10-12
Ashley F Sergi1010Japan2026-10-14
Leja H Stockham1011Japan2026-10-19
Silvio B Slusarski1012Germany2026-10-11
Silvio B Rulapaugh1013Canada2026-10-12
Kaitlin W Oldroyd1014India2026-10-29
Tony S Bowley1015Italy2026-10-22
Leon C Nicka1016Australia2026-10-20
Octavia Q Amigon1017Australia2026-10-07
Johnson T Vocelka1018Japan2026-10-05
Aditya G Caldarera1019Germany2026-10-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa Y BowleyIndiaAsiya Javayant PROPOSAL
Juan Y PerinItalyXuxue Feng NEW
Greenwood S FollerRussiaOnyama Limba NEGOTIATION
Isabel R BowleyRussiaAsiya Javayant NEGOTIATION
Rodrigues Q MacleadIndiaAsiya Javayant UNQUALIFIED
Francesco B AlbaresRussiaIoni Bowcher NEGOTIATION
Juan G VocelkaFranceOnyama Limba RENEWAL
Clifford M ChuiArgentinaIoni Bowcher UNQUALIFIED
Ricardo W TollnerSpainIvan Magalhaes UNQUALIFIED
Misaki W NestleIndiaAmy Elsner PROPOSAL
Arvin N StensethItalyIoni Bowcher NEGOTIATION
Mayumi M BriddickUnited KingdomAnna Fali RENEWAL
Ricardo W VenereRussiaAsiya Javayant NEGOTIATION
Emily B FlosiUnited KingdomIoni Bowcher PROPOSAL
Jennifer Q ShinkoRussiaIoni Bowcher RENEWAL
Murillo K NestleGermanyIoni Bowcher RENEWAL
Alejandro L StockhamBrazilAmy Elsner QUALIFIED
Jefferson Z ButtIndiaXuxue Feng NEGOTIATION
Juan A KuskoRussiaIvan Magalhaes RENEWAL
Faith R WaycottSpainElwin Sharvill RENEWAL
Wickens M IturbideAustraliaAnna Fali NEGOTIATION
Antonio B NickaCanadaIvan Magalhaes NEGOTIATION
Nicolas M WaycottAustraliaOnyama Limba RENEWAL
Greenwood A KuskoCanadaAsiya Javayant PROPOSAL
Arvin R NickaJapanAnna Fali RENEWAL
Claire S NickaFranceAnna Fali QUALIFIED
Aditya B FerenczArgentinaElwin Sharvill QUALIFIED
Cody B FigeroaUnited KingdomOnyama Limba PROPOSAL
Nicolas L VenereIndiaIvan Magalhaes RENEWAL
Maisha E DilliardItalyStephen Shaw PROPOSAL
Izzy H IturbideJapanIvan Magalhaes NEGOTIATION
Octavia N BowleyGermanyBernardo Dominic RENEWAL
Johnson P FlosiBrazilAnna Fali RENEWAL
Nicolas T NickaSpainBernardo Dominic UNQUALIFIED
Leja P DilliardFranceAnna Fali RENEWAL
Kaitlin D BowleyAustraliaIoni Bowcher NEGOTIATION
Costa D OstroskyGermanyElwin Sharvill UNQUALIFIED
Aditya H MacleadRussiaIoni Bowcher RENEWAL
Rodrigues R CampainAustraliaBernardo Dominic NEW
Johnson F AlbaresUnited KingdomBernardo Dominic RENEWAL

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