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
Francesco L TollnerBrazilXuxue Feng NEW
Sinclair X FigeroaFranceAnna Fali QUALIFIED
Izzy K GarufiUnited KingdomAmy Elsner RENEWAL
Claire R CaudyJapanStephen Shaw UNQUALIFIED
Chavez P NickaArgentinaAsiya Javayant UNQUALIFIED
Jefferson H SergiItalyBernardo Dominic UNQUALIFIED
Kaitlin N ButtItalyIvan Magalhaes NEGOTIATION
Munro F AmigonUnited KingdomXuxue Feng QUALIFIED
Aruna P GlickBrazilAmy Elsner UNQUALIFIED
Faith C FerenczAustraliaAnna Fali NEGOTIATION
Emily T AmigonJapanIoni Bowcher QUALIFIED
Greenwood T MaletFranceStephen Shaw PROPOSAL
Jefferson J BowleySpainIvan Magalhaes RENEWAL
Aditya W GauchoBrazilStephen Shaw NEW
Maria R WhobreyFranceOnyama Limba QUALIFIED
Leon N GlickBrazilXuxue Feng QUALIFIED
Emily E RutaCanadaElwin Sharvill NEGOTIATION
Francesco X ChuiFranceBernardo Dominic UNQUALIFIED
Wickens F FlosiGermanyStephen Shaw NEGOTIATION
Mujtaba P NestleJapanBernardo Dominic PROPOSAL
Antonio U ButtItalyStephen Shaw PROPOSAL
Johnson M DilliardGermanyAnna Fali UNQUALIFIED
Cody V DarakjySpainAmy Elsner NEW
Tony O MaletUnited KingdomElwin Sharvill NEGOTIATION
Maisha D FigeroaUnited KingdomStephen Shaw NEGOTIATION
Kadeem Q DarakjyBrazilStephen Shaw RENEWAL
Salvatore U DilliardCanadaElwin Sharvill NEW
Ashley K BowleyGermanyElwin Sharvill NEW
Kaitlin Y NickaUnited KingdomOnyama Limba QUALIFIED
Aika W DarakjyJapanIoni Bowcher PROPOSAL
Costa V OldroydGermanyStephen Shaw UNQUALIFIED
Julie C AlbaresUnited KingdomOnyama Limba NEW
Clifford W NickaSpainAsiya Javayant RENEWAL
Sinclair I FollerItalyIoni Bowcher NEGOTIATION
Jefferson C RoysterGermanyIoni Bowcher NEW
Adams Z GauchoFranceAmy Elsner UNQUALIFIED
James G ShinkoSpainAnna Fali NEW
Aditya W SlusarskiIndiaAmy Elsner NEW
Francesco W RoysterArgentinaBernardo Dominic PROPOSAL
Misaki N DilliardCanadaElwin Sharvill RENEWAL
Misaki V GauchoItalyIvan Magalhaes RENEWAL
Leja J DoeIndiaElwin Sharvill QUALIFIED
Octavia B OldroydCanadaIvan Magalhaes PROPOSAL
Jefferson Z SlusarskiGermanyAmy Elsner RENEWAL
Tony N IturbideSpainAnna Fali PROPOSAL
Smith E MarrierArgentinaStephen Shaw NEGOTIATION
Jennifer A RimIndiaBernardo Dominic RENEWAL
Aditya C RutaJapanStephen Shaw QUALIFIED
Aruna Z StockhamSpainElwin Sharvill NEGOTIATION
Costa J FollerIndiaIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Aditya Q AmigonItalyXuxue Feng NEGOTIATION
Aika A StensethJapanAnna Fali RENEWAL
Greenwood I KolmetzGermanyIoni Bowcher UNQUALIFIED
Maisha G ShinkoIndiaAsiya Javayant UNQUALIFIED
Munro V OstroskySpainOnyama Limba NEW
Sinclair Y MaletItalyAsiya Javayant NEGOTIATION
Maria V BriddickFranceIoni Bowcher UNQUALIFIED
Wickens L VocelkaRussiaXuxue Feng UNQUALIFIED
James W DilliardRussiaBernardo Dominic UNQUALIFIED
Sinclair N VenereAustraliaAsiya Javayant UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo K WieserGermany2024-06-18King, Christopher A Esq UNQUALIFIED33Bernardo Dominic
1001Deepesh D AmigonItaly2024-05-26Morlong Associates PROPOSAL70Bernardo Dominic
1002Jefferson Z BowleyJapan2024-06-14Rangoni Of Florence NEGOTIATION97Elwin Sharvill
1003Jeanfrancois C SlusarskiFrance2024-05-30Feltz Printing Service PROPOSAL21Bernardo Dominic
1004Chavez G WhobreyFrance2024-05-30Chemel, James L Cpa RENEWAL37Elwin Sharvill
1005Kadeem E GarufiAustralia2024-05-27Chanay, Jeffrey A Esq RENEWAL98Stephen Shaw
1006Wickens G CampainIndia2024-06-17Morlong Associates NEGOTIATION53Asiya Javayant
1007Costa X BologniaGermany2024-06-11Rangoni Of Florence RENEWAL64Amy Elsner
1008Greenwood K CaldareraItaly2024-06-19Feltz Printing Service NEGOTIATION52Amy Elsner
1009Mayumi H VenereItaly2024-05-25Chanay, Jeffrey A Esq PROPOSAL16Ioni Bowcher
1010Salvatore R StensethJapan2024-06-14Morlong Associates QUALIFIED1Elwin Sharvill
1011James J AlbaresUnited Kingdom2024-06-02Feiner Bros NEGOTIATION71Stephen Shaw
1012Faith Z DilliardItaly2024-05-26Rousseaux, Michael Esq RENEWAL37Amy Elsner
1013Aika Q MaletArgentina2024-05-25King, Christopher A Esq QUALIFIED98Xuxue Feng
1014Kadeem Z BowleyBrazil2024-06-19Chapman, Ross E Esq NEGOTIATION22Asiya Javayant
1015Salvatore B SchemmerArgentina2024-05-27Printing Dimensions UNQUALIFIED95Elwin Sharvill
1016Darci C StockhamFrance2024-05-27Chemel, James L Cpa NEW8Bernardo Dominic
1017Mayumi K WaycottJapan2024-05-28Printing Dimensions NEGOTIATION40Ivan Magalhaes
1018James I PoquetteBrazil2024-06-17Truhlar And Truhlar Attys NEGOTIATION42Bernardo Dominic
1019Octavia R IturbideFrance2024-06-19Dorl, James J Esq RENEWAL88Onyama Limba
1020Jeanfrancois A DoeArgentina2024-06-10Morlong Associates RENEWAL57Ivan Magalhaes
1021Smith J RimUnited Kingdom2024-06-04Commercial Press QUALIFIED90Asiya Javayant
1022Nicolas L FerenczItaly2024-06-16Feiner Bros NEW93Ivan Magalhaes
1023Aditya X PerinArgentina2024-06-12Buckley Miller Wright UNQUALIFIED38Stephen Shaw
1024Darci M GarufiCanada2024-05-28Chapman, Ross E Esq RENEWAL56Amy Elsner
1025Antonio S StockhamArgentina2024-06-06Rangoni Of Florence RENEWAL1Ioni Bowcher
1026David B AlbaresSpain2024-06-19Dorl, James J Esq UNQUALIFIED93Xuxue Feng
1027Kadeem Y MorascaItaly2024-06-02Feiner Bros QUALIFIED30Ioni Bowcher
1028Leon U VocelkaFrance2024-05-30Rousseaux, Michael Esq QUALIFIED81Elwin Sharvill
1029Darci I KuskoItaly2024-06-17Buckley Miller Wright UNQUALIFIED58Amy Elsner
1030Munro U NickaBrazil2024-06-12Feiner Bros NEGOTIATION43Amy Elsner
1031Costa O RutaCanada2024-06-12Morlong Associates PROPOSAL60Onyama Limba
1032Arvin A PerinUnited Kingdom2024-06-18Truhlar And Truhlar Attys PROPOSAL56Elwin Sharvill
1033Julie Z CaldareraItaly2024-05-28King, Christopher A Esq NEW89Anna Fali
1034David P ChuiRussia2024-06-04Chapman, Ross E Esq PROPOSAL55Asiya Javayant
1035Kaitlin D BriddickRussia2024-06-21Chapman, Ross E Esq NEGOTIATION8Anna Fali
1036Smith T FerenczFrance2024-06-11Chemel, James L Cpa NEGOTIATION54Ioni Bowcher
1037Mayumi L RimItaly2024-06-18Benton, John B Jr NEGOTIATION31Ivan Magalhaes
1038Smith S SergiArgentina2024-05-27Commercial Press QUALIFIED33Asiya Javayant
1039Cody W CampainRussia2024-05-25Feiner Bros UNQUALIFIED45Onyama Limba
1040Munro G ChuiIndia2024-06-04Morlong Associates QUALIFIED0Elwin Sharvill
1041Nicolas S CampainArgentina2024-05-30Morlong Associates RENEWAL19Asiya Javayant
1042Rodrigues X FollerIndia2024-06-02King, Christopher A Esq NEW9Ivan Magalhaes
1043Cody T MarrierFrance2024-05-30Printing Dimensions NEGOTIATION4Ioni Bowcher
1044James J FollerSpain2024-05-28King, Christopher A Esq PROPOSAL8Elwin Sharvill
1045Emily M CaldareraItaly2024-06-04Chemel, James L Cpa RENEWAL45Asiya Javayant
1046Alejandro W MacleadUnited Kingdom2024-05-24Rousseaux, Michael Esq UNQUALIFIED3Stephen Shaw
1047Octavia W RutaUnited Kingdom2024-06-18Printing Dimensions NEW74Xuxue Feng
1048Arvin P GillianCanada2024-06-15Printing Dimensions NEGOTIATION10Amy Elsner
1049Sinclair F OldroydGermany2024-05-28King, Christopher A Esq UNQUALIFIED12Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Izzy N GauchoAustraliaElwin Sharvill PROPOSAL
James Z PaprockiJapanIvan Magalhaes UNQUALIFIED
Isabel F SergiUnited KingdomElwin Sharvill PROPOSAL
Mayumi B SergiAustraliaXuxue Feng NEGOTIATION
Faith V SchemmerAustraliaAmy Elsner UNQUALIFIED
Octavia C InouyeArgentinaXuxue Feng QUALIFIED
Kaitlin F CampainItalyStephen Shaw PROPOSAL
Arvin O MaletIndiaAnna Fali QUALIFIED
Arvin G FerenczAustraliaAnna Fali PROPOSAL
Misaki O PerinSpainIvan Magalhaes PROPOSAL
Murillo W NickaRussiaBernardo Dominic QUALIFIED
Juan C DoeSpainStephen Shaw PROPOSAL
Claire S GauchoJapanOnyama Limba QUALIFIED
Johnson R PaprockiJapanIvan Magalhaes NEW
Clifford F WhobreyUnited KingdomXuxue Feng QUALIFIED
Mujtaba P RulapaughGermanyAsiya Javayant RENEWAL
Maisha U WieserCanadaBernardo Dominic NEW
Ivar D SergiItalyStephen Shaw NEGOTIATION
Adams R MacleadJapanXuxue Feng UNQUALIFIED
Ivar G BriddickAustraliaElwin Sharvill NEW
Mayumi J VenereGermanyAnna Fali QUALIFIED
Ricardo H MaletBrazilStephen Shaw NEGOTIATION
Adams M RoysterItalyStephen Shaw NEGOTIATION
David W NickaGermanyIvan Magalhaes QUALIFIED
Deepesh D GauchoItalyIoni Bowcher NEGOTIATION
Deepesh E GlickUnited KingdomAsiya Javayant RENEWAL
Sinclair X CaudySpainStephen Shaw NEGOTIATION
Jeanfrancois A SlusarskiCanadaOnyama Limba PROPOSAL
Leja F RoysterJapanOnyama Limba NEGOTIATION
Julie R BologniaJapanAmy Elsner PROPOSAL
Isabel R RoysterItalyIvan Magalhaes UNQUALIFIED
Morrow X PoquetteIndiaAmy Elsner NEGOTIATION
Ricardo X InouyeSpainElwin Sharvill UNQUALIFIED
Munro Z NestleIndiaAsiya Javayant UNQUALIFIED
Izzy Z ChuiArgentinaStephen Shaw RENEWAL
David U NickaFranceIoni Bowcher PROPOSAL
Aika L ButtArgentinaXuxue Feng NEGOTIATION
Mujtaba O WaycottCanadaStephen Shaw QUALIFIED
Mujtaba L MaletRussiaBernardo Dominic NEW
Aika L AmigonFranceIoni Bowcher QUALIFIED
Greenwood S DoeIndiaElwin Sharvill NEGOTIATION
Antonio P VenereItalyIoni Bowcher NEW
Clifford A NickaBrazilIvan Magalhaes PROPOSAL
Jeanfrancois H InouyeBrazilBernardo Dominic NEW
Jeanfrancois C ShinkoGermanyAnna Fali QUALIFIED
Chavez B AmigonGermanyAmy Elsner UNQUALIFIED
Maisha A FigeroaItalyElwin Sharvill RENEWAL
Salvatore D AlbaresCanadaAsiya Javayant RENEWAL
Kaitlin L StockhamAustraliaOnyama Limba UNQUALIFIED
Rodrigues C VenereRussiaAnna Fali NEW
Frozen Columns
Name
Tony U Sergi
Sinclair D Butt
Maria P Flosi
Emily G Bolognia
Rodrigues V Nestle
Jeanfrancois D Royster
Costa T Vocelka
Morrow G Iturbide
Kadeem Y Chui
Misaki F Stenseth
Francesco C Iturbide
Aruna I Glick
Emily W Rulapaugh
Costa L Sergi
Jennifer A Morasca
Alejandro U Saylors
Jefferson P Caldarera
Julie D Garufi
Sinclair Q Morasca
Ashley E Briddick
Jefferson J Nicka
Tony Z Darakjy
Jeanfrancois N Ruta
Greenwood J Ruta
Alejandro S Flosi
Sinclair C Slusarski
Jefferson S Stockham
Francesco K Glick
Aruna N Kolmetz
Deepesh Z Kusko
Jeanfrancois W Poquette
Isabel C Gillian
Jones H Amigon
Aruna J Chui
Julie K Foller
Silvio X Waycott
Cody U Gillian
Costa R Waycott
Emily N Gaucho
Ivar V Venere
Tony J Morasca
David X Schemmer
Kadeem O Foller
Julie J Caudy
Stacey E Albares
Cody P Gaucho
Octavia Z Morasca
Alejandro S Ruta
Darci B Flosi
Greenwood Q Stenseth
IdCountryDate
1000Germany2024-06-19
1001Germany2024-06-10
1002United Kingdom2024-05-27
1003Brazil2024-06-08
1004Brazil2024-06-15
1005Brazil2024-06-08
1006Spain2024-06-16
1007Brazil2024-06-12
1008Australia2024-06-02
1009Japan2024-06-04
1010Argentina2024-05-30
1011India2024-05-27
1012France2024-05-31
1013Argentina2024-05-26
1014Italy2024-06-02
1015Russia2024-06-17
1016Australia2024-05-29
1017Japan2024-06-19
1018India2024-06-05
1019France2024-05-27
1020Russia2024-06-20
1021France2024-06-04
1022Russia2024-05-27
1023India2024-06-06
1024Argentina2024-05-27
1025Germany2024-06-18
1026Germany2024-06-01
1027Japan2024-06-11
1028Germany2024-06-13
1029Spain2024-06-07
1030United Kingdom2024-06-09
1031India2024-06-08
1032United Kingdom2024-06-04
1033Italy2024-06-10
1034France2024-06-19
1035Spain2024-06-15
1036United Kingdom2024-06-15
1037Russia2024-06-19
1038Spain2024-05-30
1039Italy2024-05-25
1040Russia2024-05-23
1041Russia2024-06-20
1042Australia2024-06-19
1043Canada2024-05-28
1044Germany2024-05-23
1045United Kingdom2024-06-06
1046United Kingdom2024-06-16
1047Australia2024-06-06
1048Australia2024-06-02
1049France2024-06-15

