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 Z DoeUnited KingdomAnna Fali NEW
Wickens A FlosiArgentinaAmy Elsner QUALIFIED
Francesco N SlusarskiRussiaAnna Fali UNQUALIFIED
Francesco U InouyeArgentinaIoni Bowcher UNQUALIFIED
Aika X CampainBrazilIvan Magalhaes RENEWAL
Leja M WaycottArgentinaElwin Sharvill UNQUALIFIED
Clifford A KolmetzBrazilXuxue Feng RENEWAL
Maisha L WaycottJapanStephen Shaw NEW
Jeanfrancois W InouyeJapanIvan Magalhaes NEGOTIATION
Morrow U VocelkaSpainStephen Shaw NEGOTIATION
Isabel A FlosiGermanyAmy Elsner UNQUALIFIED
Stacey Q FerenczAustraliaAmy Elsner NEW
Julie L TollnerSpainAmy Elsner QUALIFIED
James G GauchoRussiaAsiya Javayant UNQUALIFIED
Silvio H FollerArgentinaAmy Elsner NEW
Morrow H NestleRussiaAmy Elsner UNQUALIFIED
Clifford C ButtItalyIvan Magalhaes PROPOSAL
Wickens U GlickUnited KingdomBernardo Dominic NEW
Silvio V BriddickCanadaXuxue Feng UNQUALIFIED
Francesco V RulapaughAustraliaStephen Shaw NEW
Clifford D RimRussiaOnyama Limba PROPOSAL
Smith V BowleyRussiaXuxue Feng NEW
Mayumi Z ChuiJapanStephen Shaw NEW
Arvin P GlickSpainOnyama Limba NEW
Maria H SlusarskiFranceAsiya Javayant NEGOTIATION
Mujtaba M StockhamSpainIoni Bowcher RENEWAL
Antonio X DarakjyIndiaIvan Magalhaes PROPOSAL
Jeanfrancois K NestleJapanIoni Bowcher PROPOSAL
Arvin X MarrierIndiaXuxue Feng NEW
Silvio X WieserIndiaBernardo Dominic NEW
Jeanfrancois H ShinkoGermanyBernardo Dominic RENEWAL
Sinclair S GarufiUnited KingdomOnyama Limba NEGOTIATION
Wickens Q BologniaBrazilIoni Bowcher PROPOSAL
Aruna L DoeBrazilAnna Fali RENEWAL
Ashley A TollnerUnited KingdomElwin Sharvill NEW
Octavia B GlickCanadaAnna Fali PROPOSAL
Misaki C DilliardGermanyBernardo Dominic PROPOSAL
Darci D PerinJapanIoni Bowcher QUALIFIED
Mujtaba R StockhamSpainIoni Bowcher RENEWAL
Darci N CaldareraArgentinaStephen Shaw QUALIFIED
Darci P AlbaresRussiaBernardo Dominic NEGOTIATION
Tony M FollerGermanyBernardo Dominic NEGOTIATION
Jones F WhobreyCanadaAnna Fali NEGOTIATION
Isabel A BologniaAustraliaElwin Sharvill NEGOTIATION
Kadeem J MaletRussiaBernardo Dominic QUALIFIED
Rodrigues L NestleRussiaIvan Magalhaes PROPOSAL
Wickens H GarufiGermanyAmy Elsner NEGOTIATION
Julie G PaprockiItalyAnna Fali NEGOTIATION
Kadeem O FigeroaCanadaXuxue Feng RENEWAL
Mayumi K CaudyItalyOnyama Limba RENEWAL
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois U StockhamIndiaXuxue Feng PROPOSAL
Mayumi A ShinkoCanadaIvan Magalhaes UNQUALIFIED
Faith K StensethRussiaXuxue Feng PROPOSAL
Juan P SchemmerSpainIoni Bowcher RENEWAL
Deepesh A PoquetteBrazilAsiya Javayant UNQUALIFIED
Ricardo F OstroskyJapanBernardo Dominic RENEWAL
Misaki P ChuiSpainAmy Elsner NEGOTIATION
Misaki P KolmetzFranceXuxue Feng PROPOSAL
Wickens Z SergiIndiaIvan Magalhaes NEGOTIATION
Octavia U FollerRussiaBernardo Dominic UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna H GillianUnited Kingdom2024-06-15Dorl, James J Esq NEW38Elwin Sharvill
1001Aditya X MaletBrazil2024-06-12Truhlar And Truhlar Attys NEW20Bernardo Dominic
1002Ashley V VocelkaJapan2024-05-19Printing Dimensions PROPOSAL1Ivan Magalhaes
1003Maisha C AlbaresGermany2024-06-04Printing Dimensions PROPOSAL98Elwin Sharvill
1004Silvio V DarakjyRussia2024-06-03Dorl, James J Esq NEGOTIATION99Ivan Magalhaes
1005Kaitlin J OstroskyUnited Kingdom2024-06-05Printing Dimensions RENEWAL99Elwin Sharvill
1006Alejandro Y SaylorsGermany2024-05-22Benton, John B Jr UNQUALIFIED36Amy Elsner
1007Deepesh Z InouyeSpain2024-06-07Chapman, Ross E Esq UNQUALIFIED88Xuxue Feng
1008Kadeem N ShinkoUnited Kingdom2024-06-15Buckley Miller Wright NEW11Ivan Magalhaes
1009Clifford L VenereBrazil2024-06-04Truhlar And Truhlar Attys NEGOTIATION79Xuxue Feng
1010Jones S MorascaGermany2024-05-26Rousseaux, Michael Esq NEW3Anna Fali
1011Wickens S SlusarskiSpain2024-05-21Chapman, Ross E Esq QUALIFIED18Ivan Magalhaes
1012Jeanfrancois F DoeCanada2024-06-13King, Christopher A Esq QUALIFIED77Onyama Limba
1013Costa N PerinFrance2024-06-14King, Christopher A Esq QUALIFIED0Ivan Magalhaes
1014Francesco R FollerUnited Kingdom2024-05-27King, Christopher A Esq UNQUALIFIED45Ioni Bowcher
1015Adams C ShinkoGermany2024-05-24Commercial Press RENEWAL37Anna Fali
1016Jeanfrancois G VocelkaUnited Kingdom2024-06-14Dorl, James J Esq PROPOSAL30Stephen Shaw
1017Jefferson A OldroydGermany2024-05-20King, Christopher A Esq PROPOSAL18Bernardo Dominic
1018Izzy D MorascaAustralia2024-06-04Benton, John B Jr NEGOTIATION91Elwin Sharvill
1019Claire V PoquetteArgentina2024-06-02Dorl, James J Esq UNQUALIFIED36Stephen Shaw
1020Deepesh K AmigonUnited Kingdom2024-05-27Dorl, James J Esq UNQUALIFIED16Stephen Shaw
1021Claire M MaletFrance2024-06-05Buckley Miller Wright NEGOTIATION83Bernardo Dominic
1022Jennifer X RulapaughIndia2024-05-22Feiner Bros RENEWAL56Amy Elsner
1023Mayumi I RutaFrance2024-06-14Chemel, James L Cpa PROPOSAL4Anna Fali
1024Kadeem V CaudyBrazil2024-05-21King, Christopher A Esq NEGOTIATION15Ioni Bowcher
1025Emily I CaudySpain2024-05-29Chapman, Ross E Esq RENEWAL32Onyama Limba
1026Stacey D GillianSpain2024-06-16Rangoni Of Florence NEGOTIATION65Ioni Bowcher
1027Morrow B RoysterRussia2024-06-09Rousseaux, Michael Esq RENEWAL4Stephen Shaw
1028Morrow O RulapaughFrance2024-06-07Printing Dimensions QUALIFIED97Amy Elsner
1029Izzy P RutaArgentina2024-06-03Commercial Press UNQUALIFIED21Ioni Bowcher
1030Misaki Z AmigonFrance2024-06-13Feiner Bros NEGOTIATION57Ioni Bowcher
1031Adams T SchemmerItaly2024-05-27Buckley Miller Wright QUALIFIED89Stephen Shaw
1032Leja C SergiUnited Kingdom2024-05-30Commercial Press NEGOTIATION48Ivan Magalhaes
1033Maria M RimBrazil2024-06-07Benton, John B Jr QUALIFIED1Elwin Sharvill
1034Mujtaba B DarakjyIndia2024-06-08Benton, John B Jr NEGOTIATION61Onyama Limba
1035Tony B DilliardFrance2024-05-31Printing Dimensions NEGOTIATION2Ivan Magalhaes
1036Smith L InouyeArgentina2024-05-30Chapman, Ross E Esq RENEWAL86Xuxue Feng
1037Claire T FerenczRussia2024-06-17Chemel, James L Cpa UNQUALIFIED47Ivan Magalhaes
1038Jones A MorascaSpain2024-06-14Morlong Associates PROPOSAL37Ivan Magalhaes
1039Sinclair K CaldareraRussia2024-06-09Feltz Printing Service PROPOSAL27Anna Fali
1040Ricardo L BowleyIndia2024-05-30Truhlar And Truhlar Attys PROPOSAL80Xuxue Feng
1041Arvin S PaprockiSpain2024-05-29King, Christopher A Esq NEW12Stephen Shaw
1042Maria Y KuskoIndia2024-05-25Rangoni Of Florence NEGOTIATION9Asiya Javayant
1043Jeanfrancois K DilliardJapan2024-06-06Morlong Associates PROPOSAL9Ivan Magalhaes
1044Darci H RoysterItaly2024-05-30Chemel, James L Cpa QUALIFIED74Xuxue Feng
1045Julie E VocelkaArgentina2024-05-26Dorl, James J Esq RENEWAL11Anna Fali
1046Jeanfrancois C GarufiIndia2024-05-27Printing Dimensions NEGOTIATION41Asiya Javayant
1047Darci Y IturbideIndia2024-06-16Truhlar And Truhlar Attys PROPOSAL61Onyama Limba
1048Alejandro N CaudyArgentina2024-06-15Feltz Printing Service RENEWAL0Elwin Sharvill
1049Ashley L GarufiItaly2024-06-14Benton, John B Jr QUALIFIED43Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Juan U GillianUnited KingdomIoni Bowcher NEGOTIATION
Silvio I RimCanadaStephen Shaw QUALIFIED
Juan L DarakjyIndiaStephen Shaw NEGOTIATION
Deepesh E RulapaughRussiaIoni Bowcher RENEWAL
Smith T GillianSpainAmy Elsner PROPOSAL
Murillo T BriddickJapanIvan Magalhaes RENEWAL
Aruna X MacleadItalyBernardo Dominic QUALIFIED
James N AlbaresArgentinaAsiya Javayant NEGOTIATION
Kaitlin P MarrierFranceBernardo Dominic NEW
Chavez Z FigeroaIndiaAnna Fali NEW
Mujtaba B DarakjyItalyAsiya Javayant NEW
Maisha B StockhamSpainIvan Magalhaes NEW
Greenwood L CaldareraRussiaXuxue Feng NEW
Aruna H SchemmerArgentinaElwin Sharvill RENEWAL
Cody A KuskoAustraliaStephen Shaw RENEWAL
Maisha D ShinkoItalyIvan Magalhaes UNQUALIFIED
Jeanfrancois U GillianJapanIoni Bowcher NEGOTIATION
Juan S CampainArgentinaAmy Elsner PROPOSAL
Juan T AlbaresIndiaXuxue Feng NEW
Jeanfrancois Z FollerAustraliaXuxue Feng NEW
Silvio J BowleyFranceIvan Magalhaes RENEWAL
Cody J GarufiGermanyOnyama Limba NEGOTIATION
Rodrigues G RulapaughBrazilIoni Bowcher PROPOSAL
Juan X KuskoFranceAsiya Javayant UNQUALIFIED
Sinclair S KuskoGermanyBernardo Dominic UNQUALIFIED
Wickens R FollerSpainStephen Shaw NEGOTIATION
Darci R WieserBrazilBernardo Dominic NEGOTIATION
Smith D StockhamCanadaStephen Shaw NEW
Maria K DoeArgentinaIoni Bowcher RENEWAL
Misaki V GarufiArgentinaAmy Elsner PROPOSAL
Izzy R MarrierArgentinaAmy Elsner RENEWAL
Isabel J StensethItalyXuxue Feng RENEWAL
Cody R ChuiSpainElwin Sharvill NEGOTIATION
Claire N VenereIndiaStephen Shaw RENEWAL
Morrow V ChuiRussiaIvan Magalhaes QUALIFIED
Greenwood B FlosiBrazilAsiya Javayant QUALIFIED
Wickens A GauchoJapanBernardo Dominic UNQUALIFIED
Jeanfrancois Y RimRussiaAsiya Javayant NEGOTIATION
Izzy A ChuiBrazilBernardo Dominic NEGOTIATION
Morrow H GarufiFranceIvan Magalhaes PROPOSAL
Adams I FollerRussiaOnyama Limba RENEWAL
Salvatore A OstroskyFranceAsiya Javayant NEGOTIATION
Sinclair B AmigonAustraliaAsiya Javayant RENEWAL
Cody I SchemmerUnited KingdomIoni Bowcher QUALIFIED
Francesco O ShinkoFranceIvan Magalhaes QUALIFIED
Adams R MarrierIndiaBernardo Dominic UNQUALIFIED
Alejandro L KuskoArgentinaAsiya Javayant UNQUALIFIED
Clifford N NestleJapanXuxue Feng NEW
Ricardo E NestleIndiaBernardo Dominic RENEWAL
Maria H KolmetzFranceIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Johnson I Waycott
Leon T Albares
Mujtaba L Doe
Jeanfrancois A Dilliard
Emily X Royster
Misaki A Ostrosky
Leja T Foller
Octavia H Chui
Cody U Nicka
Aika G Kusko
Salvatore C Tollner
Ashley A Campain
Smith H Campain
Alejandro H Rim
Aditya I Garufi
Morrow X Schemmer
Deepesh O Ferencz
Izzy N Caldarera
Aruna H Sergi
Aruna K Flosi
Misaki X Tollner
Kaitlin C Campain
Aika O Iturbide
Misaki P Marrier
Maria I Oldroyd
David D Gaucho
Izzy M Campain
Stacey R Stenseth
Aditya T Ruta
Ashley E Schemmer
Darci D Butt
Faith S Whobrey
Jones X Gaucho
Kaitlin H Waycott
Sinclair Q Poquette
Tony L Perin
Clifford K Inouye
Maisha N Venere
Stacey F Flosi
Nicolas F Saylors
Leon M Garufi
Silvio P Amigon
Ivar N Foller
Chavez T Iturbide
Julie L Poquette
Adams K Butt
David Y Bolognia
Tony K Gillian
Faith K Caldarera
Octavia J Chui
IdCountryDate
1000United Kingdom2024-06-13
1001Russia2024-05-19
1002Spain2024-05-25
1003Argentina2024-05-28
1004France2024-06-05
1005United Kingdom2024-05-28
1006Germany2024-06-17
1007Argentina2024-06-06
1008Italy2024-05-28
1009Australia2024-05-26
1010Spain2024-05-29
1011Russia2024-06-14
1012Japan2024-06-15
1013Japan2024-05-28
1014Argentina2024-06-07
1015France2024-05-25
1016Germany2024-06-07
1017Italy2024-06-03
1018United Kingdom2024-06-11
1019Russia2024-05-26
1020Canada2024-06-11
1021United Kingdom2024-06-13
1022Japan2024-05-21
1023Canada2024-06-08
1024Italy2024-05-20
1025United Kingdom2024-06-11
1026Argentina2024-06-06
1027Germany2024-05-31
1028Argentina2024-05-28
1029France2024-06-10
1030Canada2024-06-05
1031Russia2024-06-14
1032Argentina2024-06-11
1033Russia2024-06-01
1034Spain2024-06-11
1035Canada2024-06-01
1036Australia2024-06-13
1037United Kingdom2024-05-31
1038India2024-06-02
1039United Kingdom2024-06-01
1040Spain2024-06-07
1041Australia2024-06-03
1042Brazil2024-05-29
1043Germany2024-06-13
1044United Kingdom2024-06-04
1045Spain2024-06-05
1046Germany2024-06-15
1047India2024-05-26
1048Australia2024-06-15
1049United Kingdom2024-06-08

