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

Input Style

Themes

PrimeOne
Saga Saga
Vela Vela
Arya Arya
Bootstrap
bootstrap4-blue-light Bootstrap Blue
bootstrap4-purple-light Bootstrap Purple
bootstrap4-blue-dark Bootstrap Blue
bootstrap4-purple-dark Bootstrap Purple
Material Design
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple
Material Design Compact
material-indigo-light Indigo
material-deeppurple-light' Deep Purple
material-indigo-dark Indigo
material-deeppurple-dark' Deep Purple

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
Isabel K IturbideSpainIvan Magalhaes QUALIFIED
Aruna I TollnerSpainAnna Fali RENEWAL
Isabel G SergiSpainOnyama Limba PROPOSAL
Antonio H CaldareraRussiaAsiya Javayant QUALIFIED
Arvin N MaletUnited KingdomElwin Sharvill RENEWAL
David J SchemmerJapanXuxue Feng RENEWAL
Darci V KuskoBrazilAsiya Javayant RENEWAL
Juan S DilliardJapanIoni Bowcher RENEWAL
Johnson L BowleyRussiaElwin Sharvill NEGOTIATION
Juan V InouyeUnited KingdomOnyama Limba NEGOTIATION
Francesco U NickaBrazilElwin Sharvill NEW
Maisha N GlickBrazilBernardo Dominic RENEWAL
Mayumi Z ButtGermanyAmy Elsner UNQUALIFIED
Kadeem U SaylorsFranceBernardo Dominic RENEWAL
Murillo H PoquetteIndiaStephen Shaw RENEWAL
Jefferson G NestleFranceStephen Shaw PROPOSAL
Mayumi P SergiRussiaStephen Shaw NEGOTIATION
Octavia T PerinIndiaBernardo Dominic NEGOTIATION
Greenwood P CaudyAustraliaIoni Bowcher RENEWAL
Jones H ButtSpainBernardo Dominic PROPOSAL
Izzy N ChuiCanadaIvan Magalhaes RENEWAL
Johnson J GillianSpainXuxue Feng NEW
Isabel S FollerJapanAsiya Javayant NEGOTIATION
Stacey B ButtUnited KingdomOnyama Limba NEW
Alejandro M RimIndiaBernardo Dominic NEGOTIATION
Leon P SlusarskiAustraliaAsiya Javayant NEW
Izzy B AlbaresItalyOnyama Limba QUALIFIED
Darci Y AmigonCanadaAmy Elsner RENEWAL
Chavez Z VenereJapanAsiya Javayant QUALIFIED
Silvio B VenereFranceAmy Elsner NEW
Juan K MorascaIndiaAmy Elsner NEW
Ivar Z FigeroaUnited KingdomAsiya Javayant QUALIFIED
Juan Q BologniaIndiaIoni Bowcher RENEWAL
Stacey C SergiCanadaIoni Bowcher RENEWAL
Murillo B WhobreyRussiaBernardo Dominic QUALIFIED
Chavez Q DoeJapanStephen Shaw RENEWAL
Juan P MorascaCanadaXuxue Feng NEW
Smith S BowleyUnited KingdomXuxue Feng QUALIFIED
Arvin H FollerAustraliaStephen Shaw QUALIFIED
Francesco I IturbideJapanXuxue Feng NEW
Aditya S FlosiArgentinaIoni Bowcher QUALIFIED
Stacey D NestleArgentinaBernardo Dominic NEGOTIATION
Sinclair F CaudyBrazilAsiya Javayant NEGOTIATION
Costa X IturbideSpainAnna Fali PROPOSAL
Misaki O DarakjyUnited KingdomBernardo Dominic PROPOSAL
Leon W MaletArgentinaAnna Fali PROPOSAL
James I GlickRussiaOnyama Limba NEGOTIATION
Ricardo U WieserArgentinaBernardo Dominic UNQUALIFIED
Leja E NestleGermanyAsiya Javayant NEGOTIATION
Munro E FigeroaCanadaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Stacey K BriddickJapanXuxue Feng QUALIFIED
Ivar H MorascaBrazilAsiya Javayant RENEWAL
Greenwood L IturbideJapanAnna Fali PROPOSAL
Octavia B InouyeCanadaBernardo Dominic QUALIFIED
Kadeem D BowleyBrazilAsiya Javayant QUALIFIED
Mayumi L ShinkoSpainAsiya Javayant NEW
Aika I PaprockiRussiaXuxue Feng NEGOTIATION
Mayumi H SaylorsUnited KingdomStephen Shaw NEW
Clifford Z DoeUnited KingdomStephen Shaw UNQUALIFIED
Izzy T SergiFranceStephen Shaw PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh C WieserGermany2025-04-27Dorl, James J Esq NEGOTIATION13Anna Fali
1001Julie C WieserGermany2025-04-23Benton, John B Jr NEW54Asiya Javayant
1002Nicolas Y WhobreyJapan2025-04-05Benton, John B Jr PROPOSAL2Elwin Sharvill
1003Arvin J InouyeGermany2025-04-21Chapman, Ross E Esq UNQUALIFIED10Bernardo Dominic
1004Adams S FlosiJapan2025-04-01Feiner Bros PROPOSAL93Anna Fali
1005Ricardo B CampainSpain2025-04-30Feiner Bros NEGOTIATION80Stephen Shaw
1006Maisha S RulapaughUnited Kingdom2025-04-01Printing Dimensions NEW20Elwin Sharvill
1007Julie A DilliardUnited Kingdom2025-04-06Benton, John B Jr PROPOSAL79Onyama Limba
1008Deepesh T InouyeRussia2025-04-02Commercial Press NEGOTIATION80Stephen Shaw
1009Francesco P SlusarskiBrazil2025-04-20Chapman, Ross E Esq RENEWAL10Bernardo Dominic
1010Izzy S CaudyItaly2025-04-29Benton, John B Jr QUALIFIED36Ivan Magalhaes
1011Costa V NestleAustralia2025-04-05Rousseaux, Michael Esq NEGOTIATION16Ioni Bowcher
1012James L BriddickRussia2025-04-25Chanay, Jeffrey A Esq UNQUALIFIED9Amy Elsner
1013Ricardo R BologniaUnited Kingdom2025-04-19Truhlar And Truhlar Attys RENEWAL36Xuxue Feng
1014Leja Y IturbideGermany2025-04-10Truhlar And Truhlar Attys NEW46Elwin Sharvill
1015Sinclair T SaylorsItaly2025-04-29Printing Dimensions NEGOTIATION9Amy Elsner
1016Faith I CaldareraIndia2025-04-25Chapman, Ross E Esq NEW40Elwin Sharvill
1017Munro O DilliardFrance2025-04-28Chanay, Jeffrey A Esq RENEWAL52Bernardo Dominic
1018Tony I CaldareraSpain2025-04-04Commercial Press RENEWAL95Elwin Sharvill
1019Isabel Q CaldareraJapan2025-04-11Dorl, James J Esq UNQUALIFIED50Amy Elsner
1020Sinclair G FigeroaItaly2025-04-02Chanay, Jeffrey A Esq QUALIFIED49Anna Fali
1021Chavez T StensethAustralia2025-04-28Buckley Miller Wright UNQUALIFIED97Ivan Magalhaes
1022Octavia A RoysterSpain2025-04-11Commercial Press NEGOTIATION49Onyama Limba
1023David L StensethItaly2025-04-07Feiner Bros RENEWAL81Elwin Sharvill
1024Stacey R WhobreySpain2025-04-17Rangoni Of Florence UNQUALIFIED89Bernardo Dominic
1025Darci X GlickFrance2025-04-04Feiner Bros NEW19Ivan Magalhaes
1026Nicolas N GauchoGermany2025-04-29Printing Dimensions NEW16Onyama Limba
1027Adams Q WhobreyUnited Kingdom2025-04-01Printing Dimensions NEW7Anna Fali
1028Faith F SergiIndia2025-04-14Printing Dimensions PROPOSAL76Ivan Magalhaes
1029Cody J GarufiGermany2025-04-27Feiner Bros QUALIFIED70Ioni Bowcher
1030Adams R DarakjyArgentina2025-04-06King, Christopher A Esq NEGOTIATION50Ioni Bowcher
1031Morrow F BowleyFrance2025-04-16Chanay, Jeffrey A Esq RENEWAL26Anna Fali
1032Faith S SlusarskiFrance2025-04-12Rangoni Of Florence QUALIFIED9Ivan Magalhaes
1033Mayumi W GillianRussia2025-04-12Feiner Bros UNQUALIFIED2Elwin Sharvill
1034Aditya P BologniaIndia2025-04-19Rousseaux, Michael Esq PROPOSAL27Asiya Javayant
1035Tony X MacleadGermany2025-04-15Truhlar And Truhlar Attys PROPOSAL73Anna Fali
1036James C GauchoUnited Kingdom2025-04-10Printing Dimensions NEW74Stephen Shaw
1037Juan M MorascaBrazil2025-04-20Benton, John B Jr PROPOSAL2Bernardo Dominic
1038David C GauchoCanada2025-04-09Rousseaux, Michael Esq NEW81Ivan Magalhaes
1039Octavia D OldroydBrazil2025-04-05Printing Dimensions RENEWAL82Amy Elsner
1040Rodrigues J OstroskyGermany2025-04-06Feltz Printing Service UNQUALIFIED69Onyama Limba
1041Francesco V BowleyGermany2025-04-17Benton, John B Jr QUALIFIED3Ioni Bowcher
1042Chavez R NestleCanada2025-04-06Printing Dimensions UNQUALIFIED39Elwin Sharvill
1043Aruna Z WhobreyUnited Kingdom2025-04-25Morlong Associates PROPOSAL24Elwin Sharvill
1044Antonio B RimBrazil2025-04-05Morlong Associates RENEWAL81Elwin Sharvill
1045Greenwood Z AmigonFrance2025-04-20Printing Dimensions QUALIFIED15Asiya Javayant
1046Alejandro T ChuiUnited Kingdom2025-04-18Chanay, Jeffrey A Esq NEGOTIATION78Anna Fali
1047Sinclair R BowleyGermany2025-04-15Chanay, Jeffrey A Esq NEGOTIATION6Asiya Javayant
1048Juan M DarakjyAustralia2025-04-03Rangoni Of Florence QUALIFIED94Stephen Shaw
1049Ashley H DarakjyFrance2025-04-10Commercial Press NEW66Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Salvatore F WaycottArgentinaXuxue Feng NEW
Mujtaba X GillianAustraliaAnna Fali NEW
Munro L VocelkaJapanXuxue Feng UNQUALIFIED
Darci V MacleadFranceAsiya Javayant QUALIFIED
Cody B FigeroaJapanElwin Sharvill QUALIFIED
Maisha V BologniaRussiaXuxue Feng NEW
Aruna E CampainAustraliaIoni Bowcher NEW
Smith U ChuiCanadaIvan Magalhaes NEW
Leon L ShinkoSpainAnna Fali QUALIFIED
Ashley L NickaArgentinaOnyama Limba NEGOTIATION
Tony S GarufiCanadaIoni Bowcher QUALIFIED
Emily V GauchoUnited KingdomBernardo Dominic NEGOTIATION
Alejandro X RimGermanyAsiya Javayant NEGOTIATION
Deepesh V AmigonRussiaBernardo Dominic RENEWAL
Alejandro R GillianRussiaStephen Shaw NEGOTIATION
Jones A MaletJapanIvan Magalhaes QUALIFIED
Ivar N ChuiArgentinaAnna Fali PROPOSAL
Tony M DarakjyFranceIvan Magalhaes UNQUALIFIED
Julie L AmigonRussiaIoni Bowcher NEGOTIATION
Darci K WieserSpainIvan Magalhaes UNQUALIFIED
Ricardo A ButtUnited KingdomIoni Bowcher NEW
Alejandro L DarakjyRussiaBernardo Dominic RENEWAL
Ashley K FerenczGermanyOnyama Limba NEW
Leon O TollnerGermanyXuxue Feng PROPOSAL
Ricardo I TollnerCanadaElwin Sharvill RENEWAL
Francesco S PoquetteJapanXuxue Feng UNQUALIFIED
Nicolas T PerinBrazilElwin Sharvill QUALIFIED
Ashley B WieserUnited KingdomAmy Elsner NEW
Cody M TollnerJapanIvan Magalhaes RENEWAL
Izzy X PoquetteRussiaStephen Shaw UNQUALIFIED
Julie G BowleyArgentinaElwin Sharvill QUALIFIED
Nicolas F GauchoJapanXuxue Feng NEGOTIATION
Ivar D PerinCanadaOnyama Limba QUALIFIED
Chavez S GillianUnited KingdomAnna Fali RENEWAL
Izzy G ChuiItalyAnna Fali QUALIFIED
Jefferson P TollnerJapanIoni Bowcher RENEWAL
Maria O VenereJapanIoni Bowcher PROPOSAL
Jones L VocelkaRussiaIoni Bowcher NEW
James V AmigonJapanOnyama Limba NEGOTIATION
Rodrigues E ButtUnited KingdomOnyama Limba UNQUALIFIED
Kaitlin E FigeroaItalyIoni Bowcher NEGOTIATION
Kaitlin D FerenczAustraliaXuxue Feng NEGOTIATION
Morrow X NickaSpainAsiya Javayant UNQUALIFIED
Costa O ChuiRussiaAnna Fali QUALIFIED
Isabel I FigeroaUnited KingdomAmy Elsner PROPOSAL
Mujtaba N TollnerSpainIoni Bowcher NEGOTIATION
Jeanfrancois O WaycottFranceAnna Fali NEW
Nicolas C BriddickFranceStephen Shaw UNQUALIFIED
Emily S NestleFranceElwin Sharvill RENEWAL
Faith R NestleCanadaOnyama Limba NEW
Frozen Columns
Name
Aruna B Gaucho
Tony S Rulapaugh
David H Bowley
Francesco J Rim
Jennifer W Maclead
Munro D Rim
Jones H Ruta
Mayumi M Ruta
Maisha I Waycott
Wickens Q Wieser
Munro W Venere
Aika T Malet
Leon P Garufi
Misaki L Dilliard
Jennifer U Caldarera
Nicolas X Shinko
David T Stenseth
Julie L Ruta
Julie F Whobrey
Morrow N Maclead
Munro D Butt
David P Rulapaugh
Leja V Caudy
Tony F Whobrey
Aditya W Caldarera
Stacey C Poquette
Maria S Shinko
Julie E Bowley
Faith I Flosi
Antonio O Darakjy
Kaitlin G Caudy
Aditya A Campain
Jones L Poquette
Wickens T Rim
Emily W Iturbide
Aditya Z Flosi
Claire N Amigon
Francesco G Stockham
Misaki S Malet
Jeanfrancois L Campain
Julie Y Chui
Kadeem Q Schemmer
James C Amigon
Maria B Saylors
Kaitlin Y Figeroa
Aditya G Stenseth
Claire K Stenseth
Julie M Tollner
Leon J Dilliard
Misaki R Waycott
IdCountryDate
1000Spain2025-04-04
1001Brazil2025-04-17
1002Japan2025-04-25
1003Germany2025-04-06
1004United Kingdom2025-04-22
1005Japan2025-04-04
1006Australia2025-04-16
1007Italy2025-04-17
1008Spain2025-04-12
1009Argentina2025-04-06
1010Spain2025-04-17
1011Canada2025-04-16
1012Russia2025-04-05
1013Australia2025-04-12
1014Germany2025-04-18
1015Brazil2025-04-19
1016Spain2025-04-18
1017United Kingdom2025-04-25
1018United Kingdom2025-04-08
1019India2025-04-12
1020India2025-04-01
1021Spain2025-04-02
1022Russia2025-04-25
1023United Kingdom2025-04-03
1024India2025-04-21
1025Russia2025-04-05
1026Japan2025-04-13
1027Japan2025-04-24
1028Brazil2025-04-17
1029Germany2025-04-19
1030Spain2025-04-23
1031Spain2025-04-05
1032Germany2025-04-12
1033Germany2025-04-17
1034Brazil2025-04-07
1035Spain2025-04-24
1036France2025-04-02
1037Italy2025-04-14
1038Australia2025-04-03
1039France2025-04-30
1040United Kingdom2025-04-24
1041Argentina2025-04-04
1042Italy2025-04-17
1043Germany2025-04-16
1044Italy2025-04-18
1045United Kingdom2025-04-06
1046Brazil2025-04-24
1047Spain2025-04-23
1048Russia2025-04-28
1049Spain2025-04-23

