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
Costa X CampainItalyStephen Shaw NEGOTIATION
Murillo Z RutaIndiaElwin Sharvill NEW
Octavia L OstroskyUnited KingdomAsiya Javayant RENEWAL
Antonio Z SaylorsIndiaStephen Shaw PROPOSAL
Morrow K ShinkoRussiaXuxue Feng PROPOSAL
Adams G PaprockiJapanIoni Bowcher NEGOTIATION
Jennifer R WaycottCanadaXuxue Feng PROPOSAL
Ivar Z BologniaUnited KingdomAmy Elsner RENEWAL
Ashley K GarufiSpainOnyama Limba QUALIFIED
Clifford I FerenczJapanIvan Magalhaes RENEWAL
Kadeem T DoeRussiaIvan Magalhaes UNQUALIFIED
Ivar F TollnerSpainElwin Sharvill QUALIFIED
Cody Y KuskoArgentinaAnna Fali PROPOSAL
Ricardo I GauchoFranceElwin Sharvill UNQUALIFIED
Ivar B FollerRussiaXuxue Feng RENEWAL
Sinclair G KolmetzAustraliaAnna Fali NEGOTIATION
Octavia C VenereAustraliaStephen Shaw UNQUALIFIED
Isabel V CampainSpainOnyama Limba PROPOSAL
Sinclair H SergiAustraliaAsiya Javayant QUALIFIED
Leja Y CampainUnited KingdomIvan Magalhaes RENEWAL
Ivar J FlosiUnited KingdomElwin Sharvill UNQUALIFIED
Ashley Z WaycottIndiaStephen Shaw UNQUALIFIED
Octavia L BowleyArgentinaAsiya Javayant QUALIFIED
Ivar O FerenczGermanyIoni Bowcher UNQUALIFIED
David T KolmetzCanadaOnyama Limba NEW
Aruna P MarrierFranceXuxue Feng QUALIFIED
Alejandro U SchemmerArgentinaBernardo Dominic NEGOTIATION
Julie K RulapaughRussiaStephen Shaw NEGOTIATION
Sinclair E WieserRussiaIvan Magalhaes PROPOSAL
Salvatore Z GillianJapanAmy Elsner NEGOTIATION
Smith X BriddickAustraliaIvan Magalhaes UNQUALIFIED
Isabel H AmigonCanadaStephen Shaw UNQUALIFIED
Murillo L CampainRussiaAsiya Javayant PROPOSAL
Ivar Q SlusarskiCanadaIvan Magalhaes UNQUALIFIED
Mayumi H SlusarskiAustraliaOnyama Limba RENEWAL
Arvin W SaylorsSpainXuxue Feng QUALIFIED
Maria D GarufiArgentinaBernardo Dominic PROPOSAL
James R CampainJapanAnna Fali NEGOTIATION
James F BowleySpainBernardo Dominic QUALIFIED
Mayumi M MacleadAustraliaAnna Fali PROPOSAL
Munro I NestleRussiaXuxue Feng NEGOTIATION
Ricardo O DarakjyBrazilStephen Shaw RENEWAL
Stacey F WieserJapanBernardo Dominic RENEWAL
Juan Y ChuiBrazilAsiya Javayant NEGOTIATION
Ivar V MacleadGermanyBernardo Dominic NEGOTIATION
Darci G GauchoCanadaAnna Fali QUALIFIED
Arvin D StensethItalyStephen Shaw PROPOSAL
Alejandro U SergiIndiaElwin Sharvill RENEWAL
Ivar B ShinkoJapanElwin Sharvill NEW
Kaitlin L VenereGermanyBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Claire F VocelkaUnited KingdomBernardo Dominic PROPOSAL
Clifford J RimGermanyIvan Magalhaes PROPOSAL
Leja F WieserRussiaBernardo Dominic RENEWAL
Jones X GlickUnited KingdomIoni Bowcher NEGOTIATION
Cody Z CaudyIndiaAnna Fali NEW
Johnson G DilliardBrazilAsiya Javayant PROPOSAL
Costa T WieserItalyAnna Fali NEGOTIATION
Antonio I BologniaIndiaAnna Fali UNQUALIFIED
Silvio B PoquetteGermanyAsiya Javayant NEGOTIATION
Maisha E CaldareraJapanIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer S OstroskyCanada2026-10-02Chapman, Ross E Esq UNQUALIFIED2Asiya Javayant
1001Octavia M VenereGermany2026-10-14Truhlar And Truhlar Attys UNQUALIFIED30Bernardo Dominic
1002Ivar Z ChuiSpain2026-10-01Chemel, James L Cpa RENEWAL69Anna Fali
1003Salvatore E NestleItaly2026-10-20Morlong Associates NEW5Xuxue Feng
1004Jeanfrancois C CampainCanada2026-10-04Truhlar And Truhlar Attys UNQUALIFIED72Amy Elsner
1005Mayumi D MacleadCanada2026-10-15Printing Dimensions UNQUALIFIED69Asiya Javayant
1006Tony P PaprockiSpain2026-10-27Buckley Miller Wright NEW89Elwin Sharvill
1007Johnson V MacleadArgentina2026-10-27Printing Dimensions PROPOSAL77Onyama Limba
1008Johnson O SaylorsUnited Kingdom2026-10-01Commercial Press NEGOTIATION31Bernardo Dominic
1009Salvatore V GarufiCanada2026-10-14Benton, John B Jr RENEWAL97Bernardo Dominic
1010Aditya M WieserSpain2026-10-02Morlong Associates RENEWAL48Anna Fali
1011Jefferson T RoysterJapan2026-10-02Truhlar And Truhlar Attys NEGOTIATION54Bernardo Dominic
1012Stacey B BologniaItaly2026-10-17Feltz Printing Service NEW25Ioni Bowcher
1013Costa V MorascaGermany2026-10-21Buckley Miller Wright QUALIFIED23Xuxue Feng
1014Ricardo P VenereSpain2026-10-05Rangoni Of Florence PROPOSAL28Onyama Limba
1015Jennifer B BriddickJapan2026-10-27Commercial Press UNQUALIFIED39Amy Elsner
1016Greenwood X SaylorsSpain2026-10-15Rousseaux, Michael Esq UNQUALIFIED45Ioni Bowcher
1017Misaki Z TollnerArgentina2026-09-30Truhlar And Truhlar Attys UNQUALIFIED94Asiya Javayant
1018Emily K KolmetzRussia2026-10-09Feiner Bros QUALIFIED33Asiya Javayant
1019Jefferson L RulapaughUnited Kingdom2026-10-10Printing Dimensions PROPOSAL90Ivan Magalhaes
1020Ivar Z CampainJapan2026-10-05Rangoni Of Florence NEW72Stephen Shaw
1021Nicolas B MaletItaly2026-10-24Morlong Associates QUALIFIED17Ioni Bowcher
1022Arvin E CaudyJapan2026-10-18King, Christopher A Esq QUALIFIED26Ivan Magalhaes
1023Julie A CaudyArgentina2026-10-15Morlong Associates NEGOTIATION75Elwin Sharvill
1024Claire V PoquetteRussia2026-10-11Buckley Miller Wright UNQUALIFIED81Bernardo Dominic
1025Mujtaba S WieserIndia2026-10-04Chemel, James L Cpa NEW6Ivan Magalhaes
1026Ricardo H BowleySpain2026-09-30Truhlar And Truhlar Attys NEGOTIATION24Bernardo Dominic
1027Jefferson F PoquetteUnited Kingdom2026-10-11Chanay, Jeffrey A Esq NEGOTIATION51Xuxue Feng
1028Isabel E RutaArgentina2026-10-01Morlong Associates UNQUALIFIED39Bernardo Dominic
1029Jeanfrancois T FollerArgentina2026-09-28Benton, John B Jr NEGOTIATION28Ioni Bowcher
1030Octavia H RulapaughBrazil2026-10-27Rousseaux, Michael Esq QUALIFIED78Anna Fali
1031Wickens M StockhamFrance2026-10-11Dorl, James J Esq QUALIFIED46Asiya Javayant
1032Deepesh W DoeArgentina2026-10-20Rousseaux, Michael Esq NEW38Elwin Sharvill
1033Ricardo H InouyeItaly2026-10-14Commercial Press NEW53Anna Fali
1034Munro P GillianItaly2026-10-12Dorl, James J Esq UNQUALIFIED42Onyama Limba
1035Murillo K TollnerFrance2026-10-18Benton, John B Jr PROPOSAL81Anna Fali
1036Smith Z WaycottFrance2026-10-19Dorl, James J Esq UNQUALIFIED11Ioni Bowcher
1037Alejandro G NestleJapan2026-10-01Feltz Printing Service QUALIFIED70Elwin Sharvill
1038Morrow K VocelkaGermany2026-10-20Chemel, James L Cpa NEGOTIATION94Anna Fali
1039Leon I MaletBrazil2026-10-07Dorl, James J Esq QUALIFIED91Bernardo Dominic
1040Emily R RimGermany2026-10-17Benton, John B Jr PROPOSAL74Anna Fali
1041Isabel B MacleadGermany2026-10-11Morlong Associates NEW18Elwin Sharvill
1042Greenwood S CaldareraUnited Kingdom2026-10-16Chapman, Ross E Esq NEW97Amy Elsner
1043Silvio E WaycottIndia2026-10-11Rangoni Of Florence UNQUALIFIED6Xuxue Feng
1044Alejandro J DarakjyRussia2026-10-11Buckley Miller Wright NEW24Ivan Magalhaes
1045Jeanfrancois N RulapaughIndia2026-10-02Feltz Printing Service NEW73Bernardo Dominic
1046Jefferson Y FigeroaJapan2026-10-25Truhlar And Truhlar Attys PROPOSAL50Onyama Limba
1047Francesco F InouyeGermany2026-10-14Chanay, Jeffrey A Esq RENEWAL93Elwin Sharvill
1048Stacey O GlickGermany2026-10-12Chapman, Ross E Esq UNQUALIFIED44Anna Fali
1049Jennifer R AlbaresArgentina2026-10-07Morlong Associates RENEWAL97Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Costa P ButtCanadaBernardo Dominic RENEWAL
Costa J ShinkoGermanyAmy Elsner NEGOTIATION
Arvin O CampainSpainAmy Elsner NEGOTIATION
Cody R FigeroaIndiaAsiya Javayant NEW
Emily T MacleadGermanyXuxue Feng NEW
Smith X FollerSpainBernardo Dominic UNQUALIFIED
Ricardo Q WhobreyItalyAsiya Javayant QUALIFIED
Jones U DoeRussiaElwin Sharvill UNQUALIFIED
Smith G KolmetzBrazilXuxue Feng NEGOTIATION
Sinclair I KuskoArgentinaOnyama Limba NEW
Smith Q FigeroaItalyIoni Bowcher RENEWAL
Emily G FollerFranceIoni Bowcher NEW
Chavez G GillianItalyElwin Sharvill NEGOTIATION
Adams J WaycottCanadaOnyama Limba NEW
Isabel P GillianCanadaAmy Elsner PROPOSAL
Jeanfrancois A RutaAustraliaOnyama Limba PROPOSAL
Ricardo Y StockhamAustraliaIoni Bowcher PROPOSAL
Leja O MaletItalyIvan Magalhaes NEGOTIATION
James L PerinArgentinaIvan Magalhaes UNQUALIFIED
Juan K WhobreyGermanyAnna Fali RENEWAL
Antonio I GlickFranceElwin Sharvill UNQUALIFIED
Claire P OldroydJapanBernardo Dominic NEGOTIATION
Cody J RoysterSpainIvan Magalhaes UNQUALIFIED
Morrow O NestleFranceAmy Elsner PROPOSAL
Arvin J RoysterArgentinaStephen Shaw QUALIFIED
Jennifer E RimSpainAmy Elsner QUALIFIED
Johnson E PerinItalyOnyama Limba RENEWAL
Leon X AmigonUnited KingdomAmy Elsner QUALIFIED
Francesco N NickaIndiaOnyama Limba NEW
Deepesh I FerenczAustraliaAsiya Javayant PROPOSAL
Misaki J SaylorsBrazilAsiya Javayant PROPOSAL
Chavez X StensethGermanyAmy Elsner NEGOTIATION
Sinclair Y GlickUnited KingdomOnyama Limba UNQUALIFIED
Leja S GarufiItalyOnyama Limba NEW
Arvin C StensethAustraliaIvan Magalhaes PROPOSAL
Leon O ChuiItalyStephen Shaw QUALIFIED
Wickens G SaylorsUnited KingdomStephen Shaw PROPOSAL
Tony G RulapaughIndiaAmy Elsner PROPOSAL
Izzy N MarrierRussiaBernardo Dominic NEW
Kaitlin M MacleadIndiaOnyama Limba UNQUALIFIED
Silvio F ButtCanadaBernardo Dominic UNQUALIFIED
Juan A VenereRussiaBernardo Dominic RENEWAL
Alejandro A PaprockiIndiaAnna Fali PROPOSAL
Aditya Q CaudyJapanIoni Bowcher NEW
Octavia I GillianFranceIvan Magalhaes NEW
Arvin O ButtItalyBernardo Dominic QUALIFIED
Francesco A MaletJapanXuxue Feng NEGOTIATION
James F FigeroaCanadaBernardo Dominic NEGOTIATION
Johnson L SlusarskiCanadaStephen Shaw UNQUALIFIED
Tony P DilliardIndiaBernardo Dominic UNQUALIFIED
Frozen Columns
Name
Smith B Nicka
Mujtaba Y Nestle
Jeanfrancois E Dilliard
Kadeem B Nicka
Mujtaba N Malet
Leon H Figeroa
Tony T Rulapaugh
Jeanfrancois Y Schemmer
Costa J Saylors
Juan Q Flosi
Claire N Chui
Chavez R Oldroyd
Ricardo H Foller
Salvatore V Rim
Claire F Gaucho
Rodrigues G Chui
James W Shinko
Alejandro Z Stenseth
Mujtaba J Morasca
Salvatore A Bolognia
Nicolas W Vocelka
Greenwood Z Bolognia
Rodrigues C Tollner
Murillo N Darakjy
Nicolas H Oldroyd
Jennifer V Royster
Maria P Nestle
Greenwood E Ostrosky
Leon G Caudy
David R Rulapaugh
Ashley G Perin
Ashley O Whobrey
Ashley D Iturbide
Leja B Ferencz
Rodrigues J Foller
Misaki V Perin
Sinclair X Doe
Stacey I Maclead
Ashley H Amigon
David K Nicka
Alejandro Q Albares
Cody C Kusko
Darci R Whobrey
Munro H Whobrey
Maria R Whobrey
Ashley O Malet
Leja O Darakjy
Juan J Briddick
Johnson D Slusarski
Salvatore F Wieser
IdCountryDate
1000Japan2026-10-20
1001Australia2026-10-01
1002Australia2026-10-03
1003Russia2026-09-28
1004India2026-10-09
1005Argentina2026-10-08
1006Brazil2026-10-04
1007Australia2026-10-03
1008Argentina2026-10-17
1009Russia2026-10-27
1010Germany2026-10-16
1011Argentina2026-10-22
1012Germany2026-09-30
1013India2026-10-10
1014Italy2026-10-05
1015Argentina2026-10-07
1016Italy2026-10-25
1017India2026-10-18
1018Japan2026-10-09
1019Germany2026-10-16
1020Japan2026-10-20
1021Italy2026-09-30
1022United Kingdom2026-10-08
1023Argentina2026-10-04
1024Italy2026-10-27
1025Italy2026-10-11
1026France2026-10-12
1027Brazil2026-10-21
1028Brazil2026-10-21
1029Argentina2026-10-25
1030Argentina2026-10-04
1031Russia2026-10-26
1032Australia2026-10-09
1033Australia2026-10-05
1034Germany2026-10-23
1035India2026-10-26
1036Japan2026-10-06
1037Canada2026-10-11
1038Argentina2026-10-18
1039Australia2026-10-10
1040Japan2026-10-15
1041Argentina2026-09-28
1042Japan2026-10-05
1043Spain2026-09-30
1044Brazil2026-10-15
1045Argentina2026-10-22
1046France2026-10-02
1047Canada2026-10-16
1048India2026-10-15
1049Brazil2026-10-07

