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
Maisha X CaudyAustraliaBernardo Dominic NEW
Clifford Y CaldareraUnited KingdomBernardo Dominic RENEWAL
Cody E GlickAustraliaIvan Magalhaes RENEWAL
Kadeem B SchemmerGermanyElwin Sharvill UNQUALIFIED
Morrow A SlusarskiGermanyElwin Sharvill NEW
Mayumi Z ChuiJapanAsiya Javayant QUALIFIED
Kaitlin N TollnerSpainStephen Shaw RENEWAL
Greenwood M BriddickRussiaAnna Fali NEW
Izzy W PoquetteCanadaStephen Shaw PROPOSAL
Ivar P CaudySpainXuxue Feng PROPOSAL
Claire Y KuskoGermanyAnna Fali NEW
Cody D DarakjyArgentinaBernardo Dominic NEGOTIATION
Misaki Q ChuiCanadaOnyama Limba NEW
James O VenereUnited KingdomOnyama Limba QUALIFIED
Morrow T RoysterBrazilAnna Fali PROPOSAL
Murillo I SchemmerBrazilBernardo Dominic NEGOTIATION
Wickens C TollnerIndiaAnna Fali NEGOTIATION
Adams U BologniaSpainAmy Elsner RENEWAL
Chavez Z WieserJapanBernardo Dominic NEGOTIATION
James D PerinArgentinaAsiya Javayant QUALIFIED
Izzy Z InouyeJapanStephen Shaw NEW
Rodrigues K FerenczItalyElwin Sharvill NEGOTIATION
Mujtaba Z FlosiJapanAmy Elsner UNQUALIFIED
Antonio R DoeArgentinaXuxue Feng NEGOTIATION
Sinclair H RulapaughFranceAsiya Javayant RENEWAL
Claire C InouyeItalyAsiya Javayant PROPOSAL
Kadeem V RutaJapanXuxue Feng QUALIFIED
Leja X NickaRussiaIoni Bowcher PROPOSAL
Faith Z RimJapanAmy Elsner UNQUALIFIED
Greenwood S VenereArgentinaXuxue Feng RENEWAL
Costa P KolmetzIndiaIvan Magalhaes NEW
David I RimArgentinaIoni Bowcher NEW
Aditya O GarufiJapanStephen Shaw RENEWAL
Cody F AmigonUnited KingdomXuxue Feng NEW
Claire R KuskoCanadaAsiya Javayant UNQUALIFIED
Aditya L GauchoJapanAmy Elsner NEW
Jefferson J RimCanadaIvan Magalhaes QUALIFIED
Faith V BriddickAustraliaIoni Bowcher RENEWAL
Izzy T OldroydAustraliaStephen Shaw NEW
Stacey U AlbaresIndiaAsiya Javayant UNQUALIFIED
Tony S ChuiUnited KingdomAnna Fali RENEWAL
Arvin Y AlbaresAustraliaElwin Sharvill NEGOTIATION
Leja R FigeroaUnited KingdomStephen Shaw NEW
Costa Q CaldareraUnited KingdomXuxue Feng PROPOSAL
Maria C BologniaJapanIvan Magalhaes UNQUALIFIED
Smith J BowleyUnited KingdomElwin Sharvill QUALIFIED
Aika W CampainGermanyAmy Elsner NEW
Alejandro G AlbaresAustraliaBernardo Dominic QUALIFIED
Darci U MaletFranceAmy Elsner NEW
Aika E InouyeAustraliaElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Julie M MaletAustraliaAnna Fali NEGOTIATION
Adams E PerinRussiaAnna Fali PROPOSAL
Antonio U SchemmerArgentinaOnyama Limba PROPOSAL
Jeanfrancois N FlosiItalyAnna Fali NEGOTIATION
Kaitlin C DarakjyCanadaAmy Elsner PROPOSAL
Emily R VocelkaRussiaIoni Bowcher PROPOSAL
Aika P ChuiSpainStephen Shaw UNQUALIFIED
Emily F SchemmerRussiaIvan Magalhaes RENEWAL
Ashley Q CaldareraSpainAmy Elsner NEW
Smith Z MorascaUnited KingdomBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Leon A SaylorsJapan2025-04-08Feiner Bros NEGOTIATION5Xuxue Feng
1001Johnson L PerinJapan2025-04-24Chemel, James L Cpa NEW73Ivan Magalhaes
1002Jefferson J GillianBrazil2025-04-22Commercial Press UNQUALIFIED95Amy Elsner
1003Chavez X DilliardFrance2025-04-18Chemel, James L Cpa NEW13Bernardo Dominic
1004Maisha N CaudyJapan2025-04-09King, Christopher A Esq QUALIFIED7Anna Fali
1005Francesco D SaylorsFrance2025-04-17Printing Dimensions UNQUALIFIED70Ioni Bowcher
1006Sinclair Z ChuiArgentina2025-04-07Buckley Miller Wright NEW8Anna Fali
1007Kadeem J SergiAustralia2025-04-08Dorl, James J Esq UNQUALIFIED18Ioni Bowcher
1008Alejandro V StensethItaly2025-04-18Buckley Miller Wright RENEWAL98Xuxue Feng
1009Alejandro Y GauchoJapan2025-04-11Buckley Miller Wright RENEWAL14Bernardo Dominic
1010David G DarakjyRussia2025-04-23Buckley Miller Wright NEW11Elwin Sharvill
1011Leja N VenereItaly2025-04-22Morlong Associates RENEWAL6Asiya Javayant
1012Wickens F NestleArgentina2025-04-25Chemel, James L Cpa QUALIFIED96Amy Elsner
1013Maisha N WieserAustralia2025-04-26Chanay, Jeffrey A Esq NEGOTIATION16Bernardo Dominic
1014Antonio R BologniaJapan2025-04-22Rangoni Of Florence PROPOSAL11Anna Fali
1015Octavia Q VenereRussia2025-04-23Buckley Miller Wright QUALIFIED14Anna Fali
1016Smith Z GillianAustralia2025-04-06Buckley Miller Wright PROPOSAL94Ivan Magalhaes
1017Deepesh D BowleyAustralia2025-04-21King, Christopher A Esq UNQUALIFIED91Stephen Shaw
1018Jefferson X WieserCanada2025-04-13Chapman, Ross E Esq PROPOSAL5Onyama Limba
1019Emily S StensethFrance2025-04-19King, Christopher A Esq RENEWAL35Onyama Limba
1020Ivar H SaylorsFrance2025-04-12Dorl, James J Esq RENEWAL47Xuxue Feng
1021Murillo Y RulapaughGermany2025-04-26King, Christopher A Esq PROPOSAL59Elwin Sharvill
1022Aditya M ButtAustralia2025-04-25Rousseaux, Michael Esq RENEWAL9Ivan Magalhaes
1023Kaitlin O SergiCanada2025-04-25Feltz Printing Service NEW4Elwin Sharvill
1024Salvatore L AmigonBrazil2025-04-01Morlong Associates NEGOTIATION37Xuxue Feng
1025Cody H ButtJapan2025-04-21Morlong Associates QUALIFIED72Stephen Shaw
1026Deepesh L InouyeUnited Kingdom2025-04-11Rangoni Of Florence RENEWAL43Ivan Magalhaes
1027Murillo A SaylorsRussia2025-04-13Feiner Bros RENEWAL98Elwin Sharvill
1028Johnson N BowleyItaly2025-04-04Buckley Miller Wright PROPOSAL55Amy Elsner
1029Isabel A SaylorsArgentina2025-04-25Chapman, Ross E Esq RENEWAL63Amy Elsner
1030Darci H GillianRussia2025-04-06Morlong Associates RENEWAL4Asiya Javayant
1031Mujtaba V SaylorsBrazil2025-04-19King, Christopher A Esq NEGOTIATION64Stephen Shaw
1032Jones P StockhamCanada2025-04-03King, Christopher A Esq PROPOSAL91Asiya Javayant
1033Munro O AmigonFrance2025-04-16Truhlar And Truhlar Attys NEW63Xuxue Feng
1034Kadeem A BowleyCanada2025-04-23Printing Dimensions NEW72Xuxue Feng
1035Francesco F GarufiAustralia2025-04-15Buckley Miller Wright NEW78Xuxue Feng
1036Wickens W InouyeItaly2025-04-13Dorl, James J Esq RENEWAL49Bernardo Dominic
1037Munro T CaldareraCanada2025-04-06Feltz Printing Service NEGOTIATION62Asiya Javayant
1038Chavez J CaudyItaly2025-04-22Printing Dimensions QUALIFIED30Onyama Limba
1039Emily Q RoysterIndia2025-04-06Benton, John B Jr UNQUALIFIED69Amy Elsner
1040Isabel C ShinkoIndia2025-04-25Chapman, Ross E Esq NEGOTIATION82Anna Fali
1041Rodrigues T CampainFrance2025-04-08Chemel, James L Cpa PROPOSAL59Asiya Javayant
1042Arvin J KolmetzUnited Kingdom2025-04-28Buckley Miller Wright QUALIFIED47Anna Fali
1043Wickens U DilliardRussia2025-04-28Chapman, Ross E Esq NEGOTIATION96Xuxue Feng
1044Murillo B GillianBrazil2025-04-05Chanay, Jeffrey A Esq NEGOTIATION14Onyama Limba
1045Mujtaba I ChuiJapan2025-04-03Truhlar And Truhlar Attys NEGOTIATION72Elwin Sharvill
1046Alejandro N WhobreyAustralia2025-04-12Rangoni Of Florence PROPOSAL40Bernardo Dominic
1047Juan Z DilliardGermany2025-04-03Truhlar And Truhlar Attys PROPOSAL54Ivan Magalhaes
1048Johnson Z BriddickFrance2025-04-12Morlong Associates QUALIFIED2Onyama Limba
1049Ricardo V StensethAustralia2025-04-09Feltz Printing Service NEGOTIATION75Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Antonio E StensethRussiaXuxue Feng NEW
Morrow D GarufiJapanAsiya Javayant NEW
Antonio O StensethCanadaIoni Bowcher NEGOTIATION
Julie X GlickItalyXuxue Feng NEW
Clifford P NestleRussiaAnna Fali NEGOTIATION
Juan K RulapaughUnited KingdomIvan Magalhaes PROPOSAL
Claire U OldroydGermanyIvan Magalhaes QUALIFIED
Adams X FlosiUnited KingdomIvan Magalhaes UNQUALIFIED
Juan S GauchoAustraliaAnna Fali NEGOTIATION
Arvin G SlusarskiAustraliaXuxue Feng NEW
Alejandro W IturbideIndiaIvan Magalhaes RENEWAL
Johnson Q DilliardIndiaElwin Sharvill QUALIFIED
Darci O FigeroaIndiaIvan Magalhaes PROPOSAL
Stacey D BriddickItalyXuxue Feng NEW
Arvin A RulapaughIndiaIoni Bowcher QUALIFIED
Morrow U GillianIndiaAmy Elsner PROPOSAL
Izzy K SchemmerArgentinaAnna Fali PROPOSAL
Tony H BriddickCanadaBernardo Dominic QUALIFIED
Ricardo U FollerRussiaIvan Magalhaes UNQUALIFIED
Kadeem L BriddickItalyAsiya Javayant RENEWAL
Jones R CaudyAustraliaAmy Elsner NEW
Johnson P StensethJapanXuxue Feng NEGOTIATION
Clifford Z CampainSpainBernardo Dominic NEGOTIATION
Tony C FigeroaJapanElwin Sharvill UNQUALIFIED
Leja X DarakjyAustraliaAmy Elsner NEGOTIATION
Morrow J InouyeItalyBernardo Dominic UNQUALIFIED
Francesco R MorascaArgentinaStephen Shaw NEGOTIATION
Smith Y WieserCanadaStephen Shaw UNQUALIFIED
Maria F DilliardJapanBernardo Dominic NEGOTIATION
Stacey W DoeSpainIvan Magalhaes NEGOTIATION
Maria W GarufiUnited KingdomXuxue Feng QUALIFIED
Smith S DarakjyIndiaElwin Sharvill NEGOTIATION
Izzy Z PerinGermanyBernardo Dominic NEW
Izzy Q PerinArgentinaIvan Magalhaes NEW
Adams V PerinJapanXuxue Feng UNQUALIFIED
Greenwood X FlosiGermanyAsiya Javayant RENEWAL
Nicolas U PaprockiUnited KingdomBernardo Dominic QUALIFIED
Faith D GillianSpainAnna Fali NEGOTIATION
Sinclair L OldroydFranceOnyama Limba UNQUALIFIED
Smith D FigeroaItalyXuxue Feng NEW
Misaki J AmigonAustraliaBernardo Dominic RENEWAL
Nicolas F KolmetzSpainAnna Fali QUALIFIED
Sinclair S DarakjySpainXuxue Feng QUALIFIED
Kaitlin F BologniaJapanAnna Fali RENEWAL
Adams U PoquetteRussiaIvan Magalhaes NEGOTIATION
Octavia R PerinGermanyIvan Magalhaes QUALIFIED
Arvin O GarufiCanadaOnyama Limba NEW
Chavez G CaldareraCanadaIvan Magalhaes NEW
Isabel H SergiItalyIvan Magalhaes PROPOSAL
Maisha G BriddickFranceElwin Sharvill NEGOTIATION
Frozen Columns
Name
Greenwood U Nestle
Smith E Perin
Salvatore V Inouye
Ivar C Marrier
Julie N Doe
Maisha X Marrier
Kaitlin Z Ostrosky
Maisha U Royster
Claire K Nestle
Murillo T Malet
Faith Y Perin
Costa B Chui
Cody G Wieser
Morrow I Malet
Chavez X Poquette
Tony F Doe
Alejandro T Ostrosky
Juan U Dilliard
Aruna W Vocelka
James W Campain
Mayumi D Foller
Faith O Maclead
Juan C Doe
Ivar A Doe
Aditya D Slusarski
Juan T Ferencz
Alejandro Y Perin
Maisha P Tollner
Adams K Poquette
Julie C Schemmer
Greenwood T Stenseth
Morrow B Caldarera
Leja G Perin
Nicolas S Perin
Kadeem F Shinko
Mujtaba S Vocelka
Octavia R Nestle
Morrow X Malet
Salvatore R Iturbide
Johnson E Kolmetz
Izzy D Figeroa
Emily K Flosi
Jeanfrancois N Caldarera
Cody W Inouye
Ricardo O Stockham
Clifford U Albares
Jennifer P Doe
James N Marrier
Morrow E Stenseth
Sinclair U Ruta
IdCountryDate
1000United Kingdom2025-04-16
1001United Kingdom2025-04-24
1002Canada2025-04-03
1003Russia2025-04-16
1004Argentina2025-04-21
1005Canada2025-04-19
1006Italy2025-04-24
1007India2025-04-01
1008Argentina2025-04-06
1009Russia2025-04-21
1010Germany2025-04-19
1011Italy2025-04-05
1012France2025-04-22
1013Russia2025-04-15
1014India2025-04-10
1015United Kingdom2025-04-18
1016India2025-04-13
1017Russia2025-04-28
1018Argentina2025-04-10
1019India2025-04-12
1020France2025-04-08
1021Canada2025-04-18
1022Argentina2025-04-21
1023Italy2025-04-22
1024Germany2025-04-14
1025Argentina2025-04-15
1026United Kingdom2025-04-25
1027Brazil2025-04-22
1028Japan2025-04-07
1029Australia2025-04-25
1030Australia2025-04-02
1031Russia2025-04-08
1032Australia2025-04-26
1033India2025-04-24
1034United Kingdom2025-04-25
1035Australia2025-04-04
1036Spain2025-04-15
1037Spain2025-04-28
1038Argentina2025-04-02
1039Brazil2025-04-12
1040Spain2025-04-09
1041Argentina2025-04-24
1042Canada2025-04-24
1043Germany2025-04-08
1044France2025-04-04
1045Argentina2025-04-19
1046Canada2025-04-25
1047Brazil2025-04-07
1048Japan2025-04-15
1049Brazil2025-04-03

