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
Claire R BowleyItalyIoni Bowcher QUALIFIED
Wickens L DilliardSpainXuxue Feng NEGOTIATION
Aditya D KuskoAustraliaElwin Sharvill PROPOSAL
Octavia G RoysterGermanyOnyama Limba PROPOSAL
David H GarufiGermanyStephen Shaw NEW
Jeanfrancois Q WaycottGermanyElwin Sharvill RENEWAL
Alejandro D CampainAustraliaIoni Bowcher NEGOTIATION
Stacey Y SchemmerFranceAnna Fali PROPOSAL
Claire F VocelkaIndiaElwin Sharvill UNQUALIFIED
Leja F RimItalyIvan Magalhaes QUALIFIED
Octavia W DilliardGermanyStephen Shaw UNQUALIFIED
Mujtaba Z MaletBrazilAnna Fali QUALIFIED
Jones C GauchoJapanIoni Bowcher UNQUALIFIED
Octavia F GarufiJapanXuxue Feng NEW
Wickens A ButtFranceXuxue Feng UNQUALIFIED
Ashley W KuskoArgentinaBernardo Dominic QUALIFIED
Aika H StensethIndiaIoni Bowcher QUALIFIED
Chavez D FigeroaFranceStephen Shaw QUALIFIED
Deepesh K KolmetzRussiaOnyama Limba UNQUALIFIED
Izzy K StockhamUnited KingdomIoni Bowcher NEW
Silvio N InouyeUnited KingdomElwin Sharvill NEGOTIATION
Murillo V StensethItalyOnyama Limba PROPOSAL
Wickens Q VocelkaUnited KingdomIvan Magalhaes PROPOSAL
Kaitlin S NestleIndiaXuxue Feng UNQUALIFIED
Nicolas E PaprockiArgentinaXuxue Feng RENEWAL
Jeanfrancois Z GillianCanadaOnyama Limba RENEWAL
Jeanfrancois H VenereAustraliaElwin Sharvill PROPOSAL
Cody K InouyeItalyElwin Sharvill NEGOTIATION
Aruna K BriddickCanadaElwin Sharvill RENEWAL
Juan Z PaprockiSpainIvan Magalhaes QUALIFIED
Wickens M VocelkaUnited KingdomAsiya Javayant RENEWAL
James V ChuiIndiaAmy Elsner NEW
Francesco R FollerJapanBernardo Dominic QUALIFIED
Ricardo S OldroydBrazilStephen Shaw NEGOTIATION
Murillo T RoysterIndiaAmy Elsner PROPOSAL
Alejandro T BologniaCanadaXuxue Feng UNQUALIFIED
Kaitlin W RulapaughItalyIoni Bowcher UNQUALIFIED
Stacey L KolmetzFranceAnna Fali PROPOSAL
Alejandro E SaylorsArgentinaIvan Magalhaes RENEWAL
Wickens H MaletUnited KingdomStephen Shaw NEW
Kadeem U GillianGermanyXuxue Feng UNQUALIFIED
Ivar Y InouyeAustraliaAmy Elsner NEW
Ivar O InouyeCanadaAmy Elsner UNQUALIFIED
Silvio V IturbideRussiaAnna Fali UNQUALIFIED
Leja V KolmetzSpainStephen Shaw RENEWAL
Rodrigues E FigeroaSpainStephen Shaw RENEWAL
Greenwood A StensethGermanyElwin Sharvill RENEWAL
Maria B AlbaresFranceElwin Sharvill QUALIFIED
Sinclair U GlickSpainStephen Shaw NEW
Johnson C PerinGermanyIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Costa F PoquetteFranceElwin Sharvill RENEWAL
David Z WieserCanadaElwin Sharvill PROPOSAL
Morrow F AlbaresSpainElwin Sharvill NEW
Izzy P InouyeUnited KingdomBernardo Dominic PROPOSAL
Francesco S RoysterSpainStephen Shaw PROPOSAL
Octavia Y CampainGermanyBernardo Dominic QUALIFIED
Juan K PoquetteJapanAmy Elsner NEGOTIATION
Izzy Y MarrierJapanIoni Bowcher RENEWAL
Izzy H SchemmerUnited KingdomAsiya Javayant PROPOSAL
Morrow Z KuskoItalyStephen Shaw UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens E SchemmerJapan2024-05-27Rangoni Of Florence QUALIFIED23Onyama Limba
1001Julie S SlusarskiItaly2024-05-27Feltz Printing Service NEW57Ivan Magalhaes
1002Ivar N RutaBrazil2024-06-09Rousseaux, Michael Esq PROPOSAL69Ioni Bowcher
1003Misaki H NickaJapan2024-06-20Chanay, Jeffrey A Esq UNQUALIFIED54Asiya Javayant
1004Greenwood E OstroskySpain2024-06-08Feltz Printing Service NEW90Bernardo Dominic
1005Nicolas M KolmetzUnited Kingdom2024-05-26Rousseaux, Michael Esq NEGOTIATION91Anna Fali
1006Deepesh N PaprockiIndia2024-06-05Rousseaux, Michael Esq UNQUALIFIED24Anna Fali
1007Isabel X MaletJapan2024-06-18Chanay, Jeffrey A Esq PROPOSAL54Bernardo Dominic
1008Aditya C OldroydUnited Kingdom2024-06-17Feiner Bros UNQUALIFIED8Onyama Limba
1009Stacey M CaldareraSpain2024-06-11Printing Dimensions QUALIFIED29Anna Fali
1010Kaitlin Q BologniaIndia2024-05-26Buckley Miller Wright QUALIFIED62Amy Elsner
1011Deepesh G TollnerAustralia2024-06-19Benton, John B Jr PROPOSAL47Anna Fali
1012Ashley C GlickGermany2024-06-06Chanay, Jeffrey A Esq PROPOSAL16Stephen Shaw
1013Francesco Y DilliardRussia2024-06-17Truhlar And Truhlar Attys RENEWAL43Anna Fali
1014Ricardo G RulapaughBrazil2024-06-15King, Christopher A Esq NEGOTIATION56Onyama Limba
1015Aditya C StensethItaly2024-06-20Chanay, Jeffrey A Esq NEW72Anna Fali
1016Morrow P SaylorsSpain2024-06-04Rangoni Of Florence UNQUALIFIED71Stephen Shaw
1017Nicolas J SaylorsFrance2024-06-17Feiner Bros NEGOTIATION61Amy Elsner
1018Maisha X FollerUnited Kingdom2024-06-01King, Christopher A Esq RENEWAL33Stephen Shaw
1019Leja G RoysterIndia2024-05-31Commercial Press UNQUALIFIED65Xuxue Feng
1020Jeanfrancois P GlickItaly2024-05-29Buckley Miller Wright NEW0Stephen Shaw
1021Alejandro J GauchoJapan2024-06-16Chanay, Jeffrey A Esq NEGOTIATION24Bernardo Dominic
1022Jeanfrancois Z DarakjySpain2024-06-05King, Christopher A Esq PROPOSAL77Elwin Sharvill
1023Aruna D OstroskyCanada2024-06-20King, Christopher A Esq RENEWAL13Asiya Javayant
1024Isabel A CaldareraCanada2024-05-24Commercial Press UNQUALIFIED37Ivan Magalhaes
1025Faith D CaudyCanada2024-06-18Morlong Associates RENEWAL20Asiya Javayant
1026Jones W VenereAustralia2024-06-14Rangoni Of Florence RENEWAL0Ivan Magalhaes
1027David R MaletSpain2024-05-29King, Christopher A Esq UNQUALIFIED69Ioni Bowcher
1028Mujtaba X ShinkoUnited Kingdom2024-06-12Feiner Bros NEW54Stephen Shaw
1029Stacey A OldroydFrance2024-06-01Feiner Bros UNQUALIFIED22Anna Fali
1030Munro W GlickCanada2024-05-25Benton, John B Jr NEGOTIATION23Elwin Sharvill
1031Greenwood F FerenczUnited Kingdom2024-06-13Feiner Bros UNQUALIFIED50Elwin Sharvill
1032Tony I BologniaRussia2024-05-27Dorl, James J Esq RENEWAL78Ivan Magalhaes
1033Arvin E PaprockiSpain2024-06-02Commercial Press NEGOTIATION35Ioni Bowcher
1034Johnson Y KuskoIndia2024-05-31Rangoni Of Florence QUALIFIED58Amy Elsner
1035Chavez J CaudyAustralia2024-06-13Benton, John B Jr NEGOTIATION33Onyama Limba
1036Munro A FollerGermany2024-05-28Feltz Printing Service RENEWAL65Onyama Limba
1037Chavez J FollerBrazil2024-06-13Rousseaux, Michael Esq UNQUALIFIED72Asiya Javayant
1038Isabel V OldroydRussia2024-06-18Chemel, James L Cpa NEGOTIATION44Asiya Javayant
1039Tony X GauchoArgentina2024-06-02Chemel, James L Cpa NEGOTIATION64Stephen Shaw
1040Johnson V GlickJapan2024-06-13Benton, John B Jr UNQUALIFIED99Xuxue Feng
1041James Z SchemmerRussia2024-06-19Chapman, Ross E Esq NEW73Elwin Sharvill
1042Mayumi V FerenczArgentina2024-06-17Dorl, James J Esq UNQUALIFIED93Onyama Limba
1043Jeanfrancois Y GlickUnited Kingdom2024-06-13Dorl, James J Esq QUALIFIED69Onyama Limba
1044Alejandro R MacleadCanada2024-06-05Buckley Miller Wright PROPOSAL15Asiya Javayant
1045Leon H WieserAustralia2024-05-24Morlong Associates NEGOTIATION75Xuxue Feng
1046Jones R GauchoSpain2024-06-07Dorl, James J Esq UNQUALIFIED24Elwin Sharvill
1047Darci H DilliardIndia2024-05-26Morlong Associates QUALIFIED96Ivan Magalhaes
1048Sinclair V GauchoIndia2024-06-15Morlong Associates UNQUALIFIED9Asiya Javayant
1049Cody J GarufiArgentina2024-06-11Chapman, Ross E Esq PROPOSAL99Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Izzy E WieserGermanyOnyama Limba UNQUALIFIED
Salvatore B OstroskyAustraliaBernardo Dominic NEGOTIATION
Wickens N OldroydItalyIvan Magalhaes NEW
Alejandro I ShinkoBrazilElwin Sharvill UNQUALIFIED
Jeanfrancois Z MaletIndiaIvan Magalhaes PROPOSAL
Jennifer X FollerJapanOnyama Limba PROPOSAL
Nicolas B BriddickBrazilIvan Magalhaes NEW
Cody P ShinkoCanadaAnna Fali QUALIFIED
Francesco D FlosiGermanyBernardo Dominic UNQUALIFIED
Johnson K WaycottItalyAsiya Javayant QUALIFIED
Wickens V WhobreyAustraliaBernardo Dominic PROPOSAL
Aditya V MaletUnited KingdomOnyama Limba PROPOSAL
Salvatore J NestleCanadaAsiya Javayant PROPOSAL
Salvatore M TollnerArgentinaAmy Elsner NEGOTIATION
Faith U GillianIndiaIvan Magalhaes RENEWAL
Aruna N ChuiUnited KingdomAmy Elsner PROPOSAL
Costa X PoquetteUnited KingdomIvan Magalhaes PROPOSAL
Aruna M GauchoSpainBernardo Dominic PROPOSAL
Kaitlin X KolmetzSpainAnna Fali NEW
Ashley S FigeroaGermanyAnna Fali RENEWAL
Silvio X DoeBrazilAnna Fali RENEWAL
Jones X MorascaAustraliaIvan Magalhaes PROPOSAL
Arvin O GarufiUnited KingdomElwin Sharvill UNQUALIFIED
Munro Z SergiIndiaOnyama Limba RENEWAL
Rodrigues O WhobreyRussiaIvan Magalhaes QUALIFIED
Maria K FigeroaItalyStephen Shaw RENEWAL
Jefferson H BologniaJapanAnna Fali RENEWAL
Misaki X SaylorsBrazilAnna Fali NEW
Emily L FollerAustraliaBernardo Dominic NEGOTIATION
Deepesh P FerenczIndiaIoni Bowcher RENEWAL
Mayumi Y DoeGermanyStephen Shaw QUALIFIED
Kadeem U GillianFranceElwin Sharvill UNQUALIFIED
Chavez Z RimArgentinaOnyama Limba NEW
Leja V DarakjyUnited KingdomBernardo Dominic NEW
Nicolas Z RimFranceElwin Sharvill NEGOTIATION
Jefferson W MorascaGermanyIvan Magalhaes PROPOSAL
Jeanfrancois K VenereUnited KingdomStephen Shaw NEGOTIATION
Kaitlin V NestleRussiaIvan Magalhaes NEGOTIATION
Kadeem M DoeSpainAsiya Javayant RENEWAL
Cody D PerinFranceIvan Magalhaes RENEWAL
Jefferson W DoeAustraliaAsiya Javayant RENEWAL
Leja M NestleAustraliaAsiya Javayant NEGOTIATION
Aditya E BologniaJapanBernardo Dominic QUALIFIED
Maria R DoeCanadaAnna Fali NEW
Mayumi C CaldareraArgentinaElwin Sharvill PROPOSAL
Ivar C GillianFranceOnyama Limba NEW
Stacey H RoysterUnited KingdomAsiya Javayant RENEWAL
Morrow F TollnerIndiaStephen Shaw RENEWAL
Stacey Q KuskoFranceIoni Bowcher NEW
James H KuskoUnited KingdomOnyama Limba UNQUALIFIED
Frozen Columns
Name
Jones G Kusko
Costa Z Stenseth
Jefferson I Briddick
Emily G Saylors
Aruna W Foller
Morrow P Kolmetz
Izzy N Bolognia
Juan Q Kusko
Julie Z Rim
Misaki Y Shinko
Claire U Campain
Aika W Saylors
Aditya F Ferencz
Munro J Bowley
Darci X Kusko
Juan R Saylors
Darci L Vocelka
Kaitlin Y Stockham
James U Kolmetz
Maisha H Poquette
Darci O Chui
Ivar U Whobrey
Maisha S Rulapaugh
Emily J Malet
Sinclair L Kusko
Johnson Y Inouye
Stacey J Royster
Sinclair J Tollner
Maisha P Inouye
Rodrigues O Nicka
Chavez Z Bowley
Silvio P Ruta
Francesco P Glick
Jennifer P Venere
Mujtaba B Inouye
Claire S Schemmer
Kadeem O Stenseth
Juan J Nestle
Ivar V Caudy
Mujtaba O Amigon
Rodrigues R Whobrey
Emily H Rim
Antonio F Albares
Octavia Y Albares
Darci I Caldarera
Tony R Stockham
Murillo S Waycott
Faith U Kolmetz
Silvio N Whobrey
Ricardo L Stockham
IdCountryDate
1000Brazil2024-05-31
1001Italy2024-06-10
1002Russia2024-06-11
1003Spain2024-06-18
1004Russia2024-06-06
1005Australia2024-06-04
1006United Kingdom2024-06-22
1007Japan2024-05-31
1008India2024-05-30
1009Italy2024-06-18
1010Argentina2024-06-11
1011United Kingdom2024-06-12
1012Canada2024-06-06
1013Japan2024-06-09
1014India2024-06-09
1015Italy2024-05-31
1016Australia2024-05-29
1017Italy2024-06-22
1018Australia2024-06-18
1019India2024-06-11
1020Spain2024-06-11
1021Australia2024-06-21
1022United Kingdom2024-06-16
1023Spain2024-06-15
1024Brazil2024-06-15
1025Italy2024-05-24
1026France2024-06-16
1027Brazil2024-05-26
1028India2024-06-21
1029Canada2024-06-10
1030Australia2024-06-01
1031Australia2024-06-16
1032Japan2024-06-13
1033France2024-05-24
1034France2024-06-08
1035Germany2024-06-21
1036Italy2024-06-14
1037Spain2024-06-10
1038France2024-05-26
1039Spain2024-05-28
1040Italy2024-06-09
1041Argentina2024-06-17
1042Spain2024-06-04
1043Argentina2024-06-04
1044Argentina2024-06-18
1045India2024-05-25
1046Argentina2024-06-02
1047Argentina2024-05-26
1048India2024-06-17
1049Italy2024-06-12

