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
Greenwood O SlusarskiAustraliaAmy Elsner RENEWAL
Munro G CampainAustraliaAsiya Javayant QUALIFIED
Jeanfrancois Y RoysterSpainIvan Magalhaes QUALIFIED
Ashley C RimJapanElwin Sharvill UNQUALIFIED
Francesco S WhobreyIndiaAsiya Javayant NEW
Clifford V VenereIndiaElwin Sharvill NEW
Leon R CaudyBrazilAmy Elsner RENEWAL
Smith R PaprockiBrazilOnyama Limba QUALIFIED
Nicolas K SaylorsSpainBernardo Dominic NEGOTIATION
Rodrigues X SergiRussiaStephen Shaw NEW
Kaitlin A WieserArgentinaAsiya Javayant NEGOTIATION
Misaki O GillianAustraliaElwin Sharvill NEGOTIATION
Ricardo Z SaylorsUnited KingdomAnna Fali RENEWAL
Maisha T OstroskyFranceAmy Elsner PROPOSAL
Adams J TollnerUnited KingdomXuxue Feng NEGOTIATION
Emily P PaprockiIndiaAmy Elsner NEW
Izzy C RoysterItalyAnna Fali NEW
Morrow J RoysterItalyBernardo Dominic PROPOSAL
Aika A AmigonJapanIoni Bowcher NEGOTIATION
Smith G RulapaughFranceBernardo Dominic UNQUALIFIED
Mayumi J VocelkaGermanyBernardo Dominic PROPOSAL
Tony Y RoysterAustraliaAnna Fali NEW
Munro G ShinkoSpainElwin Sharvill QUALIFIED
Mayumi L CampainJapanAnna Fali PROPOSAL
Aika A FerenczItalyBernardo Dominic PROPOSAL
Leon D StensethBrazilIvan Magalhaes NEW
Aruna E SlusarskiItalyAmy Elsner UNQUALIFIED
Morrow V StockhamAustraliaIvan Magalhaes RENEWAL
Faith I SaylorsAustraliaXuxue Feng NEGOTIATION
Greenwood W ShinkoSpainAnna Fali NEGOTIATION
Ashley N GarufiItalyXuxue Feng RENEWAL
Salvatore J OstroskyArgentinaIoni Bowcher NEGOTIATION
Murillo Q BriddickUnited KingdomOnyama Limba PROPOSAL
Faith J ButtArgentinaAmy Elsner RENEWAL
Adams D WieserFranceAsiya Javayant UNQUALIFIED
Leja L PerinUnited KingdomIvan Magalhaes NEW
Francesco P VocelkaFranceStephen Shaw PROPOSAL
Tony V KuskoBrazilOnyama Limba UNQUALIFIED
Claire W PerinSpainBernardo Dominic UNQUALIFIED
Leon U RimArgentinaXuxue Feng RENEWAL
Julie O NickaGermanyStephen Shaw RENEWAL
Sinclair R StensethIndiaOnyama Limba UNQUALIFIED
Leon M VocelkaIndiaIoni Bowcher UNQUALIFIED
Salvatore K BriddickCanadaAsiya Javayant QUALIFIED
Claire D BriddickCanadaXuxue Feng QUALIFIED
Jefferson J CaldareraRussiaAmy Elsner NEW
Faith P RoysterFranceXuxue Feng UNQUALIFIED
Sinclair B FollerCanadaOnyama Limba QUALIFIED
Misaki Q DilliardJapanOnyama Limba UNQUALIFIED
Alejandro P FigeroaBrazilElwin Sharvill NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Rodrigues P WhobreyJapanStephen Shaw UNQUALIFIED
Ricardo F RoysterBrazilIoni Bowcher QUALIFIED
Ashley S DarakjySpainElwin Sharvill UNQUALIFIED
Stacey O BriddickAustraliaBernardo Dominic NEGOTIATION
Wickens Y NestleItalyAmy Elsner UNQUALIFIED
Mayumi D StockhamUnited KingdomOnyama Limba PROPOSAL
Stacey L GillianAustraliaAnna Fali UNQUALIFIED
Francesco L DilliardBrazilElwin Sharvill UNQUALIFIED
Jones Z FollerRussiaOnyama Limba NEGOTIATION
Munro O PaprockiRussiaIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley W StensethArgentina2024-06-20King, Christopher A Esq UNQUALIFIED0Xuxue Feng
1001Mayumi J BologniaSpain2024-06-04Benton, John B Jr QUALIFIED45Anna Fali
1002Silvio F MaletSpain2024-05-29Dorl, James J Esq PROPOSAL6Elwin Sharvill
1003Ashley Q AmigonGermany2024-05-27Chapman, Ross E Esq UNQUALIFIED94Asiya Javayant
1004Leja Y SchemmerArgentina2024-06-10Dorl, James J Esq PROPOSAL53Ivan Magalhaes
1005Ashley E KuskoItaly2024-06-14Printing Dimensions NEW94Xuxue Feng
1006Izzy B GillianUnited Kingdom2024-06-05Feltz Printing Service PROPOSAL65Onyama Limba
1007Antonio S WieserGermany2024-06-15Chemel, James L Cpa UNQUALIFIED88Asiya Javayant
1008Julie W SchemmerUnited Kingdom2024-06-07Benton, John B Jr PROPOSAL74Bernardo Dominic
1009Sinclair I SchemmerSpain2024-06-05Dorl, James J Esq UNQUALIFIED96Xuxue Feng
1010Morrow J AlbaresSpain2024-06-05Rangoni Of Florence NEGOTIATION76Ioni Bowcher
1011Wickens Z PerinRussia2024-06-09Chemel, James L Cpa NEW3Amy Elsner
1012Julie A DarakjyAustralia2024-05-31Chanay, Jeffrey A Esq NEGOTIATION56Asiya Javayant
1013Costa A GarufiFrance2024-06-03Dorl, James J Esq NEW18Stephen Shaw
1014Faith O RoysterCanada2024-06-10Feltz Printing Service NEW78Xuxue Feng
1015Jones T DilliardArgentina2024-06-04Morlong Associates NEGOTIATION3Elwin Sharvill
1016Rodrigues N BowleySpain2024-06-04Rousseaux, Michael Esq UNQUALIFIED29Ivan Magalhaes
1017Cody H PoquetteBrazil2024-06-06Feiner Bros QUALIFIED35Onyama Limba
1018Jeanfrancois V GlickBrazil2024-06-05Truhlar And Truhlar Attys QUALIFIED25Anna Fali
1019Deepesh U RutaUnited Kingdom2024-06-14King, Christopher A Esq RENEWAL81Stephen Shaw
1020Isabel F WieserItaly2024-06-03Chemel, James L Cpa QUALIFIED97Anna Fali
1021Jones K SchemmerArgentina2024-05-28Chemel, James L Cpa RENEWAL25Bernardo Dominic
1022Salvatore Q StockhamBrazil2024-06-13Feiner Bros UNQUALIFIED97Anna Fali
1023Silvio U FerenczRussia2024-06-05Chemel, James L Cpa NEGOTIATION75Elwin Sharvill
1024Adams X CaldareraUnited Kingdom2024-06-21Commercial Press UNQUALIFIED36Onyama Limba
1025Emily U GarufiArgentina2024-06-11Chapman, Ross E Esq NEGOTIATION71Ivan Magalhaes
1026Maria S CaudyAustralia2024-06-21Feiner Bros UNQUALIFIED62Asiya Javayant
1027Jennifer D ButtItaly2024-06-20Printing Dimensions UNQUALIFIED1Ivan Magalhaes
1028Deepesh T PerinFrance2024-06-22Truhlar And Truhlar Attys NEW62Xuxue Feng
1029Alejandro H OstroskyCanada2024-06-12Truhlar And Truhlar Attys QUALIFIED75Xuxue Feng
1030Munro Y NickaBrazil2024-06-12Feiner Bros QUALIFIED11Amy Elsner
1031Ashley F DoeBrazil2024-05-28Chapman, Ross E Esq UNQUALIFIED45Ivan Magalhaes
1032Jennifer H NickaRussia2024-05-29Commercial Press NEGOTIATION88Ioni Bowcher
1033Rodrigues B OstroskyBrazil2024-06-15Buckley Miller Wright QUALIFIED49Xuxue Feng
1034Wickens X RimJapan2024-06-04Buckley Miller Wright RENEWAL46Stephen Shaw
1035Salvatore M ChuiUnited Kingdom2024-06-13Chemel, James L Cpa QUALIFIED13Asiya Javayant
1036Silvio S WhobreyIndia2024-06-08Buckley Miller Wright UNQUALIFIED3Xuxue Feng
1037Arvin M RoysterSpain2024-05-25Feltz Printing Service UNQUALIFIED28Anna Fali
1038Juan L WaycottRussia2024-06-11Dorl, James J Esq NEW33Elwin Sharvill
1039Isabel X StockhamGermany2024-06-17Printing Dimensions NEGOTIATION79Ivan Magalhaes
1040Sinclair R AlbaresUnited Kingdom2024-05-25Dorl, James J Esq RENEWAL72Amy Elsner
1041Jones D BriddickIndia2024-06-14Morlong Associates QUALIFIED75Xuxue Feng
1042Izzy G RulapaughJapan2024-05-25Printing Dimensions PROPOSAL98Elwin Sharvill
1043Aruna U SergiAustralia2024-06-16Dorl, James J Esq PROPOSAL57Amy Elsner
1044Isabel S BowleyUnited Kingdom2024-06-22Feltz Printing Service QUALIFIED70Bernardo Dominic
1045Ivar Q WhobreyFrance2024-05-24Rangoni Of Florence PROPOSAL52Xuxue Feng
1046Clifford J MaletRussia2024-06-12Feltz Printing Service QUALIFIED49Xuxue Feng
1047Octavia U AmigonFrance2024-06-21Feiner Bros RENEWAL34Elwin Sharvill
1048Ashley K ButtCanada2024-06-02Rousseaux, Michael Esq NEW89Ioni Bowcher
1049Julie A FlosiItaly2024-06-09Feltz Printing Service NEW54Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Ashley C WhobreySpainStephen Shaw PROPOSAL
Cody U FollerFranceIoni Bowcher NEGOTIATION
Kaitlin I GlickRussiaAmy Elsner NEW
Rodrigues S CaudyFranceIoni Bowcher PROPOSAL
Adams X SlusarskiJapanAsiya Javayant NEGOTIATION
Kaitlin N WieserSpainAsiya Javayant UNQUALIFIED
Deepesh S FerenczCanadaAnna Fali NEW
Sinclair G GarufiBrazilOnyama Limba PROPOSAL
Jennifer Z CaldareraUnited KingdomAsiya Javayant PROPOSAL
Smith D PaprockiItalyIvan Magalhaes QUALIFIED
Darci H VocelkaRussiaBernardo Dominic RENEWAL
Arvin R FlosiBrazilStephen Shaw NEW
Chavez D MacleadAustraliaXuxue Feng NEGOTIATION
James C OstroskyJapanStephen Shaw RENEWAL
Julie J GillianCanadaIvan Magalhaes UNQUALIFIED
Johnson B AmigonArgentinaXuxue Feng NEW
Francesco Z MaletSpainElwin Sharvill NEGOTIATION
Kadeem Y GauchoUnited KingdomAnna Fali PROPOSAL
Octavia Z RutaCanadaIvan Magalhaes RENEWAL
Costa C RutaJapanElwin Sharvill PROPOSAL
Mujtaba Q TollnerJapanXuxue Feng NEW
Murillo E IturbideFranceBernardo Dominic UNQUALIFIED
Ashley N RutaSpainIvan Magalhaes QUALIFIED
Rodrigues H WieserItalyIoni Bowcher NEGOTIATION
Isabel S MaletJapanBernardo Dominic RENEWAL
Mayumi A InouyeIndiaXuxue Feng PROPOSAL
Maisha D FlosiArgentinaStephen Shaw PROPOSAL
James P DilliardItalyBernardo Dominic QUALIFIED
Greenwood B NestleRussiaAmy Elsner RENEWAL
Arvin C PaprockiSpainStephen Shaw RENEWAL
Leon G RoysterItalyAnna Fali RENEWAL
Claire O MarrierAustraliaIvan Magalhaes UNQUALIFIED
Salvatore D ButtArgentinaAnna Fali PROPOSAL
Tony Y FigeroaAustraliaBernardo Dominic QUALIFIED
Rodrigues Q StockhamItalyElwin Sharvill NEW
Julie E SergiItalyXuxue Feng NEGOTIATION
Jones I BowleySpainIoni Bowcher QUALIFIED
Aruna T GillianFranceXuxue Feng NEGOTIATION
Tony T NickaJapanIoni Bowcher QUALIFIED
Maria W RutaArgentinaElwin Sharvill NEW
Smith S InouyeBrazilBernardo Dominic QUALIFIED
David Y GillianUnited KingdomIvan Magalhaes QUALIFIED
Tony I VenereArgentinaOnyama Limba NEW
Kadeem Q DilliardBrazilXuxue Feng NEGOTIATION
Sinclair O CaldareraGermanyStephen Shaw RENEWAL
Arvin N OstroskyItalyXuxue Feng UNQUALIFIED
Nicolas A MaletFranceXuxue Feng UNQUALIFIED
Wickens F IturbideBrazilAsiya Javayant QUALIFIED
Octavia F AmigonIndiaIoni Bowcher PROPOSAL
Claire P SchemmerBrazilIoni Bowcher NEGOTIATION
Frozen Columns
Name
Francesco J Amigon
Leon J Caldarera
Deepesh I Nestle
Leon W Foller
Sinclair D Iturbide
David G Glick
Claire Z Rim
Aditya P Stockham
Misaki D Glick
Maisha U Albares
Juan C Shinko
Kadeem Y Waycott
Nicolas B Malet
Morrow T Gillian
Juan E Chui
Leon W Tollner
Leja L Bolognia
Kaitlin A Poquette
Faith W Rim
Leon M Ostrosky
Smith L Perin
Silvio G Perin
Antonio B Stockham
Aika X Gaucho
Julie C Dilliard
Deepesh A Inouye
Munro P Glick
Antonio E Briddick
Ricardo H Nestle
Salvatore Y Nestle
Francesco I Gaucho
Darci S Royster
Clifford X Ruta
Faith L Foller
Stacey S Foller
Izzy D Whobrey
Ashley P Amigon
Ivar E Ferencz
Darci J Nicka
Kadeem B Stockham
Ivar L Rulapaugh
Smith H Kusko
Kaitlin C Ruta
Julie M Wieser
Jeanfrancois S Iturbide
Francesco A Ruta
Johnson Q Campain
David D Campain
Clifford S Caudy
Leja I Rulapaugh
IdCountryDate
1000United Kingdom2024-06-18
1001Australia2024-06-06
1002Spain2024-06-05
1003Spain2024-06-02
1004Japan2024-06-02
1005Spain2024-06-21
1006Italy2024-06-07
1007India2024-06-18
1008United Kingdom2024-06-17
1009Brazil2024-05-27
1010Russia2024-05-26
1011United Kingdom2024-06-11
1012Italy2024-06-08
1013United Kingdom2024-06-03
1014Argentina2024-06-06
1015Brazil2024-06-18
1016Australia2024-06-19
1017Spain2024-06-20
1018Spain2024-06-04
1019United Kingdom2024-05-28
1020Australia2024-05-28
1021Australia2024-06-10
1022Germany2024-06-14
1023Canada2024-06-15
1024France2024-06-21
1025Canada2024-06-07
1026India2024-06-02
1027India2024-06-21
1028Canada2024-05-26
1029Argentina2024-05-25
1030Italy2024-06-12
1031Brazil2024-05-25
1032Spain2024-05-27
1033Australia2024-06-22
1034Japan2024-06-14
1035Argentina2024-06-22
1036Russia2024-05-29
1037United Kingdom2024-06-03
1038India2024-05-25
1039Japan2024-06-22
1040Germany2024-05-30
1041Italy2024-05-24
1042United Kingdom2024-06-08
1043India2024-06-19
1044Italy2024-06-11
1045Italy2024-06-19
1046Spain2024-06-05
1047Germany2024-06-17
1048Australia2024-06-17
1049India2024-06-04

