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
Ivar Z PaprockiCanadaBernardo Dominic QUALIFIED
Kaitlin Z RimIndiaOnyama Limba NEW
Costa F ButtItalyElwin Sharvill NEGOTIATION
Greenwood N MorascaFranceAnna Fali QUALIFIED
Kaitlin V AlbaresRussiaAnna Fali NEGOTIATION
Cody A SlusarskiArgentinaElwin Sharvill RENEWAL
Claire G WhobreyArgentinaAsiya Javayant RENEWAL
Ashley M PerinIndiaXuxue Feng RENEWAL
Jeanfrancois E GlickArgentinaAmy Elsner NEGOTIATION
Mayumi M GarufiRussiaBernardo Dominic QUALIFIED
Darci H WhobreyRussiaOnyama Limba PROPOSAL
Smith G FlosiJapanStephen Shaw PROPOSAL
Silvio W WieserIndiaAmy Elsner PROPOSAL
Chavez Y RoysterJapanElwin Sharvill RENEWAL
Johnson A OldroydFranceAsiya Javayant NEGOTIATION
Misaki Z CaudyAustraliaXuxue Feng RENEWAL
Tony X InouyeGermanyElwin Sharvill QUALIFIED
Leon C FlosiBrazilStephen Shaw NEW
Nicolas B NickaIndiaAmy Elsner RENEWAL
Juan N SchemmerIndiaOnyama Limba PROPOSAL
Julie X FerenczUnited KingdomAnna Fali NEW
Maria Z MaletAustraliaElwin Sharvill RENEWAL
Leon I MarrierRussiaIvan Magalhaes QUALIFIED
Isabel G GlickArgentinaAnna Fali RENEWAL
Isabel T RulapaughCanadaAnna Fali QUALIFIED
Emily H VenereCanadaAmy Elsner QUALIFIED
Munro N CampainAustraliaElwin Sharvill RENEWAL
Aika B ButtUnited KingdomOnyama Limba QUALIFIED
Stacey H AlbaresBrazilIvan Magalhaes QUALIFIED
Jeanfrancois M RulapaughItalyElwin Sharvill PROPOSAL
Jones Y BowleyGermanyAmy Elsner QUALIFIED
Darci P GillianSpainAmy Elsner NEGOTIATION
Darci I CampainCanadaAsiya Javayant UNQUALIFIED
Ivar K WaycottUnited KingdomAsiya Javayant UNQUALIFIED
Emily A RoysterUnited KingdomIvan Magalhaes NEGOTIATION
Alejandro C InouyeCanadaAsiya Javayant QUALIFIED
Clifford S MorascaJapanElwin Sharvill RENEWAL
Emily Q CaudyIndiaAsiya Javayant NEW
Jefferson K FollerBrazilIoni Bowcher NEGOTIATION
Izzy X SergiItalyStephen Shaw RENEWAL
Jones W PerinRussiaStephen Shaw NEGOTIATION
Greenwood I ChuiBrazilOnyama Limba NEW
Greenwood A RimCanadaStephen Shaw NEW
Isabel T MaletUnited KingdomAmy Elsner UNQUALIFIED
Juan D PerinIndiaAmy Elsner PROPOSAL
Darci K MaletCanadaAmy Elsner NEW
Cody D OldroydFranceXuxue Feng QUALIFIED
Stacey N CampainFranceAnna Fali PROPOSAL
Ashley K RulapaughAustraliaXuxue Feng NEW
Cody V SergiUnited KingdomAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Kadeem U DarakjyFranceAnna Fali RENEWAL
Julie W KuskoArgentinaIvan Magalhaes PROPOSAL
Jefferson N FerenczAustraliaIvan Magalhaes RENEWAL
Leja N SaylorsItalyElwin Sharvill PROPOSAL
Munro H CampainCanadaOnyama Limba RENEWAL
Julie C SaylorsAustraliaElwin Sharvill NEGOTIATION
Arvin G BriddickCanadaXuxue Feng QUALIFIED
Munro M BowleyBrazilIvan Magalhaes PROPOSAL
Chavez P RulapaughUnited KingdomIvan Magalhaes RENEWAL
Cody Q KuskoAustraliaAsiya Javayant RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin P BriddickFrance2025-09-30Rangoni Of Florence RENEWAL55Asiya Javayant
1001Julie Z PoquetteIndia2025-10-04King, Christopher A Esq RENEWAL60Bernardo Dominic
1002Ashley L KuskoSpain2025-09-24Feltz Printing Service QUALIFIED42Ivan Magalhaes
1003Adams N BologniaUnited Kingdom2025-09-18Dorl, James J Esq UNQUALIFIED21Asiya Javayant
1004Johnson U PerinIndia2025-09-11Rousseaux, Michael Esq RENEWAL6Bernardo Dominic
1005Jennifer S PerinFrance2025-09-24Chapman, Ross E Esq NEW69Ioni Bowcher
1006Leon E BologniaIndia2025-09-20Truhlar And Truhlar Attys PROPOSAL67Bernardo Dominic
1007Sinclair E NestleJapan2025-10-07Rousseaux, Michael Esq RENEWAL62Bernardo Dominic
1008Chavez A DarakjyRussia2025-09-23Rousseaux, Michael Esq PROPOSAL69Amy Elsner
1009Darci S KuskoArgentina2025-09-28Chemel, James L Cpa NEW14Anna Fali
1010Mujtaba R FollerAustralia2025-09-26Buckley Miller Wright PROPOSAL69Asiya Javayant
1011Ivar Q CampainAustralia2025-09-21Chanay, Jeffrey A Esq NEW10Ivan Magalhaes
1012Ricardo M SaylorsItaly2025-09-25Morlong Associates RENEWAL61Xuxue Feng
1013Cody G StensethUnited Kingdom2025-09-08Benton, John B Jr QUALIFIED8Ioni Bowcher
1014Ivar R SaylorsItaly2025-09-25Feiner Bros QUALIFIED42Ioni Bowcher
1015Jefferson O NestleRussia2025-09-24Chapman, Ross E Esq RENEWAL52Amy Elsner
1016Silvio Z OstroskyBrazil2025-10-07Commercial Press QUALIFIED65Amy Elsner
1017Ashley V SlusarskiBrazil2025-09-27King, Christopher A Esq NEGOTIATION17Elwin Sharvill
1018Ivar N DilliardSpain2025-10-07Chanay, Jeffrey A Esq NEW92Asiya Javayant
1019Leja X PerinCanada2025-10-03Chapman, Ross E Esq QUALIFIED68Stephen Shaw
1020Jones Z RimFrance2025-09-14King, Christopher A Esq NEW17Onyama Limba
1021Kadeem D RoysterFrance2025-10-05Dorl, James J Esq RENEWAL71Ivan Magalhaes
1022Nicolas E GlickArgentina2025-09-30Chemel, James L Cpa UNQUALIFIED67Ivan Magalhaes
1023Leja T BriddickBrazil2025-09-24Feiner Bros RENEWAL38Onyama Limba
1024Silvio F ButtItaly2025-10-05Chanay, Jeffrey A Esq PROPOSAL12Xuxue Feng
1025Adams B CaldareraBrazil2025-09-20Feltz Printing Service UNQUALIFIED56Ioni Bowcher
1026Wickens L InouyeAustralia2025-09-24Rousseaux, Michael Esq UNQUALIFIED37Ioni Bowcher
1027Juan X ButtGermany2025-09-09Chanay, Jeffrey A Esq QUALIFIED70Xuxue Feng
1028Stacey K RutaIndia2025-10-02Commercial Press QUALIFIED86Onyama Limba
1029Alejandro D VenereJapan2025-09-30Rousseaux, Michael Esq UNQUALIFIED40Anna Fali
1030Arvin S TollnerRussia2025-09-10Buckley Miller Wright PROPOSAL15Elwin Sharvill
1031Jones C FollerUnited Kingdom2025-09-17Truhlar And Truhlar Attys UNQUALIFIED76Onyama Limba
1032Francesco W MorascaBrazil2025-09-15Chemel, James L Cpa RENEWAL78Ioni Bowcher
1033Octavia Y PerinSpain2025-09-22Buckley Miller Wright RENEWAL44Asiya Javayant
1034Jefferson J ShinkoItaly2025-10-06Commercial Press UNQUALIFIED35Amy Elsner
1035Francesco N TollnerArgentina2025-10-03Rangoni Of Florence QUALIFIED74Bernardo Dominic
1036Jones V OstroskyGermany2025-09-26Commercial Press RENEWAL55Stephen Shaw
1037Ivar F SchemmerGermany2025-09-11King, Christopher A Esq PROPOSAL63Anna Fali
1038Chavez Z RoysterGermany2025-09-26Chemel, James L Cpa NEW70Anna Fali
1039Ricardo F VenereIndia2025-09-19Rangoni Of Florence RENEWAL57Onyama Limba
1040Adams K InouyeGermany2025-10-05Chanay, Jeffrey A Esq UNQUALIFIED8Ioni Bowcher
1041Jennifer S NestleAustralia2025-09-27Rangoni Of Florence QUALIFIED8Asiya Javayant
1042Isabel C InouyeArgentina2025-09-24Benton, John B Jr NEGOTIATION73Amy Elsner
1043Izzy C VenereSpain2025-09-12Rangoni Of Florence PROPOSAL8Asiya Javayant
1044Silvio R MacleadJapan2025-10-03Morlong Associates UNQUALIFIED85Ivan Magalhaes
1045David P FlosiIndia2025-09-13Commercial Press NEGOTIATION21Bernardo Dominic
1046Francesco D ShinkoBrazil2025-09-14Rousseaux, Michael Esq PROPOSAL0Ivan Magalhaes
1047Munro U OldroydItaly2025-09-23Chanay, Jeffrey A Esq NEGOTIATION28Ivan Magalhaes
1048Maisha F SchemmerFrance2025-10-07Rousseaux, Michael Esq RENEWAL19Ioni Bowcher
1049Jennifer M DarakjyFrance2025-10-03Chapman, Ross E Esq UNQUALIFIED44Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin X MacleadItalyOnyama Limba NEGOTIATION
Cody L MarrierSpainIoni Bowcher UNQUALIFIED
Ricardo C NestleCanadaAsiya Javayant UNQUALIFIED
Murillo P MaletBrazilXuxue Feng RENEWAL
Adams D WieserArgentinaStephen Shaw QUALIFIED
Deepesh E ShinkoGermanyXuxue Feng QUALIFIED
Kaitlin F DoeSpainBernardo Dominic RENEWAL
Sinclair C CampainBrazilAnna Fali UNQUALIFIED
Adams U VenereArgentinaBernardo Dominic QUALIFIED
David E WaycottFranceElwin Sharvill PROPOSAL
Faith Z TollnerBrazilOnyama Limba UNQUALIFIED
Ashley U DoeAustraliaIvan Magalhaes UNQUALIFIED
Ashley M WieserFranceAmy Elsner NEW
Tony U RoysterArgentinaElwin Sharvill RENEWAL
Mayumi C CaudyBrazilXuxue Feng QUALIFIED
Salvatore W InouyeBrazilAsiya Javayant RENEWAL
Adams V GauchoAustraliaElwin Sharvill NEW
Claire K SaylorsRussiaBernardo Dominic PROPOSAL
Costa J NickaSpainOnyama Limba RENEWAL
Jefferson E BowleyGermanyIoni Bowcher PROPOSAL
Darci U CampainIndiaAsiya Javayant QUALIFIED
Murillo D FollerGermanyAsiya Javayant NEW
Francesco D PerinIndiaAsiya Javayant QUALIFIED
Jennifer H AlbaresBrazilAnna Fali RENEWAL
Salvatore O PerinItalyXuxue Feng RENEWAL
Juan Q CampainBrazilOnyama Limba NEGOTIATION
Emily D GauchoRussiaIvan Magalhaes NEW
Francesco X BologniaCanadaAnna Fali PROPOSAL
Maisha A AlbaresCanadaIoni Bowcher QUALIFIED
Izzy O OstroskyItalyStephen Shaw NEGOTIATION
Cody L WieserRussiaXuxue Feng NEGOTIATION
Juan L GlickCanadaAmy Elsner QUALIFIED
Wickens O FlosiAustraliaAmy Elsner NEW
Munro Y DilliardGermanyAmy Elsner NEGOTIATION
Adams N WieserRussiaIvan Magalhaes UNQUALIFIED
Alejandro I MarrierFranceElwin Sharvill UNQUALIFIED
Aruna W PerinIndiaIvan Magalhaes NEW
Tony H AlbaresCanadaStephen Shaw PROPOSAL
Jeanfrancois B DoeRussiaXuxue Feng UNQUALIFIED
Ricardo S RulapaughGermanyXuxue Feng PROPOSAL
Chavez Z AlbaresBrazilElwin Sharvill NEGOTIATION
Nicolas L PoquetteFranceStephen Shaw QUALIFIED
Emily F GauchoFranceIoni Bowcher RENEWAL
Jennifer H DilliardItalyBernardo Dominic PROPOSAL
Tony W PoquetteItalyAsiya Javayant RENEWAL
Isabel D KuskoBrazilStephen Shaw UNQUALIFIED
Mayumi N FerenczCanadaIvan Magalhaes NEGOTIATION
Jones Z PaprockiSpainOnyama Limba QUALIFIED
Antonio K WieserRussiaIvan Magalhaes RENEWAL
Izzy S SchemmerFranceAsiya Javayant PROPOSAL
Frozen Columns
Name
Johnson R Sergi
Cody Q Nestle
Emily O Caudy
Leon Y Sergi
Mayumi M Iturbide
Mayumi U Ferencz
Johnson P Sergi
Maria N Campain
Johnson M Dilliard
Aditya X Poquette
Claire L Malet
Kadeem I Garufi
Rodrigues O Chui
Aditya E Sergi
Rodrigues U Bolognia
Julie C Slusarski
Faith D Tollner
Murillo O Whobrey
Leja I Dilliard
Misaki U Vocelka
Darci V Figeroa
Salvatore K Malet
Darci X Oldroyd
Jennifer B Poquette
Faith C Flosi
Smith D Marrier
Antonio U Ferencz
Arvin L Shinko
Munro A Vocelka
Leon X Bowley
Jennifer U Malet
Smith Z Iturbide
Clifford M Foller
Antonio A Vocelka
Alejandro J Gillian
Greenwood E Poquette
Murillo M Amigon
Francesco M Nicka
Maria N Chui
Arvin J Iturbide
Jennifer A Slusarski
Deepesh B Vocelka
Alejandro O Bolognia
Jennifer L Nestle
Deepesh A Foller
Francesco E Wieser
Arvin D Figeroa
Francesco K Malet
Juan P Maclead
Juan F Paprocki
IdCountryDate
1000Italy2025-09-12
1001Argentina2025-09-15
1002Brazil2025-09-20
1003India2025-09-27
1004Japan2025-09-21
1005Russia2025-10-04
1006Spain2025-10-07
1007India2025-09-12
1008India2025-10-06
1009France2025-10-04
1010Spain2025-10-04
1011Russia2025-09-22
1012Germany2025-10-04
1013France2025-09-25
1014Spain2025-09-26
1015Germany2025-09-30
1016Spain2025-09-08
1017Australia2025-09-10
1018India2025-09-25
1019Italy2025-09-08
1020Canada2025-09-27
1021Germany2025-09-21
1022Australia2025-09-12
1023France2025-09-14
1024Italy2025-09-13
1025Germany2025-09-20
1026Italy2025-09-16
1027Spain2025-09-25
1028Argentina2025-09-21
1029United Kingdom2025-09-16
1030France2025-09-15
1031Argentina2025-09-10
1032Australia2025-10-04
1033Russia2025-09-17
1034Australia2025-09-24
1035India2025-09-25
1036Canada2025-10-05
1037Spain2025-09-17
1038France2025-09-28
1039India2025-09-11
1040France2025-09-16
1041Russia2025-09-28
1042Canada2025-09-21
1043United Kingdom2025-09-21
1044Canada2025-09-23
1045India2025-09-29
1046Germany2025-09-20
1047Canada2025-09-10
1048France2025-09-18
1049United Kingdom2025-09-20

