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
Silvio I DoeItalyBernardo Dominic NEGOTIATION
Kaitlin X SlusarskiAustraliaBernardo Dominic UNQUALIFIED
Ashley Q BowleyIndiaAsiya Javayant PROPOSAL
Juan X SchemmerBrazilAnna Fali NEW
Clifford E VocelkaFranceAnna Fali NEGOTIATION
Johnson W RutaArgentinaIoni Bowcher NEW
Kaitlin G GarufiFranceAnna Fali PROPOSAL
Silvio H CaldareraFranceStephen Shaw RENEWAL
Ricardo K MacleadRussiaIoni Bowcher NEW
Morrow I PaprockiBrazilElwin Sharvill NEGOTIATION
Deepesh E MorascaArgentinaBernardo Dominic QUALIFIED
Misaki E DarakjyArgentinaOnyama Limba NEW
Aruna G OstroskyIndiaElwin Sharvill UNQUALIFIED
Darci L MacleadIndiaAmy Elsner UNQUALIFIED
Aika A NestleItalyAmy Elsner NEGOTIATION
Sinclair K MorascaCanadaIoni Bowcher NEGOTIATION
Maisha E RutaAustraliaAmy Elsner UNQUALIFIED
Kadeem J FerenczSpainBernardo Dominic NEGOTIATION
Wickens G FigeroaCanadaElwin Sharvill NEW
Darci Y AmigonSpainIvan Magalhaes PROPOSAL
Mayumi K SergiSpainElwin Sharvill RENEWAL
Darci A ShinkoUnited KingdomAsiya Javayant PROPOSAL
Darci I RutaCanadaXuxue Feng NEW
Aditya Z MarrierGermanyElwin Sharvill RENEWAL
Emily Z MarrierIndiaStephen Shaw NEW
Ivar K AmigonIndiaXuxue Feng NEW
Wickens Z GlickItalyIvan Magalhaes UNQUALIFIED
Claire Q IturbideBrazilXuxue Feng UNQUALIFIED
Greenwood N OstroskyBrazilIoni Bowcher RENEWAL
Kaitlin O SchemmerUnited KingdomAnna Fali RENEWAL
Juan T RulapaughBrazilXuxue Feng PROPOSAL
Salvatore F BriddickGermanyStephen Shaw NEGOTIATION
Emily C DoeUnited KingdomAsiya Javayant PROPOSAL
Nicolas F GlickJapanIoni Bowcher QUALIFIED
Morrow M GlickCanadaOnyama Limba NEGOTIATION
Antonio H GauchoArgentinaIvan Magalhaes QUALIFIED
Maisha M SchemmerArgentinaIoni Bowcher RENEWAL
Mayumi D FigeroaCanadaAnna Fali RENEWAL
Tony J MorascaIndiaOnyama Limba RENEWAL
Leon R StockhamFranceXuxue Feng PROPOSAL
Morrow A WaycottUnited KingdomOnyama Limba NEW
Darci A WieserRussiaXuxue Feng NEGOTIATION
Octavia I DarakjyItalyIvan Magalhaes RENEWAL
Ricardo D DilliardBrazilAmy Elsner UNQUALIFIED
Ivar G NickaCanadaIvan Magalhaes UNQUALIFIED
Juan R PerinGermanyIoni Bowcher RENEWAL
Chavez B DarakjyArgentinaBernardo Dominic RENEWAL
Smith N DarakjyAustraliaIvan Magalhaes PROPOSAL
Stacey B BowleyArgentinaAsiya Javayant NEW
Maria X BriddickFranceAnna Fali QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Claire Z MaletSpainAmy Elsner QUALIFIED
James K FigeroaCanadaIoni Bowcher NEGOTIATION
Smith T GarufiIndiaXuxue Feng UNQUALIFIED
Sinclair E MorascaIndiaIvan Magalhaes NEW
Greenwood S PaprockiRussiaXuxue Feng NEGOTIATION
Johnson X BowleyGermanyElwin Sharvill NEW
David E BologniaIndiaAsiya Javayant QUALIFIED
Isabel K MarrierJapanIoni Bowcher RENEWAL
Salvatore A CampainBrazilIoni Bowcher NEGOTIATION
Aika X SergiAustraliaElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson P WhobreyItaly2024-06-19Feiner Bros NEGOTIATION57Anna Fali
1001Adams W RimUnited Kingdom2024-06-11Chemel, James L Cpa NEW25Elwin Sharvill
1002Nicolas S SchemmerUnited Kingdom2024-06-15Chapman, Ross E Esq QUALIFIED57Anna Fali
1003Morrow H VocelkaUnited Kingdom2024-06-12Rousseaux, Michael Esq UNQUALIFIED22Elwin Sharvill
1004Kaitlin I RimBrazil2024-06-17Rangoni Of Florence NEW18Amy Elsner
1005Alejandro R MarrierItaly2024-05-26King, Christopher A Esq NEW49Xuxue Feng
1006Aika I GillianCanada2024-06-17King, Christopher A Esq UNQUALIFIED59Asiya Javayant
1007Leon J CaldareraAustralia2024-06-05Chanay, Jeffrey A Esq NEGOTIATION28Stephen Shaw
1008Jefferson U MarrierItaly2024-06-19Buckley Miller Wright NEW64Ivan Magalhaes
1009Isabel P OldroydItaly2024-05-27Benton, John B Jr NEGOTIATION39Amy Elsner
1010James H RoysterCanada2024-06-14Feltz Printing Service NEGOTIATION1Asiya Javayant
1011James H OstroskyUnited Kingdom2024-06-13King, Christopher A Esq NEW56Bernardo Dominic
1012Morrow N SlusarskiUnited Kingdom2024-05-29Buckley Miller Wright RENEWAL2Onyama Limba
1013Aika F RutaBrazil2024-05-31Printing Dimensions PROPOSAL84Ivan Magalhaes
1014Chavez O WieserAustralia2024-06-09Chanay, Jeffrey A Esq PROPOSAL77Xuxue Feng
1015Jefferson B SaylorsJapan2024-06-06Benton, John B Jr RENEWAL0Elwin Sharvill
1016Nicolas F PaprockiRussia2024-05-27Dorl, James J Esq PROPOSAL95Ioni Bowcher
1017Ashley Y RulapaughItaly2024-06-01Printing Dimensions QUALIFIED33Stephen Shaw
1018Darci P CampainJapan2024-06-11Feiner Bros NEW40Xuxue Feng
1019Maria H KolmetzIndia2024-06-11King, Christopher A Esq NEGOTIATION4Amy Elsner
1020Rodrigues B DilliardItaly2024-06-09Dorl, James J Esq NEGOTIATION44Ivan Magalhaes
1021Cody V OldroydIndia2024-06-18Dorl, James J Esq UNQUALIFIED92Anna Fali
1022Jefferson A IturbideSpain2024-05-28Morlong Associates PROPOSAL85Bernardo Dominic
1023Aditya B RutaAustralia2024-06-20Truhlar And Truhlar Attys NEGOTIATION11Ivan Magalhaes
1024Deepesh I FollerItaly2024-06-10Chapman, Ross E Esq QUALIFIED24Xuxue Feng
1025Jeanfrancois A RutaIndia2024-06-05Truhlar And Truhlar Attys RENEWAL72Ioni Bowcher
1026Claire M OldroydGermany2024-05-23Feiner Bros NEW56Xuxue Feng
1027Antonio O MarrierJapan2024-06-11King, Christopher A Esq QUALIFIED5Elwin Sharvill
1028Francesco J RimIndia2024-06-19Rangoni Of Florence QUALIFIED14Ivan Magalhaes
1029James C KolmetzSpain2024-06-09Chapman, Ross E Esq NEGOTIATION34Bernardo Dominic
1030Claire Y CaldareraJapan2024-06-06Rangoni Of Florence QUALIFIED36Ivan Magalhaes
1031Chavez F KolmetzIndia2024-06-09Feiner Bros QUALIFIED52Bernardo Dominic
1032Chavez X MacleadAustralia2024-05-28Chapman, Ross E Esq UNQUALIFIED4Asiya Javayant
1033Jones T TollnerGermany2024-06-20Chapman, Ross E Esq NEW4Bernardo Dominic
1034Kadeem H CaudyArgentina2024-06-11Chanay, Jeffrey A Esq PROPOSAL62Bernardo Dominic
1035Deepesh B SchemmerUnited Kingdom2024-05-28Rangoni Of Florence QUALIFIED59Amy Elsner
1036Maria I PoquetteItaly2024-06-11Chemel, James L Cpa RENEWAL74Stephen Shaw
1037Julie S RoysterRussia2024-06-20Feltz Printing Service QUALIFIED66Ioni Bowcher
1038Francesco I RoysterBrazil2024-06-17Rangoni Of Florence NEGOTIATION30Bernardo Dominic
1039Leja S FollerRussia2024-06-09Chanay, Jeffrey A Esq NEGOTIATION10Asiya Javayant
1040Ashley F RimItaly2024-05-27Rousseaux, Michael Esq NEW11Amy Elsner
1041Costa S WhobreyIndia2024-06-14Chanay, Jeffrey A Esq QUALIFIED14Elwin Sharvill
1042Rodrigues I DarakjyGermany2024-05-27Rangoni Of Florence NEGOTIATION35Asiya Javayant
1043Morrow F DilliardAustralia2024-06-05Chanay, Jeffrey A Esq PROPOSAL61Amy Elsner
1044Ashley A FollerArgentina2024-06-11Chanay, Jeffrey A Esq NEGOTIATION28Amy Elsner
1045Octavia Z MaletGermany2024-06-06Commercial Press NEW26Elwin Sharvill
1046Faith P SlusarskiRussia2024-05-25King, Christopher A Esq NEW53Ioni Bowcher
1047Misaki Z OstroskyUnited Kingdom2024-06-09Benton, John B Jr PROPOSAL17Stephen Shaw
1048Johnson R CaudyCanada2024-06-16Rangoni Of Florence UNQUALIFIED75Stephen Shaw
1049Aruna B GlickRussia2024-06-21Commercial Press PROPOSAL16Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Clifford Y ButtRussiaAmy Elsner NEGOTIATION
Leon A MacleadJapanOnyama Limba NEW
Silvio U WaycottUnited KingdomAsiya Javayant NEW
Claire Z FerenczArgentinaXuxue Feng UNQUALIFIED
Sinclair V OldroydFranceBernardo Dominic QUALIFIED
Aditya Z PerinSpainOnyama Limba PROPOSAL
Kadeem F GlickCanadaIoni Bowcher UNQUALIFIED
Silvio H AlbaresJapanIvan Magalhaes QUALIFIED
Clifford N CaldareraItalyAsiya Javayant RENEWAL
Emily G WieserAustraliaElwin Sharvill NEW
Jones X BologniaSpainIoni Bowcher NEW
Ricardo H MaletRussiaIoni Bowcher NEW
Maria Y PaprockiGermanyElwin Sharvill RENEWAL
Maria G PoquetteIndiaElwin Sharvill NEW
Aditya W BologniaCanadaAsiya Javayant NEW
Aruna B RutaItalyBernardo Dominic PROPOSAL
Aika C FigeroaIndiaAsiya Javayant NEW
Jefferson T PaprockiIndiaStephen Shaw NEGOTIATION
Alejandro F InouyeRussiaOnyama Limba PROPOSAL
Wickens M FigeroaBrazilOnyama Limba QUALIFIED
Cody U VocelkaBrazilAmy Elsner UNQUALIFIED
Mujtaba B AmigonRussiaAnna Fali UNQUALIFIED
Francesco F PerinItalyBernardo Dominic QUALIFIED
Leon L RimAustraliaAsiya Javayant UNQUALIFIED
Izzy Y TollnerAustraliaAmy Elsner NEGOTIATION
Mayumi W RoysterIndiaIoni Bowcher PROPOSAL
Alejandro J FigeroaIndiaAmy Elsner NEGOTIATION
Julie V BriddickCanadaAmy Elsner NEW
Kadeem E ShinkoAustraliaXuxue Feng PROPOSAL
Nicolas P MorascaFranceXuxue Feng QUALIFIED
Stacey L GillianGermanyBernardo Dominic NEGOTIATION
Salvatore C KuskoSpainOnyama Limba RENEWAL
Morrow W MorascaFranceBernardo Dominic NEGOTIATION
Deepesh M WhobreyAustraliaAnna Fali NEGOTIATION
Alejandro S StockhamBrazilBernardo Dominic RENEWAL
Smith G SergiCanadaElwin Sharvill NEGOTIATION
Wickens T GarufiRussiaBernardo Dominic QUALIFIED
Nicolas C NickaIndiaAmy Elsner NEW
Aruna C NestleItalyIvan Magalhaes NEGOTIATION
David O RoysterIndiaStephen Shaw PROPOSAL
Rodrigues N SlusarskiBrazilIvan Magalhaes UNQUALIFIED
Silvio U BriddickItalyIoni Bowcher PROPOSAL
Julie A PaprockiSpainXuxue Feng RENEWAL
Emily E PaprockiGermanyAsiya Javayant RENEWAL
Mayumi H TollnerIndiaXuxue Feng NEGOTIATION
Aruna C TollnerArgentinaAsiya Javayant NEGOTIATION
Izzy W IturbideSpainIoni Bowcher NEW
Murillo K NickaBrazilStephen Shaw QUALIFIED
Munro X CampainRussiaXuxue Feng PROPOSAL
Emily E VenereAustraliaAnna Fali NEGOTIATION
Frozen Columns
Name
Morrow Q Campain
Kadeem C Iturbide
Deepesh W Morasca
Faith L Gaucho
Johnson D Slusarski
Cody H Venere
Maisha F Caudy
Misaki U Foller
Arvin V Darakjy
Wickens Z Chui
Julie A Marrier
Maria Q Malet
Nicolas J Whobrey
Aruna D Iturbide
Izzy T Vocelka
Izzy M Iturbide
Misaki E Kusko
Aditya J Amigon
Sinclair C Royster
Isabel J Rulapaugh
Kaitlin Z Nicka
Ivar H Garufi
Stacey K Amigon
Aditya Q Saylors
Cody Q Nestle
Stacey P Iturbide
Octavia W Gaucho
Ashley Q Bolognia
Sinclair R Ostrosky
Morrow E Saylors
Darci V Iturbide
Aditya V Stockham
Sinclair Z Nestle
Mujtaba X Marrier
Tony B Malet
Mayumi I Tollner
Jefferson P Royster
Faith N Saylors
Leja U Gillian
Ivar W Iturbide
Kaitlin A Poquette
Wickens B Bolognia
Isabel N Gillian
Leja E Albares
Silvio Q Chui
Julie H Ruta
Costa A Poquette
Mujtaba L Garufi
Arvin V Morasca
Munro Z Shinko
IdCountryDate
1000Australia2024-06-11
1001India2024-06-05
1002India2024-06-06
1003Japan2024-06-18
1004United Kingdom2024-06-16
1005Brazil2024-06-13
1006Japan2024-06-14
1007Italy2024-05-27
1008India2024-05-23
1009Germany2024-06-17
1010Italy2024-06-14
1011Canada2024-06-18
1012Brazil2024-05-25
1013United Kingdom2024-06-09
1014Argentina2024-06-19
1015Russia2024-06-01
1016Germany2024-05-30
1017Japan2024-05-29
1018Australia2024-06-03
1019Spain2024-06-21
1020France2024-06-05
1021United Kingdom2024-06-13
1022France2024-06-11
1023Australia2024-05-25
1024Argentina2024-05-31
1025Spain2024-06-13
1026Brazil2024-06-04
1027Germany2024-06-06
1028India2024-06-14
1029Japan2024-06-15
1030Germany2024-06-12
1031Russia2024-05-29
1032United Kingdom2024-05-30
1033Japan2024-06-08
1034Germany2024-06-10
1035India2024-06-15
1036Argentina2024-05-27
1037Italy2024-05-29
1038France2024-06-05
1039India2024-06-01
1040Brazil2024-05-28
1041Australia2024-05-30
1042France2024-06-03
1043Canada2024-05-26
1044Italy2024-05-25
1045Russia2024-06-07
1046France2024-06-06
1047India2024-05-23
1048India2024-06-11
1049France2024-06-02

