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
Jefferson S SaylorsItalyIoni Bowcher UNQUALIFIED
Claire X BowleyCanadaOnyama Limba PROPOSAL
Cody E GillianGermanyElwin Sharvill PROPOSAL
Deepesh S FigeroaGermanyStephen Shaw UNQUALIFIED
Morrow W NickaJapanIoni Bowcher QUALIFIED
Misaki J RimRussiaXuxue Feng PROPOSAL
Claire A MacleadCanadaAmy Elsner RENEWAL
Isabel X RulapaughBrazilStephen Shaw NEW
Mayumi E FerenczJapanBernardo Dominic QUALIFIED
Emily L DarakjyCanadaAsiya Javayant UNQUALIFIED
Munro H FerenczIndiaAsiya Javayant PROPOSAL
David Y FollerAustraliaAsiya Javayant QUALIFIED
Ivar N ShinkoIndiaAmy Elsner QUALIFIED
Julie W GauchoItalyAmy Elsner NEW
David D VenereGermanyStephen Shaw QUALIFIED
Izzy W WhobreyGermanyAnna Fali PROPOSAL
Isabel M FlosiArgentinaIoni Bowcher RENEWAL
Munro B BologniaRussiaAnna Fali RENEWAL
Arvin J PoquetteBrazilAnna Fali UNQUALIFIED
Francesco F RimIndiaAnna Fali NEW
Ricardo T OldroydArgentinaAmy Elsner UNQUALIFIED
Darci S ButtAustraliaOnyama Limba QUALIFIED
Jefferson C ShinkoJapanXuxue Feng RENEWAL
Octavia W MacleadUnited KingdomOnyama Limba RENEWAL
Maria P MaletAustraliaBernardo Dominic QUALIFIED
Faith E GauchoItalyXuxue Feng NEW
Jeanfrancois E IturbideBrazilXuxue Feng UNQUALIFIED
Francesco D GarufiItalyAsiya Javayant NEW
Julie G MorascaItalyAmy Elsner UNQUALIFIED
Jefferson H GlickSpainAnna Fali NEW
Misaki U NickaGermanyBernardo Dominic NEW
Mujtaba C WhobreyFranceIvan Magalhaes NEW
Aika T CaudyFranceBernardo Dominic UNQUALIFIED
Salvatore R SlusarskiSpainAsiya Javayant NEGOTIATION
Darci T FigeroaGermanyAmy Elsner QUALIFIED
Ricardo Q StensethItalyBernardo Dominic QUALIFIED
Maria Y PoquetteJapanBernardo Dominic NEGOTIATION
Munro U FigeroaGermanyElwin Sharvill NEGOTIATION
Leon E ShinkoRussiaAmy Elsner PROPOSAL
Nicolas G FigeroaUnited KingdomAsiya Javayant QUALIFIED
Claire E ChuiSpainElwin Sharvill PROPOSAL
Faith E MaletJapanBernardo Dominic QUALIFIED
Alejandro H PoquetteUnited KingdomAnna Fali QUALIFIED
Claire T InouyeIndiaAsiya Javayant UNQUALIFIED
Smith X NickaItalyIoni Bowcher NEGOTIATION
Kadeem N AmigonAustraliaXuxue Feng NEGOTIATION
Emily C WhobreyFranceOnyama Limba UNQUALIFIED
Aditya H DoeAustraliaStephen Shaw QUALIFIED
Smith K OldroydArgentinaIoni Bowcher UNQUALIFIED
Wickens K ChuiBrazilAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leja K DilliardGermanyOnyama Limba QUALIFIED
Maisha K RimAustraliaBernardo Dominic NEGOTIATION
Silvio A ButtRussiaAsiya Javayant PROPOSAL
Mujtaba F CampainAustraliaXuxue Feng NEGOTIATION
Aditya Z RulapaughCanadaBernardo Dominic RENEWAL
Sinclair F RulapaughRussiaOnyama Limba QUALIFIED
Morrow J StensethGermanyBernardo Dominic UNQUALIFIED
Kadeem D GillianFranceXuxue Feng NEGOTIATION
Jones U ShinkoAustraliaAmy Elsner QUALIFIED
Maisha K GlickArgentinaXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna H AmigonSpain2024-06-10Chanay, Jeffrey A Esq PROPOSAL16Onyama Limba
1001Ricardo N SlusarskiJapan2024-06-06Morlong Associates NEW63Ivan Magalhaes
1002Wickens H PaprockiItaly2024-05-30Commercial Press NEGOTIATION87Elwin Sharvill
1003Salvatore O IturbideIndia2024-06-03Feltz Printing Service QUALIFIED93Ivan Magalhaes
1004Misaki G FigeroaCanada2024-06-02Printing Dimensions NEW88Ioni Bowcher
1005Mujtaba C NestleArgentina2024-05-20Commercial Press PROPOSAL56Elwin Sharvill
1006Chavez J RimCanada2024-06-11Chapman, Ross E Esq UNQUALIFIED99Onyama Limba
1007Maria J IturbideArgentina2024-05-23Chemel, James L Cpa NEGOTIATION6Xuxue Feng
1008Kadeem P PaprockiSpain2024-05-31Printing Dimensions PROPOSAL43Xuxue Feng
1009Misaki R InouyeFrance2024-05-22Chapman, Ross E Esq QUALIFIED68Bernardo Dominic
1010Claire R DarakjySpain2024-05-30Chapman, Ross E Esq UNQUALIFIED36Xuxue Feng
1011Salvatore H MaletIndia2024-05-23Chapman, Ross E Esq UNQUALIFIED46Xuxue Feng
1012Aditya B ButtJapan2024-05-25Feiner Bros RENEWAL77Asiya Javayant
1013Izzy E AmigonSpain2024-05-30Chemel, James L Cpa UNQUALIFIED84Anna Fali
1014Jennifer U RimJapan2024-05-28Chapman, Ross E Esq QUALIFIED92Anna Fali
1015Chavez G AmigonJapan2024-06-08Chapman, Ross E Esq UNQUALIFIED93Onyama Limba
1016Cody K DarakjyJapan2024-05-27Printing Dimensions RENEWAL42Onyama Limba
1017Silvio I PaprockiAustralia2024-06-07Rousseaux, Michael Esq RENEWAL14Ivan Magalhaes
1018Isabel R AmigonUnited Kingdom2024-06-05Benton, John B Jr PROPOSAL94Amy Elsner
1019Munro V FigeroaArgentina2024-06-11Rousseaux, Michael Esq RENEWAL52Anna Fali
1020Wickens U PoquetteBrazil2024-06-12Dorl, James J Esq RENEWAL39Elwin Sharvill
1021Antonio D PoquetteItaly2024-06-18Rousseaux, Michael Esq RENEWAL31Anna Fali
1022Darci E FigeroaGermany2024-06-03Rangoni Of Florence NEW50Anna Fali
1023Octavia C AlbaresSpain2024-05-25Printing Dimensions QUALIFIED43Ioni Bowcher
1024Salvatore Z ShinkoCanada2024-05-27King, Christopher A Esq RENEWAL18Onyama Limba
1025Clifford B NestleCanada2024-05-30Chemel, James L Cpa NEW82Bernardo Dominic
1026Ashley B VocelkaAustralia2024-05-24Rangoni Of Florence NEW31Asiya Javayant
1027Ivar R ShinkoFrance2024-06-08Feiner Bros UNQUALIFIED58Ivan Magalhaes
1028Greenwood K FlosiSpain2024-06-09King, Christopher A Esq RENEWAL69Xuxue Feng
1029Jennifer H FlosiArgentina2024-06-15Chanay, Jeffrey A Esq QUALIFIED11Stephen Shaw
1030Maisha X KolmetzCanada2024-06-17Morlong Associates PROPOSAL11Stephen Shaw
1031Maisha J MacleadRussia2024-05-24Chemel, James L Cpa PROPOSAL84Xuxue Feng
1032Murillo Z RimArgentina2024-05-29Chanay, Jeffrey A Esq QUALIFIED51Stephen Shaw
1033Clifford Z FlosiArgentina2024-05-28Commercial Press NEW86Elwin Sharvill
1034Jennifer Y TollnerArgentina2024-05-26King, Christopher A Esq PROPOSAL90Ivan Magalhaes
1035Claire C MaletJapan2024-06-04Printing Dimensions RENEWAL73Stephen Shaw
1036Clifford V StensethItaly2024-05-29Rangoni Of Florence NEGOTIATION52Amy Elsner
1037Juan W AmigonSpain2024-06-08Buckley Miller Wright RENEWAL22Asiya Javayant
1038Stacey T InouyeBrazil2024-05-29Commercial Press QUALIFIED79Stephen Shaw
1039Claire C ShinkoUnited Kingdom2024-06-18Chemel, James L Cpa NEW84Bernardo Dominic
1040Mayumi Z WaycottItaly2024-06-03Truhlar And Truhlar Attys RENEWAL47Xuxue Feng
1041Aika B KolmetzUnited Kingdom2024-06-09Chanay, Jeffrey A Esq PROPOSAL70Bernardo Dominic
1042Julie K RimGermany2024-05-28Rousseaux, Michael Esq RENEWAL86Ivan Magalhaes
1043Izzy O VocelkaIndia2024-05-29Feiner Bros NEW54Amy Elsner
1044Mujtaba V RutaUnited Kingdom2024-06-02Feltz Printing Service QUALIFIED45Asiya Javayant
1045Jeanfrancois R CaudyUnited Kingdom2024-06-06Printing Dimensions RENEWAL7Ioni Bowcher
1046Deepesh U PerinIndia2024-06-16Feiner Bros UNQUALIFIED92Anna Fali
1047Aika H GlickAustralia2024-06-14Truhlar And Truhlar Attys RENEWAL94Stephen Shaw
1048Ricardo R ChuiCanada2024-06-03Buckley Miller Wright NEGOTIATION27Ivan Magalhaes
1049Maisha B FlosiFrance2024-06-12Rangoni Of Florence QUALIFIED88Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Alejandro J GlickAustraliaIoni Bowcher NEW
Julie V OldroydCanadaOnyama Limba RENEWAL
Adams P NickaJapanAnna Fali UNQUALIFIED
Maria J DoeBrazilStephen Shaw RENEWAL
Misaki U MaletIndiaAmy Elsner NEGOTIATION
Stacey P RoysterJapanAnna Fali QUALIFIED
Murillo C NickaJapanAsiya Javayant NEGOTIATION
Tony L ShinkoRussiaXuxue Feng UNQUALIFIED
Leon V SergiBrazilBernardo Dominic NEW
Smith B FerenczAustraliaOnyama Limba NEGOTIATION
Murillo E DilliardItalyStephen Shaw NEGOTIATION
Octavia W ButtArgentinaStephen Shaw QUALIFIED
Kadeem L TollnerAustraliaIoni Bowcher NEGOTIATION
Greenwood R MaletArgentinaAsiya Javayant QUALIFIED
Stacey G CaldareraGermanyAsiya Javayant QUALIFIED
Adams Y GlickUnited KingdomAnna Fali UNQUALIFIED
Leja S BriddickBrazilIoni Bowcher RENEWAL
Emily T MaletSpainOnyama Limba QUALIFIED
Jones S CaudyIndiaXuxue Feng UNQUALIFIED
Smith S DilliardArgentinaAnna Fali QUALIFIED
Greenwood T FerenczGermanyOnyama Limba NEW
Julie O GlickJapanBernardo Dominic QUALIFIED
Juan G IturbideSpainXuxue Feng NEGOTIATION
Juan O ShinkoArgentinaOnyama Limba QUALIFIED
Sinclair M FlosiArgentinaAmy Elsner PROPOSAL
Francesco A FollerItalyAmy Elsner UNQUALIFIED
Jefferson I AlbaresJapanBernardo Dominic NEW
Clifford N FlosiAustraliaAmy Elsner PROPOSAL
Francesco T NestleRussiaXuxue Feng NEGOTIATION
Jefferson H RulapaughAustraliaAsiya Javayant NEGOTIATION
Kadeem Z ButtItalyXuxue Feng PROPOSAL
Isabel W StensethFranceBernardo Dominic PROPOSAL
Izzy S RutaSpainStephen Shaw RENEWAL
Tony Q FlosiIndiaIoni Bowcher QUALIFIED
Jennifer A MaletCanadaAnna Fali RENEWAL
Izzy L DilliardCanadaXuxue Feng NEW
Sinclair M NickaBrazilIoni Bowcher RENEWAL
Morrow O SaylorsUnited KingdomStephen Shaw NEW
Aditya F StockhamUnited KingdomStephen Shaw RENEWAL
Jones Y WaycottGermanyIoni Bowcher NEGOTIATION
Tony N FlosiGermanyOnyama Limba QUALIFIED
Maria R RoysterUnited KingdomAmy Elsner RENEWAL
Aika Q BriddickAustraliaStephen Shaw PROPOSAL
Isabel E RutaArgentinaIoni Bowcher NEGOTIATION
Jones V FlosiRussiaAsiya Javayant PROPOSAL
Claire R MacleadArgentinaXuxue Feng PROPOSAL
Morrow G PerinBrazilStephen Shaw UNQUALIFIED
Maisha N BowleySpainOnyama Limba PROPOSAL
Leon K SergiCanadaIvan Magalhaes QUALIFIED
David S CaudyItalyAnna Fali NEW
Frozen Columns
Name
Misaki S Chui
Murillo N Whobrey
Ricardo E Albares
Ricardo E Foller
Aruna X Iturbide
Tony P Rim
Aruna U Royster
Clifford H Butt
Wickens G Caudy
Johnson B Whobrey
Isabel W Flosi
Clifford P Campain
Alejandro B Campain
Jeanfrancois Y Waycott
Deepesh V Schemmer
Alejandro A Foller
Adams H Marrier
Ivar N Malet
Sinclair G Garufi
Darci T Waycott
Mujtaba Q Saylors
Maria G Morasca
Alejandro W Malet
Chavez F Iturbide
Maria G Vocelka
Greenwood Y Oldroyd
Leon S Figeroa
Kadeem I Vocelka
Claire D Malet
Ricardo Q Gillian
Mujtaba X Bowley
Claire T Albares
Alejandro G Figeroa
Wickens I Waycott
Stacey M Flosi
Smith U Garufi
Adams D Bowley
Sinclair T Albares
Johnson U Maclead
Misaki I Sergi
Aditya U Butt
Octavia J Stockham
Jeanfrancois U Paprocki
Nicolas C Tollner
Adams G Bowley
Julie U Glick
David K Rim
Darci U Stenseth
Jefferson T Royster
Claire N Whobrey
IdCountryDate
1000India2024-06-10
1001United Kingdom2024-05-24
1002Argentina2024-06-13
1003Brazil2024-06-18
1004Australia2024-06-18
1005Brazil2024-05-29
1006Canada2024-06-07
1007United Kingdom2024-06-06
1008Argentina2024-06-15
1009Spain2024-05-25
1010France2024-05-20
1011Italy2024-06-02
1012Canada2024-06-04
1013Brazil2024-06-17
1014Italy2024-05-20
1015Argentina2024-06-17
1016India2024-05-28
1017Brazil2024-05-31
1018Canada2024-06-12
1019Argentina2024-05-21
1020Australia2024-05-24
1021Brazil2024-06-16
1022Japan2024-06-11
1023Japan2024-05-24
1024Russia2024-06-12
1025Germany2024-05-26
1026Italy2024-06-04
1027Germany2024-05-26
1028Italy2024-06-10
1029Australia2024-06-16
1030Italy2024-05-30
1031Germany2024-06-13
1032Italy2024-06-03
1033India2024-05-26
1034United Kingdom2024-06-04
1035Germany2024-06-15
1036Argentina2024-06-04
1037Spain2024-06-13
1038Brazil2024-06-12
1039Canada2024-06-02
1040Brazil2024-06-11
1041Spain2024-05-24
1042Germany2024-06-15
1043Italy2024-05-28
1044Brazil2024-05-30
1045India2024-05-26
1046Italy2024-05-22
1047Canada2024-05-22
1048Spain2024-06-07
1049Canada2024-06-09

