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
Kaitlin U RutaBrazilAmy Elsner NEGOTIATION
Antonio V FollerJapanIvan Magalhaes NEW
Aruna I BologniaUnited KingdomAnna Fali PROPOSAL
Mayumi F RoysterArgentinaIvan Magalhaes RENEWAL
Darci C GauchoJapanIoni Bowcher UNQUALIFIED
Mayumi M RimGermanyElwin Sharvill RENEWAL
Ricardo Z NestleJapanBernardo Dominic PROPOSAL
Munro E MarrierJapanAmy Elsner PROPOSAL
Faith Y KuskoCanadaStephen Shaw QUALIFIED
Francesco U MarrierUnited KingdomAsiya Javayant RENEWAL
James R CampainGermanyElwin Sharvill RENEWAL
Morrow M CaudyAustraliaElwin Sharvill PROPOSAL
Greenwood A RulapaughIndiaElwin Sharvill UNQUALIFIED
Sinclair E OstroskyAustraliaAsiya Javayant PROPOSAL
Cody B TollnerFranceBernardo Dominic PROPOSAL
James K StockhamBrazilElwin Sharvill PROPOSAL
Jeanfrancois E AmigonSpainStephen Shaw NEGOTIATION
Alejandro E ChuiJapanAmy Elsner QUALIFIED
Greenwood Z OstroskyJapanAsiya Javayant NEGOTIATION
Emily T ButtSpainAsiya Javayant UNQUALIFIED
Murillo E GauchoAustraliaAnna Fali NEGOTIATION
Adams M MacleadFranceXuxue Feng UNQUALIFIED
Rodrigues W DilliardItalyOnyama Limba RENEWAL
Misaki K SlusarskiBrazilIvan Magalhaes RENEWAL
Munro E KuskoSpainIvan Magalhaes RENEWAL
Wickens R CampainFranceAsiya Javayant PROPOSAL
Juan K SchemmerSpainAnna Fali NEGOTIATION
Maria G NickaUnited KingdomIoni Bowcher NEW
Jennifer R SergiAustraliaStephen Shaw PROPOSAL
Murillo D DarakjyCanadaIoni Bowcher NEW
Aruna J DarakjyAustraliaAnna Fali RENEWAL
Chavez A FollerGermanyStephen Shaw RENEWAL
Kadeem X DilliardIndiaOnyama Limba NEGOTIATION
Juan Q KolmetzGermanyAmy Elsner PROPOSAL
David O SchemmerRussiaIoni Bowcher NEGOTIATION
Smith U InouyeIndiaElwin Sharvill PROPOSAL
Morrow L GauchoArgentinaIoni Bowcher QUALIFIED
Leja P AmigonCanadaOnyama Limba NEW
Juan N RoysterUnited KingdomIvan Magalhaes NEW
Kaitlin V GarufiBrazilXuxue Feng NEW
Jennifer V BriddickGermanyOnyama Limba NEW
Julie O NestleAustraliaOnyama Limba RENEWAL
Misaki V FollerArgentinaAsiya Javayant QUALIFIED
Aika C VenereBrazilAmy Elsner QUALIFIED
Maisha D DoeCanadaElwin Sharvill RENEWAL
Juan G FollerUnited KingdomAsiya Javayant UNQUALIFIED
David E NestleItalyBernardo Dominic UNQUALIFIED
Smith K CampainFranceElwin Sharvill RENEWAL
Faith A GlickFranceXuxue Feng NEGOTIATION
Emily J WaycottCanadaIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin Y OldroydUnited KingdomAsiya Javayant NEW
Sinclair X DilliardFranceXuxue Feng RENEWAL
Costa T MaletArgentinaIoni Bowcher RENEWAL
Jones C StensethArgentinaAmy Elsner PROPOSAL
Emily M PerinBrazilAnna Fali QUALIFIED
Maisha X IturbideGermanyAnna Fali UNQUALIFIED
Kadeem G GarufiFranceBernardo Dominic PROPOSAL
Adams D DoeCanadaAnna Fali RENEWAL
Kaitlin C SchemmerJapanStephen Shaw QUALIFIED
Isabel O MacleadBrazilBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa U MaletAustralia2024-05-17Feiner Bros RENEWAL6Anna Fali
1001Murillo D RoysterGermany2024-04-28Dorl, James J Esq NEGOTIATION90Ioni Bowcher
1002Maria L DoeFrance2024-05-19Chapman, Ross E Esq QUALIFIED54Ivan Magalhaes
1003Rodrigues R DoeJapan2024-05-05Benton, John B Jr PROPOSAL69Stephen Shaw
1004Arvin D BologniaSpain2024-05-22Morlong Associates RENEWAL45Bernardo Dominic
1005Clifford U FigeroaIndia2024-05-20Buckley Miller Wright NEW90Anna Fali
1006Mujtaba G GillianAustralia2024-05-06Rousseaux, Michael Esq UNQUALIFIED67Elwin Sharvill
1007Jennifer U PaprockiIndia2024-05-02Benton, John B Jr NEGOTIATION74Amy Elsner
1008Cody Y CaudyBrazil2024-05-14Chapman, Ross E Esq NEGOTIATION96Bernardo Dominic
1009Silvio C DoeRussia2024-04-28Morlong Associates QUALIFIED66Elwin Sharvill
1010David H RulapaughJapan2024-05-18Rangoni Of Florence UNQUALIFIED70Onyama Limba
1011Rodrigues W TollnerJapan2024-05-11Truhlar And Truhlar Attys QUALIFIED74Asiya Javayant
1012Juan L FlosiItaly2024-05-21Rousseaux, Michael Esq QUALIFIED68Bernardo Dominic
1013Kadeem H TollnerJapan2024-05-05Buckley Miller Wright QUALIFIED65Onyama Limba
1014Juan L ButtFrance2024-05-05Buckley Miller Wright RENEWAL37Bernardo Dominic
1015Rodrigues R KuskoSpain2024-05-04Feltz Printing Service NEGOTIATION66Anna Fali
1016Julie Y FigeroaJapan2024-05-09Commercial Press RENEWAL17Ioni Bowcher
1017Ricardo V DarakjyFrance2024-05-21Morlong Associates RENEWAL67Stephen Shaw
1018Deepesh G ButtBrazil2024-05-11Feltz Printing Service NEGOTIATION41Xuxue Feng
1019Nicolas F KolmetzRussia2024-05-05Buckley Miller Wright RENEWAL79Ivan Magalhaes
1020Emily A FollerArgentina2024-05-24Dorl, James J Esq PROPOSAL77Amy Elsner
1021Leja W GauchoJapan2024-04-30Feiner Bros QUALIFIED65Ivan Magalhaes
1022Jefferson A BologniaUnited Kingdom2024-04-28Commercial Press QUALIFIED1Amy Elsner
1023Ivar Q VocelkaCanada2024-05-19Feltz Printing Service NEW56Elwin Sharvill
1024Chavez B GauchoItaly2024-05-12Buckley Miller Wright PROPOSAL25Amy Elsner
1025Clifford Z MacleadArgentina2024-05-17Morlong Associates QUALIFIED20Elwin Sharvill
1026Leja D SchemmerUnited Kingdom2024-05-26Rangoni Of Florence NEGOTIATION51Onyama Limba
1027Smith B StockhamJapan2024-05-26Chapman, Ross E Esq NEW17Ioni Bowcher
1028Adams B RutaItaly2024-05-07Chapman, Ross E Esq PROPOSAL16Anna Fali
1029Darci G CampainRussia2024-05-04Rousseaux, Michael Esq NEGOTIATION41Xuxue Feng
1030Salvatore G GlickJapan2024-05-01Truhlar And Truhlar Attys RENEWAL83Ivan Magalhaes
1031Faith B AmigonFrance2024-05-23King, Christopher A Esq PROPOSAL49Ivan Magalhaes
1032Wickens B OstroskyIndia2024-05-05King, Christopher A Esq RENEWAL87Bernardo Dominic
1033Sinclair G FigeroaFrance2024-05-03Dorl, James J Esq PROPOSAL85Xuxue Feng
1034Julie H BologniaFrance2024-05-01Buckley Miller Wright PROPOSAL29Onyama Limba
1035Kaitlin Y SaylorsItaly2024-05-17Buckley Miller Wright NEGOTIATION67Stephen Shaw
1036Ricardo Y FollerFrance2024-04-29Morlong Associates PROPOSAL30Bernardo Dominic
1037Isabel F BowleyRussia2024-05-03Truhlar And Truhlar Attys NEW95Stephen Shaw
1038Sinclair N GauchoCanada2024-05-01Chapman, Ross E Esq PROPOSAL13Ioni Bowcher
1039Leon C StockhamArgentina2024-05-10Chapman, Ross E Esq UNQUALIFIED35Ivan Magalhaes
1040Maria R MarrierSpain2024-05-09Rousseaux, Michael Esq PROPOSAL40Amy Elsner
1041Misaki F CaudyJapan2024-05-06Benton, John B Jr RENEWAL76Amy Elsner
1042Misaki M CampainUnited Kingdom2024-05-18Feltz Printing Service NEGOTIATION10Xuxue Feng
1043Clifford O ChuiIndia2024-05-06Chapman, Ross E Esq RENEWAL33Xuxue Feng
1044Faith F ShinkoJapan2024-05-18Dorl, James J Esq RENEWAL26Amy Elsner
1045Chavez O TollnerGermany2024-05-20Morlong Associates RENEWAL97Stephen Shaw
1046Faith N BologniaFrance2024-05-11Rangoni Of Florence UNQUALIFIED22Xuxue Feng
1047Silvio T DarakjyIndia2024-04-30Printing Dimensions NEW7Anna Fali
1048Faith W AlbaresItaly2024-05-02Rangoni Of Florence RENEWAL35Asiya Javayant
1049Ashley K DilliardJapan2024-05-17Rousseaux, Michael Esq NEW4Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Nicolas F RutaCanadaAsiya Javayant NEW
Faith G PoquetteSpainAsiya Javayant NEW
Ricardo E RutaAustraliaAnna Fali NEW
Nicolas Y MarrierIndiaElwin Sharvill NEGOTIATION
Chavez V RimIndiaXuxue Feng NEW
Leja Y StockhamItalyOnyama Limba NEGOTIATION
Kaitlin K StensethJapanBernardo Dominic NEW
Ivar U SlusarskiAustraliaAmy Elsner UNQUALIFIED
Deepesh G OldroydGermanyXuxue Feng UNQUALIFIED
Maria A CaudyIndiaElwin Sharvill RENEWAL
James V SergiArgentinaAsiya Javayant UNQUALIFIED
Jennifer S MaletSpainOnyama Limba NEGOTIATION
Ashley V PerinGermanyIvan Magalhaes NEW
Wickens Z FigeroaSpainAsiya Javayant NEGOTIATION
Costa A NestleSpainAnna Fali PROPOSAL
Jefferson A DarakjyFranceBernardo Dominic UNQUALIFIED
Aika K DarakjySpainIoni Bowcher RENEWAL
Johnson M KuskoUnited KingdomAmy Elsner RENEWAL
Jones Q RoysterGermanyIoni Bowcher UNQUALIFIED
Isabel E NestleGermanyAsiya Javayant RENEWAL
Jennifer M MarrierRussiaIoni Bowcher UNQUALIFIED
Alejandro T PaprockiItalyAsiya Javayant NEGOTIATION
Jones A WieserCanadaXuxue Feng NEGOTIATION
Smith A TollnerIndiaAsiya Javayant NEGOTIATION
Kadeem R VenereCanadaBernardo Dominic PROPOSAL
Stacey Z WieserAustraliaIvan Magalhaes PROPOSAL
Deepesh L PerinRussiaStephen Shaw NEGOTIATION
Isabel I RutaUnited KingdomBernardo Dominic RENEWAL
Salvatore Y FerenczFranceStephen Shaw PROPOSAL
Maisha D SchemmerAustraliaStephen Shaw UNQUALIFIED
Jones P BowleyIndiaElwin Sharvill UNQUALIFIED
Stacey G ShinkoUnited KingdomAnna Fali QUALIFIED
Wickens D CaldareraAustraliaAsiya Javayant PROPOSAL
Deepesh V ChuiRussiaIvan Magalhaes PROPOSAL
Maisha R ButtFranceAmy Elsner PROPOSAL
Ashley M RoysterIndiaAnna Fali PROPOSAL
Smith N InouyeCanadaBernardo Dominic QUALIFIED
Leon K AmigonAustraliaIoni Bowcher NEGOTIATION
Munro U CaudySpainBernardo Dominic PROPOSAL
Isabel D TollnerArgentinaOnyama Limba RENEWAL
Ashley O VocelkaAustraliaAnna Fali RENEWAL
Faith T IturbideCanadaAnna Fali PROPOSAL
Antonio P BriddickFranceIoni Bowcher NEGOTIATION
Arvin A MarrierBrazilOnyama Limba UNQUALIFIED
Rodrigues O FollerItalyAnna Fali RENEWAL
Deepesh E SergiFranceXuxue Feng NEW
Izzy O GillianIndiaOnyama Limba NEW
Jones N StockhamItalyAsiya Javayant UNQUALIFIED
Aruna N MorascaCanadaXuxue Feng RENEWAL
Aditya Y IturbideSpainStephen Shaw RENEWAL
Frozen Columns
Name
Ricardo F Perin
Ashley D Nicka
Misaki F Kolmetz
Maria V Garufi
Leon T Inouye
Maisha W Gaucho
Leja L Malet
Morrow O Waycott
Aruna G Iturbide
Jennifer I Bolognia
Wickens M Slusarski
James V Bowley
Deepesh A Ruta
Morrow C Waycott
Octavia R Nestle
Greenwood L Venere
Rodrigues U Poquette
Rodrigues X Flosi
Antonio Q Nicka
Alejandro A Poquette
Sinclair Y Shinko
Juan A Doe
Sinclair G Whobrey
Adams K Nicka
Emily A Maclead
Aditya P Bowley
Wickens M Albares
Aika K Malet
Juan I Rulapaugh
Jefferson A Tollner
Cody O Wieser
Arvin J Malet
Jefferson L Venere
Clifford X Amigon
Deepesh K Vocelka
Maisha N Flosi
Aika E Slusarski
Jeanfrancois J Inouye
Chavez E Slusarski
Ivar O Bowley
Juan T Maclead
Alejandro T Garufi
Jennifer E Shinko
Ricardo O Rulapaugh
Tony T Campain
Aditya N Dilliard
Rodrigues S Ostrosky
Ashley W Caudy
Francesco V Briddick
Maria P Dilliard
IdCountryDate
1000Germany2024-05-02
1001Australia2024-05-25
1002Canada2024-05-25
1003Canada2024-05-10
1004Spain2024-05-17
1005France2024-05-20
1006Russia2024-04-29
1007Australia2024-05-08
1008Canada2024-04-30
1009Australia2024-05-09
1010Italy2024-05-11
1011United Kingdom2024-05-25
1012Italy2024-05-06
1013United Kingdom2024-04-29
1014Germany2024-05-19
1015India2024-05-22
1016Brazil2024-05-11
1017Germany2024-05-25
1018Germany2024-05-09
1019France2024-05-12
1020Spain2024-05-09
1021France2024-05-26
1022Spain2024-05-04
1023Brazil2024-05-01
1024Australia2024-05-18
1025France2024-05-06
1026Germany2024-05-08
1027France2024-05-24
1028Japan2024-05-20
1029Italy2024-05-13
1030Spain2024-05-03
1031Germany2024-05-04
1032Canada2024-05-05
1033France2024-05-17
1034Spain2024-05-10
1035Brazil2024-05-07
1036Argentina2024-05-22
1037Spain2024-05-15
1038United Kingdom2024-05-25
1039Japan2024-05-20
1040Italy2024-05-11
1041Russia2024-05-23
1042Australia2024-05-02
1043India2024-04-28
1044India2024-05-11
1045France2024-05-03
1046Australia2024-05-27
1047Germany2024-05-23
1048United Kingdom2024-05-24
1049Argentina2024-05-17

