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
Aruna F PaprockiBrazilAsiya Javayant UNQUALIFIED
Octavia I VocelkaCanadaIvan Magalhaes PROPOSAL
Kaitlin X WieserAustraliaAsiya Javayant QUALIFIED
Isabel X NickaSpainIvan Magalhaes UNQUALIFIED
Ricardo W PaprockiJapanAmy Elsner RENEWAL
Ricardo E OldroydJapanElwin Sharvill NEGOTIATION
Alejandro C SlusarskiArgentinaOnyama Limba NEGOTIATION
Adams J GauchoUnited KingdomElwin Sharvill RENEWAL
Mujtaba G SlusarskiRussiaXuxue Feng RENEWAL
Arvin P WaycottAustraliaIoni Bowcher NEGOTIATION
Antonio Y SchemmerAustraliaElwin Sharvill UNQUALIFIED
Sinclair O VocelkaArgentinaIoni Bowcher NEGOTIATION
Isabel U MorascaGermanyIoni Bowcher RENEWAL
Juan Q DoeIndiaIoni Bowcher PROPOSAL
Jones Q BriddickRussiaOnyama Limba PROPOSAL
Francesco F GauchoSpainAmy Elsner RENEWAL
Mujtaba D InouyeIndiaOnyama Limba NEGOTIATION
Chavez B StensethRussiaBernardo Dominic RENEWAL
James Y MarrierFranceIoni Bowcher UNQUALIFIED
Jefferson T AmigonArgentinaElwin Sharvill UNQUALIFIED
Munro K MaletArgentinaOnyama Limba NEW
Claire Q AmigonIndiaElwin Sharvill NEGOTIATION
Darci P DarakjyCanadaOnyama Limba NEW
Alejandro P RoysterGermanyXuxue Feng QUALIFIED
Darci J CampainBrazilIoni Bowcher NEGOTIATION
Leon W RoysterRussiaOnyama Limba RENEWAL
Johnson V BowleyCanadaXuxue Feng RENEWAL
Maria N AmigonArgentinaStephen Shaw QUALIFIED
Julie C KolmetzAustraliaIoni Bowcher NEW
Tony D GauchoSpainIoni Bowcher QUALIFIED
Mayumi L BowleyBrazilAnna Fali PROPOSAL
Izzy H CaudyJapanAmy Elsner NEGOTIATION
Julie H MarrierGermanyIvan Magalhaes NEGOTIATION
Murillo H RoysterItalyIoni Bowcher NEGOTIATION
Jefferson C ChuiItalyAnna Fali NEW
James B RimItalyIvan Magalhaes NEGOTIATION
Isabel R AmigonSpainOnyama Limba PROPOSAL
Jeanfrancois S StensethCanadaElwin Sharvill PROPOSAL
Isabel L OstroskyCanadaOnyama Limba RENEWAL
Francesco T SchemmerSpainBernardo Dominic QUALIFIED
Antonio O SergiCanadaXuxue Feng NEGOTIATION
Alejandro V PoquetteBrazilIvan Magalhaes PROPOSAL
Francesco O VocelkaRussiaElwin Sharvill NEGOTIATION
Murillo G BriddickArgentinaAmy Elsner QUALIFIED
Jeanfrancois W TollnerCanadaStephen Shaw PROPOSAL
Costa J GarufiIndiaStephen Shaw NEGOTIATION
Cody A GillianItalyOnyama Limba NEW
Aruna H StensethCanadaIoni Bowcher NEGOTIATION
Mayumi W GillianRussiaIvan Magalhaes NEW
Ricardo F PerinItalyIvan Magalhaes UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Greenwood G CampainUnited KingdomIvan Magalhaes NEGOTIATION
Leon G MaletGermanyAnna Fali PROPOSAL
Smith E AmigonArgentinaAnna Fali NEGOTIATION
Misaki A DarakjyUnited KingdomIoni Bowcher QUALIFIED
Jeanfrancois Y KuskoRussiaBernardo Dominic UNQUALIFIED
Nicolas A DilliardArgentinaAnna Fali QUALIFIED
Silvio F AmigonFranceIoni Bowcher PROPOSAL
Leja D SlusarskiJapanIoni Bowcher PROPOSAL
Jones D TollnerRussiaStephen Shaw QUALIFIED
Johnson C WieserFranceStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith L CaldareraArgentina2024-05-07Chemel, James L Cpa UNQUALIFIED37Amy Elsner
1001Emily U InouyeFrance2024-05-18Feltz Printing Service NEGOTIATION64Onyama Limba
1002Izzy H RutaFrance2024-05-06Rousseaux, Michael Esq PROPOSAL52Asiya Javayant
1003Maisha D InouyeFrance2024-05-21Feltz Printing Service NEW32Ioni Bowcher
1004Cody D MaletRussia2024-05-23Truhlar And Truhlar Attys UNQUALIFIED61Xuxue Feng
1005Adams X CaudyRussia2024-05-02Feltz Printing Service QUALIFIED91Amy Elsner
1006Mayumi V GillianUnited Kingdom2024-05-12Chemel, James L Cpa UNQUALIFIED0Asiya Javayant
1007Adams S AlbaresJapan2024-05-17Chemel, James L Cpa NEW98Onyama Limba
1008James Y ChuiFrance2024-05-23Printing Dimensions QUALIFIED85Ivan Magalhaes
1009Stacey O StockhamIndia2024-04-30Feiner Bros NEW67Onyama Limba
1010Cody X NickaRussia2024-05-13Feltz Printing Service PROPOSAL97Stephen Shaw
1011Tony Y MaletSpain2024-04-29Rousseaux, Michael Esq QUALIFIED0Stephen Shaw
1012Isabel Z GillianArgentina2024-05-08Commercial Press NEW56Amy Elsner
1013Julie J FigeroaUnited Kingdom2024-05-01King, Christopher A Esq UNQUALIFIED81Xuxue Feng
1014James Q DarakjyJapan2024-05-06Dorl, James J Esq NEGOTIATION31Xuxue Feng
1015Jones P OldroydCanada2024-05-25Rousseaux, Michael Esq NEW13Elwin Sharvill
1016Jeanfrancois F PaprockiArgentina2024-05-04Rangoni Of Florence NEW21Onyama Limba
1017Clifford Z MaletCanada2024-05-04Rangoni Of Florence UNQUALIFIED70Asiya Javayant
1018Jennifer G RimBrazil2024-05-22Benton, John B Jr UNQUALIFIED57Elwin Sharvill
1019Darci I ChuiItaly2024-05-05Truhlar And Truhlar Attys PROPOSAL43Bernardo Dominic
1020Maisha P FerenczIndia2024-05-12Commercial Press RENEWAL51Stephen Shaw
1021Jeanfrancois F GlickUnited Kingdom2024-04-29Buckley Miller Wright QUALIFIED70Elwin Sharvill
1022Arvin G RulapaughGermany2024-05-08Rangoni Of Florence UNQUALIFIED76Onyama Limba
1023Deepesh X RulapaughSpain2024-05-22Dorl, James J Esq QUALIFIED91Amy Elsner
1024Darci Q KuskoUnited Kingdom2024-05-14Rangoni Of Florence UNQUALIFIED0Asiya Javayant
1025Jones Z CaudyCanada2024-05-24Dorl, James J Esq QUALIFIED37Asiya Javayant
1026Salvatore W InouyeUnited Kingdom2024-04-27Commercial Press UNQUALIFIED94Bernardo Dominic
1027Cody L BriddickAustralia2024-05-02King, Christopher A Esq QUALIFIED70Stephen Shaw
1028Juan G DoeFrance2024-05-21King, Christopher A Esq NEGOTIATION0Bernardo Dominic
1029Maria E OldroydItaly2024-05-04Truhlar And Truhlar Attys RENEWAL67Elwin Sharvill
1030Silvio S OldroydFrance2024-05-13Feiner Bros NEGOTIATION32Elwin Sharvill
1031Salvatore J StensethArgentina2024-05-24King, Christopher A Esq RENEWAL19Ioni Bowcher
1032Johnson V AlbaresItaly2024-05-19King, Christopher A Esq UNQUALIFIED76Ivan Magalhaes
1033Munro B GlickIndia2024-05-14Chanay, Jeffrey A Esq RENEWAL42Stephen Shaw
1034Francesco V RulapaughAustralia2024-04-27Chemel, James L Cpa QUALIFIED51Anna Fali
1035Jeanfrancois W GarufiCanada2024-05-23King, Christopher A Esq PROPOSAL0Bernardo Dominic
1036Kadeem S NestleGermany2024-05-12Benton, John B Jr UNQUALIFIED47Stephen Shaw
1037Claire Q StensethFrance2024-05-16Chapman, Ross E Esq RENEWAL30Amy Elsner
1038Silvio O NickaAustralia2024-05-01Chanay, Jeffrey A Esq QUALIFIED6Xuxue Feng
1039Juan E KuskoUnited Kingdom2024-05-20King, Christopher A Esq NEGOTIATION84Ioni Bowcher
1040Arvin B CaldareraAustralia2024-05-24Chemel, James L Cpa UNQUALIFIED22Amy Elsner
1041Chavez G AmigonIndia2024-05-24Feltz Printing Service RENEWAL71Anna Fali
1042Stacey K DoeRussia2024-05-20Truhlar And Truhlar Attys NEGOTIATION60Amy Elsner
1043Julie V InouyeAustralia2024-05-23Rousseaux, Michael Esq NEGOTIATION5Elwin Sharvill
1044Juan E MarrierItaly2024-05-03Commercial Press NEW35Stephen Shaw
1045Deepesh X RimItaly2024-04-29Benton, John B Jr QUALIFIED19Ioni Bowcher
1046Maisha V InouyeRussia2024-05-19Chemel, James L Cpa RENEWAL88Bernardo Dominic
1047Smith K FigeroaCanada2024-05-07Morlong Associates QUALIFIED6Asiya Javayant
1048Leja L GauchoRussia2024-05-26Printing Dimensions NEW60Ivan Magalhaes
1049Mayumi U CaldareraFrance2024-05-10Feiner Bros PROPOSAL91Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Morrow I GillianAustraliaAmy Elsner NEGOTIATION
Jeanfrancois K RutaIndiaXuxue Feng PROPOSAL
Stacey Q NickaIndiaIoni Bowcher RENEWAL
Darci Z BowleyRussiaStephen Shaw UNQUALIFIED
Stacey C WhobreyArgentinaBernardo Dominic NEW
Rodrigues O SlusarskiSpainXuxue Feng NEW
Emily G BowleyIndiaBernardo Dominic QUALIFIED
Smith M FerenczItalyIvan Magalhaes NEW
Johnson G StensethUnited KingdomIvan Magalhaes QUALIFIED
Smith I KuskoJapanStephen Shaw RENEWAL
Morrow C MacleadUnited KingdomAnna Fali QUALIFIED
Darci V OldroydItalyStephen Shaw QUALIFIED
Johnson R RutaRussiaIoni Bowcher PROPOSAL
Kaitlin J StensethGermanyIoni Bowcher PROPOSAL
Julie H InouyeGermanyAsiya Javayant PROPOSAL
Smith X SchemmerSpainAmy Elsner NEGOTIATION
Mujtaba P NickaJapanOnyama Limba NEGOTIATION
Mujtaba A DarakjyItalyElwin Sharvill NEGOTIATION
Kaitlin P RimBrazilBernardo Dominic NEGOTIATION
Aika L StockhamAustraliaIoni Bowcher QUALIFIED
Greenwood A SlusarskiIndiaElwin Sharvill NEGOTIATION
Octavia L MarrierRussiaAnna Fali NEW
Adams N MarrierItalyAnna Fali NEW
Darci H AlbaresSpainIvan Magalhaes NEW
Ivar Z InouyeRussiaAnna Fali NEGOTIATION
Mujtaba A NestleIndiaBernardo Dominic RENEWAL
Jones O VenereRussiaBernardo Dominic NEW
Claire H AlbaresGermanyOnyama Limba NEW
Jones A WhobreyBrazilAmy Elsner RENEWAL
Darci E InouyeArgentinaAnna Fali PROPOSAL
Ashley O RimJapanIvan Magalhaes UNQUALIFIED
Mayumi Q CampainItalyIvan Magalhaes NEW
Ivar V SchemmerRussiaXuxue Feng QUALIFIED
Stacey D FerenczAustraliaIvan Magalhaes RENEWAL
Morrow G RimItalyAnna Fali PROPOSAL
Octavia W OldroydIndiaXuxue Feng NEW
Deepesh F TollnerCanadaIvan Magalhaes PROPOSAL
Smith V WieserArgentinaXuxue Feng QUALIFIED
Aika P NestleIndiaIoni Bowcher QUALIFIED
Jones B FerenczJapanStephen Shaw QUALIFIED
Izzy B ChuiBrazilAmy Elsner NEGOTIATION
Nicolas V CaudyGermanyAnna Fali QUALIFIED
Leja J DarakjyItalyBernardo Dominic NEGOTIATION
Ricardo K RimBrazilAnna Fali NEGOTIATION
Adams V PerinBrazilElwin Sharvill NEW
Adams D GlickFranceBernardo Dominic PROPOSAL
David L ShinkoJapanOnyama Limba PROPOSAL
Ashley X MacleadItalyElwin Sharvill PROPOSAL
Emily A PerinGermanyAnna Fali UNQUALIFIED
Clifford G MaletCanadaIoni Bowcher NEW
Frozen Columns
Name
Costa G Bowley
Nicolas T Tollner
Deepesh N Wieser
Greenwood L Chui
Munro J Malet
Adams A Morasca
Murillo K Butt
Kadeem F Foller
Greenwood T Rim
Faith T Vocelka
Jeanfrancois Z Nestle
Sinclair G Vocelka
Octavia L Butt
Jeanfrancois S Oldroyd
Costa I Kolmetz
Alejandro D Rim
Jones Z Rulapaugh
Salvatore A Dilliard
Ashley H Gillian
Silvio U Perin
Izzy S Marrier
Julie A Amigon
Francesco F Royster
Rodrigues Q Amigon
David M Ruta
Ivar H Caldarera
Johnson V Rim
Arvin T Stenseth
Clifford F Ruta
Misaki V Caudy
Kadeem A Venere
Cody L Schemmer
Silvio J Campain
Ashley G Whobrey
Maisha P Schemmer
Ivar T Morasca
David X Perin
Francesco G Shinko
Juan N Chui
Jennifer R Schemmer
Silvio R Maclead
Clifford J Caldarera
Darci K Amigon
Arvin B Whobrey
Octavia T Schemmer
Francesco I Morasca
Kadeem A Figeroa
Kaitlin T Saylors
Nicolas T Vocelka
Misaki Z Poquette
IdCountryDate
1000Italy2024-05-21
1001United Kingdom2024-05-03
1002United Kingdom2024-05-21
1003India2024-05-05
1004Spain2024-05-03
1005Canada2024-05-20
1006India2024-04-28
1007United Kingdom2024-05-07
1008Russia2024-05-11
1009Spain2024-05-24
1010Japan2024-04-30
1011Canada2024-05-04
1012India2024-05-04
1013Spain2024-05-20
1014Germany2024-05-20
1015Japan2024-05-24
1016Germany2024-05-20
1017United Kingdom2024-05-02
1018Australia2024-05-18
1019Brazil2024-05-01
1020Argentina2024-05-26
1021Japan2024-05-23
1022United Kingdom2024-05-22
1023Japan2024-05-17
1024Argentina2024-05-06
1025Germany2024-05-02
1026Russia2024-04-28
1027Japan2024-05-08
1028France2024-05-08
1029Brazil2024-05-21
1030Germany2024-05-05
1031Argentina2024-05-01
1032Japan2024-05-21
1033Australia2024-05-05
1034Spain2024-04-28
1035Canada2024-05-07
1036India2024-05-07
1037Australia2024-05-07
1038Australia2024-05-12
1039United Kingdom2024-05-20
1040Australia2024-05-09
1041Japan2024-05-11
1042Italy2024-05-07
1043France2024-05-17
1044Germany2024-05-18
1045Brazil2024-05-01
1046United Kingdom2024-05-23
1047Canada2024-04-28
1048Australia2024-04-29
1049Brazil2024-05-24