On-Demand Data

NameIdCountryDate
Salvatore V Malet1000Argentina2026-10-19
Misaki D Flosi1001Brazil2026-10-11
Jeanfrancois H Maclead1002Brazil2026-10-15
Sinclair K Bowley1003Germany2026-10-10
Costa L Glick1004Italy2026-10-20
Clifford U Malet1005France2026-09-28
Maria G Caudy1006Russia2026-10-01
Leja R Caudy1007Japan2026-10-17
Faith S Marrier1008Russia2026-10-25
Aika H Whobrey1009Argentina2026-10-17
Wickens A Saylors1010Canada2026-10-02
Sinclair E Doe1011Argentina2026-10-09
Juan W Vocelka1012Russia2026-10-22
Juan W Oldroyd1013Brazil2026-10-10
Clifford C Gaucho1014Italy2026-09-28
Arvin T Ruta1015Canada2026-10-09
Silvio B Vocelka1016Italy2026-10-27
Jones A Doe1017France2026-09-28
Chavez Z Ruta1018India2026-10-11
Aika L Rulapaugh1019Brazil2026-10-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio N GillianFranceStephen Shaw NEGOTIATION
Francesco Q GillianCanadaElwin Sharvill NEW
Mayumi F KuskoGermanyBernardo Dominic PROPOSAL
Ashley V WieserCanadaIoni Bowcher PROPOSAL
Salvatore C ShinkoGermanyStephen Shaw NEW
Darci E DarakjyFranceIoni Bowcher PROPOSAL
Julie O NestleGermanyStephen Shaw QUALIFIED
Aditya R IturbideCanadaAmy Elsner QUALIFIED
Greenwood V StockhamUnited KingdomIvan Magalhaes PROPOSAL
Maisha G InouyeRussiaElwin Sharvill UNQUALIFIED
Leon Q ChuiIndiaOnyama Limba QUALIFIED
Ivar N ChuiGermanyBernardo Dominic PROPOSAL
Julie D PerinRussiaAmy Elsner NEW
Isabel M PaprockiFranceAnna Fali NEW
Ivar A AmigonSpainOnyama Limba UNQUALIFIED
Izzy V ButtCanadaElwin Sharvill NEW
Murillo J CaldareraRussiaXuxue Feng QUALIFIED
Adams S VenereCanadaElwin Sharvill NEGOTIATION
Aruna L CaldareraItalyOnyama Limba PROPOSAL
Mujtaba L BologniaGermanyAsiya Javayant UNQUALIFIED
Kaitlin D WhobreyJapanStephen Shaw RENEWAL
Murillo V ShinkoAustraliaAmy Elsner NEW
Silvio D BriddickRussiaXuxue Feng NEW
Murillo R ChuiJapanAsiya Javayant PROPOSAL
Munro P MaletIndiaXuxue Feng PROPOSAL
Darci G BriddickFranceStephen Shaw PROPOSAL
Antonio Q SaylorsCanadaAmy Elsner RENEWAL
David N WaycottUnited KingdomStephen Shaw NEGOTIATION
Mayumi R ButtUnited KingdomStephen Shaw PROPOSAL
Darci A OldroydItalyIvan Magalhaes RENEWAL
Silvio Z SergiAustraliaBernardo Dominic NEW
Jefferson I RulapaughSpainIoni Bowcher UNQUALIFIED
Ivar W MacleadIndiaAnna Fali RENEWAL
Clifford M SaylorsBrazilStephen Shaw NEW
Claire E ButtGermanyIvan Magalhaes UNQUALIFIED
Aika N AmigonGermanyAnna Fali UNQUALIFIED
Julie Q RutaCanadaAnna Fali NEGOTIATION
Francesco J RutaItalyIvan Magalhaes QUALIFIED
Leon U MorascaSpainIvan Magalhaes RENEWAL
Jeanfrancois N RimItalyAsiya Javayant 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>