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
Stacey X SchemmerArgentinaBernardo Dominic RENEWAL
Claire O InouyeCanadaAnna Fali NEW
Izzy F IturbideFranceIvan Magalhaes RENEWAL
Jones Y CampainCanadaAsiya Javayant NEGOTIATION
Izzy K GillianAustraliaElwin Sharvill RENEWAL
Darci G NestleArgentinaStephen Shaw NEGOTIATION
Maria S CaudyArgentinaIvan Magalhaes RENEWAL
Francesco L FerenczIndiaAsiya Javayant NEW
Tony M FerenczGermanyIoni Bowcher PROPOSAL
Maisha U FollerSpainIvan Magalhaes RENEWAL
Izzy H GarufiUnited KingdomElwin Sharvill RENEWAL
David N AlbaresCanadaElwin Sharvill NEW
Claire Q GlickSpainAsiya Javayant NEGOTIATION
Johnson U OstroskyCanadaIvan Magalhaes PROPOSAL
Morrow N GarufiRussiaElwin Sharvill NEGOTIATION
Johnson L MaletIndiaOnyama Limba UNQUALIFIED
Greenwood C ButtBrazilAnna Fali NEGOTIATION
Maria B KolmetzArgentinaIoni Bowcher NEGOTIATION
Faith J VocelkaSpainAnna Fali QUALIFIED
Chavez K RutaBrazilIoni Bowcher RENEWAL
Johnson N VocelkaGermanyStephen Shaw QUALIFIED
Alejandro X GlickSpainAnna Fali NEGOTIATION
Darci Z StockhamSpainElwin Sharvill RENEWAL
Claire T PaprockiCanadaIvan Magalhaes NEGOTIATION
Kaitlin B GlickGermanyXuxue Feng RENEWAL
Mayumi K NickaRussiaAmy Elsner NEW
Jennifer Z RoysterArgentinaStephen Shaw QUALIFIED
Costa K MarrierItalyIoni Bowcher NEGOTIATION
Mujtaba A DarakjyGermanyOnyama Limba UNQUALIFIED
Jeanfrancois K OstroskyJapanElwin Sharvill UNQUALIFIED
Juan E ShinkoBrazilBernardo Dominic PROPOSAL
Faith K SaylorsItalyElwin Sharvill QUALIFIED
Ivar W PoquetteFranceAmy Elsner UNQUALIFIED
Costa R KuskoGermanyElwin Sharvill NEW
Johnson T KuskoAustraliaAnna Fali RENEWAL
Murillo O RimItalyAmy Elsner RENEWAL
Arvin F SlusarskiCanadaIvan Magalhaes QUALIFIED
Aditya E SaylorsIndiaElwin Sharvill UNQUALIFIED
Clifford C MarrierFranceAsiya Javayant NEGOTIATION
Claire L VocelkaBrazilXuxue Feng UNQUALIFIED
Chavez C AlbaresBrazilElwin Sharvill QUALIFIED
Jeanfrancois P DarakjyUnited KingdomElwin Sharvill QUALIFIED
Antonio W SchemmerAustraliaOnyama Limba QUALIFIED
Salvatore H RulapaughSpainOnyama Limba NEGOTIATION
Juan B WieserArgentinaAsiya Javayant NEW
Costa J MacleadFranceIoni Bowcher RENEWAL
Silvio T FlosiFranceAsiya Javayant RENEWAL
Antonio K FlosiRussiaOnyama Limba UNQUALIFIED
Juan R VenereFranceXuxue Feng UNQUALIFIED
Tony B PerinCanadaIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Silvio N BowleyFranceAnna Fali RENEWAL
Jefferson W StockhamFranceStephen Shaw RENEWAL
David H PerinArgentinaAsiya Javayant PROPOSAL
Johnson D ChuiAustraliaOnyama Limba PROPOSAL
Ivar D OldroydRussiaAmy Elsner NEGOTIATION
Jeanfrancois N OldroydAustraliaAnna Fali RENEWAL
Rodrigues E ButtSpainXuxue Feng NEW
Maria Y FlosiCanadaIoni Bowcher UNQUALIFIED
Julie P AlbaresAustraliaAmy Elsner PROPOSAL
Leon W CaldareraRussiaStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha B KuskoSpain2024-05-23Benton, John B Jr PROPOSAL41Elwin Sharvill
1001Misaki P PoquetteSpain2024-05-19King, Christopher A Esq RENEWAL60Ioni Bowcher
1002Kaitlin Y BriddickJapan2024-06-02Feiner Bros RENEWAL1Amy Elsner
1003Ricardo X WieserAustralia2024-05-22Feiner Bros UNQUALIFIED58Anna Fali
1004Mayumi T FollerIndia2024-05-05Chemel, James L Cpa NEW56Ivan Magalhaes
1005Mujtaba M PerinRussia2024-05-26Truhlar And Truhlar Attys UNQUALIFIED47Amy Elsner
1006Adams G RutaBrazil2024-05-08Dorl, James J Esq QUALIFIED56Onyama Limba
1007Emily J WhobreyIndia2024-05-26Benton, John B Jr QUALIFIED32Asiya Javayant
1008Deepesh D RutaRussia2024-05-10Rousseaux, Michael Esq RENEWAL94Bernardo Dominic
1009Claire K FerenczUnited Kingdom2024-05-19Chemel, James L Cpa PROPOSAL64Anna Fali
1010Isabel B OldroydAustralia2024-05-19Chapman, Ross E Esq UNQUALIFIED82Anna Fali
1011Murillo P DilliardJapan2024-05-12Benton, John B Jr NEGOTIATION27Xuxue Feng
1012Francesco W OldroydCanada2024-05-27Feiner Bros RENEWAL78Xuxue Feng
1013Wickens N RulapaughCanada2024-05-19Chanay, Jeffrey A Esq QUALIFIED83Stephen Shaw
1014Antonio A GauchoJapan2024-05-21Chemel, James L Cpa RENEWAL96Onyama Limba
1015Ashley B AlbaresIndia2024-05-20Benton, John B Jr UNQUALIFIED64Ioni Bowcher
1016Arvin I SlusarskiJapan2024-05-29Feltz Printing Service PROPOSAL77Anna Fali
1017Arvin Z RoysterSpain2024-05-26Printing Dimensions RENEWAL66Amy Elsner
1018Alejandro Z DilliardArgentina2024-05-12Rousseaux, Michael Esq UNQUALIFIED78Anna Fali
1019Leja P StensethBrazil2024-06-02Rousseaux, Michael Esq QUALIFIED2Anna Fali
1020Leja H BowleyUnited Kingdom2024-05-27Rousseaux, Michael Esq PROPOSAL63Elwin Sharvill
1021Cody R BowleyRussia2024-05-21Truhlar And Truhlar Attys UNQUALIFIED38Bernardo Dominic
1022Aditya K WieserSpain2024-05-24King, Christopher A Esq PROPOSAL60Ioni Bowcher
1023Cody B ButtAustralia2024-05-27Printing Dimensions UNQUALIFIED93Xuxue Feng
1024Jennifer J ShinkoArgentina2024-05-26Dorl, James J Esq RENEWAL49Bernardo Dominic
1025Aditya L CaudyItaly2024-05-29Chapman, Ross E Esq QUALIFIED1Bernardo Dominic
1026Ricardo Q SchemmerCanada2024-05-25Chanay, Jeffrey A Esq RENEWAL79Bernardo Dominic
1027Ivar Z SchemmerSpain2024-05-29Chapman, Ross E Esq UNQUALIFIED23Elwin Sharvill
1028Juan O WhobreyFrance2024-05-12Benton, John B Jr RENEWAL40Onyama Limba
1029Darci Y BriddickFrance2024-05-30King, Christopher A Esq QUALIFIED26Xuxue Feng
1030Leja E BriddickFrance2024-05-05Feltz Printing Service PROPOSAL82Elwin Sharvill
1031Stacey Y BowleyFrance2024-05-31Benton, John B Jr NEW94Elwin Sharvill
1032Adams E OstroskyFrance2024-05-17Chemel, James L Cpa PROPOSAL55Onyama Limba
1033Kaitlin Z VenereCanada2024-05-14Chanay, Jeffrey A Esq PROPOSAL32Asiya Javayant
1034Ricardo B KolmetzIndia2024-05-23Benton, John B Jr RENEWAL23Xuxue Feng
1035Leja E DilliardAustralia2024-05-19Rousseaux, Michael Esq NEGOTIATION58Asiya Javayant
1036Stacey F PerinRussia2024-05-05Truhlar And Truhlar Attys UNQUALIFIED56Xuxue Feng
1037Isabel H CampainItaly2024-05-21Feltz Printing Service NEGOTIATION7Stephen Shaw
1038Wickens A GlickSpain2024-05-22Printing Dimensions PROPOSAL92Amy Elsner
1039Jones X NestleGermany2024-05-25Rangoni Of Florence UNQUALIFIED68Bernardo Dominic
1040Ricardo G MaletArgentina2024-05-24Chanay, Jeffrey A Esq UNQUALIFIED87Bernardo Dominic
1041Sinclair J RimSpain2024-06-01Feiner Bros QUALIFIED10Ioni Bowcher
1042Izzy H PerinRussia2024-05-27Rangoni Of Florence QUALIFIED28Onyama Limba
1043David U RutaBrazil2024-05-21Chapman, Ross E Esq NEW20Asiya Javayant
1044Maisha B BowleyIndia2024-05-28Dorl, James J Esq PROPOSAL37Xuxue Feng
1045Leon L AlbaresFrance2024-05-13Chanay, Jeffrey A Esq QUALIFIED5Stephen Shaw
1046Mujtaba I CaldareraIndia2024-05-30King, Christopher A Esq PROPOSAL6Anna Fali
1047Jefferson X DoeRussia2024-05-13Feiner Bros RENEWAL55Bernardo Dominic
1048Mujtaba Z GlickGermany2024-05-29Buckley Miller Wright QUALIFIED79Anna Fali
1049Antonio G DarakjyJapan2024-05-21Commercial Press QUALIFIED22Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Claire Y RimBrazilIvan Magalhaes PROPOSAL
Murillo Y VocelkaJapanAmy Elsner NEGOTIATION
Wickens P MorascaUnited KingdomOnyama Limba PROPOSAL
Juan X IturbideRussiaBernardo Dominic PROPOSAL
Ricardo B WhobreyItalyIvan Magalhaes UNQUALIFIED
Alejandro P BologniaRussiaOnyama Limba NEGOTIATION
Kaitlin S AlbaresUnited KingdomIvan Magalhaes NEGOTIATION
Ivar R ShinkoUnited KingdomBernardo Dominic RENEWAL
Silvio T CaudyJapanStephen Shaw PROPOSAL
Salvatore N ShinkoFranceElwin Sharvill RENEWAL
Antonio Y TollnerRussiaAnna Fali NEGOTIATION
Izzy A PaprockiAustraliaAmy Elsner UNQUALIFIED
Ivar J RimIndiaIvan Magalhaes RENEWAL
Jefferson C NickaBrazilBernardo Dominic RENEWAL
Nicolas M ShinkoArgentinaXuxue Feng NEW
Leon U RulapaughGermanyOnyama Limba UNQUALIFIED
Maria Y FollerAustraliaOnyama Limba QUALIFIED
Kaitlin T GillianFranceIoni Bowcher QUALIFIED
Jones A MarrierGermanyOnyama Limba QUALIFIED
Misaki R VenereArgentinaAmy Elsner QUALIFIED
Stacey J CampainArgentinaXuxue Feng QUALIFIED
Adams R OldroydCanadaAnna Fali QUALIFIED
Ashley I FigeroaItalyStephen Shaw RENEWAL
Greenwood P BowleyBrazilBernardo Dominic NEW
Maria F ButtJapanBernardo Dominic NEW
Claire W OldroydCanadaStephen Shaw UNQUALIFIED
Salvatore W FerenczFranceAsiya Javayant PROPOSAL
Adams Z DoeRussiaElwin Sharvill NEW
David Y SaylorsRussiaXuxue Feng PROPOSAL
Maisha X MacleadGermanyStephen Shaw PROPOSAL
Jennifer N StockhamRussiaOnyama Limba UNQUALIFIED
Tony W BowleyCanadaXuxue Feng RENEWAL
Maria P GlickGermanyBernardo Dominic NEW
Maisha P KolmetzBrazilXuxue Feng PROPOSAL
Aika A PaprockiArgentinaBernardo Dominic NEW
Antonio J CaudyCanadaStephen Shaw NEW
Aruna J WaycottRussiaIoni Bowcher NEW
Rodrigues J GillianCanadaAnna Fali RENEWAL
Aruna I ShinkoBrazilXuxue Feng NEGOTIATION
Nicolas Q FigeroaFranceStephen Shaw RENEWAL
Isabel F BowleyFranceIvan Magalhaes PROPOSAL
Greenwood Z PerinAustraliaStephen Shaw NEGOTIATION
Chavez R CampainRussiaXuxue Feng NEGOTIATION
Francesco S AmigonRussiaAmy Elsner PROPOSAL
Francesco D RoysterSpainElwin Sharvill UNQUALIFIED
Isabel W MacleadJapanIvan Magalhaes PROPOSAL
Francesco L SergiArgentinaAmy Elsner UNQUALIFIED
Cody E DarakjyArgentinaAmy Elsner NEGOTIATION
Kadeem X RulapaughItalyStephen Shaw UNQUALIFIED
Antonio B FlosiJapanElwin Sharvill NEGOTIATION
Frozen Columns
Name
Aika C Stenseth
Misaki Q Inouye
Faith A Malet
Aruna B Marrier
Cody T Bowley
Antonio O Foller
Tony O Stockham
Mayumi A Nicka
Faith V Foller
Isabel A Malet
Jefferson Y Nestle
Tony G Slusarski
Stacey Q Ostrosky
James A Maclead
James Q Vocelka
Mujtaba L Inouye
Adams M Glick
Octavia Q Bowley
Emily U Malet
Cody Z Marrier
Jeanfrancois E Gaucho
Antonio X Caldarera
Juan G Figeroa
Wickens G Ostrosky
Wickens G Slusarski
Alejandro F Rim
Greenwood S Morasca
Costa A Dilliard
James Q Marrier
Costa E Perin
Wickens W Caudy
Cody G Ferencz
David V Foller
Aruna R Venere
Adams I Venere
Chavez F Tollner
Stacey V Oldroyd
Jennifer G Chui
Isabel H Kusko
Murillo K Marrier
Clifford X Foller
Aika Z Glick
Francesco R Nicka
Maria E Caldarera
Jefferson V Wieser
David X Foller
Silvio C Chui
Johnson Q Paprocki
Aika J Butt
Maria U Butt
IdCountryDate
1000Russia2024-05-25
1001India2024-05-09
1002Japan2024-05-07
1003Brazil2024-05-05
1004Argentina2024-05-06
1005United Kingdom2024-05-26
1006Canada2024-05-04
1007Russia2024-05-24
1008India2024-05-21
1009Germany2024-06-01
1010Japan2024-05-27
1011Russia2024-05-16
1012Japan2024-05-21
1013United Kingdom2024-05-26
1014Germany2024-05-10
1015India2024-05-16
1016United Kingdom2024-05-23
1017Australia2024-05-20
1018Japan2024-05-29
1019Spain2024-05-13
1020United Kingdom2024-05-18
1021United Kingdom2024-05-30
1022Italy2024-06-02
1023Italy2024-05-04
1024Brazil2024-05-06
1025Russia2024-05-29
1026India2024-05-21
1027Russia2024-05-28
1028Spain2024-06-02
1029France2024-05-07
1030Spain2024-05-06
1031United Kingdom2024-05-12
1032Brazil2024-05-13
1033Argentina2024-05-13
1034Germany2024-05-24
1035India2024-05-30
1036Germany2024-05-25
1037Spain2024-05-31
1038Argentina2024-05-25
1039Spain2024-05-16
1040United Kingdom2024-05-07
1041Japan2024-05-20
1042India2024-05-05
1043Japan2024-06-02
1044India2024-05-21
1045India2024-05-13
1046Germany2024-05-31
1047Brazil2024-05-12
1048Canada2024-05-05
1049Australia2024-05-24