On-Demand Data

NameIdCountryDate
Juan I Venere1000United Kingdom2024-06-01
Claire J Darakjy1001France2024-06-16
Claire O Stockham1002India2024-05-31
Stacey I Morasca1003Italy2024-05-27
Misaki S Stockham1004Japan2024-05-30
Deepesh Y Caudy1005United Kingdom2024-06-12
Antonio J Garufi1006Argentina2024-06-12
Izzy A Dilliard1007Canada2024-05-31
Juan W Caldarera1008Australia2024-06-18
Maisha C Dilliard1009Spain2024-06-16
Izzy F Figeroa1010Russia2024-06-16
Adams O Ostrosky1011Japan2024-06-17
Arvin O Butt1012Italy2024-06-08
Antonio C Wieser1013India2024-05-20
Silvio W Albares1014Japan2024-05-20
Isabel N Stockham1015Australia2024-05-25
Arvin N Inouye1016United Kingdom2024-06-01
Faith M Kusko1017Canada2024-06-16
Maria S Butt1018Brazil2024-06-16
Julie C Malet1019Japan2024-06-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kadeem R MacleadBrazilAsiya Javayant RENEWAL
Wickens X MaletFranceOnyama Limba QUALIFIED
Izzy Q AmigonIndiaElwin Sharvill QUALIFIED
Smith I FigeroaGermanyOnyama Limba QUALIFIED
Maisha T SchemmerItalyIoni Bowcher UNQUALIFIED
David T VenereCanadaIvan Magalhaes PROPOSAL
Mayumi Q FigeroaJapanIvan Magalhaes NEW
Adams K FollerGermanyAsiya Javayant NEGOTIATION
Octavia G IturbideCanadaOnyama Limba NEGOTIATION
Kadeem I FerenczItalyAsiya Javayant PROPOSAL
Mayumi D RoysterGermanyBernardo Dominic UNQUALIFIED
Ivar N RulapaughFranceOnyama Limba PROPOSAL
Silvio L AlbaresSpainOnyama Limba NEW
Ivar I MaletBrazilAnna Fali NEGOTIATION
Misaki S DilliardAustraliaAsiya Javayant NEGOTIATION
Jeanfrancois I StensethAustraliaOnyama Limba QUALIFIED
Jeanfrancois D ButtCanadaAnna Fali PROPOSAL
Mujtaba P VocelkaBrazilStephen Shaw UNQUALIFIED
Aruna P RutaIndiaIvan Magalhaes NEGOTIATION
Jones G KuskoSpainOnyama Limba NEW
Stacey L DarakjyFranceAsiya Javayant UNQUALIFIED
Mayumi R ButtSpainXuxue Feng PROPOSAL
Clifford I MaletCanadaStephen Shaw UNQUALIFIED
Antonio D ButtCanadaIoni Bowcher PROPOSAL
Aruna E ButtAustraliaStephen Shaw PROPOSAL
David F RoysterItalyIoni Bowcher PROPOSAL
Silvio K PoquetteFranceIvan Magalhaes QUALIFIED
Misaki A GarufiJapanBernardo Dominic NEGOTIATION
Jennifer Q MarrierJapanElwin Sharvill NEGOTIATION
Morrow J PaprockiArgentinaOnyama Limba PROPOSAL
Rodrigues E RoysterAustraliaXuxue Feng RENEWAL
Misaki A DoeBrazilElwin Sharvill UNQUALIFIED
Aika X PaprockiCanadaXuxue Feng RENEWAL
Antonio D VocelkaSpainIoni Bowcher RENEWAL
Murillo Y ChuiFranceAnna Fali PROPOSAL
Leja M VenereAustraliaIoni Bowcher RENEWAL
Adams E StockhamIndiaAnna Fali PROPOSAL
Aruna L StensethIndiaOnyama Limba RENEWAL
Ashley C BowleyUnited KingdomStephen Shaw RENEWAL
Ashley E WieserArgentinaAmy Elsner NEGOTIATION

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