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
Deepesh C StensethIndiaIoni Bowcher UNQUALIFIED
Jeanfrancois C DarakjyJapanBernardo Dominic NEW
Francesco V VocelkaCanadaIvan Magalhaes NEGOTIATION
Jefferson Z RoysterCanadaIoni Bowcher NEGOTIATION
Rodrigues P GlickIndiaAmy Elsner PROPOSAL
Kadeem J OstroskyFranceStephen Shaw NEGOTIATION
Tony Y VenereArgentinaElwin Sharvill RENEWAL
Costa C CampainCanadaElwin Sharvill NEGOTIATION
Emily Y RimArgentinaStephen Shaw NEW
Misaki O CaudyItalyStephen Shaw UNQUALIFIED
Francesco G BologniaUnited KingdomIvan Magalhaes NEW
Sinclair K RutaArgentinaOnyama Limba QUALIFIED
Julie A InouyeGermanyIvan Magalhaes RENEWAL
Darci M DilliardUnited KingdomXuxue Feng UNQUALIFIED
Greenwood D DilliardSpainIoni Bowcher UNQUALIFIED
Greenwood N RulapaughIndiaElwin Sharvill QUALIFIED
Silvio W GillianAustraliaStephen Shaw RENEWAL
Alejandro J BowleyUnited KingdomAsiya Javayant QUALIFIED
Isabel L NickaSpainAsiya Javayant RENEWAL
Mayumi Q MarrierJapanOnyama Limba PROPOSAL
Greenwood C GlickRussiaAmy Elsner NEGOTIATION
Cody T MorascaArgentinaStephen Shaw UNQUALIFIED
Stacey L BologniaGermanyOnyama Limba UNQUALIFIED
Emily A RimBrazilOnyama Limba UNQUALIFIED
Costa J AlbaresUnited KingdomBernardo Dominic UNQUALIFIED
Kaitlin P WhobreyGermanyAsiya Javayant PROPOSAL
Kaitlin H SchemmerRussiaAnna Fali PROPOSAL
Maria R InouyeAustraliaAnna Fali RENEWAL
Adams H GillianJapanBernardo Dominic NEW
Adams K NickaSpainIvan Magalhaes RENEWAL
Arvin D SchemmerSpainIvan Magalhaes NEW
Greenwood F BowleyRussiaAsiya Javayant PROPOSAL
Morrow U RutaIndiaIvan Magalhaes UNQUALIFIED
Chavez R TollnerAustraliaStephen Shaw QUALIFIED
Tony F RimRussiaXuxue Feng UNQUALIFIED
Ricardo U SchemmerRussiaAnna Fali NEW
Adams H PoquetteBrazilBernardo Dominic PROPOSAL
Munro V WhobreyUnited KingdomAmy Elsner NEGOTIATION
Jefferson X SergiItalyElwin Sharvill RENEWAL
Jones W GlickBrazilBernardo Dominic UNQUALIFIED
Aditya E CaudyUnited KingdomXuxue Feng NEW
Isabel I RulapaughCanadaBernardo Dominic UNQUALIFIED
Jennifer H WhobreyAustraliaElwin Sharvill PROPOSAL
Kadeem I CaudySpainXuxue Feng QUALIFIED
Ricardo M RutaFranceOnyama Limba UNQUALIFIED
Aditya B RulapaughSpainOnyama Limba PROPOSAL
Ivar A DoeSpainAnna Fali NEW
Costa T DoeBrazilBernardo Dominic QUALIFIED
Faith D MaletGermanyAnna Fali UNQUALIFIED
Faith Y FerenczBrazilElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ashley Q RimArgentinaStephen Shaw UNQUALIFIED
Misaki F RulapaughFranceOnyama Limba PROPOSAL
Wickens S VocelkaRussiaAnna Fali RENEWAL
Maisha S SaylorsIndiaBernardo Dominic UNQUALIFIED
Isabel Y FerenczJapanStephen Shaw QUALIFIED
Ashley V NickaUnited KingdomAsiya Javayant UNQUALIFIED
Maisha J AlbaresRussiaOnyama Limba UNQUALIFIED
Claire F WhobreyCanadaXuxue Feng PROPOSAL
Tony K RimGermanyElwin Sharvill QUALIFIED
Claire X GarufiGermanyAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens A PerinItaly2024-06-09Feltz Printing Service NEW63Ioni Bowcher
1001Faith T FerenczRussia2024-06-20Benton, John B Jr UNQUALIFIED68Bernardo Dominic
1002Salvatore E ButtSpain2024-06-01Rangoni Of Florence PROPOSAL21Bernardo Dominic
1003Francesco I MorascaJapan2024-05-31Feltz Printing Service NEW4Xuxue Feng
1004Costa Y RutaIndia2024-06-06King, Christopher A Esq QUALIFIED88Anna Fali
1005Aruna C BriddickIndia2024-05-31Rousseaux, Michael Esq UNQUALIFIED95Onyama Limba
1006Jones T NestleAustralia2024-05-31Morlong Associates QUALIFIED85Ioni Bowcher
1007Francesco L MarrierGermany2024-05-29Chapman, Ross E Esq QUALIFIED1Amy Elsner
1008Ricardo R DarakjyArgentina2024-05-30Commercial Press NEW34Asiya Javayant
1009Julie Y NestleFrance2024-06-24Chemel, James L Cpa NEGOTIATION92Elwin Sharvill
1010Maisha H StensethItaly2024-06-10Commercial Press UNQUALIFIED58Asiya Javayant
1011Kadeem M OldroydJapan2024-05-28Dorl, James J Esq QUALIFIED65Asiya Javayant
1012Nicolas K VocelkaBrazil2024-05-29Dorl, James J Esq UNQUALIFIED5Asiya Javayant
1013Faith N DoeItaly2024-05-31Rousseaux, Michael Esq UNQUALIFIED36Elwin Sharvill
1014Jones M BriddickCanada2024-06-10Feltz Printing Service NEGOTIATION78Elwin Sharvill
1015Isabel W StockhamBrazil2024-06-13Benton, John B Jr QUALIFIED53Ioni Bowcher
1016Claire U SchemmerJapan2024-06-01Buckley Miller Wright RENEWAL65Bernardo Dominic
1017Morrow X VocelkaGermany2024-06-16Commercial Press NEW75Stephen Shaw
1018Costa V WaycottBrazil2024-06-07Printing Dimensions UNQUALIFIED14Ioni Bowcher
1019Wickens H VocelkaCanada2024-06-05Rousseaux, Michael Esq NEW5Asiya Javayant
1020Jeanfrancois Z NestleUnited Kingdom2024-06-08Rangoni Of Florence NEGOTIATION95Elwin Sharvill
1021Aditya Z StockhamArgentina2024-06-06Feiner Bros NEGOTIATION10Xuxue Feng
1022Sinclair A MaletIndia2024-05-29Commercial Press QUALIFIED25Anna Fali
1023Aditya Y TollnerGermany2024-05-28Dorl, James J Esq RENEWAL1Ioni Bowcher
1024Maisha V SchemmerIndia2024-05-26Buckley Miller Wright QUALIFIED93Amy Elsner
1025Smith N BologniaIndia2024-06-11Feltz Printing Service RENEWAL52Asiya Javayant
1026Antonio Y AlbaresGermany2024-06-17Chanay, Jeffrey A Esq QUALIFIED4Ivan Magalhaes
1027Kaitlin E ShinkoBrazil2024-06-20Truhlar And Truhlar Attys RENEWAL55Ivan Magalhaes
1028Smith V MaletUnited Kingdom2024-06-03Printing Dimensions PROPOSAL58Bernardo Dominic
1029Aruna E MaletJapan2024-05-27Buckley Miller Wright PROPOSAL6Ioni Bowcher
1030Smith C TollnerIndia2024-06-19Truhlar And Truhlar Attys NEGOTIATION50Anna Fali
1031Arvin V StensethRussia2024-06-02Commercial Press RENEWAL56Ivan Magalhaes
1032Jeanfrancois Z InouyeCanada2024-06-20Commercial Press NEGOTIATION45Xuxue Feng
1033Adams M GillianSpain2024-05-29Chemel, James L Cpa NEGOTIATION19Onyama Limba
1034Greenwood I NickaCanada2024-06-07Dorl, James J Esq RENEWAL56Amy Elsner
1035Jones W SlusarskiCanada2024-06-17Chemel, James L Cpa RENEWAL68Bernardo Dominic
1036Leja T ChuiCanada2024-06-06Feiner Bros NEGOTIATION70Ivan Magalhaes
1037Johnson J ShinkoUnited Kingdom2024-06-06Feltz Printing Service RENEWAL97Asiya Javayant
1038Johnson A KuskoJapan2024-06-05Morlong Associates UNQUALIFIED48Amy Elsner
1039Misaki U ShinkoRussia2024-06-01Feltz Printing Service PROPOSAL68Amy Elsner
1040Munro N WieserCanada2024-06-09Benton, John B Jr QUALIFIED64Ivan Magalhaes
1041Antonio R KuskoIndia2024-06-03Commercial Press QUALIFIED89Ioni Bowcher
1042Murillo J MaletGermany2024-06-24Commercial Press RENEWAL54Onyama Limba
1043Chavez U MaletUnited Kingdom2024-06-05Chanay, Jeffrey A Esq UNQUALIFIED88Amy Elsner
1044Julie G CampainArgentina2024-06-02Morlong Associates UNQUALIFIED43Bernardo Dominic
1045Nicolas H CaudyRussia2024-06-03Benton, John B Jr PROPOSAL24Anna Fali
1046Jefferson U SergiAustralia2024-06-01Dorl, James J Esq QUALIFIED20Ivan Magalhaes
1047Silvio L RutaArgentina2024-06-06Morlong Associates UNQUALIFIED15Elwin Sharvill
1048Kadeem C PerinArgentina2024-06-07Feiner Bros PROPOSAL8Ivan Magalhaes
1049Adams E TollnerBrazil2024-05-30Morlong Associates NEW99Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
James V ShinkoCanadaXuxue Feng RENEWAL
Deepesh G GarufiAustraliaOnyama Limba QUALIFIED
Aruna D ButtIndiaIvan Magalhaes NEGOTIATION
Leja V WaycottArgentinaBernardo Dominic NEW
Ricardo N RulapaughJapanElwin Sharvill PROPOSAL
Aruna C AmigonAustraliaXuxue Feng PROPOSAL
Leja X CampainUnited KingdomAmy Elsner NEW
Izzy F ShinkoBrazilXuxue Feng NEW
Aruna E RoysterAustraliaBernardo Dominic RENEWAL
Adams Z TollnerRussiaStephen Shaw NEW
Aika H AlbaresCanadaXuxue Feng QUALIFIED
Alejandro E RutaSpainAmy Elsner QUALIFIED
Octavia A WieserArgentinaAnna Fali QUALIFIED
Rodrigues T WhobreyAustraliaElwin Sharvill RENEWAL
Tony L FollerItalyIoni Bowcher NEW
Silvio G FigeroaUnited KingdomAsiya Javayant PROPOSAL
Salvatore B SchemmerGermanyBernardo Dominic QUALIFIED
Cody F WieserGermanyOnyama Limba NEW
Munro E IturbideGermanyBernardo Dominic RENEWAL
Leon U MorascaArgentinaElwin Sharvill PROPOSAL
Wickens Z OldroydItalyAnna Fali RENEWAL
Leon D AlbaresArgentinaIoni Bowcher QUALIFIED
Francesco B GarufiRussiaElwin Sharvill RENEWAL
Rodrigues I GarufiAustraliaIvan Magalhaes NEGOTIATION
Greenwood Y CaldareraGermanyIoni Bowcher NEGOTIATION
Jennifer W InouyeArgentinaAsiya Javayant UNQUALIFIED
Costa E BologniaRussiaIvan Magalhaes PROPOSAL
Claire H PerinUnited KingdomIvan Magalhaes PROPOSAL
Tony Y CaldareraIndiaXuxue Feng RENEWAL
Stacey W KuskoSpainAnna Fali QUALIFIED
Claire G FerenczAustraliaElwin Sharvill UNQUALIFIED
Jennifer X OstroskyUnited KingdomAsiya Javayant RENEWAL
Stacey X MacleadUnited KingdomStephen Shaw UNQUALIFIED
Julie J StensethBrazilAsiya Javayant QUALIFIED
Aika G WieserArgentinaIvan Magalhaes RENEWAL
Kadeem X NestleJapanAsiya Javayant UNQUALIFIED
Ricardo Z FerenczArgentinaStephen Shaw UNQUALIFIED
Maria W GarufiBrazilAmy Elsner NEGOTIATION
James C KuskoAustraliaIvan Magalhaes UNQUALIFIED
Mayumi U PaprockiRussiaElwin Sharvill NEW
Jeanfrancois N WhobreyArgentinaElwin Sharvill QUALIFIED
Aruna H BologniaArgentinaStephen Shaw PROPOSAL
Chavez S RulapaughArgentinaXuxue Feng NEGOTIATION
Salvatore X MarrierUnited KingdomAmy Elsner QUALIFIED
Cody P MarrierGermanyAnna Fali NEW
Cody X SaylorsCanadaAmy Elsner NEW
Aika L RulapaughSpainXuxue Feng NEW
Tony V StockhamCanadaAnna Fali NEGOTIATION
Cody Z GarufiAustraliaOnyama Limba UNQUALIFIED
Adams F VocelkaBrazilAmy Elsner QUALIFIED
Frozen Columns
Name
Aruna W Chui
Rodrigues C Paprocki
Rodrigues Y Nestle
David D Foller
Wickens R Saylors
Antonio V Gaucho
Arvin I Kusko
Stacey A Garufi
Isabel W Sergi
Ricardo H Paprocki
Faith C Kusko
Antonio F Kolmetz
Isabel A Slusarski
Silvio J Bolognia
Alejandro X Caudy
Kadeem O Gaucho
Tony J Gillian
Antonio T Perin
Tony E Ostrosky
Julie F Doe
Izzy S Gaucho
Jones M Nicka
Chavez O Inouye
James F Ferencz
Francesco L Malet
Faith B Foller
Cody O Nestle
Claire A Albares
Nicolas U Foller
Alejandro Y Foller
Kadeem M Waycott
Morrow N Oldroyd
Claire N Campain
Kadeem E Vocelka
Munro H Foller
Juan I Kolmetz
Aruna T Ostrosky
Chavez I Saylors
Maisha I Doe
Cody B Stenseth
Maisha N Rim
Aruna Q Flosi
Jeanfrancois B Schemmer
Morrow U Tollner
Greenwood K Foller
Juan D Gaucho
Mujtaba E Chui
Leja L Waycott
Leja T Schemmer
Mujtaba W Stockham
IdCountryDate
1000Italy2024-06-05
1001Argentina2024-06-22
1002Russia2024-06-10
1003France2024-06-22
1004Argentina2024-06-14
1005United Kingdom2024-06-05
1006Japan2024-06-21
1007Brazil2024-06-22
1008Australia2024-06-05
1009United Kingdom2024-06-11
1010Germany2024-05-29
1011United Kingdom2024-05-31
1012Japan2024-05-27
1013Germany2024-06-05
1014Spain2024-06-10
1015Spain2024-06-08
1016France2024-06-15
1017Brazil2024-06-18
1018India2024-05-26
1019Spain2024-06-07
1020Canada2024-05-27
1021Japan2024-06-24
1022Italy2024-06-13
1023Spain2024-06-12
1024Japan2024-05-28
1025Russia2024-06-19
1026United Kingdom2024-06-03
1027India2024-06-14
1028Japan2024-06-13
1029Italy2024-06-19
1030Brazil2024-05-27
1031Spain2024-06-19
1032Germany2024-06-09
1033Canada2024-05-30
1034Argentina2024-05-31
1035Russia2024-06-16
1036France2024-06-22
1037Japan2024-05-26
1038Italy2024-06-06
1039Australia2024-06-01
1040Australia2024-06-10
1041Italy2024-06-16
1042Canada2024-06-20
1043Italy2024-06-22
1044Brazil2024-06-13
1045United Kingdom2024-06-15
1046Australia2024-06-08
1047Brazil2024-06-15
1048Germany2024-06-10
1049Canada2024-06-06

