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
Octavia H ChuiAustraliaElwin Sharvill PROPOSAL
Leja O SaylorsItalyAsiya Javayant NEGOTIATION
Jennifer Z WieserUnited KingdomAnna Fali NEW
Clifford D FigeroaIndiaIvan Magalhaes RENEWAL
Kadeem S SergiIndiaStephen Shaw QUALIFIED
Greenwood H InouyeJapanAmy Elsner PROPOSAL
Emily W SaylorsGermanyAmy Elsner NEGOTIATION
Kadeem J WieserBrazilAnna Fali QUALIFIED
Kadeem X StockhamArgentinaStephen Shaw UNQUALIFIED
Morrow H GauchoItalyXuxue Feng NEW
Darci H WaycottAustraliaStephen Shaw NEW
Jefferson N ShinkoItalyAnna Fali PROPOSAL
Jennifer O ButtCanadaAmy Elsner PROPOSAL
Deepesh L MaletArgentinaAnna Fali PROPOSAL
Alejandro G WhobreyBrazilStephen Shaw PROPOSAL
Arvin X MaletSpainBernardo Dominic UNQUALIFIED
Ivar E WaycottBrazilXuxue Feng PROPOSAL
Stacey Y SchemmerArgentinaXuxue Feng PROPOSAL
Antonio F StockhamUnited KingdomAmy Elsner PROPOSAL
Salvatore W PaprockiIndiaIvan Magalhaes RENEWAL
Morrow M NickaIndiaBernardo Dominic PROPOSAL
Claire L GillianArgentinaAnna Fali NEW
Smith C TollnerJapanOnyama Limba NEGOTIATION
Kaitlin K FigeroaGermanyBernardo Dominic UNQUALIFIED
Mujtaba R GillianArgentinaAmy Elsner NEGOTIATION
Izzy M ButtFranceBernardo Dominic NEGOTIATION
Leon N MacleadCanadaAnna Fali QUALIFIED
Aditya O InouyeJapanXuxue Feng PROPOSAL
Deepesh A RimAustraliaXuxue Feng RENEWAL
Jefferson F WaycottBrazilIoni Bowcher NEW
Jennifer K WieserCanadaOnyama Limba PROPOSAL
Wickens R MorascaRussiaBernardo Dominic RENEWAL
Chavez H GlickGermanyElwin Sharvill RENEWAL
Clifford B CaldareraSpainXuxue Feng QUALIFIED
Tony J GarufiUnited KingdomAmy Elsner RENEWAL
Deepesh V PaprockiAustraliaAsiya Javayant RENEWAL
Tony I VenereUnited KingdomAnna Fali QUALIFIED
Darci O WhobreyFranceStephen Shaw NEGOTIATION
Antonio U FlosiArgentinaStephen Shaw QUALIFIED
Maisha W SaylorsAustraliaIoni Bowcher NEW
Francesco P GlickItalyIoni Bowcher PROPOSAL
Isabel R WieserUnited KingdomElwin Sharvill NEW
Juan F GillianAustraliaBernardo Dominic NEW
James P InouyeCanadaStephen Shaw NEW
Juan N GarufiGermanyIoni Bowcher PROPOSAL
Wickens I MacleadCanadaIoni Bowcher NEGOTIATION
Faith E PerinJapanIoni Bowcher NEW
Isabel S RulapaughItalyAsiya Javayant NEW
Ricardo Y OstroskySpainXuxue Feng UNQUALIFIED
Deepesh B FollerItalyAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Faith L PoquetteRussiaXuxue Feng NEW
Munro Z NickaBrazilAmy Elsner NEGOTIATION
Octavia D SergiFranceAmy Elsner QUALIFIED
Adams N OstroskyArgentinaOnyama Limba UNQUALIFIED
Leja N VenereGermanyIoni Bowcher QUALIFIED
Jeanfrancois U PaprockiRussiaXuxue Feng NEGOTIATION
Mayumi Q MaletFranceAmy Elsner NEGOTIATION
Antonio B SaylorsArgentinaIvan Magalhaes NEGOTIATION
Ivar L PaprockiArgentinaAsiya Javayant NEGOTIATION
Smith G GarufiSpainAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow E CaldareraUnited Kingdom2024-04-29Truhlar And Truhlar Attys UNQUALIFIED49Asiya Javayant
1001Mayumi B MaletJapan2024-05-01Dorl, James J Esq UNQUALIFIED48Amy Elsner
1002Chavez J InouyeArgentina2024-04-30Commercial Press QUALIFIED87Xuxue Feng
1003Francesco I GauchoCanada2024-05-24King, Christopher A Esq NEGOTIATION46Bernardo Dominic
1004Juan L WaycottJapan2024-04-27Feiner Bros RENEWAL64Amy Elsner
1005Mujtaba F SchemmerUnited Kingdom2024-05-10Benton, John B Jr UNQUALIFIED50Ivan Magalhaes
1006Izzy R BowleyAustralia2024-04-28Truhlar And Truhlar Attys PROPOSAL6Anna Fali
1007Smith S WieserFrance2024-05-17Feiner Bros PROPOSAL23Xuxue Feng
1008Jefferson S RutaAustralia2024-05-21Buckley Miller Wright PROPOSAL14Stephen Shaw
1009Aika T CaudyItaly2024-05-14Chanay, Jeffrey A Esq QUALIFIED67Anna Fali
1010Maisha L RutaFrance2024-05-02Rousseaux, Michael Esq QUALIFIED93Amy Elsner
1011Sinclair M CaudyFrance2024-05-09Chapman, Ross E Esq NEW73Elwin Sharvill
1012Jones F FerenczSpain2024-05-26Rangoni Of Florence NEGOTIATION47Amy Elsner
1013Aditya F FigeroaIndia2024-05-07Chanay, Jeffrey A Esq UNQUALIFIED32Anna Fali
1014Costa F DoeBrazil2024-05-18Chemel, James L Cpa NEW17Ioni Bowcher
1015Alejandro H ShinkoCanada2024-05-06Chanay, Jeffrey A Esq UNQUALIFIED85Xuxue Feng
1016Claire G MacleadUnited Kingdom2024-04-27Chapman, Ross E Esq QUALIFIED72Amy Elsner
1017Adams X WhobreyRussia2024-05-25Rousseaux, Michael Esq NEW77Elwin Sharvill
1018Alejandro Y FollerRussia2024-05-14King, Christopher A Esq NEW41Bernardo Dominic
1019Aruna E TollnerFrance2024-05-19Feiner Bros QUALIFIED37Xuxue Feng
1020Silvio W FigeroaJapan2024-04-28Commercial Press NEGOTIATION40Ivan Magalhaes
1021Julie D CaldareraFrance2024-04-27Benton, John B Jr PROPOSAL57Elwin Sharvill
1022Nicolas Q WieserRussia2024-04-29King, Christopher A Esq RENEWAL88Xuxue Feng
1023Salvatore Y CaudyFrance2024-05-22King, Christopher A Esq NEGOTIATION10Elwin Sharvill
1024Kaitlin M ChuiUnited Kingdom2024-05-16Feltz Printing Service NEW73Bernardo Dominic
1025Ricardo C StensethArgentina2024-04-29Feltz Printing Service RENEWAL42Onyama Limba
1026Silvio Y DilliardBrazil2024-05-10Feltz Printing Service NEW7Ivan Magalhaes
1027Costa E MorascaIndia2024-05-08Chapman, Ross E Esq NEGOTIATION68Xuxue Feng
1028Cody R ShinkoRussia2024-05-01Chanay, Jeffrey A Esq NEW38Xuxue Feng
1029Aika Z TollnerAustralia2024-05-20Chanay, Jeffrey A Esq UNQUALIFIED61Elwin Sharvill
1030Murillo H MaletBrazil2024-05-07Chanay, Jeffrey A Esq QUALIFIED30Ioni Bowcher
1031Sinclair D BowleyItaly2024-05-15Chemel, James L Cpa UNQUALIFIED92Anna Fali
1032Adams P NestleRussia2024-05-16Chemel, James L Cpa NEW90Amy Elsner
1033Faith K MaletCanada2024-05-14Commercial Press UNQUALIFIED78Elwin Sharvill
1034Smith L StensethFrance2024-05-17Rangoni Of Florence NEW26Stephen Shaw
1035Julie K CaudyUnited Kingdom2024-05-04Printing Dimensions PROPOSAL74Anna Fali
1036Sinclair S MacleadArgentina2024-05-15Rousseaux, Michael Esq UNQUALIFIED12Ivan Magalhaes
1037Aditya X VenereJapan2024-05-16Dorl, James J Esq NEW50Onyama Limba
1038Julie D OldroydFrance2024-05-06Rangoni Of Florence PROPOSAL47Stephen Shaw
1039Tony X StockhamItaly2024-05-23Chapman, Ross E Esq PROPOSAL77Xuxue Feng
1040Munro C PaprockiFrance2024-04-29Printing Dimensions UNQUALIFIED77Xuxue Feng
1041Ivar G MacleadUnited Kingdom2024-05-09Printing Dimensions UNQUALIFIED41Ioni Bowcher
1042Mayumi I StensethFrance2024-05-16Truhlar And Truhlar Attys NEGOTIATION99Elwin Sharvill
1043Leja N WhobreyRussia2024-05-19Rousseaux, Michael Esq UNQUALIFIED40Elwin Sharvill
1044Darci I GarufiRussia2024-05-03Benton, John B Jr UNQUALIFIED3Xuxue Feng
1045Jones E ShinkoArgentina2024-04-29Morlong Associates NEW79Bernardo Dominic
1046Julie D MarrierUnited Kingdom2024-05-24Dorl, James J Esq NEW46Anna Fali
1047Antonio I VocelkaSpain2024-05-04Rousseaux, Michael Esq UNQUALIFIED16Anna Fali
1048Arvin V MaletGermany2024-05-10Dorl, James J Esq UNQUALIFIED1Anna Fali
1049Misaki H RoysterSpain2024-05-08Commercial Press PROPOSAL75Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Maisha G MarrierFranceAnna Fali QUALIFIED
David K IturbideCanadaAsiya Javayant UNQUALIFIED
Jones E OstroskyGermanyXuxue Feng QUALIFIED
Murillo F BriddickAustraliaAmy Elsner QUALIFIED
Emily K DilliardRussiaAmy Elsner RENEWAL
James B DarakjyBrazilIvan Magalhaes PROPOSAL
Misaki M GillianRussiaBernardo Dominic PROPOSAL
Ivar I GillianIndiaIoni Bowcher RENEWAL
Octavia A CampainFranceOnyama Limba NEW
Adams Z DoeItalyOnyama Limba NEGOTIATION
Ivar Q PoquetteCanadaIoni Bowcher NEW
Clifford Z NestleIndiaIoni Bowcher UNQUALIFIED
Mujtaba O GarufiBrazilXuxue Feng NEGOTIATION
Wickens N BriddickCanadaAmy Elsner RENEWAL
Claire R InouyeAustraliaElwin Sharvill PROPOSAL
Misaki Q InouyeIndiaAnna Fali RENEWAL
Antonio P PoquetteGermanyXuxue Feng UNQUALIFIED
Kadeem S NestleJapanXuxue Feng QUALIFIED
Aika C WaycottBrazilStephen Shaw RENEWAL
Deepesh F ChuiItalyElwin Sharvill RENEWAL
Murillo B CampainGermanyAnna Fali RENEWAL
Faith A OldroydBrazilXuxue Feng NEW
Isabel Z SlusarskiArgentinaAnna Fali NEW
Julie T MaletJapanIvan Magalhaes PROPOSAL
Mujtaba S WhobreyIndiaIoni Bowcher PROPOSAL
Alejandro V RoysterGermanyElwin Sharvill PROPOSAL
Jones U FollerSpainElwin Sharvill NEGOTIATION
Maisha N WhobreyRussiaOnyama Limba NEW
Julie P KuskoBrazilAnna Fali PROPOSAL
Isabel H OstroskyCanadaBernardo Dominic UNQUALIFIED
Jones M WhobreyRussiaOnyama Limba QUALIFIED
Clifford R StockhamArgentinaAnna Fali NEGOTIATION
Antonio A RutaGermanyElwin Sharvill QUALIFIED
James H DilliardArgentinaStephen Shaw QUALIFIED
Octavia I KolmetzBrazilAmy Elsner NEGOTIATION
Aika A CaldareraArgentinaXuxue Feng NEGOTIATION
Jennifer X StockhamRussiaIvan Magalhaes RENEWAL
Misaki D MaletCanadaBernardo Dominic RENEWAL
Darci E StensethArgentinaAmy Elsner UNQUALIFIED
Costa N OldroydSpainXuxue Feng UNQUALIFIED
Ashley F GillianFranceAmy Elsner QUALIFIED
Rodrigues A WhobreyItalyXuxue Feng QUALIFIED
Julie J IturbideRussiaAsiya Javayant UNQUALIFIED
Emily N RimGermanyIvan Magalhaes QUALIFIED
Claire V GillianAustraliaAmy Elsner NEGOTIATION
Maria M SaylorsAustraliaStephen Shaw RENEWAL
Jeanfrancois G DarakjyGermanyAsiya Javayant UNQUALIFIED
Octavia I VocelkaRussiaBernardo Dominic PROPOSAL
Darci I FlosiJapanAnna Fali QUALIFIED
Isabel L FollerIndiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Clifford P Garufi
Murillo B Nestle
Wickens V Flosi
Sinclair O Albares
Kadeem O Rim
Izzy X Schemmer
Jefferson K Campain
Antonio F Royster
Jeanfrancois A Poquette
Morrow U Vocelka
Juan Q Malet
Maria C Marrier
Tony T Nestle
Nicolas Z Dilliard
Sinclair J Marrier
Greenwood R Vocelka
Greenwood K Albares
Deepesh N Rim
Francesco Q Maclead
Ivar N Foller
Morrow R Tollner
Leja Q Briddick
Wickens H Malet
Maisha N Caudy
Maisha U Rulapaugh
Julie N Caudy
Chavez C Flosi
Aruna G Malet
Maria V Figeroa
Aruna D Doe
Jones K Foller
Ricardo K Caudy
Isabel Z Ruta
Jennifer M Schemmer
Darci M Gillian
Munro O Kolmetz
Leon S Chui
Ivar G Glick
Murillo F Inouye
Mujtaba Z Nestle
Aika R Royster
Costa N Malet
Stacey V Gillian
David S Kusko
Johnson E Campain
Julie V Ruta
Costa M Rulapaugh
Clifford A Figeroa
Cody F Stockham
Clifford B Slusarski
IdCountryDate
1000Canada2024-05-18
1001Germany2024-04-30
1002Argentina2024-05-10
1003France2024-05-22
1004Brazil2024-05-14
1005Italy2024-05-25
1006Canada2024-05-17
1007Japan2024-05-22
1008Argentina2024-05-05
1009Spain2024-05-24
1010Australia2024-04-29
1011United Kingdom2024-05-03
1012France2024-04-30
1013Argentina2024-05-06
1014Russia2024-05-09
1015Russia2024-04-28
1016Japan2024-04-27
1017Argentina2024-05-23
1018France2024-05-25
1019Russia2024-05-12
1020Italy2024-05-14
1021Brazil2024-05-05
1022Germany2024-05-05
1023United Kingdom2024-05-12
1024India2024-04-29
1025Russia2024-04-30
1026France2024-05-15
1027Spain2024-05-14
1028United Kingdom2024-05-01
1029Russia2024-05-01
1030Italy2024-05-17
1031Canada2024-05-21
1032Russia2024-04-27
1033Argentina2024-05-15
1034Spain2024-05-21
1035Spain2024-05-07
1036France2024-05-20
1037Canada2024-04-27
1038Russia2024-05-22
1039Brazil2024-05-24
1040Australia2024-05-25
1041India2024-05-04
1042France2024-05-22
1043Brazil2024-05-12
1044Japan2024-04-27
1045Germany2024-04-27
1046United Kingdom2024-05-22
1047Russia2024-05-01
1048Australia2024-05-12
1049France2024-05-01

