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
Clifford W FerenczJapanXuxue Feng QUALIFIED
Chavez F DoeCanadaStephen Shaw UNQUALIFIED
Costa W IturbideUnited KingdomElwin Sharvill NEW
Antonio D FlosiIndiaIoni Bowcher NEW
Alejandro H ShinkoSpainIoni Bowcher NEW
Ivar K WieserItalyAsiya Javayant QUALIFIED
Smith N SergiItalyBernardo Dominic PROPOSAL
Aika Q MaletJapanAnna Fali RENEWAL
Greenwood V VocelkaSpainIvan Magalhaes RENEWAL
Sinclair X OstroskyArgentinaStephen Shaw NEW
Izzy W PoquetteItalyIvan Magalhaes UNQUALIFIED
Mayumi Z BowleyAustraliaElwin Sharvill NEGOTIATION
Misaki B MarrierGermanyElwin Sharvill RENEWAL
Octavia T MarrierArgentinaAsiya Javayant UNQUALIFIED
Munro L OstroskyIndiaBernardo Dominic PROPOSAL
Jennifer E GlickArgentinaIoni Bowcher PROPOSAL
Murillo Y WieserUnited KingdomAsiya Javayant UNQUALIFIED
David P BowleySpainIoni Bowcher NEGOTIATION
Aditya Y FigeroaFranceOnyama Limba NEW
Adams G PaprockiCanadaElwin Sharvill RENEWAL
Morrow B StockhamArgentinaAnna Fali NEGOTIATION
Kaitlin H GillianFranceAsiya Javayant NEW
Alejandro K BowleyArgentinaElwin Sharvill NEGOTIATION
Munro T GlickArgentinaAsiya Javayant RENEWAL
Murillo R RoysterIndiaOnyama Limba PROPOSAL
Murillo N GillianBrazilXuxue Feng PROPOSAL
Stacey K PoquetteUnited KingdomStephen Shaw NEW
Kadeem N OstroskyAustraliaXuxue Feng PROPOSAL
Faith F PoquetteAustraliaAmy Elsner RENEWAL
Juan S StockhamRussiaIoni Bowcher NEGOTIATION
Aditya W FollerCanadaAsiya Javayant NEW
Kaitlin G WaycottItalyIvan Magalhaes NEGOTIATION
Johnson L OldroydFranceIvan Magalhaes RENEWAL
Arvin Y NestleAustraliaAnna Fali NEW
Isabel R ChuiGermanyAmy Elsner NEGOTIATION
Stacey V RulapaughUnited KingdomOnyama Limba RENEWAL
Munro I SaylorsArgentinaOnyama Limba NEW
Wickens L CampainRussiaXuxue Feng NEW
Costa O DilliardIndiaStephen Shaw QUALIFIED
Murillo P NickaItalyAnna Fali PROPOSAL
Munro L FlosiCanadaStephen Shaw UNQUALIFIED
Aika J VenereGermanyBernardo Dominic PROPOSAL
Leon A NestleSpainOnyama Limba NEGOTIATION
Deepesh T GillianRussiaIoni Bowcher RENEWAL
Clifford L InouyeJapanOnyama Limba NEGOTIATION
Adams R SergiJapanIvan Magalhaes QUALIFIED
Leon C SlusarskiRussiaAnna Fali PROPOSAL
Costa I VenereBrazilIvan Magalhaes QUALIFIED
Costa Z SergiArgentinaAmy Elsner QUALIFIED
Greenwood Z MarrierAustraliaXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Morrow L WaycottFranceIvan Magalhaes RENEWAL
Darci Z NestleGermanyStephen Shaw NEGOTIATION
Izzy V OldroydIndiaAsiya Javayant PROPOSAL
Jefferson Q FerenczSpainAnna Fali PROPOSAL
Greenwood E DarakjyIndiaAnna Fali NEGOTIATION
Murillo F GauchoIndiaIoni Bowcher PROPOSAL
James D VenereIndiaIoni Bowcher NEW
Mujtaba X SchemmerFranceOnyama Limba UNQUALIFIED
Izzy J AmigonItalyBernardo Dominic UNQUALIFIED
Morrow E RimArgentinaOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley W KuskoRussia2024-05-04Chanay, Jeffrey A Esq RENEWAL6Amy Elsner
1001Mayumi A BowleyItaly2024-05-14Benton, John B Jr RENEWAL19Elwin Sharvill
1002Leon N MarrierArgentina2024-05-02Feltz Printing Service QUALIFIED79Ioni Bowcher
1003Leja G BowleyJapan2024-05-25Chemel, James L Cpa UNQUALIFIED22Bernardo Dominic
1004Francesco U FerenczGermany2024-05-25Chemel, James L Cpa NEW13Bernardo Dominic
1005Leja F NestleAustralia2024-05-12Benton, John B Jr RENEWAL88Bernardo Dominic
1006Aruna N TollnerArgentina2024-05-26Chanay, Jeffrey A Esq UNQUALIFIED70Elwin Sharvill
1007Misaki J BriddickArgentina2024-05-22Rousseaux, Michael Esq NEW8Amy Elsner
1008Ashley A GillianAustralia2024-05-27Rousseaux, Michael Esq NEW92Ioni Bowcher
1009Ricardo U ButtGermany2024-05-06Buckley Miller Wright NEW0Amy Elsner
1010Silvio T BriddickFrance2024-05-01Chemel, James L Cpa NEGOTIATION6Ioni Bowcher
1011Aditya S SaylorsAustralia2024-05-01Dorl, James J Esq NEW45Ivan Magalhaes
1012Misaki G SaylorsSpain2024-05-03Printing Dimensions NEW33Ioni Bowcher
1013Juan J SaylorsUnited Kingdom2024-05-17Rangoni Of Florence RENEWAL85Elwin Sharvill
1014Costa H CampainBrazil2024-05-10Morlong Associates UNQUALIFIED44Amy Elsner
1015Clifford G WhobreyIndia2024-05-27Feltz Printing Service PROPOSAL93Anna Fali
1016Jefferson H SchemmerItaly2024-05-16Buckley Miller Wright PROPOSAL65Onyama Limba
1017Ashley C GarufiSpain2024-05-21Feiner Bros RENEWAL84Ivan Magalhaes
1018Francesco I RulapaughCanada2024-04-28Morlong Associates UNQUALIFIED48Stephen Shaw
1019Leon E CaldareraSpain2024-05-14Chemel, James L Cpa NEW25Bernardo Dominic
1020Cody W KuskoUnited Kingdom2024-05-19Truhlar And Truhlar Attys PROPOSAL89Elwin Sharvill
1021Julie U RimSpain2024-05-03Morlong Associates RENEWAL12Anna Fali
1022Maria R GarufiSpain2024-05-27Chanay, Jeffrey A Esq QUALIFIED58Xuxue Feng
1023James I AlbaresFrance2024-05-18Rousseaux, Michael Esq NEGOTIATION1Asiya Javayant
1024Cody O RulapaughIndia2024-05-20Chemel, James L Cpa RENEWAL9Bernardo Dominic
1025Faith O ShinkoAustralia2024-05-17Chemel, James L Cpa PROPOSAL76Bernardo Dominic
1026Wickens S FigeroaGermany2024-05-17Feiner Bros PROPOSAL47Bernardo Dominic
1027Johnson W RimBrazil2024-05-14Rangoni Of Florence UNQUALIFIED99Stephen Shaw
1028Arvin A AlbaresGermany2024-05-27Commercial Press NEW56Anna Fali
1029Clifford R ChuiBrazil2024-05-10Buckley Miller Wright PROPOSAL14Anna Fali
1030Isabel T DarakjyArgentina2024-05-10Rousseaux, Michael Esq UNQUALIFIED7Asiya Javayant
1031Leja U GarufiIndia2024-05-23Truhlar And Truhlar Attys NEGOTIATION67Xuxue Feng
1032Aditya A OldroydSpain2024-05-26Morlong Associates NEW53Ioni Bowcher
1033Ivar B RimItaly2024-05-27Dorl, James J Esq RENEWAL60Bernardo Dominic
1034Maria H AmigonAustralia2024-04-30Printing Dimensions PROPOSAL54Asiya Javayant
1035Wickens N FigeroaSpain2024-05-01Truhlar And Truhlar Attys NEW61Asiya Javayant
1036Kadeem M ChuiIndia2024-05-07Printing Dimensions RENEWAL23Asiya Javayant
1037David X BriddickCanada2024-05-10Rousseaux, Michael Esq NEW54Ioni Bowcher
1038Leon N ButtItaly2024-05-03Morlong Associates UNQUALIFIED96Ivan Magalhaes
1039Murillo O OldroydArgentina2024-05-19Chanay, Jeffrey A Esq NEW55Ivan Magalhaes
1040Julie P PoquetteUnited Kingdom2024-05-10Chanay, Jeffrey A Esq QUALIFIED72Amy Elsner
1041Ashley I RimBrazil2024-04-29Dorl, James J Esq NEW44Onyama Limba
1042Ivar Y BologniaFrance2024-05-02King, Christopher A Esq PROPOSAL19Elwin Sharvill
1043Jennifer C MorascaFrance2024-05-13Dorl, James J Esq QUALIFIED42Onyama Limba
1044Emily N WieserGermany2024-05-15Chemel, James L Cpa RENEWAL51Xuxue Feng
1045Cody E PerinGermany2024-05-05Feltz Printing Service UNQUALIFIED9Anna Fali
1046Misaki Y ChuiRussia2024-05-02Rangoni Of Florence NEGOTIATION9Ioni Bowcher
1047Aditya W GauchoItaly2024-05-06Benton, John B Jr RENEWAL44Xuxue Feng
1048Maria W ShinkoCanada2024-05-06Feiner Bros PROPOSAL47Xuxue Feng
1049James P PerinUnited Kingdom2024-05-20Chemel, James L Cpa UNQUALIFIED80Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Faith A DilliardCanadaOnyama Limba PROPOSAL
Smith G StockhamUnited KingdomIvan Magalhaes NEGOTIATION
Claire C PaprockiCanadaStephen Shaw NEW
Adams U PaprockiRussiaIvan Magalhaes NEW
Ivar A MacleadFranceOnyama Limba NEW
Adams D PaprockiIndiaIoni Bowcher QUALIFIED
Jeanfrancois H MarrierIndiaBernardo Dominic PROPOSAL
Aika M InouyeUnited KingdomAnna Fali NEW
Ricardo O SaylorsBrazilStephen Shaw NEGOTIATION
Jeanfrancois H FigeroaSpainOnyama Limba PROPOSAL
Maisha W WieserAustraliaIvan Magalhaes PROPOSAL
David A DoeRussiaStephen Shaw RENEWAL
Aditya D GlickSpainStephen Shaw QUALIFIED
Mujtaba H KuskoJapanOnyama Limba NEW
Juan D AlbaresIndiaStephen Shaw NEW
Tony O WieserSpainAmy Elsner PROPOSAL
Juan N InouyeCanadaIoni Bowcher PROPOSAL
Antonio F MaletAustraliaBernardo Dominic RENEWAL
Aika H WieserFranceAsiya Javayant UNQUALIFIED
Alejandro V MorascaCanadaElwin Sharvill PROPOSAL
James G OldroydCanadaOnyama Limba NEW
Chavez D KolmetzIndiaStephen Shaw PROPOSAL
Stacey O MarrierFranceAsiya Javayant UNQUALIFIED
Isabel J PaprockiFranceStephen Shaw UNQUALIFIED
Sinclair Q PoquetteBrazilAmy Elsner NEGOTIATION
Tony D RulapaughRussiaStephen Shaw PROPOSAL
Kadeem T FigeroaAustraliaBernardo Dominic NEW
David B VenereUnited KingdomBernardo Dominic UNQUALIFIED
Nicolas M WaycottFranceBernardo Dominic RENEWAL
Ashley F GauchoRussiaXuxue Feng PROPOSAL
Ivar J GarufiRussiaIvan Magalhaes RENEWAL
Jennifer H DoeFranceStephen Shaw NEW
Alejandro D VocelkaCanadaIoni Bowcher NEW
Antonio W GlickFranceIvan Magalhaes PROPOSAL
Kaitlin A SchemmerFranceOnyama Limba RENEWAL
Mujtaba L GauchoGermanyAmy Elsner UNQUALIFIED
Sinclair L DilliardSpainStephen Shaw NEGOTIATION
Claire E WhobreyIndiaStephen Shaw QUALIFIED
Johnson L PerinArgentinaBernardo Dominic NEW
Chavez Q IturbideCanadaIoni Bowcher NEW
Sinclair X BologniaBrazilOnyama Limba QUALIFIED
Claire A ButtFranceIoni Bowcher QUALIFIED
Kadeem K GauchoItalyXuxue Feng PROPOSAL
Darci F GillianAustraliaOnyama Limba RENEWAL
Kaitlin B WaycottItalyAmy Elsner NEW
David L StensethArgentinaStephen Shaw NEGOTIATION
Aika Q BowleyItalyAnna Fali PROPOSAL
Darci V StensethGermanyAmy Elsner RENEWAL
Johnson B VocelkaGermanyOnyama Limba NEGOTIATION
Murillo W MaletArgentinaStephen Shaw UNQUALIFIED
Frozen Columns
Name
Aika L Poquette
Johnson C Royster
Maisha J Kolmetz
Alejandro U Venere
Faith C Butt
Cody R Chui
Jennifer C Stockham
Munro T Caudy
Rodrigues E Kolmetz
Murillo J Sergi
Julie A Campain
Morrow G Nestle
Adams G Ostrosky
Maisha G Nicka
Morrow D Dilliard
Juan A Butt
Aruna B Glick
Smith G Malet
Rodrigues W Ruta
Jennifer V Bowley
Antonio W Schemmer
Emily Y Sergi
Deepesh N Bolognia
Leja B Ruta
Rodrigues V Nicka
Silvio T Figeroa
Cody X Caldarera
Leon U Paprocki
Mujtaba U Ostrosky
Octavia E Whobrey
Emily X Whobrey
Greenwood F Gillian
Faith X Rim
Jennifer F Paprocki
Nicolas C Iturbide
Julie A Amigon
Aditya W Bowley
James B Poquette
Mayumi Q Gaucho
Johnson H Doe
Sinclair B Rim
Leon G Morasca
Silvio J Rim
Maria V Kolmetz
Juan F Nestle
Izzy S Nestle
Jefferson I Ferencz
Isabel W Maclead
Smith J Oldroyd
Octavia Y Garufi
IdCountryDate
1000Brazil2024-05-25
1001Australia2024-05-20
1002France2024-05-03
1003Russia2024-05-23
1004Germany2024-05-13
1005Australia2024-05-17
1006Brazil2024-05-02
1007Brazil2024-05-22
1008France2024-04-29
1009United Kingdom2024-05-27
1010Italy2024-05-18
1011India2024-05-03
1012Brazil2024-04-30
1013France2024-05-24
1014Russia2024-05-06
1015Australia2024-05-12
1016Brazil2024-05-04
1017Argentina2024-05-10
1018Japan2024-05-05
1019Australia2024-04-29
1020France2024-05-23
1021Brazil2024-05-06
1022Brazil2024-05-20
1023France2024-04-28
1024Italy2024-05-03
1025Australia2024-05-14
1026Canada2024-05-10
1027Argentina2024-05-19
1028Japan2024-05-19
1029Canada2024-05-23
1030Russia2024-04-30
1031United Kingdom2024-05-26
1032Australia2024-05-09
1033Japan2024-04-28
1034France2024-05-13
1035Germany2024-05-05
1036Italy2024-05-25
1037Argentina2024-05-06
1038Italy2024-05-18
1039India2024-05-20
1040Brazil2024-05-05
1041Brazil2024-04-28
1042India2024-05-11
1043Brazil2024-05-23
1044Spain2024-05-09
1045Spain2024-05-04
1046Canada2024-05-10
1047Argentina2024-05-14
1048Australia2024-05-15
1049Italy2024-05-08