On-Demand Data

NameIdCountryDate
Morrow V Rulapaugh1000Argentina2024-05-25
Mayumi Z Ferencz1001Italy2024-05-28
Aika C Venere1002Brazil2024-06-20
Tony G Kolmetz1003Canada2024-05-25
Leon R Paprocki1004India2024-05-29
Morrow U Shinko1005Canada2024-06-21
Sinclair A Campain1006Australia2024-06-10
Murillo H Garufi1007Russia2024-06-16
Ashley A Shinko1008United Kingdom2024-06-06
Murillo A Glick1009Italy2024-06-05
Cody H Bolognia1010Spain2024-06-12
Alejandro N Chui1011Japan2024-06-02
Claire U Royster1012Australia2024-05-31
Jefferson I Darakjy1013India2024-06-15
Johnson P Paprocki1014Russia2024-06-07
Octavia R Kolmetz1015Italy2024-06-08
Sinclair B Rulapaugh1016India2024-06-16
Leja W Chui1017France2024-06-21
Antonio L Royster1018Russia2024-06-07
Emily J Bowley1019Canada2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika S SergiCanadaBernardo Dominic QUALIFIED
Aika D BowleyFranceIvan Magalhaes UNQUALIFIED
Aditya W FollerItalyAmy Elsner NEW
Sinclair O InouyeAustraliaOnyama Limba NEGOTIATION
Claire V PerinIndiaOnyama Limba UNQUALIFIED
Greenwood M PerinAustraliaAsiya Javayant RENEWAL
Rodrigues A SchemmerAustraliaXuxue Feng NEW
Emily W GlickBrazilStephen Shaw NEW
Morrow G CaudySpainIvan Magalhaes NEGOTIATION
Kaitlin D GauchoCanadaAnna Fali RENEWAL
Silvio P WhobreyFranceAnna Fali UNQUALIFIED
Octavia N GillianFranceIvan Magalhaes PROPOSAL
Tony Y IturbideIndiaBernardo Dominic RENEWAL
Maria T GlickUnited KingdomBernardo Dominic NEW
Arvin Y PaprockiUnited KingdomXuxue Feng NEGOTIATION
Jones W AmigonRussiaIoni Bowcher NEGOTIATION
Silvio C SaylorsCanadaAsiya Javayant QUALIFIED
Jefferson Q BowleyFranceIoni Bowcher RENEWAL
David H InouyeAustraliaBernardo Dominic QUALIFIED
Chavez Q MaletUnited KingdomBernardo Dominic PROPOSAL
Wickens S StensethArgentinaAnna Fali RENEWAL
Jeanfrancois U MacleadBrazilOnyama Limba NEGOTIATION
Nicolas T GauchoIndiaOnyama Limba RENEWAL
Isabel X WaycottItalyBernardo Dominic NEW
Darci S MacleadSpainOnyama Limba UNQUALIFIED
Tony M GlickFranceIoni Bowcher NEGOTIATION
Silvio I WaycottArgentinaAmy Elsner NEGOTIATION
Jeanfrancois S GlickArgentinaAnna Fali RENEWAL
Ashley C RulapaughJapanStephen Shaw NEW
Juan X GillianFranceAmy Elsner QUALIFIED
Silvio S SergiIndiaStephen Shaw NEW
Morrow K MacleadCanadaAsiya Javayant RENEWAL
Emily N VocelkaSpainStephen Shaw NEGOTIATION
Kaitlin E AmigonFranceIoni Bowcher NEW
Sinclair P RoysterGermanyIvan Magalhaes QUALIFIED
Sinclair G OldroydGermanyStephen Shaw RENEWAL
Tony Z DarakjyFranceAsiya Javayant NEW
Kaitlin T VocelkaJapanAnna Fali PROPOSAL
Clifford A InouyeAustraliaBernardo Dominic RENEWAL
Wickens C GillianGermanyIoni Bowcher QUALIFIED

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