On-Demand Data

NameIdCountryDate
Sinclair C Bowley1000Germany2024-05-18
Johnson C Butt1001Canada2024-05-08
Silvio Z Shinko1002United Kingdom2024-05-09
Smith U Briddick1003Argentina2024-05-20
Julie Q Nestle1004Russia2024-04-28
Silvio R Glick1005Australia2024-05-18
Arvin L Butt1006Russia2024-04-29
Rodrigues J Garufi1007United Kingdom2024-05-08
Faith E Nestle1008Brazil2024-05-12
Darci Q Briddick1009Germany2024-05-19
Ricardo X Dilliard1010Australia2024-04-27
Claire I Kolmetz1011Japan2024-05-26
Kaitlin U Figeroa1012Russia2024-05-06
Jones P Butt1013Spain2024-05-01
Aika P Chui1014Italy2024-05-05
Sinclair X Nicka1015Germany2024-05-13
Aruna X Tollner1016Italy2024-05-06
Sinclair U Kolmetz1017Germany2024-05-26
Morrow A Marrier1018United Kingdom2024-05-17
Costa R Whobrey1019Brazil2024-05-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy C OldroydAustraliaAsiya Javayant NEW
Smith T AlbaresUnited KingdomAnna Fali NEGOTIATION
Morrow O NestleFranceAmy Elsner QUALIFIED
Clifford P RimBrazilAnna Fali PROPOSAL
Wickens N ShinkoJapanXuxue Feng NEGOTIATION
Murillo Z GauchoUnited KingdomIoni Bowcher QUALIFIED
Smith E GillianBrazilAmy Elsner PROPOSAL
Francesco J GillianIndiaIoni Bowcher UNQUALIFIED
Alejandro N ButtIndiaAsiya Javayant QUALIFIED
Aika Y WaycottAustraliaStephen Shaw NEGOTIATION
Morrow B TollnerArgentinaAmy Elsner NEGOTIATION
Kaitlin X WieserCanadaAsiya Javayant NEW
Aditya O RoysterAustraliaAnna Fali QUALIFIED
Kadeem D AmigonIndiaStephen Shaw NEGOTIATION
Mujtaba C GillianRussiaAnna Fali NEGOTIATION
Deepesh H BriddickCanadaIoni Bowcher NEW
Julie G GlickBrazilElwin Sharvill PROPOSAL
Maria I NickaFranceElwin Sharvill NEW
Octavia E GauchoGermanyIoni Bowcher QUALIFIED
Ashley Q RutaRussiaXuxue Feng UNQUALIFIED
Emily P DarakjyJapanElwin Sharvill RENEWAL
David V StockhamIndiaIoni Bowcher PROPOSAL
Mujtaba J WhobreyRussiaAsiya Javayant PROPOSAL
Ivar W StensethSpainXuxue Feng NEGOTIATION
Leja L RutaItalyAsiya Javayant QUALIFIED
Octavia P InouyeAustraliaBernardo Dominic QUALIFIED
Jones R AmigonGermanyElwin Sharvill UNQUALIFIED
Alejandro H SaylorsGermanyIoni Bowcher PROPOSAL
Munro F PaprockiSpainAmy Elsner RENEWAL
Aditya A OstroskySpainElwin Sharvill PROPOSAL
Emily Z GlickJapanIoni Bowcher PROPOSAL
Wickens G VenereUnited KingdomStephen Shaw NEW
Costa Q BowleyUnited KingdomOnyama Limba QUALIFIED
Cody K AmigonJapanBernardo Dominic QUALIFIED
Chavez B BriddickAustraliaAsiya Javayant PROPOSAL
Chavez J MaletIndiaAnna Fali PROPOSAL
Ivar T BologniaFranceElwin Sharvill UNQUALIFIED
Claire O BriddickItalyXuxue Feng PROPOSAL
Costa N MacleadJapanBernardo Dominic NEGOTIATION
Jefferson Y WieserItalyAsiya Javayant RENEWAL

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