On-Demand Data

NameIdCountryDate
Kadeem G Doe1000Argentina2024-05-16
Octavia R Figeroa1001Russia2024-05-16
Salvatore P Ruta1002Japan2024-05-10
Nicolas C Kusko1003Russia2024-05-10
Ashley N Campain1004Canada2024-05-27
Francesco Y Oldroyd1005India2024-05-02
Kaitlin L Schemmer1006Italy2024-04-28
Greenwood Q Wieser1007Spain2024-05-02
Cody A Marrier1008Russia2024-05-12
David H Bolognia1009Argentina2024-05-07
Arvin C Garufi1010Spain2024-05-26
Nicolas E Vocelka1011Russia2024-05-17
Wickens P Rulapaugh1012Germany2024-05-27
Alejandro B Sergi1013Italy2024-05-14
Jennifer B Inouye1014India2024-05-06
David T Poquette1015Japan2024-05-10
Aika A Tollner1016Italy2024-05-16
Misaki X Paprocki1017Germany2024-05-26
Faith E Bowley1018Spain2024-05-05
Smith O Dilliard1019Australia2024-05-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja Z ChuiUnited KingdomBernardo Dominic PROPOSAL
Chavez W GarufiCanadaStephen Shaw RENEWAL
Rodrigues Y StockhamGermanyOnyama Limba RENEWAL
Deepesh Q RoysterFranceAsiya Javayant RENEWAL
Kaitlin I CaudySpainElwin Sharvill UNQUALIFIED
Silvio G BologniaRussiaBernardo Dominic RENEWAL
Nicolas F TollnerGermanyAmy Elsner UNQUALIFIED
Juan B DarakjyRussiaOnyama Limba RENEWAL
Sinclair N FerenczIndiaBernardo Dominic PROPOSAL
Tony O RulapaughSpainAsiya Javayant PROPOSAL
Jefferson E SaylorsCanadaStephen Shaw QUALIFIED
Aditya M StockhamIndiaOnyama Limba NEW
Kaitlin M CampainFranceXuxue Feng RENEWAL
Darci V FerenczIndiaBernardo Dominic NEGOTIATION
Izzy Q KolmetzIndiaAnna Fali RENEWAL
Kaitlin D RoysterCanadaAmy Elsner NEGOTIATION
Claire C GlickGermanyAsiya Javayant RENEWAL
Munro M WieserUnited KingdomElwin Sharvill QUALIFIED
Darci H AlbaresUnited KingdomAsiya Javayant RENEWAL
Francesco J DilliardSpainAmy Elsner QUALIFIED
Sinclair P SaylorsJapanIvan Magalhaes UNQUALIFIED
Aditya L StockhamBrazilAnna Fali RENEWAL
Tony Y KuskoIndiaStephen Shaw QUALIFIED
Munro J GlickIndiaBernardo Dominic QUALIFIED
Octavia B FlosiBrazilAnna Fali NEW
Kadeem S NickaRussiaXuxue Feng QUALIFIED
Octavia B SaylorsRussiaAnna Fali UNQUALIFIED
Isabel I SergiSpainBernardo Dominic NEW
Munro V ShinkoAustraliaOnyama Limba NEW
Rodrigues Q KuskoGermanyAsiya Javayant PROPOSAL
Misaki S GillianArgentinaStephen Shaw RENEWAL
Juan Y MaletIndiaAnna Fali PROPOSAL
Izzy Q ButtArgentinaOnyama Limba QUALIFIED
Johnson K VocelkaFranceAmy Elsner RENEWAL
Sinclair M SaylorsAustraliaIvan Magalhaes RENEWAL
Jefferson Z AmigonRussiaIvan Magalhaes RENEWAL
Nicolas B GarufiSpainXuxue Feng PROPOSAL
Mujtaba K RutaArgentinaAmy Elsner UNQUALIFIED
Salvatore D OstroskyGermanyOnyama Limba NEGOTIATION
Aruna S RoysterIndiaIvan Magalhaes PROPOSAL

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