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
Emily Q WhobreyJapanElwin Sharvill RENEWAL
Munro Q PaprockiBrazilIoni Bowcher UNQUALIFIED
Salvatore Y MorascaIndiaAsiya Javayant UNQUALIFIED
Maisha D GauchoIndiaStephen Shaw NEGOTIATION
Silvio K PaprockiBrazilIvan Magalhaes RENEWAL
Leon Z MaletIndiaIoni Bowcher RENEWAL
Ricardo K CaldareraUnited KingdomBernardo Dominic RENEWAL
Sinclair E AmigonGermanyElwin Sharvill NEW
Nicolas P DarakjySpainIoni Bowcher PROPOSAL
David Z NestleCanadaIvan Magalhaes PROPOSAL
David N WieserFranceXuxue Feng QUALIFIED
David Y OldroydAustraliaAsiya Javayant NEW
Munro Z WaycottGermanyAsiya Javayant NEGOTIATION
Isabel H InouyeGermanyIoni Bowcher PROPOSAL
Ivar N PaprockiGermanyAnna Fali QUALIFIED
Maria W StockhamItalyElwin Sharvill RENEWAL
Costa S SergiRussiaOnyama Limba NEW
Costa X PaprockiSpainAnna Fali NEGOTIATION
Claire F RoysterSpainIoni Bowcher RENEWAL
Misaki Q MaletBrazilIoni Bowcher RENEWAL
Octavia A OstroskyCanadaIoni Bowcher RENEWAL
Jeanfrancois X CaudyUnited KingdomAsiya Javayant RENEWAL
Sinclair P StockhamUnited KingdomOnyama Limba NEW
Clifford V AlbaresCanadaIoni Bowcher RENEWAL
Maria I SlusarskiCanadaXuxue Feng RENEWAL
Munro N RulapaughCanadaAmy Elsner RENEWAL
Aika N AlbaresIndiaAnna Fali NEW
Aditya B FollerItalyIoni Bowcher NEW
Arvin V PaprockiCanadaIvan Magalhaes UNQUALIFIED
Julie F ShinkoSpainAsiya Javayant RENEWAL
David B IturbideFranceIoni Bowcher PROPOSAL
Salvatore N DoeIndiaXuxue Feng QUALIFIED
Salvatore X ButtIndiaStephen Shaw UNQUALIFIED
Silvio W NickaSpainStephen Shaw UNQUALIFIED
Kaitlin J SergiSpainStephen Shaw NEGOTIATION
Smith U CaldareraJapanOnyama Limba QUALIFIED
Deepesh R ShinkoSpainAsiya Javayant QUALIFIED
Murillo X SaylorsJapanAsiya Javayant NEGOTIATION
Silvio G GauchoUnited KingdomOnyama Limba PROPOSAL
Juan N KuskoFranceXuxue Feng RENEWAL
Cody P GillianFranceBernardo Dominic QUALIFIED
Ricardo A AmigonGermanyAnna Fali NEGOTIATION
Tony E GillianUnited KingdomIoni Bowcher PROPOSAL
Jones E DarakjyGermanyAsiya Javayant QUALIFIED
Stacey Y InouyeBrazilIvan Magalhaes NEGOTIATION
Rodrigues W CaldareraCanadaXuxue Feng QUALIFIED
Rodrigues R MacleadArgentinaElwin Sharvill NEGOTIATION
Arvin T InouyeItalyBernardo Dominic RENEWAL
Aika C FollerGermanyAmy Elsner RENEWAL
Antonio X StensethItalyIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Francesco L RimUnited KingdomAsiya Javayant QUALIFIED
Leon G GarufiUnited KingdomStephen Shaw NEGOTIATION
Deepesh M MacleadCanadaIvan Magalhaes NEGOTIATION
Jeanfrancois T BriddickRussiaAmy Elsner QUALIFIED
Greenwood V FollerIndiaOnyama Limba QUALIFIED
Octavia Z IturbideJapanXuxue Feng NEW
Juan F ChuiIndiaIvan Magalhaes PROPOSAL
Stacey U StensethIndiaOnyama Limba QUALIFIED
Ricardo G GauchoArgentinaStephen Shaw NEW
Munro O MarrierRussiaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey S DarakjyAustralia2025-10-14Feltz Printing Service RENEWAL11Asiya Javayant
1001Leja Q CaudySpain2025-09-22Chanay, Jeffrey A Esq NEGOTIATION72Onyama Limba
1002Darci I IturbideUnited Kingdom2025-09-18Feiner Bros RENEWAL0Onyama Limba
1003Faith Z RoysterRussia2025-10-11Feiner Bros QUALIFIED61Anna Fali
1004Misaki Y ShinkoRussia2025-10-10Truhlar And Truhlar Attys UNQUALIFIED63Stephen Shaw
1005David F PoquetteUnited Kingdom2025-10-04Feiner Bros NEW8Ioni Bowcher
1006Misaki A RulapaughItaly2025-09-29Feiner Bros NEW85Anna Fali
1007Leon D PoquetteBrazil2025-10-06Printing Dimensions QUALIFIED12Stephen Shaw
1008Nicolas O MacleadBrazil2025-09-18Dorl, James J Esq NEW11Xuxue Feng
1009Kaitlin U VenereGermany2025-10-13Rousseaux, Michael Esq QUALIFIED37Stephen Shaw
1010Stacey W OldroydCanada2025-10-04Chemel, James L Cpa PROPOSAL22Asiya Javayant
1011Ashley E MorascaSpain2025-09-20Printing Dimensions NEGOTIATION71Onyama Limba
1012Ashley F ChuiItaly2025-09-18Rousseaux, Michael Esq PROPOSAL45Xuxue Feng
1013Mayumi Y OstroskyUnited Kingdom2025-09-30Printing Dimensions NEW47Onyama Limba
1014Smith B KolmetzCanada2025-09-15Chemel, James L Cpa UNQUALIFIED13Asiya Javayant
1015Morrow L FlosiIndia2025-10-03Chapman, Ross E Esq RENEWAL0Bernardo Dominic
1016Clifford G KolmetzAustralia2025-10-06Truhlar And Truhlar Attys RENEWAL29Onyama Limba
1017Smith C GarufiItaly2025-09-21Feltz Printing Service UNQUALIFIED61Ioni Bowcher
1018Maria P GillianJapan2025-10-10Rangoni Of Florence QUALIFIED45Amy Elsner
1019Silvio K GlickBrazil2025-10-09King, Christopher A Esq NEGOTIATION75Ioni Bowcher
1020Stacey S MaletItaly2025-10-06Chapman, Ross E Esq QUALIFIED61Ioni Bowcher
1021Juan W WieserSpain2025-09-29Benton, John B Jr QUALIFIED91Elwin Sharvill
1022Juan M MaletFrance2025-10-07Feiner Bros PROPOSAL36Bernardo Dominic
1023Jeanfrancois T RulapaughCanada2025-10-12Feltz Printing Service NEGOTIATION19Ioni Bowcher
1024Adams V TollnerRussia2025-10-09King, Christopher A Esq UNQUALIFIED49Stephen Shaw
1025Maisha S GarufiRussia2025-09-15Feltz Printing Service QUALIFIED87Ioni Bowcher
1026Mayumi F StensethFrance2025-10-04Feltz Printing Service NEW17Asiya Javayant
1027Aditya Y OldroydBrazil2025-09-30Morlong Associates QUALIFIED55Stephen Shaw
1028Octavia Y InouyeAustralia2025-09-30Dorl, James J Esq PROPOSAL41Amy Elsner
1029Mayumi X AlbaresAustralia2025-10-06Chanay, Jeffrey A Esq NEGOTIATION98Ivan Magalhaes
1030Rodrigues J InouyeUnited Kingdom2025-10-01Buckley Miller Wright NEW1Xuxue Feng
1031Morrow J MacleadItaly2025-09-30Printing Dimensions QUALIFIED51Amy Elsner
1032Arvin F GlickRussia2025-09-24Morlong Associates UNQUALIFIED99Stephen Shaw
1033Sinclair C GauchoArgentina2025-10-03Printing Dimensions PROPOSAL36Amy Elsner
1034Julie V CaudyBrazil2025-09-25Feltz Printing Service QUALIFIED64Stephen Shaw
1035Clifford E FigeroaIndia2025-09-26Dorl, James J Esq RENEWAL31Anna Fali
1036Kadeem I VenereIndia2025-09-27Morlong Associates QUALIFIED81Anna Fali
1037Salvatore F MacleadArgentina2025-09-24Rangoni Of Florence NEW47Onyama Limba
1038Arvin L FollerFrance2025-09-22Morlong Associates RENEWAL21Onyama Limba
1039Maria Y RulapaughJapan2025-10-04Feiner Bros QUALIFIED83Asiya Javayant
1040Rodrigues I OldroydItaly2025-10-11Truhlar And Truhlar Attys UNQUALIFIED85Anna Fali
1041Greenwood T GarufiFrance2025-09-27Truhlar And Truhlar Attys NEGOTIATION12Onyama Limba
1042Julie L DilliardIndia2025-10-12Morlong Associates UNQUALIFIED57Ivan Magalhaes
1043Jefferson O VocelkaAustralia2025-10-01King, Christopher A Esq NEW45Ioni Bowcher
1044Darci I GlickArgentina2025-10-13Chanay, Jeffrey A Esq QUALIFIED0Onyama Limba
1045Jones V NestleUnited Kingdom2025-09-27Chanay, Jeffrey A Esq PROPOSAL10Elwin Sharvill
1046Costa I VenereBrazil2025-10-03Feiner Bros PROPOSAL12Asiya Javayant
1047Julie S RutaSpain2025-10-06Feiner Bros QUALIFIED19Bernardo Dominic
1048Octavia O DarakjyCanada2025-10-03King, Christopher A Esq PROPOSAL4Amy Elsner
1049Jefferson U GillianJapan2025-09-21Benton, John B Jr UNQUALIFIED85Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Julie G PaprockiIndiaIoni Bowcher NEGOTIATION
Antonio N MaletSpainXuxue Feng UNQUALIFIED
Ricardo O OldroydBrazilBernardo Dominic QUALIFIED
Misaki M DarakjyItalyIvan Magalhaes QUALIFIED
Maria K MarrierIndiaXuxue Feng PROPOSAL
Sinclair G MaletUnited KingdomXuxue Feng NEGOTIATION
Jefferson Z PerinRussiaStephen Shaw NEGOTIATION
Misaki F FerenczAustraliaIoni Bowcher NEW
Johnson N AlbaresRussiaAmy Elsner UNQUALIFIED
Jennifer K TollnerGermanyBernardo Dominic PROPOSAL
Salvatore A PoquetteUnited KingdomElwin Sharvill RENEWAL
Claire M CaudyAustraliaXuxue Feng NEGOTIATION
Jeanfrancois R OldroydItalyIoni Bowcher NEGOTIATION
Ricardo X AmigonRussiaIoni Bowcher RENEWAL
Leja L MaletBrazilAnna Fali RENEWAL
Isabel B StockhamIndiaIoni Bowcher RENEWAL
Maisha P PoquetteUnited KingdomXuxue Feng NEW
Maisha F GauchoArgentinaElwin Sharvill NEGOTIATION
Antonio T PerinFranceXuxue Feng NEGOTIATION
Jefferson L StockhamBrazilOnyama Limba RENEWAL
Juan W RutaIndiaBernardo Dominic QUALIFIED
Salvatore R NickaCanadaIoni Bowcher NEW
David E MorascaRussiaStephen Shaw NEGOTIATION
Ivar K SchemmerSpainAsiya Javayant PROPOSAL
Sinclair X InouyeRussiaAsiya Javayant RENEWAL
Nicolas O GlickItalyStephen Shaw RENEWAL
Silvio C RoysterItalyXuxue Feng PROPOSAL
Kaitlin A AlbaresArgentinaOnyama Limba NEW
Arvin G RulapaughUnited KingdomStephen Shaw PROPOSAL
Maisha M MaletUnited KingdomIvan Magalhaes QUALIFIED
Wickens M PaprockiAustraliaIvan Magalhaes NEGOTIATION
Maisha E CaldareraGermanyXuxue Feng NEW
Emily U SchemmerAustraliaOnyama Limba PROPOSAL
Silvio B CaldareraJapanIvan Magalhaes RENEWAL
Aditya L RoysterRussiaOnyama Limba QUALIFIED
Cody A SaylorsIndiaElwin Sharvill UNQUALIFIED
Jefferson Y MarrierAustraliaStephen Shaw UNQUALIFIED
Ashley I MorascaItalyAmy Elsner RENEWAL
Leon L DarakjyArgentinaIvan Magalhaes UNQUALIFIED
Rodrigues A FlosiIndiaXuxue Feng QUALIFIED
Jennifer M KolmetzBrazilElwin Sharvill NEGOTIATION
Leja M WaycottSpainStephen Shaw NEW
Clifford D WaycottJapanOnyama Limba UNQUALIFIED
Ivar B GauchoItalyIoni Bowcher PROPOSAL
Ashley M TollnerGermanyIvan Magalhaes QUALIFIED
Clifford F GillianGermanyIvan Magalhaes NEW
Faith S FerenczCanadaXuxue Feng NEGOTIATION
Julie O StensethRussiaOnyama Limba RENEWAL
Mayumi J KuskoArgentinaAmy Elsner QUALIFIED
Darci T SlusarskiGermanyIvan Magalhaes RENEWAL
Frozen Columns
Name
Francesco T Stockham
Kaitlin A Slusarski
Alejandro W Figeroa
Jennifer L Poquette
Aika T Kolmetz
Aruna I Tollner
Maisha L Royster
James R Foller
Wickens J Waycott
Leon C Whobrey
Smith B Waycott
Octavia E Paprocki
Alejandro W Doe
Misaki X Dilliard
Octavia U Royster
Antonio V Shinko
Jennifer K Rim
Francesco S Albares
Salvatore P Ostrosky
Leja M Albares
Johnson B Flosi
Munro D Nestle
Costa N Foller
Emily Z Inouye
Arvin Z Ruta
Mayumi P Figeroa
Claire C Stockham
Isabel R Stenseth
Nicolas E Slusarski
Ashley L Tollner
Isabel T Nestle
Maria Z Waycott
Izzy T Campain
Morrow N Wieser
Johnson J Maclead
Greenwood N Gillian
Aika M Stenseth
Clifford E Caldarera
Clifford O Tollner
Emily Y Saylors
Rodrigues E Albares
Adams C Garufi
Silvio V Paprocki
Silvio X Ruta
Silvio Q Tollner
Jennifer G Ostrosky
Stacey F Ruta
Greenwood X Darakjy
Chavez B Albares
Faith Q Vocelka
IdCountryDate
1000Australia2025-09-23
1001Argentina2025-09-21
1002Brazil2025-09-20
1003Japan2025-10-04
1004Italy2025-10-04
1005Germany2025-09-15
1006Australia2025-10-08
1007Australia2025-09-21
1008Italy2025-10-02
1009Canada2025-10-01
1010Italy2025-09-22
1011Russia2025-10-02
1012United Kingdom2025-09-28
1013Canada2025-09-21
1014Italy2025-10-02
1015Argentina2025-09-28
1016Argentina2025-10-06
1017Russia2025-09-22
1018Japan2025-10-06
1019Argentina2025-09-21
1020Russia2025-09-21
1021Argentina2025-10-04
1022India2025-09-19
1023Italy2025-10-09
1024Italy2025-09-30
1025Canada2025-10-10
1026Australia2025-10-14
1027Russia2025-10-07
1028Japan2025-10-02
1029Japan2025-09-16
1030Italy2025-09-30
1031Canada2025-09-27
1032Italy2025-09-23
1033Germany2025-10-12
1034Canada2025-10-13
1035France2025-09-20
1036United Kingdom2025-09-16
1037Argentina2025-10-14
1038France2025-09-20
1039Canada2025-10-14
1040United Kingdom2025-10-14
1041Japan2025-09-15
1042France2025-09-27
1043Russia2025-10-11
1044India2025-10-04
1045India2025-09-25
1046India2025-10-11
1047Germany2025-09-30
1048Germany2025-09-30
1049Brazil2025-09-20

