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
Emily H RutaAustraliaStephen Shaw NEGOTIATION
Faith W OldroydJapanBernardo Dominic PROPOSAL
Emily G PaprockiFranceAsiya Javayant QUALIFIED
Leja I ChuiBrazilOnyama Limba NEW
Mujtaba R VocelkaGermanyElwin Sharvill NEGOTIATION
James A ShinkoItalyBernardo Dominic NEGOTIATION
Faith K TollnerUnited KingdomOnyama Limba NEW
Julie E BologniaSpainStephen Shaw RENEWAL
Ashley Z VenereAustraliaOnyama Limba NEW
Wickens K GillianGermanyElwin Sharvill UNQUALIFIED
Costa E MarrierBrazilIoni Bowcher PROPOSAL
Stacey S BowleyBrazilOnyama Limba PROPOSAL
Kaitlin L FerenczIndiaAmy Elsner QUALIFIED
Costa Z FigeroaUnited KingdomXuxue Feng RENEWAL
Izzy A WhobreyJapanAsiya Javayant NEGOTIATION
Antonio V ChuiFranceXuxue Feng QUALIFIED
Jefferson S FollerAustraliaAnna Fali QUALIFIED
Greenwood I PoquetteSpainAsiya Javayant PROPOSAL
Faith O OldroydCanadaIvan Magalhaes RENEWAL
Octavia E SchemmerBrazilIoni Bowcher NEW
Izzy J RoysterGermanyElwin Sharvill NEW
Nicolas U AlbaresFranceAsiya Javayant QUALIFIED
Chavez N CaudyBrazilStephen Shaw NEGOTIATION
Isabel T KolmetzJapanXuxue Feng RENEWAL
Leja N InouyeAustraliaStephen Shaw NEW
Jennifer E MacleadCanadaAmy Elsner PROPOSAL
Leja E KuskoRussiaIvan Magalhaes NEGOTIATION
Sinclair D TollnerItalyAsiya Javayant RENEWAL
Maisha B MacleadSpainAsiya Javayant NEGOTIATION
Arvin X MaletItalyIvan Magalhaes PROPOSAL
Francesco Q WaycottGermanyIvan Magalhaes QUALIFIED
Chavez X ChuiUnited KingdomIvan Magalhaes RENEWAL
Mayumi S FigeroaAustraliaOnyama Limba PROPOSAL
David K KuskoFranceStephen Shaw UNQUALIFIED
Jones E StockhamAustraliaAnna Fali NEGOTIATION
Alejandro O InouyeUnited KingdomOnyama Limba RENEWAL
Leon L MaletAustraliaAnna Fali QUALIFIED
Jefferson U PoquetteArgentinaXuxue Feng NEGOTIATION
Julie V CaldareraFranceAmy Elsner RENEWAL
Octavia Q CaudySpainAsiya Javayant NEW
Ashley R SchemmerIndiaBernardo Dominic NEW
Jeanfrancois P FollerArgentinaBernardo Dominic PROPOSAL
Leon B AmigonUnited KingdomXuxue Feng NEW
Rodrigues E GlickCanadaAnna Fali QUALIFIED
Leja M VenereJapanIvan Magalhaes NEGOTIATION
Nicolas B PaprockiJapanOnyama Limba UNQUALIFIED
Munro T RulapaughGermanyAsiya Javayant UNQUALIFIED
Nicolas X VocelkaCanadaElwin Sharvill NEW
Sinclair Y MarrierIndiaAnna Fali NEGOTIATION
Arvin T BriddickCanadaBernardo Dominic NEW
Horizontal
NameCountryRepresentativeStatus
Adams I FerenczIndiaIvan Magalhaes UNQUALIFIED
Claire F VenereItalyStephen Shaw NEGOTIATION
Alejandro A ChuiFranceXuxue Feng PROPOSAL
Maria H KuskoBrazilOnyama Limba NEGOTIATION
Ricardo Q MorascaCanadaElwin Sharvill NEGOTIATION
Faith B PaprockiUnited KingdomOnyama Limba NEGOTIATION
Jeanfrancois R NickaRussiaAsiya Javayant QUALIFIED
Kaitlin V FigeroaSpainElwin Sharvill PROPOSAL
Salvatore B PerinJapanAnna Fali QUALIFIED
Emily T FlosiArgentinaBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba W SchemmerSpain2024-05-13Dorl, James J Esq UNQUALIFIED21Asiya Javayant
1001Antonio F BowleyAustralia2024-05-11Commercial Press QUALIFIED71Asiya Javayant
1002Aditya C PaprockiBrazil2024-05-09Truhlar And Truhlar Attys QUALIFIED88Ioni Bowcher
1003James M InouyeFrance2024-05-22Chapman, Ross E Esq QUALIFIED52Xuxue Feng
1004Jeanfrancois C FlosiAustralia2024-05-21Feltz Printing Service NEW60Amy Elsner
1005Chavez F SchemmerRussia2024-05-19Feltz Printing Service UNQUALIFIED72Ivan Magalhaes
1006Greenwood G WieserCanada2024-05-24Chemel, James L Cpa RENEWAL16Bernardo Dominic
1007Juan I KolmetzCanada2024-05-08Chanay, Jeffrey A Esq NEGOTIATION97Anna Fali
1008Leon H SaylorsBrazil2024-05-16Morlong Associates RENEWAL91Bernardo Dominic
1009Francesco J RoysterCanada2024-05-21Buckley Miller Wright QUALIFIED49Bernardo Dominic
1010Cody W MorascaGermany2024-05-01Buckley Miller Wright QUALIFIED57Stephen Shaw
1011Aruna C WieserItaly2024-05-17Printing Dimensions NEGOTIATION63Onyama Limba
1012Smith I WaycottUnited Kingdom2024-05-07King, Christopher A Esq QUALIFIED20Asiya Javayant
1013Greenwood K InouyeFrance2024-05-10Rangoni Of Florence PROPOSAL13Xuxue Feng
1014Kadeem S CaldareraItaly2024-05-03Benton, John B Jr RENEWAL15Xuxue Feng
1015Jeanfrancois D MarrierUnited Kingdom2024-05-17Rousseaux, Michael Esq UNQUALIFIED25Stephen Shaw
1016Antonio H SchemmerUnited Kingdom2024-05-27Morlong Associates PROPOSAL17Onyama Limba
1017Aditya U StensethJapan2024-05-14Feiner Bros PROPOSAL43Onyama Limba
1018Leon V PaprockiSpain2024-05-24Chanay, Jeffrey A Esq PROPOSAL93Ioni Bowcher
1019Smith I AlbaresFrance2024-05-18Dorl, James J Esq NEGOTIATION44Anna Fali
1020Julie F AmigonAustralia2024-05-23Chapman, Ross E Esq NEW84Ivan Magalhaes
1021James Q PerinArgentina2024-05-02Benton, John B Jr NEW83Onyama Limba
1022Kaitlin J MorascaFrance2024-05-11Chanay, Jeffrey A Esq NEW45Ivan Magalhaes
1023Kaitlin U CaudyJapan2024-05-27King, Christopher A Esq RENEWAL47Onyama Limba
1024Kadeem J StockhamCanada2024-04-29King, Christopher A Esq PROPOSAL65Asiya Javayant
1025Salvatore O AmigonIndia2024-05-24Chanay, Jeffrey A Esq PROPOSAL32Elwin Sharvill
1026Maria J BologniaJapan2024-05-16Benton, John B Jr NEW78Amy Elsner
1027Leon B RulapaughGermany2024-05-03Commercial Press UNQUALIFIED34Amy Elsner
1028Jefferson U CaldareraBrazil2024-05-15Morlong Associates NEW36Amy Elsner
1029Adams M SaylorsBrazil2024-05-05Chanay, Jeffrey A Esq NEGOTIATION12Amy Elsner
1030Maria O NickaUnited Kingdom2024-05-20Printing Dimensions RENEWAL51Onyama Limba
1031Ashley N NestleRussia2024-05-08Truhlar And Truhlar Attys NEGOTIATION68Anna Fali
1032Octavia H BowleyFrance2024-05-23Truhlar And Truhlar Attys NEGOTIATION8Onyama Limba
1033Cody A DilliardArgentina2024-05-10Dorl, James J Esq UNQUALIFIED5Amy Elsner
1034Antonio Q OstroskyUnited Kingdom2024-05-04Buckley Miller Wright NEGOTIATION29Stephen Shaw
1035Claire L VenereBrazil2024-05-04Chanay, Jeffrey A Esq PROPOSAL89Xuxue Feng
1036Misaki O AmigonArgentina2024-05-21Commercial Press NEW28Xuxue Feng
1037Cody Q GlickGermany2024-05-20Dorl, James J Esq QUALIFIED15Elwin Sharvill
1038Aruna L MarrierRussia2024-05-03Feiner Bros NEGOTIATION66Amy Elsner
1039Leja K MaletCanada2024-05-10Commercial Press NEW29Stephen Shaw
1040Arvin A InouyeRussia2024-05-01Truhlar And Truhlar Attys RENEWAL66Amy Elsner
1041Aditya I WhobreyJapan2024-05-18Printing Dimensions RENEWAL75Onyama Limba
1042Greenwood K MorascaAustralia2024-05-28Chanay, Jeffrey A Esq RENEWAL14Asiya Javayant
1043Mujtaba B NickaUnited Kingdom2024-05-03Printing Dimensions PROPOSAL88Asiya Javayant
1044Mayumi T BowleyAustralia2024-05-01Dorl, James J Esq UNQUALIFIED33Ioni Bowcher
1045Rodrigues V PerinUnited Kingdom2024-05-27Feiner Bros QUALIFIED68Xuxue Feng
1046Leon H DilliardUnited Kingdom2024-05-03Chapman, Ross E Esq UNQUALIFIED30Onyama Limba
1047Maisha F BriddickUnited Kingdom2024-04-30Rousseaux, Michael Esq NEW31Bernardo Dominic
1048Jones Y NickaAustralia2024-05-04Feiner Bros RENEWAL78Bernardo Dominic
1049Chavez P MaletUnited Kingdom2024-05-28King, Christopher A Esq NEGOTIATION63Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Aditya X FlosiUnited KingdomIvan Magalhaes NEGOTIATION
Smith A MarrierGermanyIvan Magalhaes QUALIFIED
Munro C SaylorsIndiaAsiya Javayant RENEWAL
David W MarrierUnited KingdomAmy Elsner UNQUALIFIED
Julie S KuskoIndiaElwin Sharvill NEGOTIATION
Jefferson T CaldareraFranceIoni Bowcher QUALIFIED
Wickens A OldroydRussiaAmy Elsner RENEWAL
Johnson R PerinCanadaOnyama Limba UNQUALIFIED
Munro V BriddickIndiaIoni Bowcher NEW
Ashley O ChuiIndiaElwin Sharvill RENEWAL
Munro R PaprockiItalyBernardo Dominic NEGOTIATION
Maria Q StockhamBrazilAsiya Javayant QUALIFIED
Aruna Y PaprockiAustraliaAnna Fali NEW
Tony T CaudyIndiaElwin Sharvill NEGOTIATION
Mujtaba I GarufiRussiaBernardo Dominic QUALIFIED
Kaitlin S DilliardGermanyOnyama Limba UNQUALIFIED
Wickens S CampainJapanAmy Elsner RENEWAL
David B IturbideGermanyElwin Sharvill PROPOSAL
Kadeem W SchemmerCanadaAmy Elsner NEGOTIATION
Kaitlin R PaprockiAustraliaElwin Sharvill UNQUALIFIED
Jeanfrancois Y SaylorsAustraliaOnyama Limba RENEWAL
Greenwood F SergiFranceElwin Sharvill RENEWAL
Alejandro U RutaRussiaElwin Sharvill PROPOSAL
Maisha X MacleadAustraliaIoni Bowcher PROPOSAL
Juan T ChuiArgentinaStephen Shaw NEGOTIATION
Jones C OldroydBrazilAmy Elsner NEW
Ashley G VenereAustraliaXuxue Feng UNQUALIFIED
Sinclair Y MaletRussiaOnyama Limba UNQUALIFIED
Octavia B VocelkaRussiaIvan Magalhaes NEGOTIATION
Maisha U RimBrazilIoni Bowcher QUALIFIED
Faith M ChuiJapanStephen Shaw QUALIFIED
Sinclair G GarufiIndiaXuxue Feng PROPOSAL
Julie J MaletJapanAsiya Javayant RENEWAL
Mayumi J WieserAustraliaStephen Shaw QUALIFIED
Misaki B RulapaughUnited KingdomElwin Sharvill PROPOSAL
Faith C FlosiGermanyStephen Shaw QUALIFIED
Jones F KolmetzAustraliaAsiya Javayant PROPOSAL
Morrow U TollnerSpainIoni Bowcher UNQUALIFIED
Smith V MaletCanadaXuxue Feng NEGOTIATION
Juan D TollnerJapanAnna Fali NEW
Nicolas S MarrierArgentinaBernardo Dominic NEGOTIATION
Izzy B GauchoAustraliaOnyama Limba RENEWAL
Clifford K NestleGermanyElwin Sharvill PROPOSAL
Maria Z TollnerGermanyXuxue Feng PROPOSAL
Darci E SlusarskiBrazilBernardo Dominic PROPOSAL
Ashley F GarufiItalyElwin Sharvill RENEWAL
Rodrigues E ButtUnited KingdomIoni Bowcher NEW
Costa N RutaAustraliaOnyama Limba RENEWAL
Chavez U WaycottArgentinaAmy Elsner NEGOTIATION
Misaki N ChuiArgentinaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Leja R Maclead
Ivar X Caudy
Octavia N Gaucho
Kaitlin N Foller
Antonio L Waycott
James S Campain
Jefferson X Caldarera
Mujtaba R Stenseth
Aditya W Briddick
Murillo G Caudy
Rodrigues V Amigon
Chavez V Nicka
Francesco F Bolognia
Izzy T Bolognia
Antonio J Amigon
Nicolas N Ruta
Leja I Garufi
Kaitlin T Kolmetz
Izzy N Briddick
David P Iturbide
Jeanfrancois D Malet
Arvin K Malet
Kaitlin W Slusarski
Silvio Q Iturbide
Faith B Caldarera
Claire H Perin
Johnson R Stenseth
Deepesh O Royster
Stacey K Garufi
Maria D Nestle
Chavez R Paprocki
Deepesh D Whobrey
Claire U Butt
Smith V Rim
Wickens S Bolognia
Izzy Q Stockham
Tony F Saylors
Juan F Venere
Smith J Poquette
Murillo Q Caldarera
Deepesh L Chui
Jefferson X Ostrosky
Mayumi M Glick
Sinclair T Schemmer
Rodrigues Z Gillian
Smith S Malet
Wickens W Rulapaugh
Tony Q Bolognia
Claire J Vocelka
Octavia K Butt
IdCountryDate
1000United Kingdom2024-05-22
1001Brazil2024-05-10
1002Canada2024-05-15
1003Russia2024-05-05
1004Australia2024-05-04
1005Germany2024-05-26
1006Brazil2024-05-23
1007United Kingdom2024-05-18
1008India2024-05-13
1009Italy2024-05-20
1010Russia2024-04-29
1011Russia2024-04-29
1012Australia2024-05-18
1013Australia2024-05-14
1014Italy2024-05-01
1015Canada2024-05-22
1016Spain2024-05-02
1017United Kingdom2024-05-01
1018India2024-05-12
1019Australia2024-05-16
1020Australia2024-05-19
1021Spain2024-05-12
1022Canada2024-05-24
1023Germany2024-05-14
1024Italy2024-05-02
1025Japan2024-05-16
1026Italy2024-05-18
1027Argentina2024-05-14
1028Argentina2024-05-23
1029Brazil2024-05-13
1030Italy2024-05-17
1031Germany2024-05-10
1032United Kingdom2024-05-26
1033Italy2024-05-19
1034Brazil2024-04-29
1035Canada2024-05-27
1036United Kingdom2024-05-19
1037Australia2024-05-14
1038Spain2024-05-06
1039Spain2024-05-23
1040United Kingdom2024-05-26
1041France2024-05-06
1042Japan2024-04-30
1043Germany2024-05-06
1044Canada2024-05-02
1045Australia2024-05-22
1046Brazil2024-05-18
1047Japan2024-04-30
1048India2024-05-24
1049Spain2024-05-14

