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
David J PoquetteSpainOnyama Limba NEW
Jeanfrancois Q WieserRussiaAnna Fali UNQUALIFIED
Kadeem Y WhobreyRussiaElwin Sharvill UNQUALIFIED
Silvio F NickaGermanyIvan Magalhaes PROPOSAL
Jefferson T MaletFranceXuxue Feng NEGOTIATION
Rodrigues R OldroydBrazilIoni Bowcher RENEWAL
Faith P BologniaIndiaAsiya Javayant UNQUALIFIED
Mayumi T ButtAustraliaOnyama Limba NEGOTIATION
Aditya M SchemmerAustraliaBernardo Dominic RENEWAL
Deepesh Q SlusarskiCanadaBernardo Dominic QUALIFIED
Emily P SchemmerUnited KingdomIoni Bowcher NEGOTIATION
Leja H PerinCanadaAmy Elsner NEGOTIATION
Cody A PaprockiUnited KingdomXuxue Feng QUALIFIED
Maisha S WieserCanadaOnyama Limba NEGOTIATION
Maria P CaldareraIndiaStephen Shaw PROPOSAL
Silvio G AlbaresBrazilElwin Sharvill QUALIFIED
Jennifer R NestleSpainAsiya Javayant UNQUALIFIED
Juan L StockhamFranceIvan Magalhaes NEW
Sinclair Y FigeroaItalyBernardo Dominic PROPOSAL
Deepesh F FigeroaIndiaAsiya Javayant RENEWAL
Arvin Z ChuiUnited KingdomElwin Sharvill RENEWAL
Sinclair Z SaylorsUnited KingdomAmy Elsner UNQUALIFIED
Jones E BowleyCanadaStephen Shaw RENEWAL
Salvatore H NestleCanadaOnyama Limba NEGOTIATION
Octavia W GlickAustraliaXuxue Feng NEW
Murillo Z CampainArgentinaIoni Bowcher NEGOTIATION
Rodrigues I BologniaCanadaAnna Fali UNQUALIFIED
Francesco V KolmetzItalyStephen Shaw RENEWAL
Julie P GlickItalyOnyama Limba QUALIFIED
Darci J DarakjyUnited KingdomXuxue Feng NEGOTIATION
Jeanfrancois L MaletSpainOnyama Limba NEW
Tony I AmigonUnited KingdomAnna Fali NEW
Greenwood P SaylorsArgentinaXuxue Feng PROPOSAL
Jefferson U RutaSpainElwin Sharvill PROPOSAL
Jennifer F OldroydBrazilOnyama Limba QUALIFIED
Aika D InouyeFranceAmy Elsner QUALIFIED
Arvin E PerinIndiaStephen Shaw RENEWAL
Morrow P TollnerArgentinaElwin Sharvill QUALIFIED
Greenwood B WieserArgentinaBernardo Dominic PROPOSAL
Sinclair X RulapaughAustraliaElwin Sharvill NEGOTIATION
Murillo A KolmetzFranceAnna Fali QUALIFIED
Tony W MarrierAustraliaStephen Shaw PROPOSAL
Mujtaba S FigeroaArgentinaElwin Sharvill PROPOSAL
Kaitlin H FlosiRussiaBernardo Dominic NEGOTIATION
Jefferson W MarrierGermanyAmy Elsner QUALIFIED
Nicolas J DilliardJapanStephen Shaw RENEWAL
Tony U CampainUnited KingdomIvan Magalhaes PROPOSAL
Jennifer F KolmetzRussiaIvan Magalhaes RENEWAL
Claire G CaldareraIndiaIvan Magalhaes RENEWAL
Deepesh F DoeAustraliaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Salvatore K CampainGermanyAnna Fali UNQUALIFIED
Costa Z OstroskyFranceAnna Fali QUALIFIED
Izzy C RulapaughCanadaIoni Bowcher UNQUALIFIED
Kadeem N MaletSpainBernardo Dominic QUALIFIED
Isabel W CaldareraFranceOnyama Limba NEGOTIATION
Deepesh H WieserAustraliaBernardo Dominic NEGOTIATION
Kadeem L MaletIndiaBernardo Dominic RENEWAL
Deepesh U BowleyJapanStephen Shaw UNQUALIFIED
Ricardo J BriddickUnited KingdomAsiya Javayant RENEWAL
Aika P MaletItalyElwin Sharvill NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Stacey F RulapaughFrance2024-06-17Rousseaux, Michael Esq RENEWAL33Xuxue Feng
1001Deepesh G ShinkoItaly2024-05-25Morlong Associates NEGOTIATION75Elwin Sharvill
1002Mujtaba X NestleIndia2024-06-08Truhlar And Truhlar Attys QUALIFIED36Xuxue Feng
1003Munro R BologniaCanada2024-05-25Commercial Press RENEWAL72Elwin Sharvill
1004Jeanfrancois D GarufiRussia2024-05-26Truhlar And Truhlar Attys QUALIFIED62Stephen Shaw
1005Francesco G MacleadJapan2024-05-28Chemel, James L Cpa QUALIFIED2Ivan Magalhaes
1006Julie V PoquetteSpain2024-06-08Dorl, James J Esq RENEWAL90Onyama Limba
1007Smith C SlusarskiFrance2024-06-10King, Christopher A Esq QUALIFIED46Xuxue Feng
1008Ashley Y MaletArgentina2024-06-04Rousseaux, Michael Esq QUALIFIED14Stephen Shaw
1009Jennifer B DilliardUnited Kingdom2024-06-14Commercial Press QUALIFIED13Asiya Javayant
1010Nicolas V GlickCanada2024-05-30Feiner Bros NEGOTIATION87Stephen Shaw
1011Jefferson S SaylorsFrance2024-06-15Truhlar And Truhlar Attys UNQUALIFIED2Ioni Bowcher
1012Kaitlin O AmigonAustralia2024-06-19Dorl, James J Esq NEW64Ivan Magalhaes
1013Jennifer J CaudyRussia2024-06-02Chanay, Jeffrey A Esq PROPOSAL25Stephen Shaw
1014Julie U PerinItaly2024-06-04Chemel, James L Cpa NEW47Stephen Shaw
1015Jones D KuskoAustralia2024-06-03King, Christopher A Esq QUALIFIED23Asiya Javayant
1016Jeanfrancois X RoysterUnited Kingdom2024-06-10Benton, John B Jr QUALIFIED74Amy Elsner
1017Octavia T StensethRussia2024-06-11Feiner Bros NEGOTIATION63Ivan Magalhaes
1018Juan O RutaAustralia2024-06-19Chapman, Ross E Esq NEGOTIATION82Anna Fali
1019Francesco U WhobreyArgentina2024-05-29Printing Dimensions NEW86Onyama Limba
1020Juan A MaletJapan2024-06-18Chapman, Ross E Esq QUALIFIED75Ioni Bowcher
1021Aika F OldroydJapan2024-06-21Rangoni Of Florence RENEWAL24Anna Fali
1022Aditya H OldroydAustralia2024-06-22Buckley Miller Wright QUALIFIED61Xuxue Feng
1023Chavez X MarrierAustralia2024-05-26Morlong Associates PROPOSAL39Xuxue Feng
1024Deepesh C InouyeRussia2024-06-15Feltz Printing Service PROPOSAL31Onyama Limba
1025Jeanfrancois V OldroydUnited Kingdom2024-06-10Commercial Press QUALIFIED62Amy Elsner
1026Wickens S PerinUnited Kingdom2024-05-24Feltz Printing Service PROPOSAL90Bernardo Dominic
1027Rodrigues A WaycottUnited Kingdom2024-06-08Buckley Miller Wright RENEWAL66Stephen Shaw
1028Maisha G PerinUnited Kingdom2024-06-06Printing Dimensions RENEWAL92Elwin Sharvill
1029James A StockhamItaly2024-06-10Truhlar And Truhlar Attys RENEWAL82Anna Fali
1030Maria E MacleadCanada2024-06-20Buckley Miller Wright UNQUALIFIED1Stephen Shaw
1031Cody K InouyeUnited Kingdom2024-05-28Truhlar And Truhlar Attys NEGOTIATION20Elwin Sharvill
1032Johnson B KuskoGermany2024-05-28King, Christopher A Esq NEW29Bernardo Dominic
1033Murillo O StockhamFrance2024-06-21Morlong Associates RENEWAL64Stephen Shaw
1034David V SaylorsItaly2024-05-31Buckley Miller Wright NEW30Xuxue Feng
1035Chavez D VenereRussia2024-06-02Chemel, James L Cpa RENEWAL92Asiya Javayant
1036Greenwood M ButtSpain2024-06-09King, Christopher A Esq QUALIFIED81Xuxue Feng
1037Ashley I NickaGermany2024-06-15Rousseaux, Michael Esq NEGOTIATION30Ivan Magalhaes
1038Wickens W SaylorsSpain2024-06-19Dorl, James J Esq NEW46Asiya Javayant
1039David X MaletCanada2024-06-21Truhlar And Truhlar Attys QUALIFIED89Onyama Limba
1040Munro I KuskoGermany2024-06-18Chanay, Jeffrey A Esq NEGOTIATION11Asiya Javayant
1041Izzy S MaletCanada2024-06-06Rangoni Of Florence QUALIFIED15Stephen Shaw
1042David W OstroskyArgentina2024-06-09Truhlar And Truhlar Attys NEGOTIATION14Anna Fali
1043David F GillianBrazil2024-06-22Rousseaux, Michael Esq NEW12Xuxue Feng
1044Salvatore A MarrierUnited Kingdom2024-06-17Buckley Miller Wright RENEWAL92Xuxue Feng
1045Clifford H RulapaughJapan2024-06-21Benton, John B Jr NEW58Xuxue Feng
1046David X BriddickBrazil2024-06-07Buckley Miller Wright QUALIFIED41Anna Fali
1047Salvatore J OldroydSpain2024-06-10Morlong Associates RENEWAL66Amy Elsner
1048Ricardo I MacleadRussia2024-06-16Dorl, James J Esq NEW30Anna Fali
1049Clifford U CampainAustralia2024-06-07Truhlar And Truhlar Attys NEW86Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aditya F BriddickIndiaStephen Shaw NEGOTIATION
Smith Q KolmetzRussiaAmy Elsner QUALIFIED
Jefferson N RoysterIndiaIvan Magalhaes PROPOSAL
Jefferson F BologniaFranceIoni Bowcher UNQUALIFIED
Octavia X MaletIndiaIvan Magalhaes RENEWAL
Claire E RutaCanadaAnna Fali PROPOSAL
Juan L GauchoBrazilIvan Magalhaes NEGOTIATION
Emily J FerenczUnited KingdomIoni Bowcher NEGOTIATION
Aika I MaletSpainBernardo Dominic NEGOTIATION
Izzy P BologniaFranceAmy Elsner QUALIFIED
Emily O VocelkaUnited KingdomStephen Shaw PROPOSAL
Deepesh H SergiSpainAmy Elsner QUALIFIED
Johnson L DarakjySpainOnyama Limba NEW
Octavia A RulapaughJapanElwin Sharvill QUALIFIED
Leja P DarakjyGermanyIoni Bowcher QUALIFIED
Smith D SlusarskiIndiaXuxue Feng RENEWAL
Rodrigues R StockhamGermanyAsiya Javayant NEW
Jones E MaletUnited KingdomOnyama Limba UNQUALIFIED
Arvin H DarakjyUnited KingdomAnna Fali PROPOSAL
Misaki Q StensethBrazilIvan Magalhaes UNQUALIFIED
Mayumi X ShinkoIndiaElwin Sharvill NEW
Deepesh X MarrierArgentinaIoni Bowcher PROPOSAL
Antonio J DilliardBrazilOnyama Limba QUALIFIED
Deepesh Y RulapaughBrazilOnyama Limba RENEWAL
Maria S StockhamFranceElwin Sharvill RENEWAL
Darci E VocelkaBrazilAsiya Javayant QUALIFIED
Greenwood G StensethAustraliaAnna Fali QUALIFIED
Jones V KuskoFranceIvan Magalhaes QUALIFIED
James W SergiIndiaOnyama Limba NEW
Leon G NestleBrazilElwin Sharvill NEW
Faith N PerinBrazilAnna Fali QUALIFIED
Smith L OldroydSpainAmy Elsner RENEWAL
Kadeem S ButtFranceAsiya Javayant PROPOSAL
Izzy S MorascaCanadaAsiya Javayant RENEWAL
Chavez I PaprockiBrazilAsiya Javayant RENEWAL
David Q DarakjyUnited KingdomIvan Magalhaes PROPOSAL
Tony A WaycottBrazilAsiya Javayant NEGOTIATION
Isabel H FerenczBrazilXuxue Feng NEW
Leja D FlosiItalyAmy Elsner QUALIFIED
Mayumi T PoquetteUnited KingdomAsiya Javayant NEGOTIATION
Ivar B GlickBrazilIoni Bowcher PROPOSAL
Salvatore W WaycottRussiaBernardo Dominic UNQUALIFIED
Leja I VenereAustraliaAsiya Javayant NEGOTIATION
Costa I WieserGermanyAnna Fali PROPOSAL
Salvatore G DilliardSpainBernardo Dominic QUALIFIED
Octavia D GarufiUnited KingdomOnyama Limba NEW
Maisha Y GillianCanadaXuxue Feng NEGOTIATION
Stacey K PaprockiGermanyIoni Bowcher NEGOTIATION
Adams I GillianItalyAmy Elsner RENEWAL
Maisha J TollnerSpainIoni Bowcher NEGOTIATION
Frozen Columns
Name
Faith L Kolmetz
Maria P Nicka
Ashley B Campain
Aditya D Ruta
Clifford Z Ruta
James N Gillian
Kaitlin P Ruta
Chavez P Marrier
Murillo O Foller
Nicolas V Tollner
Jones H Dilliard
Julie U Morasca
Clifford C Inouye
Jeanfrancois T Whobrey
David R Amigon
Aruna D Caudy
Clifford F Schemmer
Costa A Poquette
Kadeem M Doe
Isabel C Morasca
Kaitlin E Poquette
Francesco L Maclead
Aruna V Stenseth
Misaki D Bowley
Silvio N Butt
Ashley R Perin
Morrow K Royster
Ashley X Waycott
Izzy I Figeroa
Mujtaba D Shinko
Faith L Flosi
David Z Gillian
Smith J Royster
Ricardo J Venere
Ricardo E Flosi
Alejandro Z Royster
Aika S Sergi
Mujtaba B Stenseth
Munro N Rulapaugh
Antonio P Figeroa
Jeanfrancois J Iturbide
David R Nestle
Jefferson W Paprocki
Aika P Ostrosky
Darci C Schemmer
Chavez P Chui
Cody J Nicka
Salvatore K Whobrey
Aditya O Stenseth
Isabel G Glick
IdCountryDate
1000Japan2024-05-26
1001Australia2024-06-21
1002Japan2024-05-28
1003Russia2024-06-12
1004Germany2024-05-30
1005United Kingdom2024-06-18
1006Australia2024-06-17
1007India2024-06-20
1008Germany2024-06-09
1009Germany2024-06-21
1010Italy2024-06-19
1011India2024-05-30
1012United Kingdom2024-06-14
1013Brazil2024-06-09
1014Russia2024-05-30
1015Italy2024-05-27
1016India2024-06-17
1017Spain2024-05-30
1018Russia2024-05-29
1019India2024-06-13
1020Argentina2024-06-10
1021Japan2024-06-09
1022Russia2024-06-18
1023Germany2024-06-20
1024Argentina2024-06-04
1025United Kingdom2024-05-29
1026Russia2024-06-01
1027India2024-06-19
1028Brazil2024-06-07
1029Canada2024-06-20
1030India2024-06-04
1031Russia2024-06-12
1032Japan2024-05-27
1033Russia2024-06-05
1034India2024-06-18
1035Canada2024-06-19
1036France2024-06-19
1037Australia2024-06-02
1038Australia2024-06-18
1039Spain2024-05-29
1040Japan2024-06-01
1041France2024-05-26
1042Germany2024-05-25
1043Germany2024-06-19
1044Canada2024-06-10
1045Russia2024-06-12
1046Canada2024-06-07
1047Argentina2024-06-20
1048France2024-06-21
1049France2024-06-07