On-Demand Data

NameIdCountryDate
Juan R Marrier1000Japan2025-09-19
Ashley Q Saylors1001United Kingdom2025-09-19
Wickens N Caudy1002India2025-09-16
Francesco Y Nicka1003Japan2025-10-01
Rodrigues S Waycott1004Canada2025-09-23
Julie B Doe1005Spain2025-09-19
Morrow O Flosi1006Spain2025-09-21
Greenwood S Garufi1007France2025-10-10
Adams T Ruta1008France2025-09-15
Tony W Vocelka1009United Kingdom2025-10-09
Jefferson Q Perin1010Argentina2025-09-25
Jennifer E Maclead1011France2025-10-11
Murillo C Malet1012Spain2025-09-20
David E Campain1013Japan2025-10-08
Julie R Bolognia1014Russia2025-09-28
Greenwood R Garufi1015India2025-10-09
Leon O Venere1016Germany2025-09-18
James T Rulapaugh1017Australia2025-10-11
Aditya D Wieser1018Argentina2025-10-06
Sinclair F Shinko1019France2025-09-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood G MaletSpainAsiya Javayant UNQUALIFIED
Morrow F BowleyIndiaAsiya Javayant QUALIFIED
Costa U GarufiSpainOnyama Limba QUALIFIED
Murillo Y SaylorsRussiaAsiya Javayant NEGOTIATION
Rodrigues G GillianJapanAnna Fali QUALIFIED
Sinclair A DoeUnited KingdomStephen Shaw RENEWAL
Faith Q NickaIndiaAmy Elsner UNQUALIFIED
Ivar U CaldareraArgentinaAmy Elsner NEW
Salvatore K WhobreyArgentinaBernardo Dominic NEW
Jeanfrancois N GauchoItalyBernardo Dominic QUALIFIED
Greenwood V StensethSpainAsiya Javayant PROPOSAL
Aika S AlbaresJapanIvan Magalhaes NEGOTIATION
Izzy Q OldroydSpainAnna Fali UNQUALIFIED
Ashley Z FollerGermanyAmy Elsner QUALIFIED
Adams A PoquetteFranceIoni Bowcher QUALIFIED
Leja Q AmigonRussiaIvan Magalhaes NEW
Leja R WhobreyFranceElwin Sharvill NEGOTIATION
Cody Z MaletFranceStephen Shaw QUALIFIED
Murillo Z OldroydArgentinaStephen Shaw PROPOSAL
Aditya B FigeroaCanadaOnyama Limba UNQUALIFIED
Salvatore U InouyeCanadaXuxue Feng NEW
Claire U VenereRussiaAnna Fali NEGOTIATION
Smith K DoeGermanyAmy Elsner PROPOSAL
Kadeem Z BologniaRussiaOnyama Limba PROPOSAL
Silvio A GillianSpainElwin Sharvill UNQUALIFIED
Salvatore Q AlbaresFranceAnna Fali RENEWAL
Johnson M SergiIndiaAnna Fali PROPOSAL
Misaki W NickaAustraliaStephen Shaw QUALIFIED
Costa E StensethArgentinaAsiya Javayant PROPOSAL
Mujtaba K PoquetteCanadaBernardo Dominic QUALIFIED
Alejandro B WaycottIndiaBernardo Dominic QUALIFIED
Jones D CampainRussiaXuxue Feng QUALIFIED
Rodrigues H RoysterSpainIvan Magalhaes RENEWAL
Faith J DilliardAustraliaAsiya Javayant NEGOTIATION
Rodrigues V PaprockiGermanyElwin Sharvill NEGOTIATION
Silvio A GarufiGermanyElwin Sharvill RENEWAL
Chavez X CampainFranceIoni Bowcher PROPOSAL
Kaitlin H StockhamRussiaIvan Magalhaes NEW
David U NestleItalyAnna Fali NEW
Silvio Z FollerArgentinaIvan Magalhaes UNQUALIFIED

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