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 C PaprockiUnited KingdomBernardo Dominic QUALIFIED
Aruna D GlickFranceIoni Bowcher QUALIFIED
Nicolas I PaprockiArgentinaStephen Shaw NEGOTIATION
Isabel G ShinkoIndiaXuxue Feng NEGOTIATION
Juan C CaudyIndiaAmy Elsner NEW
Jeanfrancois P WaycottIndiaElwin Sharvill UNQUALIFIED
Ivar K StensethArgentinaAsiya Javayant UNQUALIFIED
Nicolas V PoquetteRussiaXuxue Feng QUALIFIED
Smith G BologniaSpainAmy Elsner NEGOTIATION
Juan H WhobreyBrazilIvan Magalhaes QUALIFIED
Deepesh V StockhamGermanyIoni Bowcher UNQUALIFIED
Mayumi D MacleadAustraliaAmy Elsner PROPOSAL
Jeanfrancois F StensethIndiaElwin Sharvill QUALIFIED
Kaitlin U RimJapanIoni Bowcher NEGOTIATION
Sinclair P RutaJapanIoni Bowcher NEGOTIATION
Adams P GlickRussiaXuxue Feng PROPOSAL
Jefferson U ShinkoIndiaAmy Elsner PROPOSAL
Maria P GillianIndiaAmy Elsner PROPOSAL
Jeanfrancois I SaylorsIndiaAsiya Javayant RENEWAL
Clifford S PerinJapanAsiya Javayant NEGOTIATION
Rodrigues V BologniaRussiaStephen Shaw NEGOTIATION
Ivar J OstroskyFranceXuxue Feng RENEWAL
Smith D SergiRussiaElwin Sharvill NEW
Costa N PaprockiArgentinaElwin Sharvill QUALIFIED
Julie K KolmetzUnited KingdomElwin Sharvill NEW
Costa B BologniaAustraliaAnna Fali NEW
Ivar V MaletCanadaBernardo Dominic RENEWAL
Octavia G SlusarskiIndiaXuxue Feng QUALIFIED
Aruna O OstroskyBrazilIvan Magalhaes NEGOTIATION
Emily N MaletCanadaAmy Elsner NEGOTIATION
James C BriddickGermanyOnyama Limba NEW
Costa M DarakjyItalyXuxue Feng NEW
Emily N RoysterIndiaAsiya Javayant RENEWAL
Faith T StockhamBrazilStephen Shaw RENEWAL
Sinclair P SergiCanadaElwin Sharvill NEGOTIATION
Munro H BowleyCanadaStephen Shaw PROPOSAL
Antonio A PerinSpainIoni Bowcher RENEWAL
Antonio T RimUnited KingdomStephen Shaw RENEWAL
Alejandro C RulapaughIndiaAmy Elsner NEGOTIATION
Ricardo O GauchoJapanAmy Elsner NEGOTIATION
Jones O RimAustraliaIoni Bowcher RENEWAL
Munro P ChuiSpainStephen Shaw UNQUALIFIED
Wickens B FollerFranceAnna Fali UNQUALIFIED
Izzy K VenereBrazilStephen Shaw QUALIFIED
Costa Y WieserAustraliaAsiya Javayant NEW
Sinclair F VenereItalyIoni Bowcher PROPOSAL
Rodrigues C KuskoBrazilElwin Sharvill NEGOTIATION
Chavez H TollnerJapanXuxue Feng NEW
David G WaycottIndiaAsiya Javayant RENEWAL
Misaki W DilliardUnited KingdomAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Arvin K OldroydIndiaOnyama Limba RENEWAL
Munro Z RutaJapanElwin Sharvill NEW
Aruna Q VocelkaRussiaOnyama Limba RENEWAL
Cody K RutaCanadaOnyama Limba RENEWAL
Murillo S SlusarskiArgentinaBernardo Dominic NEW
Smith N RulapaughItalyElwin Sharvill UNQUALIFIED
Julie C MaletSpainOnyama Limba PROPOSAL
Isabel U SchemmerArgentinaXuxue Feng NEW
Salvatore J WhobreyAustraliaBernardo Dominic QUALIFIED
Cody M KuskoCanadaIvan Magalhaes NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin J FollerJapan2024-06-02Chemel, James L Cpa NEW63Xuxue Feng
1001Aditya I OstroskySpain2024-05-28Rousseaux, Michael Esq RENEWAL31Xuxue Feng
1002Morrow F OstroskyJapan2024-06-14Rangoni Of Florence UNQUALIFIED57Anna Fali
1003Munro B PoquetteRussia2024-06-19Benton, John B Jr NEGOTIATION38Bernardo Dominic
1004Faith J RimFrance2024-06-19Chapman, Ross E Esq NEW48Ioni Bowcher
1005Chavez Y GillianSpain2024-05-24Chemel, James L Cpa UNQUALIFIED45Xuxue Feng
1006Clifford K MaletBrazil2024-05-31Morlong Associates UNQUALIFIED80Amy Elsner
1007Salvatore M NestleCanada2024-06-05Rangoni Of Florence RENEWAL64Amy Elsner
1008Octavia P BologniaBrazil2024-06-08Dorl, James J Esq NEGOTIATION91Ioni Bowcher
1009David Y StensethJapan2024-06-05Rangoni Of Florence PROPOSAL71Ioni Bowcher
1010Aika D RulapaughArgentina2024-06-17Commercial Press NEGOTIATION10Bernardo Dominic
1011James F OstroskyRussia2024-05-26Dorl, James J Esq RENEWAL69Anna Fali
1012Faith S GauchoIndia2024-06-18Chapman, Ross E Esq NEW21Elwin Sharvill
1013Leon Z VenereCanada2024-06-21Benton, John B Jr QUALIFIED74Onyama Limba
1014Salvatore I SchemmerIndia2024-06-06Feiner Bros QUALIFIED85Ivan Magalhaes
1015Smith S OldroydGermany2024-05-27Printing Dimensions UNQUALIFIED64Stephen Shaw
1016Misaki A MacleadJapan2024-06-02Chemel, James L Cpa UNQUALIFIED7Bernardo Dominic
1017Murillo A MacleadGermany2024-06-08Rangoni Of Florence NEW22Onyama Limba
1018Deepesh M FollerFrance2024-06-04Commercial Press QUALIFIED45Asiya Javayant
1019David Z StensethItaly2024-06-08Buckley Miller Wright UNQUALIFIED30Bernardo Dominic
1020Adams Y FerenczItaly2024-06-15Morlong Associates QUALIFIED73Onyama Limba
1021Alejandro A CampainIndia2024-05-25Chapman, Ross E Esq QUALIFIED94Anna Fali
1022Smith G RulapaughItaly2024-05-23Feiner Bros RENEWAL41Stephen Shaw
1023Cody B WieserArgentina2024-06-15Commercial Press NEW89Elwin Sharvill
1024Jones V IturbideArgentina2024-06-18Rangoni Of Florence RENEWAL90Xuxue Feng
1025Leja R CampainUnited Kingdom2024-06-18Benton, John B Jr PROPOSAL94Xuxue Feng
1026Kaitlin M VenereItaly2024-06-02Rangoni Of Florence UNQUALIFIED30Xuxue Feng
1027Misaki D BowleyAustralia2024-06-14Buckley Miller Wright QUALIFIED31Asiya Javayant
1028Cody Z BowleySpain2024-06-14Printing Dimensions NEW38Ivan Magalhaes
1029Claire W MaletCanada2024-06-05Chapman, Ross E Esq QUALIFIED14Ioni Bowcher
1030Jennifer S BologniaItaly2024-05-31Feltz Printing Service QUALIFIED88Asiya Javayant
1031Ivar V MacleadSpain2024-06-16Commercial Press PROPOSAL2Xuxue Feng
1032Ricardo J StockhamJapan2024-06-16Feltz Printing Service PROPOSAL71Asiya Javayant
1033Faith U VocelkaArgentina2024-06-07Feltz Printing Service PROPOSAL19Amy Elsner
1034Leon D FigeroaGermany2024-06-06Feiner Bros UNQUALIFIED70Amy Elsner
1035Mujtaba C BologniaGermany2024-06-04Feiner Bros PROPOSAL96Amy Elsner
1036Ivar S FlosiUnited Kingdom2024-06-19Benton, John B Jr QUALIFIED83Bernardo Dominic
1037Darci D BowleyBrazil2024-06-04Benton, John B Jr PROPOSAL32Xuxue Feng
1038Jennifer A MarrierAustralia2024-06-03Chemel, James L Cpa UNQUALIFIED4Elwin Sharvill
1039Julie S RulapaughJapan2024-06-06Rousseaux, Michael Esq UNQUALIFIED57Stephen Shaw
1040Munro X RoysterUnited Kingdom2024-06-18Truhlar And Truhlar Attys PROPOSAL79Stephen Shaw
1041Misaki L PoquetteRussia2024-05-23Chapman, Ross E Esq NEW55Amy Elsner
1042Leon M GlickIndia2024-06-13Chanay, Jeffrey A Esq NEGOTIATION92Ioni Bowcher
1043Faith B GarufiAustralia2024-06-05Truhlar And Truhlar Attys NEGOTIATION55Ioni Bowcher
1044Salvatore H GarufiJapan2024-06-09Feltz Printing Service PROPOSAL32Amy Elsner
1045Aika R CaudyIndia2024-06-21King, Christopher A Esq QUALIFIED29Xuxue Feng
1046Deepesh N CaldareraArgentina2024-05-31Chapman, Ross E Esq RENEWAL82Asiya Javayant
1047Wickens J FerenczUnited Kingdom2024-06-16Benton, John B Jr RENEWAL10Stephen Shaw
1048Darci Q WhobreyCanada2024-06-14Morlong Associates NEGOTIATION14Xuxue Feng
1049Mujtaba B OldroydSpain2024-05-25Dorl, James J Esq UNQUALIFIED84Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Salvatore E DarakjyJapanIvan Magalhaes NEW
Izzy H NickaIndiaBernardo Dominic NEW
Ricardo I NickaGermanyStephen Shaw NEW
Maria T MarrierSpainAsiya Javayant QUALIFIED
Mayumi K CampainBrazilIvan Magalhaes UNQUALIFIED
Ashley R DarakjyJapanXuxue Feng NEW
Maisha E BologniaSpainAmy Elsner PROPOSAL
Leon L StensethGermanyAnna Fali UNQUALIFIED
Silvio L CaudyAustraliaOnyama Limba QUALIFIED
Leja E RulapaughAustraliaAnna Fali NEW
Kadeem H BowleyFranceXuxue Feng NEGOTIATION
Munro H FlosiItalyAnna Fali NEW
Nicolas Z GauchoRussiaStephen Shaw QUALIFIED
Nicolas Q FigeroaItalyAsiya Javayant UNQUALIFIED
Jones F DoeSpainBernardo Dominic UNQUALIFIED
Faith L MaletIndiaIvan Magalhaes RENEWAL
Ashley U GauchoAustraliaElwin Sharvill UNQUALIFIED
Murillo Y AmigonGermanyAnna Fali NEW
Kadeem Y WaycottItalyOnyama Limba PROPOSAL
Greenwood Z PerinRussiaIoni Bowcher QUALIFIED
Silvio N MaletBrazilIvan Magalhaes NEGOTIATION
Morrow K CampainItalyIvan Magalhaes QUALIFIED
Alejandro X CampainJapanOnyama Limba QUALIFIED
Leon O PoquetteItalyAsiya Javayant PROPOSAL
Maria R RutaRussiaStephen Shaw QUALIFIED
Claire K ChuiJapanXuxue Feng NEW
Greenwood V KolmetzBrazilIvan Magalhaes QUALIFIED
Rodrigues Y BowleyAustraliaIvan Magalhaes UNQUALIFIED
Maria P DilliardItalyAnna Fali PROPOSAL
Juan N AlbaresArgentinaIvan Magalhaes NEW
Costa F ChuiFranceStephen Shaw QUALIFIED
Sinclair C SchemmerUnited KingdomXuxue Feng PROPOSAL
Chavez W CaudyCanadaIvan Magalhaes PROPOSAL
Murillo X AmigonJapanAmy Elsner RENEWAL
Mujtaba Z AmigonIndiaXuxue Feng UNQUALIFIED
Stacey S SlusarskiGermanyElwin Sharvill NEW
Murillo I SaylorsGermanyAmy Elsner RENEWAL
Costa P BriddickSpainElwin Sharvill NEW
Nicolas T StockhamJapanBernardo Dominic UNQUALIFIED
Murillo N SlusarskiIndiaBernardo Dominic RENEWAL
Mayumi K WieserSpainIoni Bowcher QUALIFIED
Julie Y OstroskyUnited KingdomStephen Shaw QUALIFIED
Ashley O SergiBrazilAmy Elsner PROPOSAL
Adams B PoquetteIndiaBernardo Dominic NEGOTIATION
Rodrigues F NestleItalyElwin Sharvill PROPOSAL
Greenwood X ButtGermanyAmy Elsner PROPOSAL
Octavia D RoysterCanadaXuxue Feng QUALIFIED
Adams L OldroydCanadaXuxue Feng RENEWAL
Smith T GlickSpainOnyama Limba RENEWAL
Wickens X RoysterIndiaElwin Sharvill RENEWAL
Frozen Columns
Name
Mujtaba W Nicka
Adams V Kusko
Jeanfrancois Q Caldarera
Misaki Z Glick
Francesco K Gillian
Jeanfrancois M Schemmer
Jefferson C Amigon
Costa J Foller
Silvio G Malet
Costa E Kolmetz
Isabel H Iturbide
Wickens K Kusko
Ivar S Schemmer
Ashley P Saylors
Costa K Morasca
Julie M Shinko
Sinclair J Butt
Izzy P Darakjy
Kaitlin S Wieser
Chavez B Poquette
Leon F Rulapaugh
Costa L Bolognia
Munro J Dilliard
Greenwood U Paprocki
Tony J Caldarera
Costa G Paprocki
Costa Z Maclead
Aika M Stenseth
Leon Q Royster
Antonio B Shinko
Deepesh O Inouye
Misaki O Whobrey
Mujtaba G Doe
Antonio I Sergi
Ricardo H Nestle
Wickens N Caudy
Ricardo Z Caudy
Darci Y Foller
Juan F Shinko
Deepesh T Nestle
Jones R Bolognia
Emily W Slusarski
Nicolas C Saylors
Mayumi W Chui
James G Stenseth
Juan O Morasca
David F Shinko
Johnson J Venere
Johnson Q Briddick
Aika O Amigon
IdCountryDate
1000Spain2024-06-20
1001Japan2024-06-19
1002Brazil2024-06-21
1003Germany2024-06-21
1004Japan2024-05-28
1005Italy2024-06-14
1006Spain2024-06-19
1007Australia2024-06-16
1008Japan2024-06-01
1009Japan2024-05-28
1010Argentina2024-06-08
1011Germany2024-05-27
1012Japan2024-06-09
1013France2024-06-07
1014Spain2024-06-06
1015Germany2024-06-08
1016United Kingdom2024-06-02
1017India2024-06-11
1018India2024-05-27
1019Brazil2024-05-28
1020Italy2024-05-27
1021Argentina2024-05-23
1022France2024-06-03
1023Australia2024-06-07
1024Brazil2024-05-24
1025Italy2024-06-13
1026France2024-06-09
1027Spain2024-05-30
1028Brazil2024-06-17
1029Argentina2024-06-13
1030Russia2024-06-19
1031Australia2024-05-31
1032India2024-06-06
1033Germany2024-06-04
1034Russia2024-06-07
1035Australia2024-05-26
1036France2024-06-16
1037Brazil2024-06-06
1038France2024-05-31
1039Brazil2024-06-04
1040United Kingdom2024-05-23
1041Australia2024-06-08
1042Germany2024-05-26
1043United Kingdom2024-06-14
1044Italy2024-05-31
1045Russia2024-05-30
1046Germany2024-06-01
1047Germany2024-06-12
1048France2024-06-12
1049Japan2024-06-03

