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
Ivar R MaletRussiaXuxue Feng QUALIFIED
Darci T GillianSpainElwin Sharvill RENEWAL
Deepesh S NestleRussiaStephen Shaw QUALIFIED
David Z VenereAustraliaElwin Sharvill PROPOSAL
Jones Q MaletIndiaAmy Elsner NEGOTIATION
Maisha E RimItalyXuxue Feng QUALIFIED
Julie H CampainItalyAsiya Javayant QUALIFIED
Murillo B SergiArgentinaStephen Shaw PROPOSAL
Maisha F PerinFranceStephen Shaw RENEWAL
Maria N WaycottRussiaBernardo Dominic NEGOTIATION
Rodrigues V InouyeItalyOnyama Limba QUALIFIED
Ashley V WhobreyItalyBernardo Dominic NEGOTIATION
Wickens G ButtJapanAnna Fali RENEWAL
Izzy K MacleadGermanyElwin Sharvill RENEWAL
Kaitlin O OldroydCanadaBernardo Dominic PROPOSAL
Mayumi E WieserCanadaAsiya Javayant QUALIFIED
Mujtaba C ChuiSpainXuxue Feng RENEWAL
Ivar H SlusarskiSpainIoni Bowcher RENEWAL
Stacey P MorascaBrazilBernardo Dominic NEGOTIATION
Ivar D WaycottAustraliaElwin Sharvill NEGOTIATION
Wickens P CampainIndiaOnyama Limba PROPOSAL
Leja U StockhamBrazilXuxue Feng QUALIFIED
Arvin V ButtSpainAsiya Javayant UNQUALIFIED
Deepesh H PaprockiGermanyAnna Fali NEGOTIATION
Julie M GarufiRussiaBernardo Dominic NEW
David O PerinJapanAmy Elsner QUALIFIED
Arvin Q KolmetzUnited KingdomXuxue Feng QUALIFIED
Greenwood D SlusarskiFranceXuxue Feng RENEWAL
Chavez L ShinkoBrazilElwin Sharvill UNQUALIFIED
Munro K ShinkoCanadaOnyama Limba PROPOSAL
Izzy X VenereFranceXuxue Feng PROPOSAL
Kaitlin O MorascaUnited KingdomXuxue Feng UNQUALIFIED
Adams H PaprockiArgentinaAnna Fali NEW
Juan Z SlusarskiBrazilElwin Sharvill QUALIFIED
Maisha F RutaAustraliaOnyama Limba RENEWAL
Jennifer M PaprockiGermanyElwin Sharvill RENEWAL
Stacey V PaprockiRussiaIvan Magalhaes NEGOTIATION
Mujtaba P CaudyFranceAnna Fali QUALIFIED
Greenwood S WieserIndiaElwin Sharvill RENEWAL
Nicolas B SchemmerRussiaAmy Elsner RENEWAL
Leon R PerinItalyElwin Sharvill NEGOTIATION
Octavia P SlusarskiSpainElwin Sharvill RENEWAL
Smith S VenereAustraliaAnna Fali QUALIFIED
Misaki U FigeroaAustraliaAmy Elsner RENEWAL
Octavia O GillianFranceAnna Fali NEW
Maisha T KolmetzAustraliaElwin Sharvill RENEWAL
Jefferson N PoquetteUnited KingdomBernardo Dominic NEW
Adams S NestleItalyOnyama Limba NEGOTIATION
Aditya F FigeroaItalyAsiya Javayant QUALIFIED
Arvin Z CaudyItalyAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody Q MaletRussiaAsiya Javayant QUALIFIED
Octavia Y OldroydArgentinaAmy Elsner UNQUALIFIED
Sinclair H GillianJapanXuxue Feng UNQUALIFIED
Maisha S OstroskyIndiaAsiya Javayant NEW
Greenwood U TollnerIndiaBernardo Dominic RENEWAL
Izzy H KuskoSpainAsiya Javayant PROPOSAL
Leon T BowleyUnited KingdomBernardo Dominic NEGOTIATION
Munro L SaylorsSpainAmy Elsner PROPOSAL
Sinclair E StensethItalyElwin Sharvill RENEWAL
Tony S RimCanadaIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie W RoysterUnited Kingdom2024-04-27Truhlar And Truhlar Attys PROPOSAL61Asiya Javayant
1001Jefferson T FerenczItaly2024-05-23Feiner Bros PROPOSAL69Xuxue Feng
1002Isabel T PerinAustralia2024-05-16King, Christopher A Esq NEGOTIATION49Stephen Shaw
1003David Y FlosiCanada2024-05-25Buckley Miller Wright RENEWAL49Ivan Magalhaes
1004Jones X RoysterBrazil2024-05-21Commercial Press RENEWAL51Amy Elsner
1005Kaitlin P BowleyIndia2024-05-08Truhlar And Truhlar Attys QUALIFIED46Bernardo Dominic
1006Julie X WieserArgentina2024-04-27Feltz Printing Service PROPOSAL75Ivan Magalhaes
1007Antonio Z OldroydJapan2024-05-26Dorl, James J Esq QUALIFIED27Bernardo Dominic
1008Johnson G AmigonBrazil2024-05-21Chanay, Jeffrey A Esq PROPOSAL64Onyama Limba
1009Mayumi W SaylorsJapan2024-05-14Buckley Miller Wright PROPOSAL6Elwin Sharvill
1010Silvio G RutaJapan2024-04-27Truhlar And Truhlar Attys QUALIFIED6Elwin Sharvill
1011Ivar G ButtUnited Kingdom2024-05-19Chapman, Ross E Esq PROPOSAL59Ioni Bowcher
1012Rodrigues X WhobreyBrazil2024-05-01Commercial Press QUALIFIED69Ioni Bowcher
1013Kaitlin R PoquetteRussia2024-05-24Feiner Bros RENEWAL4Xuxue Feng
1014Julie A ShinkoCanada2024-04-30Morlong Associates QUALIFIED63Ioni Bowcher
1015Greenwood Q MorascaJapan2024-05-16Morlong Associates QUALIFIED77Onyama Limba
1016Nicolas R ButtItaly2024-05-20Dorl, James J Esq QUALIFIED42Amy Elsner
1017Sinclair J VocelkaFrance2024-05-15Chanay, Jeffrey A Esq QUALIFIED2Amy Elsner
1018Silvio Y FollerAustralia2024-05-10Feiner Bros NEW85Onyama Limba
1019Kaitlin U NickaFrance2024-05-07Benton, John B Jr QUALIFIED72Amy Elsner
1020Maria X DilliardBrazil2024-05-19Commercial Press NEW94Anna Fali
1021Aditya W KolmetzGermany2024-05-17Chapman, Ross E Esq PROPOSAL75Asiya Javayant
1022Octavia T ChuiJapan2024-04-28Feltz Printing Service NEGOTIATION77Ioni Bowcher
1023Deepesh J OstroskyJapan2024-04-27Truhlar And Truhlar Attys UNQUALIFIED23Amy Elsner
1024Maisha P GarufiBrazil2024-05-10Chanay, Jeffrey A Esq NEGOTIATION81Stephen Shaw
1025Murillo S WieserBrazil2024-05-05Printing Dimensions PROPOSAL23Anna Fali
1026Smith D WhobreyBrazil2024-05-18Rousseaux, Michael Esq NEW97Stephen Shaw
1027Deepesh X SergiSpain2024-05-12Dorl, James J Esq UNQUALIFIED44Ioni Bowcher
1028Aruna W TollnerIndia2024-05-15Dorl, James J Esq NEW11Anna Fali
1029Aruna Z FlosiBrazil2024-05-19Chapman, Ross E Esq RENEWAL59Onyama Limba
1030Aika Q AlbaresRussia2024-05-01Feltz Printing Service NEW22Ioni Bowcher
1031Costa Y OldroydFrance2024-05-07Commercial Press PROPOSAL22Ioni Bowcher
1032Leon K TollnerFrance2024-05-22Printing Dimensions RENEWAL49Anna Fali
1033James V WieserAustralia2024-04-30Commercial Press UNQUALIFIED89Ioni Bowcher
1034Izzy B MacleadIndia2024-04-30Rangoni Of Florence NEGOTIATION88Anna Fali
1035Emily A StensethGermany2024-04-27Benton, John B Jr PROPOSAL48Stephen Shaw
1036Misaki Z ChuiItaly2024-05-21Morlong Associates NEW33Xuxue Feng
1037Mayumi T WieserUnited Kingdom2024-04-29Chapman, Ross E Esq PROPOSAL8Ivan Magalhaes
1038Faith J StockhamBrazil2024-05-24Morlong Associates NEW35Bernardo Dominic
1039Johnson B RoysterArgentina2024-05-15Feiner Bros QUALIFIED40Stephen Shaw
1040Deepesh F ShinkoBrazil2024-04-29Rangoni Of Florence PROPOSAL74Ivan Magalhaes
1041Jennifer W DilliardGermany2024-05-04Feiner Bros QUALIFIED26Stephen Shaw
1042Sinclair H GillianIndia2024-05-04King, Christopher A Esq PROPOSAL24Bernardo Dominic
1043Francesco I PaprockiItaly2024-05-04Chemel, James L Cpa UNQUALIFIED44Onyama Limba
1044Tony B OldroydBrazil2024-05-01Morlong Associates PROPOSAL33Anna Fali
1045Claire N WhobreyCanada2024-05-24Dorl, James J Esq QUALIFIED21Elwin Sharvill
1046Munro I FollerRussia2024-05-04Rousseaux, Michael Esq NEGOTIATION49Stephen Shaw
1047Kadeem Q SchemmerItaly2024-05-02Rousseaux, Michael Esq RENEWAL0Asiya Javayant
1048Leja T GarufiJapan2024-05-07Benton, John B Jr UNQUALIFIED48Stephen Shaw
1049Mujtaba G FlosiFrance2024-05-23Feltz Printing Service PROPOSAL18Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Sinclair G MaletBrazilIoni Bowcher PROPOSAL
Chavez Z ChuiCanadaIvan Magalhaes RENEWAL
Maria X AmigonSpainAmy Elsner PROPOSAL
Clifford S BowleyBrazilStephen Shaw NEGOTIATION
Misaki B InouyeSpainElwin Sharvill NEGOTIATION
Deepesh Z MacleadBrazilIvan Magalhaes NEGOTIATION
Clifford Q AmigonFranceAmy Elsner NEW
Faith C WhobreyCanadaXuxue Feng RENEWAL
Jefferson I KuskoIndiaIvan Magalhaes NEGOTIATION
David B PoquetteSpainIoni Bowcher RENEWAL
Misaki M SaylorsArgentinaAsiya Javayant PROPOSAL
Faith A VenereRussiaIoni Bowcher RENEWAL
Mayumi X FlosiFranceBernardo Dominic NEW
Adams I SchemmerGermanyIvan Magalhaes QUALIFIED
Misaki Y RoysterFranceOnyama Limba QUALIFIED
Mayumi T ShinkoArgentinaElwin Sharvill UNQUALIFIED
Costa B InouyeIndiaStephen Shaw PROPOSAL
Clifford M GarufiCanadaOnyama Limba NEGOTIATION
Octavia D FollerIndiaIvan Magalhaes NEW
Ashley H FollerItalyIvan Magalhaes NEW
Costa U PerinArgentinaXuxue Feng QUALIFIED
Izzy W StensethBrazilAmy Elsner PROPOSAL
Julie N CaldareraIndiaIvan Magalhaes NEGOTIATION
Aika I GlickIndiaElwin Sharvill NEGOTIATION
Costa Q PerinFranceAmy Elsner QUALIFIED
Julie C DarakjyIndiaAsiya Javayant NEW
Sinclair U DilliardItalyStephen Shaw NEGOTIATION
Mujtaba I BowleyGermanyAmy Elsner UNQUALIFIED
Octavia P DilliardFranceElwin Sharvill QUALIFIED
Jefferson O WhobreyIndiaIoni Bowcher NEGOTIATION
Maria D InouyeItalyXuxue Feng NEW
Kaitlin E ButtIndiaXuxue Feng PROPOSAL
Nicolas F MaletAustraliaAmy Elsner QUALIFIED
Aditya I SergiBrazilXuxue Feng UNQUALIFIED
Maria I OldroydItalyStephen Shaw QUALIFIED
Julie L MaletGermanyBernardo Dominic QUALIFIED
Greenwood I WhobreyJapanAmy Elsner RENEWAL
Leja T PaprockiRussiaOnyama Limba UNQUALIFIED
Aditya O SchemmerSpainAsiya Javayant QUALIFIED
Ricardo L NickaFranceAnna Fali NEW
Aruna J KolmetzArgentinaAnna Fali QUALIFIED
Tony L WhobreySpainXuxue Feng RENEWAL
Morrow M SlusarskiGermanyStephen Shaw RENEWAL
Rodrigues B WaycottCanadaBernardo Dominic QUALIFIED
Murillo K VenereCanadaElwin Sharvill PROPOSAL
Costa I TollnerRussiaStephen Shaw NEW
Jennifer A ChuiBrazilAsiya Javayant PROPOSAL
Jefferson G CaudyUnited KingdomBernardo Dominic UNQUALIFIED
Munro I WhobreyCanadaAnna Fali NEGOTIATION
Wickens O BriddickUnited KingdomIoni Bowcher UNQUALIFIED
Frozen Columns
Name
David K Maclead
Leja B Maclead
Leja Z Rulapaugh
Emily T Waycott
Jefferson B Flosi
Nicolas G Inouye
Kaitlin D Bowley
Cody Y Vocelka
Darci R Gaucho
Clifford S Rulapaugh
Isabel O Malet
Aditya Z Schemmer
Chavez T Stenseth
Chavez X Caldarera
Jeanfrancois Y Inouye
Adams N Saylors
Greenwood P Poquette
Mayumi H Kolmetz
Deepesh P Ostrosky
Stacey A Slusarski
Antonio G Stenseth
Chavez C Paprocki
Antonio F Poquette
Maisha U Ostrosky
Stacey W Gaucho
Jeanfrancois M Briddick
Costa I Doe
Francesco K Caldarera
Greenwood Q Whobrey
Aika X Saylors
Jefferson U Flosi
Maria X Albares
Sinclair K Glick
Smith K Marrier
Mayumi J Ruta
Silvio J Royster
Salvatore R Paprocki
Ashley Q Vocelka
Rodrigues A Stenseth
Morrow L Schemmer
Izzy N Ostrosky
Munro K Malet
Aruna L Oldroyd
Leon Q Venere
Aika W Perin
Leon R Figeroa
Kaitlin I Glick
Jones Y Waycott
Alejandro O Rim
Aika R Ostrosky
IdCountryDate
1000United Kingdom2024-05-10
1001Italy2024-05-15
1002Spain2024-05-24
1003Brazil2024-05-25
1004India2024-05-05
1005Australia2024-05-09
1006Australia2024-05-20
1007Japan2024-05-03
1008Japan2024-05-17
1009India2024-05-20
1010Canada2024-05-01
1011Italy2024-04-28
1012Spain2024-05-23
1013Spain2024-05-26
1014Brazil2024-05-12
1015Spain2024-05-07
1016Russia2024-05-26
1017Italy2024-04-27
1018Japan2024-05-18
1019Italy2024-05-08
1020France2024-05-07
1021United Kingdom2024-05-14
1022Brazil2024-05-10
1023Germany2024-05-04
1024Brazil2024-05-26
1025Canada2024-05-23
1026Russia2024-05-04
1027Australia2024-05-14
1028Argentina2024-05-12
1029Japan2024-05-22
1030Canada2024-05-05
1031Germany2024-05-17
1032Italy2024-05-21
1033India2024-05-24
1034Brazil2024-05-02
1035India2024-05-18
1036Australia2024-04-27
1037Australia2024-04-28
1038Argentina2024-05-09
1039Australia2024-05-09
1040Brazil2024-05-06
1041Japan2024-05-08
1042Italy2024-05-12
1043France2024-05-11
1044Russia2024-05-01
1045India2024-04-29
1046Canada2024-05-10
1047India2024-05-12
1048India2024-04-30
1049Russia2024-05-01

