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
Tony H SchemmerBrazilIvan Magalhaes NEGOTIATION
Salvatore A WaycottSpainOnyama Limba NEGOTIATION
Mayumi J MaletUnited KingdomIoni Bowcher QUALIFIED
Smith D MacleadArgentinaIvan Magalhaes QUALIFIED
Izzy K VocelkaBrazilIoni Bowcher NEW
Jennifer Z SchemmerBrazilBernardo Dominic UNQUALIFIED
Rodrigues M MorascaArgentinaBernardo Dominic PROPOSAL
Wickens K GlickIndiaOnyama Limba NEW
Rodrigues F ButtSpainXuxue Feng PROPOSAL
Jones N GillianSpainAnna Fali UNQUALIFIED
Ricardo P RoysterJapanAsiya Javayant NEGOTIATION
Mayumi F VenereBrazilIvan Magalhaes RENEWAL
Smith X VenereItalyIoni Bowcher UNQUALIFIED
Mujtaba E ShinkoCanadaElwin Sharvill QUALIFIED
Emily Q RutaRussiaStephen Shaw UNQUALIFIED
Jennifer A VocelkaFranceOnyama Limba QUALIFIED
Jones N RutaSpainIoni Bowcher NEW
Antonio P ChuiCanadaIvan Magalhaes NEW
Smith Z IturbideJapanAnna Fali NEGOTIATION
Smith Y MaletJapanBernardo Dominic RENEWAL
Silvio G FigeroaJapanStephen Shaw RENEWAL
Arvin U StensethSpainIvan Magalhaes QUALIFIED
Kaitlin E MorascaGermanyOnyama Limba UNQUALIFIED
Adams F DoeUnited KingdomAmy Elsner UNQUALIFIED
Leon P CampainArgentinaStephen Shaw RENEWAL
Costa K MaletAustraliaOnyama Limba UNQUALIFIED
Izzy F MaletIndiaIoni Bowcher NEW
Murillo M InouyeRussiaXuxue Feng RENEWAL
David K ChuiItalyStephen Shaw RENEWAL
Jennifer W OstroskySpainBernardo Dominic NEW
Chavez Q KuskoUnited KingdomOnyama Limba NEGOTIATION
Leon X ButtFranceXuxue Feng NEW
Ivar O FerenczBrazilOnyama Limba NEW
Wickens T IturbideUnited KingdomAsiya Javayant PROPOSAL
Tony L IturbideArgentinaAnna Fali NEW
Johnson U PaprockiRussiaBernardo Dominic UNQUALIFIED
Adams A SergiCanadaIoni Bowcher PROPOSAL
Smith C CampainAustraliaAnna Fali QUALIFIED
Antonio S SergiFranceOnyama Limba PROPOSAL
Mujtaba R WieserArgentinaAnna Fali NEGOTIATION
Francesco E VocelkaFranceElwin Sharvill UNQUALIFIED
Sinclair C IturbideBrazilElwin Sharvill NEW
Antonio X OstroskyUnited KingdomOnyama Limba NEGOTIATION
Leja T PoquetteSpainXuxue Feng QUALIFIED
Mujtaba Z StockhamBrazilIvan Magalhaes QUALIFIED
Kadeem A MacleadJapanIvan Magalhaes PROPOSAL
Leja S GlickCanadaStephen Shaw PROPOSAL
Darci H ChuiJapanXuxue Feng RENEWAL
David J FigeroaItalyIoni Bowcher PROPOSAL
Izzy Q GauchoCanadaStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Antonio G WaycottAustraliaAnna Fali UNQUALIFIED
Misaki F FigeroaUnited KingdomIvan Magalhaes RENEWAL
Wickens O AlbaresAustraliaElwin Sharvill QUALIFIED
Maria H NestleCanadaStephen Shaw PROPOSAL
James E MacleadFranceIoni Bowcher RENEWAL
Isabel R BologniaBrazilElwin Sharvill PROPOSAL
Kaitlin Z VenereUnited KingdomBernardo Dominic PROPOSAL
Jones G SaylorsJapanAsiya Javayant QUALIFIED
Morrow K GauchoJapanBernardo Dominic QUALIFIED
Alejandro H DarakjyUnited KingdomBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Alejandro P OldroydSpain2024-05-08Chanay, Jeffrey A Esq UNQUALIFIED74Xuxue Feng
1001Juan Q RulapaughAustralia2024-05-10Rousseaux, Michael Esq QUALIFIED92Ivan Magalhaes
1002Stacey K StensethItaly2024-05-13Rousseaux, Michael Esq UNQUALIFIED73Amy Elsner
1003Isabel P PerinIndia2024-05-16Chanay, Jeffrey A Esq UNQUALIFIED79Bernardo Dominic
1004Antonio B FlosiRussia2024-05-09Rousseaux, Michael Esq NEGOTIATION72Ioni Bowcher
1005Johnson D DilliardBrazil2024-05-14Commercial Press NEW13Ioni Bowcher
1006Adams L MacleadArgentina2024-04-29Chapman, Ross E Esq UNQUALIFIED92Ioni Bowcher
1007Aika A GlickAustralia2024-05-13Morlong Associates UNQUALIFIED7Anna Fali
1008David L MaletSpain2024-05-12Chanay, Jeffrey A Esq RENEWAL16Ivan Magalhaes
1009Francesco F AlbaresRussia2024-05-23Buckley Miller Wright QUALIFIED36Onyama Limba
1010Octavia N MarrierIndia2024-05-04Morlong Associates NEGOTIATION63Asiya Javayant
1011Mayumi R PoquetteSpain2024-04-30Morlong Associates UNQUALIFIED32Anna Fali
1012Chavez I WhobreyCanada2024-05-09Printing Dimensions PROPOSAL12Stephen Shaw
1013Kadeem R WieserGermany2024-05-16Benton, John B Jr UNQUALIFIED38Asiya Javayant
1014Maisha I DilliardFrance2024-05-23Morlong Associates PROPOSAL93Elwin Sharvill
1015Octavia V StensethCanada2024-05-03Feltz Printing Service RENEWAL35Amy Elsner
1016Tony S MaletFrance2024-05-03King, Christopher A Esq RENEWAL69Ioni Bowcher
1017Isabel E RimArgentina2024-05-01Chanay, Jeffrey A Esq NEW63Bernardo Dominic
1018Sinclair E KuskoCanada2024-05-21Truhlar And Truhlar Attys RENEWAL59Anna Fali
1019Tony K WhobreyBrazil2024-05-21Rousseaux, Michael Esq RENEWAL42Asiya Javayant
1020David F RoysterJapan2024-05-14Feltz Printing Service UNQUALIFIED18Asiya Javayant
1021Ivar N BologniaJapan2024-05-19Printing Dimensions UNQUALIFIED78Amy Elsner
1022Izzy G AlbaresAustralia2024-05-15King, Christopher A Esq QUALIFIED34Anna Fali
1023Izzy E BowleySpain2024-05-17Chemel, James L Cpa NEGOTIATION4Ivan Magalhaes
1024James V ShinkoItaly2024-05-21Rangoni Of Florence RENEWAL89Stephen Shaw
1025Darci R CampainBrazil2024-05-22Feiner Bros PROPOSAL62Xuxue Feng
1026Smith P MaletCanada2024-05-18Rousseaux, Michael Esq PROPOSAL38Asiya Javayant
1027Salvatore P SaylorsRussia2024-05-09Chemel, James L Cpa NEW90Elwin Sharvill
1028Leon V AmigonSpain2024-05-03Dorl, James J Esq QUALIFIED48Ivan Magalhaes
1029Smith H SlusarskiUnited Kingdom2024-05-08Feiner Bros QUALIFIED99Ivan Magalhaes
1030Francesco S MacleadSpain2024-05-18Truhlar And Truhlar Attys PROPOSAL56Ivan Magalhaes
1031Emily Y GauchoGermany2024-05-06Dorl, James J Esq NEGOTIATION26Bernardo Dominic
1032Morrow X ChuiJapan2024-05-17Feiner Bros RENEWAL33Ioni Bowcher
1033Izzy F SaylorsCanada2024-05-14Chanay, Jeffrey A Esq PROPOSAL90Elwin Sharvill
1034Misaki N WieserJapan2024-05-04Chemel, James L Cpa QUALIFIED32Ioni Bowcher
1035Costa J CaldareraRussia2024-04-30Morlong Associates NEGOTIATION48Anna Fali
1036Kaitlin T GauchoIndia2024-05-10Chapman, Ross E Esq PROPOSAL79Ivan Magalhaes
1037Kadeem H SaylorsJapan2024-05-15Benton, John B Jr UNQUALIFIED28Onyama Limba
1038Ricardo M WhobreyIndia2024-05-07Feiner Bros RENEWAL40Anna Fali
1039Jefferson Y FigeroaBrazil2024-05-01Buckley Miller Wright NEGOTIATION7Anna Fali
1040Alejandro S RulapaughAustralia2024-05-04Chapman, Ross E Esq UNQUALIFIED31Ioni Bowcher
1041Arvin X ChuiUnited Kingdom2024-05-20Commercial Press UNQUALIFIED21Ioni Bowcher
1042Aika M ShinkoIndia2024-05-03Chanay, Jeffrey A Esq PROPOSAL2Xuxue Feng
1043Maria Q CaudyCanada2024-05-08Chapman, Ross E Esq NEW83Asiya Javayant
1044Rodrigues B BologniaUnited Kingdom2024-05-13Printing Dimensions PROPOSAL69Asiya Javayant
1045Leja V WaycottIndia2024-05-15Benton, John B Jr RENEWAL38Ioni Bowcher
1046Izzy K RimIndia2024-05-17Dorl, James J Esq NEGOTIATION59Stephen Shaw
1047Greenwood S OldroydGermany2024-04-28Feiner Bros PROPOSAL6Xuxue Feng
1048Faith E AlbaresFrance2024-05-23Dorl, James J Esq NEGOTIATION21Elwin Sharvill
1049Jefferson J BriddickCanada2024-05-23Chemel, James L Cpa NEGOTIATION61Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Faith Y MaletArgentinaElwin Sharvill PROPOSAL
Salvatore H ButtGermanyStephen Shaw RENEWAL
Jeanfrancois J BowleyIndiaIoni Bowcher UNQUALIFIED
Julie I SaylorsSpainIvan Magalhaes UNQUALIFIED
Johnson K IturbideIndiaXuxue Feng NEGOTIATION
Izzy Y MacleadJapanXuxue Feng UNQUALIFIED
Mayumi J GlickAustraliaAsiya Javayant PROPOSAL
Jones K NickaSpainBernardo Dominic NEW
James R NickaRussiaOnyama Limba PROPOSAL
Juan Q ChuiArgentinaBernardo Dominic PROPOSAL
Munro T StensethBrazilIvan Magalhaes NEW
Juan C OstroskyGermanyOnyama Limba QUALIFIED
Ricardo P NestleCanadaIoni Bowcher PROPOSAL
Izzy B NickaFranceStephen Shaw PROPOSAL
Munro S GauchoAustraliaAsiya Javayant NEGOTIATION
Isabel J VocelkaSpainBernardo Dominic NEW
Ashley P FlosiArgentinaOnyama Limba UNQUALIFIED
Mujtaba G SaylorsIndiaStephen Shaw PROPOSAL
Maisha T ShinkoCanadaElwin Sharvill NEW
Jeanfrancois K InouyeArgentinaIoni Bowcher NEGOTIATION
Darci P PaprockiAustraliaElwin Sharvill NEGOTIATION
Wickens O GillianFranceIoni Bowcher NEW
Arvin J DilliardIndiaAmy Elsner NEW
Cody I FlosiUnited KingdomAnna Fali NEW
Ashley F RoysterFranceIoni Bowcher RENEWAL
Claire Q RutaBrazilIvan Magalhaes UNQUALIFIED
Murillo X WaycottFranceElwin Sharvill PROPOSAL
Ivar Q FollerAustraliaElwin Sharvill NEW
Greenwood C DilliardSpainElwin Sharvill NEGOTIATION
Wickens M WieserItalyStephen Shaw QUALIFIED
Isabel E MaletFranceAsiya Javayant UNQUALIFIED
Francesco N NestleArgentinaIoni Bowcher NEW
Aika K OstroskyJapanOnyama Limba RENEWAL
Kadeem E StockhamAustraliaIoni Bowcher QUALIFIED
Kadeem Z NickaGermanyXuxue Feng PROPOSAL
Leon I ButtArgentinaXuxue Feng PROPOSAL
Murillo G CaudySpainOnyama Limba UNQUALIFIED
Maisha C MorascaCanadaAsiya Javayant UNQUALIFIED
Kadeem T ChuiFranceIvan Magalhaes NEW
Jeanfrancois U FerenczBrazilStephen Shaw QUALIFIED
Murillo R FigeroaFranceIoni Bowcher QUALIFIED
Aika R NickaUnited KingdomAsiya Javayant RENEWAL
Alejandro D PaprockiGermanyStephen Shaw NEW
Leon L AmigonJapanBernardo Dominic NEW
Maria R FigeroaIndiaElwin Sharvill NEW
Chavez Q DarakjyArgentinaElwin Sharvill UNQUALIFIED
Smith D ShinkoFranceAsiya Javayant NEGOTIATION
Ashley I CampainAustraliaOnyama Limba PROPOSAL
Darci Y RutaFranceIvan Magalhaes NEGOTIATION
Isabel H OldroydCanadaAnna Fali NEGOTIATION
Frozen Columns
Name
Francesco A Rulapaugh
Darci I Chui
Sinclair E Kusko
Maisha G Kusko
Stacey A Stockham
Wickens G Saylors
Ricardo Z Sergi
Ricardo M Gaucho
Greenwood K Nicka
Ricardo B Garufi
Clifford F Morasca
Kaitlin V Kolmetz
Antonio Y Albares
Jeanfrancois V Malet
Mujtaba V Whobrey
Ricardo I Darakjy
Smith Z Dilliard
Arvin U Foller
Rodrigues Q Ferencz
Kadeem T Nestle
Aruna T Nestle
Smith P Bowley
Misaki I Rim
Jeanfrancois W Slusarski
Silvio V Ostrosky
Antonio T Butt
Misaki U Dilliard
Kaitlin X Tollner
Cody V Morasca
Antonio N Briddick
Smith S Sergi
Johnson Z Dilliard
Faith K Schemmer
Tony M Glick
Sinclair O Nicka
Francesco E Whobrey
Murillo Y Butt
Sinclair N Rulapaugh
David X Nestle
Aruna D Morasca
Maisha G Bowley
David T Saylors
Alejandro E Kusko
Sinclair X Gillian
Misaki M Foller
Salvatore Z Kusko
Costa L Nicka
Maisha P Royster
Jones T Rim
Chavez P Nestle
IdCountryDate
1000Canada2024-05-16
1001Argentina2024-05-10
1002Japan2024-05-22
1003Canada2024-04-27
1004India2024-05-18
1005France2024-05-03
1006India2024-05-05
1007Spain2024-05-07
1008Spain2024-05-18
1009Brazil2024-05-20
1010Germany2024-05-01
1011Brazil2024-05-09
1012Canada2024-05-21
1013United Kingdom2024-04-28
1014Spain2024-05-01
1015Canada2024-05-06
1016Canada2024-04-28
1017France2024-04-27
1018Spain2024-05-06
1019Spain2024-05-12
1020Brazil2024-05-23
1021France2024-05-14
1022Germany2024-04-27
1023France2024-04-27
1024United Kingdom2024-05-19
1025India2024-05-24
1026Australia2024-05-17
1027Canada2024-04-28
1028Brazil2024-05-18
1029Italy2024-04-29
1030Australia2024-05-02
1031Japan2024-05-02
1032Italy2024-04-27
1033United Kingdom2024-05-02
1034India2024-05-13
1035United Kingdom2024-05-18
1036Italy2024-04-30
1037Germany2024-05-10
1038Canada2024-05-23
1039United Kingdom2024-05-16
1040Brazil2024-05-26
1041France2024-05-09
1042Italy2024-05-01
1043Australia2024-05-06
1044Spain2024-04-28
1045United Kingdom2024-05-16
1046Russia2024-05-11
1047Australia2024-05-11
1048Italy2024-05-24
1049Canada2024-05-03

