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
Aika S SchemmerGermanyStephen Shaw NEW
Clifford V DarakjyArgentinaAmy Elsner UNQUALIFIED
Jefferson X FlosiSpainIoni Bowcher RENEWAL
Murillo P MaletFranceOnyama Limba PROPOSAL
Izzy X SchemmerCanadaAmy Elsner NEGOTIATION
Aruna O VocelkaArgentinaAnna Fali QUALIFIED
Jefferson B GarufiIndiaStephen Shaw NEW
Faith L VenereRussiaIoni Bowcher NEGOTIATION
Aditya Y OldroydBrazilIoni Bowcher NEGOTIATION
James E MaletArgentinaBernardo Dominic NEGOTIATION
Salvatore I SchemmerJapanIoni Bowcher NEGOTIATION
Jennifer I SaylorsArgentinaAnna Fali RENEWAL
Maisha O PerinCanadaBernardo Dominic RENEWAL
Faith U PoquetteSpainAnna Fali NEW
Silvio K RulapaughAustraliaOnyama Limba NEW
Greenwood Z MaletGermanyXuxue Feng NEGOTIATION
Faith K IturbideCanadaStephen Shaw NEGOTIATION
Antonio Z KolmetzItalyBernardo Dominic UNQUALIFIED
Silvio P StockhamGermanyStephen Shaw NEW
Alejandro J SlusarskiItalyAmy Elsner QUALIFIED
Mayumi S StensethAustraliaOnyama Limba NEGOTIATION
Jeanfrancois V PoquetteCanadaBernardo Dominic NEGOTIATION
Darci B SaylorsItalyIvan Magalhaes NEGOTIATION
Julie C RimGermanyIoni Bowcher NEW
Ricardo U NestleSpainAsiya Javayant NEGOTIATION
Aruna C CaudyAustraliaOnyama Limba RENEWAL
James N SchemmerGermanyStephen Shaw RENEWAL
Julie N DoeCanadaBernardo Dominic NEGOTIATION
David H AmigonBrazilElwin Sharvill NEGOTIATION
Salvatore M GauchoRussiaIvan Magalhaes NEW
Octavia F WaycottItalyAsiya Javayant PROPOSAL
Kaitlin X DarakjyCanadaIoni Bowcher NEW
Maria E MacleadFranceElwin Sharvill RENEWAL
David M ShinkoSpainAnna Fali QUALIFIED
Cody H MorascaRussiaAnna Fali NEGOTIATION
Claire B WieserRussiaBernardo Dominic NEW
Nicolas U OstroskyRussiaIoni Bowcher NEW
Deepesh H NickaSpainStephen Shaw NEW
Clifford L GillianItalyElwin Sharvill NEW
Silvio H MacleadSpainIvan Magalhaes QUALIFIED
Ivar S MaletBrazilIoni Bowcher RENEWAL
Rodrigues J FollerCanadaOnyama Limba QUALIFIED
Smith B FigeroaCanadaXuxue Feng UNQUALIFIED
Francesco D RimAustraliaIvan Magalhaes QUALIFIED
Munro D RimCanadaAnna Fali UNQUALIFIED
Greenwood X DarakjyRussiaElwin Sharvill RENEWAL
Rodrigues K PaprockiAustraliaStephen Shaw QUALIFIED
James G MaletArgentinaOnyama Limba UNQUALIFIED
Ricardo Y DarakjyUnited KingdomOnyama Limba NEGOTIATION
Claire C BriddickRussiaAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Darci Y BologniaGermanyXuxue Feng UNQUALIFIED
Darci K AlbaresAustraliaIvan Magalhaes NEGOTIATION
Jones M StockhamRussiaOnyama Limba NEW
Morrow Y KolmetzJapanAsiya Javayant RENEWAL
Izzy R FlosiBrazilElwin Sharvill QUALIFIED
Jefferson D ButtJapanAnna Fali NEW
Clifford T ButtAustraliaIoni Bowcher NEGOTIATION
Cody U SergiUnited KingdomXuxue Feng RENEWAL
Adams A CaudyBrazilAnna Fali RENEWAL
Salvatore V AlbaresBrazilAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci E BriddickSpain2025-07-22Chemel, James L Cpa QUALIFIED91Onyama Limba
1001Jeanfrancois U SlusarskiUnited Kingdom2025-07-11Benton, John B Jr UNQUALIFIED96Bernardo Dominic
1002Emily W CaudyGermany2025-07-08King, Christopher A Esq QUALIFIED73Xuxue Feng
1003Arvin R DilliardBrazil2025-07-19Rousseaux, Michael Esq RENEWAL64Bernardo Dominic
1004Juan J MaletAustralia2025-07-20Rousseaux, Michael Esq NEGOTIATION22Elwin Sharvill
1005Faith B FigeroaArgentina2025-08-03Morlong Associates NEGOTIATION99Xuxue Feng
1006Claire C DilliardBrazil2025-07-07Printing Dimensions UNQUALIFIED29Amy Elsner
1007Ricardo J BowleyItaly2025-07-08Buckley Miller Wright NEGOTIATION6Xuxue Feng
1008Maria O SaylorsAustralia2025-07-13Commercial Press NEW19Onyama Limba
1009Francesco D MacleadJapan2025-07-10Rousseaux, Michael Esq QUALIFIED98Elwin Sharvill
1010Jeanfrancois S BowleyFrance2025-07-15King, Christopher A Esq PROPOSAL20Xuxue Feng
1011Octavia V DarakjyBrazil2025-07-19Rangoni Of Florence RENEWAL74Ioni Bowcher
1012Johnson E MaletCanada2025-08-03Chapman, Ross E Esq UNQUALIFIED59Ivan Magalhaes
1013Jones H DilliardGermany2025-07-26Truhlar And Truhlar Attys UNQUALIFIED54Ivan Magalhaes
1014Misaki Q MaletAustralia2025-08-02Feiner Bros QUALIFIED37Ivan Magalhaes
1015Nicolas T PoquetteArgentina2025-07-12Benton, John B Jr PROPOSAL93Amy Elsner
1016Julie Q FigeroaUnited Kingdom2025-07-12Dorl, James J Esq NEGOTIATION93Onyama Limba
1017Cody E RimRussia2025-07-12King, Christopher A Esq QUALIFIED29Amy Elsner
1018Smith D ButtAustralia2025-07-15Commercial Press QUALIFIED79Amy Elsner
1019Izzy I FlosiAustralia2025-07-17Rousseaux, Michael Esq PROPOSAL41Bernardo Dominic
1020Smith D StockhamRussia2025-07-12Commercial Press QUALIFIED58Stephen Shaw
1021Costa F BowleyUnited Kingdom2025-07-11King, Christopher A Esq QUALIFIED55Bernardo Dominic
1022Kaitlin H FlosiRussia2025-07-19Rangoni Of Florence RENEWAL79Ioni Bowcher
1023Greenwood I DoeArgentina2025-07-26Truhlar And Truhlar Attys NEGOTIATION19Asiya Javayant
1024Faith Y MarrierFrance2025-07-17Feltz Printing Service NEW34Xuxue Feng
1025Izzy B KuskoCanada2025-07-11Truhlar And Truhlar Attys UNQUALIFIED47Stephen Shaw
1026Jefferson G BologniaFrance2025-07-13Morlong Associates QUALIFIED26Bernardo Dominic
1027Silvio N NickaItaly2025-08-03Chanay, Jeffrey A Esq UNQUALIFIED41Xuxue Feng
1028Tony D FerenczIndia2025-07-15Chemel, James L Cpa RENEWAL22Xuxue Feng
1029Greenwood R ShinkoGermany2025-07-11Buckley Miller Wright UNQUALIFIED2Xuxue Feng
1030Smith K GillianBrazil2025-08-04Feltz Printing Service NEW78Amy Elsner
1031David R DilliardJapan2025-07-16Truhlar And Truhlar Attys RENEWAL71Bernardo Dominic
1032Morrow R OldroydAustralia2025-07-10Rousseaux, Michael Esq NEW58Ioni Bowcher
1033Rodrigues R PaprockiArgentina2025-07-17Chapman, Ross E Esq QUALIFIED37Ioni Bowcher
1034Sinclair Q BologniaSpain2025-07-24Printing Dimensions UNQUALIFIED17Elwin Sharvill
1035Leon E GauchoGermany2025-07-24Printing Dimensions PROPOSAL7Ioni Bowcher
1036Rodrigues H VenereUnited Kingdom2025-08-03Buckley Miller Wright NEW27Ioni Bowcher
1037Izzy Z RutaCanada2025-07-14Truhlar And Truhlar Attys PROPOSAL42Amy Elsner
1038Rodrigues M IturbideSpain2025-07-09Feltz Printing Service UNQUALIFIED48Anna Fali
1039Rodrigues C SergiCanada2025-07-11Chapman, Ross E Esq QUALIFIED96Bernardo Dominic
1040Clifford L NestleBrazil2025-08-04Dorl, James J Esq UNQUALIFIED23Xuxue Feng
1041Morrow R NickaRussia2025-07-14Benton, John B Jr PROPOSAL46Anna Fali
1042Maria P ShinkoRussia2025-07-08Dorl, James J Esq PROPOSAL20Xuxue Feng
1043Wickens B GarufiFrance2025-07-16Rousseaux, Michael Esq UNQUALIFIED96Anna Fali
1044Johnson Q AmigonRussia2025-07-28Benton, John B Jr RENEWAL44Ioni Bowcher
1045Faith T VocelkaAustralia2025-08-01Chemel, James L Cpa QUALIFIED47Asiya Javayant
1046Misaki X RoysterSpain2025-07-19Feltz Printing Service NEGOTIATION77Xuxue Feng
1047Nicolas Z WieserGermany2025-08-03Morlong Associates RENEWAL86Ivan Magalhaes
1048Tony Z CampainIndia2025-07-23Dorl, James J Esq RENEWAL64Onyama Limba
1049Julie R WhobreyArgentina2025-07-26Buckley Miller Wright PROPOSAL74Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Antonio E KuskoArgentinaStephen Shaw NEGOTIATION
Stacey O DilliardGermanyIvan Magalhaes RENEWAL
Rodrigues Q GlickIndiaElwin Sharvill RENEWAL
Sinclair G CaudyFranceAsiya Javayant PROPOSAL
Juan I WieserItalyXuxue Feng QUALIFIED
Chavez C WieserAustraliaAmy Elsner PROPOSAL
Kaitlin I CampainBrazilElwin Sharvill NEW
Greenwood K ChuiCanadaIoni Bowcher UNQUALIFIED
Leon M WieserBrazilIoni Bowcher RENEWAL
Leja T SchemmerJapanAsiya Javayant UNQUALIFIED
Munro U StensethIndiaAnna Fali RENEWAL
Smith K VenereUnited KingdomIoni Bowcher UNQUALIFIED
Darci N DilliardFranceElwin Sharvill NEGOTIATION
Tony N FerenczSpainAsiya Javayant RENEWAL
Adams J SlusarskiArgentinaAmy Elsner QUALIFIED
Francesco W VocelkaFranceAnna Fali NEW
Rodrigues R GarufiBrazilStephen Shaw QUALIFIED
Adams C RoysterFranceXuxue Feng UNQUALIFIED
Stacey O PerinIndiaAnna Fali RENEWAL
Costa Z PoquetteArgentinaAnna Fali PROPOSAL
Murillo C KuskoRussiaOnyama Limba UNQUALIFIED
Ashley H AmigonRussiaBernardo Dominic RENEWAL
Misaki U FollerSpainStephen Shaw RENEWAL
Maisha K WhobreyAustraliaBernardo Dominic RENEWAL
Kadeem Z RutaArgentinaAnna Fali NEW
Aika H MacleadAustraliaAnna Fali PROPOSAL
Leon A OldroydGermanyIvan Magalhaes UNQUALIFIED
Misaki Y WieserFranceBernardo Dominic NEGOTIATION
Mayumi Q ChuiUnited KingdomElwin Sharvill RENEWAL
Stacey D ChuiBrazilXuxue Feng NEW
Darci T SlusarskiRussiaAmy Elsner UNQUALIFIED
Kadeem Y SlusarskiArgentinaBernardo Dominic QUALIFIED
Morrow C KuskoBrazilElwin Sharvill NEGOTIATION
Ricardo N MaletIndiaAsiya Javayant UNQUALIFIED
Julie B MarrierUnited KingdomStephen Shaw NEGOTIATION
Smith H OldroydIndiaIvan Magalhaes UNQUALIFIED
Tony P KuskoFranceBernardo Dominic PROPOSAL
Johnson N GlickGermanyIoni Bowcher NEW
Morrow L MacleadSpainIvan Magalhaes NEW
Leja E SlusarskiSpainIvan Magalhaes NEGOTIATION
Izzy C AmigonFranceAsiya Javayant NEW
Juan O GarufiIndiaStephen Shaw PROPOSAL
Costa W PerinArgentinaIvan Magalhaes UNQUALIFIED
Misaki A AmigonUnited KingdomStephen Shaw PROPOSAL
Aika K GauchoUnited KingdomAmy Elsner QUALIFIED
Salvatore P BologniaItalyIoni Bowcher NEW
Ivar D MarrierArgentinaBernardo Dominic NEGOTIATION
Mujtaba R FerenczBrazilAsiya Javayant NEGOTIATION
Antonio P PoquetteIndiaStephen Shaw QUALIFIED
Chavez P NickaJapanAmy Elsner NEW
Frozen Columns
Name
Salvatore K Stenseth
Julie G Foller
Clifford D Kolmetz
Juan D Bowley
James Q Vocelka
Deepesh K Bolognia
Aditya R Stockham
Salvatore J Doe
Wickens F Oldroyd
Mayumi D Saylors
Kaitlin M Rim
Julie U Doe
Alejandro P Venere
Francesco D Ruta
Octavia S Caldarera
Claire B Poquette
Aditya P Paprocki
Murillo U Figeroa
Emily C Gillian
Rodrigues L Shinko
Claire D Kolmetz
Ricardo T Tollner
Kadeem R Tollner
Juan D Flosi
Jefferson S Malet
Octavia K Wieser
Juan I Bowley
Emily Y Wieser
Aika C Oldroyd
Octavia M Caldarera
Chavez Q Stenseth
Juan W Doe
Aruna V Paprocki
Julie N Morasca
Rodrigues B Gaucho
Stacey E Tollner
Ivar E Whobrey
Leja S Paprocki
Maisha G Wieser
Jones J Malet
Deepesh W Rulapaugh
Mayumi W Flosi
Rodrigues N Rulapaugh
Julie W Garufi
Izzy S Saylors
Alejandro T Venere
Emily V Saylors
Sinclair K Malet
Aruna N Stenseth
Maisha W Saylors
IdCountryDate
1000Spain2025-07-21
1001United Kingdom2025-07-26
1002Canada2025-08-03
1003Italy2025-07-22
1004Australia2025-07-22
1005France2025-08-01
1006Germany2025-07-25
1007United Kingdom2025-07-13
1008Italy2025-07-09
1009Russia2025-07-22
1010United Kingdom2025-07-23
1011Australia2025-07-28
1012Japan2025-07-12
1013Argentina2025-07-20
1014Japan2025-08-03
1015Brazil2025-07-06
1016Australia2025-07-19
1017France2025-07-20
1018Canada2025-07-20
1019Spain2025-07-24
1020Canada2025-07-31
1021Brazil2025-07-16
1022Germany2025-07-12
1023Japan2025-07-12
1024Italy2025-07-25
1025Russia2025-07-26
1026Australia2025-07-30
1027Argentina2025-07-27
1028Japan2025-08-03
1029India2025-07-23
1030Spain2025-07-07
1031Australia2025-07-30
1032Germany2025-07-14
1033Russia2025-07-16
1034India2025-07-16
1035Germany2025-07-29
1036Spain2025-07-18
1037United Kingdom2025-07-27
1038Argentina2025-08-02
1039France2025-07-13
1040Japan2025-07-06
1041Italy2025-07-11
1042Italy2025-07-11
1043United Kingdom2025-08-02
1044Brazil2025-08-03
1045India2025-07-22
1046United Kingdom2025-07-13
1047India2025-07-31
1048Argentina2025-07-13
1049Argentina2025-07-21

