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
Mayumi K FigeroaArgentinaXuxue Feng PROPOSAL
Isabel O ShinkoFranceBernardo Dominic NEW
Sinclair I AmigonAustraliaOnyama Limba RENEWAL
James L IturbideFranceElwin Sharvill RENEWAL
Jennifer D ButtSpainElwin Sharvill UNQUALIFIED
Maisha Z StensethUnited KingdomAsiya Javayant NEW
Murillo U StensethBrazilOnyama Limba UNQUALIFIED
Maria W BowleyBrazilAnna Fali RENEWAL
Deepesh R PerinFranceAmy Elsner UNQUALIFIED
Mujtaba R GarufiRussiaIoni Bowcher UNQUALIFIED
Izzy N BologniaUnited KingdomIvan Magalhaes RENEWAL
Salvatore S VenereGermanyElwin Sharvill NEGOTIATION
Kaitlin D StensethCanadaXuxue Feng PROPOSAL
Aika N VenereJapanIoni Bowcher RENEWAL
Tony K MaletJapanIoni Bowcher NEGOTIATION
David V VenereAustraliaOnyama Limba NEGOTIATION
Julie W BowleyRussiaAnna Fali RENEWAL
Francesco V SlusarskiRussiaStephen Shaw NEW
Aika T WhobreyArgentinaXuxue Feng RENEWAL
Jeanfrancois M GauchoBrazilAnna Fali NEGOTIATION
Isabel Y FigeroaCanadaOnyama Limba UNQUALIFIED
Greenwood W MaletCanadaBernardo Dominic NEW
Greenwood S PaprockiCanadaIoni Bowcher NEGOTIATION
Claire Y RoysterUnited KingdomOnyama Limba PROPOSAL
Isabel I DoeAustraliaXuxue Feng RENEWAL
Tony R NestleGermanyIvan Magalhaes NEGOTIATION
Julie P SchemmerIndiaAmy Elsner UNQUALIFIED
Chavez X BowleyJapanIvan Magalhaes PROPOSAL
Antonio D WaycottCanadaBernardo Dominic QUALIFIED
Darci L KolmetzArgentinaOnyama Limba PROPOSAL
Leon F WaycottArgentinaXuxue Feng RENEWAL
Antonio I BologniaArgentinaStephen Shaw NEW
Alejandro V NestleRussiaAnna Fali RENEWAL
Leon N StockhamSpainElwin Sharvill PROPOSAL
Ivar Y MacleadSpainIoni Bowcher QUALIFIED
Kaitlin L WieserAustraliaIoni Bowcher NEW
Darci J FigeroaRussiaOnyama Limba QUALIFIED
Kaitlin S FollerAustraliaIvan Magalhaes NEW
Nicolas P RimRussiaAnna Fali NEW
Faith D CaldareraArgentinaAnna Fali NEGOTIATION
Chavez Q FigeroaSpainAnna Fali QUALIFIED
Greenwood D MaletJapanXuxue Feng QUALIFIED
Octavia M SergiCanadaBernardo Dominic NEW
Clifford L WaycottAustraliaXuxue Feng NEW
Juan L OldroydGermanyOnyama Limba PROPOSAL
Alejandro O VenereBrazilIoni Bowcher QUALIFIED
Clifford U BowleySpainBernardo Dominic PROPOSAL
Darci M RoysterAustraliaAnna Fali PROPOSAL
Kaitlin H SaylorsArgentinaAnna Fali RENEWAL
Mujtaba T MaletJapanIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Leja U BowleyItalyXuxue Feng RENEWAL
Chavez D MacleadFranceOnyama Limba PROPOSAL
Morrow S MorascaUnited KingdomIoni Bowcher PROPOSAL
Stacey G ChuiUnited KingdomStephen Shaw PROPOSAL
Tony S PaprockiArgentinaElwin Sharvill UNQUALIFIED
Alejandro E GillianBrazilIvan Magalhaes RENEWAL
Arvin Q GauchoJapanBernardo Dominic NEGOTIATION
Mayumi G RutaArgentinaAmy Elsner PROPOSAL
Ashley S PaprockiJapanIvan Magalhaes QUALIFIED
Aditya Q GlickAustraliaStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh C ButtArgentina2024-05-25Chemel, James L Cpa NEW68Stephen Shaw
1001Juan V WhobreyRussia2024-06-08Benton, John B Jr UNQUALIFIED39Onyama Limba
1002Stacey Z FerenczItaly2024-05-28Benton, John B Jr PROPOSAL71Onyama Limba
1003Mayumi G ChuiAustralia2024-05-27Feltz Printing Service RENEWAL26Onyama Limba
1004Jennifer F RoysterGermany2024-06-04Truhlar And Truhlar Attys NEGOTIATION3Asiya Javayant
1005Greenwood A VocelkaCanada2024-05-30Printing Dimensions UNQUALIFIED91Xuxue Feng
1006Adams R MacleadItaly2024-06-17Rousseaux, Michael Esq NEW34Elwin Sharvill
1007Silvio O DoeAustralia2024-06-05Printing Dimensions QUALIFIED53Elwin Sharvill
1008Adams Q PaprockiUnited Kingdom2024-06-18Truhlar And Truhlar Attys NEW5Ioni Bowcher
1009Jeanfrancois A KolmetzIndia2024-06-16Printing Dimensions QUALIFIED51Xuxue Feng
1010Juan K GillianRussia2024-06-17Chemel, James L Cpa UNQUALIFIED35Stephen Shaw
1011Tony D MarrierCanada2024-06-19Dorl, James J Esq RENEWAL58Stephen Shaw
1012Sinclair C SergiArgentina2024-06-10Benton, John B Jr RENEWAL50Onyama Limba
1013Rodrigues W PaprockiCanada2024-06-18Rangoni Of Florence QUALIFIED94Stephen Shaw
1014Mujtaba X CampainArgentina2024-06-20Rangoni Of Florence NEW95Elwin Sharvill
1015Greenwood K SergiRussia2024-05-25Printing Dimensions NEW90Onyama Limba
1016Kaitlin X MacleadArgentina2024-06-05Printing Dimensions NEW14Onyama Limba
1017Ricardo Y MaletIndia2024-05-26Feltz Printing Service NEGOTIATION25Xuxue Feng
1018Silvio X MacleadAustralia2024-06-08Feiner Bros NEW11Ioni Bowcher
1019Kaitlin B IturbideJapan2024-06-20Morlong Associates UNQUALIFIED44Stephen Shaw
1020Julie X OstroskyAustralia2024-05-24Commercial Press NEW91Stephen Shaw
1021Chavez Z WaycottRussia2024-06-22King, Christopher A Esq UNQUALIFIED57Elwin Sharvill
1022Silvio P SaylorsJapan2024-05-31Benton, John B Jr NEW82Xuxue Feng
1023Faith Q AmigonBrazil2024-06-15Buckley Miller Wright PROPOSAL66Anna Fali
1024Mujtaba B NestleJapan2024-06-21Chanay, Jeffrey A Esq UNQUALIFIED99Elwin Sharvill
1025Aruna B AmigonFrance2024-05-27Feltz Printing Service RENEWAL73Anna Fali
1026Claire U GillianAustralia2024-06-04Feltz Printing Service NEGOTIATION17Onyama Limba
1027Maisha E MacleadIndia2024-06-13Truhlar And Truhlar Attys NEW80Anna Fali
1028Munro B CaudyUnited Kingdom2024-06-20Feiner Bros NEW1Stephen Shaw
1029Silvio C OldroydUnited Kingdom2024-06-04Feiner Bros RENEWAL84Elwin Sharvill
1030Emily F MaletCanada2024-06-03Chanay, Jeffrey A Esq QUALIFIED76Xuxue Feng
1031Kaitlin P CaudyItaly2024-06-19Feltz Printing Service PROPOSAL32Xuxue Feng
1032Smith G GauchoCanada2024-05-24Chapman, Ross E Esq NEW55Ivan Magalhaes
1033Faith T FerenczCanada2024-06-12Dorl, James J Esq RENEWAL99Asiya Javayant
1034Ashley S NestleUnited Kingdom2024-06-05Dorl, James J Esq NEGOTIATION61Bernardo Dominic
1035Alejandro J KolmetzSpain2024-06-12Commercial Press PROPOSAL44Bernardo Dominic
1036Nicolas Q RimFrance2024-06-11Morlong Associates QUALIFIED98Onyama Limba
1037Morrow T MorascaGermany2024-06-13Chemel, James L Cpa NEW78Anna Fali
1038Ricardo N DoeIndia2024-06-20Dorl, James J Esq QUALIFIED57Anna Fali
1039Aruna K BriddickGermany2024-06-21Feltz Printing Service QUALIFIED56Anna Fali
1040Juan J RulapaughSpain2024-06-07Benton, John B Jr UNQUALIFIED90Ioni Bowcher
1041Juan U StockhamUnited Kingdom2024-06-21Rousseaux, Michael Esq QUALIFIED40Elwin Sharvill
1042Antonio C TollnerCanada2024-05-28Morlong Associates UNQUALIFIED23Ioni Bowcher
1043Jennifer S RulapaughCanada2024-06-16King, Christopher A Esq NEW8Xuxue Feng
1044Salvatore K RoysterIndia2024-06-07Feiner Bros NEW14Ivan Magalhaes
1045Stacey R OstroskyBrazil2024-05-25Rousseaux, Michael Esq UNQUALIFIED15Ivan Magalhaes
1046Wickens Q CampainRussia2024-06-03Buckley Miller Wright PROPOSAL29Stephen Shaw
1047Jeanfrancois V GarufiCanada2024-06-07Feltz Printing Service PROPOSAL61Onyama Limba
1048Aruna C RimCanada2024-06-08Chemel, James L Cpa UNQUALIFIED53Stephen Shaw
1049Claire M CampainJapan2024-06-18Morlong Associates UNQUALIFIED72Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Francesco M KolmetzCanadaXuxue Feng RENEWAL
Maisha D StensethFranceElwin Sharvill QUALIFIED
Kadeem X OstroskyRussiaAnna Fali RENEWAL
Jennifer R DarakjyJapanIvan Magalhaes NEGOTIATION
Emily O SaylorsRussiaStephen Shaw RENEWAL
Leja O RulapaughIndiaAnna Fali NEW
Costa X MaletBrazilBernardo Dominic UNQUALIFIED
Munro Z MaletJapanAsiya Javayant UNQUALIFIED
Izzy P SergiJapanBernardo Dominic NEGOTIATION
James R WaycottBrazilElwin Sharvill NEW
Jennifer C CampainGermanyElwin Sharvill QUALIFIED
Jones E InouyeFranceStephen Shaw QUALIFIED
Faith U VocelkaGermanyAsiya Javayant NEW
Clifford I MacleadBrazilIvan Magalhaes PROPOSAL
Smith V RoysterAustraliaIoni Bowcher NEW
Maisha A ChuiSpainOnyama Limba NEGOTIATION
Greenwood Q BriddickArgentinaIvan Magalhaes UNQUALIFIED
Salvatore X ShinkoIndiaBernardo Dominic RENEWAL
Alejandro J SaylorsFranceIvan Magalhaes PROPOSAL
Cody R CampainItalyOnyama Limba NEGOTIATION
Jeanfrancois Q MaletUnited KingdomIoni Bowcher QUALIFIED
Kaitlin O WaycottUnited KingdomIvan Magalhaes QUALIFIED
Mayumi S GarufiBrazilIvan Magalhaes PROPOSAL
James E StockhamArgentinaOnyama Limba PROPOSAL
Octavia F MaletSpainXuxue Feng NEGOTIATION
Jeanfrancois V InouyeBrazilBernardo Dominic PROPOSAL
Johnson J RulapaughArgentinaIoni Bowcher PROPOSAL
Stacey H ShinkoFranceOnyama Limba PROPOSAL
Nicolas K KuskoCanadaElwin Sharvill UNQUALIFIED
Clifford Y GauchoUnited KingdomIvan Magalhaes NEGOTIATION
James Z WieserFranceOnyama Limba RENEWAL
Cody D TollnerIndiaElwin Sharvill NEW
Nicolas E ButtArgentinaIoni Bowcher NEW
Johnson C GauchoJapanAsiya Javayant RENEWAL
Juan Z BologniaGermanyStephen Shaw UNQUALIFIED
Leja Q PaprockiRussiaIvan Magalhaes QUALIFIED
Ivar M StensethGermanyOnyama Limba PROPOSAL
Ashley A GauchoRussiaXuxue Feng NEW
Aika N MaletUnited KingdomStephen Shaw PROPOSAL
Chavez F GauchoCanadaIoni Bowcher NEW
Murillo A WhobreyJapanAnna Fali QUALIFIED
Rodrigues C WhobreyFranceAsiya Javayant NEGOTIATION
Murillo C FlosiFranceAnna Fali NEGOTIATION
Leja P GarufiUnited KingdomIoni Bowcher UNQUALIFIED
Deepesh N DoeSpainXuxue Feng UNQUALIFIED
Antonio R ButtUnited KingdomIoni Bowcher NEW
Nicolas Y NestleAustraliaAsiya Javayant NEGOTIATION
Silvio E InouyeItalyElwin Sharvill RENEWAL
Smith C SergiAustraliaAmy Elsner QUALIFIED
Aruna H FlosiGermanyElwin Sharvill PROPOSAL
Frozen Columns
Name
Maisha Y Royster
Silvio E Tollner
Jennifer B Perin
Adams I Briddick
Ivar T Darakjy
Jeanfrancois K Caudy
Kadeem R Butt
Chavez G Dilliard
Jeanfrancois U Maclead
Jeanfrancois X Saylors
Antonio V Oldroyd
David P Whobrey
Cody I Ruta
Arvin A Perin
Juan E Nicka
Mayumi U Poquette
Aruna J Malet
Tony W Gillian
Kaitlin N Kusko
Nicolas J Briddick
Arvin Z Darakjy
Darci H Nicka
Salvatore U Paprocki
Kaitlin N Dilliard
Nicolas J Whobrey
Rodrigues A Iturbide
David Q Venere
Leon I Figeroa
Aditya U Ostrosky
Nicolas V Royster
Misaki F Oldroyd
Leon B Marrier
Jeanfrancois X Sergi
Aditya D Caudy
Aruna L Stockham
Chavez J Stenseth
Aruna A Kusko
Jeanfrancois W Malet
Wickens Z Malet
Salvatore Q Kolmetz
Deepesh P Darakjy
Izzy B Kusko
Kadeem S Rim
Leja B Shinko
Leon Y Morasca
Kaitlin T Briddick
Octavia Q Shinko
Johnson U Nicka
Arvin B Briddick
Tony W Waycott
IdCountryDate
1000Italy2024-06-08
1001Russia2024-06-20
1002Brazil2024-06-17
1003Japan2024-06-01
1004France2024-06-04
1005Germany2024-06-02
1006Brazil2024-06-03
1007Italy2024-05-28
1008Italy2024-06-08
1009Australia2024-05-30
1010Japan2024-06-13
1011Brazil2024-05-30
1012Japan2024-05-25
1013Australia2024-06-11
1014Canada2024-06-10
1015India2024-06-08
1016Russia2024-05-31
1017Australia2024-06-11
1018Brazil2024-05-27
1019Argentina2024-06-21
1020India2024-06-18
1021Japan2024-05-29
1022Italy2024-06-09
1023Japan2024-06-06
1024Brazil2024-06-05
1025Japan2024-06-22
1026Russia2024-06-04
1027India2024-06-06
1028Russia2024-06-20
1029Brazil2024-05-27
1030Germany2024-06-13
1031India2024-06-18
1032India2024-06-16
1033Italy2024-06-21
1034Russia2024-05-29
1035United Kingdom2024-05-29
1036Japan2024-06-12
1037Canada2024-06-01
1038United Kingdom2024-06-10
1039Canada2024-06-03
1040Italy2024-06-21
1041India2024-05-26
1042United Kingdom2024-06-09
1043Spain2024-06-17
1044Canada2024-06-05
1045Germany2024-06-03
1046Argentina2024-06-05
1047Germany2024-06-04
1048India2024-06-04
1049Canada2024-05-30