On-Demand Data

NameIdCountryDate
Deepesh H Poquette1000Argentina2024-06-17
Jennifer I Nestle1001Russia2024-06-06
Faith K Iturbide1002Australia2024-06-09
Silvio Z Saylors1003France2024-06-04
Jones U Dilliard1004Japan2024-06-17
Murillo I Rulapaugh1005France2024-06-10
Morrow Y Ferencz1006Italy2024-06-21
Deepesh U Rim1007United Kingdom2024-06-20
Mayumi G Rim1008Russia2024-06-08
Maria J Bowley1009Japan2024-05-27
Claire Y Malet1010Italy2024-06-20
Francesco Z Glick1011Canada2024-06-10
Greenwood T Shinko1012Japan2024-06-02
Kaitlin C Morasca1013India2024-06-22
Mujtaba I Campain1014Brazil2024-06-05
Izzy R Paprocki1015Russia2024-05-31
Aditya R Flosi1016Italy2024-06-11
Salvatore V Sergi1017United Kingdom2024-06-12
Leja U Gillian1018Australia2024-06-16
Jefferson D Kolmetz1019Spain2024-06-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja E MorascaItalyStephen Shaw RENEWAL
Morrow M SergiAustraliaAmy Elsner NEW
Maria G MaletFranceStephen Shaw QUALIFIED
Nicolas S CampainIndiaIoni Bowcher UNQUALIFIED
Munro U AmigonSpainStephen Shaw QUALIFIED
Francesco T FlosiSpainElwin Sharvill QUALIFIED
Claire C GillianBrazilIvan Magalhaes NEW
Jefferson V DoeFranceAmy Elsner NEW
Sinclair M BologniaGermanyXuxue Feng UNQUALIFIED
Antonio B DoeAustraliaAsiya Javayant RENEWAL
Greenwood Z WhobreyCanadaAmy Elsner QUALIFIED
Maisha T MacleadAustraliaXuxue Feng QUALIFIED
Claire T StockhamAustraliaAsiya Javayant NEW
Aika A VocelkaUnited KingdomStephen Shaw UNQUALIFIED
Kaitlin B StockhamArgentinaStephen Shaw NEW
Mayumi A KuskoCanadaStephen Shaw UNQUALIFIED
Rodrigues M DilliardGermanyAmy Elsner PROPOSAL
Costa J GarufiArgentinaXuxue Feng UNQUALIFIED
Cody Z SergiRussiaIoni Bowcher PROPOSAL
Alejandro N FigeroaSpainAnna Fali RENEWAL
Arvin Q KolmetzCanadaIoni Bowcher NEGOTIATION
Francesco W AlbaresSpainBernardo Dominic PROPOSAL
Faith S VocelkaUnited KingdomAsiya Javayant NEW
Maria X CaldareraAustraliaIoni Bowcher NEW
Aika T OldroydFranceIvan Magalhaes QUALIFIED
Alejandro Q RutaArgentinaStephen Shaw NEW
Kaitlin M SchemmerItalyElwin Sharvill NEW
Juan S CaudyArgentinaAsiya Javayant UNQUALIFIED
Ashley N TollnerSpainAsiya Javayant PROPOSAL
Darci V InouyeGermanyIvan Magalhaes QUALIFIED
Wickens R FerenczIndiaAmy Elsner NEW
Morrow B DoeBrazilAsiya Javayant PROPOSAL
Aika U RutaRussiaAnna Fali NEGOTIATION
Deepesh E StockhamFranceIvan Magalhaes PROPOSAL
Kadeem A SaylorsAustraliaIoni Bowcher QUALIFIED
Juan Y StensethGermanyAnna Fali NEW
Sinclair O ChuiBrazilAsiya Javayant UNQUALIFIED
Silvio B GarufiAustraliaIoni Bowcher QUALIFIED
Rodrigues G RulapaughAustraliaXuxue Feng PROPOSAL
Ivar R FlosiRussiaAnna Fali 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>