Summer Sale is here 🏖️ Get 50% off with code PRSM25 Learn More

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
Julie M CaldareraFranceIvan Magalhaes PROPOSAL
Izzy C RulapaughFranceBernardo Dominic PROPOSAL
Antonio O GlickUnited KingdomAnna Fali NEW
Antonio K BologniaGermanyBernardo Dominic UNQUALIFIED
Darci H NickaAustraliaOnyama Limba NEW
Silvio B WhobreySpainBernardo Dominic NEW
Jennifer F SchemmerItalyAmy Elsner PROPOSAL
Murillo P ButtCanadaAnna Fali PROPOSAL
Ashley R IturbideRussiaAnna Fali NEW
Aditya B FollerFranceAmy Elsner PROPOSAL
Isabel E RimUnited KingdomStephen Shaw NEW
Alejandro G ChuiArgentinaIvan Magalhaes PROPOSAL
Jefferson J MaletGermanyAmy Elsner NEGOTIATION
Sinclair R MacleadGermanyElwin Sharvill NEW
Tony M DoeSpainElwin Sharvill NEGOTIATION
Cody X DoeIndiaElwin Sharvill NEGOTIATION
James B KuskoCanadaAsiya Javayant RENEWAL
Mayumi F BowleyUnited KingdomOnyama Limba RENEWAL
Izzy L TollnerSpainBernardo Dominic UNQUALIFIED
Clifford X GlickRussiaBernardo Dominic QUALIFIED
Stacey N VocelkaIndiaIvan Magalhaes NEW
Emily W GauchoJapanStephen Shaw QUALIFIED
Chavez I FollerCanadaIvan Magalhaes PROPOSAL
Darci C WieserRussiaIoni Bowcher QUALIFIED
Aruna X SchemmerBrazilIoni Bowcher NEW
David M PoquetteJapanIvan Magalhaes UNQUALIFIED
Murillo P WieserGermanyElwin Sharvill RENEWAL
Sinclair Y GillianUnited KingdomElwin Sharvill UNQUALIFIED
Johnson B KuskoSpainBernardo Dominic PROPOSAL
Aditya T MacleadGermanyIoni Bowcher NEGOTIATION
Aruna T InouyeJapanAnna Fali PROPOSAL
James N MaletFranceStephen Shaw NEW
Leja G FollerArgentinaIoni Bowcher NEGOTIATION
Izzy B RoysterIndiaIvan Magalhaes PROPOSAL
Emily S BologniaAustraliaBernardo Dominic RENEWAL
Aruna U AlbaresSpainAsiya Javayant NEGOTIATION
Jennifer T GarufiIndiaOnyama Limba QUALIFIED
Juan C SchemmerGermanyXuxue Feng QUALIFIED
Leon A OstroskyArgentinaElwin Sharvill NEW
Greenwood G SlusarskiArgentinaStephen Shaw QUALIFIED
Rodrigues U VenereGermanyAsiya Javayant NEGOTIATION
Munro P GauchoRussiaXuxue Feng PROPOSAL
Jefferson U VenereUnited KingdomAmy Elsner NEW
Smith M KolmetzJapanAsiya Javayant RENEWAL
Adams O CaldareraIndiaOnyama Limba RENEWAL
Mayumi T TollnerSpainAmy Elsner NEGOTIATION
Deepesh S MaletJapanIoni Bowcher NEW
Jennifer Q SergiItalyIvan Magalhaes NEW
Maisha R BologniaJapanIoni Bowcher NEGOTIATION
Tony S SaylorsGermanyOnyama Limba NEW
Horizontal
NameCountryRepresentativeStatus
Aruna B SaylorsAustraliaIvan Magalhaes UNQUALIFIED
Faith L SlusarskiUnited KingdomBernardo Dominic QUALIFIED
Smith M FlosiAustraliaIoni Bowcher RENEWAL
Stacey W InouyeBrazilAnna Fali UNQUALIFIED
Murillo S MaletGermanyOnyama Limba RENEWAL
Salvatore P MacleadAustraliaOnyama Limba RENEWAL
Jones H MarrierFranceElwin Sharvill NEW
Costa J AlbaresFranceStephen Shaw NEGOTIATION
Izzy J FigeroaJapanElwin Sharvill RENEWAL
Jefferson B SaylorsArgentinaIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Izzy L GarufiGermany2025-09-19Chapman, Ross E Esq NEGOTIATION19Xuxue Feng
1001Jones Q OldroydAustralia2025-10-07Benton, John B Jr NEGOTIATION2Xuxue Feng
1002Leon U SergiCanada2025-10-09Chapman, Ross E Esq QUALIFIED65Anna Fali
1003Rodrigues E GlickJapan2025-09-27Feiner Bros PROPOSAL88Xuxue Feng
1004Aruna N BowleyIndia2025-09-22Chemel, James L Cpa QUALIFIED9Asiya Javayant
1005Maria K StockhamCanada2025-10-08Feiner Bros PROPOSAL57Elwin Sharvill
1006Faith R KolmetzRussia2025-10-17Feiner Bros RENEWAL53Xuxue Feng
1007Arvin V MaletBrazil2025-10-18Feltz Printing Service PROPOSAL21Elwin Sharvill
1008Antonio W StockhamSpain2025-10-16Buckley Miller Wright RENEWAL98Amy Elsner
1009Jennifer S OstroskyBrazil2025-09-22Feltz Printing Service QUALIFIED99Asiya Javayant
1010Izzy T StensethIndia2025-09-21Feiner Bros QUALIFIED56Anna Fali
1011Octavia H CaudyUnited Kingdom2025-09-20Rangoni Of Florence PROPOSAL7Onyama Limba
1012Juan I FerenczFrance2025-09-26Feltz Printing Service QUALIFIED39Onyama Limba
1013David G RoysterCanada2025-10-03King, Christopher A Esq QUALIFIED8Stephen Shaw
1014Jefferson W StockhamIndia2025-09-22Buckley Miller Wright NEW48Elwin Sharvill
1015Nicolas B GauchoItaly2025-09-29Buckley Miller Wright RENEWAL3Ivan Magalhaes
1016James O FollerItaly2025-10-08Dorl, James J Esq QUALIFIED7Stephen Shaw
1017Aika L DarakjyItaly2025-10-06Truhlar And Truhlar Attys NEGOTIATION89Asiya Javayant
1018James U ChuiUnited Kingdom2025-10-16Benton, John B Jr RENEWAL12Onyama Limba
1019Smith I SlusarskiRussia2025-10-11Benton, John B Jr NEGOTIATION45Onyama Limba
1020Smith M SlusarskiAustralia2025-10-06Rangoni Of Florence UNQUALIFIED58Elwin Sharvill
1021Deepesh A GauchoSpain2025-10-13Rousseaux, Michael Esq NEW88Xuxue Feng
1022Nicolas P RulapaughFrance2025-09-19Dorl, James J Esq NEW74Amy Elsner
1023Stacey E FerenczSpain2025-09-29Benton, John B Jr UNQUALIFIED62Bernardo Dominic
1024Jones U FlosiItaly2025-09-26Morlong Associates UNQUALIFIED76Stephen Shaw
1025Antonio K SchemmerCanada2025-10-07Dorl, James J Esq NEW51Elwin Sharvill
1026Greenwood G ButtIndia2025-10-09Feltz Printing Service UNQUALIFIED72Elwin Sharvill
1027Murillo I KolmetzItaly2025-10-13Morlong Associates NEW79Asiya Javayant
1028Smith P TollnerBrazil2025-09-22Truhlar And Truhlar Attys QUALIFIED47Ioni Bowcher
1029Francesco T ButtCanada2025-09-26Feltz Printing Service RENEWAL85Ioni Bowcher
1030Emily P FlosiBrazil2025-09-23Feiner Bros NEW90Ivan Magalhaes
1031Leon S VenereRussia2025-09-21Morlong Associates QUALIFIED51Ioni Bowcher
1032Leon Z DoeArgentina2025-10-16Chapman, Ross E Esq NEGOTIATION45Amy Elsner
1033Alejandro Y MaletItaly2025-09-27Feltz Printing Service UNQUALIFIED7Anna Fali
1034Maria A GarufiUnited Kingdom2025-10-09Chanay, Jeffrey A Esq UNQUALIFIED52Asiya Javayant
1035Juan A KolmetzIndia2025-10-12Feiner Bros QUALIFIED67Bernardo Dominic
1036Clifford P RutaCanada2025-10-14Commercial Press UNQUALIFIED85Anna Fali
1037Kaitlin P InouyeBrazil2025-10-15Chanay, Jeffrey A Esq QUALIFIED83Xuxue Feng
1038Arvin M ChuiJapan2025-10-09Morlong Associates UNQUALIFIED89Anna Fali
1039Mujtaba B SergiSpain2025-10-03Morlong Associates QUALIFIED23Ioni Bowcher
1040Ashley L RulapaughSpain2025-10-01Feltz Printing Service RENEWAL14Elwin Sharvill
1041Smith B IturbideCanada2025-10-05Rangoni Of Florence PROPOSAL84Asiya Javayant
1042Smith G MorascaGermany2025-09-23Chanay, Jeffrey A Esq UNQUALIFIED29Ivan Magalhaes
1043Deepesh V FerenczRussia2025-10-11Morlong Associates QUALIFIED27Bernardo Dominic
1044Ashley N ShinkoItaly2025-09-27Rangoni Of Florence NEW75Bernardo Dominic
1045Maisha W IturbideCanada2025-10-03Rousseaux, Michael Esq NEGOTIATION59Xuxue Feng
1046Alejandro W DilliardJapan2025-09-30Chapman, Ross E Esq UNQUALIFIED63Ivan Magalhaes
1047Arvin B TollnerGermany2025-10-15Chapman, Ross E Esq UNQUALIFIED49Ioni Bowcher
1048Juan W WaycottFrance2025-10-08Rousseaux, Michael Esq PROPOSAL91Amy Elsner
1049Stacey G MaletSpain2025-10-18Commercial Press NEGOTIATION51Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
James Z ButtAustraliaBernardo Dominic NEW
Costa A WhobreyCanadaAsiya Javayant NEGOTIATION
Jeanfrancois U VocelkaRussiaStephen Shaw UNQUALIFIED
Octavia D GlickIndiaIoni Bowcher NEGOTIATION
Mayumi C VocelkaArgentinaAmy Elsner RENEWAL
Izzy W OldroydCanadaElwin Sharvill NEGOTIATION
Murillo U GarufiGermanyAsiya Javayant UNQUALIFIED
Chavez U KuskoUnited KingdomIvan Magalhaes PROPOSAL
Mayumi U FlosiUnited KingdomAsiya Javayant NEGOTIATION
Nicolas C MaletAustraliaIvan Magalhaes RENEWAL
Aruna K GarufiJapanAsiya Javayant UNQUALIFIED
Jennifer Z DoeBrazilAsiya Javayant UNQUALIFIED
Isabel I GlickFranceElwin Sharvill RENEWAL
Misaki C GarufiGermanyAmy Elsner RENEWAL
David U FollerArgentinaElwin Sharvill RENEWAL
Ricardo C FollerCanadaXuxue Feng RENEWAL
Mujtaba D MarrierItalyAnna Fali PROPOSAL
Arvin U WaycottArgentinaIvan Magalhaes NEW
Aditya I CampainGermanyIvan Magalhaes UNQUALIFIED
Jefferson M NestleBrazilElwin Sharvill NEW
Jones D VenereGermanyAnna Fali RENEWAL
Stacey G NickaArgentinaElwin Sharvill PROPOSAL
Mujtaba N MacleadSpainOnyama Limba QUALIFIED
Isabel U FerenczArgentinaElwin Sharvill RENEWAL
Izzy N GillianBrazilAmy Elsner NEGOTIATION
Nicolas K SaylorsItalyIvan Magalhaes NEGOTIATION
Maisha T VocelkaCanadaStephen Shaw NEGOTIATION
Smith O NickaRussiaBernardo Dominic PROPOSAL
Aruna R AmigonUnited KingdomAsiya Javayant QUALIFIED
Murillo Q StensethCanadaIoni Bowcher NEGOTIATION
Chavez F BriddickAustraliaAmy Elsner PROPOSAL
Jefferson T CaudyIndiaIvan Magalhaes PROPOSAL
Darci V DarakjyGermanyOnyama Limba PROPOSAL
Izzy D AlbaresBrazilBernardo Dominic QUALIFIED
Morrow S OstroskyFranceAnna Fali NEGOTIATION
Smith C WieserItalyAsiya Javayant QUALIFIED
Kadeem T DoeItalyAnna Fali PROPOSAL
James I MorascaItalyAmy Elsner RENEWAL
Faith Q WhobreyFranceXuxue Feng QUALIFIED
Tony I OldroydRussiaAnna Fali RENEWAL
Aika P ShinkoFranceBernardo Dominic UNQUALIFIED
Adams Y CaldareraGermanyStephen Shaw RENEWAL
Kaitlin Z ShinkoArgentinaIoni Bowcher PROPOSAL
Julie F MaletJapanIoni Bowcher PROPOSAL
Kaitlin V DilliardItalyStephen Shaw NEGOTIATION
David B ChuiBrazilAsiya Javayant PROPOSAL
Cody Y SchemmerIndiaElwin Sharvill NEGOTIATION
Octavia Y VenereItalyAmy Elsner NEGOTIATION
Aruna P MarrierIndiaAnna Fali RENEWAL
Leja K NickaBrazilAmy Elsner RENEWAL
Frozen Columns
Name
Deepesh H Caldarera
Aika Z Venere
Arvin M Nicka
David X Kolmetz
Ivar X Kusko
Costa H Foller
Costa N Slusarski
Ricardo B Iturbide
Jones J Bolognia
Wickens G Marrier
Nicolas A Campain
Kaitlin F Schemmer
Kaitlin S Rim
Sinclair B Ostrosky
Mujtaba P Flosi
Costa S Darakjy
Adams M Figeroa
Deepesh O Tollner
Smith Z Campain
Sinclair J Rulapaugh
Cody D Whobrey
Kadeem R Schemmer
Kaitlin O Briddick
Morrow Y Saylors
Antonio N Flosi
Morrow L Venere
Kadeem J Sergi
Cody P Ferencz
Cody Z Bolognia
Leon Y Malet
James O Morasca
Munro Q Slusarski
Julie I Foller
Darci J Albares
Silvio U Stockham
Ricardo D Saylors
Octavia X Albares
Deepesh Q Malet
James N Gaucho
Ivar T Albares
Julie Q Darakjy
Jennifer R Ferencz
Antonio Y Sergi
Misaki H Gaucho
Maria V Caudy
Maisha U Kusko
James D Dilliard
Adams F Inouye
Costa C Bowley
Maria I Malet
IdCountryDate
1000Argentina2025-09-21
1001Argentina2025-10-09
1002France2025-10-05
1003France2025-10-01
1004Italy2025-09-27
1005Japan2025-09-25
1006Russia2025-09-27
1007United Kingdom2025-10-09
1008France2025-10-16
1009Brazil2025-10-12
1010Brazil2025-09-20
1011France2025-10-08
1012Canada2025-09-27
1013Spain2025-10-13
1014Canada2025-10-12
1015United Kingdom2025-09-19
1016United Kingdom2025-09-22
1017Brazil2025-10-07
1018Russia2025-09-25
1019United Kingdom2025-10-10
1020Italy2025-09-20
1021Argentina2025-10-12
1022Argentina2025-10-10
1023Australia2025-09-30
1024Argentina2025-10-16
1025Russia2025-10-04
1026Canada2025-10-18
1027Argentina2025-10-12
1028Australia2025-09-30
1029India2025-10-09
1030Germany2025-10-04
1031Spain2025-10-15
1032Australia2025-09-25
1033Argentina2025-10-15
1034Germany2025-10-07
1035Canada2025-10-18
1036Italy2025-09-25
1037France2025-09-21
1038Canada2025-10-13
1039United Kingdom2025-09-23
1040Russia2025-10-13
1041Australia2025-10-02
1042Russia2025-09-29
1043Spain2025-10-15
1044Canada2025-10-03
1045Spain2025-10-07
1046Australia2025-09-20
1047Italy2025-10-03
1048Italy2025-10-16
1049Germany2025-10-05