On-Demand Data

NameIdCountryDate
Isabel M Kusko1000Germany2024-05-12
Cody A Wieser1001Canada2024-05-01
Maria D Amigon1002Spain2024-05-28
James I Ferencz1003Brazil2024-05-05
Salvatore A Ruta1004Russia2024-05-19
Rodrigues E Saylors1005United Kingdom2024-05-01
Adams V Schemmer1006Italy2024-04-29
Alejandro R Bolognia1007United Kingdom2024-05-21
Johnson M Waycott1008Spain2024-05-13
Alejandro Z Wieser1009United Kingdom2024-05-24
Faith P Kolmetz1010Spain2024-05-26
Aditya B Briddick1011Russia2024-05-20
Arvin A Paprocki1012Canada2024-05-28
Aika L Shinko1013Japan2024-05-22
Tony T Nestle1014Brazil2024-05-15
Leja F Saylors1015France2024-05-26
Francesco M Garufi1016United Kingdom2024-05-06
Leja R Flosi1017Germany2024-05-25
Adams O Campain1018India2024-05-23
Francesco H Ruta1019Canada2024-04-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore W OstroskyUnited KingdomIoni Bowcher RENEWAL
Nicolas Q IturbideBrazilAmy Elsner NEGOTIATION
Mujtaba N BriddickArgentinaStephen Shaw PROPOSAL
Stacey C GarufiFranceXuxue Feng UNQUALIFIED
Ricardo D CaudyGermanyStephen Shaw UNQUALIFIED
Maria M VenereFranceOnyama Limba NEGOTIATION
Darci X CaudyFranceAnna Fali PROPOSAL
Munro K IturbideItalyIoni Bowcher PROPOSAL
Ashley Y WaycottRussiaAmy Elsner NEW
Francesco S KolmetzFranceStephen Shaw NEGOTIATION
Jefferson N VenereJapanElwin Sharvill QUALIFIED
Juan K PoquetteGermanyBernardo Dominic QUALIFIED
Claire V VenereSpainBernardo Dominic UNQUALIFIED
Adams Z CampainCanadaXuxue Feng NEW
Aika B PerinAustraliaStephen Shaw RENEWAL
Leja X RutaUnited KingdomXuxue Feng QUALIFIED
Wickens G StensethRussiaAsiya Javayant QUALIFIED
Chavez C RutaGermanyXuxue Feng RENEWAL
Smith V RutaAustraliaIvan Magalhaes PROPOSAL
Maria R FigeroaUnited KingdomIvan Magalhaes PROPOSAL
Aruna J FlosiItalyOnyama Limba RENEWAL
Mujtaba Q MacleadSpainBernardo Dominic RENEWAL
Antonio F BriddickCanadaElwin Sharvill UNQUALIFIED
Jennifer C MarrierFranceElwin Sharvill UNQUALIFIED
Alejandro Z BologniaItalyAmy Elsner UNQUALIFIED
Aruna M VenereItalyElwin Sharvill NEGOTIATION
Wickens F CaudyUnited KingdomStephen Shaw UNQUALIFIED
Munro S PoquetteAustraliaAnna Fali PROPOSAL
Cody J OstroskySpainAsiya Javayant NEGOTIATION
Clifford P SlusarskiRussiaElwin Sharvill RENEWAL
Adams R RimItalyStephen Shaw RENEWAL
Chavez S FlosiIndiaXuxue Feng UNQUALIFIED
Smith M FerenczGermanyIvan Magalhaes PROPOSAL
Juan K CaldareraFranceIoni Bowcher UNQUALIFIED
Jefferson D OstroskyBrazilXuxue Feng NEW
Wickens D PoquetteArgentinaStephen Shaw RENEWAL
Stacey D GauchoAustraliaIvan Magalhaes RENEWAL
Izzy X KuskoCanadaXuxue Feng QUALIFIED
Aruna H RulapaughArgentinaBernardo Dominic RENEWAL
Maisha W ChuiAustraliaXuxue Feng 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>