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
Murillo A MacleadRussiaStephen Shaw QUALIFIED
Murillo V TollnerFranceXuxue Feng NEGOTIATION
Munro Z BologniaCanadaBernardo Dominic NEW
Smith P CaudyItalyBernardo Dominic NEGOTIATION
Greenwood E SlusarskiIndiaStephen Shaw QUALIFIED
Costa L NickaRussiaStephen Shaw RENEWAL
Murillo G DarakjyUnited KingdomOnyama Limba NEW
Faith E RoysterItalyAmy Elsner RENEWAL
Ivar I BriddickItalyElwin Sharvill UNQUALIFIED
Munro E OldroydJapanBernardo Dominic NEGOTIATION
Chavez Y DarakjySpainStephen Shaw PROPOSAL
Jeanfrancois S SchemmerGermanyBernardo Dominic RENEWAL
Ashley Z BowleyItalyOnyama Limba RENEWAL
Wickens G FigeroaJapanXuxue Feng RENEWAL
Mujtaba K RutaAustraliaBernardo Dominic PROPOSAL
Salvatore X GillianFranceXuxue Feng PROPOSAL
Kadeem N GillianSpainAmy Elsner PROPOSAL
Deepesh B DarakjyUnited KingdomAsiya Javayant NEGOTIATION
Maria R CampainSpainOnyama Limba NEGOTIATION
Wickens C GauchoGermanyStephen Shaw NEGOTIATION
Smith B MacleadSpainBernardo Dominic QUALIFIED
Emily T GarufiCanadaAsiya Javayant UNQUALIFIED
David K AmigonUnited KingdomIvan Magalhaes QUALIFIED
Mayumi C ShinkoAustraliaIoni Bowcher PROPOSAL
Sinclair N PaprockiFranceStephen Shaw UNQUALIFIED
Francesco Y ShinkoRussiaBernardo Dominic UNQUALIFIED
Izzy J AmigonRussiaIoni Bowcher PROPOSAL
Antonio G NestleCanadaOnyama Limba NEW
Leja H RoysterFranceElwin Sharvill PROPOSAL
Kadeem H MaletRussiaAsiya Javayant UNQUALIFIED
Izzy T PaprockiGermanyAnna Fali NEW
Mayumi V GarufiUnited KingdomAnna Fali PROPOSAL
Isabel N KuskoIndiaAnna Fali NEGOTIATION
Aika V WhobreyCanadaXuxue Feng RENEWAL
Jefferson B OldroydFranceXuxue Feng NEGOTIATION
Rodrigues J CaudyIndiaBernardo Dominic RENEWAL
Leja V GlickItalyAsiya Javayant NEW
Smith A MaletGermanyBernardo Dominic UNQUALIFIED
Rodrigues S MacleadJapanXuxue Feng NEW
Deepesh I MaletBrazilElwin Sharvill NEGOTIATION
Ivar H FerenczUnited KingdomAnna Fali QUALIFIED
Jeanfrancois Y StockhamIndiaXuxue Feng PROPOSAL
David F GlickArgentinaAmy Elsner NEW
Francesco G RutaBrazilStephen Shaw UNQUALIFIED
Nicolas G MaletBrazilIvan Magalhaes PROPOSAL
Tony D VocelkaFranceXuxue Feng RENEWAL
Octavia C GillianBrazilXuxue Feng PROPOSAL
Silvio N WieserUnited KingdomAmy Elsner UNQUALIFIED
Mayumi Z MarrierBrazilBernardo Dominic NEW
Stacey G MarrierBrazilOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Adams J RoysterRussiaOnyama Limba UNQUALIFIED
David J CaudyItalyStephen Shaw QUALIFIED
Izzy B SlusarskiArgentinaIoni Bowcher QUALIFIED
Cody I KolmetzFranceStephen Shaw UNQUALIFIED
Clifford S SaylorsIndiaIoni Bowcher NEW
Mayumi U AlbaresAustraliaAmy Elsner UNQUALIFIED
Faith L VocelkaRussiaBernardo Dominic NEW
David F AmigonCanadaStephen Shaw NEGOTIATION
Claire K InouyeJapanStephen Shaw NEGOTIATION
Leja J MarrierJapanIoni Bowcher NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie K DarakjyCanada2024-06-15Feltz Printing Service PROPOSAL99Bernardo Dominic
1001Sinclair F KolmetzAustralia2024-05-25Printing Dimensions UNQUALIFIED28Elwin Sharvill
1002Francesco K BowleyRussia2024-05-29Feltz Printing Service UNQUALIFIED96Xuxue Feng
1003Wickens Y WaycottCanada2024-05-22Truhlar And Truhlar Attys PROPOSAL80Stephen Shaw
1004Kaitlin M BowleySpain2024-05-23Truhlar And Truhlar Attys PROPOSAL84Bernardo Dominic
1005Jefferson P RimFrance2024-05-26Morlong Associates NEGOTIATION61Amy Elsner
1006Izzy W AmigonAustralia2024-05-25Morlong Associates NEW72Xuxue Feng
1007Morrow N RulapaughFrance2024-05-19Truhlar And Truhlar Attys RENEWAL67Elwin Sharvill
1008Maria K GillianBrazil2024-06-06Chanay, Jeffrey A Esq NEW97Stephen Shaw
1009Aditya J MaletJapan2024-05-25Rousseaux, Michael Esq RENEWAL85Stephen Shaw
1010Rodrigues E RimFrance2024-05-25Benton, John B Jr PROPOSAL25Ioni Bowcher
1011Aika D FollerArgentina2024-05-20Buckley Miller Wright NEGOTIATION75Amy Elsner
1012Emily H MacleadItaly2024-06-04Printing Dimensions RENEWAL68Stephen Shaw
1013Stacey I SchemmerUnited Kingdom2024-05-27Buckley Miller Wright QUALIFIED59Asiya Javayant
1014Jeanfrancois O GillianItaly2024-05-28Dorl, James J Esq NEGOTIATION48Xuxue Feng
1015Aruna A GauchoBrazil2024-06-14Chapman, Ross E Esq NEW84Xuxue Feng
1016Antonio D RimRussia2024-06-05Buckley Miller Wright QUALIFIED85Stephen Shaw
1017Mayumi N RimGermany2024-05-21Chemel, James L Cpa NEGOTIATION39Elwin Sharvill
1018Ricardo N AmigonJapan2024-06-01Printing Dimensions NEGOTIATION2Asiya Javayant
1019Aika X MacleadGermany2024-06-15Dorl, James J Esq PROPOSAL76Amy Elsner
1020Arvin S PerinUnited Kingdom2024-05-31Truhlar And Truhlar Attys NEW34Asiya Javayant
1021Juan G InouyeItaly2024-05-21Chemel, James L Cpa QUALIFIED71Amy Elsner
1022Leon I VocelkaItaly2024-05-26Commercial Press PROPOSAL69Xuxue Feng
1023David L WaycottIndia2024-05-25Morlong Associates NEW58Ivan Magalhaes
1024Ricardo V SergiBrazil2024-05-24Printing Dimensions RENEWAL18Stephen Shaw
1025Maria L RimUnited Kingdom2024-06-12Morlong Associates UNQUALIFIED50Bernardo Dominic
1026Faith U DarakjyIndia2024-06-08Printing Dimensions NEW80Asiya Javayant
1027Maria T WhobreyFrance2024-06-07Chapman, Ross E Esq NEW26Elwin Sharvill
1028Aika Y DilliardFrance2024-05-29Morlong Associates PROPOSAL2Amy Elsner
1029Alejandro L DarakjyBrazil2024-05-26Chanay, Jeffrey A Esq NEGOTIATION51Elwin Sharvill
1030Darci X GarufiArgentina2024-06-12Benton, John B Jr RENEWAL47Asiya Javayant
1031James Z CaudyIndia2024-05-18Dorl, James J Esq NEGOTIATION48Xuxue Feng
1032Morrow K StensethCanada2024-05-25Commercial Press NEW76Ivan Magalhaes
1033Izzy F MaletBrazil2024-06-09Chanay, Jeffrey A Esq QUALIFIED38Anna Fali
1034Smith C MaletIndia2024-05-22Commercial Press NEW99Anna Fali
1035Francesco O KolmetzArgentina2024-06-15Benton, John B Jr NEW42Bernardo Dominic
1036Rodrigues K PaprockiUnited Kingdom2024-06-04Feltz Printing Service UNQUALIFIED58Elwin Sharvill
1037Alejandro Z ButtUnited Kingdom2024-05-31Rousseaux, Michael Esq NEW97Amy Elsner
1038Aruna C CampainItaly2024-06-02Morlong Associates NEGOTIATION96Elwin Sharvill
1039Darci Z RulapaughIndia2024-06-04Truhlar And Truhlar Attys UNQUALIFIED72Onyama Limba
1040Leon P AlbaresItaly2024-06-01Rousseaux, Michael Esq UNQUALIFIED22Xuxue Feng
1041Chavez J FigeroaItaly2024-06-05Printing Dimensions RENEWAL70Xuxue Feng
1042Jones U FlosiAustralia2024-05-24Rousseaux, Michael Esq RENEWAL57Onyama Limba
1043Jefferson X InouyeBrazil2024-05-30Buckley Miller Wright NEGOTIATION2Stephen Shaw
1044Deepesh F DarakjyCanada2024-05-21King, Christopher A Esq PROPOSAL42Stephen Shaw
1045Mayumi S PerinAustralia2024-05-30Chemel, James L Cpa QUALIFIED39Stephen Shaw
1046Kadeem W FollerRussia2024-05-18Dorl, James J Esq RENEWAL82Ioni Bowcher
1047Smith I PerinRussia2024-05-26Morlong Associates QUALIFIED20Anna Fali
1048Maria U FerenczRussia2024-05-19Benton, John B Jr NEW21Ivan Magalhaes
1049Arvin I GarufiArgentina2024-06-01Rangoni Of Florence RENEWAL12Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ricardo N NestleBrazilStephen Shaw UNQUALIFIED
Isabel L RoysterSpainAsiya Javayant RENEWAL
Wickens I KolmetzUnited KingdomBernardo Dominic RENEWAL
Clifford Q WhobreyArgentinaIoni Bowcher NEGOTIATION
Kadeem R CaldareraJapanBernardo Dominic RENEWAL
Maisha S DarakjyCanadaAmy Elsner PROPOSAL
Jeanfrancois K BowleyCanadaAnna Fali NEW
Aruna Y WieserRussiaStephen Shaw RENEWAL
James Q DarakjyAustraliaIoni Bowcher PROPOSAL
Alejandro R AmigonBrazilIvan Magalhaes UNQUALIFIED
Rodrigues Y KuskoGermanyXuxue Feng PROPOSAL
Jones K CaldareraGermanyAmy Elsner NEGOTIATION
Ashley D OstroskyAustraliaAnna Fali NEGOTIATION
Silvio G MaletItalyBernardo Dominic RENEWAL
Smith Z RutaAustraliaElwin Sharvill UNQUALIFIED
Emily O FollerGermanyBernardo Dominic NEW
Aditya I TollnerBrazilAmy Elsner NEW
Cody Q StockhamAustraliaIoni Bowcher NEW
Silvio O GarufiCanadaAsiya Javayant UNQUALIFIED
Jennifer U FollerGermanyAmy Elsner UNQUALIFIED
Alejandro Q FerenczGermanyElwin Sharvill NEGOTIATION
Kaitlin K ShinkoRussiaBernardo Dominic NEW
Aditya J NestleFranceElwin Sharvill RENEWAL
James I FerenczSpainAmy Elsner NEGOTIATION
Maria N BowleyUnited KingdomBernardo Dominic PROPOSAL
Alejandro X RutaBrazilXuxue Feng QUALIFIED
Misaki I MarrierGermanyAsiya Javayant PROPOSAL
Ashley W RoysterIndiaStephen Shaw NEW
Morrow B StensethBrazilIvan Magalhaes NEW
Johnson M PoquetteRussiaIoni Bowcher RENEWAL
Costa A InouyeJapanStephen Shaw RENEWAL
David L RutaCanadaIoni Bowcher PROPOSAL
Adams I GarufiRussiaAsiya Javayant NEW
Aruna F FerenczIndiaAsiya Javayant RENEWAL
James I VenereJapanXuxue Feng PROPOSAL
Leja J SlusarskiAustraliaXuxue Feng PROPOSAL
Clifford M AlbaresRussiaOnyama Limba RENEWAL
Adams N RimAustraliaIvan Magalhaes NEGOTIATION
Emily E RulapaughRussiaAnna Fali UNQUALIFIED
Munro P MorascaArgentinaAmy Elsner PROPOSAL
Arvin U DoeArgentinaIoni Bowcher QUALIFIED
Juan B PaprockiFranceAnna Fali QUALIFIED
Faith U MorascaSpainElwin Sharvill RENEWAL
Darci C StockhamFranceAmy Elsner NEGOTIATION
Leja N StockhamGermanyElwin Sharvill RENEWAL
Silvio T BriddickJapanIoni Bowcher RENEWAL
Darci C BriddickAustraliaIvan Magalhaes QUALIFIED
Chavez S IturbideIndiaAmy Elsner NEGOTIATION
Tony P ButtIndiaXuxue Feng PROPOSAL
Kadeem O MarrierArgentinaOnyama Limba NEGOTIATION
Frozen Columns
Name
Nicolas W Ostrosky
Morrow Z Caudy
Mayumi G Slusarski
Octavia O Vocelka
Munro J Morasca
Juan M Tollner
Jefferson M Chui
Darci R Caldarera
Jennifer C Vocelka
Kaitlin G Shinko
Misaki J Tollner
Alejandro Q Morasca
Izzy I Caudy
Emily S Nicka
Maisha C Gillian
Cody L Rulapaugh
Jefferson T Royster
Kaitlin L Nicka
Darci K Perin
Claire K Marrier
Munro J Nicka
Darci P Campain
Emily E Rim
Misaki G Shinko
Salvatore Z Foller
Silvio Z Rulapaugh
Chavez B Paprocki
Ashley D Gillian
Maria K Flosi
David A Rim
Juan V Sergi
Emily R Morasca
Jeanfrancois S Darakjy
Nicolas B Sergi
Stacey P Nicka
Smith G Oldroyd
Mayumi K Chui
Misaki I Gillian
Jefferson A Oldroyd
Mayumi G Garufi
Chavez Z Schemmer
Costa M Bolognia
Ivar Y Wieser
Faith Q Butt
Silvio S Ostrosky
Emily J Caudy
Mujtaba Q Stockham
Leja B Vocelka
Jones I Saylors
Costa T Malet
IdCountryDate
1000Germany2024-06-06
1001France2024-06-03
1002Argentina2024-06-05
1003France2024-06-03
1004Brazil2024-05-21
1005Italy2024-05-28
1006Australia2024-05-28
1007France2024-06-16
1008Canada2024-05-29
1009Germany2024-06-06
1010Argentina2024-06-03
1011Germany2024-06-01
1012India2024-06-08
1013Australia2024-05-24
1014Brazil2024-06-13
1015Spain2024-05-18
1016Germany2024-06-16
1017India2024-06-11
1018Australia2024-05-25
1019India2024-06-01
1020Argentina2024-06-07
1021Brazil2024-05-23
1022France2024-06-15
1023Italy2024-06-10
1024United Kingdom2024-05-28
1025Brazil2024-06-02
1026Spain2024-06-03
1027Japan2024-06-16
1028Australia2024-05-20
1029Japan2024-06-07
1030India2024-05-22
1031Canada2024-05-25
1032United Kingdom2024-06-06
1033Argentina2024-05-20
1034Argentina2024-05-26
1035Brazil2024-06-04
1036Canada2024-05-24
1037India2024-05-23
1038Canada2024-06-10
1039Argentina2024-05-18
1040Brazil2024-06-07
1041Brazil2024-06-05
1042Argentina2024-06-07
1043Brazil2024-05-31
1044Spain2024-06-04
1045Germany2024-06-10
1046Japan2024-05-19
1047Italy2024-05-18
1048Brazil2024-05-18
1049Canada2024-06-06

