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
Juan Y SlusarskiAustraliaOnyama Limba NEW
Aruna B TollnerBrazilElwin Sharvill NEGOTIATION
Kadeem K SchemmerJapanStephen Shaw PROPOSAL
Jones Q DarakjyCanadaOnyama Limba NEGOTIATION
Kadeem Y SlusarskiArgentinaXuxue Feng NEGOTIATION
Aika L SaylorsGermanyAsiya Javayant RENEWAL
Chavez O FollerItalyXuxue Feng NEGOTIATION
Munro E RulapaughCanadaAmy Elsner RENEWAL
Rodrigues J ShinkoFranceStephen Shaw UNQUALIFIED
Alejandro M DoeGermanyAsiya Javayant RENEWAL
Murillo Z BologniaBrazilOnyama Limba QUALIFIED
Kadeem Q NickaGermanyAsiya Javayant NEGOTIATION
Jones L SergiIndiaIoni Bowcher NEGOTIATION
Ricardo I FigeroaBrazilXuxue Feng QUALIFIED
Morrow L SchemmerRussiaAnna Fali PROPOSAL
Mujtaba W SaylorsItalyAmy Elsner NEGOTIATION
Arvin Y NickaCanadaXuxue Feng RENEWAL
Greenwood Q MarrierItalyAmy Elsner PROPOSAL
Jennifer L NickaIndiaAsiya Javayant NEW
Aditya E MaletIndiaXuxue Feng PROPOSAL
Maria U BriddickCanadaAnna Fali PROPOSAL
Rodrigues U KolmetzAustraliaAsiya Javayant NEW
Nicolas Z DilliardAustraliaIoni Bowcher NEGOTIATION
Ashley N RulapaughUnited KingdomXuxue Feng NEW
Aditya Y SaylorsItalyStephen Shaw NEGOTIATION
Johnson V GlickAustraliaStephen Shaw NEW
Ricardo M SaylorsFranceAsiya Javayant NEW
Stacey C SergiJapanStephen Shaw UNQUALIFIED
Deepesh Y SergiRussiaIoni Bowcher UNQUALIFIED
Leja L VenereFranceOnyama Limba PROPOSAL
Greenwood R DarakjyAustraliaIoni Bowcher NEGOTIATION
Salvatore J ButtGermanyIoni Bowcher RENEWAL
Munro Y GauchoItalyAmy Elsner NEGOTIATION
Salvatore O RimCanadaXuxue Feng RENEWAL
Greenwood O WhobreyGermanyOnyama Limba QUALIFIED
Deepesh P RutaUnited KingdomStephen Shaw UNQUALIFIED
Greenwood X SlusarskiSpainAnna Fali QUALIFIED
Kadeem W MaletCanadaAsiya Javayant NEGOTIATION
Wickens I InouyeItalyIoni Bowcher RENEWAL
Cody G AlbaresIndiaIoni Bowcher UNQUALIFIED
Alejandro C FollerItalyIvan Magalhaes RENEWAL
Jeanfrancois A NestleItalyAsiya Javayant UNQUALIFIED
Izzy W VocelkaCanadaAmy Elsner QUALIFIED
Murillo F BowleyBrazilAnna Fali NEGOTIATION
Ivar E GlickSpainAsiya Javayant UNQUALIFIED
Nicolas P StensethBrazilBernardo Dominic NEW
Salvatore X GlickCanadaOnyama Limba PROPOSAL
Alejandro S NestleBrazilAmy Elsner QUALIFIED
Jeanfrancois V MaletItalyAsiya Javayant UNQUALIFIED
Aika D KuskoRussiaIvan Magalhaes UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Salvatore I PaprockiRussiaIoni Bowcher UNQUALIFIED
Johnson I WieserItalyAmy Elsner RENEWAL
Kadeem U OstroskyRussiaIvan Magalhaes PROPOSAL
Cody Z IturbideFranceXuxue Feng RENEWAL
Tony J MaletArgentinaOnyama Limba RENEWAL
Leja P GlickRussiaAnna Fali RENEWAL
James Z GlickRussiaBernardo Dominic NEW
Clifford D ShinkoAustraliaIoni Bowcher UNQUALIFIED
Emily I RulapaughCanadaOnyama Limba UNQUALIFIED
Jennifer B KolmetzUnited KingdomBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maria R SaylorsItaly2024-05-10Dorl, James J Esq NEW83Bernardo Dominic
1001Aditya J RimIndia2024-05-17Dorl, James J Esq PROPOSAL43Amy Elsner
1002Jennifer E InouyeIndia2024-05-02King, Christopher A Esq PROPOSAL69Bernardo Dominic
1003Kaitlin L StensethUnited Kingdom2024-05-15Chanay, Jeffrey A Esq NEGOTIATION55Stephen Shaw
1004Darci Q WaycottSpain2024-05-24Rousseaux, Michael Esq NEW68Elwin Sharvill
1005Salvatore P MarrierRussia2024-05-27Feltz Printing Service RENEWAL95Stephen Shaw
1006Greenwood D IturbideSpain2024-05-02Feltz Printing Service RENEWAL95Asiya Javayant
1007Aika J BowleyArgentina2024-05-22King, Christopher A Esq NEW38Ivan Magalhaes
1008Mayumi W BowleyGermany2024-05-25Morlong Associates NEGOTIATION36Stephen Shaw
1009Ashley N AlbaresBrazil2024-05-22Chanay, Jeffrey A Esq UNQUALIFIED71Xuxue Feng
1010Arvin N WieserCanada2024-05-26Truhlar And Truhlar Attys RENEWAL92Bernardo Dominic
1011Aruna H MorascaJapan2024-05-22Chapman, Ross E Esq UNQUALIFIED54Bernardo Dominic
1012Wickens D IturbideSpain2024-05-19Benton, John B Jr PROPOSAL23Ioni Bowcher
1013Jefferson T IturbideAustralia2024-05-26Chemel, James L Cpa NEW72Onyama Limba
1014Kadeem O MacleadSpain2024-05-09King, Christopher A Esq NEW15Amy Elsner
1015Nicolas R MarrierJapan2024-05-19Buckley Miller Wright NEGOTIATION31Xuxue Feng
1016Greenwood Q FigeroaJapan2024-05-16Truhlar And Truhlar Attys UNQUALIFIED88Bernardo Dominic
1017Leja J SergiItaly2024-05-21Buckley Miller Wright PROPOSAL64Ioni Bowcher
1018Julie J IturbideAustralia2024-05-08Rousseaux, Michael Esq PROPOSAL86Elwin Sharvill
1019Jones E GlickArgentina2024-05-22King, Christopher A Esq PROPOSAL99Ioni Bowcher
1020Tony L DilliardJapan2024-04-28Buckley Miller Wright NEGOTIATION21Ioni Bowcher
1021Julie V ChuiGermany2024-05-19Chanay, Jeffrey A Esq RENEWAL39Asiya Javayant
1022Jefferson B PerinAustralia2024-05-27Chanay, Jeffrey A Esq NEGOTIATION67Xuxue Feng
1023Isabel F RoysterUnited Kingdom2024-05-11Chanay, Jeffrey A Esq PROPOSAL95Onyama Limba
1024Maisha O PoquetteItaly2024-05-17Feltz Printing Service NEGOTIATION92Xuxue Feng
1025David G DoeJapan2024-04-30Truhlar And Truhlar Attys PROPOSAL96Amy Elsner
1026Greenwood M GlickJapan2024-05-04King, Christopher A Esq QUALIFIED38Anna Fali
1027Ashley B BologniaGermany2024-05-26Feltz Printing Service RENEWAL83Stephen Shaw
1028Isabel O RimJapan2024-05-04Benton, John B Jr NEW72Ioni Bowcher
1029Nicolas Y RulapaughArgentina2024-05-16Chanay, Jeffrey A Esq PROPOSAL61Amy Elsner
1030Francesco H MaletFrance2024-05-15Rangoni Of Florence UNQUALIFIED5Stephen Shaw
1031Jefferson K WieserIndia2024-05-22Truhlar And Truhlar Attys NEGOTIATION39Xuxue Feng
1032Octavia E ShinkoIndia2024-05-21Chapman, Ross E Esq QUALIFIED6Amy Elsner
1033Stacey I InouyeGermany2024-04-28King, Christopher A Esq UNQUALIFIED74Ioni Bowcher
1034Aika M ButtBrazil2024-05-22Chanay, Jeffrey A Esq UNQUALIFIED72Elwin Sharvill
1035Juan H ButtCanada2024-04-28Rousseaux, Michael Esq NEW47Stephen Shaw
1036Jones M DilliardRussia2024-05-07Dorl, James J Esq RENEWAL19Bernardo Dominic
1037Deepesh O PoquetteFrance2024-05-10Buckley Miller Wright RENEWAL91Amy Elsner
1038Isabel T TollnerJapan2024-05-21King, Christopher A Esq UNQUALIFIED74Onyama Limba
1039Adams B FlosiBrazil2024-05-13Feiner Bros UNQUALIFIED35Ivan Magalhaes
1040Isabel C PaprockiBrazil2024-05-11Benton, John B Jr NEW45Xuxue Feng
1041Mayumi B MacleadCanada2024-05-14Printing Dimensions RENEWAL0Stephen Shaw
1042Izzy F SergiAustralia2024-05-18Buckley Miller Wright NEW76Ivan Magalhaes
1043Aditya G RoysterRussia2024-05-20Feltz Printing Service RENEWAL73Amy Elsner
1044Sinclair N ButtJapan2024-05-09Chemel, James L Cpa PROPOSAL90Xuxue Feng
1045Adams Z GarufiUnited Kingdom2024-05-07Dorl, James J Esq UNQUALIFIED55Bernardo Dominic
1046Arvin Q MacleadAustralia2024-05-02Chemel, James L Cpa NEW8Bernardo Dominic
1047Leon H OldroydFrance2024-05-10Feiner Bros UNQUALIFIED35Amy Elsner
1048Rodrigues B PerinJapan2024-05-27Buckley Miller Wright QUALIFIED37Asiya Javayant
1049Claire I VocelkaJapan2024-05-04Truhlar And Truhlar Attys NEGOTIATION31Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Ashley B WhobreyUnited KingdomAnna Fali NEW
Alejandro Y MarrierGermanyBernardo Dominic PROPOSAL
Alejandro K SchemmerGermanyAnna Fali NEW
Jefferson N VenereGermanyIoni Bowcher PROPOSAL
Ivar H IturbideGermanyAnna Fali RENEWAL
Clifford H OstroskyIndiaStephen Shaw NEW
Aditya T StockhamIndiaAnna Fali RENEWAL
Greenwood U WieserBrazilAmy Elsner UNQUALIFIED
Faith K CampainBrazilIoni Bowcher RENEWAL
David D GarufiCanadaStephen Shaw UNQUALIFIED
Chavez H RulapaughUnited KingdomAsiya Javayant QUALIFIED
Julie F FlosiSpainXuxue Feng QUALIFIED
Ivar J MaletJapanElwin Sharvill RENEWAL
Juan V MaletAustraliaBernardo Dominic NEGOTIATION
Izzy R PaprockiIndiaStephen Shaw NEW
Smith T MaletIndiaIvan Magalhaes PROPOSAL
Stacey V MaletFranceAmy Elsner NEGOTIATION
Adams A BologniaCanadaAmy Elsner PROPOSAL
Leon W OstroskyArgentinaElwin Sharvill UNQUALIFIED
Juan V PerinIndiaElwin Sharvill NEW
Misaki A MarrierIndiaIvan Magalhaes RENEWAL
Munro N AlbaresItalyBernardo Dominic UNQUALIFIED
Ashley J MarrierFranceAsiya Javayant NEGOTIATION
Izzy U SaylorsItalyStephen Shaw NEW
David M WaycottArgentinaElwin Sharvill UNQUALIFIED
Jennifer C CampainGermanyIvan Magalhaes NEW
David R MarrierAustraliaElwin Sharvill NEW
Jefferson H BriddickUnited KingdomStephen Shaw QUALIFIED
Leja Q OstroskyFranceXuxue Feng NEGOTIATION
Kaitlin P MorascaCanadaOnyama Limba NEW
Greenwood N KolmetzBrazilElwin Sharvill RENEWAL
Johnson V AlbaresArgentinaStephen Shaw NEGOTIATION
Darci O RulapaughAustraliaAsiya Javayant NEW
Juan D StockhamFranceOnyama Limba QUALIFIED
Francesco O DilliardBrazilIvan Magalhaes RENEWAL
David V PaprockiSpainAsiya Javayant NEGOTIATION
Costa Q GauchoUnited KingdomBernardo Dominic NEW
Kaitlin M StensethItalyOnyama Limba QUALIFIED
Izzy O OldroydFranceAmy Elsner QUALIFIED
Clifford M InouyeAustraliaStephen Shaw PROPOSAL
Murillo P StockhamCanadaStephen Shaw NEW
Rodrigues E CaldareraRussiaIoni Bowcher PROPOSAL
Chavez L FlosiSpainAnna Fali NEGOTIATION
Chavez T MaletRussiaOnyama Limba NEW
Kaitlin S FollerRussiaXuxue Feng PROPOSAL
Deepesh N RulapaughBrazilBernardo Dominic NEGOTIATION
Deepesh S CaudyGermanyAmy Elsner QUALIFIED
Juan R KuskoBrazilAmy Elsner RENEWAL
Leon L RutaSpainAsiya Javayant NEGOTIATION
Silvio R SaylorsFranceAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Greenwood Z Stenseth
Faith I Malet
Ivar I Bolognia
Salvatore T Gillian
Misaki R Shinko
Leon U Bowley
Jeanfrancois E Poquette
Ricardo V Vocelka
Darci R Wieser
Emily I Malet
Tony Y Bolognia
Leja A Stenseth
Maisha H Ostrosky
Aika F Poquette
Chavez E Venere
Maria N Malet
Izzy A Campain
Faith D Kolmetz
Nicolas D Bolognia
Aditya E Whobrey
Maria W Butt
Ashley F Briddick
Greenwood J Albares
Leon R Morasca
Murillo B Marrier
Wickens P Oldroyd
Costa P Dilliard
Salvatore B Morasca
Kaitlin K Malet
Rodrigues E Inouye
Claire U Doe
Kadeem W Morasca
Isabel O Malet
Octavia G Albares
Kaitlin R Bolognia
Costa H Rim
Maisha N Shinko
Tony S Wieser
Aika K Kusko
Ricardo F Rim
Costa K Vocelka
Jefferson P Briddick
Isabel N Perin
Jennifer S Caudy
Misaki C Maclead
Salvatore A Venere
Emily Z Bolognia
Arvin Y Ferencz
Maisha A Whobrey
Kaitlin Z Rulapaugh
IdCountryDate
1000Germany2024-05-14
1001United Kingdom2024-05-13
1002Canada2024-05-03
1003Australia2024-04-30
1004Spain2024-05-08
1005India2024-05-19
1006Germany2024-05-13
1007Japan2024-05-27
1008India2024-05-12
1009Argentina2024-05-06
1010Spain2024-05-01
1011Spain2024-05-26
1012France2024-04-28
1013Brazil2024-04-29
1014Russia2024-05-16
1015Russia2024-05-22
1016Argentina2024-05-17
1017Argentina2024-05-16
1018India2024-05-11
1019France2024-05-21
1020Brazil2024-05-14
1021Argentina2024-05-16
1022Brazil2024-05-14
1023Italy2024-05-12
1024Spain2024-05-21
1025Germany2024-05-26
1026Japan2024-05-21
1027Canada2024-05-20
1028Australia2024-05-02
1029Italy2024-05-20
1030Brazil2024-04-29
1031Argentina2024-05-22
1032Russia2024-05-04
1033India2024-05-01
1034India2024-04-29
1035Canada2024-05-15
1036Japan2024-05-16
1037Germany2024-05-01
1038India2024-05-14
1039Argentina2024-05-16
1040Canada2024-05-11
1041Italy2024-05-24
1042Canada2024-05-01
1043India2024-05-02
1044Italy2024-05-19
1045United Kingdom2024-04-29
1046Russia2024-05-24
1047France2024-05-20
1048Spain2024-05-27
1049Canada2024-05-25

