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 L AmigonGermanyElwin Sharvill NEGOTIATION
Jennifer Y BriddickSpainStephen Shaw NEGOTIATION
Alejandro B OldroydUnited KingdomBernardo Dominic NEGOTIATION
Ricardo H PerinCanadaStephen Shaw QUALIFIED
Maria P ButtCanadaBernardo Dominic NEW
Jennifer C FigeroaGermanyAsiya Javayant UNQUALIFIED
Antonio G FerenczCanadaOnyama Limba NEW
Aruna F GauchoIndiaAnna Fali QUALIFIED
Isabel X RulapaughFranceStephen Shaw QUALIFIED
Aruna Q SchemmerIndiaBernardo Dominic RENEWAL
Aditya I CampainItalyIoni Bowcher QUALIFIED
Kaitlin E FerenczAustraliaIvan Magalhaes QUALIFIED
Greenwood X ButtRussiaStephen Shaw UNQUALIFIED
Aruna E GillianBrazilAmy Elsner RENEWAL
Cody R MarrierIndiaIoni Bowcher QUALIFIED
Smith O BologniaJapanIvan Magalhaes NEGOTIATION
Chavez W RimCanadaAmy Elsner RENEWAL
Ashley F FlosiGermanyAnna Fali NEW
Silvio C ChuiCanadaAsiya Javayant UNQUALIFIED
Octavia N PaprockiCanadaAsiya Javayant NEGOTIATION
Adams K PerinSpainXuxue Feng NEGOTIATION
Chavez L BriddickSpainIoni Bowcher NEW
David Z StensethSpainAsiya Javayant UNQUALIFIED
Deepesh H OldroydArgentinaStephen Shaw RENEWAL
Isabel T CampainGermanyAmy Elsner PROPOSAL
Kadeem S SaylorsBrazilAsiya Javayant PROPOSAL
Costa X KolmetzItalyXuxue Feng NEGOTIATION
Aditya S MaletArgentinaAnna Fali NEGOTIATION
Jennifer Y TollnerRussiaBernardo Dominic NEW
Adams Z WieserAustraliaAsiya Javayant NEGOTIATION
Salvatore F MarrierFranceAmy Elsner UNQUALIFIED
Nicolas R BologniaJapanAmy Elsner QUALIFIED
Wickens X WieserUnited KingdomAsiya Javayant PROPOSAL
Adams F WhobreyBrazilAmy Elsner NEW
Sinclair C KolmetzIndiaAnna Fali NEW
Murillo Z BriddickSpainIoni Bowcher NEGOTIATION
Mujtaba Y MaletCanadaBernardo Dominic QUALIFIED
Leon I AmigonFranceBernardo Dominic RENEWAL
Arvin Y DarakjyBrazilAnna Fali QUALIFIED
David F RutaBrazilIvan Magalhaes PROPOSAL
Ivar M CampainSpainOnyama Limba RENEWAL
Antonio L FlosiItalyAnna Fali QUALIFIED
Salvatore Q FigeroaRussiaBernardo Dominic NEW
Morrow B IturbideJapanIvan Magalhaes QUALIFIED
Misaki N FollerArgentinaAnna Fali NEW
Rodrigues I CampainAustraliaBernardo Dominic NEGOTIATION
Darci U DoeRussiaIvan Magalhaes NEW
Kadeem X InouyeArgentinaAsiya Javayant NEW
Darci J OldroydFranceElwin Sharvill RENEWAL
Jennifer O ShinkoIndiaBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kaitlin U AlbaresItalyOnyama Limba PROPOSAL
Costa Y IturbideIndiaBernardo Dominic PROPOSAL
Deepesh X CaudyRussiaAmy Elsner UNQUALIFIED
Maria J PaprockiFranceAsiya Javayant RENEWAL
Ivar F TollnerSpainElwin Sharvill UNQUALIFIED
Sinclair F MacleadItalyAsiya Javayant QUALIFIED
Rodrigues I PoquetteAustraliaStephen Shaw NEGOTIATION
Smith S SergiFranceIvan Magalhaes NEGOTIATION
Francesco V SaylorsAustraliaElwin Sharvill RENEWAL
Julie F StockhamIndiaStephen Shaw QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha U CaudyRussia2024-05-27Feltz Printing Service NEW75Elwin Sharvill
1001Ricardo Q OstroskyAustralia2024-05-24Commercial Press NEW12Anna Fali
1002Deepesh H VocelkaGermany2024-05-29Dorl, James J Esq QUALIFIED81Stephen Shaw
1003Mayumi P VenereGermany2024-06-09Feltz Printing Service UNQUALIFIED94Anna Fali
1004Salvatore A DilliardAustralia2024-05-30Truhlar And Truhlar Attys RENEWAL98Bernardo Dominic
1005Rodrigues X TollnerBrazil2024-05-26Feltz Printing Service UNQUALIFIED37Anna Fali
1006Julie F DilliardArgentina2024-06-15Dorl, James J Esq UNQUALIFIED14Anna Fali
1007Maria L TollnerIndia2024-05-28Commercial Press RENEWAL98Ivan Magalhaes
1008Mayumi S RimCanada2024-06-06Rangoni Of Florence PROPOSAL80Elwin Sharvill
1009Maisha P SchemmerCanada2024-05-25Chanay, Jeffrey A Esq NEW69Ivan Magalhaes
1010Aditya E RutaSpain2024-06-10Feltz Printing Service QUALIFIED61Ioni Bowcher
1011Jennifer H IturbideFrance2024-05-23Rangoni Of Florence NEGOTIATION18Onyama Limba
1012Clifford A BologniaCanada2024-05-24Chanay, Jeffrey A Esq PROPOSAL89Xuxue Feng
1013Jennifer F OstroskyAustralia2024-06-02Truhlar And Truhlar Attys RENEWAL59Xuxue Feng
1014Johnson A CampainRussia2024-06-08Morlong Associates NEW14Ivan Magalhaes
1015Stacey D AlbaresIndia2024-05-27Dorl, James J Esq RENEWAL63Ioni Bowcher
1016Aruna E RulapaughJapan2024-06-02Commercial Press PROPOSAL38Bernardo Dominic
1017Costa S ButtItaly2024-06-12Feltz Printing Service RENEWAL20Asiya Javayant
1018Jefferson S GlickRussia2024-05-23Rangoni Of Florence NEW61Asiya Javayant
1019Leon H VenereRussia2024-06-11Dorl, James J Esq RENEWAL95Xuxue Feng
1020Jefferson H MorascaCanada2024-05-28Rousseaux, Michael Esq QUALIFIED52Asiya Javayant
1021Leon E StensethBrazil2024-06-07King, Christopher A Esq QUALIFIED61Elwin Sharvill
1022Claire N WaycottCanada2024-06-01Printing Dimensions NEGOTIATION37Elwin Sharvill
1023David E VocelkaArgentina2024-06-19Benton, John B Jr PROPOSAL94Bernardo Dominic
1024Greenwood V FollerGermany2024-06-19Printing Dimensions UNQUALIFIED54Elwin Sharvill
1025Kadeem H GauchoArgentina2024-06-06King, Christopher A Esq PROPOSAL38Anna Fali
1026Costa S WaycottIndia2024-06-11Rousseaux, Michael Esq PROPOSAL56Anna Fali
1027Leja T FollerUnited Kingdom2024-05-23Truhlar And Truhlar Attys PROPOSAL35Bernardo Dominic
1028Cody K OldroydCanada2024-06-04Chemel, James L Cpa NEGOTIATION11Onyama Limba
1029Johnson X DarakjyJapan2024-05-29Benton, John B Jr NEW30Anna Fali
1030Jennifer K ChuiGermany2024-06-07Feltz Printing Service NEW14Ioni Bowcher
1031James O DilliardArgentina2024-06-10Feltz Printing Service UNQUALIFIED8Amy Elsner
1032Misaki R GillianRussia2024-05-25Feiner Bros UNQUALIFIED68Amy Elsner
1033Claire D SaylorsAustralia2024-06-07Feiner Bros QUALIFIED64Onyama Limba
1034Maria C DilliardRussia2024-06-05Benton, John B Jr PROPOSAL83Asiya Javayant
1035Aruna B CampainRussia2024-06-19Printing Dimensions NEW2Asiya Javayant
1036Cody O VenereAustralia2024-06-13Chemel, James L Cpa NEGOTIATION75Anna Fali
1037Rodrigues Z NestleFrance2024-06-08Chemel, James L Cpa NEW68Xuxue Feng
1038Wickens F BowleyAustralia2024-06-08Rangoni Of Florence NEW63Stephen Shaw
1039Mujtaba N InouyeItaly2024-06-17Chapman, Ross E Esq UNQUALIFIED95Elwin Sharvill
1040Maria C PaprockiFrance2024-05-30Commercial Press NEW64Stephen Shaw
1041Sinclair D CampainAustralia2024-06-18Chapman, Ross E Esq RENEWAL87Ioni Bowcher
1042Claire T NestleFrance2024-05-23Feiner Bros NEGOTIATION48Bernardo Dominic
1043Darci S MaletAustralia2024-06-03Feiner Bros PROPOSAL87Bernardo Dominic
1044Jefferson W BowleyArgentina2024-06-16Morlong Associates QUALIFIED72Xuxue Feng
1045Juan P InouyeSpain2024-06-10Chemel, James L Cpa QUALIFIED2Ioni Bowcher
1046Mujtaba K DoeItaly2024-05-25Morlong Associates UNQUALIFIED39Anna Fali
1047Salvatore H GillianGermany2024-06-08Rousseaux, Michael Esq PROPOSAL75Elwin Sharvill
1048Mayumi N StensethUnited Kingdom2024-06-17Truhlar And Truhlar Attys NEGOTIATION49Amy Elsner
1049Tony M KolmetzFrance2024-06-14Chanay, Jeffrey A Esq PROPOSAL45Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Julie X CampainAustraliaAsiya Javayant NEGOTIATION
Rodrigues I RulapaughRussiaXuxue Feng PROPOSAL
Alejandro A NestleArgentinaOnyama Limba NEGOTIATION
Mayumi W MarrierSpainAsiya Javayant QUALIFIED
Murillo Y CaldareraBrazilIvan Magalhaes NEGOTIATION
Claire X OldroydArgentinaStephen Shaw NEW
Leja G GauchoSpainIoni Bowcher NEGOTIATION
Darci R BriddickIndiaAmy Elsner UNQUALIFIED
Johnson Q OldroydJapanIvan Magalhaes UNQUALIFIED
Wickens S GarufiBrazilAsiya Javayant NEGOTIATION
Rodrigues L PerinUnited KingdomElwin Sharvill PROPOSAL
Julie I BriddickUnited KingdomIvan Magalhaes NEW
Murillo K MaletSpainBernardo Dominic QUALIFIED
Johnson L PoquetteBrazilOnyama Limba NEW
Arvin A NickaJapanIvan Magalhaes RENEWAL
Rodrigues C StensethJapanIoni Bowcher NEW
Greenwood F PaprockiAustraliaStephen Shaw QUALIFIED
Costa A CaudyIndiaElwin Sharvill RENEWAL
Morrow D CampainItalyAnna Fali NEW
Clifford F NickaJapanAmy Elsner PROPOSAL
Isabel X WaycottArgentinaXuxue Feng NEW
Deepesh S ChuiCanadaIoni Bowcher NEGOTIATION
Costa B KuskoUnited KingdomAmy Elsner QUALIFIED
Antonio A PoquetteItalyAmy Elsner NEW
Chavez C ChuiGermanyAnna Fali NEGOTIATION
Stacey C RutaUnited KingdomIvan Magalhaes PROPOSAL
Greenwood K MaletGermanyXuxue Feng NEGOTIATION
Johnson H CaldareraArgentinaIoni Bowcher RENEWAL
Salvatore O NestleBrazilBernardo Dominic NEW
Francesco X SlusarskiIndiaBernardo Dominic RENEWAL
Arvin O VenereGermanyAnna Fali QUALIFIED
Tony T ChuiSpainXuxue Feng NEW
Kadeem D SaylorsItalyAsiya Javayant RENEWAL
Ashley R CaudyCanadaIoni Bowcher NEW
Cody Q WaycottCanadaAmy Elsner NEGOTIATION
Johnson F MorascaArgentinaElwin Sharvill RENEWAL
Deepesh S NestleRussiaElwin Sharvill RENEWAL
Jones W SergiUnited KingdomElwin Sharvill UNQUALIFIED
Cody O ChuiArgentinaAmy Elsner NEW
Kadeem K GlickRussiaXuxue Feng NEGOTIATION
Jennifer B BriddickRussiaElwin Sharvill NEW
Octavia X MorascaJapanAmy Elsner RENEWAL
Aruna Y PoquetteBrazilXuxue Feng NEW
Sinclair J FigeroaRussiaStephen Shaw PROPOSAL
Emily C MacleadArgentinaAnna Fali QUALIFIED
Isabel D GlickUnited KingdomAnna Fali QUALIFIED
Leja E SaylorsSpainAnna Fali PROPOSAL
Darci V MacleadBrazilBernardo Dominic QUALIFIED
Jennifer O RoysterArgentinaOnyama Limba NEW
Cody J KolmetzBrazilIvan Magalhaes QUALIFIED
Frozen Columns
Name
Salvatore S Marrier
Maisha V Foller
Mayumi R Foller
Claire N Garufi
Johnson W Dilliard
Izzy Y Nestle
Maisha D Wieser
Maria I Morasca
Jeanfrancois T Iturbide
Ricardo L Whobrey
Ivar A Wieser
Antonio M Nicka
Aruna B Tollner
Misaki B Inouye
Izzy U Inouye
Emily G Waycott
Morrow X Flosi
Jones S Poquette
Ivar T Marrier
Octavia B Whobrey
Jennifer A Whobrey
Murillo R Marrier
Maisha L Shinko
Izzy F Nicka
Isabel W Caudy
Costa T Butt
Leon Y Tollner
Salvatore J Garufi
Juan C Inouye
Aditya G Tollner
Smith F Nicka
Costa W Saylors
Kadeem J Garufi
Rodrigues D Malet
Greenwood P Poquette
Isabel P Waycott
Ivar I Ostrosky
Greenwood I Rim
Kaitlin W Campain
Adams J Flosi
Ashley U Flosi
Claire F Bowley
Jefferson G Iturbide
Morrow G Paprocki
Costa C Caldarera
Octavia U Gaucho
Antonio V Bolognia
Nicolas N Morasca
Jennifer L Rim
Leja S Figeroa
IdCountryDate
1000Russia2024-05-25
1001France2024-06-18
1002Canada2024-06-12
1003India2024-06-07
1004Germany2024-06-15
1005Russia2024-05-31
1006Japan2024-06-15
1007India2024-05-28
1008Spain2024-06-19
1009Brazil2024-06-09
1010India2024-06-19
1011Spain2024-05-25
1012Canada2024-06-19
1013Argentina2024-06-01
1014Argentina2024-05-27
1015Spain2024-06-07
1016Russia2024-06-01
1017Germany2024-06-02
1018Canada2024-06-19
1019France2024-06-02
1020United Kingdom2024-06-04
1021Canada2024-05-27
1022India2024-06-05
1023Japan2024-06-04
1024Spain2024-06-07
1025Brazil2024-06-18
1026Brazil2024-05-29
1027Italy2024-05-23
1028Canada2024-05-23
1029France2024-05-25
1030United Kingdom2024-06-04
1031Germany2024-05-22
1032Russia2024-06-03
1033Argentina2024-06-07
1034Spain2024-05-29
1035Brazil2024-06-07
1036Italy2024-06-17
1037Russia2024-06-12
1038Spain2024-06-16
1039Brazil2024-06-17
1040Spain2024-06-07
1041Italy2024-05-23
1042Argentina2024-06-01
1043United Kingdom2024-06-13
1044Italy2024-06-01
1045Spain2024-06-14
1046Japan2024-06-19
1047Italy2024-06-17
1048Argentina2024-06-09
1049France2024-05-25

