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 D KuskoUnited KingdomBernardo Dominic QUALIFIED
Arvin H OstroskyRussiaIvan Magalhaes NEGOTIATION
Leja Y AlbaresGermanyIvan Magalhaes PROPOSAL
Wickens S GarufiRussiaIvan Magalhaes PROPOSAL
Jeanfrancois O FigeroaCanadaOnyama Limba PROPOSAL
Isabel N NestleArgentinaBernardo Dominic NEGOTIATION
Misaki K NickaFranceStephen Shaw NEW
Jefferson K BologniaArgentinaOnyama Limba NEW
Julie F SergiSpainIvan Magalhaes NEGOTIATION
Kaitlin I AmigonFranceXuxue Feng NEGOTIATION
Morrow Z PaprockiUnited KingdomIvan Magalhaes UNQUALIFIED
Chavez R NickaCanadaAmy Elsner PROPOSAL
James K IturbideCanadaIoni Bowcher NEGOTIATION
David Q BowleyAustraliaIoni Bowcher PROPOSAL
Johnson J NestleIndiaIvan Magalhaes NEW
Ivar M MaletArgentinaIvan Magalhaes NEW
Maria A BowleyBrazilOnyama Limba QUALIFIED
Adams N ButtArgentinaAmy Elsner UNQUALIFIED
Darci I TollnerAustraliaAsiya Javayant RENEWAL
Tony W StockhamCanadaBernardo Dominic QUALIFIED
Johnson Z MaletRussiaAmy Elsner NEGOTIATION
Costa R FerenczIndiaBernardo Dominic RENEWAL
Chavez O CampainUnited KingdomXuxue Feng NEGOTIATION
Wickens K GlickJapanStephen Shaw UNQUALIFIED
Jones Y WhobreyRussiaXuxue Feng NEGOTIATION
Antonio T BowleyBrazilXuxue Feng PROPOSAL
Maria L OstroskyAustraliaAmy Elsner PROPOSAL
Murillo C VenereItalyAmy Elsner QUALIFIED
Izzy G FigeroaAustraliaAsiya Javayant NEGOTIATION
Murillo W KuskoJapanAnna Fali UNQUALIFIED
Deepesh A TollnerUnited KingdomStephen Shaw PROPOSAL
Kaitlin P MaletBrazilStephen Shaw NEGOTIATION
Maria B IturbideFranceAnna Fali NEGOTIATION
Munro I SaylorsUnited KingdomAnna Fali RENEWAL
Deepesh A BowleyIndiaBernardo Dominic RENEWAL
Deepesh H GlickRussiaAsiya Javayant PROPOSAL
Stacey R MorascaSpainElwin Sharvill UNQUALIFIED
Maisha R NestleJapanBernardo Dominic PROPOSAL
Morrow X FigeroaUnited KingdomIvan Magalhaes NEW
Murillo N RulapaughCanadaIvan Magalhaes QUALIFIED
Cody I StockhamIndiaOnyama Limba NEGOTIATION
Kaitlin A RimFranceIvan Magalhaes RENEWAL
Salvatore S RimJapanStephen Shaw NEW
Nicolas Z PaprockiJapanAsiya Javayant RENEWAL
Julie C ChuiGermanyXuxue Feng NEW
Juan W RutaArgentinaAnna Fali RENEWAL
Kadeem S InouyeUnited KingdomXuxue Feng RENEWAL
Nicolas X RutaSpainIvan Magalhaes UNQUALIFIED
Ashley H CampainCanadaAnna Fali NEW
Leon Y MarrierJapanOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aruna B BologniaUnited KingdomStephen Shaw PROPOSAL
Juan C CaldareraBrazilIoni Bowcher NEGOTIATION
Rodrigues D DilliardJapanAsiya Javayant NEW
Greenwood Z VenereAustraliaBernardo Dominic NEW
Ashley J VocelkaArgentinaOnyama Limba RENEWAL
Claire Z SchemmerCanadaStephen Shaw NEGOTIATION
Juan H CaldareraJapanAsiya Javayant NEGOTIATION
Murillo C VenereGermanyAsiya Javayant NEGOTIATION
Mujtaba U WieserFranceAnna Fali UNQUALIFIED
Emily E RutaFranceXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Isabel A CampainFrance2025-07-30Rousseaux, Michael Esq UNQUALIFIED63Amy Elsner
1001Johnson V WieserSpain2025-07-28Printing Dimensions QUALIFIED71Bernardo Dominic
1002Rodrigues W StensethGermany2025-07-28Chemel, James L Cpa QUALIFIED50Elwin Sharvill
1003Silvio O MaletUnited Kingdom2025-08-03Chanay, Jeffrey A Esq PROPOSAL64Stephen Shaw
1004Johnson R PoquetteGermany2025-08-10Chanay, Jeffrey A Esq NEGOTIATION63Anna Fali
1005Julie R BologniaBrazil2025-08-08Commercial Press RENEWAL50Ivan Magalhaes
1006Isabel I StockhamFrance2025-08-11Dorl, James J Esq PROPOSAL7Xuxue Feng
1007Aruna Q WhobreyGermany2025-08-06Truhlar And Truhlar Attys NEW30Onyama Limba
1008Aruna V VocelkaBrazil2025-07-30Feiner Bros NEGOTIATION38Stephen Shaw
1009Ricardo P VocelkaIndia2025-08-05Feltz Printing Service NEW44Stephen Shaw
1010Ricardo J ShinkoCanada2025-07-22Chapman, Ross E Esq UNQUALIFIED93Xuxue Feng
1011Smith B PerinItaly2025-08-08Rangoni Of Florence QUALIFIED48Elwin Sharvill
1012Alejandro C MaletIndia2025-07-25Feiner Bros PROPOSAL97Amy Elsner
1013Maria J ShinkoUnited Kingdom2025-07-22Printing Dimensions NEW42Onyama Limba
1014Octavia G RimCanada2025-08-05Commercial Press NEGOTIATION21Asiya Javayant
1015Jefferson Y BriddickArgentina2025-07-30Chapman, Ross E Esq PROPOSAL13Amy Elsner
1016Leon A BologniaItaly2025-07-28Chanay, Jeffrey A Esq PROPOSAL34Xuxue Feng
1017Alejandro L FollerAustralia2025-08-03Chemel, James L Cpa NEGOTIATION45Ivan Magalhaes
1018Adams G IturbideRussia2025-08-07Chemel, James L Cpa RENEWAL1Onyama Limba
1019Jeanfrancois T PerinGermany2025-08-01Chanay, Jeffrey A Esq PROPOSAL18Ioni Bowcher
1020Octavia M MarrierJapan2025-07-22Chapman, Ross E Esq PROPOSAL29Ivan Magalhaes
1021Chavez O FigeroaBrazil2025-07-17Chanay, Jeffrey A Esq QUALIFIED19Ioni Bowcher
1022Leon E PoquetteRussia2025-08-04Feltz Printing Service NEGOTIATION55Ioni Bowcher
1023Faith S ShinkoRussia2025-07-31Commercial Press RENEWAL73Anna Fali
1024Murillo B BriddickJapan2025-07-27Chemel, James L Cpa RENEWAL78Ivan Magalhaes
1025Isabel M RimJapan2025-08-12Rangoni Of Florence RENEWAL99Bernardo Dominic
1026Ivar F OldroydJapan2025-07-26Feiner Bros PROPOSAL38Asiya Javayant
1027Misaki M WhobreyGermany2025-07-19Chapman, Ross E Esq PROPOSAL72Ioni Bowcher
1028Silvio G MaletBrazil2025-07-24Chanay, Jeffrey A Esq NEW73Elwin Sharvill
1029Smith J WaycottIndia2025-08-10King, Christopher A Esq NEW94Amy Elsner
1030Juan V VenereGermany2025-08-10Benton, John B Jr UNQUALIFIED75Ivan Magalhaes
1031Mayumi D GillianGermany2025-08-10Feltz Printing Service UNQUALIFIED86Xuxue Feng
1032Morrow F GarufiGermany2025-08-03Truhlar And Truhlar Attys NEGOTIATION3Stephen Shaw
1033Clifford O RoysterUnited Kingdom2025-08-01Dorl, James J Esq UNQUALIFIED71Anna Fali
1034Alejandro Y IturbideJapan2025-07-27Chanay, Jeffrey A Esq UNQUALIFIED84Asiya Javayant
1035Sinclair V ButtGermany2025-07-19Feltz Printing Service NEW92Xuxue Feng
1036Izzy R GillianBrazil2025-08-12Printing Dimensions RENEWAL34Onyama Limba
1037Deepesh S OstroskyUnited Kingdom2025-07-27Chemel, James L Cpa RENEWAL99Elwin Sharvill
1038Ivar H GarufiArgentina2025-07-24Benton, John B Jr NEGOTIATION17Anna Fali
1039Mujtaba O FollerFrance2025-07-18Dorl, James J Esq RENEWAL28Ioni Bowcher
1040James X MorascaCanada2025-07-23Commercial Press RENEWAL65Amy Elsner
1041Adams T PerinJapan2025-07-22Commercial Press RENEWAL79Amy Elsner
1042Ricardo H DilliardAustralia2025-07-27Printing Dimensions NEGOTIATION35Asiya Javayant
1043Rodrigues I RimUnited Kingdom2025-07-17Chanay, Jeffrey A Esq RENEWAL8Asiya Javayant
1044Jefferson P OstroskyRussia2025-08-03Chanay, Jeffrey A Esq NEW48Ioni Bowcher
1045Greenwood K FerenczBrazil2025-08-04Morlong Associates QUALIFIED33Anna Fali
1046Maisha M PaprockiUnited Kingdom2025-07-31Morlong Associates RENEWAL94Anna Fali
1047Maria Q MaletJapan2025-07-17Rangoni Of Florence PROPOSAL16Amy Elsner
1048David G StockhamFrance2025-07-20Feltz Printing Service RENEWAL45Amy Elsner
1049Silvio V ShinkoItaly2025-07-31Chapman, Ross E Esq NEW1Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Murillo I MarrierSpainXuxue Feng RENEWAL
Jeanfrancois D StensethSpainElwin Sharvill NEW
Jeanfrancois D MorascaSpainAnna Fali QUALIFIED
Stacey P BologniaAustraliaXuxue Feng RENEWAL
Tony M StockhamIndiaIoni Bowcher RENEWAL
Rodrigues D BologniaSpainIvan Magalhaes RENEWAL
Adams L GarufiRussiaStephen Shaw NEW
Maria S GillianSpainStephen Shaw PROPOSAL
Salvatore N DoeAustraliaXuxue Feng PROPOSAL
Juan U FlosiRussiaAmy Elsner QUALIFIED
Costa M AmigonJapanAsiya Javayant QUALIFIED
Arvin R CaudyIndiaElwin Sharvill RENEWAL
Chavez L FigeroaBrazilOnyama Limba PROPOSAL
Ivar M ShinkoRussiaIvan Magalhaes NEW
Aruna T MacleadRussiaAsiya Javayant NEW
Maria W SaylorsCanadaIvan Magalhaes UNQUALIFIED
Nicolas L PaprockiAustraliaOnyama Limba PROPOSAL
Salvatore I FerenczBrazilXuxue Feng NEW
Morrow W InouyeBrazilAsiya Javayant UNQUALIFIED
Juan H InouyeIndiaAnna Fali NEW
Mujtaba Y AlbaresBrazilAmy Elsner RENEWAL
Jefferson C NickaSpainXuxue Feng NEGOTIATION
Nicolas W RoysterGermanyAmy Elsner UNQUALIFIED
Greenwood C GillianRussiaElwin Sharvill UNQUALIFIED
Juan K ChuiCanadaOnyama Limba PROPOSAL
Emily B FigeroaGermanyStephen Shaw UNQUALIFIED
Juan V MaletGermanyAmy Elsner NEW
Maisha I IturbideUnited KingdomXuxue Feng PROPOSAL
Greenwood H PoquetteIndiaAmy Elsner PROPOSAL
Salvatore C InouyeIndiaStephen Shaw UNQUALIFIED
Smith V AmigonArgentinaAnna Fali PROPOSAL
Juan K WieserUnited KingdomAmy Elsner RENEWAL
Izzy B GarufiJapanXuxue Feng NEGOTIATION
Smith I NestleIndiaXuxue Feng NEGOTIATION
Kadeem F GillianSpainAnna Fali NEGOTIATION
Isabel M MaletRussiaAmy Elsner PROPOSAL
Juan C FigeroaCanadaAsiya Javayant PROPOSAL
Adams S GarufiJapanBernardo Dominic UNQUALIFIED
Stacey J SergiItalyAnna Fali NEW
Ivar L BriddickGermanyIvan Magalhaes NEW
Silvio T AlbaresBrazilXuxue Feng UNQUALIFIED
Costa N KuskoAustraliaIoni Bowcher QUALIFIED
Isabel H ButtItalyIoni Bowcher UNQUALIFIED
Leon R MaletItalyOnyama Limba QUALIFIED
Smith D BologniaUnited KingdomStephen Shaw NEW
Leja W WieserIndiaIoni Bowcher RENEWAL
Faith B RimBrazilStephen Shaw QUALIFIED
Ricardo N MacleadFranceIvan Magalhaes QUALIFIED
Stacey J MorascaCanadaXuxue Feng QUALIFIED
Antonio S SergiAustraliaStephen Shaw NEW
Frozen Columns
Name
Stacey L Campain
Leja H Ostrosky
Octavia K Ferencz
Maisha Z Kolmetz
Adams N Caudy
Izzy U Bolognia
Ivar Z Amigon
Julie P Briddick
Faith E Nestle
Ashley C Albares
Octavia Q Bolognia
Greenwood J Rim
Jeanfrancois Z Venere
Stacey D Stockham
James Z Paprocki
Jeanfrancois X Whobrey
Johnson H Caudy
Murillo A Bowley
Morrow R Bolognia
Octavia Q Schemmer
Johnson F Ruta
Maisha T Slusarski
Tony Z Kusko
Chavez Y Inouye
Stacey J Kolmetz
Munro W Morasca
Jennifer L Waycott
Kadeem N Poquette
Chavez U Campain
Leja Q Albares
Wickens F Briddick
Maria N Amigon
Munro M Nestle
Ivar H Ostrosky
Aika H Butt
Darci F Nestle
Sinclair D Flosi
Emily Q Sergi
Morrow L Amigon
Ivar Z Slusarski
Jefferson B Royster
David N Royster
Jefferson A Butt
James P Caudy
Emily G Briddick
Aditya O Flosi
Leon X Malet
Izzy V Garufi
Antonio Y Malet
Ivar L Maclead
IdCountryDate
1000France2025-07-16
1001France2025-07-30
1002Russia2025-07-31
1003Canada2025-07-18
1004Australia2025-07-17
1005Australia2025-07-20
1006Japan2025-07-16
1007Brazil2025-08-05
1008Canada2025-08-12
1009France2025-07-19
1010Spain2025-08-09
1011Germany2025-07-18
1012Argentina2025-08-12
1013Germany2025-08-13
1014India2025-08-02
1015Italy2025-07-16
1016Australia2025-07-18
1017Australia2025-07-23
1018Japan2025-08-03
1019United Kingdom2025-07-28
1020Japan2025-07-15
1021Italy2025-08-03
1022Argentina2025-08-11
1023India2025-07-24
1024United Kingdom2025-07-26
1025Spain2025-08-10
1026Spain2025-07-30
1027Brazil2025-07-25
1028Japan2025-08-06
1029Argentina2025-07-23
1030France2025-07-24
1031Canada2025-08-08
1032Italy2025-07-16
1033Brazil2025-07-20
1034Canada2025-07-21
1035Russia2025-07-21
1036Spain2025-08-10
1037Canada2025-08-10
1038Russia2025-08-11
1039Brazil2025-07-24
1040Brazil2025-07-22
1041Germany2025-08-11
1042Russia2025-08-01
1043Japan2025-08-11
1044Italy2025-07-23
1045Canada2025-08-10
1046Germany2025-08-10
1047Japan2025-07-23
1048Australia2025-08-12
1049Australia2025-07-19

