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
Deepesh U RimJapanAmy Elsner QUALIFIED
Smith P GarufiUnited KingdomXuxue Feng NEW
Jeanfrancois Q BriddickCanadaStephen Shaw PROPOSAL
Maisha F FlosiUnited KingdomXuxue Feng QUALIFIED
Ricardo P GlickArgentinaAsiya Javayant PROPOSAL
Munro S AmigonFranceBernardo Dominic PROPOSAL
Sinclair H KuskoFranceBernardo Dominic RENEWAL
Maisha Z GarufiBrazilOnyama Limba NEGOTIATION
Aditya S FerenczFranceStephen Shaw RENEWAL
Sinclair L ButtSpainIoni Bowcher NEGOTIATION
Nicolas P BriddickBrazilAsiya Javayant QUALIFIED
Juan A GlickJapanBernardo Dominic RENEWAL
Arvin X RimCanadaXuxue Feng RENEWAL
Sinclair H SaylorsAustraliaIvan Magalhaes NEW
Jefferson E KolmetzItalyIoni Bowcher PROPOSAL
Maria K VenereArgentinaOnyama Limba NEGOTIATION
David X GlickJapanBernardo Dominic PROPOSAL
Mujtaba P WhobreyItalyXuxue Feng QUALIFIED
Wickens S SergiSpainAsiya Javayant UNQUALIFIED
Francesco A MaletItalyIvan Magalhaes PROPOSAL
Rodrigues D GarufiItalyOnyama Limba NEGOTIATION
James C MarrierAustraliaBernardo Dominic RENEWAL
Chavez B DilliardUnited KingdomStephen Shaw PROPOSAL
Jeanfrancois W KolmetzCanadaStephen Shaw NEGOTIATION
Arvin H PerinUnited KingdomIvan Magalhaes NEGOTIATION
Juan R GillianAustraliaIvan Magalhaes RENEWAL
Mayumi R GillianFranceAsiya Javayant UNQUALIFIED
James N MacleadAustraliaIoni Bowcher NEW
Chavez P ChuiSpainElwin Sharvill NEGOTIATION
Costa R FerenczBrazilElwin Sharvill UNQUALIFIED
Julie C IturbideFranceElwin Sharvill UNQUALIFIED
Maisha L StockhamUnited KingdomXuxue Feng NEGOTIATION
Cody L CaldareraFranceStephen Shaw PROPOSAL
Leja U SergiUnited KingdomAmy Elsner NEW
Claire U OldroydGermanyElwin Sharvill NEW
Adams S BriddickJapanXuxue Feng NEW
Isabel F SchemmerRussiaAmy Elsner UNQUALIFIED
Kaitlin M KolmetzCanadaAmy Elsner NEGOTIATION
Salvatore Q GlickBrazilStephen Shaw NEGOTIATION
Costa Q ShinkoIndiaStephen Shaw NEGOTIATION
Jennifer C ButtItalyElwin Sharvill NEGOTIATION
Jennifer U NickaJapanIvan Magalhaes QUALIFIED
Morrow D PoquetteUnited KingdomElwin Sharvill QUALIFIED
Jeanfrancois L CaudyGermanyIvan Magalhaes NEGOTIATION
Kadeem Q FlosiFranceAnna Fali QUALIFIED
Maisha P WieserAustraliaOnyama Limba PROPOSAL
Misaki X GauchoBrazilAsiya Javayant QUALIFIED
Munro P WieserIndiaBernardo Dominic QUALIFIED
Isabel U FigeroaBrazilAnna Fali UNQUALIFIED
Leon G ShinkoIndiaElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Kaitlin Y KolmetzFranceElwin Sharvill PROPOSAL
Wickens M CaudyIndiaAmy Elsner PROPOSAL
Jeanfrancois T OstroskyJapanOnyama Limba RENEWAL
Jefferson C MorascaRussiaIvan Magalhaes RENEWAL
Jennifer L GarufiArgentinaIvan Magalhaes QUALIFIED
Maria P SergiCanadaStephen Shaw NEW
Chavez N AmigonBrazilAsiya Javayant NEGOTIATION
Clifford A DoeBrazilAnna Fali PROPOSAL
Deepesh F FollerCanadaAsiya Javayant RENEWAL
Costa I OstroskyRussiaBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem A WieserArgentina2024-06-20Chemel, James L Cpa NEW85Stephen Shaw
1001Kadeem Z FerenczUnited Kingdom2024-06-11Rangoni Of Florence UNQUALIFIED23Ioni Bowcher
1002Nicolas G BowleySpain2024-06-20Rousseaux, Michael Esq PROPOSAL71Xuxue Feng
1003Sinclair L DilliardSpain2024-05-28Printing Dimensions NEW6Stephen Shaw
1004Darci L ShinkoArgentina2024-06-23Chanay, Jeffrey A Esq PROPOSAL79Xuxue Feng
1005Ivar E GlickIndia2024-06-18King, Christopher A Esq NEW47Ioni Bowcher
1006Jefferson W FollerJapan2024-06-24Chapman, Ross E Esq NEGOTIATION49Onyama Limba
1007Arvin G RoysterItaly2024-06-04King, Christopher A Esq QUALIFIED17Ioni Bowcher
1008Tony R ButtBrazil2024-06-17Chemel, James L Cpa QUALIFIED4Stephen Shaw
1009Antonio K KuskoGermany2024-06-16Printing Dimensions UNQUALIFIED84Asiya Javayant
1010Alejandro Q FollerCanada2024-06-23Rangoni Of Florence NEGOTIATION44Asiya Javayant
1011Francesco Q VocelkaCanada2024-06-11Morlong Associates RENEWAL70Onyama Limba
1012Sinclair K MacleadRussia2024-05-27Morlong Associates QUALIFIED14Xuxue Feng
1013Aditya Y FollerCanada2024-06-09Feltz Printing Service NEGOTIATION91Anna Fali
1014David M RoysterJapan2024-05-26Chemel, James L Cpa UNQUALIFIED54Ivan Magalhaes
1015Costa R OstroskyRussia2024-06-17Chapman, Ross E Esq PROPOSAL43Xuxue Feng
1016Misaki L FerenczItaly2024-06-10Printing Dimensions NEGOTIATION19Xuxue Feng
1017Izzy X WaycottJapan2024-06-21Feltz Printing Service QUALIFIED50Asiya Javayant
1018Ricardo Q RulapaughCanada2024-06-20Chemel, James L Cpa NEW50Bernardo Dominic
1019Wickens N ButtSpain2024-06-07Commercial Press RENEWAL73Stephen Shaw
1020Jefferson W FerenczCanada2024-06-06Truhlar And Truhlar Attys PROPOSAL36Bernardo Dominic
1021Aika I SlusarskiFrance2024-06-17Buckley Miller Wright UNQUALIFIED67Bernardo Dominic
1022Stacey I GlickSpain2024-06-24Feiner Bros QUALIFIED23Amy Elsner
1023Murillo P CaudyRussia2024-06-01Feltz Printing Service NEGOTIATION74Asiya Javayant
1024Aika G RulapaughUnited Kingdom2024-06-20Morlong Associates NEGOTIATION26Amy Elsner
1025Sinclair A DilliardGermany2024-06-08Feiner Bros QUALIFIED52Stephen Shaw
1026Isabel V CaldareraRussia2024-06-09King, Christopher A Esq NEW77Anna Fali
1027Clifford T PerinUnited Kingdom2024-06-24Chapman, Ross E Esq NEGOTIATION11Anna Fali
1028Aditya X VocelkaJapan2024-06-15Rousseaux, Michael Esq NEGOTIATION50Elwin Sharvill
1029Francesco W RulapaughUnited Kingdom2024-06-19Buckley Miller Wright UNQUALIFIED27Ioni Bowcher
1030Sinclair W DoeItaly2024-06-13Rousseaux, Michael Esq PROPOSAL56Bernardo Dominic
1031Jennifer D AlbaresArgentina2024-06-22Feltz Printing Service PROPOSAL4Ivan Magalhaes
1032Jennifer V WaycottJapan2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED27Amy Elsner
1033Ricardo J WieserItaly2024-05-27Chemel, James L Cpa PROPOSAL72Xuxue Feng
1034Juan D ButtGermany2024-06-12Feiner Bros NEGOTIATION64Anna Fali
1035Octavia L GauchoIndia2024-06-18Morlong Associates QUALIFIED95Anna Fali
1036Alejandro D MaletJapan2024-06-05Chemel, James L Cpa PROPOSAL24Stephen Shaw
1037Isabel V BowleyBrazil2024-06-03Buckley Miller Wright NEW42Asiya Javayant
1038Munro E GauchoAustralia2024-06-22Rousseaux, Michael Esq RENEWAL69Ivan Magalhaes
1039Ashley Q RoysterJapan2024-06-18Rangoni Of Florence PROPOSAL26Ivan Magalhaes
1040Greenwood K AlbaresFrance2024-06-21King, Christopher A Esq RENEWAL99Asiya Javayant
1041Juan E CaudyArgentina2024-06-22Dorl, James J Esq RENEWAL9Bernardo Dominic
1042Mayumi T FollerRussia2024-06-09Chanay, Jeffrey A Esq UNQUALIFIED69Asiya Javayant
1043Mujtaba Q MaletCanada2024-06-03Morlong Associates NEW31Ivan Magalhaes
1044Rodrigues O VocelkaAustralia2024-06-05Buckley Miller Wright PROPOSAL79Elwin Sharvill
1045Aruna M BologniaFrance2024-06-14Dorl, James J Esq NEGOTIATION11Bernardo Dominic
1046Maria V IturbideJapan2024-05-27Rousseaux, Michael Esq PROPOSAL26Bernardo Dominic
1047Morrow I MarrierRussia2024-06-15Buckley Miller Wright QUALIFIED66Ivan Magalhaes
1048Ricardo T ShinkoJapan2024-06-16Benton, John B Jr QUALIFIED37Elwin Sharvill
1049Isabel P StensethJapan2024-06-04Chapman, Ross E Esq NEGOTIATION11Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Octavia C SchemmerBrazilElwin Sharvill RENEWAL
Kaitlin F FerenczArgentinaXuxue Feng PROPOSAL
Greenwood Y KuskoRussiaOnyama Limba NEW
Chavez L VocelkaItalyAnna Fali UNQUALIFIED
Isabel P GauchoGermanyBernardo Dominic PROPOSAL
Adams F DilliardArgentinaAmy Elsner RENEWAL
Jones X MaletCanadaIoni Bowcher NEW
Leon B BriddickJapanXuxue Feng RENEWAL
Jefferson G GillianItalyAnna Fali NEGOTIATION
Aditya A MaletBrazilStephen Shaw QUALIFIED
Aruna Q MorascaCanadaAmy Elsner NEGOTIATION
Mujtaba M RulapaughArgentinaAsiya Javayant NEW
Maria L PaprockiBrazilIvan Magalhaes NEW
Maria W GarufiArgentinaAsiya Javayant RENEWAL
David W MaletItalyAmy Elsner UNQUALIFIED
Kadeem X FlosiArgentinaIoni Bowcher RENEWAL
Mayumi X GarufiFranceIoni Bowcher NEGOTIATION
Octavia F ChuiUnited KingdomAmy Elsner PROPOSAL
Francesco F RoysterUnited KingdomXuxue Feng RENEWAL
Aika K GlickAustraliaIvan Magalhaes NEGOTIATION
James D WhobreySpainIvan Magalhaes QUALIFIED
Murillo C PoquetteAustraliaBernardo Dominic RENEWAL
Mayumi L VenereArgentinaAsiya Javayant RENEWAL
Wickens I FigeroaRussiaAmy Elsner NEW
Murillo N MacleadIndiaXuxue Feng RENEWAL
Kadeem K DoeAustraliaBernardo Dominic PROPOSAL
Claire F FollerArgentinaOnyama Limba PROPOSAL
Morrow A DoeBrazilAsiya Javayant QUALIFIED
Costa O SergiSpainXuxue Feng PROPOSAL
Ivar G OstroskySpainIoni Bowcher RENEWAL
Leja O SchemmerIndiaXuxue Feng NEW
Ashley G PoquetteFranceXuxue Feng NEGOTIATION
Isabel C NestleIndiaOnyama Limba UNQUALIFIED
Mujtaba Y FlosiArgentinaAsiya Javayant PROPOSAL
Faith T BriddickBrazilOnyama Limba QUALIFIED
Aruna Q OstroskyBrazilAnna Fali NEW
Mayumi Z CaldareraCanadaAmy Elsner NEW
Leja O CaldareraGermanyAnna Fali NEGOTIATION
Murillo H KolmetzUnited KingdomAsiya Javayant NEW
Jeanfrancois Q ButtBrazilAmy Elsner PROPOSAL
Jeanfrancois G AlbaresItalyAsiya Javayant PROPOSAL
Murillo C MorascaArgentinaOnyama Limba NEW
Jefferson J BowleyArgentinaAsiya Javayant NEW
Costa T ShinkoSpainAmy Elsner RENEWAL
Maisha R CaudyRussiaBernardo Dominic QUALIFIED
Faith S BologniaArgentinaOnyama Limba UNQUALIFIED
Mayumi T PoquetteSpainAnna Fali NEGOTIATION
Smith F GarufiUnited KingdomElwin Sharvill PROPOSAL
Adams K NestleIndiaElwin Sharvill RENEWAL
Izzy D ChuiIndiaXuxue Feng NEW
Frozen Columns
Name
Morrow W Glick
Leon S Ostrosky
Leon F Amigon
Silvio Y Caldarera
Wickens L Saylors
Smith J Malet
Ricardo O Whobrey
Morrow C Tollner
Francesco Q Stenseth
Deepesh V Butt
Mayumi T Malet
Wickens U Nestle
Deepesh G Kolmetz
Cody U Inouye
Ashley L Morasca
Misaki O Schemmer
Kadeem C Foller
Cody B Ferencz
Leon V Foller
Kadeem V Rulapaugh
Maisha S Sergi
Morrow T Slusarski
Maria C Ruta
Leon E Malet
Maria P Chui
Isabel J Caldarera
Tony K Iturbide
David Q Vocelka
Johnson H Glick
Costa L Royster
Ricardo Y Royster
Deepesh Z Wieser
Cody N Shinko
Mayumi X Dilliard
Aika D Nestle
Francesco E Bowley
Silvio G Royster
Maria K Doe
Jennifer I Ostrosky
Cody Z Morasca
Maria C Royster
Francesco F Stenseth
Rodrigues C Wieser
Jefferson Y Saylors
Kaitlin S Kolmetz
Costa Q Kolmetz
Arvin S Glick
Isabel X Briddick
Aruna N Saylors
Kadeem C Foller
IdCountryDate
1000Italy2024-05-30
1001Spain2024-05-28
1002United Kingdom2024-06-07
1003Italy2024-06-06
1004Spain2024-06-01
1005France2024-06-12
1006United Kingdom2024-06-21
1007United Kingdom2024-06-14
1008India2024-06-10
1009Russia2024-06-21
1010Japan2024-06-19
1011Russia2024-06-16
1012United Kingdom2024-06-05
1013India2024-06-07
1014Brazil2024-06-09
1015Spain2024-06-23
1016France2024-06-02
1017Italy2024-06-24
1018India2024-06-22
1019Canada2024-06-07
1020India2024-06-01
1021Russia2024-06-03
1022Russia2024-06-24
1023United Kingdom2024-05-27
1024France2024-06-12
1025United Kingdom2024-06-21
1026Italy2024-06-12
1027Russia2024-06-17
1028Japan2024-06-08
1029Canada2024-06-12
1030Germany2024-06-19
1031Australia2024-06-13
1032Spain2024-06-13
1033Germany2024-05-29
1034Canada2024-06-05
1035Brazil2024-06-08
1036Spain2024-06-23
1037Germany2024-06-22
1038Japan2024-06-11
1039France2024-06-10
1040United Kingdom2024-06-04
1041Australia2024-05-27
1042Canada2024-06-06
1043France2024-06-05
1044Japan2024-06-02
1045Japan2024-06-24
1046United Kingdom2024-06-08
1047Japan2024-06-04
1048Spain2024-06-24
1049India2024-06-22

