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
Smith H StockhamUnited KingdomXuxue Feng NEW
Deepesh P SlusarskiJapanOnyama Limba QUALIFIED
Maria M WhobreyCanadaStephen Shaw UNQUALIFIED
Aditya B RoysterAustraliaElwin Sharvill PROPOSAL
Emily Q ChuiItalyStephen Shaw PROPOSAL
Silvio X RutaFranceAmy Elsner NEGOTIATION
Stacey B SlusarskiSpainOnyama Limba NEGOTIATION
Ricardo D ShinkoGermanyIvan Magalhaes NEGOTIATION
Silvio E OstroskySpainElwin Sharvill NEGOTIATION
Antonio U GillianUnited KingdomIoni Bowcher PROPOSAL
Darci Y ButtJapanAsiya Javayant PROPOSAL
Adams A DilliardItalyXuxue Feng NEW
Kaitlin U MarrierIndiaStephen Shaw NEW
Silvio Y VocelkaArgentinaIoni Bowcher RENEWAL
Stacey Z GarufiItalyAsiya Javayant QUALIFIED
Misaki L FollerItalyXuxue Feng QUALIFIED
Emily F GillianItalyStephen Shaw RENEWAL
Stacey Q GlickSpainElwin Sharvill RENEWAL
Leja Z InouyeIndiaStephen Shaw UNQUALIFIED
Juan N WhobreyJapanAnna Fali RENEWAL
Silvio P DarakjyBrazilAnna Fali PROPOSAL
Cody E GarufiBrazilIvan Magalhaes PROPOSAL
Leja V DoeAustraliaAnna Fali NEW
Arvin J ButtSpainAnna Fali NEW
Smith C StockhamIndiaOnyama Limba NEW
Tony O StockhamArgentinaAsiya Javayant UNQUALIFIED
Deepesh Y RulapaughItalyElwin Sharvill RENEWAL
Aruna N RimJapanAmy Elsner UNQUALIFIED
Deepesh Z GauchoCanadaAnna Fali UNQUALIFIED
Adams H CaudyRussiaAmy Elsner PROPOSAL
Misaki E OstroskyBrazilAsiya Javayant NEW
Wickens C WhobreyJapanAsiya Javayant QUALIFIED
Rodrigues Q MaletAustraliaOnyama Limba NEW
Deepesh J WaycottIndiaElwin Sharvill NEW
Nicolas G CaldareraItalyIoni Bowcher NEW
Emily C OstroskyBrazilIvan Magalhaes PROPOSAL
David P NickaAustraliaXuxue Feng PROPOSAL
Wickens M SchemmerIndiaElwin Sharvill UNQUALIFIED
Nicolas I FlosiIndiaIoni Bowcher PROPOSAL
Clifford R WieserJapanIvan Magalhaes UNQUALIFIED
Francesco Z GillianSpainStephen Shaw QUALIFIED
Jones B StensethItalyAmy Elsner NEGOTIATION
Leja I SaylorsArgentinaOnyama Limba UNQUALIFIED
Ivar B GarufiSpainOnyama Limba NEW
Faith C BologniaJapanElwin Sharvill PROPOSAL
Kadeem X NickaItalyAsiya Javayant RENEWAL
Deepesh P MaletBrazilXuxue Feng NEGOTIATION
David Q FlosiUnited KingdomOnyama Limba QUALIFIED
Ivar Y CampainCanadaXuxue Feng NEGOTIATION
Kadeem A SlusarskiIndiaOnyama Limba NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leon B InouyeFranceAnna Fali NEW
Ashley P WhobreyIndiaAsiya Javayant RENEWAL
Aika I AlbaresSpainBernardo Dominic UNQUALIFIED
Greenwood C SaylorsAustraliaAsiya Javayant QUALIFIED
Mayumi Y SlusarskiUnited KingdomAsiya Javayant PROPOSAL
David S MorascaIndiaIoni Bowcher PROPOSAL
Francesco W VenereAustraliaAsiya Javayant RENEWAL
Darci Z WieserRussiaIoni Bowcher QUALIFIED
Adams H MaletIndiaBernardo Dominic PROPOSAL
Jones W VenereRussiaAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire J ButtItaly2025-05-17Rousseaux, Michael Esq UNQUALIFIED44Bernardo Dominic
1001Darci S BriddickSpain2025-05-16Rangoni Of Florence RENEWAL74Bernardo Dominic
1002Francesco P MorascaJapan2025-05-25Feltz Printing Service QUALIFIED77Bernardo Dominic
1003Mayumi I FerenczUnited Kingdom2025-06-04Morlong Associates NEW19Anna Fali
1004Rodrigues T SergiIndia2025-06-14King, Christopher A Esq NEGOTIATION62Onyama Limba
1005Faith H SchemmerItaly2025-06-01Feiner Bros UNQUALIFIED84Ioni Bowcher
1006Smith G PaprockiCanada2025-06-05Feltz Printing Service PROPOSAL19Ivan Magalhaes
1007Isabel X VenereGermany2025-06-07Feltz Printing Service PROPOSAL63Xuxue Feng
1008Maria R FollerItaly2025-05-23Chanay, Jeffrey A Esq NEW88Ivan Magalhaes
1009Darci N AlbaresArgentina2025-06-10Chapman, Ross E Esq RENEWAL82Bernardo Dominic
1010Antonio D PerinAustralia2025-05-23Rangoni Of Florence NEGOTIATION7Onyama Limba
1011Salvatore K SchemmerBrazil2025-06-05King, Christopher A Esq NEW9Asiya Javayant
1012Julie P NestleAustralia2025-05-19Morlong Associates NEGOTIATION30Asiya Javayant
1013Sinclair L CampainItaly2025-06-05Morlong Associates QUALIFIED22Stephen Shaw
1014Wickens L CaudyIndia2025-05-27Printing Dimensions RENEWAL97Ioni Bowcher
1015Misaki U VenereCanada2025-05-31Rangoni Of Florence RENEWAL48Asiya Javayant
1016Nicolas J NestleAustralia2025-06-10Chemel, James L Cpa PROPOSAL91Asiya Javayant
1017Emily Q PoquetteBrazil2025-06-12Buckley Miller Wright PROPOSAL7Anna Fali
1018Stacey B AmigonItaly2025-06-13Chanay, Jeffrey A Esq RENEWAL64Anna Fali
1019David I ChuiAustralia2025-05-18Truhlar And Truhlar Attys NEGOTIATION70Ivan Magalhaes
1020Octavia U CampainArgentina2025-05-30Feltz Printing Service PROPOSAL92Ivan Magalhaes
1021Stacey V SaylorsIndia2025-05-18Chemel, James L Cpa NEGOTIATION14Onyama Limba
1022Ashley N SchemmerRussia2025-05-29Chemel, James L Cpa NEGOTIATION83Amy Elsner
1023Arvin B WaycottJapan2025-06-03Printing Dimensions QUALIFIED85Amy Elsner
1024Costa X RimItaly2025-06-12Benton, John B Jr QUALIFIED54Elwin Sharvill
1025Sinclair U SchemmerItaly2025-06-11Chapman, Ross E Esq NEW59Elwin Sharvill
1026Izzy X StensethSpain2025-05-26Printing Dimensions PROPOSAL4Amy Elsner
1027Aruna X BologniaItaly2025-06-02Chapman, Ross E Esq PROPOSAL97Onyama Limba
1028Silvio Q WieserUnited Kingdom2025-05-24Buckley Miller Wright NEGOTIATION99Amy Elsner
1029Julie A WhobreyCanada2025-06-14Dorl, James J Esq PROPOSAL68Stephen Shaw
1030Leon U BriddickRussia2025-05-29Rangoni Of Florence NEGOTIATION26Stephen Shaw
1031Leon X RutaAustralia2025-06-07Printing Dimensions RENEWAL20Xuxue Feng
1032Faith W StockhamGermany2025-05-26Printing Dimensions NEW57Onyama Limba
1033Aditya Y GarufiSpain2025-06-12Rousseaux, Michael Esq RENEWAL13Stephen Shaw
1034Jennifer Y IturbideGermany2025-05-29Printing Dimensions UNQUALIFIED22Bernardo Dominic
1035Juan O DilliardJapan2025-06-03Buckley Miller Wright QUALIFIED69Onyama Limba
1036Mayumi Q CampainJapan2025-05-28Chanay, Jeffrey A Esq NEGOTIATION5Asiya Javayant
1037Alejandro F BologniaItaly2025-06-10Dorl, James J Esq QUALIFIED4Asiya Javayant
1038Maria X NickaCanada2025-05-22Buckley Miller Wright PROPOSAL76Stephen Shaw
1039Jeanfrancois Y FlosiIndia2025-06-04Buckley Miller Wright NEW25Ivan Magalhaes
1040Aditya K FerenczFrance2025-05-25King, Christopher A Esq UNQUALIFIED19Stephen Shaw
1041Isabel V FollerRussia2025-05-22Commercial Press NEW40Ioni Bowcher
1042Maisha I StensethGermany2025-06-05Chapman, Ross E Esq UNQUALIFIED54Anna Fali
1043Francesco Z AmigonIndia2025-05-17King, Christopher A Esq QUALIFIED72Bernardo Dominic
1044Mujtaba Q StockhamGermany2025-06-10Printing Dimensions PROPOSAL70Stephen Shaw
1045Darci N AmigonFrance2025-06-13Buckley Miller Wright NEW61Asiya Javayant
1046Francesco R WieserSpain2025-06-09Dorl, James J Esq RENEWAL13Stephen Shaw
1047Misaki V DarakjyFrance2025-05-19King, Christopher A Esq NEGOTIATION17Ivan Magalhaes
1048Misaki B DilliardUnited Kingdom2025-06-12Chemel, James L Cpa PROPOSAL3Elwin Sharvill
1049Deepesh L CampainJapan2025-05-21Feltz Printing Service NEGOTIATION80Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Clifford P DarakjyAustraliaOnyama Limba UNQUALIFIED
Jones H IturbideUnited KingdomBernardo Dominic NEGOTIATION
Salvatore E KolmetzAustraliaBernardo Dominic UNQUALIFIED
Salvatore J RimJapanIoni Bowcher PROPOSAL
Rodrigues L FollerBrazilAsiya Javayant PROPOSAL
Maria Y PoquetteRussiaElwin Sharvill NEW
Misaki G FlosiSpainAnna Fali NEGOTIATION
Maisha D MaletJapanIoni Bowcher NEGOTIATION
Morrow X PerinAustraliaXuxue Feng NEGOTIATION
Chavez S CampainItalyBernardo Dominic RENEWAL
Isabel D RulapaughAustraliaIoni Bowcher RENEWAL
Smith W WieserCanadaIoni Bowcher UNQUALIFIED
Antonio I WaycottBrazilOnyama Limba NEGOTIATION
Emily J OstroskyGermanyStephen Shaw NEW
Arvin S MorascaUnited KingdomBernardo Dominic UNQUALIFIED
James P SaylorsUnited KingdomXuxue Feng NEGOTIATION
Stacey G IturbideBrazilElwin Sharvill RENEWAL
Darci Q MarrierRussiaIoni Bowcher QUALIFIED
James Q PaprockiUnited KingdomIvan Magalhaes UNQUALIFIED
James C BologniaArgentinaBernardo Dominic QUALIFIED
Greenwood B TollnerRussiaIoni Bowcher QUALIFIED
Murillo V ButtSpainXuxue Feng UNQUALIFIED
Deepesh S ShinkoBrazilIvan Magalhaes RENEWAL
Cody T FollerArgentinaStephen Shaw QUALIFIED
Alejandro P AmigonSpainStephen Shaw NEGOTIATION
Aruna V FerenczCanadaElwin Sharvill NEGOTIATION
Darci K BriddickUnited KingdomStephen Shaw NEGOTIATION
Francesco U SergiUnited KingdomBernardo Dominic QUALIFIED
Cody O MorascaUnited KingdomBernardo Dominic UNQUALIFIED
Greenwood G WieserGermanyStephen Shaw NEGOTIATION
Ricardo I MaletBrazilAsiya Javayant UNQUALIFIED
Kadeem T InouyeGermanyBernardo Dominic NEGOTIATION
Jennifer C PerinAustraliaXuxue Feng QUALIFIED
Murillo O CampainIndiaOnyama Limba QUALIFIED
Nicolas Q FollerArgentinaStephen Shaw RENEWAL
Cody G DilliardCanadaElwin Sharvill NEGOTIATION
Jeanfrancois O FigeroaJapanIvan Magalhaes NEGOTIATION
Ricardo W MarrierArgentinaXuxue Feng NEGOTIATION
Deepesh K MaletItalyIvan Magalhaes NEGOTIATION
Rodrigues P MarrierRussiaStephen Shaw PROPOSAL
Clifford C SchemmerSpainAsiya Javayant QUALIFIED
Jeanfrancois N TollnerCanadaAmy Elsner NEW
Maria B NestleRussiaBernardo Dominic QUALIFIED
Leja E BologniaSpainStephen Shaw RENEWAL
Munro Y AmigonBrazilBernardo Dominic QUALIFIED
Salvatore J KuskoItalyAsiya Javayant NEGOTIATION
Wickens M StensethAustraliaBernardo Dominic PROPOSAL
Murillo B DoeSpainElwin Sharvill NEW
Wickens F MorascaCanadaXuxue Feng NEW
Maria B MacleadFranceStephen Shaw NEW
Frozen Columns
Name
Jefferson M Schemmer
Salvatore Z Tollner
Morrow L Dilliard
Francesco B Gillian
Emily J Whobrey
Costa B Flosi
Chavez S Bolognia
Maria D Paprocki
Silvio Z Venere
Greenwood Z Caudy
Tony K Caudy
Chavez C Poquette
Antonio Q Saylors
Aika A Saylors
Leja P Venere
Aika I Venere
Sinclair Y Inouye
Munro E Malet
Cody Y Figeroa
Munro W Caudy
Jennifer R Dilliard
Nicolas C Perin
Emily H Stockham
Francesco E Nicka
Tony F Marrier
James I Tollner
Octavia F Royster
Mujtaba B Figeroa
Rodrigues Y Malet
Clifford L Nestle
Cody Q Caudy
Aditya Z Malet
Clifford S Paprocki
Juan W Nicka
Silvio W Stenseth
Alejandro T Figeroa
Deepesh P Amigon
Costa H Bolognia
Jeanfrancois T Schemmer
Maisha B Kolmetz
Kaitlin G Campain
Clifford O Morasca
Silvio J Waycott
Mayumi D Perin
Alejandro N Maclead
Darci L Marrier
Jones F Maclead
Alejandro B Paprocki
Misaki I Ostrosky
Clifford D Venere
IdCountryDate
1000United Kingdom2025-06-06
1001Australia2025-06-05
1002Brazil2025-06-01
1003Russia2025-06-03
1004Brazil2025-05-25
1005United Kingdom2025-06-06
1006Canada2025-05-31
1007Canada2025-06-12
1008India2025-06-11
1009Brazil2025-06-01
1010Russia2025-05-22
1011Australia2025-05-20
1012Argentina2025-06-09
1013Brazil2025-05-28
1014Japan2025-05-23
1015Australia2025-05-18
1016Spain2025-05-20
1017Japan2025-06-08
1018Canada2025-05-19
1019Brazil2025-06-14
1020Spain2025-05-18
1021Argentina2025-05-26
1022Canada2025-05-18
1023India2025-05-23
1024India2025-05-25
1025Russia2025-06-07
1026Germany2025-06-12
1027Australia2025-06-14
1028Brazil2025-05-19
1029Germany2025-06-06
1030Japan2025-05-25
1031Russia2025-05-29
1032Argentina2025-05-23
1033Russia2025-06-02
1034Canada2025-05-24
1035Japan2025-05-20
1036Russia2025-05-18
1037United Kingdom2025-05-21
1038Australia2025-06-01
1039Argentina2025-05-25
1040Argentina2025-05-25
1041Canada2025-05-22
1042Russia2025-05-22
1043Canada2025-05-27
1044Japan2025-06-03
1045United Kingdom2025-06-11
1046Argentina2025-05-23
1047Spain2025-06-14
1048Russia2025-05-22
1049Spain2025-05-26

