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 B FigeroaJapanIoni Bowcher NEGOTIATION
Silvio I WhobreyRussiaStephen Shaw NEGOTIATION
Aika J GauchoBrazilXuxue Feng NEW
Julie D SchemmerBrazilAsiya Javayant NEGOTIATION
Faith H SergiAustraliaAsiya Javayant QUALIFIED
Faith L MacleadItalyBernardo Dominic PROPOSAL
Adams X GarufiJapanElwin Sharvill QUALIFIED
Maisha V StensethSpainAnna Fali UNQUALIFIED
Jones R FlosiCanadaElwin Sharvill NEW
Alejandro A WieserItalyIoni Bowcher RENEWAL
Wickens P TollnerUnited KingdomXuxue Feng NEW
Francesco E PerinJapanIvan Magalhaes PROPOSAL
Murillo H RimItalyIvan Magalhaes UNQUALIFIED
Faith G AlbaresGermanyOnyama Limba PROPOSAL
Jennifer X SergiSpainStephen Shaw RENEWAL
Jeanfrancois T BowleyCanadaIvan Magalhaes NEW
Jeanfrancois O TollnerUnited KingdomIvan Magalhaes UNQUALIFIED
Ashley D VocelkaArgentinaAmy Elsner NEW
Leon S DarakjyIndiaStephen Shaw RENEWAL
Aika M WhobreyJapanBernardo Dominic RENEWAL
Aditya K NickaSpainOnyama Limba NEW
Isabel P SergiSpainElwin Sharvill NEGOTIATION
Julie Z VenereGermanyIvan Magalhaes UNQUALIFIED
Ricardo R FlosiSpainStephen Shaw NEW
Izzy X RulapaughBrazilAnna Fali NEW
Kaitlin B PaprockiAustraliaOnyama Limba NEGOTIATION
Francesco Y StockhamFranceStephen Shaw QUALIFIED
Deepesh J DilliardAustraliaAsiya Javayant QUALIFIED
Izzy T GarufiArgentinaAnna Fali UNQUALIFIED
Mujtaba Y GarufiArgentinaXuxue Feng PROPOSAL
Cody T FlosiItalyOnyama Limba UNQUALIFIED
Silvio V NickaItalyAmy Elsner UNQUALIFIED
Emily Z NestleItalyAnna Fali PROPOSAL
Morrow F GarufiRussiaStephen Shaw NEW
Maria L VocelkaAustraliaIoni Bowcher PROPOSAL
Jefferson I ButtFranceStephen Shaw QUALIFIED
Faith I RoysterGermanyOnyama Limba PROPOSAL
Alejandro H ChuiArgentinaAnna Fali QUALIFIED
Mayumi Z RoysterFranceAsiya Javayant RENEWAL
Leja X DarakjyUnited KingdomAnna Fali QUALIFIED
Ivar P GarufiJapanOnyama Limba PROPOSAL
Darci A WaycottItalyStephen Shaw PROPOSAL
Jeanfrancois J ButtBrazilOnyama Limba RENEWAL
Arvin M TollnerArgentinaIvan Magalhaes RENEWAL
Silvio G GarufiBrazilElwin Sharvill RENEWAL
Darci M WaycottBrazilOnyama Limba NEGOTIATION
Claire O DoeSpainIoni Bowcher PROPOSAL
Misaki Y SlusarskiAustraliaAmy Elsner PROPOSAL
Octavia L OldroydJapanElwin Sharvill QUALIFIED
Ricardo A VocelkaRussiaAsiya Javayant NEW
Horizontal
NameCountryRepresentativeStatus
Izzy O CaudyCanadaElwin Sharvill NEGOTIATION
Chavez O PerinRussiaIvan Magalhaes NEW
Juan Q BriddickAustraliaAsiya Javayant UNQUALIFIED
Mujtaba J NestleFranceIvan Magalhaes RENEWAL
Munro Z InouyeCanadaStephen Shaw UNQUALIFIED
Arvin K SergiUnited KingdomElwin Sharvill NEW
James A GlickBrazilIoni Bowcher UNQUALIFIED
Alejandro D RimIndiaIoni Bowcher NEGOTIATION
Jeanfrancois D SaylorsItalyAsiya Javayant PROPOSAL
Emily A RoysterSpainIoni Bowcher RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois V IturbideArgentina2024-05-28Dorl, James J Esq UNQUALIFIED95Asiya Javayant
1001Octavia Y AlbaresGermany2024-05-27Buckley Miller Wright QUALIFIED86Onyama Limba
1002Misaki J MorascaFrance2024-06-20Feiner Bros QUALIFIED4Bernardo Dominic
1003Claire Y DoeRussia2024-06-07Chemel, James L Cpa PROPOSAL33Stephen Shaw
1004Kadeem A MaletItaly2024-06-19King, Christopher A Esq QUALIFIED61Anna Fali
1005Ashley A SchemmerAustralia2024-05-31Feltz Printing Service NEW92Ivan Magalhaes
1006Leon W StockhamItaly2024-06-08Chanay, Jeffrey A Esq QUALIFIED73Anna Fali
1007Chavez O RulapaughSpain2024-06-14Benton, John B Jr NEW72Asiya Javayant
1008Cody U StensethBrazil2024-05-31Truhlar And Truhlar Attys NEGOTIATION36Ioni Bowcher
1009Francesco B SlusarskiArgentina2024-06-05Feiner Bros QUALIFIED49Ivan Magalhaes
1010Faith X KuskoBrazil2024-06-02Truhlar And Truhlar Attys QUALIFIED41Ivan Magalhaes
1011Kadeem T OldroydIndia2024-06-02Benton, John B Jr NEW76Asiya Javayant
1012Julie J RutaRussia2024-05-27Chanay, Jeffrey A Esq NEW8Anna Fali
1013Jennifer V WieserJapan2024-05-29Rousseaux, Michael Esq UNQUALIFIED42Bernardo Dominic
1014Jennifer Q WaycottUnited Kingdom2024-06-17Printing Dimensions NEW80Bernardo Dominic
1015Munro Y ShinkoIndia2024-05-30Chanay, Jeffrey A Esq NEGOTIATION21Xuxue Feng
1016Claire Z MaletIndia2024-06-17Dorl, James J Esq NEGOTIATION53Xuxue Feng
1017Salvatore X BowleyGermany2024-05-26Rangoni Of Florence QUALIFIED86Ivan Magalhaes
1018James T PaprockiCanada2024-06-15Commercial Press QUALIFIED22Xuxue Feng
1019Wickens L SlusarskiCanada2024-05-31Commercial Press QUALIFIED37Stephen Shaw
1020Aruna I DoeItaly2024-06-08Dorl, James J Esq NEGOTIATION74Ioni Bowcher
1021Chavez A FerenczAustralia2024-05-30Rousseaux, Michael Esq NEGOTIATION76Stephen Shaw
1022Jefferson T SlusarskiGermany2024-06-14Chapman, Ross E Esq UNQUALIFIED63Elwin Sharvill
1023Jennifer O RutaUnited Kingdom2024-06-17Rangoni Of Florence NEW18Elwin Sharvill
1024Claire D TollnerBrazil2024-06-17Feiner Bros PROPOSAL62Anna Fali
1025Chavez L InouyeFrance2024-06-23Dorl, James J Esq UNQUALIFIED90Onyama Limba
1026Ashley X BowleyGermany2024-06-16Morlong Associates NEGOTIATION80Asiya Javayant
1027Maria L MacleadArgentina2024-06-01Rousseaux, Michael Esq UNQUALIFIED29Elwin Sharvill
1028Antonio L WhobreyArgentina2024-05-29King, Christopher A Esq UNQUALIFIED68Bernardo Dominic
1029Maria E PoquetteFrance2024-06-17Chanay, Jeffrey A Esq NEGOTIATION18Ivan Magalhaes
1030Jennifer T PaprockiIndia2024-06-11Printing Dimensions UNQUALIFIED69Ioni Bowcher
1031Wickens X IturbideBrazil2024-06-05Chapman, Ross E Esq QUALIFIED58Elwin Sharvill
1032Mujtaba S MaletJapan2024-06-19Commercial Press RENEWAL49Amy Elsner
1033Jones G CaudyAustralia2024-06-18Printing Dimensions NEGOTIATION3Bernardo Dominic
1034Izzy A SlusarskiRussia2024-06-09Rangoni Of Florence NEW59Stephen Shaw
1035Maisha J BowleyRussia2024-05-28Chanay, Jeffrey A Esq NEGOTIATION86Anna Fali
1036Aditya R CaudyGermany2024-05-26Benton, John B Jr RENEWAL9Stephen Shaw
1037Stacey F PaprockiFrance2024-06-05Chapman, Ross E Esq NEGOTIATION7Ioni Bowcher
1038Ashley W BriddickArgentina2024-05-30Commercial Press RENEWAL82Stephen Shaw
1039Johnson Y FerenczItaly2024-06-16Rousseaux, Michael Esq UNQUALIFIED43Stephen Shaw
1040Stacey A NestleCanada2024-06-04Printing Dimensions NEGOTIATION29Ioni Bowcher
1041Leon C RulapaughBrazil2024-06-10Dorl, James J Esq QUALIFIED83Elwin Sharvill
1042Jones X BologniaJapan2024-06-05King, Christopher A Esq RENEWAL98Bernardo Dominic
1043Ashley R FollerBrazil2024-05-31Rousseaux, Michael Esq QUALIFIED15Amy Elsner
1044James H CaldareraJapan2024-06-21Printing Dimensions NEW37Anna Fali
1045Ashley H DilliardUnited Kingdom2024-05-27Feltz Printing Service UNQUALIFIED95Bernardo Dominic
1046Aika C SaylorsIndia2024-06-13Feltz Printing Service UNQUALIFIED45Elwin Sharvill
1047Claire K ShinkoGermany2024-06-20Printing Dimensions UNQUALIFIED74Bernardo Dominic
1048Aditya P DoeFrance2024-06-10Benton, John B Jr UNQUALIFIED16Elwin Sharvill
1049Leon P RoysterAustralia2024-05-25Chanay, Jeffrey A Esq NEGOTIATION89Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
James V OstroskyJapanAnna Fali RENEWAL
James I BowleyCanadaAmy Elsner QUALIFIED
Jennifer V TollnerAustraliaElwin Sharvill NEW
Jefferson X OldroydItalyAmy Elsner QUALIFIED
Cody A TollnerCanadaAnna Fali NEW
Jefferson N MarrierJapanAsiya Javayant NEGOTIATION
Maisha W SchemmerBrazilIoni Bowcher PROPOSAL
Darci D MacleadRussiaIvan Magalhaes NEW
Mujtaba B ShinkoCanadaIoni Bowcher RENEWAL
Salvatore R ChuiCanadaStephen Shaw UNQUALIFIED
Faith B FollerAustraliaElwin Sharvill NEGOTIATION
Chavez K CaudyJapanIoni Bowcher NEGOTIATION
Greenwood D DarakjyGermanyAsiya Javayant PROPOSAL
Julie A ChuiArgentinaAsiya Javayant PROPOSAL
Darci U CampainGermanyAsiya Javayant PROPOSAL
Maisha J VocelkaGermanyAmy Elsner UNQUALIFIED
Adams Z RoysterBrazilOnyama Limba NEW
Costa L FerenczJapanStephen Shaw PROPOSAL
Chavez Z WieserGermanyIvan Magalhaes QUALIFIED
Jones X CaldareraAustraliaElwin Sharvill NEGOTIATION
Chavez D MorascaCanadaXuxue Feng QUALIFIED
Clifford W CampainAustraliaStephen Shaw PROPOSAL
Greenwood U ChuiJapanStephen Shaw NEGOTIATION
Maisha Y NickaCanadaBernardo Dominic RENEWAL
Antonio I PoquetteIndiaElwin Sharvill UNQUALIFIED
Silvio Z FlosiItalyBernardo Dominic QUALIFIED
Silvio V InouyeBrazilAmy Elsner NEW
Costa R DarakjyUnited KingdomOnyama Limba QUALIFIED
Mayumi E InouyeRussiaOnyama Limba RENEWAL
Sinclair V StockhamAustraliaAsiya Javayant QUALIFIED
Ashley S KuskoGermanyIvan Magalhaes UNQUALIFIED
Arvin H DilliardIndiaXuxue Feng UNQUALIFIED
Chavez A DoeFranceOnyama Limba UNQUALIFIED
Arvin R IturbideBrazilXuxue Feng NEW
Cody L BologniaItalyAnna Fali UNQUALIFIED
Jeanfrancois T RutaCanadaAnna Fali NEW
Murillo U AmigonJapanStephen Shaw PROPOSAL
Murillo F InouyeUnited KingdomAmy Elsner RENEWAL
Tony F BologniaGermanyOnyama Limba NEGOTIATION
Ivar R RoysterArgentinaElwin Sharvill UNQUALIFIED
Johnson A CaldareraUnited KingdomElwin Sharvill QUALIFIED
Stacey I ShinkoArgentinaElwin Sharvill UNQUALIFIED
Cody I MorascaJapanIvan Magalhaes PROPOSAL
Julie K AmigonBrazilAnna Fali RENEWAL
Mayumi K ShinkoBrazilAsiya Javayant RENEWAL
Juan E RoysterFranceAnna Fali RENEWAL
Jones U RimIndiaAmy Elsner NEGOTIATION
Wickens B GillianSpainIvan Magalhaes QUALIFIED
Octavia F MorascaRussiaIoni Bowcher PROPOSAL
Darci P FollerCanadaIoni Bowcher UNQUALIFIED
Frozen Columns
Name
Maisha Q Iturbide
Mujtaba X Caudy
Alejandro O Kusko
Antonio G Iturbide
Emily Z Shinko
Morrow H Campain
Jones Q Saylors
Maisha Q Poquette
Ricardo A Nicka
Aditya M Gaucho
Cody M Amigon
Jefferson U Tollner
Cody Z Marrier
Darci E Flosi
Octavia I Caldarera
Antonio R Butt
Kadeem O Gaucho
Nicolas V Kolmetz
Nicolas H Stockham
Faith N Saylors
Mujtaba T Kusko
Jennifer O Flosi
Silvio A Nestle
Chavez M Saylors
Costa B Slusarski
Silvio G Ferencz
Claire R Kolmetz
Deepesh R Maclead
Sinclair X Royster
Kadeem J Rulapaugh
Mayumi K Perin
Leon O Rulapaugh
Alejandro R Venere
Izzy K Marrier
Johnson Y Ruta
James V Inouye
Stacey S Rim
Kadeem A Stockham
Jennifer O Shinko
Greenwood I Saylors
Mayumi W Ferencz
Jefferson E Nicka
Leja J Foller
Aditya B Gillian
Stacey L Slusarski
Faith P Iturbide
Arvin Q Butt
Faith S Chui
Murillo V Gaucho
Nicolas D Malet
IdCountryDate
1000France2024-06-04
1001Italy2024-06-20
1002United Kingdom2024-06-21
1003Germany2024-06-21
1004United Kingdom2024-06-15
1005France2024-06-19
1006France2024-06-20
1007Japan2024-06-19
1008India2024-06-06
1009Italy2024-06-23
1010Spain2024-06-14
1011Japan2024-06-19
1012Germany2024-05-26
1013Brazil2024-06-21
1014Germany2024-06-23
1015Germany2024-05-31
1016United Kingdom2024-06-11
1017India2024-06-09
1018India2024-06-03
1019Brazil2024-06-03
1020Canada2024-06-19
1021India2024-06-23
1022France2024-06-02
1023India2024-05-25
1024Canada2024-06-09
1025United Kingdom2024-06-13
1026United Kingdom2024-06-02
1027Italy2024-06-15
1028France2024-06-11
1029Spain2024-05-29
1030Japan2024-05-25
1031Australia2024-06-06
1032Italy2024-06-01
1033Australia2024-06-10
1034Canada2024-06-05
1035Australia2024-06-01
1036Canada2024-06-23
1037Spain2024-06-21
1038Italy2024-05-31
1039United Kingdom2024-06-11
1040Italy2024-06-09
1041Russia2024-05-26
1042Germany2024-05-28
1043Japan2024-06-17
1044France2024-06-14
1045India2024-06-06
1046Brazil2024-06-10
1047Germany2024-06-03
1048Japan2024-05-31
1049France2024-06-05

