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
Octavia F GauchoArgentinaAsiya Javayant QUALIFIED
Misaki H SchemmerIndiaAmy Elsner PROPOSAL
Ashley N GlickGermanyElwin Sharvill UNQUALIFIED
Leon J PerinFranceOnyama Limba RENEWAL
Murillo T FlosiSpainElwin Sharvill NEW
Adams L StensethGermanyIoni Bowcher RENEWAL
Misaki E InouyeFranceStephen Shaw PROPOSAL
Tony W AlbaresFranceIoni Bowcher QUALIFIED
Wickens S PerinAustraliaIoni Bowcher RENEWAL
Munro F OldroydFranceXuxue Feng PROPOSAL
Octavia H ShinkoBrazilStephen Shaw QUALIFIED
Ivar O MacleadGermanyIoni Bowcher NEW
Wickens A MarrierIndiaElwin Sharvill RENEWAL
Munro X InouyeCanadaAsiya Javayant NEW
Mujtaba P GarufiArgentinaIoni Bowcher QUALIFIED
Misaki J AmigonFranceAmy Elsner RENEWAL
Ashley P DarakjyUnited KingdomOnyama Limba UNQUALIFIED
Octavia I DilliardArgentinaAsiya Javayant RENEWAL
Ricardo R FigeroaRussiaIoni Bowcher NEGOTIATION
Emily M KuskoItalyIvan Magalhaes UNQUALIFIED
Salvatore Z TollnerItalyAsiya Javayant RENEWAL
Salvatore Z ButtSpainBernardo Dominic PROPOSAL
Kaitlin Y FollerSpainAnna Fali RENEWAL
Jennifer V MaletArgentinaAmy Elsner PROPOSAL
Izzy L MorascaUnited KingdomStephen Shaw PROPOSAL
Ricardo Z FigeroaGermanyXuxue Feng RENEWAL
Mujtaba E OldroydJapanStephen Shaw NEW
Wickens W IturbideAustraliaIvan Magalhaes PROPOSAL
Ivar W CaudySpainIvan Magalhaes PROPOSAL
David J IturbideJapanBernardo Dominic RENEWAL
Smith Y MorascaJapanIoni Bowcher PROPOSAL
Smith Q GlickGermanyAsiya Javayant NEGOTIATION
Ashley B DilliardGermanyAsiya Javayant PROPOSAL
Octavia H RulapaughItalyXuxue Feng NEW
Ashley F OldroydRussiaStephen Shaw QUALIFIED
Morrow V GarufiCanadaElwin Sharvill RENEWAL
Ricardo V KuskoAustraliaOnyama Limba NEW
Claire C FerenczRussiaIoni Bowcher NEW
Ivar A RutaItalyAnna Fali RENEWAL
Aika L SergiCanadaAsiya Javayant NEGOTIATION
Izzy R RimArgentinaOnyama Limba QUALIFIED
Deepesh A RutaJapanBernardo Dominic QUALIFIED
Smith Z BriddickBrazilElwin Sharvill QUALIFIED
Octavia J AlbaresJapanXuxue Feng PROPOSAL
Misaki Q RimBrazilIoni Bowcher NEGOTIATION
Ivar W RimUnited KingdomAsiya Javayant QUALIFIED
Isabel V KuskoItalyBernardo Dominic RENEWAL
Nicolas J PoquetteUnited KingdomIvan Magalhaes PROPOSAL
Leja I RoysterArgentinaIoni Bowcher NEGOTIATION
Morrow S FlosiSpainAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Clifford S StensethBrazilIvan Magalhaes NEW
Leja L DilliardIndiaAsiya Javayant UNQUALIFIED
Julie U AmigonAustraliaStephen Shaw NEGOTIATION
Ivar Y WaycottGermanyXuxue Feng NEGOTIATION
Mayumi J MaletSpainIoni Bowcher QUALIFIED
Isabel Y DarakjyCanadaXuxue Feng NEGOTIATION
Julie D WhobreyBrazilStephen Shaw NEW
Octavia Y MaletIndiaIvan Magalhaes NEW
Rodrigues G AlbaresBrazilStephen Shaw UNQUALIFIED
Juan T AmigonUnited KingdomIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair A GillianJapan2024-06-08Morlong Associates UNQUALIFIED22Bernardo Dominic
1001Ivar D BowleyCanada2024-06-11Buckley Miller Wright PROPOSAL22Onyama Limba
1002Kadeem X SchemmerSpain2024-06-17Feiner Bros RENEWAL94Bernardo Dominic
1003Wickens A SchemmerGermany2024-06-11Rousseaux, Michael Esq QUALIFIED86Onyama Limba
1004Clifford L GillianItaly2024-05-29Dorl, James J Esq RENEWAL29Xuxue Feng
1005Costa X ShinkoJapan2024-06-09Rousseaux, Michael Esq PROPOSAL11Stephen Shaw
1006Sinclair G ButtRussia2024-06-07Buckley Miller Wright NEGOTIATION1Stephen Shaw
1007Ricardo D BowleyBrazil2024-05-25Buckley Miller Wright UNQUALIFIED39Ioni Bowcher
1008Antonio E CaldareraSpain2024-06-04King, Christopher A Esq PROPOSAL27Amy Elsner
1009Emily O VocelkaIndia2024-06-11Feltz Printing Service RENEWAL79Stephen Shaw
1010Leon O MarrierJapan2024-06-21Morlong Associates NEW26Asiya Javayant
1011Mayumi C SaylorsCanada2024-06-05King, Christopher A Esq PROPOSAL35Anna Fali
1012Clifford J FollerUnited Kingdom2024-06-07Chapman, Ross E Esq PROPOSAL29Amy Elsner
1013Octavia F StensethCanada2024-06-12Truhlar And Truhlar Attys RENEWAL17Elwin Sharvill
1014Aika S BologniaRussia2024-06-19Truhlar And Truhlar Attys PROPOSAL12Xuxue Feng
1015Ashley D WaycottUnited Kingdom2024-06-09Chanay, Jeffrey A Esq NEGOTIATION73Stephen Shaw
1016Kaitlin P PerinItaly2024-05-31Chanay, Jeffrey A Esq RENEWAL82Onyama Limba
1017Faith F FlosiRussia2024-06-07Dorl, James J Esq PROPOSAL7Ioni Bowcher
1018David C AmigonRussia2024-06-01Chemel, James L Cpa QUALIFIED15Elwin Sharvill
1019Misaki K FollerIndia2024-05-27Feiner Bros QUALIFIED90Elwin Sharvill
1020Silvio I OldroydRussia2024-06-18Truhlar And Truhlar Attys NEW50Onyama Limba
1021Mujtaba T TollnerGermany2024-06-14Chemel, James L Cpa QUALIFIED69Ivan Magalhaes
1022Kadeem W MorascaFrance2024-06-13Rangoni Of Florence RENEWAL51Stephen Shaw
1023Jennifer N PoquetteBrazil2024-06-22Printing Dimensions RENEWAL13Asiya Javayant
1024Ricardo Q IturbideSpain2024-06-07Chemel, James L Cpa PROPOSAL60Ivan Magalhaes
1025Alejandro B BologniaItaly2024-05-27Dorl, James J Esq UNQUALIFIED12Ivan Magalhaes
1026Kaitlin Z WhobreyBrazil2024-06-11Chemel, James L Cpa UNQUALIFIED72Xuxue Feng
1027Leja L PaprockiCanada2024-06-01Buckley Miller Wright UNQUALIFIED75Ivan Magalhaes
1028Deepesh L RulapaughItaly2024-06-09Dorl, James J Esq PROPOSAL5Onyama Limba
1029Mujtaba H NestleItaly2024-06-09Rangoni Of Florence RENEWAL53Elwin Sharvill
1030Leja F MorascaUnited Kingdom2024-05-26Chemel, James L Cpa NEGOTIATION75Bernardo Dominic
1031Faith P PerinUnited Kingdom2024-06-20Feiner Bros NEGOTIATION51Anna Fali
1032Jefferson V BologniaRussia2024-05-25Chemel, James L Cpa RENEWAL90Bernardo Dominic
1033Sinclair A BriddickUnited Kingdom2024-05-31Printing Dimensions RENEWAL82Stephen Shaw
1034Aruna B RulapaughAustralia2024-06-07Rangoni Of Florence NEGOTIATION32Anna Fali
1035Ashley N FlosiItaly2024-05-27Printing Dimensions NEGOTIATION53Ivan Magalhaes
1036Misaki E WaycottBrazil2024-06-18Buckley Miller Wright QUALIFIED73Elwin Sharvill
1037Cody F DarakjyFrance2024-06-14Chanay, Jeffrey A Esq NEGOTIATION83Elwin Sharvill
1038Antonio U CaldareraJapan2024-06-08Chemel, James L Cpa NEGOTIATION83Elwin Sharvill
1039Jennifer G MarrierIndia2024-06-13Chanay, Jeffrey A Esq NEW15Xuxue Feng
1040Faith B SchemmerRussia2024-06-07Chemel, James L Cpa PROPOSAL13Stephen Shaw
1041Nicolas L InouyeBrazil2024-06-09King, Christopher A Esq NEW18Anna Fali
1042Sinclair Y BowleyCanada2024-05-24Rousseaux, Michael Esq PROPOSAL22Elwin Sharvill
1043Deepesh L AlbaresAustralia2024-06-20Truhlar And Truhlar Attys NEW87Xuxue Feng
1044Jefferson I BologniaArgentina2024-05-31Feiner Bros PROPOSAL31Elwin Sharvill
1045Ricardo S RoysterUnited Kingdom2024-06-11King, Christopher A Esq NEW48Amy Elsner
1046Cody R SchemmerBrazil2024-06-17Morlong Associates RENEWAL80Asiya Javayant
1047Isabel P MaletAustralia2024-06-05King, Christopher A Esq UNQUALIFIED60Anna Fali
1048James A CampainUnited Kingdom2024-06-04Chemel, James L Cpa UNQUALIFIED30Ioni Bowcher
1049Jeanfrancois U MorascaBrazil2024-06-12Feiner Bros NEW10Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Juan U SchemmerItalyStephen Shaw QUALIFIED
Morrow O SlusarskiUnited KingdomIoni Bowcher UNQUALIFIED
Jeanfrancois D NestleCanadaElwin Sharvill PROPOSAL
Sinclair R OldroydItalyXuxue Feng QUALIFIED
Claire H FerenczItalyAnna Fali NEGOTIATION
Octavia K GarufiArgentinaXuxue Feng RENEWAL
Deepesh P VenereFranceBernardo Dominic PROPOSAL
Ashley D KuskoArgentinaIoni Bowcher QUALIFIED
Jones J BriddickGermanyXuxue Feng RENEWAL
Nicolas Y OstroskyGermanyStephen Shaw NEGOTIATION
Tony X BologniaArgentinaStephen Shaw NEGOTIATION
Maisha E GillianItalyAmy Elsner NEW
James F MaletRussiaAnna Fali QUALIFIED
Juan O DarakjyBrazilXuxue Feng PROPOSAL
Jennifer M VenereAustraliaElwin Sharvill RENEWAL
Wickens M RutaUnited KingdomOnyama Limba RENEWAL
Clifford M MarrierJapanIoni Bowcher QUALIFIED
Antonio W MarrierSpainStephen Shaw RENEWAL
Leon M GillianCanadaBernardo Dominic RENEWAL
Nicolas V MacleadArgentinaOnyama Limba QUALIFIED
Murillo C CampainBrazilStephen Shaw NEW
Ivar H FlosiFranceOnyama Limba RENEWAL
Mujtaba G GarufiSpainAnna Fali QUALIFIED
Clifford O InouyeUnited KingdomElwin Sharvill NEGOTIATION
Francesco I GarufiUnited KingdomAnna Fali QUALIFIED
Julie X CampainIndiaAnna Fali NEW
Darci K CaldareraAustraliaBernardo Dominic QUALIFIED
Deepesh P IturbideGermanyAmy Elsner UNQUALIFIED
Clifford B RutaUnited KingdomStephen Shaw PROPOSAL
Misaki W KolmetzCanadaElwin Sharvill NEGOTIATION
Cody K ButtItalyXuxue Feng QUALIFIED
Claire O IturbideArgentinaAsiya Javayant UNQUALIFIED
Julie S SlusarskiAustraliaAmy Elsner PROPOSAL
Faith B KolmetzSpainAnna Fali NEGOTIATION
Munro W OstroskyAustraliaOnyama Limba NEW
Stacey F TollnerSpainIoni Bowcher NEW
Maria K DilliardBrazilElwin Sharvill QUALIFIED
Emily T DilliardIndiaAnna Fali NEGOTIATION
Francesco J InouyeJapanIoni Bowcher UNQUALIFIED
Faith V MaletCanadaOnyama Limba UNQUALIFIED
Wickens S CaudyFranceAmy Elsner UNQUALIFIED
Darci F WieserUnited KingdomXuxue Feng NEGOTIATION
Mayumi R GarufiAustraliaElwin Sharvill PROPOSAL
Juan K MacleadItalyBernardo Dominic RENEWAL
Jennifer S FerenczRussiaElwin Sharvill PROPOSAL
Clifford Y TollnerGermanyStephen Shaw QUALIFIED
Smith U StensethSpainIvan Magalhaes NEW
Kaitlin M TollnerSpainXuxue Feng RENEWAL
Jones D BowleyGermanyIoni Bowcher NEW
Leon H RimUnited KingdomAnna Fali QUALIFIED
Frozen Columns
Name
Claire Z Wieser
Leja F Ferencz
Misaki V Royster
Clifford L Caudy
Leja Y Glick
Greenwood D Ostrosky
Maisha U Darakjy
Francesco H Royster
Izzy R Tollner
Ricardo U Kolmetz
Izzy Y Saylors
Juan O Stenseth
Chavez R Waycott
Claire X Doe
Ashley K Iturbide
Munro H Sergi
Octavia W Rulapaugh
Stacey K Amigon
Izzy T Nicka
Jones X Kolmetz
Kadeem A Amigon
Aditya V Campain
Francesco Y Kolmetz
Jeanfrancois U Albares
Ashley W Oldroyd
Smith N Chui
Aditya N Sergi
Octavia J Kusko
Sinclair R Poquette
Juan K Bowley
Alejandro R Darakjy
Ivar O Schemmer
Jennifer Z Paprocki
Mujtaba M Stockham
Smith Z Bowley
Clifford D Iturbide
Jefferson O Stenseth
Misaki J Poquette
Salvatore I Gaucho
Faith B Poquette
Isabel K Butt
Johnson J Perin
Darci D Nestle
Leon F Garufi
Faith S Amigon
Silvio Q Amigon
James I Albares
Cody V Briddick
Aruna Q Campain
Jones Q Gaucho
IdCountryDate
1000India2024-06-17
1001United Kingdom2024-05-25
1002Japan2024-06-13
1003United Kingdom2024-06-16
1004Spain2024-06-10
1005Brazil2024-05-31
1006Brazil2024-06-06
1007Spain2024-05-24
1008Brazil2024-06-04
1009United Kingdom2024-06-08
1010Russia2024-06-05
1011Canada2024-06-02
1012Australia2024-05-31
1013Russia2024-06-21
1014Italy2024-05-24
1015India2024-06-01
1016Japan2024-06-21
1017Brazil2024-05-26
1018Brazil2024-06-20
1019Australia2024-06-11
1020India2024-05-25
1021Brazil2024-05-29
1022Brazil2024-06-20
1023Brazil2024-06-21
1024Germany2024-06-07
1025United Kingdom2024-06-20
1026Spain2024-06-14
1027Russia2024-06-07
1028Germany2024-06-11
1029United Kingdom2024-05-30
1030France2024-05-29
1031United Kingdom2024-06-14
1032India2024-06-13
1033Argentina2024-06-15
1034Argentina2024-06-04
1035Brazil2024-06-21
1036Argentina2024-06-20
1037Brazil2024-05-26
1038Italy2024-06-11
1039Spain2024-06-10
1040Canada2024-06-22
1041Brazil2024-06-14
1042Italy2024-05-28
1043Russia2024-05-26
1044India2024-06-02
1045Australia2024-05-26
1046Argentina2024-06-21
1047Brazil2024-05-31
1048Germany2024-06-17
1049Germany2024-06-01