On-Demand Data

NameIdCountryDate
Munro Y Wieser1000France2024-05-31
Johnson O Tollner1001Russia2024-06-07
Sinclair X Rulapaugh1002Japan2024-06-08
Isabel W Stenseth1003Brazil2024-06-19
Leja N Campain1004United Kingdom2024-05-23
Ashley P Marrier1005Japan2024-06-04
Faith U Briddick1006India2024-06-02
Morrow N Chui1007Italy2024-06-16
Deepesh L Stockham1008Italy2024-06-07
Faith I Inouye1009Australia2024-05-27
Chavez Q Caudy1010Japan2024-06-18
Faith E Kusko1011Canada2024-06-03
Ashley R Gillian1012United Kingdom2024-05-29
Mujtaba C Amigon1013Argentina2024-06-17
Ricardo G Stockham1014Brazil2024-05-25
Darci J Paprocki1015France2024-05-22
Tony U Poquette1016Italy2024-05-23
Izzy I Nicka1017Japan2024-05-25
Aika H Gillian1018Russia2024-06-12
Morrow X Iturbide1019Russia2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair Q SchemmerGermanyAsiya Javayant PROPOSAL
Leja U WhobreyArgentinaBernardo Dominic QUALIFIED
David T KolmetzRussiaStephen Shaw NEGOTIATION
Tony B FollerAustraliaBernardo Dominic NEGOTIATION
Costa K WieserItalyOnyama Limba PROPOSAL
Wickens C WhobreyJapanAmy Elsner QUALIFIED
Isabel I AlbaresBrazilIoni Bowcher RENEWAL
Isabel F SaylorsFranceOnyama Limba QUALIFIED
Cody Y DarakjyItalyXuxue Feng RENEWAL
Clifford K CaudyBrazilAmy Elsner PROPOSAL
Octavia P BowleyBrazilIvan Magalhaes UNQUALIFIED
Adams S SaylorsUnited KingdomElwin Sharvill NEGOTIATION
Octavia U DarakjyFranceIvan Magalhaes NEGOTIATION
Aika A FigeroaItalyIvan Magalhaes RENEWAL
Aika E PaprockiBrazilAnna Fali PROPOSAL
James O MaletBrazilStephen Shaw QUALIFIED
Faith N DilliardItalyAsiya Javayant NEGOTIATION
Mayumi M PaprockiGermanyAnna Fali NEGOTIATION
Maria U SaylorsUnited KingdomAsiya Javayant NEW
Adams T IturbideFranceXuxue Feng QUALIFIED
Faith V RulapaughUnited KingdomIoni Bowcher UNQUALIFIED
Julie U GillianJapanAsiya Javayant RENEWAL
Smith I WieserItalyStephen Shaw QUALIFIED
Juan N PerinAustraliaIvan Magalhaes RENEWAL
Salvatore P CaldareraCanadaStephen Shaw QUALIFIED
Aika D WaycottIndiaIvan Magalhaes RENEWAL
Nicolas G DarakjyRussiaAnna Fali NEW
Smith Q RimIndiaStephen Shaw QUALIFIED
Aditya U BriddickRussiaElwin Sharvill QUALIFIED
Jennifer B CaldareraItalyAnna Fali PROPOSAL
Maria U MaletJapanIvan Magalhaes RENEWAL
Julie M SaylorsCanadaElwin Sharvill RENEWAL
Aruna U VocelkaJapanStephen Shaw NEGOTIATION
Aruna K GillianGermanyElwin Sharvill NEGOTIATION
Costa O FerenczUnited KingdomAnna Fali NEGOTIATION
Sinclair O GarufiSpainStephen Shaw QUALIFIED
Isabel K FigeroaGermanyAsiya Javayant NEGOTIATION
Chavez E FollerGermanyAsiya Javayant RENEWAL
Silvio D DilliardGermanyElwin Sharvill PROPOSAL
Claire Q OstroskySpainAnna Fali 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>