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
Arvin B MaletCanadaElwin Sharvill NEW
Jefferson O TollnerItalyIoni Bowcher PROPOSAL
Juan P SlusarskiIndiaBernardo Dominic NEW
Leja K AlbaresCanadaElwin Sharvill NEW
James N KolmetzArgentinaOnyama Limba PROPOSAL
Cody O ShinkoItalyBernardo Dominic PROPOSAL
Misaki F AlbaresJapanElwin Sharvill PROPOSAL
Murillo K MorascaUnited KingdomBernardo Dominic RENEWAL
Aditya M ChuiArgentinaBernardo Dominic NEW
Jefferson G StockhamRussiaIvan Magalhaes UNQUALIFIED
Sinclair P DoeRussiaXuxue Feng PROPOSAL
Aruna A OstroskyAustraliaIoni Bowcher NEGOTIATION
Aditya V InouyeItalyAmy Elsner QUALIFIED
Misaki I FollerIndiaBernardo Dominic UNQUALIFIED
Kadeem N AlbaresAustraliaAmy Elsner RENEWAL
Ivar F BologniaFranceElwin Sharvill NEGOTIATION
Johnson G ShinkoJapanIoni Bowcher NEW
Juan S FollerSpainXuxue Feng RENEWAL
Rodrigues A PoquetteCanadaAmy Elsner PROPOSAL
Stacey G WieserIndiaAnna Fali NEW
Emily P SaylorsCanadaElwin Sharvill NEW
Morrow P FlosiItalyBernardo Dominic UNQUALIFIED
Morrow F WieserBrazilAnna Fali RENEWAL
Deepesh F FollerJapanAsiya Javayant QUALIFIED
Murillo Z IturbideBrazilOnyama Limba NEGOTIATION
David C FollerArgentinaBernardo Dominic PROPOSAL
Alejandro L GillianJapanIoni Bowcher PROPOSAL
Antonio G StensethIndiaAmy Elsner RENEWAL
Stacey E VenereUnited KingdomXuxue Feng RENEWAL
Aika M StensethUnited KingdomIvan Magalhaes NEW
Alejandro Y GillianItalyAnna Fali UNQUALIFIED
Arvin I SergiCanadaIoni Bowcher NEW
Kaitlin P CaldareraFranceAnna Fali RENEWAL
Mujtaba P MaletUnited KingdomElwin Sharvill QUALIFIED
Chavez G FlosiUnited KingdomXuxue Feng NEGOTIATION
Aditya M SergiIndiaElwin Sharvill NEW
Rodrigues E SchemmerUnited KingdomStephen Shaw UNQUALIFIED
Julie R GauchoJapanAmy Elsner QUALIFIED
Stacey W NickaGermanyBernardo Dominic NEW
Tony L DarakjyArgentinaIoni Bowcher NEGOTIATION
Johnson K DoeJapanAmy Elsner UNQUALIFIED
Francesco E RutaIndiaAnna Fali PROPOSAL
Aruna B FlosiUnited KingdomIvan Magalhaes QUALIFIED
Sinclair V SchemmerFranceAsiya Javayant RENEWAL
Faith U AmigonBrazilBernardo Dominic PROPOSAL
Deepesh S VenereUnited KingdomIvan Magalhaes NEGOTIATION
Costa B RutaIndiaBernardo Dominic RENEWAL
Stacey A AlbaresFranceIvan Magalhaes QUALIFIED
Cody O NestleGermanyBernardo Dominic RENEWAL
Izzy V PoquetteUnited KingdomAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Mayumi J KolmetzJapanIvan Magalhaes NEW
Sinclair X AlbaresFranceIoni Bowcher NEW
Wickens J FollerCanadaIvan Magalhaes UNQUALIFIED
Leja R FlosiItalyIvan Magalhaes NEW
Silvio J FollerBrazilXuxue Feng RENEWAL
David E MaletSpainStephen Shaw PROPOSAL
Jefferson A GlickItalyElwin Sharvill NEW
Arvin G GarufiRussiaStephen Shaw RENEWAL
Alejandro Q PoquetteArgentinaAnna Fali PROPOSAL
Chavez O RimJapanElwin Sharvill RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson C BriddickSpain2024-06-10Feltz Printing Service UNQUALIFIED7Anna Fali
1001Johnson Y RoysterItaly2024-05-25Feltz Printing Service PROPOSAL82Elwin Sharvill
1002Morrow V GarufiUnited Kingdom2024-06-07Buckley Miller Wright RENEWAL95Asiya Javayant
1003Clifford N GlickItaly2024-06-01Commercial Press UNQUALIFIED59Bernardo Dominic
1004Wickens K WieserGermany2024-05-23Benton, John B Jr QUALIFIED79Asiya Javayant
1005Munro X RimUnited Kingdom2024-05-30Rangoni Of Florence NEW95Amy Elsner
1006Jones J FerenczSpain2024-06-16Benton, John B Jr UNQUALIFIED44Amy Elsner
1007Jennifer W DilliardUnited Kingdom2024-06-01Feiner Bros QUALIFIED56Anna Fali
1008Julie Z ButtCanada2024-05-23Rousseaux, Michael Esq QUALIFIED53Ivan Magalhaes
1009Salvatore D WaycottRussia2024-06-05Rousseaux, Michael Esq QUALIFIED90Bernardo Dominic
1010Tony B WieserSpain2024-06-16Feiner Bros QUALIFIED77Onyama Limba
1011Greenwood S AmigonCanada2024-06-04Chanay, Jeffrey A Esq NEW63Anna Fali
1012Ashley O MaletAustralia2024-06-14Feltz Printing Service NEW75Anna Fali
1013Jefferson K DarakjyIndia2024-05-20Rangoni Of Florence RENEWAL43Anna Fali
1014Kadeem N FigeroaAustralia2024-05-31Chapman, Ross E Esq UNQUALIFIED12Amy Elsner
1015Wickens Z AlbaresUnited Kingdom2024-06-05Dorl, James J Esq RENEWAL51Ioni Bowcher
1016Tony M RutaIndia2024-06-13Feltz Printing Service RENEWAL51Anna Fali
1017Antonio L FerenczUnited Kingdom2024-06-07Commercial Press RENEWAL21Ivan Magalhaes
1018Isabel F CampainAustralia2024-06-07Morlong Associates QUALIFIED67Elwin Sharvill
1019Aditya H GlickItaly2024-05-20Feltz Printing Service PROPOSAL49Anna Fali
1020Emily M KuskoAustralia2024-06-03Feltz Printing Service NEW94Amy Elsner
1021Wickens E MorascaGermany2024-05-30Chemel, James L Cpa QUALIFIED83Elwin Sharvill
1022Costa G FollerGermany2024-05-20Commercial Press RENEWAL83Ivan Magalhaes
1023Misaki V RoysterFrance2024-05-25Feltz Printing Service NEGOTIATION36Xuxue Feng
1024Maria U VenereBrazil2024-05-21Commercial Press RENEWAL57Amy Elsner
1025Wickens K NestleBrazil2024-06-12Commercial Press NEW62Elwin Sharvill
1026Jeanfrancois M MorascaCanada2024-05-27Dorl, James J Esq QUALIFIED97Asiya Javayant
1027James U RoysterJapan2024-06-04Truhlar And Truhlar Attys NEGOTIATION18Amy Elsner
1028Kadeem V PerinIndia2024-06-13Rousseaux, Michael Esq NEW61Xuxue Feng
1029Deepesh Q CaldareraItaly2024-05-22Morlong Associates UNQUALIFIED22Asiya Javayant
1030Aruna N SaylorsSpain2024-05-18Benton, John B Jr NEW21Stephen Shaw
1031Rodrigues D SlusarskiRussia2024-05-21Dorl, James J Esq QUALIFIED3Elwin Sharvill
1032James P GillianAustralia2024-06-11King, Christopher A Esq RENEWAL97Elwin Sharvill
1033Cody H NickaAustralia2024-06-08Chapman, Ross E Esq NEW59Onyama Limba
1034Ricardo S MarrierAustralia2024-05-27Dorl, James J Esq QUALIFIED56Bernardo Dominic
1035Alejandro V KuskoArgentina2024-05-23King, Christopher A Esq PROPOSAL58Ivan Magalhaes
1036Leja J VocelkaIndia2024-06-14Commercial Press NEW16Xuxue Feng
1037Silvio N GauchoJapan2024-06-10Rousseaux, Michael Esq UNQUALIFIED43Xuxue Feng
1038Emily F TollnerBrazil2024-06-10Commercial Press UNQUALIFIED12Anna Fali
1039Claire Q SaylorsSpain2024-05-20Commercial Press RENEWAL7Amy Elsner
1040Francesco M SchemmerBrazil2024-06-05King, Christopher A Esq QUALIFIED31Elwin Sharvill
1041Maria K StockhamAustralia2024-05-20Benton, John B Jr NEW12Xuxue Feng
1042Leja W TollnerCanada2024-06-07Feltz Printing Service NEW24Stephen Shaw
1043Jeanfrancois A FigeroaJapan2024-05-24Chanay, Jeffrey A Esq NEGOTIATION72Stephen Shaw
1044Costa N GauchoArgentina2024-05-28Commercial Press RENEWAL74Anna Fali
1045Aika H FollerBrazil2024-05-26Commercial Press PROPOSAL43Asiya Javayant
1046Isabel T OstroskyArgentina2024-05-25Printing Dimensions UNQUALIFIED99Asiya Javayant
1047Kaitlin K CampainBrazil2024-06-14Truhlar And Truhlar Attys NEGOTIATION95Asiya Javayant
1048Maria A RulapaughUnited Kingdom2024-05-28Printing Dimensions QUALIFIED66Asiya Javayant
1049Izzy S BriddickJapan2024-05-31Commercial Press RENEWAL10Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Leja P StockhamAustraliaAnna Fali QUALIFIED
Kadeem I ButtArgentinaOnyama Limba QUALIFIED
Ashley D MaletGermanyIoni Bowcher QUALIFIED
Mujtaba C RulapaughIndiaXuxue Feng NEW
Misaki V MarrierIndiaBernardo Dominic UNQUALIFIED
Ivar A RimArgentinaIoni Bowcher RENEWAL
Aika V RoysterGermanyIoni Bowcher PROPOSAL
Faith S ShinkoFranceIvan Magalhaes RENEWAL
Silvio Y OstroskyGermanyIvan Magalhaes QUALIFIED
Jeanfrancois N DilliardJapanBernardo Dominic PROPOSAL
Leja R PoquetteRussiaXuxue Feng QUALIFIED
Smith L RoysterCanadaAnna Fali QUALIFIED
Ashley R StockhamAustraliaAmy Elsner UNQUALIFIED
Aika B BowleyAustraliaAsiya Javayant QUALIFIED
Deepesh E RimGermanyOnyama Limba NEGOTIATION
Rodrigues E GlickFranceAsiya Javayant UNQUALIFIED
Misaki Y SaylorsItalyXuxue Feng UNQUALIFIED
Maisha U SaylorsCanadaIoni Bowcher QUALIFIED
Juan H MacleadUnited KingdomIoni Bowcher PROPOSAL
Isabel N FollerSpainIvan Magalhaes QUALIFIED
Misaki Q StensethRussiaAnna Fali QUALIFIED
Greenwood W DilliardItalyOnyama Limba NEGOTIATION
Leja I GillianBrazilBernardo Dominic RENEWAL
Maria O GauchoRussiaIvan Magalhaes NEGOTIATION
Jennifer P VenereArgentinaIoni Bowcher PROPOSAL
Jones H MorascaIndiaXuxue Feng PROPOSAL
Maria L NickaAustraliaAnna Fali PROPOSAL
Salvatore G SaylorsRussiaElwin Sharvill PROPOSAL
Jeanfrancois N RimAustraliaOnyama Limba UNQUALIFIED
Jennifer F WhobreyIndiaElwin Sharvill QUALIFIED
Aika F FerenczArgentinaIoni Bowcher QUALIFIED
James N SergiIndiaXuxue Feng QUALIFIED
Morrow F SergiJapanBernardo Dominic RENEWAL
Silvio A GauchoArgentinaIvan Magalhaes RENEWAL
James Q StockhamJapanIoni Bowcher RENEWAL
Aika K MorascaAustraliaAsiya Javayant RENEWAL
Isabel O SergiCanadaStephen Shaw PROPOSAL
Arvin H RoysterGermanyAsiya Javayant RENEWAL
Silvio H GillianSpainOnyama Limba NEGOTIATION
Aruna C StockhamSpainAmy Elsner PROPOSAL
Jennifer W TollnerSpainOnyama Limba UNQUALIFIED
Claire N ButtGermanyAnna Fali QUALIFIED
Ashley F MaletFranceIvan Magalhaes RENEWAL
Chavez T MorascaItalyAmy Elsner UNQUALIFIED
Mayumi N KuskoCanadaStephen Shaw NEGOTIATION
Kadeem Y RutaItalyElwin Sharvill QUALIFIED
Aditya Z RulapaughJapanOnyama Limba RENEWAL
Leja E OstroskyCanadaAmy Elsner NEW
Francesco K OstroskyIndiaXuxue Feng RENEWAL
Faith F BriddickRussiaBernardo Dominic NEW
Frozen Columns
Name
Arvin D Figeroa
Stacey M Ferencz
Tony V Morasca
Jennifer P Nestle
Costa T Stenseth
Ashley W Caudy
Francesco N Figeroa
Antonio M Garufi
Nicolas B Nicka
Francesco J Schemmer
Ivar O Ruta
Leon U Amigon
Francesco T Sergi
Smith I Ostrosky
Nicolas A Marrier
Cody S Doe
Aruna V Venere
Aika P Maclead
Francesco A Waycott
Chavez D Ostrosky
James W Caudy
Ricardo F Ruta
Aika O Darakjy
Chavez O Waycott
Greenwood E Ruta
Francesco K Butt
Mayumi F Saylors
Jefferson M Shinko
Clifford F Kusko
Alejandro D Iturbide
Clifford R Iturbide
Munro E Inouye
Johnson G Campain
Kaitlin N Ferencz
Arvin Y Paprocki
Nicolas A Perin
Silvio H Bolognia
Emily O Vocelka
Aika V Campain
Emily S Saylors
Ashley R Nestle
Nicolas K Whobrey
Sinclair V Garufi
Johnson E Nicka
Antonio G Schemmer
Salvatore M Briddick
Maria Z Saylors
Nicolas G Chui
Misaki X Royster
Smith X Slusarski
IdCountryDate
1000Russia2024-06-04
1001United Kingdom2024-06-03
1002Germany2024-06-15
1003Japan2024-05-30
1004India2024-05-30
1005Germany2024-06-13
1006India2024-05-24
1007France2024-06-09
1008Argentina2024-06-02
1009India2024-05-21
1010United Kingdom2024-06-07
1011Germany2024-05-21
1012Germany2024-06-11
1013Germany2024-06-12
1014Italy2024-06-03
1015Spain2024-05-26
1016Canada2024-06-06
1017Italy2024-05-24
1018Italy2024-06-13
1019Brazil2024-06-12
1020Japan2024-05-30
1021Spain2024-06-08
1022France2024-05-24
1023India2024-05-29
1024Argentina2024-05-27
1025Spain2024-05-30
1026Germany2024-05-26
1027Germany2024-05-22
1028Spain2024-06-13
1029Australia2024-06-11
1030France2024-06-11
1031Spain2024-05-26
1032Canada2024-05-19
1033Australia2024-05-19
1034Italy2024-05-23
1035Canada2024-06-05
1036United Kingdom2024-06-10
1037Italy2024-05-30
1038Germany2024-05-20
1039Argentina2024-05-22
1040Canada2024-05-28
1041Brazil2024-05-23
1042France2024-05-18
1043Italy2024-06-12
1044France2024-06-14
1045Russia2024-06-07
1046Argentina2024-05-26
1047Russia2024-05-19
1048Brazil2024-06-11
1049United Kingdom2024-06-10