On-Demand Data

NameIdCountryDate
Nicolas X Albares1000Spain2024-05-31
Francesco Q Caudy1001Argentina2024-05-27
Claire R Marrier1002Australia2024-05-24
Stacey D Flosi1003Germany2024-06-13
Murillo Z Whobrey1004Italy2024-06-13
Rodrigues C Glick1005Russia2024-05-29
Jefferson R Malet1006Japan2024-05-26
Munro N Rulapaugh1007United Kingdom2024-05-23
Arvin L Flosi1008Spain2024-06-05
Nicolas E Poquette1009Italy2024-05-21
Silvio P Foller1010Australia2024-06-08
Mujtaba H Rim1011Russia2024-05-30
Francesco P Kolmetz1012Argentina2024-06-02
Ricardo E Shinko1013Brazil2024-06-10
Leja I Figeroa1014Argentina2024-06-08
Julie G Bowley1015Japan2024-06-05
Munro H Albares1016Australia2024-06-10
Octavia D Nicka1017India2024-05-18
Faith N Briddick1018Argentina2024-05-26
Silvio O Saylors1019Brazil2024-05-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Izzy R ChuiItalyIoni Bowcher NEW
Octavia G BowleyFranceElwin Sharvill NEW
Kadeem R FerenczJapanAnna Fali PROPOSAL
Silvio O SchemmerAustraliaAmy Elsner PROPOSAL
Murillo Z StockhamArgentinaStephen Shaw NEW
Johnson U DoeJapanStephen Shaw QUALIFIED
Faith M StensethCanadaBernardo Dominic QUALIFIED
Costa H GillianSpainIvan Magalhaes PROPOSAL
Jefferson M BologniaAustraliaXuxue Feng PROPOSAL
Aika X GarufiGermanyStephen Shaw UNQUALIFIED
Chavez H PaprockiJapanElwin Sharvill NEGOTIATION
Cody M ShinkoUnited KingdomAsiya Javayant RENEWAL
Claire Q SergiCanadaStephen Shaw QUALIFIED
Izzy B DarakjyIndiaBernardo Dominic RENEWAL
Munro F SaylorsCanadaStephen Shaw UNQUALIFIED
David E SergiIndiaBernardo Dominic NEW
Antonio M GarufiJapanAnna Fali RENEWAL
Silvio N PoquetteGermanyIvan Magalhaes NEGOTIATION
Nicolas U KuskoGermanyIvan Magalhaes NEW
Kaitlin L MorascaArgentinaStephen Shaw NEGOTIATION
Wickens K SergiBrazilStephen Shaw PROPOSAL
Stacey B DarakjyJapanAmy Elsner NEW
Greenwood I StockhamCanadaXuxue Feng NEGOTIATION
Aika U SergiAustraliaIoni Bowcher NEW
Salvatore F RulapaughBrazilAsiya Javayant QUALIFIED
Aruna D WieserItalyElwin Sharvill QUALIFIED
Julie G SergiCanadaIoni Bowcher NEW
Darci K KolmetzRussiaAnna Fali RENEWAL
Emily A MaletAustraliaAsiya Javayant RENEWAL
Claire C GlickAustraliaAsiya Javayant NEGOTIATION
Alejandro P GlickGermanyIvan Magalhaes QUALIFIED
Salvatore Q SergiJapanIoni Bowcher NEW
Adams A GillianUnited KingdomXuxue Feng QUALIFIED
Emily A CaudyFranceBernardo Dominic QUALIFIED
Alejandro A IturbideBrazilIoni Bowcher PROPOSAL
David H GauchoAustraliaStephen Shaw RENEWAL
Clifford H SchemmerJapanXuxue Feng QUALIFIED
Deepesh G TollnerCanadaAmy Elsner QUALIFIED
Adams P GauchoItalyStephen Shaw NEW
James E KolmetzSpainOnyama Limba 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>