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
Stacey U SchemmerItalyAsiya Javayant RENEWAL
Leja K MorascaItalyBernardo Dominic QUALIFIED
Wickens C DarakjyItalyIvan Magalhaes UNQUALIFIED
Claire S InouyeJapanAnna Fali NEGOTIATION
Julie Q CaudyCanadaIvan Magalhaes RENEWAL
Mujtaba B DilliardGermanyElwin Sharvill PROPOSAL
Jennifer O AmigonFranceIoni Bowcher NEGOTIATION
Maria R AmigonArgentinaIoni Bowcher UNQUALIFIED
Kadeem U VocelkaSpainElwin Sharvill NEGOTIATION
Aditya B MarrierIndiaStephen Shaw NEGOTIATION
Maria H BriddickFranceIoni Bowcher NEW
Deepesh X ChuiItalyOnyama Limba PROPOSAL
Cody R KuskoFranceXuxue Feng RENEWAL
Deepesh B WieserSpainAnna Fali QUALIFIED
Julie G BologniaIndiaAsiya Javayant UNQUALIFIED
Isabel P StensethSpainIoni Bowcher NEGOTIATION
Leon M SergiUnited KingdomAmy Elsner NEGOTIATION
Leon I IturbideFranceAnna Fali RENEWAL
Salvatore N RoysterIndiaAsiya Javayant NEGOTIATION
Antonio C WieserBrazilXuxue Feng NEW
Kadeem S FollerArgentinaXuxue Feng RENEWAL
Isabel F SchemmerAustraliaOnyama Limba NEW
Julie M WhobreyItalyIvan Magalhaes NEGOTIATION
Greenwood L IturbideJapanXuxue Feng RENEWAL
Leon V GlickUnited KingdomIvan Magalhaes NEW
Izzy T OstroskyAustraliaAsiya Javayant UNQUALIFIED
Nicolas K StockhamRussiaXuxue Feng NEGOTIATION
Juan H WieserUnited KingdomAnna Fali QUALIFIED
Johnson M VenereIndiaBernardo Dominic UNQUALIFIED
Ricardo D BriddickItalyAsiya Javayant UNQUALIFIED
Jennifer S WaycottGermanyAsiya Javayant RENEWAL
Alejandro K GlickIndiaXuxue Feng NEGOTIATION
Jefferson C DoeIndiaIoni Bowcher UNQUALIFIED
Ivar C GauchoGermanyXuxue Feng NEGOTIATION
Murillo M FigeroaFranceIvan Magalhaes NEGOTIATION
Jefferson O StockhamFranceBernardo Dominic PROPOSAL
David C CaldareraRussiaIvan Magalhaes PROPOSAL
Aditya I DilliardCanadaBernardo Dominic NEGOTIATION
Smith O DoeAustraliaXuxue Feng NEGOTIATION
James Q MorascaGermanyIoni Bowcher PROPOSAL
Octavia L FlosiJapanAsiya Javayant UNQUALIFIED
Deepesh M ChuiGermanyAnna Fali UNQUALIFIED
Deepesh A GauchoCanadaStephen Shaw RENEWAL
Julie N WieserArgentinaBernardo Dominic QUALIFIED
Cody Z DarakjyJapanBernardo Dominic RENEWAL
Octavia V FollerJapanIvan Magalhaes UNQUALIFIED
Rodrigues S DoeGermanyOnyama Limba RENEWAL
Aika R NickaRussiaIoni Bowcher PROPOSAL
Jefferson I InouyeIndiaBernardo Dominic NEW
Deepesh D DarakjyItalyOnyama Limba UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja R InouyeItalyXuxue Feng QUALIFIED
Jones Z MorascaAustraliaXuxue Feng UNQUALIFIED
Jones D VenereSpainAsiya Javayant QUALIFIED
Maria T FerenczArgentinaAnna Fali PROPOSAL
Jeanfrancois U GauchoArgentinaStephen Shaw QUALIFIED
Arvin L WieserBrazilAmy Elsner NEGOTIATION
Cody S DoeAustraliaIoni Bowcher PROPOSAL
Leja I NestleRussiaBernardo Dominic RENEWAL
Isabel C GillianIndiaAnna Fali PROPOSAL
Kadeem J PerinArgentinaXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Johnson P IturbideIndia2025-08-16Printing Dimensions NEGOTIATION58Asiya Javayant
1001Maria Q WaycottCanada2025-08-01King, Christopher A Esq NEGOTIATION51Stephen Shaw
1002Jennifer D VocelkaRussia2025-08-10Buckley Miller Wright NEW85Bernardo Dominic
1003Emily B GauchoAustralia2025-08-18Printing Dimensions NEW29Elwin Sharvill
1004Leja C IturbideAustralia2025-08-20Rousseaux, Michael Esq RENEWAL83Stephen Shaw
1005Aruna W RimCanada2025-08-20Chanay, Jeffrey A Esq NEGOTIATION63Ioni Bowcher
1006Ivar V VenereUnited Kingdom2025-08-12King, Christopher A Esq NEGOTIATION47Onyama Limba
1007Arvin D CampainIndia2025-07-28Dorl, James J Esq NEW12Stephen Shaw
1008Clifford Z VenereRussia2025-08-19Buckley Miller Wright UNQUALIFIED95Amy Elsner
1009Emily I TollnerSpain2025-07-28King, Christopher A Esq QUALIFIED47Bernardo Dominic
1010Jeanfrancois X GlickIndia2025-07-30Buckley Miller Wright NEW54Amy Elsner
1011Jennifer V CaudyAustralia2025-08-22Chapman, Ross E Esq UNQUALIFIED64Ioni Bowcher
1012Octavia O PoquetteUnited Kingdom2025-08-03Rangoni Of Florence NEGOTIATION22Ioni Bowcher
1013Alejandro H FerenczArgentina2025-08-15Printing Dimensions NEW8Asiya Javayant
1014Morrow M AmigonAustralia2025-07-31Truhlar And Truhlar Attys NEW19Ioni Bowcher
1015Mayumi N FerenczAustralia2025-08-16Morlong Associates QUALIFIED24Ivan Magalhaes
1016Claire H WaycottRussia2025-08-07Rousseaux, Michael Esq NEGOTIATION89Asiya Javayant
1017Alejandro U NestleUnited Kingdom2025-08-16Buckley Miller Wright QUALIFIED16Anna Fali
1018Aruna S RoysterAustralia2025-08-21Buckley Miller Wright UNQUALIFIED71Bernardo Dominic
1019Aruna A ShinkoUnited Kingdom2025-08-08Morlong Associates RENEWAL8Amy Elsner
1020Jeanfrancois N AmigonIndia2025-08-22Feiner Bros UNQUALIFIED0Xuxue Feng
1021Darci A GauchoRussia2025-08-07Feiner Bros NEGOTIATION27Bernardo Dominic
1022Sinclair J RoysterItaly2025-08-04Dorl, James J Esq PROPOSAL61Stephen Shaw
1023Jeanfrancois Y SlusarskiBrazil2025-07-30Feltz Printing Service QUALIFIED4Stephen Shaw
1024Rodrigues T ButtIndia2025-08-07Rousseaux, Michael Esq NEGOTIATION78Bernardo Dominic
1025Morrow L BologniaGermany2025-08-08Rangoni Of Florence RENEWAL54Ioni Bowcher
1026Stacey M NestleFrance2025-08-04Rangoni Of Florence NEW78Ioni Bowcher
1027Leon H WaycottItaly2025-08-06King, Christopher A Esq UNQUALIFIED34Ioni Bowcher
1028Octavia Z BriddickAustralia2025-08-18Rousseaux, Michael Esq NEW78Xuxue Feng
1029Octavia H WieserSpain2025-08-03King, Christopher A Esq PROPOSAL62Ioni Bowcher
1030Sinclair N MaletUnited Kingdom2025-07-31Truhlar And Truhlar Attys RENEWAL55Xuxue Feng
1031Morrow J ButtArgentina2025-08-12Buckley Miller Wright NEW9Stephen Shaw
1032Antonio X WhobreyAustralia2025-08-08Rousseaux, Michael Esq NEGOTIATION26Xuxue Feng
1033Mayumi Y SlusarskiBrazil2025-08-12King, Christopher A Esq NEW99Amy Elsner
1034Stacey S StockhamSpain2025-08-03Dorl, James J Esq NEGOTIATION67Stephen Shaw
1035Aditya F KolmetzAustralia2025-08-12Chapman, Ross E Esq NEW16Onyama Limba
1036Silvio N NickaGermany2025-08-01Dorl, James J Esq QUALIFIED99Elwin Sharvill
1037Wickens S VenereAustralia2025-08-12Rousseaux, Michael Esq PROPOSAL80Onyama Limba
1038Mayumi P StensethIndia2025-08-05Morlong Associates NEW93Amy Elsner
1039Francesco L ChuiItaly2025-08-09Feltz Printing Service RENEWAL39Xuxue Feng
1040Leon J GauchoJapan2025-08-10Feiner Bros UNQUALIFIED88Amy Elsner
1041Antonio V RimBrazil2025-08-14Morlong Associates RENEWAL25Bernardo Dominic
1042David T GauchoRussia2025-08-16Chapman, Ross E Esq UNQUALIFIED1Stephen Shaw
1043Ashley S RimIndia2025-08-12Chanay, Jeffrey A Esq PROPOSAL39Ivan Magalhaes
1044Deepesh Y StockhamGermany2025-08-17Buckley Miller Wright QUALIFIED48Anna Fali
1045Maisha A StensethFrance2025-08-12King, Christopher A Esq PROPOSAL99Amy Elsner
1046Misaki M RutaFrance2025-08-24Chapman, Ross E Esq QUALIFIED2Elwin Sharvill
1047Faith A FlosiSpain2025-08-26Morlong Associates NEGOTIATION5Elwin Sharvill
1048Morrow M GarufiFrance2025-07-31Feltz Printing Service QUALIFIED61Bernardo Dominic
1049Misaki M GillianItaly2025-08-11Rousseaux, Michael Esq NEW91Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Juan F KolmetzAustraliaAmy Elsner UNQUALIFIED
Maisha Q RimBrazilIvan Magalhaes RENEWAL
Jefferson S RoysterJapanBernardo Dominic QUALIFIED
Cody P DilliardUnited KingdomAnna Fali QUALIFIED
Leja A StensethIndiaAsiya Javayant QUALIFIED
Morrow V RutaAustraliaStephen Shaw NEW
Wickens Z FollerUnited KingdomXuxue Feng RENEWAL
Maria N SlusarskiBrazilXuxue Feng UNQUALIFIED
Salvatore L SchemmerFranceXuxue Feng NEW
Aika V DoeAustraliaStephen Shaw QUALIFIED
Jones T AmigonArgentinaElwin Sharvill NEW
Nicolas D MacleadAustraliaAmy Elsner NEGOTIATION
Sinclair Y WhobreyIndiaIvan Magalhaes NEW
Jefferson Q FollerAustraliaElwin Sharvill PROPOSAL
Juan P ShinkoItalyIoni Bowcher QUALIFIED
Leon E DoeAustraliaBernardo Dominic RENEWAL
Antonio Y GillianRussiaXuxue Feng NEW
Maisha I OldroydJapanAmy Elsner PROPOSAL
Wickens X WieserFranceAnna Fali RENEWAL
Greenwood D MaletIndiaIvan Magalhaes NEW
Maisha X GarufiJapanIoni Bowcher QUALIFIED
Smith O FollerCanadaAsiya Javayant RENEWAL
Salvatore W PerinArgentinaElwin Sharvill UNQUALIFIED
Murillo O IturbideFranceAmy Elsner UNQUALIFIED
David N TollnerCanadaIvan Magalhaes NEGOTIATION
Nicolas R GauchoItalyAsiya Javayant UNQUALIFIED
Kaitlin F PerinIndiaAmy Elsner UNQUALIFIED
Greenwood R NestleFranceStephen Shaw RENEWAL
Aditya L RoysterFranceIvan Magalhaes NEGOTIATION
Emily H InouyeSpainIoni Bowcher RENEWAL
Julie P ShinkoBrazilStephen Shaw NEGOTIATION
Clifford C AlbaresIndiaAnna Fali QUALIFIED
David N FerenczJapanXuxue Feng NEGOTIATION
James X RutaItalyAmy Elsner NEGOTIATION
Costa Q BriddickUnited KingdomIvan Magalhaes UNQUALIFIED
Murillo D FollerJapanAmy Elsner UNQUALIFIED
Isabel W OstroskyArgentinaIvan Magalhaes UNQUALIFIED
Clifford N SchemmerBrazilStephen Shaw PROPOSAL
Misaki I MarrierUnited KingdomIvan Magalhaes UNQUALIFIED
Leon Q CaudyAustraliaElwin Sharvill NEW
Maria B GarufiAustraliaAsiya Javayant UNQUALIFIED
Maisha I CampainItalyElwin Sharvill RENEWAL
Chavez L AmigonFranceXuxue Feng QUALIFIED
Jones Y FollerJapanIoni Bowcher QUALIFIED
Julie G PoquetteIndiaElwin Sharvill NEW
Isabel T TollnerIndiaElwin Sharvill PROPOSAL
Juan L SlusarskiSpainXuxue Feng NEW
Alejandro L GauchoCanadaElwin Sharvill NEW
James D RimIndiaOnyama Limba PROPOSAL
Leon J FigeroaSpainXuxue Feng NEW
Frozen Columns
Name
Aika O Figeroa
Leon E Malet
Chavez Q Oldroyd
Greenwood S Dilliard
Kaitlin H Caudy
Cody M Waycott
Ivar S Inouye
Claire R Paprocki
Greenwood T Flosi
Morrow J Stenseth
Arvin O Bowley
Antonio O Albares
Rodrigues B Morasca
Aditya L Caudy
Julie B Kolmetz
Ricardo B Waycott
Leon U Caldarera
Munro M Campain
Jones K Oldroyd
Jeanfrancois B Nestle
Maria M Rim
Sinclair I Gillian
Aditya X Stenseth
Antonio D Stockham
Murillo M Vocelka
Izzy T Slusarski
Sinclair X Ruta
Antonio O Garufi
Chavez D Paprocki
Mayumi L Stockham
Octavia W Ruta
Costa O Schemmer
Nicolas V Schemmer
Claire I Inouye
Greenwood O Stockham
Aditya R Stockham
James A Kolmetz
Ricardo C Nestle
Ricardo E Maclead
Silvio R Figeroa
Ivar W Foller
Nicolas C Ruta
Izzy M Paprocki
Maisha H Campain
Tony D Dilliard
Jones O Flosi
Stacey T Briddick
Leon J Chui
Faith U Ostrosky
James A Figeroa
IdCountryDate
1000France2025-08-19
1001Argentina2025-08-06
1002Argentina2025-08-16
1003United Kingdom2025-08-06
1004Canada2025-08-12
1005France2025-08-21
1006Australia2025-08-03
1007Brazil2025-07-29
1008France2025-07-28
1009Italy2025-08-04
1010Brazil2025-08-05
1011Australia2025-08-18
1012Germany2025-08-22
1013Spain2025-08-10
1014Brazil2025-08-14
1015Italy2025-08-12
1016Spain2025-08-09
1017Spain2025-08-13
1018United Kingdom2025-07-31
1019Spain2025-08-11
1020Spain2025-08-25
1021Italy2025-08-05
1022India2025-08-05
1023United Kingdom2025-08-06
1024Argentina2025-07-29
1025France2025-08-13
1026Japan2025-08-14
1027Canada2025-08-17
1028Canada2025-07-31
1029Germany2025-07-29
1030Spain2025-07-29
1031Germany2025-08-17
1032Italy2025-08-11
1033Germany2025-08-14
1034Japan2025-08-12
1035Japan2025-08-05
1036Argentina2025-08-20
1037United Kingdom2025-08-09
1038Germany2025-08-17
1039Japan2025-08-15
1040Spain2025-08-03
1041France2025-08-25
1042Japan2025-08-09
1043Canada2025-08-25
1044Argentina2025-08-14
1045Australia2025-08-09
1046United Kingdom2025-08-26
1047Brazil2025-08-25
1048Brazil2025-08-20
1049Spain2025-08-07