On-Demand Data

NameIdCountryDate
Jennifer A Sergi1000Russia2024-06-18
Greenwood W Poquette1001France2024-06-21
Deepesh Z Saylors1002Japan2024-06-04
Jeanfrancois N Sergi1003Argentina2024-05-29
Jennifer Z Ostrosky1004India2024-06-01
Jones P Caldarera1005India2024-06-12
Silvio T Ferencz1006Canada2024-06-14
Leon R Oldroyd1007United Kingdom2024-06-09
Izzy L Perin1008Italy2024-06-07
Smith E Rulapaugh1009France2024-05-31
Misaki N Kusko1010Australia2024-06-08
Mujtaba V Briddick1011Argentina2024-05-25
Francesco A Inouye1012Germany2024-06-17
Jones M Rim1013Argentina2024-06-17
Chavez G Schemmer1014India2024-05-23
Tony F Tollner1015United Kingdom2024-06-05
Jeanfrancois I Rulapaugh1016Russia2024-06-15
Aruna U Slusarski1017Spain2024-06-20
Misaki N Marrier1018Brazil2024-06-16
Octavia Y Venere1019United Kingdom2024-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki B KolmetzAustraliaStephen Shaw QUALIFIED
Greenwood T SlusarskiArgentinaElwin Sharvill NEW
Claire K DilliardJapanAsiya Javayant QUALIFIED
Deepesh V MarrierAustraliaAsiya Javayant PROPOSAL
Arvin Z AlbaresUnited KingdomBernardo Dominic RENEWAL
Silvio K DarakjyCanadaAsiya Javayant QUALIFIED
Ivar O GauchoCanadaAnna Fali NEW
Darci C AmigonUnited KingdomAmy Elsner UNQUALIFIED
Ashley K ButtGermanyIoni Bowcher NEW
Ricardo J InouyeAustraliaBernardo Dominic NEGOTIATION
Wickens D FigeroaJapanOnyama Limba NEW
Darci S FigeroaIndiaStephen Shaw UNQUALIFIED
Tony Y AlbaresGermanyElwin Sharvill RENEWAL
Salvatore Z StensethAustraliaElwin Sharvill NEW
Rodrigues N RoysterJapanBernardo Dominic QUALIFIED
Adams X SergiRussiaBernardo Dominic UNQUALIFIED
Murillo I GlickGermanyIvan Magalhaes NEGOTIATION
Faith I PerinIndiaOnyama Limba QUALIFIED
Deepesh N InouyeUnited KingdomIvan Magalhaes QUALIFIED
Antonio B RulapaughCanadaXuxue Feng NEGOTIATION
Ashley O KolmetzArgentinaStephen Shaw PROPOSAL
Claire R NestleAustraliaAsiya Javayant UNQUALIFIED
Munro R SergiFranceIvan Magalhaes RENEWAL
Clifford C FigeroaBrazilOnyama Limba RENEWAL
Silvio V FollerIndiaIvan Magalhaes RENEWAL
Ashley V RoysterRussiaStephen Shaw RENEWAL
Murillo E TollnerFranceAsiya Javayant UNQUALIFIED
Cody B ButtGermanyElwin Sharvill QUALIFIED
Claire C CampainUnited KingdomAmy Elsner NEW
Jeanfrancois B AlbaresCanadaIoni Bowcher NEW
Aruna O VocelkaAustraliaAnna Fali RENEWAL
Claire P NestleJapanBernardo Dominic PROPOSAL
Greenwood C RulapaughBrazilIoni Bowcher QUALIFIED
Wickens N WieserFranceXuxue Feng NEW
Smith H BologniaFranceAsiya Javayant PROPOSAL
Smith N BowleyBrazilXuxue Feng RENEWAL
Nicolas Q BowleySpainElwin Sharvill UNQUALIFIED
Maria B WieserFranceBernardo Dominic PROPOSAL
Munro Y GlickCanadaAsiya Javayant PROPOSAL
Leja J KuskoItalyElwin Sharvill 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>