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
Leon Q BriddickArgentinaOnyama Limba PROPOSAL
Emily W SlusarskiAustraliaElwin Sharvill NEGOTIATION
Morrow E SchemmerFranceIoni Bowcher PROPOSAL
Leja X SlusarskiIndiaIvan Magalhaes UNQUALIFIED
Wickens S PoquetteGermanyElwin Sharvill UNQUALIFIED
Emily O IturbideIndiaAnna Fali QUALIFIED
Rodrigues B NickaCanadaBernardo Dominic PROPOSAL
Mayumi B RulapaughJapanIoni Bowcher RENEWAL
Leja G StockhamGermanyElwin Sharvill QUALIFIED
Claire L VocelkaFranceIvan Magalhaes PROPOSAL
Jefferson J MacleadIndiaXuxue Feng UNQUALIFIED
Arvin D DoeGermanyIvan Magalhaes PROPOSAL
Ricardo Z FollerRussiaOnyama Limba NEGOTIATION
Leon Y AmigonArgentinaIvan Magalhaes NEGOTIATION
Aika Z MacleadSpainStephen Shaw RENEWAL
Izzy Q InouyeCanadaStephen Shaw QUALIFIED
Arvin U WieserBrazilAsiya Javayant NEW
Nicolas G InouyeJapanBernardo Dominic RENEWAL
Aruna I MaletArgentinaElwin Sharvill RENEWAL
Chavez U WhobreyBrazilIvan Magalhaes PROPOSAL
Izzy U ChuiUnited KingdomBernardo Dominic NEW
David L SergiIndiaIoni Bowcher NEW
Ricardo Q PerinAustraliaStephen Shaw RENEWAL
Leja K AlbaresArgentinaAsiya Javayant RENEWAL
Maisha M DarakjyIndiaXuxue Feng NEGOTIATION
Julie S VocelkaGermanyXuxue Feng RENEWAL
Francesco K GlickGermanyXuxue Feng NEGOTIATION
Murillo M GillianJapanBernardo Dominic PROPOSAL
Jefferson Y PerinArgentinaIoni Bowcher PROPOSAL
Isabel A AlbaresCanadaStephen Shaw UNQUALIFIED
Emily T RutaAustraliaOnyama Limba RENEWAL
Clifford S RulapaughSpainXuxue Feng PROPOSAL
Ashley X SaylorsSpainAmy Elsner NEGOTIATION
Mayumi N KolmetzAustraliaStephen Shaw UNQUALIFIED
Octavia D SaylorsJapanAmy Elsner NEGOTIATION
Aditya O MaletCanadaOnyama Limba NEW
Johnson C DilliardIndiaOnyama Limba NEW
Clifford N SaylorsBrazilStephen Shaw NEGOTIATION
Stacey Q GillianGermanyStephen Shaw QUALIFIED
Kaitlin F DarakjyArgentinaIoni Bowcher UNQUALIFIED
Leon I KuskoUnited KingdomElwin Sharvill NEGOTIATION
Chavez P MorascaGermanyElwin Sharvill QUALIFIED
Misaki P FlosiAustraliaIoni Bowcher PROPOSAL
Rodrigues R MacleadUnited KingdomElwin Sharvill NEGOTIATION
Aika S NestleUnited KingdomOnyama Limba NEGOTIATION
Faith I OstroskyGermanyAnna Fali PROPOSAL
Cody K PerinSpainAmy Elsner PROPOSAL
Nicolas S MaletRussiaStephen Shaw PROPOSAL
Smith P WieserSpainAsiya Javayant UNQUALIFIED
Isabel E SergiRussiaXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Adams M SaylorsBrazilXuxue Feng NEGOTIATION
Octavia O BowleyUnited KingdomXuxue Feng RENEWAL
Misaki P MaletRussiaOnyama Limba UNQUALIFIED
Francesco N FlosiGermanyAsiya Javayant QUALIFIED
Smith F MacleadItalyXuxue Feng NEW
Aruna G ChuiArgentinaIoni Bowcher UNQUALIFIED
Octavia T NickaJapanAmy Elsner UNQUALIFIED
Alejandro Z SergiItalyStephen Shaw UNQUALIFIED
Mayumi E FigeroaSpainIvan Magalhaes PROPOSAL
Maria Z FerenczBrazilIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo M CampainArgentina2025-10-06Rangoni Of Florence PROPOSAL73Ivan Magalhaes
1001Aditya E KolmetzArgentina2025-10-09Benton, John B Jr NEGOTIATION60Ioni Bowcher
1002Jones P KuskoUnited Kingdom2025-10-03Rangoni Of Florence RENEWAL59Anna Fali
1003Munro D WhobreyAustralia2025-10-16Rousseaux, Michael Esq NEW36Asiya Javayant
1004Claire P OldroydJapan2025-09-29Dorl, James J Esq QUALIFIED94Anna Fali
1005Clifford Q VenereAustralia2025-09-25Chapman, Ross E Esq PROPOSAL63Bernardo Dominic
1006Octavia R BriddickRussia2025-10-03Feltz Printing Service UNQUALIFIED3Elwin Sharvill
1007Maisha H DarakjyBrazil2025-09-21King, Christopher A Esq QUALIFIED93Ivan Magalhaes
1008Jennifer L MarrierCanada2025-10-14Buckley Miller Wright UNQUALIFIED35Stephen Shaw
1009Ashley W SlusarskiUnited Kingdom2025-10-17Rousseaux, Michael Esq UNQUALIFIED48Ioni Bowcher
1010Izzy J ButtCanada2025-09-20Morlong Associates NEW91Amy Elsner
1011Kaitlin G AlbaresGermany2025-09-29King, Christopher A Esq UNQUALIFIED1Anna Fali
1012Aditya K VocelkaFrance2025-09-27Chemel, James L Cpa PROPOSAL56Ivan Magalhaes
1013James U OstroskyUnited Kingdom2025-10-14Truhlar And Truhlar Attys NEGOTIATION40Onyama Limba
1014Misaki W CaudyFrance2025-09-25Printing Dimensions PROPOSAL16Anna Fali
1015Misaki H WaycottCanada2025-10-15Printing Dimensions UNQUALIFIED13Asiya Javayant
1016Octavia D RulapaughSpain2025-10-02Truhlar And Truhlar Attys UNQUALIFIED38Onyama Limba
1017Ashley S WaycottAustralia2025-10-02Feiner Bros QUALIFIED15Bernardo Dominic
1018Ashley F BriddickSpain2025-09-28King, Christopher A Esq NEGOTIATION68Anna Fali
1019Jones R KuskoRussia2025-10-19Truhlar And Truhlar Attys RENEWAL77Onyama Limba
1020Isabel F GauchoBrazil2025-10-16Truhlar And Truhlar Attys QUALIFIED58Amy Elsner
1021Maria J SlusarskiFrance2025-09-29King, Christopher A Esq NEW24Anna Fali
1022Salvatore V DilliardRussia2025-09-30Buckley Miller Wright NEGOTIATION59Anna Fali
1023Clifford L IturbideSpain2025-09-23Buckley Miller Wright PROPOSAL2Asiya Javayant
1024Maisha R VenereFrance2025-09-27Truhlar And Truhlar Attys NEW87Elwin Sharvill
1025Smith O TollnerAustralia2025-09-30Benton, John B Jr NEGOTIATION49Ivan Magalhaes
1026Claire U RoysterAustralia2025-09-22Morlong Associates NEGOTIATION22Ivan Magalhaes
1027Wickens X AlbaresUnited Kingdom2025-10-08King, Christopher A Esq UNQUALIFIED38Ivan Magalhaes
1028Maria R DoeGermany2025-10-06Benton, John B Jr QUALIFIED80Asiya Javayant
1029Clifford N BowleySpain2025-10-07Feiner Bros PROPOSAL26Ivan Magalhaes
1030Adams L VenereItaly2025-09-25Feiner Bros NEW77Elwin Sharvill
1031Aditya U KolmetzFrance2025-09-24Benton, John B Jr NEW37Onyama Limba
1032Silvio X MaletItaly2025-09-23Rangoni Of Florence NEGOTIATION65Elwin Sharvill
1033Ricardo G WhobreyJapan2025-09-27Chemel, James L Cpa PROPOSAL90Elwin Sharvill
1034Antonio O CaudyAustralia2025-09-27Feiner Bros PROPOSAL33Xuxue Feng
1035Munro A RulapaughJapan2025-10-13Chanay, Jeffrey A Esq RENEWAL29Ioni Bowcher
1036Silvio W GillianGermany2025-09-21Feiner Bros PROPOSAL83Elwin Sharvill
1037Ricardo O FigeroaFrance2025-10-01Dorl, James J Esq NEW50Ivan Magalhaes
1038Aika L NickaCanada2025-09-29Printing Dimensions NEW64Onyama Limba
1039Misaki W BriddickFrance2025-10-09Dorl, James J Esq NEW0Elwin Sharvill
1040Jefferson E PaprockiIndia2025-10-05Morlong Associates PROPOSAL26Stephen Shaw
1041Clifford K MaletJapan2025-10-13Rangoni Of Florence NEW29Asiya Javayant
1042Costa A WhobreyGermany2025-09-29Dorl, James J Esq PROPOSAL12Amy Elsner
1043Faith U GauchoSpain2025-10-18Feiner Bros UNQUALIFIED54Onyama Limba
1044Munro Y PaprockiIndia2025-09-23Rangoni Of Florence RENEWAL88Stephen Shaw
1045Jennifer J NickaIndia2025-10-19Truhlar And Truhlar Attys NEGOTIATION80Stephen Shaw
1046Claire W DoeCanada2025-10-05Benton, John B Jr NEW35Stephen Shaw
1047Emily N AlbaresSpain2025-10-15Benton, John B Jr RENEWAL29Ivan Magalhaes
1048Stacey L DoeItaly2025-09-30Feltz Printing Service QUALIFIED40Ioni Bowcher
1049Rodrigues Z StockhamRussia2025-10-19Printing Dimensions UNQUALIFIED80Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Wickens H NestleGermanyAsiya Javayant UNQUALIFIED
Salvatore V MarrierJapanAsiya Javayant QUALIFIED
Tony M NestleItalyAnna Fali QUALIFIED
Salvatore Z ButtFranceBernardo Dominic QUALIFIED
Octavia U DarakjyRussiaBernardo Dominic PROPOSAL
Aika N PoquetteSpainOnyama Limba NEW
Ashley N PoquetteSpainIoni Bowcher RENEWAL
Wickens G NickaItalyElwin Sharvill PROPOSAL
Jefferson S VenereUnited KingdomIvan Magalhaes PROPOSAL
Claire O RulapaughFranceXuxue Feng NEW
Aditya A VenereRussiaAmy Elsner NEW
Julie U AlbaresAustraliaAmy Elsner PROPOSAL
Aika B BologniaFranceOnyama Limba PROPOSAL
Mujtaba R DilliardSpainIvan Magalhaes NEGOTIATION
David P CaudyFranceOnyama Limba UNQUALIFIED
Smith P CaudyFranceIoni Bowcher NEW
Smith V GauchoArgentinaElwin Sharvill PROPOSAL
Tony N FerenczArgentinaXuxue Feng RENEWAL
Faith F NestleBrazilIvan Magalhaes NEGOTIATION
Francesco W OldroydGermanyAmy Elsner QUALIFIED
Ricardo T MaletCanadaOnyama Limba UNQUALIFIED
Adams Q GillianSpainIvan Magalhaes RENEWAL
Clifford Z RoysterBrazilStephen Shaw UNQUALIFIED
Mayumi W SaylorsAustraliaBernardo Dominic UNQUALIFIED
Mayumi B PaprockiItalyBernardo Dominic PROPOSAL
Salvatore L FlosiBrazilOnyama Limba NEW
Julie Q SergiFranceBernardo Dominic PROPOSAL
Murillo R SlusarskiUnited KingdomElwin Sharvill RENEWAL
Nicolas N AlbaresAustraliaBernardo Dominic PROPOSAL
Leon E OldroydRussiaIvan Magalhaes UNQUALIFIED
Clifford U PoquetteBrazilAmy Elsner NEW
Claire C MaletAustraliaAnna Fali RENEWAL
James A SchemmerAustraliaAmy Elsner QUALIFIED
Silvio Q ChuiCanadaElwin Sharvill UNQUALIFIED
James A DarakjyItalyOnyama Limba PROPOSAL
Smith N KolmetzSpainAsiya Javayant RENEWAL
Misaki B NickaSpainAnna Fali QUALIFIED
Francesco C PoquetteArgentinaAnna Fali UNQUALIFIED
Juan T SlusarskiRussiaBernardo Dominic QUALIFIED
Johnson D WhobreyUnited KingdomAnna Fali UNQUALIFIED
Costa A AmigonIndiaElwin Sharvill QUALIFIED
Cody K SergiGermanyOnyama Limba NEW
Rodrigues G NestleSpainStephen Shaw RENEWAL
Clifford R MarrierUnited KingdomElwin Sharvill NEW
Ricardo E DilliardFranceOnyama Limba QUALIFIED
Aruna J IturbideGermanyElwin Sharvill UNQUALIFIED
Leon O RoysterIndiaAsiya Javayant NEGOTIATION
Chavez I FollerBrazilAmy Elsner RENEWAL
Cody J KuskoCanadaElwin Sharvill PROPOSAL
Leja Y DoeUnited KingdomIvan Magalhaes PROPOSAL
Frozen Columns
Name
Tony I Waycott
Ivar I Flosi
Faith V Rim
Aditya A Venere
Octavia T Butt
Chavez A Sergi
Jeanfrancois R Doe
Mayumi S Rulapaugh
Jones T Saylors
Rodrigues Y Schemmer
Murillo W Whobrey
Octavia B Flosi
Aditya C Oldroyd
Francesco D Ferencz
Smith Z Tollner
Julie Y Malet
Johnson I Wieser
Jeanfrancois E Caudy
Rodrigues H Kusko
Murillo Y Saylors
Leon C Royster
Ashley R Foller
Ashley E Stenseth
Antonio T Dilliard
Jennifer D Nicka
Jones L Ostrosky
Aruna K Maclead
Silvio Y Perin
Jones B Rim
Johnson B Iturbide
Juan R Rulapaugh
Nicolas H Tollner
Faith D Ferencz
Juan Q Schemmer
Mujtaba B Slusarski
Jefferson J Morasca
Murillo J Kusko
Jones C Gillian
Kadeem G Vocelka
Jones W Stenseth
Cody S Caudy
Leon L Albares
Aditya Z Dilliard
Jones Q Ferencz
Izzy X Campain
Adams A Bolognia
Alejandro I Gillian
Misaki W Garufi
Ricardo L Butt
Leon R Sergi
IdCountryDate
1000Spain2025-10-03
1001Russia2025-10-02
1002Spain2025-10-15
1003Argentina2025-10-19
1004Spain2025-10-15
1005India2025-09-23
1006France2025-09-30
1007United Kingdom2025-09-30
1008France2025-10-09
1009Brazil2025-09-23
1010Brazil2025-09-23
1011Brazil2025-09-26
1012France2025-10-15
1013Russia2025-10-06
1014India2025-10-06
1015France2025-09-30
1016Spain2025-10-11
1017India2025-10-05
1018United Kingdom2025-09-23
1019Canada2025-09-30
1020United Kingdom2025-10-01
1021Australia2025-10-17
1022United Kingdom2025-09-28
1023Japan2025-10-09
1024Australia2025-10-01
1025United Kingdom2025-10-09
1026India2025-10-17
1027Japan2025-10-14
1028United Kingdom2025-09-20
1029United Kingdom2025-10-10
1030France2025-10-19
1031Argentina2025-10-10
1032United Kingdom2025-10-15
1033Brazil2025-10-10
1034Russia2025-09-21
1035Australia2025-09-26
1036Japan2025-10-09
1037Italy2025-10-12
1038Japan2025-09-28
1039Germany2025-10-10
1040Australia2025-10-16
1041India2025-10-01
1042Germany2025-09-29
1043Canada2025-09-21
1044India2025-10-04
1045Russia2025-10-14
1046France2025-10-05
1047Russia2025-09-27
1048Germany2025-10-03
1049Argentina2025-10-01