On-Demand Data

NameIdCountryDate
Ivar D Nicka1000United Kingdom2024-06-06
Sinclair R Ruta1001Germany2024-06-19
Stacey T Caldarera1002Canada2024-06-12
Deepesh C Tollner1003Russia2024-05-25
Tony N Oldroyd1004Australia2024-06-07
Aditya F Bolognia1005Canada2024-06-04
Ricardo P Albares1006United Kingdom2024-06-21
Greenwood O Figeroa1007India2024-06-05
Emily O Foller1008Brazil2024-05-31
Octavia V Maclead1009Spain2024-06-03
Darci N Dilliard1010Russia2024-06-21
Johnson A Flosi1011Russia2024-06-04
Misaki Z Albares1012France2024-06-03
Munro K Marrier1013Italy2024-06-11
Jennifer G Nestle1014United Kingdom2024-06-07
Julie A Rulapaugh1015Brazil2024-06-08
Tony H Nicka1016Spain2024-05-27
Emily D Rim1017Brazil2024-06-18
Smith J Wieser1018Argentina2024-06-07
David V Malet1019Russia2024-06-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo U AmigonUnited KingdomAnna Fali QUALIFIED
Stacey Q TollnerBrazilXuxue Feng NEGOTIATION
Costa X DoeCanadaElwin Sharvill NEW
Munro E WieserSpainIvan Magalhaes NEGOTIATION
Tony X SergiFranceAsiya Javayant NEGOTIATION
Francesco C AlbaresCanadaStephen Shaw RENEWAL
James Q KolmetzUnited KingdomAnna Fali RENEWAL
Nicolas H CaudyUnited KingdomBernardo Dominic PROPOSAL
Alejandro G WieserItalyXuxue Feng NEGOTIATION
Silvio Y KolmetzGermanyIvan Magalhaes NEW
Maria A AlbaresCanadaIoni Bowcher UNQUALIFIED
Aruna M CampainArgentinaAnna Fali PROPOSAL
Smith E WieserBrazilElwin Sharvill NEW
Ivar L StockhamRussiaElwin Sharvill QUALIFIED
James O GarufiSpainStephen Shaw RENEWAL
Adams W CaldareraSpainIvan Magalhaes QUALIFIED
Munro A PoquetteArgentinaStephen Shaw QUALIFIED
Clifford J InouyeAustraliaElwin Sharvill RENEWAL
Sinclair N GlickBrazilIvan Magalhaes PROPOSAL
Ashley M PaprockiJapanIoni Bowcher PROPOSAL
Alejandro X CampainFranceOnyama Limba NEW
Johnson H StensethSpainAsiya Javayant UNQUALIFIED
Jones E DarakjyArgentinaIvan Magalhaes NEW
Francesco W SchemmerSpainOnyama Limba UNQUALIFIED
Jones L CaldareraFranceOnyama Limba PROPOSAL
Juan R IturbideIndiaAsiya Javayant QUALIFIED
Smith C OstroskyRussiaBernardo Dominic NEW
Rodrigues X WaycottFranceXuxue Feng NEGOTIATION
Misaki Q BriddickCanadaAsiya Javayant UNQUALIFIED
Salvatore P AmigonJapanIoni Bowcher NEW
Leja O MorascaGermanyIoni Bowcher RENEWAL
Darci M MorascaArgentinaOnyama Limba NEW
Ivar N PaprockiRussiaAsiya Javayant QUALIFIED
Stacey L SchemmerArgentinaAmy Elsner NEW
Ricardo G PaprockiFranceAnna Fali NEW
Leon X AlbaresBrazilBernardo Dominic NEGOTIATION
Ricardo H BologniaRussiaAsiya Javayant NEW
Nicolas R PoquetteJapanOnyama Limba NEW
Arvin U KolmetzUnited KingdomIvan Magalhaes QUALIFIED
Francesco S NickaIndiaIoni Bowcher 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>