On-Demand Data

NameIdCountryDate
Maria B Paprocki1000Brazil2025-08-03
Munro I Ostrosky1001United Kingdom2025-08-04
Jefferson P Dilliard1002Argentina2025-07-17
Leja M Nicka1003United Kingdom2025-07-19
Smith L Amigon1004United Kingdom2025-08-03
Emily Y Doe1005Russia2025-07-28
Stacey Y Ostrosky1006Italy2025-07-23
Smith Z Malet1007Brazil2025-07-25
Morrow B Stenseth1008Australia2025-07-20
Maria J Rim1009India2025-08-04
Wickens P Ruta1010United Kingdom2025-07-14
Antonio I Shinko1011Germany2025-07-30
Silvio R Marrier1012Brazil2025-07-18
Clifford P Dilliard1013Japan2025-07-20
Jefferson B Foller1014Australia2025-07-23
Sinclair X Dilliard1015United Kingdom2025-07-16
Ricardo C Ruta1016France2025-07-07
Leja B Wieser1017India2025-07-14
James I Malet1018Argentina2025-07-15
Juan D Saylors1019India2025-08-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa C TollnerFranceBernardo Dominic RENEWAL
Deepesh D MorascaFranceXuxue Feng NEW
Aditya V WhobreyCanadaXuxue Feng QUALIFIED
Francesco K GillianFranceAmy Elsner QUALIFIED
Juan C BriddickFranceOnyama Limba NEGOTIATION
Aruna N PerinGermanyAnna Fali NEW
Francesco Y AlbaresRussiaStephen Shaw NEW
Mayumi L OstroskyJapanBernardo Dominic RENEWAL
Adams U FigeroaBrazilBernardo Dominic RENEWAL
Munro A RulapaughBrazilStephen Shaw NEGOTIATION
David Q TollnerRussiaStephen Shaw PROPOSAL
Tony Q NickaSpainOnyama Limba RENEWAL
Leja Y SergiJapanBernardo Dominic QUALIFIED
Ashley J ChuiUnited KingdomOnyama Limba QUALIFIED
Misaki D SlusarskiItalyBernardo Dominic RENEWAL
Arvin Q RimRussiaAmy Elsner QUALIFIED
Maisha E KuskoSpainIoni Bowcher NEW
Leon H RoysterJapanAmy Elsner RENEWAL
Jones S VocelkaRussiaElwin Sharvill UNQUALIFIED
Aditya S ChuiCanadaBernardo Dominic UNQUALIFIED
Clifford G RutaRussiaIoni Bowcher QUALIFIED
Chavez C RutaUnited KingdomElwin Sharvill NEW
Alejandro H DilliardRussiaIoni Bowcher PROPOSAL
Leon T ShinkoFranceXuxue Feng NEGOTIATION
Chavez B FollerBrazilAnna Fali NEW
Jeanfrancois A MacleadBrazilIvan Magalhaes RENEWAL
Mayumi T MarrierGermanyIoni Bowcher PROPOSAL
Silvio V ChuiJapanStephen Shaw UNQUALIFIED
Clifford E FigeroaAustraliaAsiya Javayant PROPOSAL
Arvin X SergiArgentinaElwin Sharvill QUALIFIED
Izzy V RimRussiaOnyama Limba UNQUALIFIED
Nicolas H MarrierUnited KingdomIvan Magalhaes NEGOTIATION
Jefferson T GillianSpainXuxue Feng NEW
Stacey Q VocelkaCanadaIvan Magalhaes RENEWAL
Claire H CaudyFranceXuxue Feng NEGOTIATION
Darci M GillianUnited KingdomIvan Magalhaes PROPOSAL
Aruna E RoysterItalyAnna Fali UNQUALIFIED
Munro I TollnerItalyElwin Sharvill QUALIFIED
Maisha O MacleadFranceIoni Bowcher NEGOTIATION
Octavia D BriddickGermanyIoni Bowcher 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>