On-Demand Data

NameIdCountryDate
Mujtaba J Wieser1000Russia2025-10-16
Darci G Malet1001Australia2025-09-21
Wickens Z Waycott1002Germany2025-09-20
Mujtaba Z Briddick1003France2025-10-11
Jones R Kolmetz1004Italy2025-10-09
Kaitlin T Darakjy1005Spain2025-10-10
Jefferson H Venere1006India2025-10-07
Nicolas O Malet1007Brazil2025-09-20
Francesco U Nicka1008Russia2025-10-18
Smith N Doe1009Italy2025-09-21
Rodrigues J Caldarera1010United Kingdom2025-09-21
Izzy N Nestle1011United Kingdom2025-10-08
Clifford N Wieser1012Spain2025-09-29
Ashley K Chui1013Japan2025-09-29
Emily G Bowley1014Argentina2025-10-02
Faith F Whobrey1015Brazil2025-10-12
Misaki H Stenseth1016Argentina2025-09-29
Jones N Vocelka1017Russia2025-10-18
Julie V Bolognia1018Russia2025-09-28
Salvatore R Shinko1019Germany2025-09-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow S CaudyGermanyAnna Fali RENEWAL
Jeanfrancois Y ChuiJapanAnna Fali RENEWAL
Ricardo Q BriddickCanadaXuxue Feng NEGOTIATION
Ashley O InouyeBrazilOnyama Limba NEW
Greenwood N GlickGermanyAsiya Javayant QUALIFIED
Tony V DilliardCanadaIvan Magalhaes PROPOSAL
Salvatore K MorascaJapanBernardo Dominic PROPOSAL
Silvio G WieserGermanyIoni Bowcher QUALIFIED
Greenwood B CaudyJapanElwin Sharvill NEGOTIATION
Aditya A OldroydSpainXuxue Feng UNQUALIFIED
Greenwood K RulapaughBrazilIoni Bowcher RENEWAL
Faith N IturbideArgentinaXuxue Feng NEW
Jeanfrancois S FerenczFranceIvan Magalhaes PROPOSAL
Costa D MacleadSpainIoni Bowcher NEGOTIATION
Jennifer I InouyeUnited KingdomIvan Magalhaes QUALIFIED
Silvio P FollerCanadaAnna Fali UNQUALIFIED
Isabel C MacleadUnited KingdomOnyama Limba RENEWAL
Julie J IturbideUnited KingdomBernardo Dominic QUALIFIED
Alejandro Y SergiAustraliaXuxue Feng NEGOTIATION
Ashley K BriddickJapanStephen Shaw NEGOTIATION
Juan W IturbideAustraliaAmy Elsner NEW
Tony P PerinRussiaOnyama Limba QUALIFIED
Jennifer M CaldareraCanadaIvan Magalhaes UNQUALIFIED
Jefferson T BowleyFranceAsiya Javayant NEW
Kaitlin R ChuiCanadaStephen Shaw NEGOTIATION
Darci Q MorascaIndiaIvan Magalhaes UNQUALIFIED
Costa Z DoeJapanIoni Bowcher PROPOSAL
Costa V MaletJapanElwin Sharvill UNQUALIFIED
Misaki H TollnerItalyOnyama Limba QUALIFIED
Emily W MacleadAustraliaElwin Sharvill PROPOSAL
Tony A SlusarskiIndiaIoni Bowcher PROPOSAL
Chavez J WieserJapanIvan Magalhaes NEGOTIATION
Darci V OstroskyFranceAnna Fali QUALIFIED
Rodrigues G CampainUnited KingdomAnna Fali RENEWAL
Nicolas I NickaUnited KingdomBernardo Dominic UNQUALIFIED
Leja P MarrierIndiaElwin Sharvill PROPOSAL
Emily K RutaIndiaIoni Bowcher PROPOSAL
Claire M InouyeAustraliaIvan Magalhaes NEW
Isabel A AlbaresSpainXuxue Feng QUALIFIED
Aditya W IturbideIndiaAnna Fali 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>