On-Demand Data

NameIdCountryDate
Leja N Caudy1000Italy2024-05-16
Greenwood E Flosi1001Germany2024-05-22
Darci P Butt1002Italy2024-05-15
Adams Q Maclead1003Italy2024-05-02
Ricardo M Vocelka1004Russia2024-04-29
Morrow F Figeroa1005France2024-05-22
Murillo S Vocelka1006India2024-05-08
Jennifer F Amigon1007United Kingdom2024-05-20
Kadeem Z Wieser1008Japan2024-05-14
Greenwood R Nestle1009France2024-05-13
Morrow N Nestle1010Germany2024-05-15
Silvio G Maclead1011India2024-05-02
Greenwood F Flosi1012Canada2024-05-20
Aditya B Schemmer1013Argentina2024-05-02
Stacey T Dilliard1014Spain2024-05-15
Maria D Venere1015Italy2024-05-13
Aika Z Malet1016Italy2024-05-18
Arvin E Saylors1017Italy2024-05-17
Aika I Oldroyd1018Brazil2024-05-01
Faith X Chui1019Argentina2024-05-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon E CaldareraArgentinaAnna Fali NEGOTIATION
Izzy F CaldareraUnited KingdomBernardo Dominic QUALIFIED
Ricardo O MarrierSpainIoni Bowcher NEGOTIATION
Deepesh J NestleIndiaAmy Elsner UNQUALIFIED
Johnson G RoysterFranceBernardo Dominic RENEWAL
Leon A CaldareraIndiaXuxue Feng QUALIFIED
Misaki A GlickCanadaStephen Shaw NEGOTIATION
Isabel K ShinkoSpainIoni Bowcher PROPOSAL
Faith S IturbideSpainElwin Sharvill PROPOSAL
Kadeem Z NestleIndiaBernardo Dominic QUALIFIED
Octavia E RutaSpainAnna Fali QUALIFIED
Leja G FigeroaArgentinaXuxue Feng NEGOTIATION
Silvio I FollerBrazilElwin Sharvill NEGOTIATION
Izzy D BowleyGermanyElwin Sharvill UNQUALIFIED
Morrow X DoeCanadaAsiya Javayant NEW
Smith D IturbideCanadaStephen Shaw NEW
Nicolas P GlickRussiaIoni Bowcher QUALIFIED
Ashley M GillianCanadaBernardo Dominic PROPOSAL
Maisha E MaletIndiaXuxue Feng UNQUALIFIED
Greenwood A KolmetzJapanAmy Elsner UNQUALIFIED
Stacey A NestleIndiaAsiya Javayant NEW
Juan N CaldareraRussiaStephen Shaw QUALIFIED
Faith X FlosiItalyOnyama Limba UNQUALIFIED
Kadeem K IturbideBrazilIoni Bowcher RENEWAL
Jones F AlbaresGermanyXuxue Feng NEW
Antonio B NestleSpainBernardo Dominic PROPOSAL
Costa M SergiAustraliaElwin Sharvill NEGOTIATION
Nicolas V CaldareraRussiaElwin Sharvill QUALIFIED
Juan Z MacleadSpainOnyama Limba NEW
David X BriddickFranceStephen Shaw QUALIFIED
Chavez W IturbideAustraliaXuxue Feng PROPOSAL
Adams R AlbaresJapanIoni Bowcher NEW
Octavia N StensethBrazilXuxue Feng UNQUALIFIED
Maria M SchemmerJapanIoni Bowcher RENEWAL
Wickens F VocelkaItalyStephen Shaw NEGOTIATION
Smith Q InouyeArgentinaAsiya Javayant PROPOSAL
Johnson R NestleUnited KingdomIvan Magalhaes RENEWAL
Antonio P FlosiCanadaXuxue Feng NEGOTIATION
Maria U InouyeGermanyAmy Elsner PROPOSAL
Jeanfrancois L SaylorsJapanBernardo Dominic 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>