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
Aruna F SlusarskiArgentinaBernardo Dominic RENEWAL
Faith E ShinkoJapanIvan Magalhaes QUALIFIED
Juan A FerenczAustraliaStephen Shaw QUALIFIED
Kaitlin I FerenczItalyAnna Fali QUALIFIED
Mayumi T FollerSpainBernardo Dominic RENEWAL
Wickens S RulapaughBrazilAmy Elsner RENEWAL
Stacey A MaletUnited KingdomXuxue Feng RENEWAL
Tony G MorascaRussiaBernardo Dominic NEGOTIATION
Faith L ChuiCanadaIoni Bowcher PROPOSAL
Alejandro P OldroydUnited KingdomXuxue Feng UNQUALIFIED
Adams F FerenczCanadaOnyama Limba NEW
Nicolas L SchemmerUnited KingdomIoni Bowcher PROPOSAL
Kadeem W GlickItalyIoni Bowcher NEGOTIATION
Nicolas I GauchoGermanyElwin Sharvill NEGOTIATION
Julie T MaletAustraliaBernardo Dominic RENEWAL
Cody I FollerFranceIoni Bowcher NEGOTIATION
Kaitlin U BologniaAustraliaIoni Bowcher NEW
Clifford T KuskoFranceAmy Elsner RENEWAL
Cody M CaldareraBrazilAsiya Javayant NEW
Mujtaba J PoquetteAustraliaAmy Elsner RENEWAL
Aruna B NestleRussiaOnyama Limba RENEWAL
Aruna X DoeCanadaIvan Magalhaes RENEWAL
Greenwood Z PerinAustraliaAmy Elsner QUALIFIED
Sinclair K PaprockiSpainAsiya Javayant RENEWAL
Izzy C RoysterIndiaAmy Elsner UNQUALIFIED
Mayumi N MorascaJapanOnyama Limba PROPOSAL
Aruna M NestleUnited KingdomStephen Shaw NEW
Darci R WhobreyRussiaAnna Fali NEW
Ashley F RimGermanyAsiya Javayant NEGOTIATION
Emily U FigeroaItalyIoni Bowcher NEW
Ashley A PoquetteJapanBernardo Dominic QUALIFIED
Greenwood O DarakjyCanadaAmy Elsner UNQUALIFIED
Alejandro Z CampainJapanXuxue Feng UNQUALIFIED
Isabel N FerenczCanadaXuxue Feng QUALIFIED
Cody G PoquetteBrazilStephen Shaw RENEWAL
James C KolmetzGermanyElwin Sharvill NEGOTIATION
Alejandro K AlbaresBrazilAsiya Javayant UNQUALIFIED
Misaki V FlosiCanadaBernardo Dominic NEW
Greenwood Y InouyeCanadaOnyama Limba NEGOTIATION
Julie N VocelkaAustraliaXuxue Feng QUALIFIED
Ashley G FigeroaItalyElwin Sharvill PROPOSAL
Sinclair X MaletJapanAmy Elsner QUALIFIED
Chavez G CaldareraArgentinaAsiya Javayant RENEWAL
Jennifer O RoysterBrazilIvan Magalhaes QUALIFIED
Jefferson O InouyeFranceAsiya Javayant UNQUALIFIED
Aika A AlbaresSpainIoni Bowcher QUALIFIED
Misaki L SlusarskiRussiaAnna Fali NEGOTIATION
Francesco Q CampainGermanyAnna Fali UNQUALIFIED
Sinclair P FerenczBrazilAmy Elsner UNQUALIFIED
Leja L ButtUnited KingdomBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Johnson F CaudyItalyAmy Elsner PROPOSAL
Salvatore Z AmigonFranceBernardo Dominic NEW
Ashley E CaldareraArgentinaElwin Sharvill PROPOSAL
Isabel H SchemmerIndiaStephen Shaw NEGOTIATION
Juan B FerenczIndiaAnna Fali NEW
Francesco J VocelkaJapanIoni Bowcher UNQUALIFIED
Wickens K MorascaSpainBernardo Dominic PROPOSAL
Wickens U BologniaIndiaOnyama Limba NEW
Costa I RutaSpainBernardo Dominic RENEWAL
Salvatore O CampainCanadaOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya Y WaycottFrance2024-06-04Morlong Associates NEGOTIATION90Amy Elsner
1001Arvin R ShinkoBrazil2024-05-27Chemel, James L Cpa NEW26Onyama Limba
1002Maria C ShinkoUnited Kingdom2024-05-22Morlong Associates PROPOSAL42Ioni Bowcher
1003Jones G BologniaItaly2024-06-01Printing Dimensions RENEWAL80Elwin Sharvill
1004Tony M RulapaughIndia2024-05-30Feiner Bros PROPOSAL0Asiya Javayant
1005Mujtaba Q ChuiItaly2024-06-13Dorl, James J Esq NEGOTIATION68Amy Elsner
1006Ashley H VocelkaCanada2024-06-09Feiner Bros NEGOTIATION76Onyama Limba
1007Maisha C GillianSpain2024-06-16Chemel, James L Cpa RENEWAL22Onyama Limba
1008Ricardo N AlbaresRussia2024-06-12Morlong Associates UNQUALIFIED14Stephen Shaw
1009Maisha Z DarakjyItaly2024-06-11Chemel, James L Cpa RENEWAL42Asiya Javayant
1010Murillo R RutaJapan2024-06-03Dorl, James J Esq NEGOTIATION73Bernardo Dominic
1011Aruna E StensethBrazil2024-06-16Feltz Printing Service QUALIFIED59Bernardo Dominic
1012Darci F MaletRussia2024-06-03Chapman, Ross E Esq UNQUALIFIED53Amy Elsner
1013Deepesh S FerenczItaly2024-06-01Morlong Associates RENEWAL56Elwin Sharvill
1014Julie M SergiSpain2024-06-09Rousseaux, Michael Esq UNQUALIFIED57Stephen Shaw
1015Silvio Y BologniaGermany2024-06-14Feiner Bros UNQUALIFIED3Stephen Shaw
1016Aruna W BologniaArgentina2024-05-21Dorl, James J Esq PROPOSAL92Elwin Sharvill
1017Ivar H ChuiCanada2024-06-06Rousseaux, Michael Esq PROPOSAL7Stephen Shaw
1018Chavez C CaudyUnited Kingdom2024-05-31King, Christopher A Esq QUALIFIED15Asiya Javayant
1019Francesco K IturbideGermany2024-05-23Benton, John B Jr QUALIFIED9Onyama Limba
1020Munro H BowleyJapan2024-05-30Chanay, Jeffrey A Esq NEGOTIATION36Anna Fali
1021Claire K MorascaAustralia2024-06-05Chanay, Jeffrey A Esq NEW44Xuxue Feng
1022Arvin A CampainIndia2024-06-02Printing Dimensions RENEWAL53Amy Elsner
1023David J AmigonJapan2024-05-30Feiner Bros PROPOSAL51Ioni Bowcher
1024Julie J GauchoFrance2024-06-09Chemel, James L Cpa UNQUALIFIED82Amy Elsner
1025Wickens C NickaSpain2024-05-19Morlong Associates PROPOSAL13Ivan Magalhaes
1026Munro J SaylorsIndia2024-06-14Chemel, James L Cpa RENEWAL80Ivan Magalhaes
1027Deepesh Q VenereUnited Kingdom2024-06-07Rousseaux, Michael Esq RENEWAL77Onyama Limba
1028Chavez Y FollerItaly2024-06-05Feiner Bros PROPOSAL78Anna Fali
1029Stacey M SchemmerAustralia2024-06-03Feltz Printing Service NEW82Elwin Sharvill
1030Wickens F IturbideGermany2024-05-28Chapman, Ross E Esq QUALIFIED68Ioni Bowcher
1031Cody A BowleyAustralia2024-06-05Rangoni Of Florence UNQUALIFIED38Ioni Bowcher
1032Arvin C SergiFrance2024-05-22Chapman, Ross E Esq UNQUALIFIED0Asiya Javayant
1033Antonio O StockhamArgentina2024-06-16King, Christopher A Esq PROPOSAL22Elwin Sharvill
1034Deepesh T FollerBrazil2024-06-11Printing Dimensions NEW1Elwin Sharvill
1035Ashley H SergiFrance2024-06-10Truhlar And Truhlar Attys NEGOTIATION88Xuxue Feng
1036Ivar F SaylorsIndia2024-06-15Printing Dimensions RENEWAL71Xuxue Feng
1037Jones A FlosiGermany2024-06-10Rousseaux, Michael Esq UNQUALIFIED92Anna Fali
1038Ashley T StockhamCanada2024-05-28Morlong Associates QUALIFIED28Stephen Shaw
1039Arvin Z BowleyIndia2024-06-10Chemel, James L Cpa NEW69Elwin Sharvill
1040Tony N BologniaItaly2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED58Bernardo Dominic
1041Ashley O GarufiFrance2024-05-20Rangoni Of Florence RENEWAL51Bernardo Dominic
1042Faith L GarufiCanada2024-06-17Feltz Printing Service RENEWAL88Amy Elsner
1043Maria C IturbideItaly2024-05-31King, Christopher A Esq UNQUALIFIED94Elwin Sharvill
1044Antonio F WieserBrazil2024-05-23Dorl, James J Esq NEW0Elwin Sharvill
1045Emily S RutaGermany2024-05-28Benton, John B Jr NEGOTIATION21Elwin Sharvill
1046Alejandro O ButtGermany2024-06-08Rangoni Of Florence NEGOTIATION12Onyama Limba
1047Faith B MarrierFrance2024-06-09King, Christopher A Esq RENEWAL39Stephen Shaw
1048Jones M CaudyRussia2024-05-31Benton, John B Jr NEGOTIATION20Elwin Sharvill
1049Izzy C MorascaCanada2024-06-10Buckley Miller Wright PROPOSAL39Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Jennifer Z OldroydAustraliaElwin Sharvill PROPOSAL
Wickens Y KolmetzGermanyIvan Magalhaes NEGOTIATION
Deepesh H NestleGermanyXuxue Feng NEW
Emily E TollnerAustraliaAnna Fali QUALIFIED
Stacey C NestleArgentinaAnna Fali PROPOSAL
Izzy F DilliardAustraliaElwin Sharvill PROPOSAL
Sinclair Z CaldareraJapanBernardo Dominic RENEWAL
Murillo X GillianItalyAmy Elsner RENEWAL
Deepesh O FollerRussiaBernardo Dominic PROPOSAL
Costa U KuskoArgentinaIvan Magalhaes NEGOTIATION
Faith K KuskoJapanOnyama Limba QUALIFIED
Leon Y OstroskyItalyOnyama Limba RENEWAL
Isabel Q MarrierIndiaAmy Elsner NEW
Francesco A GillianJapanIvan Magalhaes PROPOSAL
Chavez T ChuiGermanyOnyama Limba NEGOTIATION
Maria C VocelkaGermanyAnna Fali PROPOSAL
Juan B KuskoGermanyStephen Shaw UNQUALIFIED
Jefferson B InouyeRussiaAnna Fali NEW
Stacey K IturbideIndiaElwin Sharvill QUALIFIED
Costa A NickaItalyStephen Shaw PROPOSAL
Jones R FollerFranceOnyama Limba RENEWAL
Salvatore N GauchoUnited KingdomOnyama Limba NEW
Stacey C FerenczGermanyOnyama Limba PROPOSAL
Aruna A TollnerGermanyBernardo Dominic NEGOTIATION
Johnson E KuskoAustraliaElwin Sharvill NEW
Sinclair W NestleGermanyOnyama Limba RENEWAL
Emily G VenereJapanStephen Shaw NEGOTIATION
Kaitlin J ShinkoIndiaIoni Bowcher PROPOSAL
Arvin R FerenczJapanBernardo Dominic NEW
Deepesh Z SergiArgentinaAmy Elsner RENEWAL
David T RimSpainOnyama Limba UNQUALIFIED
Isabel E SaylorsBrazilIoni Bowcher UNQUALIFIED
Leja G ShinkoRussiaStephen Shaw NEGOTIATION
Aruna A RimFranceIoni Bowcher RENEWAL
David P RutaRussiaOnyama Limba NEGOTIATION
James F VenereUnited KingdomIoni Bowcher NEGOTIATION
Maisha Y DoeBrazilElwin Sharvill UNQUALIFIED
Antonio B BologniaItalyAnna Fali NEW
Juan G MacleadJapanIvan Magalhaes UNQUALIFIED
Sinclair J AmigonSpainIvan Magalhaes QUALIFIED
Leja Q WieserRussiaAsiya Javayant QUALIFIED
Aditya L StensethArgentinaAsiya Javayant UNQUALIFIED
Costa Z NestleFranceAnna Fali NEGOTIATION
Julie K PaprockiCanadaAnna Fali QUALIFIED
Tony E IturbideUnited KingdomIoni Bowcher NEW
Aika I NickaRussiaStephen Shaw QUALIFIED
Arvin U KolmetzArgentinaXuxue Feng NEGOTIATION
Juan U RutaAustraliaXuxue Feng NEGOTIATION
Greenwood V MaletJapanStephen Shaw NEW
David C GillianFranceAnna Fali UNQUALIFIED
Frozen Columns
Name
Jennifer P Tollner
Cody K Sergi
Jefferson D Dilliard
Faith V Ruta
Darci M Nestle
Izzy J Butt
Stacey I Glick
Costa A Nicka
Greenwood L Albares
Ashley Y Butt
David T Paprocki
Ricardo O Sergi
Johnson W Chui
Chavez G Caudy
Tony M Marrier
Izzy O Ferencz
Tony W Kusko
Silvio Q Ruta
Leon L Gaucho
Francesco Z Sergi
Antonio E Kusko
Deepesh Y Malet
Jones J Kolmetz
Murillo N Shinko
Murillo N Flosi
Maria Q Gillian
Jones A Amigon
Nicolas Y Chui
Mujtaba Q Paprocki
Darci V Vocelka
Claire O Rim
James F Poquette
Sinclair I Paprocki
Morrow L Rulapaugh
Jones J Venere
Nicolas R Marrier
Rodrigues U Nicka
Clifford R Nicka
Jennifer X Rulapaugh
Munro P Kolmetz
Silvio T Kolmetz
Leja C Ruta
Ivar F Sergi
Faith I Butt
Aruna V Darakjy
Ricardo W Caudy
Tony G Campain
Cody U Dilliard
Francesco Z Rim
Jefferson G Ferencz
IdCountryDate
1000Japan2024-05-29
1001Japan2024-05-21
1002Brazil2024-06-05
1003Japan2024-06-01
1004United Kingdom2024-06-01
1005Australia2024-05-31
1006Argentina2024-06-08
1007Canada2024-05-20
1008France2024-06-03
1009Canada2024-06-04
1010Russia2024-06-01
1011Canada2024-06-06
1012Australia2024-05-28
1013Canada2024-06-07
1014Russia2024-06-13
1015France2024-05-31
1016Japan2024-06-14
1017Italy2024-06-17
1018Spain2024-05-19
1019Spain2024-06-10
1020Russia2024-06-09
1021India2024-05-28
1022India2024-06-12
1023Germany2024-05-28
1024Brazil2024-06-08
1025Japan2024-06-10
1026Australia2024-06-11
1027United Kingdom2024-06-05
1028India2024-06-15
1029France2024-06-15
1030United Kingdom2024-06-12
1031Argentina2024-06-12
1032Brazil2024-06-15
1033Italy2024-06-08
1034Spain2024-05-22
1035United Kingdom2024-06-13
1036France2024-06-01
1037Australia2024-06-06
1038France2024-05-23
1039United Kingdom2024-06-10
1040Japan2024-06-15
1041Canada2024-05-31
1042Germany2024-06-14
1043Canada2024-05-29
1044Germany2024-06-14
1045Japan2024-06-05
1046United Kingdom2024-05-27
1047Argentina2024-05-21
1048Australia2024-06-17
1049Canada2024-06-01

