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
Chavez H RimIndiaElwin Sharvill QUALIFIED
Maisha L ChuiGermanyAsiya Javayant NEGOTIATION
Chavez P ChuiCanadaAnna Fali UNQUALIFIED
Sinclair Z DarakjyGermanyAsiya Javayant PROPOSAL
Maria J BowleyArgentinaAnna Fali QUALIFIED
Kadeem Z SergiIndiaAmy Elsner PROPOSAL
Tony A NestleAustraliaXuxue Feng UNQUALIFIED
Julie E MorascaCanadaIoni Bowcher PROPOSAL
James Q NickaBrazilElwin Sharvill RENEWAL
Clifford B RulapaughCanadaStephen Shaw RENEWAL
Izzy I KuskoGermanyAsiya Javayant NEW
Sinclair Q RimCanadaAmy Elsner PROPOSAL
Wickens P MacleadItalyAsiya Javayant RENEWAL
James Q SchemmerRussiaOnyama Limba NEW
Ricardo W DoeUnited KingdomXuxue Feng PROPOSAL
Deepesh A ChuiIndiaBernardo Dominic NEW
Munro K StensethRussiaOnyama Limba PROPOSAL
Leja R SlusarskiRussiaOnyama Limba RENEWAL
Arvin X WaycottAustraliaIoni Bowcher UNQUALIFIED
Jefferson R OstroskyJapanElwin Sharvill UNQUALIFIED
Johnson N MaletItalyIvan Magalhaes NEW
Smith F StensethUnited KingdomIoni Bowcher QUALIFIED
Kaitlin T VocelkaArgentinaIoni Bowcher UNQUALIFIED
Ricardo P SchemmerBrazilBernardo Dominic NEGOTIATION
David B ChuiCanadaElwin Sharvill NEW
Juan R WieserRussiaIoni Bowcher QUALIFIED
Sinclair H DarakjyArgentinaElwin Sharvill RENEWAL
Jones P IturbideJapanAsiya Javayant UNQUALIFIED
Aika X MaletGermanyAsiya Javayant UNQUALIFIED
Johnson J CaldareraJapanStephen Shaw QUALIFIED
Maria H ChuiBrazilIoni Bowcher PROPOSAL
Ashley R GillianArgentinaElwin Sharvill NEGOTIATION
Sinclair S FlosiFranceAnna Fali NEW
Emily K MacleadArgentinaAnna Fali RENEWAL
Wickens K InouyeAustraliaXuxue Feng RENEWAL
David W FollerSpainOnyama Limba QUALIFIED
Julie L SlusarskiBrazilIvan Magalhaes QUALIFIED
Francesco F PoquetteSpainXuxue Feng QUALIFIED
Darci L GauchoIndiaStephen Shaw RENEWAL
Maria J FollerGermanyIvan Magalhaes RENEWAL
Rodrigues T DilliardBrazilOnyama Limba RENEWAL
Costa W WhobreyIndiaIoni Bowcher NEW
Tony Z GauchoUnited KingdomElwin Sharvill UNQUALIFIED
Johnson E BriddickItalyIvan Magalhaes UNQUALIFIED
David J CaldareraCanadaIoni Bowcher QUALIFIED
Jones X RutaUnited KingdomXuxue Feng QUALIFIED
Nicolas S ChuiBrazilStephen Shaw NEGOTIATION
Claire R GillianGermanyStephen Shaw PROPOSAL
Wickens E BowleyArgentinaAmy Elsner QUALIFIED
Smith K GauchoItalyAsiya Javayant UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco I AmigonUnited KingdomOnyama Limba NEW
Deepesh R GlickJapanElwin Sharvill NEGOTIATION
Ashley P MorascaGermanyIoni Bowcher NEGOTIATION
Ivar D DarakjyArgentinaAnna Fali RENEWAL
James V CaldareraSpainOnyama Limba PROPOSAL
Jennifer X BologniaItalyXuxue Feng QUALIFIED
Emily F PaprockiFranceAmy Elsner QUALIFIED
Jones Q ChuiUnited KingdomElwin Sharvill RENEWAL
Mujtaba D ButtBrazilXuxue Feng UNQUALIFIED
Chavez J BriddickJapanAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony U KuskoIndia2024-06-02Morlong Associates NEW57Bernardo Dominic
1001Murillo K CampainFrance2024-06-18Dorl, James J Esq PROPOSAL13Amy Elsner
1002Johnson E DarakjyBrazil2024-06-06Commercial Press RENEWAL14Elwin Sharvill
1003Salvatore I DoeAustralia2024-06-09Feltz Printing Service UNQUALIFIED63Ioni Bowcher
1004Aditya D SaylorsUnited Kingdom2024-06-17Rousseaux, Michael Esq NEGOTIATION96Elwin Sharvill
1005Jennifer O WhobreyItaly2024-06-15Dorl, James J Esq RENEWAL84Ivan Magalhaes
1006Julie F MaletAustralia2024-06-08Feltz Printing Service QUALIFIED45Anna Fali
1007Emily A NestleSpain2024-06-16King, Christopher A Esq RENEWAL71Asiya Javayant
1008Juan F DilliardFrance2024-05-25Chapman, Ross E Esq UNQUALIFIED2Ivan Magalhaes
1009Juan R CaldareraFrance2024-06-15Rangoni Of Florence RENEWAL89Stephen Shaw
1010Murillo T GlickJapan2024-05-30Chanay, Jeffrey A Esq UNQUALIFIED94Elwin Sharvill
1011Nicolas W WhobreyUnited Kingdom2024-06-22Benton, John B Jr QUALIFIED71Asiya Javayant
1012Antonio B RulapaughJapan2024-06-07Chemel, James L Cpa PROPOSAL44Amy Elsner
1013Aditya J SchemmerGermany2024-05-30Morlong Associates RENEWAL47Anna Fali
1014Leja H GauchoJapan2024-06-18Benton, John B Jr QUALIFIED72Amy Elsner
1015Octavia L FlosiItaly2024-06-11Printing Dimensions RENEWAL53Stephen Shaw
1016Mujtaba V GillianFrance2024-05-30Chemel, James L Cpa UNQUALIFIED37Ivan Magalhaes
1017Stacey Z ShinkoArgentina2024-06-21King, Christopher A Esq UNQUALIFIED10Ivan Magalhaes
1018Deepesh L WaycottAustralia2024-06-09Feiner Bros QUALIFIED28Ivan Magalhaes
1019Jeanfrancois D GlickCanada2024-06-01Dorl, James J Esq UNQUALIFIED83Bernardo Dominic
1020Claire V WaycottAustralia2024-06-05Feiner Bros UNQUALIFIED12Stephen Shaw
1021Faith M BriddickFrance2024-05-25Rousseaux, Michael Esq RENEWAL89Onyama Limba
1022Smith L SchemmerArgentina2024-05-31Rousseaux, Michael Esq PROPOSAL8Onyama Limba
1023Costa M InouyeUnited Kingdom2024-06-12Dorl, James J Esq QUALIFIED48Ivan Magalhaes
1024Maria M MorascaSpain2024-05-24Buckley Miller Wright NEGOTIATION38Ivan Magalhaes
1025Aika S StockhamIndia2024-05-28Buckley Miller Wright UNQUALIFIED33Ioni Bowcher
1026Alejandro G FlosiRussia2024-05-27Dorl, James J Esq PROPOSAL35Bernardo Dominic
1027Rodrigues K BologniaGermany2024-05-24Feiner Bros PROPOSAL35Xuxue Feng
1028Greenwood R PerinAustralia2024-06-11Rousseaux, Michael Esq NEW93Elwin Sharvill
1029Rodrigues Z KuskoUnited Kingdom2024-05-31Dorl, James J Esq NEW25Ivan Magalhaes
1030Greenwood J FerenczFrance2024-05-28Chanay, Jeffrey A Esq RENEWAL9Ioni Bowcher
1031Smith E AmigonArgentina2024-06-08King, Christopher A Esq QUALIFIED94Elwin Sharvill
1032Emily V CaldareraAustralia2024-06-07Rangoni Of Florence NEW49Onyama Limba
1033Rodrigues J FlosiIndia2024-05-25King, Christopher A Esq NEGOTIATION11Anna Fali
1034Adams V DarakjyCanada2024-06-22Printing Dimensions NEW97Ioni Bowcher
1035James I PoquetteSpain2024-05-24Dorl, James J Esq PROPOSAL3Ivan Magalhaes
1036Faith L GauchoGermany2024-06-11Chanay, Jeffrey A Esq QUALIFIED8Asiya Javayant
1037Murillo Q ChuiArgentina2024-05-29Buckley Miller Wright NEGOTIATION98Ioni Bowcher
1038Mujtaba I AmigonArgentina2024-06-18Rousseaux, Michael Esq QUALIFIED83Amy Elsner
1039Isabel T SlusarskiIndia2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED68Ioni Bowcher
1040Emily P WieserItaly2024-06-13Chanay, Jeffrey A Esq PROPOSAL24Stephen Shaw
1041Jones K SergiAustralia2024-06-08Rousseaux, Michael Esq PROPOSAL57Asiya Javayant
1042David S MorascaCanada2024-06-11King, Christopher A Esq NEGOTIATION29Anna Fali
1043Julie R PoquetteCanada2024-06-03Rangoni Of Florence RENEWAL60Xuxue Feng
1044Misaki Y BriddickSpain2024-05-26Benton, John B Jr RENEWAL13Ioni Bowcher
1045Ivar O NestleSpain2024-05-30Chanay, Jeffrey A Esq NEGOTIATION69Bernardo Dominic
1046Nicolas J WhobreyCanada2024-05-30Rousseaux, Michael Esq NEGOTIATION74Stephen Shaw
1047Izzy N RulapaughArgentina2024-05-30Morlong Associates QUALIFIED55Asiya Javayant
1048Jefferson K TollnerSpain2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED70Elwin Sharvill
1049Faith G SlusarskiBrazil2024-06-04Dorl, James J Esq PROPOSAL13Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Greenwood B AmigonSpainStephen Shaw RENEWAL
Chavez I OldroydUnited KingdomIvan Magalhaes NEGOTIATION
Munro Z DarakjyCanadaBernardo Dominic NEGOTIATION
Jefferson P SergiUnited KingdomStephen Shaw PROPOSAL
Costa R DarakjyFranceBernardo Dominic RENEWAL
Aruna I PoquetteArgentinaAmy Elsner NEW
Kaitlin R FigeroaItalyAsiya Javayant UNQUALIFIED
Jones V ChuiSpainIoni Bowcher QUALIFIED
Francesco E MorascaJapanOnyama Limba PROPOSAL
Sinclair O RutaGermanyAnna Fali PROPOSAL
Rodrigues C SlusarskiBrazilIvan Magalhaes NEGOTIATION
Jeanfrancois O NickaAustraliaIoni Bowcher NEW
Misaki T FlosiFranceElwin Sharvill PROPOSAL
Maria Z InouyeSpainIoni Bowcher UNQUALIFIED
Aditya D MacleadUnited KingdomBernardo Dominic UNQUALIFIED
Ricardo I RutaFranceAmy Elsner PROPOSAL
Greenwood S FollerUnited KingdomAsiya Javayant NEGOTIATION
Jeanfrancois A DoeGermanyAsiya Javayant PROPOSAL
Chavez P AlbaresArgentinaXuxue Feng QUALIFIED
Chavez Y KuskoAustraliaElwin Sharvill NEGOTIATION
Morrow A MaletJapanIvan Magalhaes NEW
Claire D RimBrazilElwin Sharvill NEGOTIATION
Tony W NickaGermanyXuxue Feng NEGOTIATION
Isabel F CaudyBrazilElwin Sharvill NEGOTIATION
Aruna A MarrierCanadaIoni Bowcher UNQUALIFIED
Greenwood M ButtRussiaXuxue Feng QUALIFIED
Tony Z MaletUnited KingdomOnyama Limba QUALIFIED
Jeanfrancois Q BologniaArgentinaAnna Fali UNQUALIFIED
Silvio O MacleadIndiaBernardo Dominic RENEWAL
Costa I StockhamRussiaOnyama Limba PROPOSAL
Claire V DarakjyRussiaAnna Fali UNQUALIFIED
Silvio P SergiFranceXuxue Feng NEW
Julie Y SlusarskiSpainAnna Fali UNQUALIFIED
Aditya J ShinkoGermanyAmy Elsner QUALIFIED
Claire D BriddickUnited KingdomBernardo Dominic UNQUALIFIED
Aika O GlickRussiaAnna Fali QUALIFIED
Leja U VocelkaRussiaStephen Shaw PROPOSAL
Clifford I BowleyIndiaOnyama Limba NEW
Munro S FigeroaArgentinaBernardo Dominic NEGOTIATION
Misaki M PerinArgentinaAnna Fali UNQUALIFIED
Stacey E WhobreyJapanAmy Elsner UNQUALIFIED
Adams R CaudyGermanyIoni Bowcher QUALIFIED
Greenwood V BowleyFranceBernardo Dominic UNQUALIFIED
Smith Y SlusarskiCanadaElwin Sharvill UNQUALIFIED
Salvatore Z VocelkaSpainIoni Bowcher PROPOSAL
Johnson Y TollnerCanadaBernardo Dominic RENEWAL
Jones Y RimArgentinaStephen Shaw QUALIFIED
Munro E PoquetteSpainAsiya Javayant RENEWAL
Misaki O NestleCanadaStephen Shaw PROPOSAL
Murillo P SlusarskiFranceElwin Sharvill NEW
Frozen Columns
Name
Smith Q Morasca
Claire W Doe
Ashley C Marrier
Greenwood M Inouye
Stacey E Bowley
Mujtaba I Sergi
Silvio X Briddick
Juan E Chui
Izzy N Garufi
Cody Z Schemmer
Wickens R Ostrosky
Ivar C Gaucho
Greenwood X Bowley
Wickens B Bolognia
Misaki P Rulapaugh
Leja P Ostrosky
Jones G Amigon
Nicolas L Paprocki
Leja J Maclead
Stacey Z Morasca
Izzy J Malet
Greenwood H Slusarski
Smith O Foller
Jefferson L Stenseth
Silvio S Ferencz
Clifford W Ostrosky
Stacey I Ruta
Kadeem K Royster
Aika R Caudy
Ivar O Chui
Aika L Tollner
Tony Y Perin
Murillo T Campain
James Z Caldarera
Maria A Bolognia
Munro X Paprocki
James I Ruta
Clifford C Waycott
Deepesh Y Kusko
Chavez J Briddick
Clifford J Malet
Kaitlin K Vocelka
James K Gaucho
Wickens B Rulapaugh
Aruna R Iturbide
Johnson M Nestle
Smith I Albares
James X Tollner
James W Chui
Francesco I Amigon
IdCountryDate
1000Canada2024-06-02
1001Italy2024-06-01
1002Germany2024-06-11
1003Russia2024-06-09
1004United Kingdom2024-06-10
1005Australia2024-06-16
1006Spain2024-06-16
1007Spain2024-06-08
1008United Kingdom2024-06-10
1009Brazil2024-06-03
1010United Kingdom2024-06-18
1011Russia2024-06-11
1012Germany2024-06-13
1013Germany2024-06-12
1014Spain2024-06-11
1015India2024-06-22
1016Brazil2024-06-22
1017Russia2024-06-15
1018Russia2024-06-03
1019Australia2024-05-31
1020Spain2024-05-29
1021Canada2024-06-10
1022Argentina2024-05-25
1023Spain2024-06-16
1024Argentina2024-06-04
1025Japan2024-06-11
1026Germany2024-06-14
1027Italy2024-06-20
1028Japan2024-05-26
1029Japan2024-06-05
1030Brazil2024-05-27
1031United Kingdom2024-06-13
1032Germany2024-05-25
1033Spain2024-06-13
1034Australia2024-06-22
1035Brazil2024-06-22
1036Canada2024-06-20
1037Japan2024-05-24
1038France2024-05-30
1039Russia2024-05-29
1040Canada2024-06-20
1041France2024-06-12
1042India2024-06-12
1043India2024-06-07
1044Australia2024-06-11
1045Argentina2024-05-31
1046Brazil2024-06-06
1047Australia2024-06-05
1048Canada2024-05-25
1049India2024-06-19

