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 Q SergiUnited KingdomIvan Magalhaes QUALIFIED
Octavia L MarrierIndiaXuxue Feng QUALIFIED
Aika Y VocelkaIndiaStephen Shaw RENEWAL
Greenwood L SergiSpainIoni Bowcher PROPOSAL
Francesco D TollnerGermanyIoni Bowcher NEGOTIATION
Adams D RulapaughArgentinaAmy Elsner RENEWAL
Izzy V InouyeSpainAsiya Javayant UNQUALIFIED
Tony J GarufiGermanyAnna Fali NEGOTIATION
Maisha I GillianSpainAsiya Javayant PROPOSAL
Stacey I StensethCanadaBernardo Dominic UNQUALIFIED
Isabel O NestleArgentinaAnna Fali RENEWAL
Jennifer W WieserRussiaXuxue Feng NEGOTIATION
David G WaycottUnited KingdomOnyama Limba PROPOSAL
Chavez U WhobreyIndiaAsiya Javayant PROPOSAL
Salvatore I SlusarskiBrazilIoni Bowcher RENEWAL
Jeanfrancois S MaletItalyStephen Shaw NEW
Tony N ButtUnited KingdomIvan Magalhaes NEW
Emily M SlusarskiCanadaIoni Bowcher RENEWAL
Francesco C WaycottUnited KingdomAnna Fali QUALIFIED
Aditya F RoysterBrazilAnna Fali UNQUALIFIED
Salvatore B DilliardAustraliaOnyama Limba UNQUALIFIED
Sinclair I FerenczAustraliaOnyama Limba PROPOSAL
Claire M OstroskyItalyBernardo Dominic UNQUALIFIED
Juan F MaletIndiaOnyama Limba NEGOTIATION
Leon H MorascaAustraliaBernardo Dominic QUALIFIED
Tony Q CampainAustraliaStephen Shaw PROPOSAL
Smith A FerenczJapanStephen Shaw RENEWAL
Wickens Q PoquetteArgentinaIoni Bowcher UNQUALIFIED
Munro L OstroskySpainAmy Elsner PROPOSAL
Ricardo S VenereSpainAnna Fali NEW
Isabel R KuskoCanadaElwin Sharvill QUALIFIED
Murillo A MaletAustraliaElwin Sharvill PROPOSAL
Leon J WieserUnited KingdomAnna Fali UNQUALIFIED
Kadeem X CaldareraJapanAnna Fali RENEWAL
Alejandro O StensethItalyBernardo Dominic NEGOTIATION
Smith U NickaGermanyAnna Fali RENEWAL
Maria X FollerBrazilXuxue Feng NEGOTIATION
James Q PoquetteFranceIvan Magalhaes NEGOTIATION
Julie O SaylorsIndiaIvan Magalhaes RENEWAL
Mayumi F VocelkaSpainXuxue Feng QUALIFIED
Claire Y GlickGermanyAnna Fali NEW
Jefferson B MorascaJapanElwin Sharvill QUALIFIED
Ivar F OstroskyUnited KingdomBernardo Dominic RENEWAL
David C VocelkaCanadaAsiya Javayant UNQUALIFIED
Darci X PerinArgentinaStephen Shaw PROPOSAL
Maisha E GarufiJapanIoni Bowcher QUALIFIED
Jones U PaprockiArgentinaElwin Sharvill UNQUALIFIED
Smith J WaycottFranceIoni Bowcher QUALIFIED
Murillo U BowleyIndiaStephen Shaw PROPOSAL
Mayumi I ShinkoArgentinaAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
David I GlickIndiaIvan Magalhaes NEW
Jefferson M VocelkaItalyElwin Sharvill PROPOSAL
Nicolas O KuskoCanadaBernardo Dominic QUALIFIED
Juan A WieserIndiaIoni Bowcher NEW
Julie S FigeroaGermanyAsiya Javayant PROPOSAL
Deepesh B CaldareraSpainIvan Magalhaes NEW
Sinclair B WaycottCanadaOnyama Limba RENEWAL
Ivar P FerenczUnited KingdomAnna Fali RENEWAL
Darci J DoeItalyAsiya Javayant PROPOSAL
Nicolas P GarufiSpainStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody G VocelkaSpain2024-04-28Feiner Bros NEW31Elwin Sharvill
1001David D VocelkaFrance2024-05-08Buckley Miller Wright UNQUALIFIED86Anna Fali
1002Aruna Q AmigonSpain2024-05-18Chanay, Jeffrey A Esq RENEWAL15Elwin Sharvill
1003Maria P CampainArgentina2024-05-15Chanay, Jeffrey A Esq QUALIFIED25Anna Fali
1004Murillo F MaletArgentina2024-05-24Rangoni Of Florence PROPOSAL17Asiya Javayant
1005Silvio Z InouyeRussia2024-05-06Commercial Press RENEWAL44Anna Fali
1006Ashley D ChuiFrance2024-05-10Printing Dimensions NEGOTIATION32Xuxue Feng
1007Clifford G BologniaUnited Kingdom2024-04-30Rangoni Of Florence QUALIFIED48Bernardo Dominic
1008Claire D WhobreyGermany2024-05-04Buckley Miller Wright NEW19Onyama Limba
1009Clifford E PoquetteBrazil2024-05-22Commercial Press NEW57Xuxue Feng
1010David C DoeJapan2024-05-25Morlong Associates UNQUALIFIED84Ioni Bowcher
1011Rodrigues H DoeUnited Kingdom2024-05-04Rousseaux, Michael Esq RENEWAL33Anna Fali
1012Chavez R GillianIndia2024-05-07Buckley Miller Wright UNQUALIFIED74Anna Fali
1013Jeanfrancois O VenereCanada2024-05-09Feiner Bros PROPOSAL33Asiya Javayant
1014Jennifer D KolmetzArgentina2024-05-06Chapman, Ross E Esq RENEWAL23Ioni Bowcher
1015Cody X RulapaughItaly2024-05-16Rousseaux, Michael Esq UNQUALIFIED20Asiya Javayant
1016Jefferson I ShinkoAustralia2024-05-13King, Christopher A Esq RENEWAL62Asiya Javayant
1017Kaitlin G WaycottCanada2024-05-26King, Christopher A Esq PROPOSAL46Onyama Limba
1018Stacey L WaycottSpain2024-05-19Morlong Associates NEW87Amy Elsner
1019Maria K BologniaRussia2024-05-21Chemel, James L Cpa NEGOTIATION60Amy Elsner
1020Alejandro Y ChuiSpain2024-05-07Commercial Press UNQUALIFIED41Ioni Bowcher
1021Misaki Z RutaUnited Kingdom2024-04-27Chemel, James L Cpa NEW32Elwin Sharvill
1022Tony E CampainUnited Kingdom2024-05-15Truhlar And Truhlar Attys NEGOTIATION32Xuxue Feng
1023Salvatore Q DarakjyUnited Kingdom2024-05-13Chemel, James L Cpa QUALIFIED35Xuxue Feng
1024Jeanfrancois Q FollerItaly2024-05-14Buckley Miller Wright QUALIFIED38Elwin Sharvill
1025Jeanfrancois L DarakjyFrance2024-04-28Printing Dimensions NEW80Bernardo Dominic
1026Juan J RulapaughJapan2024-05-14Commercial Press QUALIFIED23Bernardo Dominic
1027Arvin D PoquetteIndia2024-05-02Dorl, James J Esq QUALIFIED41Asiya Javayant
1028Nicolas F SlusarskiIndia2024-05-23Dorl, James J Esq PROPOSAL54Ivan Magalhaes
1029Maisha I WaycottFrance2024-05-01King, Christopher A Esq NEW70Ivan Magalhaes
1030Maria D MacleadJapan2024-04-30Feltz Printing Service NEW72Bernardo Dominic
1031Clifford Y PerinJapan2024-05-22Benton, John B Jr PROPOSAL86Anna Fali
1032Greenwood H KuskoArgentina2024-05-05Chanay, Jeffrey A Esq NEGOTIATION58Xuxue Feng
1033Chavez F BriddickAustralia2024-05-03Chanay, Jeffrey A Esq QUALIFIED98Bernardo Dominic
1034Johnson K FollerSpain2024-05-13Chanay, Jeffrey A Esq PROPOSAL33Elwin Sharvill
1035Adams P FlosiAustralia2024-05-17Truhlar And Truhlar Attys NEGOTIATION26Xuxue Feng
1036Rodrigues S FigeroaRussia2024-04-27Commercial Press PROPOSAL96Amy Elsner
1037Rodrigues B ButtBrazil2024-05-10Rousseaux, Michael Esq UNQUALIFIED17Asiya Javayant
1038Stacey S BowleyJapan2024-05-05Rousseaux, Michael Esq NEW93Onyama Limba
1039Kaitlin N PerinFrance2024-05-11Truhlar And Truhlar Attys PROPOSAL45Asiya Javayant
1040Faith P VenereCanada2024-04-29Truhlar And Truhlar Attys RENEWAL31Onyama Limba
1041Alejandro I NickaItaly2024-05-19Morlong Associates NEW26Onyama Limba
1042Jones X VocelkaIndia2024-05-06Chemel, James L Cpa QUALIFIED30Xuxue Feng
1043Wickens M PoquetteUnited Kingdom2024-04-30Chapman, Ross E Esq NEW0Asiya Javayant
1044Cody E InouyeBrazil2024-05-24Rousseaux, Michael Esq QUALIFIED94Ivan Magalhaes
1045Leon D RoysterIndia2024-05-21Buckley Miller Wright PROPOSAL39Ivan Magalhaes
1046Aditya P CampainAustralia2024-05-05Chanay, Jeffrey A Esq QUALIFIED61Stephen Shaw
1047Ivar H AlbaresCanada2024-05-04Dorl, James J Esq UNQUALIFIED79Bernardo Dominic
1048Deepesh S SaylorsJapan2024-05-06Chemel, James L Cpa PROPOSAL97Onyama Limba
1049Isabel G AlbaresGermany2024-04-30Morlong Associates UNQUALIFIED5Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Antonio J DarakjySpainXuxue Feng PROPOSAL
Leon O CaldareraJapanAmy Elsner UNQUALIFIED
Aika Q DarakjyBrazilAsiya Javayant QUALIFIED
Maisha F FigeroaCanadaElwin Sharvill PROPOSAL
Adams J CaudyIndiaAsiya Javayant NEW
Johnson T DilliardItalyBernardo Dominic RENEWAL
Claire P VocelkaArgentinaAnna Fali QUALIFIED
Mujtaba X TollnerItalyAsiya Javayant RENEWAL
Kadeem P MaletIndiaBernardo Dominic UNQUALIFIED
Jones T BologniaAustraliaAmy Elsner UNQUALIFIED
Misaki H WieserArgentinaIvan Magalhaes PROPOSAL
Chavez L GauchoArgentinaAnna Fali UNQUALIFIED
Juan R DilliardGermanyAsiya Javayant UNQUALIFIED
Aruna C FlosiSpainIoni Bowcher NEW
Ricardo N WieserAustraliaAsiya Javayant RENEWAL
Misaki P KuskoAustraliaAnna Fali RENEWAL
Ricardo F AmigonSpainOnyama Limba RENEWAL
Cody L GarufiItalyIvan Magalhaes NEW
Jones R BowleyArgentinaBernardo Dominic PROPOSAL
James E StensethIndiaIoni Bowcher NEGOTIATION
Jennifer A PaprockiFranceIoni Bowcher RENEWAL
Alejandro V RimRussiaXuxue Feng NEGOTIATION
Maisha I InouyeAustraliaAmy Elsner RENEWAL
Murillo J PoquetteRussiaXuxue Feng UNQUALIFIED
Faith B BologniaJapanStephen Shaw RENEWAL
Julie D MorascaUnited KingdomElwin Sharvill NEW
Jefferson Y MarrierItalyIvan Magalhaes RENEWAL
Alejandro J CampainBrazilAmy Elsner RENEWAL
Morrow G WhobreyBrazilIoni Bowcher PROPOSAL
Salvatore X KuskoAustraliaIoni Bowcher QUALIFIED
Stacey D FlosiFranceAnna Fali RENEWAL
Maisha N BowleyItalyElwin Sharvill NEGOTIATION
Leon U ShinkoItalyIvan Magalhaes QUALIFIED
Wickens U MaletBrazilElwin Sharvill NEGOTIATION
Claire R NestleRussiaOnyama Limba UNQUALIFIED
Rodrigues T ChuiSpainIoni Bowcher PROPOSAL
Aditya L StockhamFranceElwin Sharvill PROPOSAL
Johnson L MaletAustraliaIvan Magalhaes NEW
Maria F DarakjyFranceAsiya Javayant UNQUALIFIED
James O ButtBrazilAnna Fali UNQUALIFIED
Antonio D PerinJapanIoni Bowcher UNQUALIFIED
James S FollerArgentinaBernardo Dominic PROPOSAL
Juan U SergiArgentinaOnyama Limba RENEWAL
Isabel A FollerItalyBernardo Dominic UNQUALIFIED
Costa W WaycottUnited KingdomXuxue Feng NEGOTIATION
Kaitlin W GarufiIndiaAsiya Javayant NEGOTIATION
Chavez Q IturbideUnited KingdomElwin Sharvill RENEWAL
Tony E BriddickUnited KingdomAnna Fali RENEWAL
Adams R MacleadBrazilXuxue Feng PROPOSAL
Jones O BriddickUnited KingdomBernardo Dominic NEW
Frozen Columns
Name
Juan Z Foller
Antonio P Iturbide
Smith S Flosi
Smith V Slusarski
Arvin K Waycott
Ivar B Nicka
Francesco L Venere
Chavez T Wieser
Jefferson C Malet
Chavez Q Gillian
Wickens Y Marrier
Octavia J Wieser
Aditya Z Darakjy
James N Kolmetz
Tony G Amigon
Rodrigues V Caldarera
Ricardo O Slusarski
Sinclair W Venere
Nicolas F Morasca
Costa A Royster
Claire S Caudy
Izzy H Vocelka
Emily U Oldroyd
Smith M Garufi
Greenwood O Albares
Nicolas K Doe
Aika D Ostrosky
Munro D Bowley
Munro T Nestle
Francesco W Slusarski
Johnson G Bolognia
Arvin W Chui
David M Gillian
Leja I Slusarski
Clifford X Caldarera
Munro L Nestle
Stacey E Bowley
Misaki X Inouye
Johnson I Tollner
Johnson G Ruta
Antonio R Gaucho
Julie U Sergi
Cody W Kusko
Claire T Bolognia
Jeanfrancois E Briddick
Silvio M Saylors
Stacey M Nestle
Leon Q Darakjy
Jeanfrancois W Kolmetz
Morrow I Ruta
IdCountryDate
1000United Kingdom2024-05-10
1001Canada2024-05-18
1002Japan2024-05-21
1003Japan2024-04-29
1004United Kingdom2024-05-22
1005Germany2024-05-01
1006United Kingdom2024-05-16
1007United Kingdom2024-05-06
1008Italy2024-05-06
1009Spain2024-05-24
1010Spain2024-05-22
1011Australia2024-05-06
1012Brazil2024-04-29
1013Canada2024-05-16
1014Argentina2024-05-05
1015France2024-05-18
1016Argentina2024-05-13
1017Italy2024-05-14
1018Germany2024-05-08
1019Spain2024-05-23
1020India2024-05-05
1021United Kingdom2024-05-06
1022Australia2024-05-26
1023Canada2024-05-08
1024Germany2024-05-21
1025Germany2024-05-03
1026France2024-05-17
1027India2024-04-29
1028United Kingdom2024-05-06
1029Japan2024-05-02
1030Italy2024-05-06
1031India2024-05-21
1032Spain2024-05-09
1033Italy2024-05-08
1034Germany2024-05-04
1035Spain2024-05-03
1036Russia2024-05-21
1037Russia2024-05-22
1038Russia2024-05-21
1039Brazil2024-05-09
1040United Kingdom2024-05-16
1041United Kingdom2024-05-25
1042India2024-05-02
1043Russia2024-05-25
1044France2024-05-07
1045Argentina2024-05-10
1046Japan2024-05-20
1047Australia2024-05-07
1048Argentina2024-05-06
1049Russia2024-04-29