On-Demand Data

NameIdCountryDate
Sinclair L Inouye1000Russia2025-08-22
Tony D Whobrey1001Italy2025-08-02
Maria K Flosi1002Spain2025-08-09
Izzy T Schemmer1003France2025-08-12
Ricardo V Bolognia1004France2025-08-17
David U Royster1005India2025-08-07
Ricardo A Rim1006United Kingdom2025-08-24
Rodrigues O Gaucho1007Russia2025-07-31
Maria C Oldroyd1008Argentina2025-08-10
Sinclair O Slusarski1009Russia2025-07-29
Francesco A Iturbide1010Spain2025-08-22
Ivar Y Saylors1011United Kingdom2025-07-29
Juan S Ferencz1012Brazil2025-08-26
Leja U Inouye1013United Kingdom2025-08-25
Silvio W Marrier1014Canada2025-08-17
Greenwood U Stockham1015Canada2025-08-14
Silvio K Iturbide1016Russia2025-08-05
Morrow Y Venere1017Spain2025-08-13
Isabel K Amigon1018Japan2025-08-02
Aditya K Ostrosky1019Japan2025-08-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas V MacleadCanadaXuxue Feng UNQUALIFIED
Murillo Y ShinkoGermanyIoni Bowcher RENEWAL
Kaitlin T FollerArgentinaAmy Elsner PROPOSAL
Ashley M DarakjyIndiaBernardo Dominic UNQUALIFIED
Wickens Y FigeroaCanadaXuxue Feng QUALIFIED
Emily T DoeFranceAnna Fali RENEWAL
Juan C GauchoArgentinaAsiya Javayant UNQUALIFIED
Aika R CaldareraUnited KingdomOnyama Limba NEGOTIATION
Leon N GauchoSpainBernardo Dominic RENEWAL
Sinclair G InouyeIndiaIoni Bowcher PROPOSAL
Francesco F MorascaIndiaIvan Magalhaes PROPOSAL
Izzy Z PoquetteAustraliaIoni Bowcher RENEWAL
Mujtaba X SchemmerBrazilIvan Magalhaes RENEWAL
Johnson D SergiJapanOnyama Limba RENEWAL
Aditya W DoeRussiaBernardo Dominic UNQUALIFIED
Kadeem Z MacleadAustraliaIoni Bowcher NEW
Aruna M VenereUnited KingdomOnyama Limba PROPOSAL
Jones T SergiSpainStephen Shaw PROPOSAL
Stacey V KolmetzArgentinaAmy Elsner RENEWAL
Deepesh Q MaletArgentinaOnyama Limba PROPOSAL
Leja C GauchoItalyIvan Magalhaes UNQUALIFIED
Darci A StensethItalyElwin Sharvill NEW
Nicolas D VenereGermanyStephen Shaw UNQUALIFIED
David P WaycottSpainBernardo Dominic NEGOTIATION
Aruna D GarufiCanadaXuxue Feng NEW
David L GarufiUnited KingdomIoni Bowcher QUALIFIED
Silvio A StockhamCanadaIvan Magalhaes UNQUALIFIED
Clifford F IturbideSpainXuxue Feng NEGOTIATION
Claire A MaletGermanyStephen Shaw NEW
Isabel U PoquetteGermanyAsiya Javayant NEW
Ivar Q BowleyItalyXuxue Feng RENEWAL
Jones U CampainSpainAsiya Javayant RENEWAL
Aika Y GillianJapanStephen Shaw NEW
Antonio Q AlbaresArgentinaElwin Sharvill PROPOSAL
Antonio T BowleyJapanAmy Elsner RENEWAL
Jennifer Z OldroydAustraliaXuxue Feng QUALIFIED
Costa L BowleyIndiaAnna Fali NEGOTIATION
Jennifer Y MarrierFranceStephen Shaw NEGOTIATION
Munro F BriddickArgentinaOnyama Limba QUALIFIED
Adams Q SergiFranceElwin Sharvill 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>