On-Demand Data

NameIdCountryDate
Maisha J Whobrey1000Italy2024-04-29
Munro I Sergi1001Brazil2024-05-11
Jones U Bolognia1002Russia2024-05-24
Jeanfrancois M Poquette1003Brazil2024-05-15
Jefferson G Gillian1004Japan2024-05-22
Emily L Amigon1005Argentina2024-05-19
Juan Y Oldroyd1006Canada2024-05-25
Isabel M Butt1007Japan2024-05-19
Greenwood H Gaucho1008Canada2024-05-23
Ricardo H Stenseth1009India2024-05-21
Ashley U Ostrosky1010France2024-05-19
Ivar U Kolmetz1011Germany2024-05-16
Wickens Z Foller1012Brazil2024-05-03
Rodrigues O Whobrey1013Canada2024-05-21
Chavez Z Gillian1014France2024-05-03
Chavez E Morasca1015Argentina2024-05-16
Kaitlin D Morasca1016Brazil2024-05-01
Costa S Malet1017Canada2024-04-28
Salvatore C Paprocki1018United Kingdom2024-05-01
Nicolas T Glick1019Argentina2024-05-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo V TollnerAustraliaStephen Shaw NEGOTIATION
Kaitlin Y RimFranceAmy Elsner NEW
Leja T BowleyUnited KingdomOnyama Limba NEW
Adams J SlusarskiBrazilElwin Sharvill NEGOTIATION
Izzy H GarufiJapanElwin Sharvill UNQUALIFIED
Jennifer U NestleUnited KingdomOnyama Limba RENEWAL
Maisha E GlickBrazilBernardo Dominic RENEWAL
Wickens P MaletIndiaAnna Fali PROPOSAL
Aditya C GillianBrazilAsiya Javayant PROPOSAL
Chavez T ChuiArgentinaIoni Bowcher NEW
Greenwood W GarufiFranceAmy Elsner UNQUALIFIED
Rodrigues P FerenczIndiaStephen Shaw NEGOTIATION
Sinclair A GauchoJapanAmy Elsner UNQUALIFIED
Octavia Y DoeArgentinaAmy Elsner QUALIFIED
Stacey J GauchoFranceBernardo Dominic NEW
Stacey L FollerUnited KingdomIoni Bowcher RENEWAL
Claire Z BologniaBrazilBernardo Dominic PROPOSAL
Costa K NestleRussiaAsiya Javayant RENEWAL
Isabel I OldroydGermanyBernardo Dominic NEGOTIATION
Francesco U OstroskyRussiaAsiya Javayant NEW
Aruna L OstroskyItalyIoni Bowcher PROPOSAL
Maria M OldroydGermanyXuxue Feng QUALIFIED
Antonio W DoeRussiaXuxue Feng PROPOSAL
Munro G OstroskyFranceBernardo Dominic QUALIFIED
Costa P KolmetzIndiaBernardo Dominic NEGOTIATION
Leon J BologniaCanadaIoni Bowcher RENEWAL
Clifford W SchemmerGermanyIvan Magalhaes QUALIFIED
Sinclair M GillianItalyIoni Bowcher UNQUALIFIED
Kaitlin F BowleyArgentinaOnyama Limba NEW
Misaki N RoysterGermanyIvan Magalhaes NEW
Emily K DoeArgentinaAnna Fali NEW
Isabel W SergiSpainIoni Bowcher QUALIFIED
Ivar E GlickSpainIoni Bowcher NEW
Ivar O VenereFranceIvan Magalhaes PROPOSAL
Kadeem U IturbideJapanAmy Elsner PROPOSAL
Kadeem O RoysterUnited KingdomElwin Sharvill NEGOTIATION
Sinclair X VenereIndiaStephen Shaw RENEWAL
Mayumi D PoquetteSpainAnna Fali PROPOSAL
Wickens M RutaIndiaIoni Bowcher NEW
Maria K PerinCanadaAmy Elsner 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>