On-Demand Data

NameIdCountryDate
Rodrigues J Albares1000United Kingdom2025-07-15
Misaki K Campain1001Argentina2025-07-18
Aika A Perin1002France2025-08-09
Jennifer Z Kolmetz1003Argentina2025-07-24
Juan Z Waycott1004Spain2025-08-10
Rodrigues L Albares1005Australia2025-08-10
Mayumi M Waycott1006France2025-08-09
Johnson Y Schemmer1007India2025-08-04
Tony V Saylors1008Australia2025-08-09
Munro T Ruta1009United Kingdom2025-08-11
Greenwood X Kusko1010Canada2025-07-21
Deepesh Q Nestle1011Germany2025-07-30
Aika D Chui1012Brazil2025-07-15
Ricardo P Caudy1013Japan2025-07-19
Adams O Campain1014United Kingdom2025-07-22
Darci P Nestle1015Spain2025-08-02
Clifford P Vocelka1016France2025-08-01
Adams P Kolmetz1017Argentina2025-08-06
Murillo R Caldarera1018Japan2025-07-28
Antonio R Tollner1019Russia2025-07-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues P ButtFranceAsiya Javayant PROPOSAL
Faith A SlusarskiAustraliaBernardo Dominic PROPOSAL
Jeanfrancois K FollerItalyAsiya Javayant NEW
Stacey T PaprockiJapanXuxue Feng QUALIFIED
Arvin Q OldroydAustraliaAnna Fali UNQUALIFIED
Clifford L SergiRussiaAsiya Javayant NEW
Ashley N VocelkaCanadaElwin Sharvill UNQUALIFIED
Leon E VenereJapanXuxue Feng PROPOSAL
Nicolas X GillianArgentinaIvan Magalhaes UNQUALIFIED
Jefferson F StockhamAustraliaAnna Fali NEW
Maisha L WaycottRussiaStephen Shaw PROPOSAL
Rodrigues O SlusarskiSpainAmy Elsner QUALIFIED
Jefferson E BologniaBrazilAnna Fali RENEWAL
Deepesh D PaprockiGermanyAnna Fali NEGOTIATION
Mayumi Y GarufiArgentinaAnna Fali RENEWAL
Octavia I SlusarskiUnited KingdomOnyama Limba NEGOTIATION
Isabel X WaycottGermanyOnyama Limba RENEWAL
James V SaylorsSpainElwin Sharvill UNQUALIFIED
Tony U SlusarskiJapanStephen Shaw PROPOSAL
Claire C StockhamBrazilXuxue Feng UNQUALIFIED
Aika F RimArgentinaAnna Fali RENEWAL
Costa A AmigonUnited KingdomAsiya Javayant QUALIFIED
Francesco D WieserCanadaAsiya Javayant NEGOTIATION
David W FerenczIndiaOnyama Limba RENEWAL
Ivar K PaprockiAustraliaAnna Fali RENEWAL
Clifford U MaletItalyElwin Sharvill QUALIFIED
Faith X GauchoSpainAnna Fali RENEWAL
Arvin J AmigonCanadaStephen Shaw RENEWAL
Octavia B OstroskyCanadaAmy Elsner RENEWAL
Ricardo B SergiArgentinaIoni Bowcher NEW
Jones N FigeroaIndiaBernardo Dominic NEGOTIATION
Ricardo A IturbideRussiaOnyama Limba UNQUALIFIED
Kadeem Q WhobreyJapanElwin Sharvill NEGOTIATION
Cody C MaletJapanAmy Elsner RENEWAL
Jeanfrancois X FerenczGermanyOnyama Limba PROPOSAL
Francesco J GlickUnited KingdomXuxue Feng UNQUALIFIED
Jennifer N MaletArgentinaIvan Magalhaes NEGOTIATION
Izzy I SergiGermanyIvan Magalhaes PROPOSAL
Morrow F InouyeGermanyIvan Magalhaes NEW
Munro P CampainGermanyIvan Magalhaes RENEWAL

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