On-Demand Data

NameIdCountryDate
David L Rim1000United Kingdom2024-06-11
Nicolas U Garufi1001Spain2024-06-09
Greenwood L Schemmer1002Italy2024-06-13
Leon T Sergi1003United Kingdom2024-06-21
Jones Z Oldroyd1004Germany2024-06-23
Wickens M Ruta1005Argentina2024-06-24
Aruna R Briddick1006Brazil2024-06-07
Isabel X Paprocki1007Argentina2024-05-26
Francesco R Kusko1008Italy2024-05-30
Johnson I Inouye1009Canada2024-06-04
Arvin B Nestle1010Germany2024-05-28
Ivar P Bowley1011Spain2024-06-22
Aika F Stenseth1012Japan2024-06-17
Wickens M Inouye1013India2024-06-18
Emily Q Glick1014Brazil2024-06-08
Juan W Shinko1015Canada2024-06-05
Juan L Rim1016United Kingdom2024-06-19
Clifford I Chui1017Argentina2024-06-13
Aditya W Maclead1018Australia2024-05-28
Ricardo N Malet1019Spain2024-06-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar C AmigonSpainXuxue Feng PROPOSAL
Misaki O VenereCanadaAmy Elsner NEW
Ricardo T GarufiUnited KingdomIoni Bowcher NEW
Juan B AmigonGermanyBernardo Dominic QUALIFIED
Kadeem W IturbideAustraliaAnna Fali NEW
Kaitlin I ShinkoGermanyOnyama Limba NEGOTIATION
Octavia D FollerAustraliaOnyama Limba NEGOTIATION
Emily F GauchoItalyAnna Fali NEGOTIATION
Arvin B FollerFranceAmy Elsner PROPOSAL
Antonio I GarufiCanadaAsiya Javayant QUALIFIED
Francesco N RoysterCanadaXuxue Feng NEGOTIATION
Rodrigues F CampainCanadaAnna Fali NEW
Arvin A FigeroaRussiaAmy Elsner NEGOTIATION
Aika A MaletFranceXuxue Feng RENEWAL
Greenwood C IturbideJapanIoni Bowcher NEGOTIATION
Isabel Z BologniaCanadaAnna Fali PROPOSAL
Emily C OldroydIndiaAsiya Javayant QUALIFIED
Emily B KolmetzIndiaBernardo Dominic UNQUALIFIED
Mayumi I DarakjyUnited KingdomBernardo Dominic QUALIFIED
Arvin A KolmetzRussiaBernardo Dominic QUALIFIED
Kadeem S IturbideRussiaXuxue Feng QUALIFIED
Silvio J ShinkoIndiaElwin Sharvill NEGOTIATION
Tony K StensethRussiaIvan Magalhaes PROPOSAL
Darci F FerenczUnited KingdomOnyama Limba RENEWAL
Maria Y BologniaArgentinaBernardo Dominic PROPOSAL
Aika F GarufiRussiaIoni Bowcher NEGOTIATION
Maisha L DarakjyAustraliaOnyama Limba NEGOTIATION
Sinclair M AmigonFranceBernardo Dominic QUALIFIED
Cody A BologniaUnited KingdomXuxue Feng NEW
Mayumi L KolmetzAustraliaXuxue Feng UNQUALIFIED
Aditya P DilliardCanadaIvan Magalhaes NEW
Morrow D NickaUnited KingdomAsiya Javayant NEGOTIATION
Ashley W RoysterUnited KingdomBernardo Dominic PROPOSAL
Tony H SlusarskiSpainBernardo Dominic NEW
Kaitlin G FerenczCanadaXuxue Feng UNQUALIFIED
Antonio X AlbaresFranceElwin Sharvill NEGOTIATION
Kaitlin G AlbaresArgentinaXuxue Feng NEW
Leja B SergiArgentinaIoni Bowcher PROPOSAL
Francesco Q SlusarskiItalyIvan Magalhaes RENEWAL
Misaki J RimAustraliaStephen Shaw PROPOSAL

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