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
Jeanfrancois T SlusarskiUnited KingdomElwin Sharvill NEGOTIATION
Julie T DarakjyRussiaAmy Elsner RENEWAL
Clifford A MaletSpainXuxue Feng RENEWAL
Ashley X PaprockiSpainStephen Shaw NEW
Ivar J MaletBrazilAsiya Javayant QUALIFIED
Aika Z MacleadFranceXuxue Feng QUALIFIED
Jennifer H VocelkaGermanyAmy Elsner UNQUALIFIED
Costa C MaletRussiaIoni Bowcher RENEWAL
Emily U MarrierGermanyAsiya Javayant NEGOTIATION
Aika P FigeroaFranceXuxue Feng NEW
Claire J RoysterCanadaIvan Magalhaes NEGOTIATION
Jefferson O RoysterArgentinaBernardo Dominic NEW
Juan N MorascaJapanXuxue Feng NEW
Maria F MacleadJapanElwin Sharvill NEW
Alejandro R NestleAustraliaIoni Bowcher NEGOTIATION
Maria T MaletArgentinaBernardo Dominic NEW
Julie U CaldareraAustraliaStephen Shaw QUALIFIED
Morrow A RutaGermanyIvan Magalhaes UNQUALIFIED
Isabel O AmigonGermanyAsiya Javayant PROPOSAL
Emily B AmigonIndiaOnyama Limba NEW
Ashley P GarufiItalyBernardo Dominic RENEWAL
Faith P MaletArgentinaElwin Sharvill NEGOTIATION
Chavez G IturbideArgentinaAnna Fali QUALIFIED
Costa M SlusarskiRussiaIvan Magalhaes PROPOSAL
Greenwood J AmigonCanadaAsiya Javayant RENEWAL
Greenwood V WieserFranceOnyama Limba QUALIFIED
Emily Z GarufiJapanAsiya Javayant PROPOSAL
Isabel D GillianBrazilIvan Magalhaes NEW
Cody G RoysterUnited KingdomBernardo Dominic NEGOTIATION
Mujtaba M CaldareraJapanElwin Sharvill NEGOTIATION
Salvatore X ShinkoIndiaStephen Shaw PROPOSAL
Nicolas F GillianGermanyStephen Shaw QUALIFIED
Juan E MorascaUnited KingdomBernardo Dominic PROPOSAL
Smith F TollnerGermanyStephen Shaw NEW
Ivar J ButtCanadaOnyama Limba NEW
Morrow G AlbaresIndiaAnna Fali NEW
Leon H WaycottUnited KingdomIvan Magalhaes NEGOTIATION
Ricardo E SlusarskiCanadaStephen Shaw NEW
Munro C StensethArgentinaAsiya Javayant NEW
Kaitlin N PerinAustraliaElwin Sharvill UNQUALIFIED
Cody D CampainBrazilAnna Fali NEW
Ashley M FerenczUnited KingdomOnyama Limba PROPOSAL
Francesco Y MacleadFranceIvan Magalhaes QUALIFIED
Adams M BologniaArgentinaAmy Elsner NEGOTIATION
Mujtaba A RutaJapanStephen Shaw NEGOTIATION
Clifford S MarrierFranceXuxue Feng QUALIFIED
Johnson L FerenczRussiaElwin Sharvill UNQUALIFIED
Ricardo Y MaletArgentinaIoni Bowcher NEW
Kaitlin R DarakjyCanadaIvan Magalhaes PROPOSAL
Julie A MaletItalyAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Adams T DilliardIndiaAnna Fali PROPOSAL
Sinclair V GarufiJapanIoni Bowcher PROPOSAL
Cody C NestleJapanOnyama Limba NEGOTIATION
Antonio X FollerGermanyElwin Sharvill PROPOSAL
Ivar W MorascaBrazilXuxue Feng UNQUALIFIED
Claire S VocelkaJapanStephen Shaw NEW
Antonio J IturbideAustraliaBernardo Dominic NEGOTIATION
Alejandro X CaldareraAustraliaIvan Magalhaes QUALIFIED
Costa I NestleArgentinaIvan Magalhaes NEGOTIATION
Antonio W ButtIndiaAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi T GarufiBrazil2024-06-24King, Christopher A Esq QUALIFIED60Xuxue Feng
1001Smith S FollerAustralia2024-06-12Buckley Miller Wright RENEWAL29Onyama Limba
1002Munro P GarufiIndia2024-05-27Benton, John B Jr NEGOTIATION50Bernardo Dominic
1003Ivar S OstroskyArgentina2024-05-31Morlong Associates UNQUALIFIED91Ivan Magalhaes
1004Deepesh E CampainBrazil2024-06-02Printing Dimensions QUALIFIED17Xuxue Feng
1005Emily B MaletBrazil2024-06-16Printing Dimensions NEW22Ivan Magalhaes
1006Mayumi G SlusarskiIndia2024-05-29Benton, John B Jr PROPOSAL33Elwin Sharvill
1007Smith P OldroydSpain2024-06-09Chapman, Ross E Esq PROPOSAL67Ivan Magalhaes
1008Kadeem P StockhamFrance2024-06-09Commercial Press NEW73Xuxue Feng
1009Chavez W FigeroaGermany2024-06-21Feltz Printing Service QUALIFIED24Asiya Javayant
1010Maria E OldroydJapan2024-06-09Printing Dimensions RENEWAL36Bernardo Dominic
1011Aditya B MarrierRussia2024-06-11Benton, John B Jr NEGOTIATION45Asiya Javayant
1012Kadeem Q RulapaughFrance2024-06-18Commercial Press RENEWAL72Xuxue Feng
1013Jones O ChuiItaly2024-06-23King, Christopher A Esq NEGOTIATION88Asiya Javayant
1014Munro H StensethIndia2024-06-07Rangoni Of Florence PROPOSAL70Bernardo Dominic
1015Rodrigues V NickaIndia2024-06-06King, Christopher A Esq PROPOSAL30Anna Fali
1016Isabel Q WhobreyJapan2024-06-16Printing Dimensions QUALIFIED65Stephen Shaw
1017Francesco N SaylorsGermany2024-05-30King, Christopher A Esq RENEWAL38Asiya Javayant
1018Mayumi X DoeGermany2024-06-08Rangoni Of Florence RENEWAL5Bernardo Dominic
1019Deepesh B BologniaRussia2024-06-11Commercial Press PROPOSAL30Onyama Limba
1020Darci T BologniaFrance2024-06-16Printing Dimensions PROPOSAL97Onyama Limba
1021Juan H ShinkoSpain2024-06-05Feltz Printing Service NEW49Stephen Shaw
1022Adams H MarrierBrazil2024-06-07Rousseaux, Michael Esq NEW89Bernardo Dominic
1023Leon W RulapaughAustralia2024-06-01Chanay, Jeffrey A Esq RENEWAL67Xuxue Feng
1024Costa T FigeroaSpain2024-06-05Feiner Bros NEW7Amy Elsner
1025Rodrigues F DilliardItaly2024-06-10Feiner Bros RENEWAL83Anna Fali
1026Jennifer C GillianBrazil2024-05-26Rangoni Of Florence RENEWAL67Ivan Magalhaes
1027Sinclair V GlickGermany2024-06-11Rousseaux, Michael Esq RENEWAL80Amy Elsner
1028Aika B WieserUnited Kingdom2024-05-27Feltz Printing Service NEGOTIATION27Asiya Javayant
1029Adams M SchemmerAustralia2024-06-24Morlong Associates NEW17Elwin Sharvill
1030Johnson V CampainIndia2024-06-18Dorl, James J Esq UNQUALIFIED15Amy Elsner
1031Smith H DarakjyCanada2024-06-10Feltz Printing Service RENEWAL60Asiya Javayant
1032Murillo H RutaRussia2024-06-18Buckley Miller Wright RENEWAL30Xuxue Feng
1033Izzy Y MaletRussia2024-05-28Feltz Printing Service PROPOSAL89Amy Elsner
1034Jeanfrancois W GlickUnited Kingdom2024-06-08Chanay, Jeffrey A Esq NEW69Anna Fali
1035Deepesh U GarufiCanada2024-06-24Feiner Bros NEW51Ivan Magalhaes
1036Aika G DarakjyJapan2024-06-17Chapman, Ross E Esq NEGOTIATION2Ivan Magalhaes
1037Arvin M MorascaCanada2024-06-24Benton, John B Jr PROPOSAL86Stephen Shaw
1038Kaitlin F BriddickIndia2024-06-21Feltz Printing Service QUALIFIED44Stephen Shaw
1039Adams N OstroskyIndia2024-06-22Benton, John B Jr NEGOTIATION71Bernardo Dominic
1040Costa J RutaAustralia2024-06-17Chapman, Ross E Esq PROPOSAL85Elwin Sharvill
1041Kadeem Y TollnerRussia2024-06-04Rousseaux, Michael Esq PROPOSAL8Asiya Javayant
1042Juan J ChuiAustralia2024-06-23Rangoni Of Florence PROPOSAL85Amy Elsner
1043Julie L GillianFrance2024-06-23Commercial Press NEGOTIATION88Ioni Bowcher
1044Chavez B BowleyItaly2024-06-22Morlong Associates PROPOSAL57Ioni Bowcher
1045Maria V StockhamArgentina2024-06-24Chapman, Ross E Esq NEW74Ioni Bowcher
1046Clifford A WhobreyRussia2024-06-03Chemel, James L Cpa PROPOSAL99Bernardo Dominic
1047Darci O NickaFrance2024-06-02Printing Dimensions UNQUALIFIED77Stephen Shaw
1048Ivar R TollnerGermany2024-06-06Morlong Associates NEGOTIATION52Amy Elsner
1049Antonio W NickaIndia2024-06-10Commercial Press NEW87Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Julie D ButtAustraliaXuxue Feng NEGOTIATION
Aruna U NickaGermanyStephen Shaw NEW
Morrow M FlosiGermanyBernardo Dominic PROPOSAL
Octavia X TollnerArgentinaStephen Shaw QUALIFIED
Jeanfrancois G GarufiGermanyXuxue Feng RENEWAL
James M BowleyJapanStephen Shaw QUALIFIED
Leon F FollerJapanAmy Elsner PROPOSAL
Kaitlin Y ButtIndiaAmy Elsner RENEWAL
David X PoquetteGermanyAsiya Javayant UNQUALIFIED
Ricardo J PoquetteJapanIoni Bowcher QUALIFIED
Wickens W PerinJapanStephen Shaw NEW
Jefferson E MaletJapanOnyama Limba NEGOTIATION
Murillo N PerinIndiaAnna Fali NEGOTIATION
Mujtaba A StensethBrazilElwin Sharvill PROPOSAL
Clifford J CaldareraUnited KingdomIoni Bowcher UNQUALIFIED
Smith X AlbaresBrazilXuxue Feng NEGOTIATION
Silvio C AmigonUnited KingdomAsiya Javayant NEW
Aditya U ChuiRussiaElwin Sharvill NEGOTIATION
Darci M VocelkaJapanElwin Sharvill NEGOTIATION
Deepesh F InouyeArgentinaIvan Magalhaes QUALIFIED
Leon K FerenczAustraliaAsiya Javayant NEGOTIATION
Chavez L FerenczCanadaXuxue Feng PROPOSAL
Julie R KolmetzGermanyStephen Shaw RENEWAL
Wickens I PoquetteUnited KingdomXuxue Feng RENEWAL
Octavia K DilliardCanadaAsiya Javayant RENEWAL
Ivar P MacleadGermanyIvan Magalhaes UNQUALIFIED
Isabel T KuskoFranceIoni Bowcher RENEWAL
James M RutaGermanyOnyama Limba NEGOTIATION
Octavia B GarufiArgentinaBernardo Dominic PROPOSAL
Morrow E StensethBrazilIoni Bowcher NEW
Silvio F PoquetteSpainAnna Fali NEW
Ricardo R CaudyRussiaAsiya Javayant NEGOTIATION
Clifford Y BriddickSpainIvan Magalhaes QUALIFIED
Chavez S MaletRussiaIvan Magalhaes RENEWAL
Alejandro B GarufiCanadaIoni Bowcher NEGOTIATION
James K FerenczRussiaElwin Sharvill PROPOSAL
Aruna J OstroskyCanadaIvan Magalhaes QUALIFIED
Arvin H GauchoItalyStephen Shaw RENEWAL
Alejandro H MaletAustraliaStephen Shaw PROPOSAL
Alejandro K VenereCanadaXuxue Feng NEW
Maria Y WieserJapanIvan Magalhaes UNQUALIFIED
Jennifer O SergiRussiaAnna Fali QUALIFIED
Mujtaba K VocelkaGermanyAnna Fali NEW
Maria J ShinkoSpainAsiya Javayant UNQUALIFIED
Mayumi X TollnerArgentinaStephen Shaw NEGOTIATION
Maria Y GarufiIndiaAmy Elsner RENEWAL
Misaki B AlbaresAustraliaOnyama Limba PROPOSAL
Faith I MorascaFranceIoni Bowcher NEW
Salvatore K RutaJapanXuxue Feng PROPOSAL
Salvatore L MarrierItalyIvan Magalhaes QUALIFIED
Frozen Columns
Name
Adams I Stockham
Salvatore Q Doe
Jefferson Z Sergi
Antonio O Tollner
Stacey O Bolognia
Aditya Q Glick
Faith S Kusko
Rodrigues I Morasca
Ricardo U Briddick
Jones L Albares
Silvio G Royster
Claire I Ferencz
Jennifer G Morasca
Clifford C Kusko
Chavez V Caudy
Murillo N Malet
Rodrigues H Kusko
Isabel L Gillian
Jones H Dilliard
Ashley E Schemmer
Sinclair T Malet
Misaki Z Kolmetz
Deepesh P Butt
Arvin Y Gaucho
Ashley B Schemmer
Maisha T Kusko
Cody Z Nicka
Nicolas R Figeroa
Ivar F Nestle
Tony A Shinko
Aruna Q Bolognia
Chavez E Glick
Sinclair C Ostrosky
Emily T Inouye
Mujtaba U Maclead
Greenwood W Marrier
Wickens O Figeroa
Rodrigues I Briddick
Wickens L Bowley
Aditya O Gaucho
Darci U Sergi
Murillo C Schemmer
Munro X Maclead
Jefferson V Figeroa
Silvio H Ferencz
Emily K Rulapaugh
Faith Q Kusko
Stacey Q Shinko
Jefferson T Marrier
Jeanfrancois M Amigon
IdCountryDate
1000Canada2024-06-07
1001Brazil2024-05-27
1002Canada2024-06-22
1003Germany2024-06-10
1004Canada2024-06-12
1005Germany2024-06-21
1006Russia2024-06-24
1007Australia2024-06-04
1008Brazil2024-06-06
1009Brazil2024-06-01
1010France2024-05-30
1011Germany2024-05-27
1012Japan2024-05-29
1013India2024-06-12
1014Spain2024-06-07
1015Canada2024-06-10
1016Argentina2024-06-06
1017Italy2024-06-04
1018Japan2024-06-01
1019Argentina2024-06-05
1020Australia2024-06-23
1021India2024-06-02
1022Canada2024-06-15
1023Brazil2024-06-20
1024Germany2024-05-27
1025Australia2024-06-20
1026Italy2024-06-23
1027Australia2024-06-05
1028Brazil2024-06-24
1029Argentina2024-06-23
1030Brazil2024-06-14
1031India2024-06-15
1032Canada2024-06-15
1033Russia2024-06-03
1034Spain2024-06-05
1035Japan2024-06-18
1036Russia2024-06-06
1037France2024-06-19
1038Spain2024-06-08
1039Japan2024-06-20
1040Brazil2024-06-06
1041Spain2024-06-11
1042Argentina2024-06-08
1043Germany2024-05-28
1044India2024-06-16
1045United Kingdom2024-05-26
1046Brazil2024-06-05
1047France2024-05-30
1048Russia2024-06-13
1049Russia2024-06-07

