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
Misaki B KuskoIndiaStephen Shaw RENEWAL
Leja Y DilliardIndiaAmy Elsner NEGOTIATION
Cody Z WieserArgentinaIoni Bowcher PROPOSAL
Arvin Q FlosiIndiaBernardo Dominic UNQUALIFIED
Costa U RimCanadaElwin Sharvill NEW
Stacey W AmigonIndiaOnyama Limba QUALIFIED
Emily D FlosiRussiaIvan Magalhaes PROPOSAL
Jefferson J MaletItalyAnna Fali NEW
Alejandro Z WhobreyAustraliaElwin Sharvill UNQUALIFIED
Arvin E MarrierJapanOnyama Limba NEGOTIATION
Darci J MacleadJapanAnna Fali QUALIFIED
Greenwood N VenereBrazilIoni Bowcher UNQUALIFIED
Chavez W WieserArgentinaElwin Sharvill UNQUALIFIED
Francesco W IturbideFranceAmy Elsner NEW
Morrow M FollerRussiaIoni Bowcher QUALIFIED
Sinclair G SergiUnited KingdomElwin Sharvill NEW
Rodrigues U TollnerFranceAsiya Javayant NEGOTIATION
Smith P ChuiGermanyAmy Elsner QUALIFIED
Ashley U NickaFranceAnna Fali PROPOSAL
Juan P VenereJapanAnna Fali NEGOTIATION
Emily C SlusarskiIndiaXuxue Feng UNQUALIFIED
Maisha N WaycottUnited KingdomElwin Sharvill NEW
Leon S BowleyFranceOnyama Limba PROPOSAL
Murillo C WaycottUnited KingdomIoni Bowcher QUALIFIED
Smith E RutaAustraliaAmy Elsner UNQUALIFIED
Jeanfrancois I OstroskyItalyElwin Sharvill NEW
Smith R RutaFranceIoni Bowcher NEGOTIATION
Maria O GarufiArgentinaBernardo Dominic RENEWAL
Jeanfrancois W KuskoUnited KingdomElwin Sharvill NEGOTIATION
Octavia I FlosiGermanyStephen Shaw QUALIFIED
Cody M RimJapanOnyama Limba RENEWAL
Maisha S VenereAustraliaIvan Magalhaes PROPOSAL
Kaitlin O BologniaRussiaAnna Fali UNQUALIFIED
Octavia T KuskoJapanIoni Bowcher NEGOTIATION
Emily Q CaldareraJapanAnna Fali NEGOTIATION
Munro K CaudyAustraliaBernardo Dominic UNQUALIFIED
Kaitlin Z RutaItalyElwin Sharvill QUALIFIED
Francesco K KolmetzIndiaAsiya Javayant PROPOSAL
Aika I NestleIndiaElwin Sharvill PROPOSAL
Adams L BologniaJapanOnyama Limba PROPOSAL
Antonio B GauchoAustraliaBernardo Dominic UNQUALIFIED
Silvio V BriddickCanadaAnna Fali NEW
Morrow C NickaJapanAmy Elsner RENEWAL
Chavez X FollerFranceIoni Bowcher PROPOSAL
Jeanfrancois I FlosiRussiaElwin Sharvill QUALIFIED
Leon C FerenczGermanyOnyama Limba UNQUALIFIED
Faith S InouyeSpainIoni Bowcher NEW
Francesco E MorascaIndiaAnna Fali RENEWAL
Mujtaba A AlbaresCanadaAsiya Javayant QUALIFIED
Cody P KuskoRussiaAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Aika D AmigonJapanIoni Bowcher NEW
Julie R OldroydIndiaIvan Magalhaes PROPOSAL
Aditya U BriddickArgentinaXuxue Feng NEGOTIATION
Munro Z FlosiUnited KingdomXuxue Feng QUALIFIED
Ashley X OldroydGermanyAnna Fali QUALIFIED
Morrow P CaudyBrazilAnna Fali PROPOSAL
Emily M VocelkaIndiaOnyama Limba NEGOTIATION
Greenwood P MaletFranceBernardo Dominic UNQUALIFIED
Ivar R RulapaughAustraliaBernardo Dominic QUALIFIED
Cody I KuskoJapanOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ricardo Q GlickUnited Kingdom2025-09-17Chanay, Jeffrey A Esq RENEWAL80Bernardo Dominic
1001Francesco J RimAustralia2025-09-15Morlong Associates PROPOSAL67Stephen Shaw
1002Izzy L RimCanada2025-08-29Morlong Associates NEGOTIATION35Ioni Bowcher
1003Silvio M InouyeRussia2025-09-09Morlong Associates NEW29Bernardo Dominic
1004Stacey A CaldareraIndia2025-08-30Chemel, James L Cpa NEW60Onyama Limba
1005David P KuskoFrance2025-09-10King, Christopher A Esq RENEWAL94Stephen Shaw
1006Julie J GauchoItaly2025-09-14Buckley Miller Wright NEGOTIATION20Asiya Javayant
1007Leja Y BowleyArgentina2025-09-19Benton, John B Jr RENEWAL24Anna Fali
1008Clifford G MorascaUnited Kingdom2025-08-29Morlong Associates UNQUALIFIED29Xuxue Feng
1009Misaki K ButtItaly2025-09-17Morlong Associates RENEWAL97Amy Elsner
1010Juan V TollnerCanada2025-09-09Chemel, James L Cpa NEW89Asiya Javayant
1011Cody X MacleadJapan2025-09-01Buckley Miller Wright PROPOSAL71Amy Elsner
1012Aika P FigeroaSpain2025-09-03Printing Dimensions QUALIFIED82Ivan Magalhaes
1013Johnson H WaycottUnited Kingdom2025-08-25Chemel, James L Cpa NEW18Stephen Shaw
1014Darci R IturbideUnited Kingdom2025-08-26Chanay, Jeffrey A Esq UNQUALIFIED30Onyama Limba
1015Claire U WieserIndia2025-09-02Commercial Press NEGOTIATION51Ivan Magalhaes
1016Claire Z ButtItaly2025-08-25Chanay, Jeffrey A Esq RENEWAL97Elwin Sharvill
1017Maisha W CaldareraArgentina2025-09-19Morlong Associates NEW30Amy Elsner
1018Nicolas D PaprockiIndia2025-09-03Benton, John B Jr QUALIFIED84Asiya Javayant
1019Darci A VocelkaArgentina2025-09-01King, Christopher A Esq QUALIFIED65Anna Fali
1020Munro O SergiRussia2025-09-16Chanay, Jeffrey A Esq PROPOSAL38Elwin Sharvill
1021Silvio V RutaItaly2025-09-05Buckley Miller Wright NEGOTIATION99Stephen Shaw
1022Antonio V GillianArgentina2025-09-16Printing Dimensions QUALIFIED65Asiya Javayant
1023Jennifer Z VenereGermany2025-09-21Morlong Associates RENEWAL25Anna Fali
1024Jennifer H SaylorsJapan2025-09-06Truhlar And Truhlar Attys RENEWAL75Amy Elsner
1025Jones W GarufiUnited Kingdom2025-08-28Rousseaux, Michael Esq NEW24Stephen Shaw
1026Arvin Z SergiJapan2025-08-28Printing Dimensions QUALIFIED22Ivan Magalhaes
1027Munro V CampainItaly2025-09-14Chemel, James L Cpa QUALIFIED67Anna Fali
1028Faith U AlbaresFrance2025-09-15Rousseaux, Michael Esq QUALIFIED70Elwin Sharvill
1029Deepesh D OstroskySpain2025-09-06Rangoni Of Florence QUALIFIED60Anna Fali
1030Mayumi B GauchoIndia2025-08-27Morlong Associates RENEWAL34Ivan Magalhaes
1031Faith Y GarufiJapan2025-08-29Printing Dimensions RENEWAL32Ioni Bowcher
1032Faith H VenereSpain2025-09-05Rangoni Of Florence UNQUALIFIED15Asiya Javayant
1033Nicolas E AmigonIndia2025-09-12Feltz Printing Service RENEWAL9Asiya Javayant
1034Jones L MaletSpain2025-08-27Truhlar And Truhlar Attys NEW65Ioni Bowcher
1035Darci I MaletUnited Kingdom2025-09-08Dorl, James J Esq NEGOTIATION11Stephen Shaw
1036Morrow U DarakjyItaly2025-09-13Feltz Printing Service NEW12Ivan Magalhaes
1037Wickens D FigeroaJapan2025-09-02Truhlar And Truhlar Attys UNQUALIFIED76Amy Elsner
1038Jennifer N FollerRussia2025-09-10Printing Dimensions QUALIFIED59Bernardo Dominic
1039Kaitlin W PoquetteUnited Kingdom2025-09-13Rangoni Of Florence UNQUALIFIED49Asiya Javayant
1040Maria I MorascaUnited Kingdom2025-09-13Chapman, Ross E Esq PROPOSAL92Bernardo Dominic
1041Wickens W SergiGermany2025-09-01Chemel, James L Cpa QUALIFIED48Stephen Shaw
1042Adams O PerinAustralia2025-08-31Chapman, Ross E Esq NEGOTIATION22Ivan Magalhaes
1043Mujtaba O RutaBrazil2025-08-29Buckley Miller Wright QUALIFIED43Amy Elsner
1044Sinclair K WhobreyRussia2025-09-02Morlong Associates NEW32Stephen Shaw
1045Stacey K KolmetzUnited Kingdom2025-09-11Truhlar And Truhlar Attys UNQUALIFIED53Ioni Bowcher
1046Faith X IturbideFrance2025-09-18Chemel, James L Cpa QUALIFIED67Stephen Shaw
1047Maisha G RoysterBrazil2025-08-30Commercial Press UNQUALIFIED28Elwin Sharvill
1048Jones O SergiFrance2025-09-10King, Christopher A Esq NEW19Amy Elsner
1049Jones Q WaycottRussia2025-09-18Rousseaux, Michael Esq QUALIFIED82Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Alejandro H StensethUnited KingdomElwin Sharvill QUALIFIED
Aruna Y SchemmerItalyStephen Shaw PROPOSAL
Johnson R SlusarskiArgentinaElwin Sharvill PROPOSAL
Sinclair U FerenczFranceAmy Elsner PROPOSAL
James X PaprockiArgentinaStephen Shaw NEW
Mayumi B OldroydCanadaOnyama Limba UNQUALIFIED
James N SergiItalyXuxue Feng RENEWAL
Maisha X DilliardCanadaIoni Bowcher RENEWAL
Smith V VocelkaFranceAsiya Javayant RENEWAL
Nicolas G KuskoJapanStephen Shaw RENEWAL
Smith K FlosiBrazilAnna Fali PROPOSAL
Adams V DoeUnited KingdomBernardo Dominic QUALIFIED
Maria P VenereCanadaAmy Elsner NEW
Arvin V NestleBrazilXuxue Feng NEGOTIATION
Faith S GlickIndiaAnna Fali NEW
Mujtaba M IturbideUnited KingdomStephen Shaw NEGOTIATION
Ricardo G GauchoArgentinaBernardo Dominic UNQUALIFIED
Jennifer Z KuskoBrazilBernardo Dominic PROPOSAL
Tony X RulapaughUnited KingdomIvan Magalhaes RENEWAL
Julie X StockhamArgentinaStephen Shaw QUALIFIED
Misaki P KuskoArgentinaAsiya Javayant NEGOTIATION
Tony W PerinUnited KingdomIvan Magalhaes UNQUALIFIED
Leja J FollerUnited KingdomElwin Sharvill PROPOSAL
Clifford K OldroydItalyXuxue Feng RENEWAL
Silvio X RoysterRussiaOnyama Limba RENEWAL
Misaki Q NestleBrazilAmy Elsner PROPOSAL
Murillo B SaylorsUnited KingdomElwin Sharvill NEW
Arvin V ChuiUnited KingdomIoni Bowcher PROPOSAL
Julie S FlosiGermanyAnna Fali UNQUALIFIED
Darci Y GauchoItalyXuxue Feng QUALIFIED
Aruna O SaylorsFranceIvan Magalhaes NEW
Morrow H OldroydCanadaIoni Bowcher UNQUALIFIED
Clifford E StensethSpainOnyama Limba NEGOTIATION
Nicolas P MaletCanadaAmy Elsner UNQUALIFIED
Nicolas D CaldareraUnited KingdomStephen Shaw NEW
Leon Y FigeroaJapanBernardo Dominic PROPOSAL
Francesco R KuskoJapanAnna Fali UNQUALIFIED
Murillo I OldroydGermanyElwin Sharvill NEGOTIATION
Leja N FlosiIndiaOnyama Limba NEW
Deepesh O FlosiAustraliaIvan Magalhaes PROPOSAL
Ashley M OldroydIndiaAsiya Javayant QUALIFIED
Isabel A MarrierUnited KingdomAsiya Javayant NEW
Tony H RoysterJapanIoni Bowcher NEGOTIATION
Francesco V NickaFranceIvan Magalhaes NEW
Maisha Y IturbideArgentinaBernardo Dominic RENEWAL
Faith J TollnerGermanyOnyama Limba UNQUALIFIED
James K DilliardFranceIoni Bowcher PROPOSAL
Francesco K RimBrazilElwin Sharvill PROPOSAL
Maria Z MaletIndiaAsiya Javayant PROPOSAL
Sinclair I MarrierGermanyIoni Bowcher NEW
Frozen Columns
Name
Arvin G Bolognia
Misaki G Royster
Mayumi B Whobrey
Jefferson Q Rim
James E Flosi
James Y Bowley
Aruna D Saylors
Salvatore E Schemmer
Jefferson Q Vocelka
Adams A Figeroa
Mujtaba G Malet
Stacey Z Kusko
Johnson M Rim
Wickens N Schemmer
Antonio A Stockham
Aruna C Iturbide
Jefferson S Nicka
Maisha Z Waycott
Kaitlin E Butt
Deepesh M Morasca
Deepesh L Paprocki
Johnson W Caldarera
Izzy R Maclead
Emily Y Oldroyd
Costa C Chui
Salvatore S Butt
Morrow W Schemmer
Aditya Q Rulapaugh
Kadeem K Iturbide
Munro Q Ferencz
Isabel I Campain
Tony Z Whobrey
Adams P Caldarera
Nicolas S Glick
Ivar H Ostrosky
Emily F Dilliard
Wickens L Ferencz
Nicolas W Ruta
Leja I Albares
Wickens Z Glick
Silvio N Waycott
Kaitlin Y Perin
Tony E Amigon
Darci J Chui
Munro F Shinko
Misaki B Dilliard
Maisha R Kusko
Alejandro P Malet
Jeanfrancois Z Caudy
Leja C Albares
IdCountryDate
1000Italy2025-09-09
1001Brazil2025-09-08
1002India2025-08-30
1003France2025-09-11
1004Italy2025-09-02
1005Germany2025-09-13
1006Canada2025-09-07
1007United Kingdom2025-09-04
1008Japan2025-09-06
1009Germany2025-09-13
1010Japan2025-08-25
1011United Kingdom2025-09-13
1012Italy2025-09-02
1013Russia2025-09-21
1014Canada2025-09-07
1015France2025-09-09
1016Argentina2025-08-24
1017Spain2025-09-14
1018Russia2025-09-19
1019France2025-08-28
1020United Kingdom2025-08-24
1021Italy2025-09-19
1022Russia2025-08-25
1023India2025-09-04
1024United Kingdom2025-09-09
1025Japan2025-08-29
1026Australia2025-08-28
1027Italy2025-09-18
1028Brazil2025-09-20
1029Germany2025-09-06
1030Canada2025-09-02
1031India2025-08-28
1032Argentina2025-09-06
1033United Kingdom2025-08-29
1034France2025-08-26
1035Argentina2025-09-12
1036Brazil2025-09-07
1037Brazil2025-08-27
1038Japan2025-09-10
1039Spain2025-08-31
1040Russia2025-09-01
1041Spain2025-08-28
1042Brazil2025-09-02
1043Germany2025-09-08
1044United Kingdom2025-09-01
1045India2025-08-29
1046India2025-08-30
1047France2025-09-09
1048Canada2025-08-31
1049Japan2025-09-06