On-Demand Data

NameIdCountryDate
Wickens Q Kusko1000Brazil2024-05-12
Nicolas V Wieser1001Germany2024-05-09
Emily S Marrier1002Brazil2024-05-04
Munro M Morasca1003Japan2024-04-27
Johnson X Stenseth1004Italy2024-05-20
Isabel A Garufi1005Germany2024-04-28
Alejandro T Briddick1006Argentina2024-05-12
Maria J Stockham1007Australia2024-04-30
Deepesh T Paprocki1008Argentina2024-04-28
Kadeem Z Perin1009Spain2024-05-23
Kaitlin E Garufi1010Brazil2024-04-28
Emily O Stockham1011Argentina2024-05-05
Leon D Kusko1012Germany2024-05-20
Isabel N Garufi1013Japan2024-05-06
Johnson O Stenseth1014Australia2024-05-14
Arvin M Royster1015Italy2024-05-04
Maisha O Briddick1016Australia2024-05-23
Arvin H Waycott1017Japan2024-05-12
Jeanfrancois N Maclead1018Brazil2024-05-20
Leon G Morasca1019United Kingdom2024-05-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson G CaudyIndiaBernardo Dominic NEW
Mujtaba C BowleyRussiaBernardo Dominic NEGOTIATION
Cody K AlbaresSpainIvan Magalhaes NEGOTIATION
Izzy U ChuiSpainIvan Magalhaes PROPOSAL
Mujtaba D NestleItalyBernardo Dominic NEW
Rodrigues W FigeroaRussiaAmy Elsner RENEWAL
Leja A GarufiUnited KingdomIvan Magalhaes QUALIFIED
Jefferson K PerinItalyElwin Sharvill RENEWAL
Morrow I FigeroaSpainIoni Bowcher NEW
Clifford K OldroydRussiaXuxue Feng NEW
Juan D BriddickSpainAsiya Javayant NEGOTIATION
Costa T PoquetteCanadaIvan Magalhaes PROPOSAL
Jeanfrancois V InouyeSpainElwin Sharvill UNQUALIFIED
Jones W NickaRussiaBernardo Dominic PROPOSAL
Munro L FerenczJapanIoni Bowcher PROPOSAL
Johnson N FlosiUnited KingdomAnna Fali QUALIFIED
Isabel R MaletFranceElwin Sharvill NEW
Jefferson P WaycottItalyIoni Bowcher PROPOSAL
Costa Q MarrierArgentinaIvan Magalhaes RENEWAL
Adams L GauchoGermanyIvan Magalhaes QUALIFIED
Chavez K NickaArgentinaElwin Sharvill PROPOSAL
Jones E PoquetteCanadaIvan Magalhaes PROPOSAL
Arvin M FlosiBrazilIvan Magalhaes QUALIFIED
Francesco O MaletItalyElwin Sharvill UNQUALIFIED
Stacey C RulapaughItalyAsiya Javayant NEW
Julie Z ButtFranceAnna Fali UNQUALIFIED
Adams T RulapaughAustraliaIvan Magalhaes RENEWAL
Mujtaba I BriddickJapanAnna Fali RENEWAL
Octavia U PaprockiRussiaBernardo Dominic PROPOSAL
Salvatore T GauchoArgentinaElwin Sharvill PROPOSAL
Aika M BriddickAustraliaIvan Magalhaes RENEWAL
Aditya W MacleadJapanAmy Elsner QUALIFIED
Cody M MaletUnited KingdomOnyama Limba NEGOTIATION
Kaitlin F RoysterCanadaBernardo Dominic PROPOSAL
Salvatore I RimArgentinaAsiya Javayant UNQUALIFIED
Ashley D MorascaUnited KingdomAmy Elsner UNQUALIFIED
Munro N CaudyBrazilIoni Bowcher UNQUALIFIED
Juan M DoeJapanXuxue Feng PROPOSAL
Silvio I FlosiArgentinaAnna Fali UNQUALIFIED
Costa Y VocelkaItalyBernardo Dominic UNQUALIFIED

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