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
Claire X MaletBrazilElwin Sharvill UNQUALIFIED
Costa K BologniaGermanyAsiya Javayant PROPOSAL
Jones V PaprockiBrazilBernardo Dominic NEGOTIATION
Adams H NestleSpainAnna Fali PROPOSAL
Ivar J RimArgentinaBernardo Dominic RENEWAL
Jennifer G PoquetteUnited KingdomAmy Elsner UNQUALIFIED
Antonio S SlusarskiCanadaIoni Bowcher PROPOSAL
Jefferson I GauchoUnited KingdomStephen Shaw RENEWAL
Aruna I StensethJapanBernardo Dominic PROPOSAL
Mujtaba C KuskoGermanyOnyama Limba UNQUALIFIED
Isabel S BowleyRussiaIoni Bowcher NEW
Aika D SaylorsItalyElwin Sharvill PROPOSAL
Aruna K BriddickIndiaOnyama Limba PROPOSAL
James N ButtUnited KingdomIoni Bowcher UNQUALIFIED
Alejandro A InouyeSpainIvan Magalhaes UNQUALIFIED
Faith N VocelkaArgentinaBernardo Dominic NEW
Leon R BologniaGermanyAsiya Javayant NEGOTIATION
Deepesh J PerinSpainAsiya Javayant NEW
Munro O NestleItalyElwin Sharvill UNQUALIFIED
Munro Q DoeAustraliaBernardo Dominic NEGOTIATION
Greenwood M RulapaughCanadaXuxue Feng NEW
Ricardo S FigeroaFranceIvan Magalhaes PROPOSAL
Wickens E PerinCanadaAmy Elsner QUALIFIED
Chavez E MaletFranceOnyama Limba QUALIFIED
Francesco Q CampainItalyXuxue Feng UNQUALIFIED
Cody G RoysterAustraliaIoni Bowcher RENEWAL
Francesco G WaycottAustraliaStephen Shaw RENEWAL
Jones J StensethCanadaAsiya Javayant NEGOTIATION
Murillo P ButtUnited KingdomIoni Bowcher NEW
James R DilliardJapanAnna Fali QUALIFIED
Izzy I MaletSpainElwin Sharvill RENEWAL
David N BowleyRussiaOnyama Limba RENEWAL
Stacey E TollnerItalyStephen Shaw UNQUALIFIED
James J TollnerUnited KingdomXuxue Feng PROPOSAL
Murillo B GauchoBrazilBernardo Dominic UNQUALIFIED
Izzy B BowleyIndiaIvan Magalhaes NEGOTIATION
Aditya R GillianRussiaStephen Shaw QUALIFIED
Stacey G GillianRussiaAmy Elsner RENEWAL
Antonio A FollerFranceOnyama Limba NEW
Adams F RimGermanyIoni Bowcher QUALIFIED
Juan J VocelkaUnited KingdomAnna Fali RENEWAL
Jones O MaletItalyIoni Bowcher QUALIFIED
Julie K StensethRussiaStephen Shaw RENEWAL
Chavez D PerinIndiaBernardo Dominic NEGOTIATION
David U BowleyItalyAsiya Javayant UNQUALIFIED
Francesco U InouyeRussiaIvan Magalhaes QUALIFIED
Jones G AmigonFranceElwin Sharvill NEW
Mayumi Q DoeArgentinaOnyama Limba RENEWAL
Maisha V IturbideBrazilOnyama Limba PROPOSAL
Julie B RoysterUnited KingdomAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jennifer E FerenczUnited KingdomAmy Elsner NEGOTIATION
Izzy G PerinItalyAnna Fali PROPOSAL
Jennifer X RoysterFranceIoni Bowcher NEW
Julie T PaprockiJapanElwin Sharvill NEW
Clifford P CaudyGermanyAsiya Javayant NEW
Cody U RoysterGermanyIvan Magalhaes RENEWAL
Maisha A MaletFranceElwin Sharvill NEGOTIATION
Maria P FerenczGermanyIoni Bowcher QUALIFIED
Maria Q GarufiAustraliaOnyama Limba NEW
Morrow V VenereCanadaStephen Shaw NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas P PoquetteCanada2024-05-25King, Christopher A Esq PROPOSAL94Stephen Shaw
1001Julie K MaletArgentina2024-06-12Commercial Press NEW40Ivan Magalhaes
1002Johnson X MorascaSpain2024-05-21King, Christopher A Esq RENEWAL53Stephen Shaw
1003Leon Y CampainBrazil2024-06-07Chanay, Jeffrey A Esq NEGOTIATION33Bernardo Dominic
1004Wickens D PaprockiRussia2024-06-08Rousseaux, Michael Esq RENEWAL51Asiya Javayant
1005Ricardo I SaylorsCanada2024-06-01Morlong Associates QUALIFIED85Anna Fali
1006Munro A WieserGermany2024-06-03Chanay, Jeffrey A Esq UNQUALIFIED53Ioni Bowcher
1007Tony E AlbaresRussia2024-05-16Benton, John B Jr NEGOTIATION86Amy Elsner
1008Munro D PoquetteGermany2024-05-22Commercial Press NEGOTIATION20Bernardo Dominic
1009Octavia U StensethJapan2024-06-10Rangoni Of Florence QUALIFIED94Anna Fali
1010Francesco C NickaSpain2024-06-05Rousseaux, Michael Esq QUALIFIED0Ioni Bowcher
1011Kadeem Y InouyeIndia2024-06-07Morlong Associates PROPOSAL42Elwin Sharvill
1012Alejandro I TollnerCanada2024-05-21King, Christopher A Esq NEGOTIATION76Bernardo Dominic
1013James T MaletRussia2024-05-23Morlong Associates RENEWAL96Ioni Bowcher
1014Morrow T AlbaresUnited Kingdom2024-05-24Commercial Press UNQUALIFIED58Amy Elsner
1015Kadeem U BowleyItaly2024-06-12King, Christopher A Esq NEGOTIATION87Anna Fali
1016Darci X GarufiFrance2024-05-30Morlong Associates QUALIFIED32Xuxue Feng
1017Stacey I WieserJapan2024-06-05Rousseaux, Michael Esq NEGOTIATION45Anna Fali
1018Mayumi M CampainBrazil2024-05-24Benton, John B Jr RENEWAL14Stephen Shaw
1019Salvatore O InouyeGermany2024-06-06Printing Dimensions QUALIFIED2Asiya Javayant
1020David N TollnerItaly2024-05-19Chemel, James L Cpa NEW5Bernardo Dominic
1021Aika W WaycottBrazil2024-06-08Dorl, James J Esq NEW15Anna Fali
1022Maisha A VenereUnited Kingdom2024-06-04Rangoni Of Florence NEGOTIATION15Elwin Sharvill
1023Morrow W BologniaBrazil2024-05-19Feltz Printing Service NEGOTIATION88Amy Elsner
1024Jefferson T MaletBrazil2024-05-23Rousseaux, Michael Esq NEW56Ivan Magalhaes
1025Tony E VenereJapan2024-06-03King, Christopher A Esq NEGOTIATION81Asiya Javayant
1026Sinclair Y RoysterCanada2024-05-21Benton, John B Jr NEW4Asiya Javayant
1027Kaitlin Z MaletArgentina2024-05-22Benton, John B Jr RENEWAL49Asiya Javayant
1028Adams F DoeFrance2024-06-06Chemel, James L Cpa NEW48Onyama Limba
1029Aruna U InouyeRussia2024-06-06Dorl, James J Esq QUALIFIED58Stephen Shaw
1030Morrow T FollerJapan2024-05-20Feltz Printing Service QUALIFIED17Ioni Bowcher
1031Smith S SchemmerFrance2024-06-09Feiner Bros PROPOSAL62Onyama Limba
1032Darci E GauchoRussia2024-06-04Chanay, Jeffrey A Esq NEW99Anna Fali
1033Munro C CampainCanada2024-05-17Printing Dimensions NEW17Onyama Limba
1034Greenwood L SaylorsJapan2024-05-17Morlong Associates PROPOSAL59Elwin Sharvill
1035Darci B MarrierJapan2024-06-08Chanay, Jeffrey A Esq NEGOTIATION0Anna Fali
1036Octavia Y OldroydFrance2024-05-29Truhlar And Truhlar Attys QUALIFIED36Asiya Javayant
1037Johnson U IturbideArgentina2024-06-04Printing Dimensions RENEWAL99Amy Elsner
1038Izzy T DoeSpain2024-06-06Feiner Bros NEW32Asiya Javayant
1039Leon F MacleadBrazil2024-06-13Rousseaux, Michael Esq UNQUALIFIED93Ivan Magalhaes
1040Clifford A MaletIndia2024-05-27Morlong Associates NEW75Anna Fali
1041Murillo S NestleJapan2024-05-24King, Christopher A Esq UNQUALIFIED48Stephen Shaw
1042Chavez I SchemmerBrazil2024-05-27Benton, John B Jr NEGOTIATION90Xuxue Feng
1043Clifford U PoquetteUnited Kingdom2024-05-23Morlong Associates UNQUALIFIED82Xuxue Feng
1044Jennifer G FerenczSpain2024-06-09Dorl, James J Esq QUALIFIED23Anna Fali
1045Leon O CampainFrance2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED66Asiya Javayant
1046Alejandro E FigeroaItaly2024-06-08Dorl, James J Esq NEW40Xuxue Feng
1047Arvin L WaycottCanada2024-06-01Rousseaux, Michael Esq QUALIFIED47Anna Fali
1048Faith S FollerRussia2024-06-05Truhlar And Truhlar Attys RENEWAL89Ivan Magalhaes
1049David F VenereCanada2024-05-21Dorl, James J Esq RENEWAL57Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Jefferson E VenereUnited KingdomBernardo Dominic QUALIFIED
Nicolas B ButtArgentinaAnna Fali RENEWAL
Alejandro S OldroydIndiaOnyama Limba NEW
Adams R CaldareraJapanElwin Sharvill PROPOSAL
Maisha D MacleadArgentinaElwin Sharvill RENEWAL
Leja V RulapaughCanadaElwin Sharvill PROPOSAL
Cody H PaprockiAustraliaAnna Fali QUALIFIED
Francesco V PoquetteUnited KingdomXuxue Feng NEW
Costa C PaprockiUnited KingdomOnyama Limba NEW
Alejandro V RutaRussiaAmy Elsner QUALIFIED
Jefferson E MarrierFranceXuxue Feng PROPOSAL
David M DilliardCanadaAsiya Javayant RENEWAL
Kadeem T OldroydCanadaOnyama Limba QUALIFIED
Tony P StensethSpainIvan Magalhaes NEW
Silvio Y KolmetzAustraliaAsiya Javayant NEGOTIATION
Aika T RoysterSpainIvan Magalhaes NEGOTIATION
Aruna P InouyeSpainBernardo Dominic RENEWAL
Jeanfrancois V FigeroaIndiaAmy Elsner PROPOSAL
Adams H CaudyCanadaXuxue Feng UNQUALIFIED
Claire J FlosiBrazilAsiya Javayant NEGOTIATION
Isabel Y WieserUnited KingdomAmy Elsner UNQUALIFIED
Octavia P ChuiBrazilAsiya Javayant UNQUALIFIED
Smith S TollnerGermanyAsiya Javayant UNQUALIFIED
Leon P KuskoGermanyAsiya Javayant NEW
Mujtaba K FigeroaAustraliaAsiya Javayant UNQUALIFIED
Costa G FigeroaSpainBernardo Dominic RENEWAL
Maisha E OldroydFranceOnyama Limba PROPOSAL
Stacey M NickaJapanOnyama Limba RENEWAL
Claire W ButtArgentinaXuxue Feng NEW
Wickens U TollnerAustraliaIvan Magalhaes RENEWAL
David D DoeFranceAmy Elsner PROPOSAL
Claire B MacleadFranceAnna Fali QUALIFIED
Deepesh D WaycottFranceXuxue Feng UNQUALIFIED
Izzy A CaudySpainAnna Fali UNQUALIFIED
Rodrigues U TollnerUnited KingdomXuxue Feng NEW
Octavia Q StockhamArgentinaIvan Magalhaes UNQUALIFIED
Murillo Z DoeAustraliaIoni Bowcher NEW
Emily F GillianArgentinaXuxue Feng RENEWAL
Arvin P InouyeJapanAnna Fali RENEWAL
Izzy Q GarufiRussiaOnyama Limba PROPOSAL
Ivar J SlusarskiAustraliaBernardo Dominic RENEWAL
Murillo R AlbaresJapanOnyama Limba PROPOSAL
James O ButtSpainOnyama Limba NEW
Morrow E GauchoFranceXuxue Feng NEW
Cody W PoquetteItalyXuxue Feng QUALIFIED
Ivar R OstroskySpainAmy Elsner NEGOTIATION
Antonio M StensethCanadaOnyama Limba NEW
Cody G TollnerGermanyAsiya Javayant RENEWAL
Deepesh V WaycottItalyAmy Elsner RENEWAL
Izzy Q WaycottGermanyAsiya Javayant PROPOSAL
Frozen Columns
Name
Antonio E Amigon
Juan L Dilliard
Aruna K Albares
Francesco E Perin
Octavia S Paprocki
Juan I Briddick
Jennifer S Albares
Emily Z Figeroa
Clifford N Doe
Leon S Doe
Leja J Rulapaugh
Clifford K Nestle
Mayumi L Ostrosky
Juan U Kolmetz
Leja S Malet
Costa Z Flosi
Murillo V Sergi
Julie J Ferencz
Arvin X Waycott
Aditya Q Nestle
Jones X Nestle
Morrow D Tollner
Alejandro P Maclead
Murillo Y Ruta
Costa G Rulapaugh
Aruna A Kolmetz
Emily U Inouye
Morrow O Waycott
Ashley C Venere
Sinclair F Albares
Chavez V Vocelka
Francesco K Rulapaugh
Kadeem D Foller
Misaki T Paprocki
Morrow H Chui
Aditya G Figeroa
Clifford S Royster
Nicolas V Malet
Rodrigues X Bolognia
Wickens M Butt
Wickens V Butt
Clifford F Oldroyd
Jefferson Z Shinko
Sinclair P Caudy
Julie O Doe
Aditya M Inouye
Kadeem K Oldroyd
Chavez N Nicka
Greenwood N Poquette
Murillo R Perin
IdCountryDate
1000Argentina2024-06-08
1001Russia2024-05-18
1002United Kingdom2024-05-16
1003Argentina2024-06-11
1004Australia2024-05-17
1005Australia2024-06-01
1006Japan2024-06-02
1007Germany2024-05-21
1008Argentina2024-06-07
1009Canada2024-05-22
1010France2024-05-16
1011Spain2024-06-09
1012United Kingdom2024-06-14
1013India2024-06-12
1014Australia2024-05-19
1015France2024-05-21
1016Argentina2024-05-30
1017Brazil2024-06-05
1018Canada2024-05-27
1019Spain2024-05-26
1020Spain2024-05-30
1021France2024-05-19
1022India2024-06-01
1023Russia2024-06-07
1024Canada2024-06-11
1025France2024-06-09
1026India2024-06-11
1027Germany2024-06-13
1028Russia2024-05-30
1029United Kingdom2024-05-18
1030Japan2024-06-06
1031Australia2024-06-12
1032Japan2024-05-23
1033France2024-05-22
1034Japan2024-05-29
1035France2024-05-17
1036Germany2024-06-07
1037Russia2024-05-30
1038Japan2024-05-23
1039France2024-05-20
1040Australia2024-05-28
1041Italy2024-05-24
1042France2024-06-01
1043Italy2024-06-14
1044Argentina2024-06-01
1045Italy2024-06-04
1046Australia2024-05-29
1047Italy2024-06-10
1048United Kingdom2024-05-22
1049Brazil2024-05-17

