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
Darci Y CaldareraArgentinaElwin Sharvill RENEWAL
Darci C ChuiArgentinaBernardo Dominic QUALIFIED
Rodrigues O FollerGermanyBernardo Dominic UNQUALIFIED
Rodrigues B ShinkoFranceIoni Bowcher NEW
Misaki V AmigonUnited KingdomOnyama Limba NEGOTIATION
Claire H OstroskySpainAmy Elsner RENEWAL
Kaitlin B StensethIndiaAmy Elsner NEW
Octavia A RoysterBrazilElwin Sharvill NEGOTIATION
Ashley A GillianGermanyXuxue Feng UNQUALIFIED
Ricardo M PerinSpainBernardo Dominic NEGOTIATION
Faith O IturbideBrazilOnyama Limba UNQUALIFIED
Murillo A WieserItalyStephen Shaw NEGOTIATION
Misaki Q MarrierItalyAnna Fali UNQUALIFIED
Jennifer L DilliardCanadaAsiya Javayant NEGOTIATION
Darci W SaylorsIndiaAnna Fali RENEWAL
Leon U GillianRussiaBernardo Dominic UNQUALIFIED
Cody I OldroydArgentinaOnyama Limba RENEWAL
Maisha U FollerItalyAsiya Javayant PROPOSAL
Aruna I MorascaIndiaElwin Sharvill NEW
Ricardo Z FlosiItalyIvan Magalhaes QUALIFIED
Munro S InouyeSpainBernardo Dominic UNQUALIFIED
Leja F SchemmerUnited KingdomElwin Sharvill RENEWAL
Isabel F WaycottCanadaElwin Sharvill NEGOTIATION
Mujtaba R DoeFranceStephen Shaw NEW
Faith Q FerenczCanadaIoni Bowcher QUALIFIED
Jeanfrancois W MorascaCanadaIoni Bowcher NEW
Julie A MaletSpainAmy Elsner PROPOSAL
Maria C RutaItalyBernardo Dominic UNQUALIFIED
Alejandro D RimRussiaBernardo Dominic PROPOSAL
Ricardo M KuskoSpainXuxue Feng RENEWAL
Leon X ChuiFranceBernardo Dominic RENEWAL
Nicolas X OstroskyUnited KingdomBernardo Dominic PROPOSAL
Antonio I WhobreyCanadaAmy Elsner NEW
Salvatore E VenereFranceIvan Magalhaes NEGOTIATION
Munro P OstroskyBrazilElwin Sharvill QUALIFIED
Juan C InouyeIndiaStephen Shaw UNQUALIFIED
Jones Z SaylorsSpainIvan Magalhaes PROPOSAL
Jefferson H AmigonRussiaOnyama Limba NEGOTIATION
Aika B DoeGermanyBernardo Dominic RENEWAL
Claire G FlosiBrazilElwin Sharvill QUALIFIED
Jennifer C PerinIndiaBernardo Dominic QUALIFIED
Emily B BologniaRussiaBernardo Dominic NEW
Antonio Y BriddickIndiaElwin Sharvill PROPOSAL
Kadeem D AlbaresArgentinaOnyama Limba PROPOSAL
Greenwood A DilliardRussiaElwin Sharvill NEW
Juan S StockhamArgentinaIoni Bowcher PROPOSAL
Isabel B NestleGermanyXuxue Feng QUALIFIED
Stacey M GauchoSpainBernardo Dominic RENEWAL
Silvio A SergiItalyElwin Sharvill QUALIFIED
Aika B BologniaIndiaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Leon E MaletUnited KingdomAnna Fali PROPOSAL
Emily J RoysterAustraliaElwin Sharvill NEGOTIATION
Maisha U RulapaughGermanyIvan Magalhaes NEW
David G RimCanadaAmy Elsner NEGOTIATION
Chavez P RimBrazilBernardo Dominic QUALIFIED
Maria B WaycottArgentinaIoni Bowcher QUALIFIED
Maisha C NestleItalyXuxue Feng PROPOSAL
Nicolas Q RutaCanadaOnyama Limba NEGOTIATION
Mayumi C FollerJapanStephen Shaw UNQUALIFIED
Greenwood I RimSpainOnyama Limba RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore Q PaprockiUnited Kingdom2024-06-12Commercial Press UNQUALIFIED41Stephen Shaw
1001Nicolas D FerenczIndia2024-05-27Feiner Bros UNQUALIFIED43Amy Elsner
1002Arvin Y FerenczItaly2024-06-08Truhlar And Truhlar Attys NEW92Amy Elsner
1003Morrow F RulapaughIndia2024-06-05Commercial Press NEW30Ioni Bowcher
1004Antonio F DarakjyFrance2024-05-22Morlong Associates PROPOSAL62Onyama Limba
1005Salvatore K BowleySpain2024-05-16Chapman, Ross E Esq QUALIFIED13Stephen Shaw
1006Misaki I ChuiGermany2024-05-27Benton, John B Jr PROPOSAL24Ioni Bowcher
1007Mujtaba O FollerCanada2024-05-22Morlong Associates NEGOTIATION61Elwin Sharvill
1008Ivar P BologniaArgentina2024-06-11Printing Dimensions PROPOSAL67Asiya Javayant
1009Isabel F KuskoFrance2024-05-24Dorl, James J Esq QUALIFIED67Asiya Javayant
1010Octavia J AlbaresIndia2024-06-10Chemel, James L Cpa NEW1Stephen Shaw
1011Clifford K MorascaAustralia2024-05-28Dorl, James J Esq NEW88Elwin Sharvill
1012Murillo J VenereRussia2024-06-07Rousseaux, Michael Esq RENEWAL11Onyama Limba
1013Francesco D KuskoBrazil2024-05-16Dorl, James J Esq NEW53Ioni Bowcher
1014Aditya D ButtUnited Kingdom2024-06-09Chapman, Ross E Esq RENEWAL56Stephen Shaw
1015Aika L BowleyBrazil2024-06-09Rousseaux, Michael Esq NEW9Onyama Limba
1016Izzy Q VocelkaFrance2024-05-30Rangoni Of Florence QUALIFIED54Ivan Magalhaes
1017Claire O ShinkoGermany2024-06-03Dorl, James J Esq NEW12Asiya Javayant
1018Clifford X NickaIndia2024-05-30Dorl, James J Esq UNQUALIFIED95Ivan Magalhaes
1019Aditya N AlbaresFrance2024-06-11Printing Dimensions NEGOTIATION47Anna Fali
1020Maisha Q WieserAustralia2024-05-19Commercial Press NEGOTIATION72Elwin Sharvill
1021Nicolas X GillianIndia2024-05-27Feltz Printing Service QUALIFIED1Elwin Sharvill
1022Deepesh N AmigonAustralia2024-05-31Rangoni Of Florence NEGOTIATION42Ivan Magalhaes
1023Mujtaba T GarufiJapan2024-05-19Feltz Printing Service UNQUALIFIED88Elwin Sharvill
1024Kadeem L SaylorsFrance2024-05-15King, Christopher A Esq RENEWAL98Asiya Javayant
1025Costa E OstroskyCanada2024-05-18Commercial Press PROPOSAL11Amy Elsner
1026Maria W AmigonJapan2024-06-10Truhlar And Truhlar Attys RENEWAL77Amy Elsner
1027Nicolas C FlosiGermany2024-06-12Truhlar And Truhlar Attys NEGOTIATION53Ioni Bowcher
1028Rodrigues Q CaudyFrance2024-06-12Truhlar And Truhlar Attys NEW2Elwin Sharvill
1029Costa M GillianJapan2024-05-22Commercial Press RENEWAL91Amy Elsner
1030Rodrigues F BowleyFrance2024-06-08Chemel, James L Cpa QUALIFIED70Ivan Magalhaes
1031Murillo K CaldareraItaly2024-05-26Rangoni Of Florence NEW35Amy Elsner
1032Silvio C IturbideItaly2024-05-15Benton, John B Jr QUALIFIED72Ioni Bowcher
1033Smith N SaylorsJapan2024-05-20Morlong Associates QUALIFIED25Elwin Sharvill
1034Aruna W FlosiBrazil2024-05-30Chemel, James L Cpa NEGOTIATION83Bernardo Dominic
1035Aditya V ShinkoCanada2024-05-30Benton, John B Jr QUALIFIED9Elwin Sharvill
1036Faith C RulapaughSpain2024-05-30Truhlar And Truhlar Attys QUALIFIED37Stephen Shaw
1037Izzy I RutaCanada2024-06-09King, Christopher A Esq PROPOSAL59Amy Elsner
1038Tony R TollnerSpain2024-05-18Commercial Press RENEWAL92Bernardo Dominic
1039Leon H SchemmerAustralia2024-06-05Dorl, James J Esq NEW44Onyama Limba
1040Smith K IturbideAustralia2024-05-22Printing Dimensions PROPOSAL17Asiya Javayant
1041Julie W WaycottGermany2024-05-16Commercial Press RENEWAL56Anna Fali
1042Maria F GauchoItaly2024-06-02Morlong Associates NEW1Stephen Shaw
1043Maisha P AlbaresGermany2024-05-20Feltz Printing Service NEGOTIATION46Elwin Sharvill
1044Murillo S NickaUnited Kingdom2024-06-12Printing Dimensions NEW12Ivan Magalhaes
1045Adams B SergiIndia2024-06-05Feltz Printing Service UNQUALIFIED89Ivan Magalhaes
1046Juan D ShinkoItaly2024-05-25Chanay, Jeffrey A Esq PROPOSAL77Stephen Shaw
1047Jennifer L VocelkaCanada2024-06-01Rousseaux, Michael Esq NEW6Ioni Bowcher
1048Kaitlin K GarufiJapan2024-06-01Rangoni Of Florence UNQUALIFIED6Anna Fali
1049Jefferson O PerinSpain2024-06-10Morlong Associates PROPOSAL24Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Arvin C FigeroaIndiaXuxue Feng NEW
Aditya O SergiArgentinaOnyama Limba RENEWAL
Ashley A ShinkoFranceIvan Magalhaes RENEWAL
Silvio F ChuiUnited KingdomIoni Bowcher PROPOSAL
Nicolas S FigeroaAustraliaOnyama Limba NEW
Faith M MacleadJapanIvan Magalhaes PROPOSAL
Antonio U RimCanadaIoni Bowcher QUALIFIED
Misaki M CaudyAustraliaStephen Shaw QUALIFIED
Emily Q KolmetzSpainOnyama Limba RENEWAL
Emily H PerinAustraliaStephen Shaw RENEWAL
Ashley C CaudyArgentinaBernardo Dominic NEGOTIATION
Clifford E MaletRussiaIoni Bowcher NEW
Rodrigues K FerenczRussiaIoni Bowcher NEW
Juan Q SlusarskiUnited KingdomXuxue Feng NEW
Darci P CampainCanadaAsiya Javayant PROPOSAL
Isabel A IturbideRussiaOnyama Limba PROPOSAL
Kaitlin X CaudyBrazilStephen Shaw UNQUALIFIED
Johnson N DilliardRussiaStephen Shaw NEW
Arvin A GauchoCanadaOnyama Limba NEW
James Q GillianIndiaElwin Sharvill NEGOTIATION
Misaki P GillianJapanAnna Fali RENEWAL
Smith X FollerRussiaBernardo Dominic UNQUALIFIED
Leja Y WieserItalyAnna Fali UNQUALIFIED
Ashley E PaprockiArgentinaAnna Fali PROPOSAL
Emily L GillianCanadaAmy Elsner PROPOSAL
Emily U VenereRussiaAmy Elsner UNQUALIFIED
Sinclair N RoysterJapanIoni Bowcher NEW
Maisha E ButtSpainBernardo Dominic UNQUALIFIED
Antonio Z VocelkaGermanyElwin Sharvill QUALIFIED
David U MaletFranceStephen Shaw NEGOTIATION
Ashley H VenereCanadaIoni Bowcher UNQUALIFIED
Mayumi A MaletIndiaXuxue Feng QUALIFIED
Silvio Z GlickUnited KingdomAsiya Javayant RENEWAL
Claire Y StensethIndiaXuxue Feng NEW
Claire B WieserBrazilAsiya Javayant NEGOTIATION
Adams V GarufiCanadaAmy Elsner NEW
Tony S GarufiAustraliaAsiya Javayant RENEWAL
James U PerinBrazilBernardo Dominic UNQUALIFIED
Smith Y RutaRussiaElwin Sharvill NEGOTIATION
Emily C BriddickFranceOnyama Limba UNQUALIFIED
Darci R NestleJapanAmy Elsner UNQUALIFIED
Rodrigues U RulapaughFranceIoni Bowcher QUALIFIED
Deepesh T VenereBrazilAnna Fali RENEWAL
Murillo Q GlickSpainStephen Shaw NEW
Deepesh O MarrierJapanAnna Fali UNQUALIFIED
Darci V MaletItalyElwin Sharvill RENEWAL
Johnson X BologniaSpainXuxue Feng PROPOSAL
Mujtaba V KuskoFranceAmy Elsner RENEWAL
Aditya C PoquetteAustraliaXuxue Feng NEW
Francesco R CaldareraRussiaBernardo Dominic UNQUALIFIED
Frozen Columns
Name
James L Stenseth
Smith I Garufi
Kaitlin H Caudy
Kaitlin J Bolognia
Aika X Gillian
Antonio L Perin
Isabel I Saylors
Aika U Paprocki
Izzy A Perin
Octavia Q Foller
James L Briddick
Salvatore V Kusko
Stacey V Gillian
Maria W Butt
Julie Y Malet
Morrow B Caldarera
Cody Q Bolognia
Mujtaba Q Briddick
Smith U Ostrosky
Smith P Maclead
Darci H Royster
Misaki O Nicka
Juan O Poquette
Emily S Malet
Alejandro U Nicka
Maisha X Nicka
Adams P Kolmetz
Arvin P Malet
Mayumi R Slusarski
Antonio U Whobrey
Faith R Venere
Kadeem H Glick
Juan W Nicka
David N Stockham
Alejandro Y Poquette
Costa K Inouye
Costa C Gaucho
Tony X Marrier
Francesco Q Malet
Wickens D Ostrosky
Deepesh K Malet
Arvin M Wieser
Isabel X Gaucho
Maisha L Amigon
Silvio X Poquette
Rodrigues F Poquette
Maria J Whobrey
Aruna Q Bolognia
Emily I Poquette
Juan D Ostrosky
IdCountryDate
1000Japan2024-05-29
1001India2024-05-23
1002Australia2024-05-16
1003Australia2024-06-02
1004Italy2024-05-27
1005Australia2024-06-05
1006United Kingdom2024-06-03
1007Germany2024-05-21
1008Brazil2024-05-28
1009United Kingdom2024-06-02
1010Germany2024-06-09
1011Canada2024-05-26
1012Australia2024-05-19
1013Canada2024-06-02
1014Argentina2024-06-07
1015Brazil2024-05-26
1016India2024-06-06
1017Spain2024-05-23
1018Japan2024-05-21
1019France2024-06-10
1020Spain2024-05-26
1021Australia2024-06-05
1022Argentina2024-05-25
1023United Kingdom2024-06-02
1024Australia2024-05-22
1025France2024-05-24
1026India2024-06-03
1027Spain2024-06-10
1028India2024-06-01
1029India2024-06-08
1030United Kingdom2024-05-30
1031Russia2024-05-18
1032Argentina2024-05-26
1033Italy2024-05-24
1034United Kingdom2024-05-23
1035Russia2024-06-03
1036Argentina2024-05-20
1037Spain2024-05-22
1038United Kingdom2024-06-11
1039Italy2024-05-27
1040Argentina2024-05-26
1041Russia2024-05-25
1042Australia2024-06-11
1043Australia2024-06-04
1044Argentina2024-05-25
1045France2024-06-08
1046Russia2024-06-13
1047United Kingdom2024-05-18
1048Japan2024-05-19
1049Russia2024-05-15