On-Demand Data

NameIdCountryDate
Clifford B Kolmetz1000France2024-06-09
Rodrigues B Garufi1001Japan2024-06-02
Deepesh M Marrier1002Russia2024-06-20
Aditya O Kusko1003Canada2024-05-29
Munro C Stenseth1004Argentina2024-06-15
Ivar O Malet1005United Kingdom2024-05-25
Claire F Wieser1006Italy2024-06-10
Salvatore O Doe1007Argentina2024-06-10
Maisha H Bowley1008Japan2024-06-13
Aika Q Caldarera1009India2024-06-14
Aika S Schemmer1010Germany2024-05-27
Kaitlin K Ruta1011Australia2024-06-18
Aditya B Rulapaugh1012Russia2024-06-11
Jennifer O Flosi1013France2024-05-26
Chavez A Schemmer1014Brazil2024-05-30
Sinclair X Doe1015Russia2024-05-28
Antonio N Amigon1016United Kingdom2024-05-25
Octavia B Gaucho1017Russia2024-06-18
Kadeem F Shinko1018Brazil2024-05-26
Adams J Saylors1019Argentina2024-06-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Faith K GarufiFranceIvan Magalhaes QUALIFIED
Costa J KolmetzUnited KingdomIvan Magalhaes NEGOTIATION
Maria K FlosiJapanOnyama Limba RENEWAL
Aditya Y FollerArgentinaIoni Bowcher NEGOTIATION
Maisha Q RimUnited KingdomOnyama Limba UNQUALIFIED
Cody I IturbideJapanAmy Elsner RENEWAL
Cody V SchemmerAustraliaAsiya Javayant NEW
David W TollnerCanadaAnna Fali RENEWAL
Costa Z AmigonAustraliaOnyama Limba NEW
Maria C PoquetteItalyAmy Elsner RENEWAL
Costa R DoeUnited KingdomIvan Magalhaes PROPOSAL
Greenwood Q CaudyUnited KingdomStephen Shaw RENEWAL
Morrow N InouyeArgentinaAnna Fali UNQUALIFIED
Aditya E BowleyBrazilAsiya Javayant PROPOSAL
Munro J PerinItalyXuxue Feng RENEWAL
Leon T BowleyJapanStephen Shaw PROPOSAL
Francesco U WieserItalyAsiya Javayant PROPOSAL
Greenwood E CaudyIndiaAsiya Javayant QUALIFIED
Sinclair I WaycottItalyElwin Sharvill NEGOTIATION
Munro M MaletJapanIoni Bowcher QUALIFIED
Darci N BriddickGermanyXuxue Feng NEW
Aditya Z RoysterBrazilAsiya Javayant UNQUALIFIED
Silvio Z WaycottIndiaIoni Bowcher RENEWAL
Izzy U StockhamCanadaIoni Bowcher QUALIFIED
Nicolas M GauchoItalyElwin Sharvill UNQUALIFIED
Rodrigues E PerinJapanAsiya Javayant PROPOSAL
Salvatore O GarufiArgentinaStephen Shaw NEGOTIATION
Cody C RutaAustraliaOnyama Limba NEGOTIATION
Julie A AlbaresSpainIoni Bowcher PROPOSAL
Jones G InouyeIndiaAmy Elsner UNQUALIFIED
Julie O BowleyJapanElwin Sharvill NEW
Leja M WhobreyCanadaXuxue Feng QUALIFIED
James W DoeAustraliaIvan Magalhaes UNQUALIFIED
Chavez T MacleadUnited KingdomAsiya Javayant NEGOTIATION
Darci T AlbaresAustraliaAnna Fali UNQUALIFIED
Ashley Z OstroskyGermanyAmy Elsner RENEWAL
James D GillianAustraliaIvan Magalhaes RENEWAL
Stacey F TollnerIndiaAnna Fali UNQUALIFIED
Smith H PaprockiUnited KingdomAsiya Javayant QUALIFIED
Silvio J CaudyAustraliaOnyama Limba 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>