On-Demand Data

NameIdCountryDate
Aika C Malet1000Argentina2024-05-26
Mayumi C Rulapaugh1001Australia2024-05-24
Alejandro E Saylors1002Italy2024-05-30
Faith S Schemmer1003United Kingdom2024-05-24
Octavia R Maclead1004Australia2024-06-14
Greenwood R Sergi1005Australia2024-06-05
Kaitlin D Gillian1006United Kingdom2024-06-08
Deepesh N Glick1007Brazil2024-06-05
Murillo A Tollner1008Australia2024-06-01
Jeanfrancois H Saylors1009Russia2024-06-09
Munro W Shinko1010Germany2024-06-13
Faith A Marrier1011India2024-06-03
Jennifer F Briddick1012France2024-05-24
Aruna L Slusarski1013Canada2024-05-23
Adams N Amigon1014Canada2024-06-06
Murillo E Kolmetz1015Germany2024-06-10
Mayumi C Amigon1016Germany2024-06-12
David F Stenseth1017Brazil2024-06-08
Smith C Darakjy1018Spain2024-06-04
Juan F Schemmer1019India2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo O CampainItalyIoni Bowcher QUALIFIED
Morrow H ChuiRussiaIvan Magalhaes NEW
James A KolmetzBrazilAsiya Javayant RENEWAL
Jones W WhobreyIndiaStephen Shaw RENEWAL
Ricardo Z MaletArgentinaBernardo Dominic NEW
Maisha D RimBrazilXuxue Feng NEGOTIATION
Cody K VocelkaIndiaIoni Bowcher RENEWAL
Sinclair K GillianJapanOnyama Limba UNQUALIFIED
Kadeem L WhobreyItalyBernardo Dominic NEGOTIATION
Ivar P RulapaughArgentinaXuxue Feng NEW
Julie Y StockhamCanadaXuxue Feng NEW
Stacey Z WaycottAustraliaOnyama Limba UNQUALIFIED
Adams V CaldareraAustraliaBernardo Dominic QUALIFIED
Aruna H GauchoBrazilElwin Sharvill NEGOTIATION
Silvio E GlickBrazilIoni Bowcher NEW
Kadeem F MaletCanadaAsiya Javayant RENEWAL
Johnson T StensethUnited KingdomElwin Sharvill UNQUALIFIED
David G BowleyFranceIvan Magalhaes UNQUALIFIED
Deepesh H BowleyBrazilAsiya Javayant NEW
Francesco H MaletCanadaStephen Shaw NEGOTIATION
Munro B GillianItalyOnyama Limba NEGOTIATION
Aruna Q BowleyIndiaElwin Sharvill NEW
Aruna P WhobreyBrazilIoni Bowcher UNQUALIFIED
Costa V NestleCanadaElwin Sharvill NEGOTIATION
Jefferson X AlbaresItalyStephen Shaw NEGOTIATION
Darci G MarrierGermanyIoni Bowcher RENEWAL
Emily L SlusarskiAustraliaElwin Sharvill NEGOTIATION
Leja I PaprockiJapanIoni Bowcher NEW
Jefferson L FollerCanadaStephen Shaw NEW
Arvin U BriddickFranceBernardo Dominic RENEWAL
Johnson M SlusarskiArgentinaOnyama Limba RENEWAL
Jefferson F StensethIndiaXuxue Feng UNQUALIFIED
Costa O CampainJapanIvan Magalhaes NEGOTIATION
Arvin P FollerGermanyIoni Bowcher UNQUALIFIED
Jefferson S BriddickIndiaAmy Elsner QUALIFIED
Wickens K GillianGermanyAnna Fali PROPOSAL
Ricardo Z KolmetzIndiaIvan Magalhaes UNQUALIFIED
Aditya S RoysterGermanyIvan Magalhaes PROPOSAL
Silvio S RutaRussiaAsiya Javayant PROPOSAL
Francesco E DoeUnited KingdomAnna Fali NEW

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