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 R VocelkaJapanAsiya Javayant NEW
Izzy R VenereUnited KingdomStephen Shaw RENEWAL
David Z RutaItalyIoni Bowcher NEGOTIATION
Antonio C PerinIndiaOnyama Limba PROPOSAL
Greenwood T PaprockiIndiaIvan Magalhaes NEGOTIATION
Munro F ButtUnited KingdomElwin Sharvill NEW
Stacey Y KolmetzAustraliaXuxue Feng NEW
Wickens J ChuiArgentinaAsiya Javayant NEW
Claire H KuskoAustraliaOnyama Limba UNQUALIFIED
Maria B TollnerJapanIoni Bowcher NEGOTIATION
Mayumi D FlosiIndiaOnyama Limba QUALIFIED
Kadeem P MaletGermanyAmy Elsner UNQUALIFIED
Izzy A PoquetteIndiaElwin Sharvill QUALIFIED
Ivar E MaletUnited KingdomAnna Fali QUALIFIED
Kadeem A IturbideAustraliaAmy Elsner RENEWAL
Tony F SlusarskiSpainAmy Elsner PROPOSAL
Faith L MaletGermanyElwin Sharvill NEW
Ricardo Q OldroydAustraliaElwin Sharvill UNQUALIFIED
Deepesh A KuskoCanadaBernardo Dominic NEW
Mujtaba C RimUnited KingdomStephen Shaw NEW
Adams G PerinGermanyAsiya Javayant QUALIFIED
Julie L BologniaArgentinaIvan Magalhaes NEW
Izzy N DarakjyCanadaIvan Magalhaes NEW
Johnson F CaudyUnited KingdomElwin Sharvill PROPOSAL
Greenwood P FlosiArgentinaIoni Bowcher QUALIFIED
Leja A BowleyItalyAmy Elsner UNQUALIFIED
David J KolmetzJapanAnna Fali UNQUALIFIED
David O CaldareraSpainAnna Fali UNQUALIFIED
Julie L VenereIndiaStephen Shaw QUALIFIED
Salvatore B BowleyRussiaOnyama Limba NEGOTIATION
Ashley C VenereBrazilStephen Shaw UNQUALIFIED
Claire I OstroskyItalyBernardo Dominic PROPOSAL
Salvatore H KolmetzCanadaIoni Bowcher PROPOSAL
Francesco K VenereItalyAnna Fali QUALIFIED
Kaitlin P DarakjyAustraliaStephen Shaw NEGOTIATION
Johnson L RutaSpainOnyama Limba UNQUALIFIED
Mujtaba O GillianArgentinaElwin Sharvill RENEWAL
Arvin X CaldareraIndiaOnyama Limba PROPOSAL
Ashley L PaprockiSpainAmy Elsner RENEWAL
Deepesh B RoysterAustraliaIvan Magalhaes RENEWAL
Isabel K VocelkaRussiaAmy Elsner NEW
Maisha T ChuiCanadaAnna Fali PROPOSAL
Mujtaba R SlusarskiBrazilStephen Shaw QUALIFIED
Jeanfrancois B SaylorsJapanBernardo Dominic UNQUALIFIED
Isabel V CaldareraCanadaIvan Magalhaes PROPOSAL
Jeanfrancois G CaudyFranceIvan Magalhaes NEW
Isabel S FollerGermanyAnna Fali UNQUALIFIED
Aika J InouyeJapanIoni Bowcher PROPOSAL
Leja K GauchoFranceAmy Elsner NEW
Kadeem S CampainItalyAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jones C CampainCanadaStephen Shaw NEGOTIATION
Aditya Y MacleadIndiaXuxue Feng NEW
Ricardo L DilliardItalyElwin Sharvill QUALIFIED
Claire W GillianRussiaAsiya Javayant QUALIFIED
Ivar M CampainCanadaStephen Shaw RENEWAL
Silvio U FlosiSpainAsiya Javayant UNQUALIFIED
Alejandro M FlosiRussiaIoni Bowcher PROPOSAL
Aditya X InouyeCanadaIoni Bowcher NEGOTIATION
Deepesh E WieserArgentinaAsiya Javayant UNQUALIFIED
Murillo H ChuiRussiaStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci Y PerinIndia2024-05-25Rousseaux, Michael Esq PROPOSAL60Xuxue Feng
1001Munro C MaletCanada2024-06-06Truhlar And Truhlar Attys RENEWAL86Anna Fali
1002Aika S MorascaArgentina2024-06-08Buckley Miller Wright RENEWAL92Ivan Magalhaes
1003Aika V BowleySpain2024-06-11Chanay, Jeffrey A Esq QUALIFIED32Ioni Bowcher
1004Jeanfrancois H WaycottFrance2024-06-01Printing Dimensions PROPOSAL57Elwin Sharvill
1005Emily N GarufiItaly2024-06-11Chapman, Ross E Esq QUALIFIED50Ioni Bowcher
1006Murillo I VenereJapan2024-06-07Commercial Press NEW82Ivan Magalhaes
1007Jeanfrancois Q CaudyArgentina2024-05-30Rousseaux, Michael Esq UNQUALIFIED50Xuxue Feng
1008Maisha S MacleadArgentina2024-06-17Feiner Bros NEGOTIATION3Onyama Limba
1009Leja X KolmetzFrance2024-05-28Benton, John B Jr QUALIFIED87Elwin Sharvill
1010Ashley L RutaFrance2024-05-23Printing Dimensions UNQUALIFIED87Ivan Magalhaes
1011Leon D VocelkaBrazil2024-06-02Benton, John B Jr UNQUALIFIED94Asiya Javayant
1012Aika Z KuskoFrance2024-05-27Printing Dimensions NEGOTIATION68Xuxue Feng
1013Aika N PoquetteRussia2024-06-14Benton, John B Jr NEGOTIATION29Bernardo Dominic
1014Greenwood O NickaIndia2024-06-04Morlong Associates PROPOSAL24Elwin Sharvill
1015Isabel F VenereSpain2024-06-03Benton, John B Jr UNQUALIFIED14Amy Elsner
1016Cody Z DarakjyItaly2024-06-03Rousseaux, Michael Esq NEGOTIATION91Amy Elsner
1017Deepesh S IturbideUnited Kingdom2024-05-25Chemel, James L Cpa NEW31Anna Fali
1018Maria C SchemmerBrazil2024-06-06Commercial Press UNQUALIFIED46Stephen Shaw
1019Aika Q StockhamArgentina2024-06-08Chemel, James L Cpa QUALIFIED12Ioni Bowcher
1020Clifford G WaycottIndia2024-06-01Morlong Associates RENEWAL2Ivan Magalhaes
1021Tony Z NickaIndia2024-05-20Morlong Associates QUALIFIED66Xuxue Feng
1022Wickens X OldroydJapan2024-06-16Dorl, James J Esq NEGOTIATION43Stephen Shaw
1023Arvin G GarufiArgentina2024-06-16Rangoni Of Florence QUALIFIED51Anna Fali
1024Octavia X WhobreyFrance2024-05-24Commercial Press QUALIFIED2Xuxue Feng
1025Claire M FollerGermany2024-05-29Chapman, Ross E Esq UNQUALIFIED41Amy Elsner
1026Cody B CampainJapan2024-06-11Benton, John B Jr NEW91Elwin Sharvill
1027Juan T ChuiAustralia2024-06-09Truhlar And Truhlar Attys RENEWAL5Stephen Shaw
1028Alejandro V ShinkoItaly2024-06-16Dorl, James J Esq UNQUALIFIED66Ioni Bowcher
1029James G VocelkaIndia2024-06-15King, Christopher A Esq NEW15Elwin Sharvill
1030Wickens U ChuiBrazil2024-05-20King, Christopher A Esq PROPOSAL37Stephen Shaw
1031Aruna U OldroydCanada2024-06-07Buckley Miller Wright PROPOSAL78Stephen Shaw
1032Tony M SlusarskiCanada2024-06-14Morlong Associates RENEWAL38Amy Elsner
1033Aditya D BologniaFrance2024-05-25Feltz Printing Service RENEWAL77Stephen Shaw
1034Maria W MarrierJapan2024-06-10Rangoni Of Florence NEW52Stephen Shaw
1035Misaki D MacleadJapan2024-06-09Dorl, James J Esq QUALIFIED67Anna Fali
1036Tony K VocelkaItaly2024-06-18Commercial Press UNQUALIFIED30Amy Elsner
1037Greenwood I NestleAustralia2024-06-08Feltz Printing Service PROPOSAL5Amy Elsner
1038Ricardo T TollnerItaly2024-06-12Chapman, Ross E Esq UNQUALIFIED27Xuxue Feng
1039Julie J SchemmerCanada2024-06-03Benton, John B Jr NEW30Bernardo Dominic
1040David W MarrierJapan2024-05-23Rangoni Of Florence NEW87Onyama Limba
1041Izzy W CaldareraCanada2024-05-20Feltz Printing Service UNQUALIFIED95Stephen Shaw
1042Silvio Y RoysterCanada2024-06-11Morlong Associates QUALIFIED5Xuxue Feng
1043Mujtaba A CampainArgentina2024-06-03King, Christopher A Esq RENEWAL35Xuxue Feng
1044Murillo E PaprockiArgentina2024-06-01King, Christopher A Esq QUALIFIED86Ivan Magalhaes
1045Clifford Q DoeJapan2024-05-31Buckley Miller Wright NEW19Xuxue Feng
1046Maisha E WieserArgentina2024-06-08Truhlar And Truhlar Attys UNQUALIFIED96Elwin Sharvill
1047Jefferson J RulapaughCanada2024-05-28Chanay, Jeffrey A Esq NEGOTIATION46Anna Fali
1048Nicolas Y AmigonJapan2024-06-12Buckley Miller Wright RENEWAL86Elwin Sharvill
1049Wickens T TollnerRussia2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED30Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Ivar S MaletRussiaIvan Magalhaes NEW
Smith D WaycottGermanyXuxue Feng NEW
David H NickaArgentinaBernardo Dominic QUALIFIED
Johnson Q FerenczRussiaBernardo Dominic PROPOSAL
Silvio W MaletBrazilAmy Elsner NEGOTIATION
Ashley H ShinkoGermanyAnna Fali RENEWAL
Faith A DarakjyGermanyStephen Shaw NEGOTIATION
Kaitlin B SaylorsJapanXuxue Feng NEGOTIATION
Maria Y KolmetzFranceStephen Shaw NEW
Francesco O VenereIndiaIvan Magalhaes UNQUALIFIED
Faith S MarrierJapanIoni Bowcher QUALIFIED
Tony G PoquetteAustraliaBernardo Dominic NEW
Jeanfrancois H IturbideAustraliaElwin Sharvill UNQUALIFIED
Isabel D SaylorsBrazilAnna Fali NEW
Jefferson G FlosiRussiaOnyama Limba QUALIFIED
Ricardo O MaletIndiaIoni Bowcher PROPOSAL
Costa Y MacleadJapanElwin Sharvill PROPOSAL
Octavia T DilliardItalyIvan Magalhaes UNQUALIFIED
Ivar R StockhamIndiaAsiya Javayant UNQUALIFIED
Mujtaba Q SlusarskiSpainStephen Shaw QUALIFIED
Smith R WieserUnited KingdomBernardo Dominic PROPOSAL
Smith C RimGermanyElwin Sharvill NEW
Jennifer V DilliardFranceStephen Shaw NEGOTIATION
Julie Y SaylorsCanadaBernardo Dominic UNQUALIFIED
Kaitlin D AlbaresBrazilAnna Fali RENEWAL
Faith K WhobreyArgentinaIoni Bowcher NEW
Silvio Z StockhamAustraliaIoni Bowcher QUALIFIED
Smith R SergiBrazilIvan Magalhaes RENEWAL
Chavez W BologniaSpainXuxue Feng NEW
Kaitlin G SergiArgentinaStephen Shaw QUALIFIED
Clifford X RoysterIndiaXuxue Feng UNQUALIFIED
Claire G WaycottGermanyAnna Fali UNQUALIFIED
Chavez K BowleyBrazilXuxue Feng RENEWAL
Chavez A RutaArgentinaXuxue Feng RENEWAL
Kaitlin Q NestleRussiaXuxue Feng PROPOSAL
Leja P IturbideRussiaOnyama Limba QUALIFIED
Nicolas T SergiIndiaOnyama Limba NEW
Greenwood X GlickFranceIvan Magalhaes NEW
Maria P MorascaRussiaBernardo Dominic UNQUALIFIED
Emily I CampainUnited KingdomStephen Shaw QUALIFIED
Aika Z PaprockiItalyElwin Sharvill RENEWAL
Emily Z IturbideGermanyIoni Bowcher RENEWAL
Maisha Q OldroydSpainBernardo Dominic UNQUALIFIED
Jefferson R MaletArgentinaAnna Fali PROPOSAL
Sinclair S RoysterArgentinaElwin Sharvill QUALIFIED
Costa C VenereIndiaBernardo Dominic UNQUALIFIED
Mujtaba D OstroskyItalyElwin Sharvill QUALIFIED
Salvatore A NickaBrazilAsiya Javayant RENEWAL
Izzy R FerenczSpainBernardo Dominic UNQUALIFIED
Emily Y ButtJapanOnyama Limba NEW
Frozen Columns
Name
Ashley X Garufi
Antonio Z Chui
Wickens J Perin
Kadeem Y Darakjy
Kaitlin Z Glick
Leja X Albares
Kadeem D Amigon
Darci I Maclead
Kadeem C Shinko
Nicolas S Rulapaugh
Kaitlin X Vocelka
James R Ferencz
Faith U Shinko
Nicolas X Foller
Jennifer X Figeroa
Murillo C Vocelka
Stacey U Venere
David V Slusarski
Octavia L Tollner
Emily H Royster
Kadeem G Venere
Jennifer B Foller
Tony K Wieser
Morrow L Caldarera
Deepesh H Iturbide
Aditya E Royster
Maria W Briddick
Claire M Schemmer
Ivar H Butt
Ivar Q Gaucho
Cody R Figeroa
Adams R Ostrosky
Jefferson E Rulapaugh
Alejandro J Morasca
Salvatore F Ferencz
Izzy H Butt
Emily D Campain
Antonio T Amigon
Chavez E Waycott
Octavia G Ferencz
Murillo T Ostrosky
Octavia F Kolmetz
Aika R Doe
Wickens H Chui
Stacey D Paprocki
Claire O Nicka
Tony K Rim
Wickens J Venere
Deepesh X Glick
Johnson M Wieser
IdCountryDate
1000United Kingdom2024-05-31
1001United Kingdom2024-06-16
1002India2024-05-31
1003Brazil2024-06-06
1004Brazil2024-06-17
1005Italy2024-06-14
1006Germany2024-06-11
1007Germany2024-06-17
1008Russia2024-06-18
1009Japan2024-05-26
1010Japan2024-06-05
1011United Kingdom2024-05-28
1012India2024-06-05
1013Brazil2024-05-20
1014Italy2024-05-21
1015France2024-06-17
1016Brazil2024-06-11
1017Argentina2024-05-26
1018India2024-05-25
1019Argentina2024-06-16
1020India2024-05-30
1021United Kingdom2024-06-09
1022Australia2024-05-22
1023Germany2024-05-30
1024Spain2024-06-04
1025Brazil2024-05-27
1026France2024-06-16
1027Germany2024-06-07
1028Canada2024-05-26
1029Argentina2024-05-22
1030Germany2024-05-21
1031India2024-06-08
1032Brazil2024-05-30
1033Argentina2024-06-12
1034Japan2024-06-10
1035Germany2024-06-07
1036Spain2024-05-29
1037France2024-05-25
1038Spain2024-06-09
1039Brazil2024-06-05
1040Argentina2024-05-26
1041Brazil2024-05-31
1042India2024-06-17
1043Canada2024-05-29
1044Brazil2024-06-18
1045United Kingdom2024-06-07
1046Canada2024-05-29
1047Brazil2024-05-28
1048Japan2024-05-26
1049Canada2024-06-02