On-Demand Data

NameIdCountryDate
Claire E Whobrey1000Canada2024-05-01
Greenwood O Flosi1001Spain2024-05-19
Costa D Gaucho1002Argentina2024-05-05
Leon V Glick1003India2024-05-23
Kadeem P Rulapaugh1004France2024-05-17
Mujtaba T Kusko1005India2024-05-27
Silvio L Caudy1006Australia2024-05-27
Cody E Paprocki1007Japan2024-05-21
David O Albares1008Argentina2024-04-28
Misaki H Maclead1009United Kingdom2024-05-18
Misaki O Schemmer1010Spain2024-05-17
Stacey A Ruta1011Australia2024-05-05
Murillo K Garufi1012Brazil2024-05-12
Sinclair U Perin1013Australia2024-05-06
Tony H Wieser1014Canada2024-05-21
Darci N Slusarski1015Australia2024-05-26
Munro G Gaucho1016Russia2024-05-23
Deepesh G Slusarski1017India2024-05-25
Claire W Kolmetz1018Spain2024-05-17
Cody U Dilliard1019Brazil2024-05-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jeanfrancois Y PerinBrazilAnna Fali QUALIFIED
Ashley P OldroydBrazilIvan Magalhaes QUALIFIED
Alejandro X FerenczCanadaAsiya Javayant RENEWAL
Wickens B KuskoFranceOnyama Limba NEW
Leja T PoquetteUnited KingdomIvan Magalhaes QUALIFIED
Kaitlin M AlbaresJapanAnna Fali RENEWAL
Munro T BologniaAustraliaAnna Fali NEGOTIATION
Sinclair N RutaUnited KingdomIoni Bowcher RENEWAL
Cody Y TollnerJapanElwin Sharvill PROPOSAL
Mujtaba Q BowleyGermanyAmy Elsner NEW
Emily J GauchoItalyXuxue Feng RENEWAL
Ashley I KolmetzUnited KingdomIoni Bowcher NEGOTIATION
Misaki K ChuiRussiaIoni Bowcher UNQUALIFIED
Darci Z NestleUnited KingdomAsiya Javayant PROPOSAL
Aruna W FlosiSpainBernardo Dominic RENEWAL
Ashley F VocelkaAustraliaBernardo Dominic NEW
Jeanfrancois Q FerenczJapanIoni Bowcher NEW
Wickens V DilliardBrazilIvan Magalhaes UNQUALIFIED
Izzy T ShinkoSpainAsiya Javayant RENEWAL
Aika P RulapaughFranceOnyama Limba UNQUALIFIED
Claire T MarrierArgentinaElwin Sharvill UNQUALIFIED
Tony W CaldareraSpainAnna Fali QUALIFIED
Maisha V AmigonGermanyBernardo Dominic UNQUALIFIED
James U CaudyIndiaOnyama Limba RENEWAL
Deepesh V OldroydRussiaAsiya Javayant RENEWAL
Maisha V PoquetteAustraliaElwin Sharvill QUALIFIED
Deepesh P RimItalyIvan Magalhaes QUALIFIED
Sinclair J CampainRussiaXuxue Feng RENEWAL
Wickens U OstroskyArgentinaXuxue Feng UNQUALIFIED
Silvio F VenereIndiaAsiya Javayant PROPOSAL
Silvio Y CaudyBrazilXuxue Feng QUALIFIED
Cody Y AmigonGermanyAsiya Javayant NEGOTIATION
Mayumi Z NestleArgentinaIoni Bowcher QUALIFIED
Chavez U KolmetzUnited KingdomIvan Magalhaes NEW
Aruna Z RulapaughItalyXuxue Feng UNQUALIFIED
Deepesh X GarufiSpainAmy Elsner QUALIFIED
Octavia D DoeBrazilIvan Magalhaes NEGOTIATION
Mayumi M FerenczJapanXuxue Feng RENEWAL
Silvio T ShinkoJapanXuxue Feng UNQUALIFIED
Salvatore L SlusarskiItalyIoni Bowcher RENEWAL

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