On-Demand Data

NameIdCountryDate
Kadeem J Schemmer1000India2024-05-10
Leja I Gillian1001Spain2024-05-20
Maria P Iturbide1002Brazil2024-05-05
Aika K Darakjy1003Brazil2024-05-22
Jeanfrancois I Rulapaugh1004Spain2024-04-29
Stacey Z Whobrey1005India2024-05-22
Leon T Waycott1006Japan2024-05-16
Aruna H Albares1007Spain2024-05-05
Johnson T Caldarera1008Russia2024-05-17
Greenwood X Inouye1009United Kingdom2024-05-19
Munro O Paprocki1010Brazil2024-05-05
Kadeem D Wieser1011Brazil2024-05-08
Mayumi W Figeroa1012India2024-05-26
Faith G Foller1013France2024-05-17
Ivar A Doe1014Russia2024-04-28
Wickens D Bowley1015Canada2024-04-30
Izzy G Sergi1016Brazil2024-05-26
Clifford R Perin1017Germany2024-05-15
Chavez P Bowley1018Argentina2024-05-01
James H Bolognia1019Argentina2024-05-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin K GarufiGermanyElwin Sharvill PROPOSAL
Nicolas P MaletJapanAnna Fali NEGOTIATION
Wickens R RutaFranceIoni Bowcher UNQUALIFIED
Ivar M PerinAustraliaIoni Bowcher NEGOTIATION
Costa J MaletFranceIoni Bowcher NEW
Ricardo R StensethFranceStephen Shaw RENEWAL
Munro B IturbideIndiaStephen Shaw NEGOTIATION
Cody J StensethAustraliaAmy Elsner NEGOTIATION
Jennifer I AlbaresUnited KingdomIvan Magalhaes PROPOSAL
Leon J ChuiArgentinaAsiya Javayant PROPOSAL
Francesco Z GauchoBrazilAmy Elsner NEW
Jeanfrancois N NestleAustraliaIvan Magalhaes NEW
Rodrigues V ButtGermanyIoni Bowcher PROPOSAL
Misaki A SaylorsGermanyXuxue Feng UNQUALIFIED
Aika H FigeroaSpainXuxue Feng RENEWAL
Izzy I RutaUnited KingdomOnyama Limba RENEWAL
Adams H KolmetzBrazilIvan Magalhaes NEGOTIATION
Ivar D OstroskyCanadaBernardo Dominic UNQUALIFIED
Izzy N ChuiRussiaAmy Elsner UNQUALIFIED
Silvio D TollnerAustraliaAmy Elsner PROPOSAL
Stacey U FlosiAustraliaIvan Magalhaes NEGOTIATION
Aditya W GillianAustraliaIvan Magalhaes UNQUALIFIED
Greenwood K BologniaItalyXuxue Feng UNQUALIFIED
Faith D PerinJapanIoni Bowcher NEGOTIATION
Ashley I SergiBrazilAmy Elsner PROPOSAL
David X WieserUnited KingdomIoni Bowcher NEGOTIATION
Sinclair H MacleadRussiaAmy Elsner QUALIFIED
Emily Z CampainItalyAmy Elsner UNQUALIFIED
Ashley A FlosiItalyIoni Bowcher PROPOSAL
Ivar Y BologniaCanadaBernardo Dominic NEGOTIATION
Jeanfrancois E MaletSpainIvan Magalhaes UNQUALIFIED
Deepesh W OldroydArgentinaElwin Sharvill NEGOTIATION
Mayumi M GarufiArgentinaBernardo Dominic PROPOSAL
Deepesh B FigeroaGermanyIvan Magalhaes RENEWAL
Mayumi M BriddickIndiaIvan Magalhaes UNQUALIFIED
Antonio A SergiCanadaAmy Elsner PROPOSAL
Kaitlin N MaletBrazilAnna Fali NEGOTIATION
Jones L DilliardGermanyBernardo Dominic PROPOSAL
Greenwood H DarakjyFranceOnyama Limba UNQUALIFIED
Stacey E ButtSpainAsiya Javayant 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>