On-Demand Data

NameIdCountryDate
Tony U Inouye1000India2025-09-24
Jones T Kolmetz1001India2025-09-27
Chavez Z Darakjy1002Argentina2025-09-25
Wickens G Doe1003Brazil2025-10-04
Clifford I Schemmer1004Germany2025-10-06
Kadeem D Caudy1005France2025-10-12
Morrow W Doe1006Canada2025-10-11
Nicolas A Sergi1007Italy2025-09-25
Adams I Slusarski1008Russia2025-10-15
Octavia R Bolognia1009Argentina2025-09-21
Tony F Oldroyd1010Spain2025-10-01
Maisha C Doe1011France2025-10-07
Salvatore Q Slusarski1012Russia2025-09-23
Costa F Butt1013Japan2025-10-12
Stacey K Saylors1014Brazil2025-10-18
Mayumi H Caudy1015Argentina2025-10-07
Adams S Poquette1016India2025-10-01
Faith R Sergi1017Australia2025-10-07
Deepesh K Flosi1018Brazil2025-09-28
Jennifer N Royster1019Spain2025-10-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Alejandro Y AlbaresFranceAnna Fali NEW
Faith B NickaGermanyAmy Elsner QUALIFIED
David Z BowleyRussiaIoni Bowcher NEW
Ricardo U SchemmerGermanyStephen Shaw PROPOSAL
Darci X DilliardIndiaOnyama Limba PROPOSAL
Rodrigues Z VenereJapanAmy Elsner QUALIFIED
Juan X MaletSpainElwin Sharvill PROPOSAL
Emily T WieserIndiaAsiya Javayant QUALIFIED
Antonio T VocelkaIndiaStephen Shaw UNQUALIFIED
Jefferson N TollnerBrazilIvan Magalhaes PROPOSAL
Leja M MorascaGermanyBernardo Dominic NEGOTIATION
Maria V BowleyUnited KingdomStephen Shaw PROPOSAL
Stacey X BowleyCanadaOnyama Limba NEGOTIATION
Silvio Q OldroydGermanyIoni Bowcher PROPOSAL
Stacey N ChuiIndiaAnna Fali NEW
Claire M SlusarskiJapanBernardo Dominic QUALIFIED
Aruna D PaprockiGermanyElwin Sharvill UNQUALIFIED
Murillo O MacleadAustraliaStephen Shaw NEGOTIATION
James J MaletCanadaIvan Magalhaes UNQUALIFIED
Costa G MacleadUnited KingdomIoni Bowcher QUALIFIED
Wickens A RutaFranceAnna Fali NEW
Stacey B OstroskyFranceStephen Shaw UNQUALIFIED
Morrow P VocelkaRussiaBernardo Dominic UNQUALIFIED
Chavez A VocelkaIndiaAmy Elsner QUALIFIED
Cody U SergiItalyAsiya Javayant NEGOTIATION
Ivar D MacleadAustraliaBernardo Dominic UNQUALIFIED
Salvatore A AmigonGermanyAmy Elsner RENEWAL
Ashley V WaycottSpainOnyama Limba UNQUALIFIED
Johnson I InouyeIndiaStephen Shaw PROPOSAL
Jefferson A WaycottArgentinaAsiya Javayant PROPOSAL
Aruna H FollerUnited KingdomIoni Bowcher QUALIFIED
Ivar D DarakjyCanadaIoni Bowcher NEGOTIATION
Octavia C FlosiBrazilXuxue Feng PROPOSAL
Darci M TollnerSpainXuxue Feng PROPOSAL
Salvatore L ButtItalyAmy Elsner PROPOSAL
Rodrigues J DoeUnited KingdomAnna Fali QUALIFIED
Jones K StensethSpainOnyama Limba RENEWAL
Jones E StockhamGermanyBernardo Dominic QUALIFIED
James Q InouyeFranceAsiya Javayant NEW
Ricardo C OldroydBrazilBernardo Dominic UNQUALIFIED

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