On-Demand Data

NameIdCountryDate
Kadeem T Venere1000Italy2025-04-14
Maria M Gaucho1001Argentina2025-04-06
Morrow M Bowley1002France2025-04-18
Stacey O Bolognia1003Japan2025-04-01
Smith U Shinko1004France2025-04-25
Stacey C Paprocki1005Spain2025-04-08
Misaki A Perin1006Japan2025-04-01
James R Dilliard1007Russia2025-04-07
Emily S Tollner1008Spain2025-04-16
Greenwood I Flosi1009Argentina2025-04-25
Leon P Slusarski1010Spain2025-04-05
Munro Z Foller1011Brazil2025-04-17
Arvin E Glick1012Germany2025-04-18
Ivar A Ruta1013Brazil2025-04-17
Stacey A Figeroa1014Italy2025-04-10
Jefferson P Rulapaugh1015Spain2025-04-23
Claire G Wieser1016France2025-04-26
Darci Z Perin1017Brazil2025-04-12
Chavez X Malet1018India2025-04-20
Nicolas Q Malet1019Italy2025-04-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie K SaylorsRussiaOnyama Limba PROPOSAL
Antonio E MaletAustraliaOnyama Limba UNQUALIFIED
Kaitlin J DilliardSpainBernardo Dominic QUALIFIED
Kadeem U SaylorsBrazilIoni Bowcher QUALIFIED
Francesco V RoysterUnited KingdomStephen Shaw RENEWAL
Jeanfrancois H GillianRussiaAsiya Javayant PROPOSAL
Johnson H StockhamSpainOnyama Limba NEGOTIATION
Jefferson K GauchoAustraliaIvan Magalhaes NEGOTIATION
Antonio O SlusarskiUnited KingdomBernardo Dominic NEW
Kaitlin Z ShinkoFranceElwin Sharvill NEW
Octavia N RutaCanadaBernardo Dominic UNQUALIFIED
Julie J FerenczAustraliaAnna Fali NEW
Morrow P NickaRussiaOnyama Limba PROPOSAL
Deepesh I ButtIndiaIoni Bowcher NEW
Smith U FigeroaGermanyAsiya Javayant RENEWAL
Jones X StockhamUnited KingdomIoni Bowcher UNQUALIFIED
Ashley M OstroskyFranceAsiya Javayant NEGOTIATION
Ashley E GarufiUnited KingdomElwin Sharvill NEW
David T StockhamArgentinaStephen Shaw PROPOSAL
Silvio W StockhamGermanyOnyama Limba NEW
Adams V RimIndiaXuxue Feng QUALIFIED
Salvatore E MacleadAustraliaIoni Bowcher QUALIFIED
Emily G DilliardArgentinaIoni Bowcher RENEWAL
Murillo X MacleadItalyAsiya Javayant PROPOSAL
Isabel R DilliardItalyElwin Sharvill RENEWAL
Darci T BologniaJapanBernardo Dominic PROPOSAL
Ashley T DoeFranceAmy Elsner PROPOSAL
Murillo C MarrierFranceBernardo Dominic UNQUALIFIED
Deepesh A RutaUnited KingdomOnyama Limba UNQUALIFIED
Cody O WaycottIndiaXuxue Feng NEGOTIATION
Claire H SergiArgentinaAnna Fali PROPOSAL
Leon W GlickIndiaStephen Shaw QUALIFIED
Cody H MacleadUnited KingdomStephen Shaw PROPOSAL
Maria Q PaprockiBrazilStephen Shaw PROPOSAL
Maria H ShinkoFranceStephen Shaw NEW
Sinclair Z AmigonRussiaAmy Elsner UNQUALIFIED
Ivar A GarufiIndiaXuxue Feng QUALIFIED
Julie P PaprockiFranceAnna Fali UNQUALIFIED
Chavez P OstroskyUnited KingdomElwin Sharvill NEW
Smith H MaletRussiaAmy Elsner 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">
            <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>