On-Demand Data

NameIdCountryDate
Emily L Marrier1000Spain2025-09-17
Stacey A Amigon1001Spain2025-10-02
Julie N Whobrey1002Brazil2025-09-13
Morrow H Caldarera1003Germany2025-10-02
Isabel L Schemmer1004Germany2025-10-02
David M Wieser1005Italy2025-09-13
Ricardo C Paprocki1006Germany2025-09-26
Murillo D Morasca1007Australia2025-09-29
Claire S Whobrey1008Argentina2025-10-01
Jefferson A Amigon1009Germany2025-10-02
Mujtaba R Schemmer1010Italy2025-10-07
Mujtaba E Kusko1011United Kingdom2025-09-23
Alejandro K Bowley1012Russia2025-09-22
Silvio W Foller1013Spain2025-09-29
Silvio G Oldroyd1014Brazil2025-09-15
Leon E Slusarski1015Canada2025-09-28
Nicolas R Glick1016Spain2025-09-08
Darci T Briddick1017Russia2025-09-12
Johnson S Figeroa1018Japan2025-10-05
Chavez J Caudy1019Japan2025-09-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya S MacleadAustraliaXuxue Feng NEGOTIATION
Smith W WieserCanadaXuxue Feng NEW
Mayumi K RutaSpainIvan Magalhaes PROPOSAL
Rodrigues B KolmetzCanadaStephen Shaw NEW
Smith K OstroskyIndiaIoni Bowcher RENEWAL
Faith S AlbaresBrazilIvan Magalhaes NEGOTIATION
David V GillianRussiaElwin Sharvill PROPOSAL
Morrow A DarakjyBrazilElwin Sharvill NEGOTIATION
Deepesh L WaycottRussiaElwin Sharvill NEGOTIATION
Adams T KuskoUnited KingdomXuxue Feng RENEWAL
James Q RulapaughCanadaStephen Shaw NEW
Nicolas O BowleyBrazilStephen Shaw UNQUALIFIED
Jefferson T BologniaFranceStephen Shaw NEW
Leja J DilliardFranceBernardo Dominic QUALIFIED
Jeanfrancois G FerenczCanadaIoni Bowcher PROPOSAL
Misaki D BowleyUnited KingdomElwin Sharvill QUALIFIED
Izzy W RutaSpainBernardo Dominic PROPOSAL
Faith J WhobreyUnited KingdomAnna Fali UNQUALIFIED
Maisha F FerenczFranceIvan Magalhaes QUALIFIED
Jeanfrancois E BologniaArgentinaBernardo Dominic PROPOSAL
Jeanfrancois H KolmetzIndiaElwin Sharvill QUALIFIED
Maisha W RulapaughJapanOnyama Limba UNQUALIFIED
Stacey M CampainIndiaIoni Bowcher UNQUALIFIED
Darci S NestleBrazilAsiya Javayant PROPOSAL
Misaki P RimAustraliaIoni Bowcher NEW
Faith X RoysterIndiaAsiya Javayant RENEWAL
Jones C GauchoArgentinaAsiya Javayant QUALIFIED
Wickens X CaudyBrazilAnna Fali QUALIFIED
Leja R BriddickBrazilElwin Sharvill NEGOTIATION
Julie X BriddickBrazilAsiya Javayant QUALIFIED
Faith D RutaJapanIvan Magalhaes NEGOTIATION
Leon J RutaItalyStephen Shaw NEGOTIATION
Ashley S FlosiSpainAsiya Javayant NEW
Clifford S DilliardUnited KingdomElwin Sharvill NEGOTIATION
Morrow V GauchoCanadaStephen Shaw NEGOTIATION
Jeanfrancois G KolmetzUnited KingdomOnyama Limba NEW
Johnson T CampainAustraliaOnyama Limba NEW
Jeanfrancois Y WaycottItalyAsiya Javayant NEW
Sinclair U InouyeIndiaBernardo Dominic NEGOTIATION
Misaki B WieserUnited KingdomAsiya Javayant 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>