On-Demand Data

NameIdCountryDate
Murillo U Gaucho1000Germany2024-06-16
James M Paprocki1001Canada2024-06-08
Emily V Saylors1002United Kingdom2024-05-28
Mayumi A Saylors1003Russia2024-06-06
Munro P Rim1004Argentina2024-06-16
Maisha I Malet1005United Kingdom2024-06-05
Jeanfrancois M Gillian1006India2024-05-26
Juan U Foller1007France2024-06-13
Stacey Z Whobrey1008Australia2024-06-11
Octavia J Ostrosky1009Spain2024-06-11
Rodrigues A Morasca1010Japan2024-06-12
Mujtaba E Shinko1011Argentina2024-06-22
Juan G Garufi1012United Kingdom2024-05-24
Nicolas U Amigon1013Brazil2024-06-07
Clifford V Doe1014Russia2024-06-14
Jeanfrancois Q Malet1015United Kingdom2024-05-31
Izzy G Campain1016Germany2024-05-26
Aika N Paprocki1017Japan2024-05-28
Nicolas Y Figeroa1018India2024-05-24
Silvio P Flosi1019Argentina2024-06-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford L WaycottIndiaAnna Fali NEW
Salvatore O StockhamBrazilOnyama Limba QUALIFIED
Kaitlin H BologniaIndiaAmy Elsner NEW
Francesco N IturbideItalyStephen Shaw PROPOSAL
Jennifer R SchemmerRussiaElwin Sharvill NEW
Claire U PerinFranceAmy Elsner QUALIFIED
David B MarrierCanadaBernardo Dominic NEGOTIATION
Claire H FerenczArgentinaAsiya Javayant PROPOSAL
Rodrigues G SaylorsJapanIvan Magalhaes UNQUALIFIED
Ricardo B BologniaFranceStephen Shaw QUALIFIED
Ashley G SchemmerIndiaBernardo Dominic RENEWAL
Nicolas C SchemmerArgentinaStephen Shaw RENEWAL
Kadeem R NestleSpainStephen Shaw NEGOTIATION
Aruna M IturbideSpainOnyama Limba RENEWAL
Munro H PaprockiBrazilIvan Magalhaes NEGOTIATION
Aika K CaldareraCanadaStephen Shaw PROPOSAL
David Y AmigonUnited KingdomAmy Elsner PROPOSAL
Isabel S VocelkaAustraliaStephen Shaw NEW
Johnson M PaprockiCanadaAsiya Javayant RENEWAL
Ashley C PerinUnited KingdomBernardo Dominic PROPOSAL
Wickens I WieserAustraliaOnyama Limba NEW
Aika C SaylorsArgentinaIvan Magalhaes QUALIFIED
Arvin L ChuiRussiaIoni Bowcher PROPOSAL
Johnson F CaldareraAustraliaIoni Bowcher NEW
Wickens N TollnerRussiaOnyama Limba PROPOSAL
Mujtaba D ShinkoIndiaElwin Sharvill UNQUALIFIED
Claire V KolmetzCanadaBernardo Dominic RENEWAL
Rodrigues S GillianAustraliaIvan Magalhaes UNQUALIFIED
Maisha W DarakjyGermanyElwin Sharvill NEW
Mayumi C BriddickRussiaAmy Elsner RENEWAL
Octavia D MorascaUnited KingdomAsiya Javayant RENEWAL
Antonio U DarakjyAustraliaAnna Fali UNQUALIFIED
Jefferson H RoysterGermanyAsiya Javayant UNQUALIFIED
Ashley A GauchoAustraliaBernardo Dominic UNQUALIFIED
Salvatore C CampainAustraliaBernardo Dominic PROPOSAL
Izzy N WieserItalyElwin Sharvill QUALIFIED
Jefferson T OstroskyArgentinaAmy Elsner NEW
Emily C AlbaresGermanyAsiya Javayant UNQUALIFIED
Morrow X IturbideUnited KingdomAnna Fali QUALIFIED
Sinclair Q IturbideSpainStephen Shaw 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>