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
Greenwood Y VocelkaIndiaStephen Shaw PROPOSAL
Adams U OldroydUnited KingdomOnyama Limba NEGOTIATION
Adams U GauchoAustraliaXuxue Feng NEGOTIATION
Julie Z MorascaAustraliaIoni Bowcher NEW
Francesco X SaylorsGermanyStephen Shaw PROPOSAL
Kadeem H SchemmerAustraliaAnna Fali NEGOTIATION
Aruna I FollerIndiaIvan Magalhaes QUALIFIED
Jeanfrancois S TollnerRussiaOnyama Limba PROPOSAL
Jeanfrancois P KolmetzIndiaIvan Magalhaes QUALIFIED
Cody H MorascaFranceAsiya Javayant NEGOTIATION
Costa K OstroskySpainIvan Magalhaes UNQUALIFIED
Alejandro C DilliardRussiaXuxue Feng QUALIFIED
Aruna Y MarrierGermanyIoni Bowcher NEGOTIATION
Wickens F SlusarskiSpainStephen Shaw UNQUALIFIED
Emily Y MorascaUnited KingdomAsiya Javayant NEW
Izzy L NickaItalyAsiya Javayant UNQUALIFIED
Tony E FerenczGermanyIvan Magalhaes NEGOTIATION
Izzy M VocelkaSpainBernardo Dominic QUALIFIED
Antonio Q SchemmerArgentinaIvan Magalhaes NEW
Claire I ChuiSpainBernardo Dominic NEW
Aika G RulapaughIndiaAnna Fali UNQUALIFIED
Morrow J InouyeIndiaOnyama Limba PROPOSAL
Ivar U WieserGermanyIvan Magalhaes UNQUALIFIED
Francesco V KolmetzArgentinaIvan Magalhaes PROPOSAL
James Z BowleyFranceBernardo Dominic PROPOSAL
Julie L SchemmerItalyIoni Bowcher UNQUALIFIED
Clifford Q NestleArgentinaElwin Sharvill RENEWAL
Silvio L MarrierArgentinaStephen Shaw NEGOTIATION
Emily K KolmetzBrazilBernardo Dominic QUALIFIED
Misaki I GarufiItalyStephen Shaw NEGOTIATION
Ricardo D PaprockiFranceAmy Elsner QUALIFIED
Jeanfrancois G RimJapanXuxue Feng NEW
Alejandro U CampainBrazilOnyama Limba UNQUALIFIED
Jeanfrancois A FerenczArgentinaXuxue Feng RENEWAL
Jeanfrancois N PerinUnited KingdomAmy Elsner QUALIFIED
Alejandro B SergiGermanyAmy Elsner UNQUALIFIED
Emily D BologniaItalyIvan Magalhaes QUALIFIED
Johnson K PerinRussiaXuxue Feng NEW
Ivar S ButtItalyIoni Bowcher RENEWAL
Munro Z RoysterItalyStephen Shaw NEW
Misaki P GillianCanadaElwin Sharvill UNQUALIFIED
Kadeem T RoysterUnited KingdomElwin Sharvill QUALIFIED
Faith V FerenczCanadaXuxue Feng UNQUALIFIED
Deepesh K SlusarskiJapanIvan Magalhaes RENEWAL
Jennifer J NickaCanadaStephen Shaw RENEWAL
Faith V VenereArgentinaAsiya Javayant UNQUALIFIED
Jeanfrancois S PaprockiSpainAmy Elsner NEW
Costa Z PaprockiUnited KingdomAnna Fali NEW
Julie K FollerFranceXuxue Feng QUALIFIED
Julie Q MaletFranceAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood E MacleadArgentinaStephen Shaw PROPOSAL
Morrow H KuskoRussiaIvan Magalhaes UNQUALIFIED
Julie A GauchoItalyOnyama Limba RENEWAL
Misaki R GarufiGermanyElwin Sharvill QUALIFIED
Adams T SergiCanadaBernardo Dominic QUALIFIED
Mayumi X OstroskyArgentinaElwin Sharvill NEGOTIATION
Greenwood Q SchemmerSpainElwin Sharvill NEW
Aruna N DoeJapanOnyama Limba QUALIFIED
Greenwood E SlusarskiAustraliaOnyama Limba UNQUALIFIED
Chavez K MarrierBrazilStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem Y PaprockiSpain2025-08-07Chapman, Ross E Esq UNQUALIFIED10Bernardo Dominic
1001Rodrigues X DoeIndia2025-08-06Buckley Miller Wright NEW30Amy Elsner
1002Kadeem I MarrierGermany2025-07-26Truhlar And Truhlar Attys PROPOSAL92Anna Fali
1003Salvatore G BriddickGermany2025-07-13Chapman, Ross E Esq RENEWAL99Ivan Magalhaes
1004Costa Q RulapaughRussia2025-08-01Morlong Associates NEGOTIATION64Onyama Limba
1005Wickens W SlusarskiArgentina2025-08-03Chanay, Jeffrey A Esq QUALIFIED37Onyama Limba
1006Julie F MaletAustralia2025-07-23Rousseaux, Michael Esq PROPOSAL15Asiya Javayant
1007Chavez U TollnerUnited Kingdom2025-07-26Rousseaux, Michael Esq RENEWAL65Ioni Bowcher
1008Clifford O GauchoAustralia2025-08-10Morlong Associates NEGOTIATION85Elwin Sharvill
1009David H ChuiAustralia2025-08-06Benton, John B Jr PROPOSAL76Ioni Bowcher
1010Leja I BriddickRussia2025-07-26Chapman, Ross E Esq NEGOTIATION69Anna Fali
1011Mayumi R MarrierRussia2025-08-07Feltz Printing Service RENEWAL75Stephen Shaw
1012Emily A WieserSpain2025-07-13Morlong Associates PROPOSAL25Anna Fali
1013Clifford X CampainFrance2025-07-15Dorl, James J Esq NEGOTIATION99Ivan Magalhaes
1014Emily M BowleySpain2025-08-06Dorl, James J Esq NEW44Onyama Limba
1015Darci S AlbaresGermany2025-07-31Feltz Printing Service NEGOTIATION78Stephen Shaw
1016Mujtaba N DilliardFrance2025-07-14Printing Dimensions UNQUALIFIED52Onyama Limba
1017Cody G KolmetzBrazil2025-07-20Rousseaux, Michael Esq RENEWAL3Xuxue Feng
1018Stacey Q RutaItaly2025-07-31Buckley Miller Wright QUALIFIED25Ivan Magalhaes
1019Isabel R CaldareraIndia2025-08-01Feiner Bros UNQUALIFIED49Stephen Shaw
1020Arvin A FigeroaUnited Kingdom2025-07-25Truhlar And Truhlar Attys RENEWAL98Elwin Sharvill
1021Jennifer U GlickIndia2025-07-26King, Christopher A Esq UNQUALIFIED25Stephen Shaw
1022Isabel D GillianAustralia2025-07-24Chapman, Ross E Esq NEW91Elwin Sharvill
1023Adams C NickaUnited Kingdom2025-08-07Buckley Miller Wright RENEWAL65Bernardo Dominic
1024Arvin T OstroskyItaly2025-08-01King, Christopher A Esq NEGOTIATION84Ioni Bowcher
1025Mayumi J DilliardCanada2025-07-18Chemel, James L Cpa NEW88Onyama Limba
1026Mujtaba L NickaSpain2025-07-31Dorl, James J Esq QUALIFIED58Stephen Shaw
1027Maisha J WieserArgentina2025-08-01Chemel, James L Cpa UNQUALIFIED18Ioni Bowcher
1028Isabel X FlosiFrance2025-08-10Chapman, Ross E Esq RENEWAL53Ivan Magalhaes
1029Ricardo N NestleIndia2025-07-16Commercial Press NEW71Bernardo Dominic
1030Aika W MaletSpain2025-07-19Rangoni Of Florence NEW66Anna Fali
1031Jennifer Z WhobreyUnited Kingdom2025-08-06King, Christopher A Esq PROPOSAL55Ivan Magalhaes
1032Kaitlin C KuskoRussia2025-07-14Dorl, James J Esq RENEWAL64Onyama Limba
1033Jefferson T DilliardItaly2025-08-01Feiner Bros PROPOSAL44Anna Fali
1034Stacey E BowleyItaly2025-07-28Morlong Associates PROPOSAL3Ioni Bowcher
1035Julie O GlickGermany2025-07-30Benton, John B Jr PROPOSAL32Bernardo Dominic
1036Izzy T MaletSpain2025-07-25Truhlar And Truhlar Attys PROPOSAL52Ioni Bowcher
1037Chavez M BriddickBrazil2025-07-15Printing Dimensions QUALIFIED66Anna Fali
1038Silvio E SlusarskiArgentina2025-08-10Benton, John B Jr QUALIFIED59Onyama Limba
1039Maria G MacleadArgentina2025-07-27Chapman, Ross E Esq QUALIFIED98Xuxue Feng
1040Smith T AlbaresArgentina2025-07-19Feltz Printing Service RENEWAL57Ivan Magalhaes
1041Jeanfrancois H GillianIndia2025-08-01Feltz Printing Service UNQUALIFIED3Amy Elsner
1042Rodrigues J GlickFrance2025-07-28Rangoni Of Florence RENEWAL50Onyama Limba
1043Mujtaba P BologniaRussia2025-07-22Feiner Bros QUALIFIED81Ioni Bowcher
1044Silvio C StensethUnited Kingdom2025-07-19Benton, John B Jr NEW51Asiya Javayant
1045Deepesh R VocelkaFrance2025-08-03Rousseaux, Michael Esq UNQUALIFIED41Elwin Sharvill
1046Chavez N WhobreyFrance2025-08-06Commercial Press RENEWAL58Stephen Shaw
1047Salvatore T GlickGermany2025-07-23Truhlar And Truhlar Attys QUALIFIED78Bernardo Dominic
1048Emily F InouyeAustralia2025-08-10Buckley Miller Wright QUALIFIED36Amy Elsner
1049Octavia S BologniaRussia2025-08-10Buckley Miller Wright RENEWAL23Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
David U TollnerUnited KingdomIvan Magalhaes PROPOSAL
Maria B SaylorsJapanAnna Fali PROPOSAL
Greenwood I StensethItalyAsiya Javayant PROPOSAL
Misaki N FollerIndiaStephen Shaw NEGOTIATION
Darci R FlosiItalyAmy Elsner NEGOTIATION
Kadeem T SaylorsGermanyAnna Fali PROPOSAL
Salvatore S StockhamItalyAsiya Javayant RENEWAL
Isabel J KolmetzSpainAmy Elsner RENEWAL
Francesco O WaycottSpainIoni Bowcher NEGOTIATION
Jennifer I CaudyCanadaElwin Sharvill NEGOTIATION
Costa C AlbaresArgentinaStephen Shaw RENEWAL
Murillo F CampainIndiaAmy Elsner RENEWAL
Octavia W DarakjyJapanElwin Sharvill RENEWAL
Kadeem V BriddickIndiaXuxue Feng PROPOSAL
Clifford Z TollnerCanadaAnna Fali NEGOTIATION
Mayumi L BowleyJapanElwin Sharvill RENEWAL
Emily A NestleIndiaBernardo Dominic NEGOTIATION
Munro J PoquetteUnited KingdomAnna Fali PROPOSAL
Aruna Z GlickIndiaElwin Sharvill PROPOSAL
Stacey H RimBrazilBernardo Dominic UNQUALIFIED
Sinclair J KuskoGermanyXuxue Feng NEGOTIATION
Smith C NestleUnited KingdomIoni Bowcher NEGOTIATION
Aika Q OldroydFranceBernardo Dominic UNQUALIFIED
Claire R KuskoBrazilStephen Shaw PROPOSAL
Tony H PerinBrazilXuxue Feng QUALIFIED
Juan N BowleyGermanyAsiya Javayant QUALIFIED
Aditya Y VenereJapanAnna Fali QUALIFIED
Emily L FollerRussiaIvan Magalhaes QUALIFIED
Cody I VenereBrazilXuxue Feng RENEWAL
Leja N ShinkoSpainElwin Sharvill NEW
Jennifer P SchemmerArgentinaIoni Bowcher PROPOSAL
Leja W FlosiRussiaBernardo Dominic QUALIFIED
Darci R MorascaJapanElwin Sharvill UNQUALIFIED
Nicolas P RimRussiaOnyama Limba PROPOSAL
Jefferson W ButtItalyIvan Magalhaes PROPOSAL
Nicolas R WaycottArgentinaOnyama Limba RENEWAL
Julie I WaycottAustraliaIoni Bowcher NEW
Costa Y AmigonAustraliaBernardo Dominic NEW
Johnson H FollerItalyIvan Magalhaes NEGOTIATION
Juan I VocelkaItalyElwin Sharvill NEW
Claire E AlbaresCanadaBernardo Dominic QUALIFIED
Smith Z MorascaFranceOnyama Limba QUALIFIED
Munro I MaletAustraliaStephen Shaw RENEWAL
Adams F DarakjyRussiaElwin Sharvill QUALIFIED
Mayumi V MorascaFranceElwin Sharvill RENEWAL
Aditya U KolmetzItalyStephen Shaw UNQUALIFIED
Ricardo B PerinGermanyBernardo Dominic PROPOSAL
Johnson X ShinkoFranceXuxue Feng QUALIFIED
Leon U OstroskyBrazilAmy Elsner QUALIFIED
Adams N IturbideArgentinaXuxue Feng RENEWAL
Frozen Columns
Name
Murillo J Rulapaugh
Julie X Tollner
Clifford K Glick
Aruna T Bowley
Jennifer T Saylors
Clifford U Amigon
Emily H Royster
Wickens N Glick
Cody K Butt
Mujtaba Z Rulapaugh
Julie A Inouye
David L Poquette
Octavia Q Kolmetz
Wickens J Malet
Greenwood D Wieser
Clifford Z Tollner
Jones E Morasca
Julie N Caldarera
Julie U Doe
Darci G Briddick
Ricardo P Briddick
Morrow O Tollner
Isabel V Wieser
Maria Y Vocelka
Arvin V Schemmer
Ashley L Garufi
Sinclair B Morasca
Aika I Wieser
Claire T Figeroa
Adams F Kolmetz
Murillo H Bowley
Claire K Butt
Darci B Gaucho
Isabel F Rulapaugh
Ivar X Maclead
Faith D Maclead
Greenwood X Kusko
Aditya W Malet
Claire K Foller
Smith D Kolmetz
Kadeem U Caudy
Munro N Garufi
Nicolas V Ferencz
Francesco O Tollner
Silvio H Kolmetz
Sinclair N Nestle
Silvio C Vocelka
Juan D Briddick
Jeanfrancois G Bowley
Munro F Glick
IdCountryDate
1000Australia2025-08-09
1001France2025-07-28
1002Canada2025-07-17
1003Argentina2025-07-23
1004Argentina2025-08-05
1005Italy2025-07-31
1006Brazil2025-08-05
1007India2025-07-22
1008Canada2025-07-28
1009Canada2025-07-18
1010United Kingdom2025-07-26
1011Japan2025-07-31
1012India2025-08-07
1013Australia2025-08-05
1014Italy2025-07-30
1015Italy2025-07-27
1016India2025-08-01
1017Brazil2025-08-01
1018France2025-08-09
1019France2025-07-24
1020Argentina2025-07-16
1021Italy2025-07-20
1022Italy2025-07-22
1023Argentina2025-07-17
1024Australia2025-07-13
1025Russia2025-08-09
1026France2025-07-21
1027Spain2025-08-02
1028Australia2025-07-15
1029Italy2025-07-15
1030Argentina2025-08-10
1031Canada2025-07-13
1032Brazil2025-07-20
1033France2025-08-08
1034Germany2025-07-17
1035Italy2025-08-05
1036France2025-07-14
1037Canada2025-08-11
1038Argentina2025-07-16
1039Spain2025-07-22
1040Australia2025-08-04
1041Australia2025-07-17
1042United Kingdom2025-07-14
1043Brazil2025-07-24
1044Italy2025-07-26
1045France2025-07-30
1046Canada2025-08-08
1047Argentina2025-07-18
1048Russia2025-07-28
1049India2025-07-30