On-Demand Data

NameIdCountryDate
Maria F Caudy1000Brazil2024-05-25
Misaki Y Nestle1001Australia2024-05-28
Maria W Vocelka1002India2024-05-31
Rodrigues E Briddick1003Germany2024-06-01
David Z Inouye1004Australia2024-06-08
Jeanfrancois C Gaucho1005Spain2024-05-26
Antonio W Flosi1006France2024-06-10
Cody Y Caudy1007Spain2024-06-13
Cody Z Rulapaugh1008United Kingdom2024-06-04
Rodrigues B Waycott1009Germany2024-05-31
Maisha A Marrier1010Spain2024-06-12
Wickens C Iturbide1011Italy2024-06-11
Juan Z Dilliard1012Brazil2024-06-13
Ricardo R Caldarera1013Canada2024-06-17
Jones Q Briddick1014United Kingdom2024-06-05
Chavez S Kolmetz1015Japan2024-06-06
Maisha T Slusarski1016Japan2024-05-30
David M Whobrey1017United Kingdom2024-06-04
Claire N Stenseth1018Australia2024-06-01
Ashley Z Stenseth1019Spain2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio K VocelkaFranceBernardo Dominic PROPOSAL
Jones H MaletItalyAsiya Javayant UNQUALIFIED
Maisha Q AlbaresRussiaBernardo Dominic NEGOTIATION
Maisha F MacleadJapanIvan Magalhaes PROPOSAL
Stacey T PaprockiItalyIoni Bowcher PROPOSAL
Munro N GlickItalyAmy Elsner NEGOTIATION
Claire E WaycottArgentinaElwin Sharvill QUALIFIED
Darci M MaletArgentinaBernardo Dominic UNQUALIFIED
Isabel T DoeItalyAmy Elsner PROPOSAL
Kadeem N AmigonFranceXuxue Feng PROPOSAL
Aika I GlickRussiaAmy Elsner RENEWAL
Aika L CaldareraBrazilIvan Magalhaes RENEWAL
Octavia X OstroskySpainIvan Magalhaes RENEWAL
Juan K BriddickArgentinaAsiya Javayant PROPOSAL
Faith P RoysterCanadaAmy Elsner NEW
Ivar S WieserUnited KingdomAsiya Javayant NEW
Leja U FerenczUnited KingdomAmy Elsner NEW
Antonio L GauchoIndiaAsiya Javayant NEGOTIATION
Claire M WhobreyItalyBernardo Dominic NEGOTIATION
Claire M KolmetzGermanyIoni Bowcher RENEWAL
Nicolas N MaletJapanStephen Shaw QUALIFIED
Claire K NestleIndiaAnna Fali RENEWAL
Sinclair M StensethGermanyAsiya Javayant UNQUALIFIED
Stacey G SergiGermanyAmy Elsner NEGOTIATION
Costa J DarakjyArgentinaElwin Sharvill NEGOTIATION
Maria H SaylorsGermanyIoni Bowcher RENEWAL
Kadeem L GillianGermanyBernardo Dominic PROPOSAL
Francesco K AlbaresUnited KingdomElwin Sharvill NEW
Cody S NickaJapanElwin Sharvill NEW
Mujtaba I MorascaCanadaAsiya Javayant RENEWAL
Ashley W KuskoRussiaStephen Shaw PROPOSAL
Deepesh D DarakjySpainAsiya Javayant QUALIFIED
Mayumi S SergiUnited KingdomXuxue Feng NEGOTIATION
Aditya D MacleadRussiaAsiya Javayant NEGOTIATION
Misaki Y GarufiRussiaElwin Sharvill NEW
Juan U RutaJapanAnna Fali QUALIFIED
Emily P VocelkaBrazilIoni Bowcher QUALIFIED
Clifford Y ChuiBrazilStephen Shaw QUALIFIED
Munro J SchemmerArgentinaElwin Sharvill RENEWAL
Mayumi F NestleBrazilStephen Shaw NEW

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