On-Demand Data

NameIdCountryDate
Kaitlin A Stockham1000Canada2025-09-01
Francesco J Flosi1001Japan2025-09-13
Nicolas T Bowley1002Japan2025-09-09
Jones U Gaucho1003Canada2025-09-03
Mayumi V Gaucho1004Argentina2025-09-06
Clifford K Royster1005Brazil2025-09-08
Ashley W Campain1006Brazil2025-09-09
Jones G Albares1007United Kingdom2025-09-10
Juan T Butt1008Germany2025-09-21
Arvin X Ferencz1009France2025-09-16
Sinclair C Paprocki1010United Kingdom2025-09-06
Silvio I Whobrey1011Spain2025-09-16
Morrow Y Bowley1012Brazil2025-08-24
Tony E Bowley1013Brazil2025-09-20
Misaki K Malet1014Italy2025-09-05
Antonio I Flosi1015Italy2025-08-24
Mujtaba H Rim1016Australia2025-09-03
Antonio R Rulapaugh1017India2025-09-03
Jefferson W Gillian1018United Kingdom2025-09-04
Costa A Paprocki1019Japan2025-08-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley T MaletArgentinaAmy Elsner NEW
Stacey H OstroskyBrazilStephen Shaw PROPOSAL
Sinclair J ShinkoCanadaElwin Sharvill QUALIFIED
Jefferson H KolmetzAustraliaBernardo Dominic UNQUALIFIED
Deepesh I PerinIndiaBernardo Dominic RENEWAL
Johnson W KuskoArgentinaBernardo Dominic NEW
Antonio S ChuiJapanStephen Shaw NEW
Ivar I TollnerSpainIvan Magalhaes NEGOTIATION
Maisha B VenereIndiaIvan Magalhaes NEW
Octavia W IturbideUnited KingdomAnna Fali RENEWAL
David M GarufiArgentinaIvan Magalhaes UNQUALIFIED
Clifford J MorascaFranceAsiya Javayant NEW
Deepesh F SlusarskiFranceIoni Bowcher UNQUALIFIED
Leon L StensethItalyAnna Fali UNQUALIFIED
Aruna Y MorascaFranceOnyama Limba UNQUALIFIED
Antonio Y GauchoGermanyIoni Bowcher UNQUALIFIED
Antonio I FigeroaArgentinaIoni Bowcher UNQUALIFIED
Adams I PaprockiItalyIoni Bowcher QUALIFIED
Murillo C ChuiCanadaBernardo Dominic UNQUALIFIED
Octavia W ChuiRussiaAnna Fali UNQUALIFIED
Silvio Y MorascaGermanyXuxue Feng NEGOTIATION
Isabel S MaletSpainBernardo Dominic NEW
Rodrigues V RutaSpainAmy Elsner PROPOSAL
Aruna F InouyeSpainXuxue Feng NEGOTIATION
Johnson T ChuiJapanAmy Elsner NEW
Chavez H GillianSpainBernardo Dominic QUALIFIED
Stacey L DilliardGermanyStephen Shaw NEW
Clifford G ButtArgentinaIvan Magalhaes PROPOSAL
Murillo B GarufiBrazilAsiya Javayant QUALIFIED
Faith D GillianRussiaStephen Shaw PROPOSAL
Smith W GauchoSpainOnyama Limba QUALIFIED
Wickens V OstroskyUnited KingdomOnyama Limba UNQUALIFIED
Aditya M KolmetzSpainIvan Magalhaes RENEWAL
Emily R WaycottAustraliaIoni Bowcher UNQUALIFIED
Greenwood K AlbaresRussiaOnyama Limba QUALIFIED
Jones H GarufiIndiaAmy Elsner RENEWAL
Clifford N NestleIndiaIoni Bowcher UNQUALIFIED
Ivar U WaycottIndiaAsiya Javayant RENEWAL
Francesco Y GarufiBrazilStephen Shaw PROPOSAL
Faith X OstroskyIndiaIoni Bowcher QUALIFIED

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