On-Demand Data

NameIdCountryDate
Rodrigues N Briddick1000Argentina2024-05-25
Salvatore V Doe1001Brazil2024-05-30
Rodrigues V Iturbide1002Italy2024-05-07
Mujtaba Z Gaucho1003Brazil2024-05-06
Claire W Caudy1004Canada2024-06-02
Julie N Malet1005Australia2024-05-15
Aika T Foller1006Russia2024-05-07
Maria B Butt1007France2024-05-26
Wickens A Bolognia1008France2024-05-18
Misaki K Ferencz1009Australia2024-05-22
Chavez N Garufi1010Germany2024-05-23
Misaki N Darakjy1011Germany2024-05-16
Alejandro X Butt1012Australia2024-06-01
Kaitlin Q Shinko1013Italy2024-05-26
Alejandro J Garufi1014Australia2024-05-14
Wickens F Slusarski1015Australia2024-05-28
Silvio C Maclead1016Brazil2024-05-15
Mujtaba T Bowley1017Spain2024-05-28
Aditya A Figeroa1018India2024-05-22
Adams O Butt1019India2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi F ShinkoGermanyAnna Fali QUALIFIED
Faith Q MacleadCanadaStephen Shaw RENEWAL
Julie I SlusarskiGermanyXuxue Feng QUALIFIED
Mujtaba L NickaArgentinaAmy Elsner RENEWAL
Aditya H MaletBrazilAsiya Javayant NEGOTIATION
Sinclair E ChuiGermanyAnna Fali PROPOSAL
Cody B SchemmerIndiaXuxue Feng NEW
Juan B MaletArgentinaAnna Fali NEGOTIATION
Morrow Q ButtRussiaIoni Bowcher PROPOSAL
Deepesh Q RulapaughAustraliaElwin Sharvill NEW
Arvin F WhobreyRussiaXuxue Feng QUALIFIED
Ricardo L MaletGermanyAmy Elsner UNQUALIFIED
Cody G DilliardSpainXuxue Feng UNQUALIFIED
Izzy D FlosiAustraliaElwin Sharvill QUALIFIED
Wickens I StensethUnited KingdomOnyama Limba QUALIFIED
Ivar R SergiItalyBernardo Dominic RENEWAL
Arvin X DarakjyBrazilIvan Magalhaes UNQUALIFIED
Arvin Y MarrierCanadaAnna Fali PROPOSAL
Mujtaba F IturbideSpainIvan Magalhaes QUALIFIED
Juan V RimArgentinaBernardo Dominic RENEWAL
Darci O GlickRussiaIvan Magalhaes UNQUALIFIED
Mujtaba Z ShinkoBrazilIoni Bowcher PROPOSAL
David I KolmetzBrazilIoni Bowcher PROPOSAL
Johnson M NickaBrazilStephen Shaw NEGOTIATION
Tony M RoysterBrazilOnyama Limba NEW
Johnson V RoysterJapanAsiya Javayant QUALIFIED
Kadeem E AlbaresSpainOnyama Limba QUALIFIED
Ashley W BriddickIndiaIvan Magalhaes NEGOTIATION
Clifford N DoeItalyIoni Bowcher UNQUALIFIED
Jones T RulapaughGermanyOnyama Limba UNQUALIFIED
Kadeem M RimCanadaStephen Shaw NEW
Aruna H RutaCanadaIvan Magalhaes UNQUALIFIED
Ricardo Q ShinkoJapanStephen Shaw NEGOTIATION
David K CaudyBrazilIvan Magalhaes RENEWAL
Johnson C CaudyItalyOnyama Limba QUALIFIED
Aruna C DarakjyJapanAmy Elsner UNQUALIFIED
Claire X DarakjyJapanOnyama Limba RENEWAL
Leon G AlbaresUnited KingdomOnyama Limba NEW
Mujtaba U ChuiSpainBernardo Dominic PROPOSAL
Nicolas U MarrierItalyAnna Fali 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>