On-Demand Data

NameIdCountryDate
Nicolas P Butt1000Italy2024-06-11
Clifford U Nestle1001Japan2024-06-10
Johnson N Sergi1002Brazil2024-06-11
Nicolas C Marrier1003Argentina2024-06-11
Aditya D Stockham1004Australia2024-05-23
Darci E Inouye1005Italy2024-06-15
Rodrigues N Ostrosky1006Argentina2024-06-11
Adams F Paprocki1007Russia2024-05-24
Mujtaba J Chui1008Germany2024-05-30
Silvio H Campain1009Russia2024-06-09
Sinclair D Oldroyd1010India2024-06-07
Wickens W Chui1011Australia2024-06-14
Izzy U Darakjy1012Japan2024-06-16
Kadeem O Bowley1013Brazil2024-06-04
Maria R Kusko1014Japan2024-05-31
Jones H Caldarera1015Australia2024-06-18
Kadeem S Briddick1016Japan2024-06-10
Julie F Royster1017Spain2024-05-29
Munro B Stenseth1018United Kingdom2024-05-29
Johnson Z Nicka1019Argentina2024-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria O ChuiArgentinaElwin Sharvill NEW
Sinclair R SaylorsGermanyStephen Shaw QUALIFIED
Jones G TollnerCanadaOnyama Limba NEW
Arvin F BowleyBrazilXuxue Feng RENEWAL
Ricardo Z CaudyUnited KingdomBernardo Dominic UNQUALIFIED
Aika K NestleAustraliaAmy Elsner NEGOTIATION
Emily X AmigonArgentinaIvan Magalhaes UNQUALIFIED
Maria Z MorascaIndiaStephen Shaw PROPOSAL
Misaki I CaudyArgentinaIoni Bowcher NEGOTIATION
Munro Y InouyeRussiaAmy Elsner RENEWAL
Rodrigues T AlbaresUnited KingdomAsiya Javayant PROPOSAL
Maria V BriddickRussiaOnyama Limba PROPOSAL
Salvatore U ShinkoArgentinaAsiya Javayant RENEWAL
Kadeem T GlickRussiaElwin Sharvill QUALIFIED
Maisha W DarakjyArgentinaAsiya Javayant UNQUALIFIED
Sinclair F MacleadRussiaBernardo Dominic NEGOTIATION
Stacey N FollerUnited KingdomElwin Sharvill UNQUALIFIED
Darci T DilliardCanadaAsiya Javayant QUALIFIED
Maisha Z MaletAustraliaIoni Bowcher QUALIFIED
James N MacleadItalyAmy Elsner NEGOTIATION
Claire J FerenczArgentinaElwin Sharvill UNQUALIFIED
Kaitlin S PerinUnited KingdomIvan Magalhaes NEW
Cody F OldroydFranceAnna Fali PROPOSAL
Antonio W WhobreyCanadaStephen Shaw RENEWAL
Faith O SergiUnited KingdomIoni Bowcher PROPOSAL
Cody O GauchoCanadaXuxue Feng NEGOTIATION
Munro W BriddickAustraliaIvan Magalhaes RENEWAL
Ricardo Q IturbideArgentinaXuxue Feng UNQUALIFIED
Wickens P WieserItalyOnyama Limba NEGOTIATION
Claire Y DilliardJapanBernardo Dominic NEW
Emily U PoquetteRussiaBernardo Dominic NEGOTIATION
Clifford U VenereIndiaOnyama Limba NEW
Sinclair C AlbaresRussiaXuxue Feng NEW
Chavez D MarrierBrazilStephen Shaw QUALIFIED
Octavia Y PerinSpainElwin Sharvill QUALIFIED
Aditya E CaldareraIndiaAsiya Javayant NEW
Arvin O MarrierFranceIvan Magalhaes RENEWAL
Salvatore N CaudyFranceIvan Magalhaes UNQUALIFIED
Chavez E StockhamFranceElwin Sharvill NEGOTIATION
Kadeem F MacleadBrazilIvan Magalhaes NEGOTIATION

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