On-Demand Data

NameIdCountryDate
Aruna I Bowley1000India2025-07-16
Leja Z Royster1001United Kingdom2025-07-19
Smith F Stenseth1002Italy2025-07-13
Emily U Amigon1003Japan2025-08-03
Adams M Nestle1004Spain2025-08-05
Deepesh E Inouye1005Canada2025-08-10
Ashley C Paprocki1006Italy2025-07-29
Alejandro R Nicka1007Brazil2025-07-30
Ricardo V Ruta1008France2025-07-23
Nicolas A Slusarski1009Italy2025-07-13
Johnson L Caldarera1010Australia2025-08-08
Mujtaba B Bolognia1011Canada2025-07-14
Silvio Z Malet1012Italy2025-07-21
Murillo O Amigon1013Italy2025-07-25
Izzy V Poquette1014Brazil2025-07-29
Izzy L Venere1015Argentina2025-07-13
Jeanfrancois V Caudy1016United Kingdom2025-07-29
Nicolas R Nicka1017India2025-07-17
Jones I Malet1018United Kingdom2025-08-03
Antonio Z Malet1019Australia2025-08-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore M RutaUnited KingdomAnna Fali RENEWAL
Leon P MorascaSpainOnyama Limba RENEWAL
Costa Y TollnerBrazilXuxue Feng PROPOSAL
Emily J MacleadSpainBernardo Dominic NEW
Francesco D PerinFranceAsiya Javayant NEGOTIATION
Stacey E WhobreyBrazilAsiya Javayant NEGOTIATION
Munro K CaldareraAustraliaElwin Sharvill PROPOSAL
Claire D RimAustraliaIoni Bowcher NEW
Murillo W BologniaGermanyAnna Fali UNQUALIFIED
Kadeem Z GarufiRussiaAmy Elsner NEW
Sinclair B WhobreyFranceOnyama Limba UNQUALIFIED
Faith S CaldareraItalyIvan Magalhaes UNQUALIFIED
Ricardo L RutaGermanyXuxue Feng PROPOSAL
Silvio K MaletUnited KingdomAmy Elsner QUALIFIED
Stacey W ShinkoRussiaElwin Sharvill RENEWAL
David J RimUnited KingdomElwin Sharvill NEW
Misaki H DilliardJapanAsiya Javayant NEGOTIATION
Aditya E CaudyJapanAsiya Javayant NEGOTIATION
Salvatore P SaylorsAustraliaXuxue Feng UNQUALIFIED
Arvin N MarrierCanadaAmy Elsner RENEWAL
James E CaldareraUnited KingdomBernardo Dominic NEW
Darci K PaprockiUnited KingdomIoni Bowcher UNQUALIFIED
Johnson I NestleIndiaStephen Shaw UNQUALIFIED
Morrow K FerenczItalyIoni Bowcher PROPOSAL
Faith Q DoeItalyAsiya Javayant PROPOSAL
Costa F NickaRussiaAnna Fali NEGOTIATION
Jeanfrancois L GauchoAustraliaIvan Magalhaes PROPOSAL
Ricardo U MarrierFranceIvan Magalhaes RENEWAL
Faith P DilliardGermanyIvan Magalhaes QUALIFIED
Johnson X BowleySpainAmy Elsner QUALIFIED
Francesco F AmigonBrazilStephen Shaw RENEWAL
Misaki G KuskoRussiaStephen Shaw UNQUALIFIED
Maria R StockhamJapanOnyama Limba QUALIFIED
Juan U SergiItalyBernardo Dominic NEW
Wickens H GauchoBrazilOnyama Limba NEW
Nicolas I BowleyFranceAnna Fali PROPOSAL
Julie K CaudyFranceAmy Elsner PROPOSAL
Nicolas B CampainAustraliaElwin Sharvill UNQUALIFIED
Jefferson P RimFranceElwin Sharvill PROPOSAL
Cody D CaudyJapanOnyama Limba 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>