On-Demand Data

NameIdCountryDate
Silvio N Darakjy1000Italy2024-05-26
Mujtaba F Poquette1001France2024-05-27
Octavia I Rulapaugh1002Japan2024-06-02
Arvin D Rim1003Canada2024-06-05
Smith L Kusko1004Brazil2024-06-12
Aruna W Garufi1005United Kingdom2024-05-18
David G Malet1006Germany2024-06-13
Francesco G Perin1007Germany2024-06-05
Mayumi D Waycott1008Spain2024-05-31
Ivar B Nicka1009France2024-06-02
Morrow I Caldarera1010Spain2024-06-07
Octavia G Bolognia1011Australia2024-06-09
Morrow W Doe1012Canada2024-05-30
Jefferson P Rim1013Brazil2024-06-01
David Z Figeroa1014Russia2024-06-15
Octavia F Campain1015Brazil2024-05-28
Mayumi L Ostrosky1016Argentina2024-06-13
Aditya G Oldroyd1017Spain2024-06-03
Aruna F Paprocki1018United Kingdom2024-05-30
Jennifer T Foller1019Canada2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki T RutaRussiaAmy Elsner NEW
Costa J ButtAustraliaAsiya Javayant QUALIFIED
Murillo J AmigonGermanyIvan Magalhaes PROPOSAL
Costa V PerinSpainElwin Sharvill UNQUALIFIED
Izzy T MacleadArgentinaStephen Shaw RENEWAL
Octavia C MacleadJapanElwin Sharvill NEW
Jones D GillianItalyAsiya Javayant PROPOSAL
Jones X InouyeFranceAnna Fali NEGOTIATION
Misaki W BowleyAustraliaIoni Bowcher NEGOTIATION
Francesco V DilliardArgentinaAsiya Javayant NEW
James K NestleCanadaXuxue Feng PROPOSAL
Octavia Y ButtFranceIvan Magalhaes NEGOTIATION
Ashley A GauchoJapanIvan Magalhaes PROPOSAL
Adams X KolmetzIndiaOnyama Limba NEGOTIATION
Claire C VocelkaSpainAnna Fali UNQUALIFIED
Leon M BriddickAustraliaIoni Bowcher PROPOSAL
Ivar F CaldareraFranceAsiya Javayant UNQUALIFIED
Isabel Z GarufiFranceXuxue Feng RENEWAL
Salvatore O DilliardArgentinaIvan Magalhaes QUALIFIED
Leja F CaldareraBrazilAnna Fali QUALIFIED
Cody U SaylorsBrazilElwin Sharvill RENEWAL
Maisha F VenereJapanOnyama Limba RENEWAL
Adams B DilliardIndiaOnyama Limba RENEWAL
Jones K InouyeJapanIvan Magalhaes UNQUALIFIED
Kaitlin L KuskoGermanyBernardo Dominic RENEWAL
Ricardo G GillianJapanIvan Magalhaes QUALIFIED
Clifford C OstroskyCanadaBernardo Dominic RENEWAL
Stacey F MorascaFranceBernardo Dominic PROPOSAL
Sinclair J IturbideJapanIoni Bowcher NEGOTIATION
Arvin M KuskoUnited KingdomXuxue Feng NEW
Julie F BriddickRussiaAmy Elsner NEGOTIATION
Jeanfrancois S ChuiGermanyAmy Elsner QUALIFIED
Ashley P FigeroaUnited KingdomIvan Magalhaes UNQUALIFIED
Kaitlin P NestleItalyXuxue Feng NEGOTIATION
Smith P WaycottIndiaOnyama Limba UNQUALIFIED
Misaki K SlusarskiRussiaXuxue Feng NEW
Mujtaba Q RulapaughCanadaAmy Elsner RENEWAL
Leon Z MarrierUnited KingdomStephen Shaw NEW
Aditya Z OstroskyAustraliaBernardo Dominic UNQUALIFIED
Kadeem M NestleGermanyOnyama Limba NEGOTIATION

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