On-Demand Data

NameIdCountryDate
Mayumi P Albares1000India2024-06-03
Johnson T Butt1001India2024-05-20
Emily T Perin1002Russia2024-05-27
Wickens V Ruta1003Australia2024-06-06
Emily Z Nicka1004Brazil2024-05-20
Greenwood U Butt1005Australia2024-06-15
Emily S Dilliard1006Brazil2024-06-09
Maria T Poquette1007Argentina2024-06-16
Ashley B Ferencz1008Argentina2024-05-30
Salvatore F Kusko1009France2024-05-30
Alejandro G Schemmer1010Germany2024-06-07
Leon J Bolognia1011Spain2024-05-24
Smith J Oldroyd1012Germany2024-06-04
Morrow S Stockham1013Russia2024-06-08
Aruna T Saylors1014India2024-06-06
Silvio Y Maclead1015United Kingdom2024-05-23
Ivar X Figeroa1016India2024-06-11
Leon B Iturbide1017Australia2024-06-03
Jennifer G Sergi1018United Kingdom2024-05-29
Rodrigues E Nicka1019Italy2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois H DilliardAustraliaAnna Fali QUALIFIED
Misaki Q NestleGermanyBernardo Dominic QUALIFIED
Aruna G DilliardSpainOnyama Limba RENEWAL
Clifford O NickaAustraliaXuxue Feng NEW
Ashley B RimRussiaAmy Elsner QUALIFIED
Wickens U StockhamAustraliaAsiya Javayant PROPOSAL
Tony Z IturbideRussiaXuxue Feng UNQUALIFIED
Stacey M RoysterBrazilAsiya Javayant RENEWAL
Sinclair O MaletGermanyIoni Bowcher PROPOSAL
Mayumi F DarakjyJapanBernardo Dominic NEGOTIATION
Francesco U NestleCanadaIoni Bowcher QUALIFIED
Octavia N CaudyGermanyIvan Magalhaes QUALIFIED
Clifford F RutaCanadaBernardo Dominic RENEWAL
Chavez V SergiSpainElwin Sharvill PROPOSAL
Cody L GarufiJapanAnna Fali PROPOSAL
Leon E StockhamJapanIvan Magalhaes RENEWAL
Juan E RulapaughRussiaBernardo Dominic PROPOSAL
Jeanfrancois X ChuiSpainXuxue Feng PROPOSAL
Silvio C CampainUnited KingdomXuxue Feng UNQUALIFIED
Ashley R FerenczIndiaAnna Fali UNQUALIFIED
James B SchemmerSpainBernardo Dominic UNQUALIFIED
Morrow R NickaGermanyOnyama Limba NEW
Salvatore M GlickBrazilAsiya Javayant NEGOTIATION
Isabel O SlusarskiUnited KingdomXuxue Feng PROPOSAL
Juan N WhobreyIndiaIoni Bowcher NEW
Izzy N MaletCanadaIoni Bowcher NEGOTIATION
Morrow B DarakjyCanadaStephen Shaw RENEWAL
Leon U BowleyCanadaStephen Shaw PROPOSAL
Tony E FerenczArgentinaXuxue Feng RENEWAL
Francesco J DilliardUnited KingdomIvan Magalhaes NEW
Costa L SergiAustraliaIvan Magalhaes UNQUALIFIED
Jeanfrancois U FlosiSpainXuxue Feng NEW
James H ShinkoArgentinaIoni Bowcher NEW
Claire O FerenczAustraliaAnna Fali PROPOSAL
Cody O SergiIndiaStephen Shaw RENEWAL
Kaitlin H RulapaughGermanyOnyama Limba QUALIFIED
Sinclair O FollerItalyStephen Shaw NEW
Stacey G WhobreyJapanBernardo Dominic UNQUALIFIED
Jeanfrancois X MaletIndiaAsiya Javayant NEW
Arvin I ShinkoRussiaXuxue Feng 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>