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
Leja R InouyeGermanyAsiya Javayant NEW
Clifford W CaudyRussiaIoni Bowcher PROPOSAL
Kadeem M ButtUnited KingdomOnyama Limba PROPOSAL
Ivar G CaudyIndiaXuxue Feng NEGOTIATION
Aruna L InouyeUnited KingdomOnyama Limba NEW
Faith J PaprockiItalyAmy Elsner QUALIFIED
Adams R BowleyIndiaIoni Bowcher QUALIFIED
Isabel C FigeroaFranceAmy Elsner UNQUALIFIED
Francesco B GarufiCanadaOnyama Limba PROPOSAL
Julie A KolmetzIndiaAsiya Javayant QUALIFIED
Arvin P MarrierIndiaXuxue Feng PROPOSAL
Greenwood L PaprockiAustraliaAnna Fali PROPOSAL
Kadeem R WaycottRussiaOnyama Limba RENEWAL
Emily A TollnerUnited KingdomIoni Bowcher PROPOSAL
Darci D WaycottBrazilElwin Sharvill QUALIFIED
Jefferson K AlbaresItalyElwin Sharvill NEW
Kaitlin Q RimUnited KingdomElwin Sharvill RENEWAL
Adams G RimBrazilBernardo Dominic UNQUALIFIED
Tony W PaprockiAustraliaStephen Shaw NEW
Jeanfrancois W PoquetteRussiaXuxue Feng QUALIFIED
Greenwood I IturbideGermanyAsiya Javayant RENEWAL
Aditya Y KolmetzSpainAmy Elsner NEGOTIATION
Aditya M InouyeIndiaElwin Sharvill QUALIFIED
Antonio I FollerJapanAsiya Javayant RENEWAL
Aruna N KolmetzFranceBernardo Dominic PROPOSAL
Izzy M OstroskyFranceXuxue Feng NEW
Jeanfrancois J NickaCanadaIvan Magalhaes QUALIFIED
Jefferson U WieserAustraliaOnyama Limba PROPOSAL
Jefferson P NickaGermanyBernardo Dominic QUALIFIED
Alejandro J RimArgentinaOnyama Limba UNQUALIFIED
Jeanfrancois K SchemmerArgentinaElwin Sharvill QUALIFIED
Kaitlin Z FollerRussiaOnyama Limba PROPOSAL
Chavez Y PoquetteCanadaIvan Magalhaes QUALIFIED
Maisha N MarrierAustraliaAnna Fali UNQUALIFIED
Mujtaba G SchemmerSpainIvan Magalhaes NEGOTIATION
Jennifer F TollnerGermanyOnyama Limba RENEWAL
Antonio E GlickAustraliaBernardo Dominic NEW
Octavia W StensethSpainStephen Shaw RENEWAL
Wickens F WhobreyFranceOnyama Limba PROPOSAL
Claire U RutaGermanyXuxue Feng RENEWAL
Jeanfrancois J WhobreyAustraliaStephen Shaw NEW
Aika S GauchoItalyAmy Elsner UNQUALIFIED
Murillo Y MaletAustraliaBernardo Dominic UNQUALIFIED
Sinclair L OstroskyCanadaAnna Fali NEGOTIATION
Jones N WieserArgentinaAmy Elsner NEGOTIATION
Emily F AlbaresIndiaOnyama Limba UNQUALIFIED
Alejandro X WieserRussiaXuxue Feng RENEWAL
Maria B RimJapanIoni Bowcher UNQUALIFIED
Munro E DilliardUnited KingdomOnyama Limba NEW
Emily L GlickRussiaStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leja Z KolmetzGermanyAsiya Javayant RENEWAL
Kaitlin H GlickCanadaIvan Magalhaes UNQUALIFIED
Cody H WhobreyArgentinaAnna Fali PROPOSAL
Claire T MacleadCanadaIoni Bowcher QUALIFIED
Silvio J SaylorsGermanyElwin Sharvill UNQUALIFIED
Greenwood I NestleItalyAmy Elsner PROPOSAL
Stacey Z BologniaIndiaAnna Fali PROPOSAL
Tony O ButtRussiaXuxue Feng NEGOTIATION
Faith V ShinkoSpainElwin Sharvill NEGOTIATION
Mayumi L VenereJapanAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aika N PoquetteCanada2024-05-06King, Christopher A Esq RENEWAL80Xuxue Feng
1001Arvin S KolmetzArgentina2024-05-22Feltz Printing Service NEGOTIATION92Bernardo Dominic
1002Aika K RimRussia2024-04-26Commercial Press PROPOSAL97Amy Elsner
1003Tony X SchemmerUnited Kingdom2024-05-03Morlong Associates UNQUALIFIED92Ioni Bowcher
1004Aika K BowleyRussia2024-04-25Truhlar And Truhlar Attys UNQUALIFIED25Onyama Limba
1005Julie U FigeroaAustralia2024-04-29Rousseaux, Michael Esq QUALIFIED37Asiya Javayant
1006Greenwood U WaycottRussia2024-04-26Truhlar And Truhlar Attys QUALIFIED53Ivan Magalhaes
1007Isabel H TollnerCanada2024-05-01Feiner Bros UNQUALIFIED94Ioni Bowcher
1008Izzy Q NickaIndia2024-05-10Buckley Miller Wright RENEWAL96Onyama Limba
1009Isabel I OldroydUnited Kingdom2024-05-06Commercial Press NEGOTIATION64Ioni Bowcher
1010Clifford D ButtSpain2024-05-20Printing Dimensions PROPOSAL15Xuxue Feng
1011Nicolas J OstroskySpain2024-05-07Buckley Miller Wright RENEWAL94Onyama Limba
1012Jones L OstroskyItaly2024-05-20Printing Dimensions QUALIFIED84Ivan Magalhaes
1013Greenwood E SergiArgentina2024-05-24Commercial Press RENEWAL33Bernardo Dominic
1014Murillo X StensethJapan2024-05-05Morlong Associates NEW88Asiya Javayant
1015Adams C DoeAustralia2024-05-20Morlong Associates QUALIFIED54Ioni Bowcher
1016Tony Y FlosiRussia2024-05-10Morlong Associates UNQUALIFIED23Elwin Sharvill
1017Jeanfrancois J OstroskyUnited Kingdom2024-05-05Benton, John B Jr RENEWAL66Ivan Magalhaes
1018Kaitlin W PerinItaly2024-05-24Rousseaux, Michael Esq PROPOSAL78Stephen Shaw
1019Julie S MaletCanada2024-05-11Dorl, James J Esq NEW17Xuxue Feng
1020Ivar O MorascaFrance2024-05-16Feltz Printing Service NEGOTIATION9Onyama Limba
1021Wickens U FollerRussia2024-05-22Feltz Printing Service RENEWAL85Ioni Bowcher
1022Smith P SaylorsGermany2024-05-02Printing Dimensions NEW79Ivan Magalhaes
1023Clifford W MaletRussia2024-05-01Rousseaux, Michael Esq UNQUALIFIED45Xuxue Feng
1024Jones Q KolmetzSpain2024-05-10King, Christopher A Esq UNQUALIFIED91Anna Fali
1025Francesco Q RutaGermany2024-04-29Morlong Associates NEW52Xuxue Feng
1026Antonio L ButtUnited Kingdom2024-04-29Morlong Associates NEW96Xuxue Feng
1027Ashley B BriddickItaly2024-05-07Printing Dimensions QUALIFIED58Amy Elsner
1028Octavia H RutaFrance2024-05-03Feiner Bros NEW72Asiya Javayant
1029Ricardo C RulapaughRussia2024-05-06Chemel, James L Cpa RENEWAL55Ioni Bowcher
1030Aditya X VocelkaAustralia2024-05-08Chemel, James L Cpa NEGOTIATION1Bernardo Dominic
1031Wickens Y CampainItaly2024-04-28Benton, John B Jr PROPOSAL72Onyama Limba
1032Claire D RimAustralia2024-04-26Buckley Miller Wright RENEWAL35Stephen Shaw
1033Munro U AmigonFrance2024-04-26Dorl, James J Esq NEGOTIATION42Onyama Limba
1034Jefferson A NickaRussia2024-04-28Dorl, James J Esq NEW13Onyama Limba
1035Adams R NestleArgentina2024-04-28Dorl, James J Esq PROPOSAL9Amy Elsner
1036Julie R GlickUnited Kingdom2024-05-18Rangoni Of Florence UNQUALIFIED61Ioni Bowcher
1037Julie J FigeroaCanada2024-05-09Commercial Press UNQUALIFIED46Stephen Shaw
1038Maria N GarufiUnited Kingdom2024-05-11Dorl, James J Esq NEW48Anna Fali
1039Adams G FerenczGermany2024-05-04Chemel, James L Cpa QUALIFIED11Onyama Limba
1040James B WhobreyGermany2024-04-27Truhlar And Truhlar Attys RENEWAL68Bernardo Dominic
1041Morrow X MaletRussia2024-05-14Feiner Bros PROPOSAL29Onyama Limba
1042Emily Q ShinkoCanada2024-05-19Morlong Associates NEGOTIATION74Asiya Javayant
1043Mujtaba Q NestleIndia2024-05-11Rousseaux, Michael Esq PROPOSAL28Bernardo Dominic
1044Maisha X GauchoAustralia2024-05-11Chemel, James L Cpa NEW82Ivan Magalhaes
1045Rodrigues J StensethAustralia2024-05-07Dorl, James J Esq NEW16Ivan Magalhaes
1046Tony B PaprockiBrazil2024-04-27Chapman, Ross E Esq RENEWAL83Asiya Javayant
1047Johnson B RimArgentina2024-05-10Chemel, James L Cpa NEW22Anna Fali
1048Stacey I OldroydJapan2024-04-28Chanay, Jeffrey A Esq RENEWAL82Elwin Sharvill
1049Claire S RoysterIndia2024-05-12Dorl, James J Esq NEW6Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Tony Y FollerCanadaStephen Shaw NEW
Leja L GlickAustraliaStephen Shaw NEW
Stacey B AmigonRussiaXuxue Feng UNQUALIFIED
Silvio E NestleArgentinaIoni Bowcher UNQUALIFIED
Antonio N VocelkaUnited KingdomOnyama Limba QUALIFIED
Ricardo T BriddickFranceIvan Magalhaes UNQUALIFIED
Munro L SergiGermanyXuxue Feng PROPOSAL
Wickens I RimSpainXuxue Feng NEGOTIATION
James J NestleCanadaXuxue Feng NEGOTIATION
Rodrigues C GlickJapanBernardo Dominic QUALIFIED
Kaitlin J PoquetteItalyOnyama Limba UNQUALIFIED
Ivar M CampainArgentinaBernardo Dominic UNQUALIFIED
David N MacleadAustraliaElwin Sharvill NEW
Darci M PoquetteAustraliaAmy Elsner UNQUALIFIED
Kadeem Y RimUnited KingdomIoni Bowcher NEGOTIATION
Johnson X KolmetzIndiaOnyama Limba RENEWAL
Salvatore J NickaJapanAmy Elsner RENEWAL
Emily Q PoquetteAustraliaAsiya Javayant NEW
Jeanfrancois C KolmetzBrazilBernardo Dominic QUALIFIED
Chavez E AmigonUnited KingdomIoni Bowcher QUALIFIED
David R DarakjyFranceXuxue Feng UNQUALIFIED
Octavia G InouyeItalyXuxue Feng NEW
Octavia T AmigonAustraliaStephen Shaw UNQUALIFIED
Emily G AmigonAustraliaXuxue Feng NEGOTIATION
Ashley U GarufiIndiaOnyama Limba QUALIFIED
Adams F PaprockiArgentinaAmy Elsner UNQUALIFIED
David T GlickJapanIoni Bowcher RENEWAL
Tony V FigeroaCanadaIoni Bowcher NEGOTIATION
Leja Y GlickAustraliaXuxue Feng NEW
Leja A AmigonJapanStephen Shaw QUALIFIED
Tony Q SchemmerUnited KingdomAmy Elsner QUALIFIED
Misaki U MorascaArgentinaIvan Magalhaes NEW
Kadeem L MaletUnited KingdomAnna Fali QUALIFIED
Stacey L ShinkoFranceAnna Fali UNQUALIFIED
Sinclair F FlosiRussiaBernardo Dominic NEGOTIATION
James S PaprockiJapanOnyama Limba RENEWAL
Clifford J NickaAustraliaAmy Elsner PROPOSAL
Sinclair B RutaRussiaIvan Magalhaes NEGOTIATION
Aditya P SchemmerArgentinaAnna Fali NEW
Murillo B MorascaItalyAmy Elsner RENEWAL
Johnson P CampainAustraliaIvan Magalhaes QUALIFIED
Munro C SaylorsArgentinaStephen Shaw UNQUALIFIED
Julie V BowleyJapanIoni Bowcher NEGOTIATION
Antonio G WhobreyRussiaIvan Magalhaes NEGOTIATION
Rodrigues P SchemmerFranceIoni Bowcher QUALIFIED
Smith M RutaRussiaStephen Shaw NEW
Silvio M GauchoJapanStephen Shaw UNQUALIFIED
Alejandro J GlickItalyStephen Shaw NEGOTIATION
Smith C NickaBrazilXuxue Feng UNQUALIFIED
Darci H SergiUnited KingdomAnna Fali RENEWAL
Frozen Columns
Name
Johnson Z Perin
Ivar Y Ruta
Deepesh I Nestle
Wickens T Royster
Emily Q Nestle
Costa H Saylors
Francesco S Morasca
Francesco C Gillian
Misaki I Butt
Kaitlin A Perin
Kadeem B Morasca
Smith I Ruta
Stacey E Venere
Salvatore C Maclead
Maria T Nicka
Leja Z Albares
Adams B Doe
Mujtaba R Ostrosky
Murillo Y Morasca
Cody C Glick
Aditya O Nestle
Sinclair U Campain
David B Perin
Julie O Ostrosky
Darci V Poquette
Greenwood Z Figeroa
Emily U Whobrey
Arvin M Campain
Maisha U Glick
Munro D Briddick
Murillo W Marrier
Adams E Albares
Jefferson Q Caudy
Faith P Garufi
Salvatore Q Marrier
David N Venere
Cody Y Amigon
Morrow S Doe
Darci K Oldroyd
Darci V Foller
Emily K Oldroyd
Juan C Marrier
Tony M Campain
Munro I Foller
Deepesh I Figeroa
Isabel T Stenseth
Isabel Y Slusarski
Ashley V Iturbide
Sinclair I Saylors
Arvin Q Amigon
IdCountryDate
1000Germany2024-04-30
1001Germany2024-04-28
1002Russia2024-05-03
1003Brazil2024-05-19
1004United Kingdom2024-04-27
1005India2024-05-19
1006Russia2024-04-27
1007Australia2024-05-05
1008Argentina2024-05-24
1009Germany2024-05-13
1010Brazil2024-05-17
1011Brazil2024-05-08
1012Argentina2024-05-20
1013Australia2024-05-22
1014Russia2024-05-09
1015Australia2024-05-02
1016Germany2024-04-28
1017Canada2024-04-30
1018Italy2024-05-11
1019Spain2024-04-28
1020India2024-05-02
1021Australia2024-05-13
1022Germany2024-05-06
1023Spain2024-05-03
1024Canada2024-05-17
1025Brazil2024-04-29
1026Italy2024-05-15
1027Australia2024-04-29
1028Russia2024-05-01
1029Brazil2024-05-08
1030Germany2024-05-10
1031Canada2024-05-20
1032United Kingdom2024-05-04
1033Argentina2024-05-23
1034Italy2024-05-17
1035Germany2024-04-28
1036Russia2024-05-08
1037Spain2024-04-25
1038Brazil2024-04-27
1039India2024-05-22
1040Germany2024-05-03
1041Japan2024-05-12
1042Italy2024-04-27
1043Australia2024-04-29
1044Russia2024-04-30
1045Canada2024-05-21
1046Spain2024-05-23
1047Australia2024-05-12
1048Japan2024-04-25
1049Russia2024-05-21