On-Demand Data

NameIdCountryDate
Maria B Stenseth1000India2024-05-06
Chavez Z Malet1001India2024-04-27
Maisha S Ostrosky1002Argentina2024-05-02
Smith U Campain1003Spain2024-05-17
Ricardo G Rulapaugh1004Italy2024-04-30
Julie O Venere1005France2024-04-28
Maisha W Royster1006Germany2024-05-14
Aruna R Whobrey1007Germany2024-05-24
James A Garufi1008India2024-05-22
Darci W Bowley1009Japan2024-04-28
Mujtaba S Glick1010Argentina2024-05-03
Juan N Kusko1011Germany2024-05-16
Murillo O Foller1012Russia2024-05-11
Mujtaba G Perin1013Japan2024-05-23
Mayumi J Kolmetz1014Brazil2024-05-14
Wickens L Ostrosky1015Italy2024-05-26
Adams H Gaucho1016Japan2024-05-20
Munro T Sergi1017Brazil2024-04-29
Salvatore A Vocelka1018France2024-05-08
Jennifer G Bowley1019Brazil2024-05-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues I KolmetzSpainElwin Sharvill QUALIFIED
Jeanfrancois K StensethBrazilOnyama Limba UNQUALIFIED
Tony S SaylorsIndiaXuxue Feng UNQUALIFIED
Claire J GlickBrazilElwin Sharvill NEW
Mujtaba S GauchoBrazilElwin Sharvill RENEWAL
Kadeem W PerinCanadaBernardo Dominic PROPOSAL
Stacey P DilliardGermanyBernardo Dominic NEGOTIATION
Greenwood E ShinkoFranceIoni Bowcher NEW
Sinclair I FlosiItalyIvan Magalhaes UNQUALIFIED
Sinclair I MacleadGermanyBernardo Dominic UNQUALIFIED
Octavia W AlbaresCanadaStephen Shaw RENEWAL
Kaitlin R CampainUnited KingdomBernardo Dominic PROPOSAL
Octavia Q AmigonArgentinaStephen Shaw UNQUALIFIED
Misaki M AmigonIndiaStephen Shaw QUALIFIED
Jefferson Y ButtIndiaAmy Elsner PROPOSAL
Rodrigues Q CampainJapanBernardo Dominic UNQUALIFIED
Ivar W VocelkaItalyAnna Fali UNQUALIFIED
Rodrigues A CaldareraItalyStephen Shaw PROPOSAL
Costa S ChuiSpainIoni Bowcher UNQUALIFIED
Wickens J StensethIndiaOnyama Limba NEGOTIATION
Aika F SlusarskiRussiaIvan Magalhaes PROPOSAL
Francesco R SchemmerRussiaBernardo Dominic QUALIFIED
Greenwood Y ShinkoIndiaOnyama Limba NEGOTIATION
Maria Q SchemmerSpainIoni Bowcher UNQUALIFIED
Mayumi Z InouyeItalyAnna Fali QUALIFIED
Antonio Y TollnerItalyAmy Elsner RENEWAL
Greenwood K GarufiFranceAsiya Javayant QUALIFIED
Murillo Y VocelkaSpainIoni Bowcher RENEWAL
Nicolas B SchemmerCanadaXuxue Feng NEW
Murillo X WaycottUnited KingdomAsiya Javayant NEW
Adams B InouyeGermanyAmy Elsner QUALIFIED
Tony Z RutaArgentinaIvan Magalhaes UNQUALIFIED
Cody L ChuiJapanXuxue Feng PROPOSAL
Nicolas W AlbaresUnited KingdomIvan Magalhaes RENEWAL
Antonio H WhobreySpainBernardo Dominic RENEWAL
Antonio D DarakjyArgentinaStephen Shaw UNQUALIFIED
Jones A CampainItalyStephen Shaw QUALIFIED
Antonio A RimFranceAmy Elsner QUALIFIED
Octavia L NestleBrazilIoni Bowcher RENEWAL
Mayumi K SaylorsIndiaIvan Magalhaes 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>