On-Demand Data

NameIdCountryDate
Julie F Briddick1000India2024-06-17
Darci B Vocelka1001Brazil2024-06-20
Costa A Waycott1002Spain2024-06-17
Rodrigues C Morasca1003Russia2024-06-10
Leon B Waycott1004Germany2024-06-19
Jefferson N Garufi1005Canada2024-06-03
Stacey D Iturbide1006Canada2024-06-19
Jefferson J Iturbide1007Canada2024-06-10
Alejandro X Venere1008Germany2024-06-24
Octavia N Nestle1009Italy2024-06-04
Aruna Q Iturbide1010Italy2024-06-12
Leja N Maclead1011Russia2024-06-18
Darci G Tollner1012Brazil2024-06-13
Adams D Iturbide1013Argentina2024-06-06
Smith Y Ostrosky1014Japan2024-06-01
Aditya S Saylors1015United Kingdom2024-06-24
Emily O Bowley1016Japan2024-06-22
Tony L Schemmer1017United Kingdom2024-06-18
Chavez D Figeroa1018Italy2024-06-08
Leon O Poquette1019Argentina2024-06-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Costa T FollerUnited KingdomElwin Sharvill NEW
Alejandro Q IturbideBrazilXuxue Feng NEGOTIATION
Chavez K FerenczRussiaAsiya Javayant PROPOSAL
Smith T MarrierAustraliaAsiya Javayant QUALIFIED
Antonio Z ChuiRussiaAmy Elsner QUALIFIED
Munro V MaletItalyElwin Sharvill NEGOTIATION
Smith K MarrierRussiaOnyama Limba UNQUALIFIED
Tony L FollerUnited KingdomStephen Shaw UNQUALIFIED
Jefferson C PoquetteCanadaAmy Elsner PROPOSAL
Johnson U SaylorsSpainIvan Magalhaes NEW
Antonio D WaycottUnited KingdomAsiya Javayant RENEWAL
Kadeem K WieserFranceOnyama Limba NEW
Chavez T ShinkoFranceIoni Bowcher RENEWAL
Aruna V FerenczBrazilAsiya Javayant UNQUALIFIED
Mujtaba T PerinBrazilIvan Magalhaes QUALIFIED
Izzy I SchemmerGermanyXuxue Feng NEW
Sinclair F AmigonIndiaAmy Elsner NEGOTIATION
Aika J StensethSpainAnna Fali QUALIFIED
Murillo E DarakjyRussiaIvan Magalhaes PROPOSAL
Aditya K InouyeJapanOnyama Limba QUALIFIED
Misaki C SergiGermanyIoni Bowcher RENEWAL
Munro Y WhobreySpainXuxue Feng RENEWAL
Cody A SergiSpainStephen Shaw RENEWAL
Munro F NickaSpainBernardo Dominic UNQUALIFIED
Sinclair T FlosiCanadaOnyama Limba UNQUALIFIED
Adams C GarufiGermanyBernardo Dominic QUALIFIED
Leon G BowleyIndiaAmy Elsner QUALIFIED
Aditya K SaylorsGermanyBernardo Dominic UNQUALIFIED
Ashley Y IturbideBrazilElwin Sharvill NEW
Maria Z RulapaughIndiaIvan Magalhaes UNQUALIFIED
Chavez S VenereSpainElwin Sharvill QUALIFIED
Murillo X DilliardBrazilStephen Shaw UNQUALIFIED
Antonio Y RimArgentinaAmy Elsner QUALIFIED
Antonio I AmigonAustraliaAmy Elsner PROPOSAL
James G FollerItalyIvan Magalhaes PROPOSAL
Isabel H CampainCanadaElwin Sharvill NEGOTIATION
Mayumi R CaudyJapanStephen Shaw RENEWAL
Costa U InouyeIndiaXuxue Feng NEW
Mayumi W RulapaughItalyStephen Shaw UNQUALIFIED
Cody S CaldareraRussiaIoni Bowcher 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>