On-Demand Data

NameIdCountryDate
Wickens P Oldroyd1000India2024-06-12
Alejandro F Darakjy1001Brazil2024-06-18
David K Glick1002Canada2024-06-07
Chavez U Darakjy1003Spain2024-06-22
Smith S Caudy1004Italy2024-06-05
Ricardo Q Ruta1005United Kingdom2024-06-03
Jefferson S Gillian1006United Kingdom2024-06-08
Deepesh K Chui1007Argentina2024-06-01
Octavia L Gillian1008Australia2024-06-02
Emily A Oldroyd1009Italy2024-06-03
Tony F Royster1010India2024-06-09
Arvin D Dilliard1011Japan2024-06-06
Wickens O Inouye1012United Kingdom2024-06-02
Isabel M Marrier1013Canada2024-06-15
Chavez M Waycott1014Italy2024-06-07
Juan Y Waycott1015Brazil2024-06-03
Darci Y Bolognia1016Italy2024-06-09
Arvin G Ferencz1017Japan2024-05-31
Sinclair F Malet1018France2024-06-15
Aruna V Bowley1019India2024-06-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson P PerinUnited KingdomAsiya Javayant NEGOTIATION
Johnson Y AmigonRussiaXuxue Feng NEGOTIATION
Aruna T SlusarskiJapanIoni Bowcher PROPOSAL
Izzy B FigeroaRussiaAsiya Javayant NEGOTIATION
Francesco Z MorascaCanadaAmy Elsner UNQUALIFIED
Izzy L BologniaGermanyAnna Fali RENEWAL
Isabel H OstroskyJapanAnna Fali NEGOTIATION
Kaitlin K GillianJapanAsiya Javayant UNQUALIFIED
Kadeem X GlickAustraliaOnyama Limba UNQUALIFIED
Johnson R BologniaAustraliaOnyama Limba UNQUALIFIED
Aditya R StockhamJapanAsiya Javayant UNQUALIFIED
Leja A ChuiUnited KingdomIvan Magalhaes PROPOSAL
Adams B DilliardAustraliaAnna Fali NEGOTIATION
Julie Z StensethIndiaIoni Bowcher UNQUALIFIED
Cody B MacleadItalyAsiya Javayant PROPOSAL
Costa H NickaItalyXuxue Feng UNQUALIFIED
Clifford S RutaGermanyXuxue Feng UNQUALIFIED
Antonio N VenereFranceBernardo Dominic QUALIFIED
Cody N MaletUnited KingdomAnna Fali UNQUALIFIED
Aruna H CampainItalyIoni Bowcher RENEWAL
Adams W WhobreyGermanyBernardo Dominic PROPOSAL
Francesco X MaletFranceElwin Sharvill QUALIFIED
Munro H ChuiRussiaAmy Elsner PROPOSAL
Tony D CampainItalyAsiya Javayant NEGOTIATION
Salvatore Q AmigonFranceAmy Elsner UNQUALIFIED
David B StockhamFranceXuxue Feng UNQUALIFIED
Kaitlin E BriddickArgentinaStephen Shaw QUALIFIED
Juan A KolmetzGermanyBernardo Dominic PROPOSAL
James K KolmetzJapanStephen Shaw RENEWAL
Mayumi J IturbideCanadaAmy Elsner RENEWAL
Arvin Q CaldareraBrazilAmy Elsner QUALIFIED
Nicolas O BologniaCanadaXuxue Feng QUALIFIED
Octavia O PaprockiArgentinaStephen Shaw UNQUALIFIED
Leja H BriddickItalyIoni Bowcher PROPOSAL
Arvin U RulapaughBrazilAnna Fali PROPOSAL
Kadeem S WaycottGermanyOnyama Limba RENEWAL
Jeanfrancois E BriddickIndiaStephen Shaw NEW
Smith M RimItalyIoni Bowcher RENEWAL
Darci A RimSpainAsiya Javayant UNQUALIFIED
Maria U DilliardCanadaOnyama Limba UNQUALIFIED

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