On-Demand Data

NameIdCountryDate
Izzy R Dilliard1000Russia2024-06-01
Greenwood E Flosi1001Argentina2024-06-14
Clifford B Nestle1002Argentina2024-05-31
Leja F Malet1003Italy2024-05-23
Silvio Z Paprocki1004Russia2024-06-04
Sinclair I Perin1005Argentina2024-06-17
Antonio C Saylors1006France2024-06-05
Ashley M Foller1007India2024-05-25
Misaki Z Royster1008Canada2024-06-08
Johnson M Kolmetz1009India2024-06-09
Costa G Paprocki1010Argentina2024-06-01
James R Briddick1011Canada2024-05-27
Maria N Campain1012Brazil2024-06-08
Smith D Slusarski1013France2024-06-08
Smith B Caudy1014United Kingdom2024-06-01
Aditya Z Briddick1015Japan2024-05-26
Deepesh O Wieser1016Canada2024-05-20
Arvin K Gillian1017Japan2024-05-19
Smith P Venere1018Italy2024-05-23
Mayumi J Stockham1019Germany2024-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Darci K IturbideJapanElwin Sharvill RENEWAL
Kadeem T ButtJapanAmy Elsner QUALIFIED
Leja Y GauchoArgentinaStephen Shaw NEW
Munro X SaylorsSpainIoni Bowcher NEGOTIATION
Johnson P IturbideRussiaAmy Elsner NEW
Kadeem H RimIndiaElwin Sharvill QUALIFIED
Rodrigues F MacleadFranceXuxue Feng QUALIFIED
Kaitlin W VenereArgentinaAmy Elsner UNQUALIFIED
Aditya I FigeroaFranceIoni Bowcher RENEWAL
Izzy C NestleIndiaIoni Bowcher PROPOSAL
Sinclair C AlbaresBrazilIvan Magalhaes NEW
Antonio L KolmetzSpainAmy Elsner NEGOTIATION
Aditya Y SlusarskiGermanyXuxue Feng UNQUALIFIED
Claire L ButtJapanAsiya Javayant UNQUALIFIED
Faith I DoeJapanAsiya Javayant UNQUALIFIED
Munro W PerinIndiaOnyama Limba QUALIFIED
Octavia D MacleadCanadaAmy Elsner RENEWAL
Greenwood O KuskoSpainOnyama Limba UNQUALIFIED
Johnson P VenereIndiaElwin Sharvill NEGOTIATION
Rodrigues U CaldareraSpainAsiya Javayant PROPOSAL
Arvin K FigeroaJapanAmy Elsner NEGOTIATION
Wickens Y FigeroaArgentinaAmy Elsner UNQUALIFIED
Adams P FollerRussiaAnna Fali UNQUALIFIED
Mujtaba C TollnerArgentinaAmy Elsner QUALIFIED
Faith Q RutaBrazilAsiya Javayant NEGOTIATION
Kadeem O RoysterCanadaAnna Fali UNQUALIFIED
Claire S SaylorsAustraliaStephen Shaw UNQUALIFIED
Cody W OldroydCanadaXuxue Feng NEGOTIATION
Costa U TollnerAustraliaIvan Magalhaes PROPOSAL
Jefferson K BologniaFranceOnyama Limba QUALIFIED
Munro R FollerRussiaBernardo Dominic RENEWAL
Mayumi V SaylorsItalyElwin Sharvill NEW
Murillo I RimCanadaAsiya Javayant RENEWAL
Aika J GlickItalyIvan Magalhaes PROPOSAL
Maisha S DoeAustraliaAnna Fali UNQUALIFIED
Emily N FerenczCanadaAnna Fali NEW
Morrow R RutaGermanyAsiya Javayant NEGOTIATION
Jeanfrancois R MaletBrazilStephen Shaw NEW
James Z SchemmerAustraliaOnyama Limba NEW
Juan T ButtSpainAsiya Javayant 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>