On-Demand Data

NameIdCountryDate
Misaki P Nestle1000Canada2025-06-12
Kaitlin Z Ostrosky1001Spain2025-05-23
Wickens C Venere1002France2025-06-06
Greenwood R Wieser1003Japan2025-05-21
Octavia K Glick1004Japan2025-06-13
Ricardo X Campain1005Russia2025-05-21
Ivar L Maclead1006United Kingdom2025-06-02
Tony Z Malet1007Italy2025-05-21
Maisha L Waycott1008Italy2025-06-13
Deepesh N Venere1009France2025-05-21
Faith Y Vocelka1010Spain2025-06-01
Smith Y Briddick1011Russia2025-06-04
Claire C Slusarski1012France2025-05-24
Aika B Gillian1013Spain2025-06-05
Ricardo I Garufi1014Canada2025-05-18
Arvin B Doe1015Japan2025-05-26
Sinclair B Doe1016Australia2025-06-03
Munro U Bolognia1017Japan2025-05-18
Adams A Kolmetz1018France2025-05-23
Faith G Sergi1019Argentina2025-05-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Greenwood Q RimUnited KingdomOnyama Limba NEGOTIATION
Rodrigues S KuskoRussiaAsiya Javayant RENEWAL
Stacey C SchemmerItalyIoni Bowcher NEGOTIATION
Clifford F GauchoSpainBernardo Dominic NEGOTIATION
Adams I AlbaresBrazilIoni Bowcher UNQUALIFIED
Arvin T PaprockiBrazilAsiya Javayant QUALIFIED
Leon I MarrierAustraliaStephen Shaw NEW
Arvin V PoquetteBrazilAsiya Javayant NEW
David M MacleadFranceAnna Fali QUALIFIED
Rodrigues N FlosiCanadaAsiya Javayant UNQUALIFIED
Leja B FigeroaAustraliaXuxue Feng QUALIFIED
Jefferson K FlosiItalyAsiya Javayant QUALIFIED
Smith I GauchoAustraliaElwin Sharvill QUALIFIED
Wickens I DarakjyItalyElwin Sharvill RENEWAL
Darci R DoeItalyStephen Shaw PROPOSAL
Maisha H GillianSpainAmy Elsner PROPOSAL
Salvatore E SaylorsJapanOnyama Limba PROPOSAL
Sinclair S RimBrazilAsiya Javayant PROPOSAL
Murillo T DoeItalyIoni Bowcher RENEWAL
Jennifer Y TollnerBrazilAmy Elsner NEGOTIATION
Salvatore A TollnerIndiaXuxue Feng PROPOSAL
Johnson O StockhamGermanyIvan Magalhaes PROPOSAL
Clifford U SchemmerItalyAsiya Javayant QUALIFIED
Adams K RulapaughAustraliaXuxue Feng RENEWAL
Aika J DarakjyIndiaStephen Shaw RENEWAL
Isabel S PoquetteUnited KingdomAnna Fali PROPOSAL
Jones D BowleyItalyXuxue Feng UNQUALIFIED
Clifford I CaudyJapanAnna Fali RENEWAL
Johnson W TollnerJapanAsiya Javayant RENEWAL
Jeanfrancois L TollnerJapanIoni Bowcher PROPOSAL
Ricardo F FollerFranceAsiya Javayant RENEWAL
Kaitlin Y VocelkaFranceStephen Shaw NEGOTIATION
Johnson N OstroskyIndiaIoni Bowcher NEGOTIATION
Chavez B GauchoGermanyIoni Bowcher NEW
Jennifer G GlickUnited KingdomIoni Bowcher NEW
Johnson U OstroskyArgentinaOnyama Limba QUALIFIED
Arvin R WieserArgentinaIoni Bowcher RENEWAL
Alejandro O CaldareraCanadaIoni Bowcher NEGOTIATION
Aditya N RimItalyXuxue Feng NEGOTIATION
Ricardo M MarrierGermanyOnyama Limba 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>