On-Demand Data

NameIdCountryDate
Salvatore K Chui1000Australia2024-05-21
Jefferson Z Caudy1001United Kingdom2024-05-31
Leja N Ostrosky1002India2024-06-11
Faith E Oldroyd1003Spain2024-06-13
Ashley Y Rulapaugh1004United Kingdom2024-05-29
Wickens S Kusko1005Australia2024-05-27
Kadeem A Sergi1006Australia2024-05-31
Isabel D Stenseth1007Argentina2024-05-21
Murillo X Wieser1008United Kingdom2024-06-08
Aditya K Venere1009Russia2024-05-26
Isabel R Dilliard1010Argentina2024-06-01
Izzy P Nestle1011Russia2024-06-02
Claire W Whobrey1012Germany2024-05-18
Stacey R Nestle1013Brazil2024-05-20
Jennifer C Sergi1014Russia2024-05-21
David Y Dilliard1015Canada2024-05-22
Silvio Z Sergi1016Russia2024-06-05
Johnson R Stenseth1017Italy2024-05-26
Faith P Caldarera1018India2024-05-15
Jefferson U Sergi1019Japan2024-05-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey A SergiGermanyXuxue Feng UNQUALIFIED
Ricardo M MarrierUnited KingdomAmy Elsner RENEWAL
Izzy R KuskoIndiaBernardo Dominic RENEWAL
Johnson R VenereCanadaIoni Bowcher NEGOTIATION
Francesco C AmigonRussiaStephen Shaw PROPOSAL
Alejandro O SaylorsItalyStephen Shaw UNQUALIFIED
Maria Z FigeroaGermanyAmy Elsner UNQUALIFIED
Munro I WhobreyArgentinaIoni Bowcher NEW
Antonio S FigeroaRussiaElwin Sharvill NEW
Isabel J NestleSpainIoni Bowcher NEW
Faith L DarakjyArgentinaBernardo Dominic NEGOTIATION
David L MorascaUnited KingdomBernardo Dominic QUALIFIED
Isabel P SchemmerItalyAsiya Javayant PROPOSAL
Tony T ShinkoFranceAsiya Javayant UNQUALIFIED
Sinclair N VenereRussiaIoni Bowcher NEGOTIATION
Wickens M FigeroaUnited KingdomAnna Fali PROPOSAL
Leja W GillianSpainAmy Elsner RENEWAL
Misaki V BowleyRussiaElwin Sharvill QUALIFIED
Johnson M MacleadFranceAnna Fali PROPOSAL
Ricardo M ShinkoSpainAnna Fali PROPOSAL
Maisha M SergiArgentinaAmy Elsner NEGOTIATION
James T StensethJapanBernardo Dominic RENEWAL
Tony S FerenczJapanOnyama Limba NEGOTIATION
David S NickaRussiaXuxue Feng QUALIFIED
Cody F CaldareraUnited KingdomElwin Sharvill UNQUALIFIED
Costa L OldroydBrazilStephen Shaw NEW
Claire E DoeFranceOnyama Limba NEGOTIATION
Mayumi W GarufiItalyAmy Elsner PROPOSAL
Kaitlin E FerenczGermanyAmy Elsner PROPOSAL
Ivar W BologniaItalyAnna Fali NEW
Julie V SchemmerArgentinaIoni Bowcher PROPOSAL
Jeanfrancois B FlosiUnited KingdomOnyama Limba PROPOSAL
Francesco G FollerSpainIoni Bowcher UNQUALIFIED
Greenwood X StockhamRussiaOnyama Limba PROPOSAL
Kaitlin Y StensethArgentinaIoni Bowcher UNQUALIFIED
Maria S RoysterCanadaStephen Shaw NEGOTIATION
Ashley R SergiIndiaStephen Shaw RENEWAL
Darci J GarufiFranceIvan Magalhaes UNQUALIFIED
Ashley B DilliardItalyAmy Elsner UNQUALIFIED
Mayumi X DilliardBrazilIoni Bowcher 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>