On-Demand Data

NameIdCountryDate
Octavia W Albares1000Canada2024-06-14
Alejandro X Garufi1001Australia2024-05-20
Faith I Wieser1002Argentina2024-05-28
Aditya G Kusko1003Argentina2024-06-07
Claire P Royster1004France2024-06-09
Deepesh A Nestle1005Australia2024-05-26
Adams C Garufi1006Russia2024-06-04
Francesco W Rulapaugh1007India2024-05-20
Aika Z Albares1008Germany2024-06-12
Salvatore V Morasca1009Spain2024-06-05
Isabel R Amigon1010Spain2024-06-04
Sinclair J Ruta1011Argentina2024-06-13
Stacey G Perin1012United Kingdom2024-06-08
Murillo T Venere1013Canada2024-06-03
Wickens I Marrier1014India2024-06-16
Maisha I Iturbide1015Canada2024-05-23
Sinclair Z Bolognia1016United Kingdom2024-05-20
Aika K Schemmer1017Russia2024-06-18
Smith Y Bowley1018Brazil2024-05-26
Johnson U Chui1019Italy2024-06-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna D SchemmerIndiaBernardo Dominic PROPOSAL
Ivar O GarufiGermanyXuxue Feng NEGOTIATION
Arvin Z PoquetteRussiaXuxue Feng QUALIFIED
Ricardo R AmigonSpainAnna Fali NEW
Leja N TollnerRussiaIoni Bowcher NEW
Clifford U VenereItalyIvan Magalhaes NEGOTIATION
Smith J RoysterArgentinaAnna Fali NEGOTIATION
Aika P StensethBrazilStephen Shaw NEGOTIATION
Francesco D MaletBrazilOnyama Limba UNQUALIFIED
Chavez L KuskoFranceBernardo Dominic NEW
Johnson H NickaFranceBernardo Dominic RENEWAL
Juan C StensethSpainXuxue Feng UNQUALIFIED
Nicolas A MorascaCanadaAnna Fali PROPOSAL
Sinclair W OstroskyUnited KingdomAsiya Javayant RENEWAL
Costa F OldroydFranceAsiya Javayant RENEWAL
Juan Y MacleadJapanStephen Shaw RENEWAL
Costa V RoysterItalyStephen Shaw UNQUALIFIED
Isabel Q OstroskySpainAmy Elsner PROPOSAL
Nicolas U BowleyFranceIvan Magalhaes UNQUALIFIED
Greenwood Z FigeroaBrazilIvan Magalhaes QUALIFIED
Chavez U AlbaresUnited KingdomAnna Fali UNQUALIFIED
Ivar S BowleyBrazilStephen Shaw RENEWAL
Juan F OstroskyBrazilIvan Magalhaes QUALIFIED
Ricardo G FlosiBrazilElwin Sharvill QUALIFIED
Kaitlin K PerinJapanOnyama Limba RENEWAL
Maria H MaletGermanyBernardo Dominic QUALIFIED
Deepesh U FerenczSpainAmy Elsner NEW
Emily B InouyeUnited KingdomIoni Bowcher NEW
Leja P MaletRussiaIvan Magalhaes PROPOSAL
Juan B KuskoUnited KingdomIoni Bowcher NEW
Silvio C MorascaAustraliaAmy Elsner PROPOSAL
Isabel E FollerFranceStephen Shaw PROPOSAL
Juan F MacleadBrazilAmy Elsner PROPOSAL
Maisha E WieserArgentinaIvan Magalhaes NEGOTIATION
Clifford Q MaletItalyOnyama Limba NEW
Kaitlin N PerinJapanElwin Sharvill NEGOTIATION
Izzy I KolmetzSpainElwin Sharvill PROPOSAL
Johnson E ShinkoJapanXuxue Feng PROPOSAL
Isabel P MacleadUnited KingdomIvan Magalhaes PROPOSAL
Aditya J OldroydIndiaIvan Magalhaes 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>