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
Stacey Y AlbaresAustraliaAmy Elsner RENEWAL
Ricardo A DilliardArgentinaAnna Fali NEGOTIATION
Ashley X CampainItalyAsiya Javayant PROPOSAL
Arvin Z GarufiAustraliaBernardo Dominic NEGOTIATION
Rodrigues N AlbaresCanadaIoni Bowcher RENEWAL
Emily A MaletItalyBernardo Dominic RENEWAL
Darci T FlosiBrazilOnyama Limba NEW
Greenwood V NestleFranceElwin Sharvill NEGOTIATION
Jeanfrancois E OstroskySpainStephen Shaw UNQUALIFIED
Kaitlin Q DoeAustraliaAnna Fali PROPOSAL
Ashley D PaprockiCanadaXuxue Feng NEW
Adams H SaylorsUnited KingdomXuxue Feng NEGOTIATION
Ricardo K OldroydArgentinaIvan Magalhaes RENEWAL
Costa E CaudyAustraliaStephen Shaw RENEWAL
David A MaletItalyAmy Elsner NEW
Greenwood P FerenczGermanyStephen Shaw PROPOSAL
Aditya L ChuiJapanIvan Magalhaes QUALIFIED
Clifford F CampainGermanyIvan Magalhaes NEW
Chavez Y CaudyGermanyXuxue Feng QUALIFIED
Silvio K NestleUnited KingdomElwin Sharvill QUALIFIED
Kadeem W FigeroaGermanyAnna Fali PROPOSAL
Mayumi U MorascaItalyAmy Elsner UNQUALIFIED
Jeanfrancois Q GarufiJapanAnna Fali UNQUALIFIED
Misaki D MaletFranceBernardo Dominic NEW
Adams J MacleadArgentinaAmy Elsner RENEWAL
Chavez K SaylorsJapanIvan Magalhaes NEW
Octavia S FollerItalyBernardo Dominic NEGOTIATION
Munro T MorascaArgentinaXuxue Feng NEGOTIATION
Costa W NestleArgentinaXuxue Feng RENEWAL
Clifford G RutaFranceIvan Magalhaes NEGOTIATION
Aruna E SlusarskiSpainAsiya Javayant QUALIFIED
Francesco T WaycottRussiaAsiya Javayant RENEWAL
Jeanfrancois M GlickBrazilStephen Shaw QUALIFIED
Smith C VenereAustraliaAnna Fali NEGOTIATION
Aditya H MaletBrazilIvan Magalhaes NEGOTIATION
Cody D InouyeAustraliaAsiya Javayant PROPOSAL
Cody O RutaCanadaAmy Elsner NEW
Aditya U MaletFranceStephen Shaw PROPOSAL
Sinclair S IturbideUnited KingdomAnna Fali NEW
Aruna M GarufiJapanBernardo Dominic QUALIFIED
Francesco W StensethFranceAmy Elsner PROPOSAL
Juan Z RoysterAustraliaAnna Fali PROPOSAL
Jennifer C KuskoArgentinaAsiya Javayant NEW
Aruna M DoeCanadaStephen Shaw QUALIFIED
Maisha C StensethCanadaXuxue Feng PROPOSAL
Salvatore U RimBrazilIoni Bowcher PROPOSAL
Wickens B OstroskyAustraliaIvan Magalhaes PROPOSAL
David W MorascaIndiaAsiya Javayant PROPOSAL
Rodrigues O NestleSpainOnyama Limba RENEWAL
Tony H CampainUnited KingdomXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jefferson F TollnerCanadaXuxue Feng NEW
David T SergiBrazilElwin Sharvill NEGOTIATION
Munro L OstroskyRussiaIvan Magalhaes PROPOSAL
Emily I TollnerBrazilIvan Magalhaes UNQUALIFIED
Sinclair B InouyeUnited KingdomStephen Shaw PROPOSAL
Sinclair I WieserAustraliaXuxue Feng NEGOTIATION
Mayumi M WaycottSpainStephen Shaw NEW
Jones A StensethArgentinaBernardo Dominic NEW
Smith I SergiCanadaIvan Magalhaes UNQUALIFIED
Greenwood Q StockhamCanadaIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow E MacleadAustralia2024-05-31Printing Dimensions RENEWAL10Xuxue Feng
1001Arvin Z GarufiGermany2024-05-17Chemel, James L Cpa RENEWAL26Ioni Bowcher
1002Emily X RulapaughFrance2024-05-25Buckley Miller Wright UNQUALIFIED56Asiya Javayant
1003Ashley Y DarakjyAustralia2024-06-08Dorl, James J Esq RENEWAL53Ioni Bowcher
1004Munro S DarakjyRussia2024-06-04Buckley Miller Wright PROPOSAL30Xuxue Feng
1005Jeanfrancois L MaletArgentina2024-05-30Feiner Bros QUALIFIED98Xuxue Feng
1006Smith E CaudyRussia2024-05-28Truhlar And Truhlar Attys QUALIFIED38Ivan Magalhaes
1007Faith B AmigonUnited Kingdom2024-05-15Chemel, James L Cpa QUALIFIED92Ivan Magalhaes
1008Alejandro X RutaItaly2024-05-23Commercial Press NEGOTIATION73Ivan Magalhaes
1009Claire E CaudyIndia2024-05-20King, Christopher A Esq QUALIFIED68Onyama Limba
1010Claire X BriddickArgentina2024-06-07Feiner Bros PROPOSAL42Anna Fali
1011James F PaprockiArgentina2024-05-29Feltz Printing Service RENEWAL62Xuxue Feng
1012Smith B PerinGermany2024-06-04Morlong Associates QUALIFIED52Stephen Shaw
1013Izzy T NickaJapan2024-06-02Dorl, James J Esq NEW3Ivan Magalhaes
1014Silvio C DarakjyUnited Kingdom2024-06-12Chanay, Jeffrey A Esq RENEWAL70Ioni Bowcher
1015Ricardo A CaldareraIndia2024-05-23Truhlar And Truhlar Attys UNQUALIFIED71Anna Fali
1016Jones U CaudySpain2024-05-18Chemel, James L Cpa UNQUALIFIED76Bernardo Dominic
1017Rodrigues L SlusarskiGermany2024-05-24Chanay, Jeffrey A Esq QUALIFIED46Onyama Limba
1018Johnson Z DilliardBrazil2024-06-10Rousseaux, Michael Esq RENEWAL44Asiya Javayant
1019Cody I MaletRussia2024-05-31Feiner Bros RENEWAL27Anna Fali
1020Octavia B RimBrazil2024-06-10Feiner Bros RENEWAL25Stephen Shaw
1021Clifford Y VocelkaArgentina2024-05-17Commercial Press PROPOSAL43Asiya Javayant
1022Leja C WieserUnited Kingdom2024-05-28Chapman, Ross E Esq RENEWAL72Stephen Shaw
1023Octavia J StockhamGermany2024-05-24Truhlar And Truhlar Attys UNQUALIFIED27Elwin Sharvill
1024Francesco L BowleyAustralia2024-06-07Chapman, Ross E Esq QUALIFIED80Amy Elsner
1025Mayumi N NestleAustralia2024-06-13Rangoni Of Florence PROPOSAL99Anna Fali
1026Mayumi L TollnerGermany2024-06-04King, Christopher A Esq PROPOSAL20Xuxue Feng
1027Morrow G SaylorsUnited Kingdom2024-06-12Buckley Miller Wright UNQUALIFIED95Amy Elsner
1028Deepesh P AlbaresFrance2024-05-27Morlong Associates QUALIFIED65Bernardo Dominic
1029Aditya W SergiUnited Kingdom2024-06-02Chanay, Jeffrey A Esq PROPOSAL48Anna Fali
1030Kaitlin G GlickGermany2024-05-19Dorl, James J Esq UNQUALIFIED28Amy Elsner
1031Salvatore T PoquetteGermany2024-05-31Feiner Bros PROPOSAL25Bernardo Dominic
1032Isabel B StensethArgentina2024-06-08Chapman, Ross E Esq NEGOTIATION33Asiya Javayant
1033Mujtaba V KolmetzAustralia2024-05-29Rousseaux, Michael Esq PROPOSAL46Xuxue Feng
1034Ivar S PaprockiIndia2024-06-03Buckley Miller Wright PROPOSAL22Xuxue Feng
1035Jeanfrancois X WaycottIndia2024-06-02Morlong Associates NEW50Elwin Sharvill
1036Murillo W MaletAustralia2024-06-10Morlong Associates QUALIFIED18Ioni Bowcher
1037Francesco I NickaUnited Kingdom2024-06-03Feiner Bros NEGOTIATION49Elwin Sharvill
1038Rodrigues T GillianBrazil2024-06-04Printing Dimensions NEW16Anna Fali
1039Emily Y DilliardItaly2024-06-10Rousseaux, Michael Esq RENEWAL60Onyama Limba
1040Francesco Y DoeUnited Kingdom2024-06-02Benton, John B Jr NEGOTIATION50Bernardo Dominic
1041Ashley J PerinJapan2024-05-28Feiner Bros UNQUALIFIED45Ioni Bowcher
1042Emily Y MarrierArgentina2024-05-23Dorl, James J Esq UNQUALIFIED88Ivan Magalhaes
1043Faith H AmigonGermany2024-06-13Chanay, Jeffrey A Esq NEW18Ioni Bowcher
1044Aika L SergiItaly2024-06-01Truhlar And Truhlar Attys PROPOSAL39Onyama Limba
1045Wickens T DoeJapan2024-05-31Chapman, Ross E Esq NEW59Ioni Bowcher
1046Octavia X SchemmerArgentina2024-06-02Benton, John B Jr UNQUALIFIED53Ivan Magalhaes
1047Salvatore L CaldareraBrazil2024-05-22Feltz Printing Service NEW94Amy Elsner
1048Mayumi I SchemmerRussia2024-06-13Truhlar And Truhlar Attys RENEWAL14Onyama Limba
1049David R AlbaresIndia2024-06-01Dorl, James J Esq QUALIFIED56Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Misaki Y MaletItalyAnna Fali RENEWAL
Kadeem A GarufiArgentinaStephen Shaw QUALIFIED
Izzy A InouyeJapanIoni Bowcher PROPOSAL
Misaki U GlickUnited KingdomElwin Sharvill NEGOTIATION
Mayumi L WieserFranceElwin Sharvill NEGOTIATION
Aika Z MaletAustraliaBernardo Dominic NEGOTIATION
Ivar W GlickSpainAsiya Javayant NEGOTIATION
Sinclair F WaycottGermanyBernardo Dominic QUALIFIED
Ricardo F WhobreyFranceOnyama Limba NEGOTIATION
Jennifer E AmigonArgentinaAnna Fali UNQUALIFIED
Ashley J WhobreyGermanyAmy Elsner UNQUALIFIED
Octavia Q AmigonItalyAsiya Javayant QUALIFIED
Aruna T NestleAustraliaAsiya Javayant PROPOSAL
Octavia C KolmetzRussiaAnna Fali RENEWAL
Ashley G AmigonRussiaAsiya Javayant PROPOSAL
Cody O NestleUnited KingdomStephen Shaw QUALIFIED
Deepesh G WhobreyJapanBernardo Dominic NEW
Aika Q RulapaughAustraliaBernardo Dominic QUALIFIED
Jennifer A DilliardJapanXuxue Feng QUALIFIED
Faith D RimArgentinaAnna Fali QUALIFIED
Octavia H MorascaUnited KingdomBernardo Dominic QUALIFIED
Mayumi U IturbideItalyAsiya Javayant UNQUALIFIED
Aruna D FlosiCanadaAnna Fali NEW
Mujtaba V RoysterItalyAsiya Javayant QUALIFIED
James B RimBrazilBernardo Dominic QUALIFIED
Ivar H GauchoArgentinaIvan Magalhaes UNQUALIFIED
Costa D BriddickIndiaStephen Shaw QUALIFIED
Ivar Q FerenczSpainXuxue Feng NEGOTIATION
Munro F InouyeIndiaAmy Elsner QUALIFIED
Cody J RulapaughAustraliaAsiya Javayant RENEWAL
Leja F VenereCanadaXuxue Feng PROPOSAL
Jones N FigeroaBrazilAmy Elsner NEGOTIATION
Aika H RutaCanadaStephen Shaw PROPOSAL
Alejandro J SchemmerBrazilStephen Shaw PROPOSAL
Faith N ShinkoIndiaAnna Fali QUALIFIED
Jennifer M ShinkoFranceAmy Elsner PROPOSAL
Maisha K KuskoJapanXuxue Feng NEGOTIATION
Tony F AlbaresSpainXuxue Feng PROPOSAL
Octavia T ShinkoRussiaBernardo Dominic PROPOSAL
Faith E MacleadSpainAmy Elsner RENEWAL
Costa W StockhamRussiaElwin Sharvill UNQUALIFIED
Stacey C MaletItalyElwin Sharvill UNQUALIFIED
Morrow R SergiCanadaBernardo Dominic QUALIFIED
Mayumi M FollerIndiaAsiya Javayant NEW
Johnson S WaycottFranceOnyama Limba PROPOSAL
Alejandro Q SchemmerIndiaXuxue Feng PROPOSAL
Chavez T MorascaJapanStephen Shaw RENEWAL
Isabel O GillianFranceAnna Fali UNQUALIFIED
Arvin B FollerJapanOnyama Limba RENEWAL
Nicolas G KuskoGermanyAnna Fali NEW
Frozen Columns
Name
Jennifer O Schemmer
Ashley R Rim
Munro V Chui
Mujtaba U Rulapaugh
Deepesh N Malet
Tony T Venere
Cody I Rim
Faith L Ostrosky
Greenwood M Shinko
Cody K Paprocki
Morrow T Gillian
David F Kusko
Jefferson P Wieser
Morrow V Gillian
Leon V Darakjy
Wickens Z Waycott
Isabel T Doe
Nicolas I Paprocki
Misaki W Rulapaugh
Morrow J Venere
Nicolas K Foller
Aika O Morasca
Sinclair G Marrier
Mujtaba O Butt
Wickens U Paprocki
Deepesh G Malet
Morrow U Caldarera
Jennifer X Paprocki
Leja C Garufi
Leja D Wieser
James K Ostrosky
Aruna D Darakjy
Mayumi V Shinko
Kaitlin C Rulapaugh
Cody K Caldarera
Julie B Poquette
Wickens G Dilliard
Nicolas Z Maclead
Maisha Q Morasca
Juan R Albares
Francesco H Campain
Maria R Chui
Claire N Butt
Darci G Ferencz
Aika C Gillian
Salvatore A Royster
Murillo T Marrier
Stacey K Malet
Stacey P Nestle
Jones N Kusko
IdCountryDate
1000Argentina2024-06-13
1001Japan2024-05-19
1002Italy2024-05-22
1003Italy2024-06-09
1004Argentina2024-06-11
1005France2024-05-24
1006Australia2024-06-05
1007Russia2024-05-28
1008United Kingdom2024-06-07
1009France2024-05-19
1010Canada2024-05-30
1011Spain2024-05-25
1012Canada2024-06-07
1013United Kingdom2024-05-15
1014United Kingdom2024-05-28
1015Argentina2024-06-01
1016Germany2024-06-04
1017Australia2024-05-24
1018Germany2024-06-08
1019Australia2024-05-26
1020France2024-05-29
1021Australia2024-06-07
1022France2024-05-28
1023United Kingdom2024-05-29
1024Canada2024-06-05
1025Australia2024-06-12
1026Brazil2024-06-01
1027Germany2024-05-16
1028India2024-05-17
1029Russia2024-06-05
1030Canada2024-06-03
1031Russia2024-05-26
1032India2024-05-18
1033Argentina2024-06-01
1034Spain2024-05-24
1035Argentina2024-05-20
1036Australia2024-05-27
1037United Kingdom2024-06-08
1038Italy2024-05-31
1039Australia2024-05-25
1040France2024-05-31
1041Brazil2024-06-11
1042Italy2024-05-22
1043Russia2024-05-20
1044France2024-05-17
1045Russia2024-06-09
1046France2024-05-30
1047Spain2024-06-10
1048France2024-06-05
1049Germany2024-05-25