On-Demand Data

NameIdCountryDate
Kaitlin H Perin1000Argentina2024-06-15
Deepesh Y Perin1001Australia2024-06-14
Darci X Flosi1002Germany2024-06-06
Aika E Iturbide1003Italy2024-06-19
Smith F Garufi1004Spain2024-05-30
Darci H Paprocki1005Australia2024-05-29
Chavez Y Briddick1006United Kingdom2024-05-27
Isabel O Gaucho1007Spain2024-06-01
Cody N Oldroyd1008Germany2024-06-02
Octavia U Stenseth1009Argentina2024-06-03
Morrow R Amigon1010United Kingdom2024-06-02
Alejandro J Bowley1011Australia2024-06-01
Claire D Oldroyd1012Japan2024-06-01
Tony X Glick1013France2024-06-16
Jefferson E Stenseth1014Canada2024-06-03
Darci H Whobrey1015India2024-06-19
Darci O Albares1016France2024-06-11
Ivar N Glick1017United Kingdom2024-05-28
Stacey Q Paprocki1018Australia2024-06-13
Jennifer G Caldarera1019Canada2024-06-11
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Morrow X PoquetteFranceXuxue Feng RENEWAL
Chavez U MacleadBrazilStephen Shaw NEW
Aruna E KolmetzJapanAnna Fali UNQUALIFIED
Jones B ShinkoArgentinaAsiya Javayant UNQUALIFIED
Tony G CampainSpainOnyama Limba QUALIFIED
Leon B VocelkaSpainOnyama Limba NEW
James E SergiRussiaStephen Shaw UNQUALIFIED
Clifford S MaletUnited KingdomAsiya Javayant QUALIFIED
Alejandro S MarrierRussiaIvan Magalhaes UNQUALIFIED
Claire A BowleyBrazilIvan Magalhaes NEW
Kadeem C FerenczUnited KingdomIvan Magalhaes PROPOSAL
Aruna T VocelkaCanadaOnyama Limba PROPOSAL
Kaitlin J PerinSpainAnna Fali RENEWAL
Greenwood S StensethRussiaXuxue Feng UNQUALIFIED
Francesco H SergiFranceIoni Bowcher PROPOSAL
Maisha T KolmetzCanadaAsiya Javayant PROPOSAL
Leon B IturbideJapanXuxue Feng PROPOSAL
Leja H SlusarskiRussiaXuxue Feng UNQUALIFIED
Mayumi F VenereRussiaAmy Elsner QUALIFIED
Leja S CampainSpainXuxue Feng PROPOSAL
Sinclair T BowleyFranceAsiya Javayant RENEWAL
Arvin R MacleadAustraliaIvan Magalhaes UNQUALIFIED
Nicolas Q ChuiFranceElwin Sharvill PROPOSAL
Chavez G SchemmerSpainAmy Elsner UNQUALIFIED
Maisha W VocelkaFranceAnna Fali PROPOSAL
Mayumi Q MacleadSpainStephen Shaw NEW
Wickens M GarufiAustraliaOnyama Limba QUALIFIED
Arvin M InouyeIndiaBernardo Dominic NEW
Kaitlin B IturbideArgentinaAmy Elsner NEW
Cody L ShinkoIndiaIoni Bowcher RENEWAL
Misaki G PoquetteArgentinaAnna Fali NEGOTIATION
Cody E FlosiUnited KingdomBernardo Dominic PROPOSAL
Isabel F StensethAustraliaAsiya Javayant PROPOSAL
Greenwood V KuskoJapanOnyama Limba PROPOSAL
Maria H KuskoUnited KingdomIoni Bowcher RENEWAL
Kaitlin J FerenczGermanyBernardo Dominic RENEWAL
Mujtaba J StockhamJapanStephen Shaw NEGOTIATION
Jones X InouyeItalyAmy Elsner UNQUALIFIED
Ricardo D BriddickSpainBernardo Dominic RENEWAL
Greenwood C VocelkaGermanyIvan Magalhaes NEGOTIATION

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