On-Demand Data

NameIdCountryDate
Stacey U Amigon1000Australia2024-06-16
Ashley H Rim1001Brazil2024-06-22
Leja I Oldroyd1002Brazil2024-06-13
Ricardo T Bolognia1003India2024-06-04
Stacey Z Caudy1004Argentina2024-06-19
Izzy Z Chui1005Spain2024-05-28
Emily L Darakjy1006Russia2024-05-24
Costa D Malet1007Japan2024-05-24
Aditya C Marrier1008France2024-06-15
Juan I Campain1009Argentina2024-05-28
Clifford G Inouye1010France2024-06-01
Aika T Gillian1011Canada2024-06-17
Silvio A Perin1012Brazil2024-06-01
Arvin E Sergi1013Russia2024-06-12
Julie F Tollner1014Australia2024-06-02
Clifford L Bolognia1015United Kingdom2024-05-24
Kadeem F Whobrey1016Russia2024-06-20
Smith S Amigon1017Italy2024-05-25
Smith F Vocelka1018Japan2024-06-15
Octavia X Caldarera1019Canada2024-05-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Isabel G MorascaUnited KingdomIoni Bowcher NEGOTIATION
Wickens N MaletUnited KingdomBernardo Dominic NEW
Jefferson O OstroskyItalyOnyama Limba NEGOTIATION
Chavez G StockhamGermanyAmy Elsner QUALIFIED
Clifford D KuskoAustraliaOnyama Limba UNQUALIFIED
Deepesh O BriddickBrazilAsiya Javayant NEW
Murillo T StockhamCanadaElwin Sharvill NEGOTIATION
Isabel L FigeroaBrazilOnyama Limba PROPOSAL
Greenwood D CaldareraUnited KingdomAnna Fali UNQUALIFIED
Arvin I VocelkaJapanAsiya Javayant NEGOTIATION
Misaki B AmigonSpainXuxue Feng NEW
Ivar W PoquetteUnited KingdomAnna Fali NEGOTIATION
Nicolas C FlosiRussiaAmy Elsner QUALIFIED
Adams T MorascaItalyAmy Elsner RENEWAL
Greenwood Y MaletUnited KingdomAsiya Javayant QUALIFIED
Smith Y OldroydCanadaIoni Bowcher RENEWAL
David A CaldareraGermanyAmy Elsner NEW
Aruna X MorascaBrazilStephen Shaw NEW
Aika V PaprockiFranceElwin Sharvill UNQUALIFIED
Maisha I SaylorsRussiaOnyama Limba NEGOTIATION
Mujtaba U PoquetteIndiaIoni Bowcher RENEWAL
Claire G RimCanadaStephen Shaw QUALIFIED
Rodrigues N MaletFranceStephen Shaw UNQUALIFIED
Aika W TollnerItalyElwin Sharvill RENEWAL
Murillo K CaudyIndiaBernardo Dominic RENEWAL
David A DilliardUnited KingdomAnna Fali NEGOTIATION
Costa M GauchoSpainAsiya Javayant UNQUALIFIED
Tony A GillianAustraliaIoni Bowcher NEGOTIATION
Jones M WhobreyFranceStephen Shaw NEGOTIATION
Wickens H WhobreyRussiaAnna Fali PROPOSAL
Maria D SergiIndiaOnyama Limba RENEWAL
Leja V MarrierArgentinaElwin Sharvill UNQUALIFIED
Costa Z TollnerCanadaElwin Sharvill QUALIFIED
Darci P ChuiArgentinaIvan Magalhaes PROPOSAL
Stacey D WaycottRussiaBernardo Dominic RENEWAL
Chavez N ButtIndiaIvan Magalhaes NEGOTIATION
Nicolas R DilliardArgentinaIvan Magalhaes UNQUALIFIED
Murillo F VenereJapanIvan Magalhaes RENEWAL
Arvin C GillianJapanAnna Fali NEGOTIATION
Maisha P FlosiGermanyIoni Bowcher NEW

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