On-Demand Data

NameIdCountryDate
Sinclair A Rim1000France2024-05-23
Kaitlin M Nicka1001United Kingdom2024-05-07
Jefferson P Vocelka1002Russia2024-05-20
Mayumi H Gaucho1003Russia2024-05-14
Jennifer F Briddick1004France2024-05-04
Johnson T Slusarski1005India2024-05-23
Sinclair P Wieser1006Russia2024-04-26
Ricardo F Kusko1007Russia2024-05-09
Tony I Ruta1008Germany2024-04-25
Nicolas C Tollner1009Russia2024-04-29
Faith W Morasca1010Argentina2024-05-01
Adams O Kusko1011India2024-05-20
Leon F Dilliard1012France2024-04-27
Faith Z Campain1013Brazil2024-05-13
Smith G Shinko1014Brazil2024-05-01
Jefferson T Ostrosky1015Brazil2024-05-14
Francesco Y Dilliard1016Brazil2024-05-20
Ashley S Inouye1017Italy2024-05-16
Silvio Q Oldroyd1018Argentina2024-04-30
Salvatore L Ferencz1019India2024-05-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez H DilliardAustraliaAmy Elsner NEGOTIATION
David G CaldareraBrazilAnna Fali NEW
Cody O StockhamSpainAmy Elsner UNQUALIFIED
Octavia P MarrierRussiaBernardo Dominic UNQUALIFIED
Salvatore H RutaSpainElwin Sharvill QUALIFIED
Murillo P FigeroaGermanyElwin Sharvill NEW
Ashley V SchemmerSpainOnyama Limba NEW
Jeanfrancois S GlickBrazilIoni Bowcher UNQUALIFIED
Emily F RutaBrazilElwin Sharvill UNQUALIFIED
Salvatore J ChuiAustraliaOnyama Limba PROPOSAL
Jones S DoeBrazilXuxue Feng NEGOTIATION
Emily I TollnerAustraliaAmy Elsner PROPOSAL
Misaki D IturbideItalyIvan Magalhaes RENEWAL
Leon S BologniaSpainAsiya Javayant NEGOTIATION
Deepesh H FollerIndiaBernardo Dominic PROPOSAL
Julie Y NestleRussiaStephen Shaw RENEWAL
Munro Z NickaFranceAmy Elsner RENEWAL
James X DilliardRussiaXuxue Feng QUALIFIED
Kaitlin O FollerItalyBernardo Dominic UNQUALIFIED
Francesco H RimJapanAnna Fali UNQUALIFIED
Clifford G OldroydItalyAnna Fali PROPOSAL
Tony Y FerenczBrazilAmy Elsner PROPOSAL
Aditya X MorascaArgentinaIoni Bowcher NEGOTIATION
Cody E BriddickAustraliaIoni Bowcher QUALIFIED
Greenwood B PaprockiRussiaAsiya Javayant UNQUALIFIED
Kadeem Q FerenczBrazilStephen Shaw RENEWAL
Jefferson U DoeBrazilOnyama Limba RENEWAL
Nicolas X SaylorsGermanyBernardo Dominic RENEWAL
Alejandro C ChuiGermanyAsiya Javayant NEGOTIATION
Costa L BriddickItalyStephen Shaw RENEWAL
Ashley F NickaUnited KingdomAsiya Javayant UNQUALIFIED
Smith I RulapaughCanadaElwin Sharvill RENEWAL
Ricardo W SlusarskiCanadaIvan Magalhaes NEW
Maisha H WieserJapanIvan Magalhaes RENEWAL
Cody Y SlusarskiUnited KingdomBernardo Dominic QUALIFIED
Adams Q MarrierJapanBernardo Dominic UNQUALIFIED
Morrow T FollerJapanStephen Shaw RENEWAL
Clifford B VocelkaRussiaElwin Sharvill QUALIFIED
Izzy X PoquetteBrazilStephen Shaw PROPOSAL
Stacey Q AlbaresBrazilOnyama Limba UNQUALIFIED

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