On-Demand Data

NameIdCountryDate
Jones F Marrier1000Canada2024-06-09
Munro D Ostrosky1001Germany2024-06-11
Smith P Marrier1002Spain2024-05-29
Aika G Albares1003Japan2024-05-23
Ricardo T Albares1004United Kingdom2024-06-11
James P Saylors1005Brazil2024-05-24
Maria U Caudy1006Brazil2024-05-21
Faith J Kusko1007Argentina2024-06-02
Salvatore I Stenseth1008Russia2024-06-05
Morrow I Garufi1009Argentina2024-06-04
Mayumi M Kolmetz1010Japan2024-05-21
Misaki J Foller1011Spain2024-05-24
Alejandro Z Poquette1012Italy2024-05-31
Rodrigues D Schemmer1013Argentina2024-05-19
Maria K Marrier1014France2024-06-02
Munro F Ostrosky1015Germany2024-05-26
Antonio I Briddick1016Germany2024-05-18
Misaki V Venere1017Brazil2024-05-18
Misaki M Gillian1018Brazil2024-05-15
Kadeem N Flosi1019United Kingdom2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa I NestleSpainAmy Elsner UNQUALIFIED
Izzy D OstroskyCanadaElwin Sharvill QUALIFIED
Jennifer F GauchoBrazilIoni Bowcher QUALIFIED
Clifford R VocelkaArgentinaAnna Fali QUALIFIED
Greenwood C KuskoRussiaAmy Elsner NEGOTIATION
Maria Q CaudyAustraliaIvan Magalhaes NEGOTIATION
Faith O PaprockiAustraliaStephen Shaw UNQUALIFIED
Maria Z ShinkoBrazilXuxue Feng PROPOSAL
Antonio S PoquetteAustraliaOnyama Limba NEW
Greenwood H VenereGermanyIoni Bowcher NEW
James H TollnerJapanAnna Fali NEW
James H RimGermanyBernardo Dominic UNQUALIFIED
Juan L MaletGermanyBernardo Dominic UNQUALIFIED
Tony C RutaIndiaIoni Bowcher RENEWAL
Alejandro B GauchoAustraliaOnyama Limba PROPOSAL
Maisha I NestleJapanOnyama Limba UNQUALIFIED
Munro G RulapaughUnited KingdomStephen Shaw RENEWAL
Munro I GarufiRussiaAsiya Javayant QUALIFIED
Claire V SlusarskiArgentinaElwin Sharvill UNQUALIFIED
Johnson W GillianRussiaAmy Elsner QUALIFIED
David K FerenczUnited KingdomAnna Fali PROPOSAL
Claire P CampainRussiaXuxue Feng NEGOTIATION
Alejandro O RulapaughFranceIoni Bowcher NEGOTIATION
Mayumi D SchemmerCanadaStephen Shaw PROPOSAL
Chavez Z BriddickGermanyAmy Elsner PROPOSAL
Jones Z FerenczAustraliaXuxue Feng UNQUALIFIED
Munro I AlbaresRussiaAmy Elsner NEW
Morrow K MaletFranceXuxue Feng UNQUALIFIED
Ashley Q WhobreyArgentinaAsiya Javayant PROPOSAL
Munro X StensethIndiaXuxue Feng RENEWAL
Ricardo E AmigonBrazilElwin Sharvill QUALIFIED
Clifford R GarufiUnited KingdomElwin Sharvill NEW
Stacey O ButtAustraliaBernardo Dominic UNQUALIFIED
Jeanfrancois M BologniaUnited KingdomAmy Elsner NEW
Antonio B FlosiCanadaIoni Bowcher QUALIFIED
Jefferson S StockhamSpainAsiya Javayant UNQUALIFIED
Mayumi I DoeAustraliaOnyama Limba UNQUALIFIED
Clifford Q WhobreyJapanAmy Elsner NEGOTIATION
Mujtaba Y MarrierArgentinaAnna Fali QUALIFIED
Munro M ShinkoRussiaAsiya Javayant 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>