On-Demand Data

NameIdCountryDate
Jennifer N Stockham1000Brazil2025-04-12
Deepesh V Caudy1001Argentina2025-04-25
Jones A Kusko1002Germany2025-04-10
Maisha S Nicka1003Brazil2025-04-05
Maria C Iturbide1004Australia2025-04-27
Isabel W Caldarera1005Argentina2025-04-19
Maisha I Perin1006Italy2025-04-16
Claire L Wieser1007France2025-04-25
Tony A Schemmer1008Australia2025-04-07
Nicolas S Royster1009India2025-04-02
Aruna B Whobrey1010Russia2025-04-16
Rodrigues F Maclead1011Brazil2025-04-01
Isabel G Perin1012India2025-04-02
Emily L Sergi1013India2025-04-22
Nicolas B Maclead1014India2025-04-09
Ivar Z Kusko1015France2025-04-29
Aditya E Rim1016India2025-04-08
Murillo A Malet1017Spain2025-04-29
Aika W Inouye1018Canada2025-04-22
Isabel T Wieser1019Spain2025-04-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David D SchemmerItalyXuxue Feng NEW
Salvatore R SlusarskiIndiaIvan Magalhaes QUALIFIED
Francesco A BowleyArgentinaIvan Magalhaes NEW
Isabel F BowleyAustraliaXuxue Feng RENEWAL
Deepesh I CaldareraJapanStephen Shaw PROPOSAL
Claire Z PoquetteJapanAmy Elsner QUALIFIED
Faith S DoeGermanyElwin Sharvill RENEWAL
Alejandro B FigeroaGermanyIvan Magalhaes NEGOTIATION
Jones P GillianAustraliaAmy Elsner QUALIFIED
Maria M WhobreyItalyAsiya Javayant RENEWAL
Munro T SaylorsItalyIvan Magalhaes PROPOSAL
Ashley Z MorascaItalyElwin Sharvill RENEWAL
Jones G TollnerArgentinaAnna Fali PROPOSAL
Salvatore O WieserAustraliaAmy Elsner QUALIFIED
Chavez F PaprockiItalyElwin Sharvill PROPOSAL
Faith X RulapaughUnited KingdomOnyama Limba QUALIFIED
Faith C RoysterArgentinaXuxue Feng QUALIFIED
Ricardo G KuskoSpainAsiya Javayant QUALIFIED
Greenwood U DarakjyArgentinaBernardo Dominic QUALIFIED
Deepesh L KolmetzCanadaAnna Fali NEGOTIATION
Kadeem O GillianCanadaIvan Magalhaes NEGOTIATION
Jeanfrancois X InouyeIndiaAsiya Javayant RENEWAL
Ivar Q FlosiSpainOnyama Limba RENEWAL
Mujtaba N SlusarskiFranceBernardo Dominic QUALIFIED
Salvatore O SaylorsIndiaStephen Shaw NEGOTIATION
Jeanfrancois B CampainSpainOnyama Limba PROPOSAL
Misaki Z FlosiRussiaBernardo Dominic PROPOSAL
Morrow R MaletArgentinaXuxue Feng QUALIFIED
Julie D VocelkaItalyBernardo Dominic RENEWAL
Jeanfrancois S MacleadRussiaOnyama Limba UNQUALIFIED
Aika I AlbaresCanadaStephen Shaw UNQUALIFIED
Mujtaba P AmigonJapanElwin Sharvill NEW
Munro Q SlusarskiFranceBernardo Dominic NEW
Greenwood E DilliardArgentinaBernardo Dominic PROPOSAL
David Y IturbideItalyElwin Sharvill RENEWAL
Alejandro W GarufiSpainStephen Shaw QUALIFIED
Aruna G RutaCanadaAnna Fali UNQUALIFIED
Chavez Z BriddickBrazilStephen Shaw NEGOTIATION
Cody Y OstroskyRussiaElwin Sharvill RENEWAL
Isabel P MaletRussiaBernardo Dominic 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>