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
Octavia B VenereBrazilAmy Elsner UNQUALIFIED
Isabel T CaldareraCanadaBernardo Dominic NEW
Smith N PoquetteFranceIvan Magalhaes NEW
Clifford I SchemmerArgentinaXuxue Feng UNQUALIFIED
Arvin C OldroydArgentinaAnna Fali PROPOSAL
Ashley L IturbideGermanyElwin Sharvill UNQUALIFIED
Rodrigues W VenereCanadaOnyama Limba PROPOSAL
Octavia X RutaBrazilElwin Sharvill RENEWAL
Wickens A ShinkoArgentinaIvan Magalhaes PROPOSAL
Jones X BowleyBrazilBernardo Dominic NEGOTIATION
Izzy L CaudyBrazilXuxue Feng PROPOSAL
Aditya D SchemmerBrazilBernardo Dominic PROPOSAL
Silvio X MacleadUnited KingdomAnna Fali PROPOSAL
Stacey E FlosiFranceAmy Elsner RENEWAL
Stacey K KolmetzAustraliaIoni Bowcher RENEWAL
Deepesh J DarakjyGermanyXuxue Feng RENEWAL
Mujtaba Y SaylorsIndiaBernardo Dominic NEW
James B AmigonItalyIvan Magalhaes RENEWAL
Emily Q KolmetzCanadaStephen Shaw NEGOTIATION
Emily Z WieserBrazilOnyama Limba UNQUALIFIED
Chavez Q WaycottJapanIoni Bowcher PROPOSAL
Aditya H GlickGermanyXuxue Feng RENEWAL
Aruna L RoysterFranceAmy Elsner NEW
Jefferson K AmigonJapanOnyama Limba NEW
Misaki L StockhamFranceAnna Fali UNQUALIFIED
Izzy A WieserAustraliaAnna Fali NEW
James X MorascaItalyAsiya Javayant QUALIFIED
Mayumi T MacleadAustraliaElwin Sharvill NEGOTIATION
Jennifer U WaycottRussiaIoni Bowcher UNQUALIFIED
Francesco Y DoeFranceAsiya Javayant QUALIFIED
Isabel U OstroskyFranceBernardo Dominic QUALIFIED
Aika E RimUnited KingdomElwin Sharvill UNQUALIFIED
Misaki Q RoysterSpainStephen Shaw QUALIFIED
Wickens R NestleSpainXuxue Feng RENEWAL
Faith Q KuskoRussiaStephen Shaw QUALIFIED
Deepesh I SaylorsBrazilBernardo Dominic UNQUALIFIED
Aruna C OstroskyRussiaXuxue Feng QUALIFIED
Wickens D MaletCanadaStephen Shaw NEGOTIATION
Mayumi P MarrierAustraliaElwin Sharvill NEW
Octavia S SaylorsIndiaAsiya Javayant NEW
Mayumi V NickaBrazilAsiya Javayant QUALIFIED
Darci T ShinkoUnited KingdomStephen Shaw PROPOSAL
Stacey Y RimGermanyOnyama Limba QUALIFIED
Greenwood Z TollnerArgentinaXuxue Feng PROPOSAL
Octavia R TollnerBrazilIvan Magalhaes NEGOTIATION
Emily Z RimUnited KingdomAsiya Javayant NEW
Cody A MorascaJapanOnyama Limba NEW
Maisha F GarufiCanadaXuxue Feng QUALIFIED
Aika Q GlickRussiaXuxue Feng NEGOTIATION
Tony Y CampainIndiaXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Izzy Z WaycottCanadaBernardo Dominic QUALIFIED
Isabel I StensethSpainIvan Magalhaes UNQUALIFIED
Johnson H DilliardArgentinaElwin Sharvill PROPOSAL
Darci O DilliardJapanIoni Bowcher QUALIFIED
Misaki G MorascaUnited KingdomBernardo Dominic PROPOSAL
Morrow Y StockhamJapanAnna Fali UNQUALIFIED
Munro Y SergiItalyBernardo Dominic NEGOTIATION
Darci E WhobreyCanadaIoni Bowcher UNQUALIFIED
Jones C MarrierSpainOnyama Limba NEW
Johnson A ChuiGermanyBernardo Dominic QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi V DilliardItaly2024-06-03Feiner Bros NEGOTIATION27Anna Fali
1001Ricardo G SergiIndia2024-05-24Dorl, James J Esq NEGOTIATION37Amy Elsner
1002Deepesh Y SergiGermany2024-05-29Feiner Bros UNQUALIFIED52Stephen Shaw
1003Kaitlin X SergiArgentina2024-05-26Commercial Press UNQUALIFIED71Ivan Magalhaes
1004Kadeem V CaudyUnited Kingdom2024-06-12Dorl, James J Esq PROPOSAL51Xuxue Feng
1005Rodrigues Y GlickFrance2024-06-19King, Christopher A Esq QUALIFIED29Elwin Sharvill
1006Jennifer S SchemmerGermany2024-06-13Benton, John B Jr QUALIFIED69Ioni Bowcher
1007Julie T AmigonUnited Kingdom2024-06-15Chapman, Ross E Esq NEGOTIATION21Anna Fali
1008Alejandro G ChuiSpain2024-06-02Chanay, Jeffrey A Esq RENEWAL79Asiya Javayant
1009Silvio G PaprockiIndia2024-06-06Buckley Miller Wright NEW98Asiya Javayant
1010Salvatore D TollnerItaly2024-06-06Printing Dimensions NEGOTIATION23Xuxue Feng
1011Munro Y TollnerUnited Kingdom2024-06-10Buckley Miller Wright NEW83Asiya Javayant
1012Jones L VenereBrazil2024-06-06Chemel, James L Cpa NEW3Bernardo Dominic
1013Antonio B KuskoIndia2024-05-30Feltz Printing Service UNQUALIFIED41Stephen Shaw
1014Jennifer F FerenczGermany2024-06-15Printing Dimensions UNQUALIFIED9Onyama Limba
1015Costa F SaylorsRussia2024-06-15Dorl, James J Esq NEGOTIATION74Elwin Sharvill
1016Chavez C BologniaSpain2024-06-19Chanay, Jeffrey A Esq NEGOTIATION77Elwin Sharvill
1017David Z PaprockiRussia2024-06-15King, Christopher A Esq RENEWAL26Anna Fali
1018Sinclair S NestleCanada2024-06-02Dorl, James J Esq QUALIFIED20Onyama Limba
1019Clifford X VenereCanada2024-06-20Chemel, James L Cpa PROPOSAL42Elwin Sharvill
1020Arvin C MaletAustralia2024-05-24Feiner Bros QUALIFIED52Asiya Javayant
1021Juan N FerenczSpain2024-06-18Feiner Bros UNQUALIFIED36Stephen Shaw
1022Munro X RutaSpain2024-06-08Feltz Printing Service NEW10Anna Fali
1023Aika T DoeGermany2024-05-30Chemel, James L Cpa RENEWAL84Elwin Sharvill
1024Mujtaba N StockhamFrance2024-05-26Rangoni Of Florence PROPOSAL99Anna Fali
1025Jennifer S SchemmerArgentina2024-06-22Dorl, James J Esq UNQUALIFIED24Asiya Javayant
1026David Z FigeroaAustralia2024-06-21Dorl, James J Esq RENEWAL95Anna Fali
1027Isabel A BriddickSpain2024-06-04Rousseaux, Michael Esq UNQUALIFIED34Amy Elsner
1028Francesco Q PaprockiAustralia2024-05-24Benton, John B Jr PROPOSAL11Onyama Limba
1029Faith M RutaCanada2024-06-09Chemel, James L Cpa NEGOTIATION24Xuxue Feng
1030Wickens C WhobreyCanada2024-06-05Rangoni Of Florence NEW26Elwin Sharvill
1031Ivar S WhobreyFrance2024-05-29Rangoni Of Florence QUALIFIED69Asiya Javayant
1032Alejandro O CampainUnited Kingdom2024-06-07Chanay, Jeffrey A Esq RENEWAL85Elwin Sharvill
1033Julie N GlickAustralia2024-06-11Rousseaux, Michael Esq RENEWAL0Xuxue Feng
1034Clifford K KolmetzItaly2024-06-19Buckley Miller Wright QUALIFIED92Onyama Limba
1035Morrow E KolmetzCanada2024-06-02Chanay, Jeffrey A Esq NEGOTIATION50Amy Elsner
1036Alejandro A StensethFrance2024-06-21Feiner Bros NEW9Xuxue Feng
1037Ivar W StockhamJapan2024-06-04Truhlar And Truhlar Attys RENEWAL96Ivan Magalhaes
1038Faith P KuskoGermany2024-06-20Feltz Printing Service RENEWAL52Asiya Javayant
1039Juan B GillianIndia2024-06-04Benton, John B Jr QUALIFIED8Bernardo Dominic
1040Tony V FollerJapan2024-05-24Benton, John B Jr NEW15Elwin Sharvill
1041Nicolas D BowleyArgentina2024-06-04Feiner Bros QUALIFIED45Elwin Sharvill
1042Leja D CaudyUnited Kingdom2024-06-18Buckley Miller Wright PROPOSAL20Bernardo Dominic
1043David B NestleRussia2024-05-26Chemel, James L Cpa PROPOSAL83Bernardo Dominic
1044Salvatore X SaylorsJapan2024-06-16Morlong Associates PROPOSAL26Xuxue Feng
1045Chavez W MacleadUnited Kingdom2024-05-27Chemel, James L Cpa RENEWAL66Amy Elsner
1046Alejandro D BowleySpain2024-05-24Chapman, Ross E Esq RENEWAL49Asiya Javayant
1047Munro B RimCanada2024-06-17Feiner Bros RENEWAL57Bernardo Dominic
1048Emily Z GauchoArgentina2024-06-09Morlong Associates RENEWAL34Anna Fali
1049David X FlosiFrance2024-05-26Rousseaux, Michael Esq RENEWAL14Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Deepesh C CaudyBrazilBernardo Dominic UNQUALIFIED
Silvio O IturbideBrazilAsiya Javayant QUALIFIED
Stacey D NestleUnited KingdomAnna Fali QUALIFIED
Julie B PaprockiBrazilAmy Elsner PROPOSAL
Ricardo D FollerIndiaAsiya Javayant NEW
Aditya D PaprockiUnited KingdomAnna Fali QUALIFIED
Murillo C GillianAustraliaBernardo Dominic NEW
Mayumi K DilliardBrazilBernardo Dominic RENEWAL
Mujtaba H FollerSpainIoni Bowcher NEGOTIATION
Deepesh H FigeroaJapanElwin Sharvill QUALIFIED
Deepesh H StensethUnited KingdomIoni Bowcher NEGOTIATION
Nicolas L SchemmerAustraliaIoni Bowcher QUALIFIED
Antonio T FigeroaGermanyIoni Bowcher QUALIFIED
Kaitlin X DarakjyBrazilAmy Elsner PROPOSAL
Cody V VocelkaUnited KingdomAsiya Javayant NEGOTIATION
Aruna C MacleadGermanyBernardo Dominic QUALIFIED
Izzy Z DoeJapanElwin Sharvill NEGOTIATION
Maisha A InouyeIndiaIoni Bowcher NEGOTIATION
Jennifer Q SergiItalyElwin Sharvill PROPOSAL
Ivar A BowleyGermanyXuxue Feng RENEWAL
Octavia O NickaCanadaStephen Shaw NEW
Arvin Z PoquetteSpainAnna Fali PROPOSAL
Sinclair U StockhamIndiaAsiya Javayant UNQUALIFIED
Francesco D DoeGermanyStephen Shaw RENEWAL
Smith E StensethRussiaStephen Shaw QUALIFIED
Costa F BriddickArgentinaXuxue Feng UNQUALIFIED
Leon V CampainFranceXuxue Feng PROPOSAL
Francesco T BowleyIndiaElwin Sharvill PROPOSAL
Mujtaba I ShinkoRussiaIvan Magalhaes PROPOSAL
Rodrigues R DilliardUnited KingdomStephen Shaw RENEWAL
Isabel V MacleadFranceBernardo Dominic NEGOTIATION
Darci B SchemmerJapanAsiya Javayant UNQUALIFIED
Julie Q BowleyCanadaXuxue Feng PROPOSAL
Juan T InouyeSpainIoni Bowcher PROPOSAL
James O NickaSpainIoni Bowcher PROPOSAL
Arvin G PerinJapanOnyama Limba QUALIFIED
Misaki S GillianAustraliaIoni Bowcher NEGOTIATION
Costa E BowleyBrazilXuxue Feng UNQUALIFIED
Mayumi S ButtUnited KingdomAsiya Javayant PROPOSAL
Juan J MorascaIndiaBernardo Dominic UNQUALIFIED
Mujtaba J InouyeGermanyStephen Shaw NEGOTIATION
Izzy Q FigeroaJapanAnna Fali QUALIFIED
Morrow S KuskoSpainIvan Magalhaes QUALIFIED
Wickens I TollnerRussiaAsiya Javayant RENEWAL
Greenwood M FlosiSpainAmy Elsner NEGOTIATION
Jefferson F MorascaSpainIvan Magalhaes QUALIFIED
Wickens B MaletBrazilStephen Shaw PROPOSAL
Francesco R BowleyBrazilXuxue Feng NEW
Silvio U GauchoAustraliaIvan Magalhaes QUALIFIED
Johnson U FollerRussiaOnyama Limba UNQUALIFIED
Frozen Columns
Name
Costa G Wieser
Chavez S Ostrosky
Jones Y Nestle
Smith Q Ruta
Jones A Briddick
Leon S Albares
Aruna H Flosi
Greenwood V Bowley
Sinclair L Glick
Ashley N Chui
Claire S Caudy
Clifford S Foller
Johnson T Ostrosky
Jefferson A Bowley
Jeanfrancois B Darakjy
Aditya I Iturbide
Julie J Venere
Nicolas A Flosi
Aditya M Doe
Kaitlin X Nicka
Jennifer Q Stenseth
Costa U Kolmetz
Munro M Marrier
Stacey J Stenseth
Leja P Saylors
Munro U Vocelka
Jones M Campain
Ricardo J Gaucho
Emily B Sergi
James L Iturbide
Ashley Z Royster
Cody P Amigon
Jones I Stockham
Johnson V Stockham
Wickens K Marrier
Antonio C Waycott
Jeanfrancois V Marrier
Kadeem O Albares
Rodrigues L Campain
Jennifer B Flosi
Wickens E Malet
Ashley X Paprocki
Jones M Dilliard
Claire I Waycott
Smith N Gillian
Alejandro J Vocelka
Claire N Caudy
Mujtaba C Whobrey
Kaitlin A Sergi
Rodrigues R Chui
IdCountryDate
1000Italy2024-06-02
1001Italy2024-06-20
1002France2024-06-07
1003Japan2024-06-14
1004Russia2024-06-18
1005Brazil2024-06-02
1006Germany2024-05-30
1007Italy2024-05-28
1008Canada2024-06-22
1009France2024-06-13
1010Australia2024-06-12
1011India2024-06-03
1012India2024-05-24
1013France2024-06-12
1014Russia2024-06-03
1015Canada2024-06-20
1016Germany2024-05-25
1017Italy2024-06-21
1018Russia2024-06-08
1019Canada2024-06-16
1020Australia2024-06-20
1021Italy2024-06-06
1022Brazil2024-06-03
1023India2024-05-24
1024Russia2024-06-22
1025Russia2024-06-15
1026Argentina2024-06-08
1027Argentina2024-06-16
1028United Kingdom2024-05-31
1029Brazil2024-06-17
1030India2024-06-09
1031Canada2024-06-14
1032Brazil2024-05-25
1033Canada2024-06-12
1034India2024-06-21
1035Brazil2024-06-10
1036Russia2024-06-06
1037Italy2024-06-14
1038Russia2024-06-21
1039India2024-06-09
1040Australia2024-06-08
1041Brazil2024-05-31
1042United Kingdom2024-06-18
1043Brazil2024-06-13
1044Brazil2024-06-10
1045United Kingdom2024-06-05
1046Russia2024-06-18
1047Australia2024-05-27
1048United Kingdom2024-06-19
1049Spain2024-05-29

On-Demand Data

NameIdCountryDate
Deepesh L Schemmer1000Argentina2024-06-12
James Y Ruta1001France2024-06-12
Francesco V Malet1002Italy2024-05-28
Emily C Gaucho1003Argentina2024-06-10
Isabel U Poquette1004Australia2024-06-12
Johnson E Ferencz1005Russia2024-06-13
Francesco M Caudy1006Brazil2024-06-22
Francesco A Vocelka1007France2024-06-02
Mayumi E Waycott1008Spain2024-06-16
Izzy O Gaucho1009Italy2024-05-29
Emily S Morasca1010France2024-06-14
Clifford Q Ruta1011Australia2024-06-13
Maria P Tollner1012Japan2024-06-07
Sinclair L Perin1013India2024-06-04
Salvatore S Iturbide1014Brazil2024-06-22
James X Glick1015United Kingdom2024-06-04
Deepesh J Kolmetz1016Germany2024-06-09
Morrow S Perin1017Germany2024-05-27
Arvin N Rim1018Germany2024-06-22
Stacey R Malet1019France2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford K RutaItalyIoni Bowcher NEGOTIATION
Julie T RimJapanStephen Shaw RENEWAL
Faith M GlickUnited KingdomStephen Shaw NEGOTIATION
Emily A DilliardAustraliaAsiya Javayant QUALIFIED
Morrow A SlusarskiFranceAmy Elsner NEGOTIATION
Juan T InouyeUnited KingdomElwin Sharvill QUALIFIED
Leon T RulapaughRussiaXuxue Feng NEGOTIATION
Smith N GlickFranceOnyama Limba RENEWAL
Kadeem L InouyeCanadaIvan Magalhaes UNQUALIFIED
Francesco H SergiArgentinaOnyama Limba PROPOSAL
Emily P CampainRussiaXuxue Feng NEGOTIATION
Wickens Z SergiGermanyAmy Elsner QUALIFIED
Izzy O MaletJapanAmy Elsner QUALIFIED
Jones T GlickBrazilElwin Sharvill PROPOSAL
Ivar V StockhamArgentinaIvan Magalhaes NEW
Ashley H DoeSpainOnyama Limba PROPOSAL
Murillo Q ShinkoGermanyAmy Elsner NEW
Darci W InouyeIndiaOnyama Limba RENEWAL
Claire H GillianArgentinaOnyama Limba UNQUALIFIED
Aditya P RoysterAustraliaStephen Shaw NEW
Sinclair F ChuiGermanyXuxue Feng QUALIFIED
Stacey E GauchoFranceBernardo Dominic RENEWAL
David B InouyeFranceOnyama Limba RENEWAL
Faith B ChuiArgentinaStephen Shaw UNQUALIFIED
Izzy Z FollerBrazilAsiya Javayant QUALIFIED
Leja Y MaletRussiaAnna Fali RENEWAL
Mayumi S BriddickJapanBernardo Dominic QUALIFIED
Mayumi N OldroydUnited KingdomXuxue Feng RENEWAL
Munro O WieserIndiaAnna Fali QUALIFIED
Chavez M TollnerGermanyIvan Magalhaes QUALIFIED
Aika P NestleAustraliaStephen Shaw QUALIFIED
Leon Q VocelkaFranceIvan Magalhaes NEGOTIATION
Aika I FigeroaUnited KingdomBernardo Dominic QUALIFIED
Ivar U FlosiGermanyIoni Bowcher NEGOTIATION
Leon W MaletArgentinaOnyama Limba NEGOTIATION
Jeanfrancois R MaletUnited KingdomBernardo Dominic NEW
Leon D PaprockiAustraliaBernardo Dominic PROPOSAL
Faith W AmigonCanadaIoni Bowcher NEGOTIATION
Tony L MorascaArgentinaAnna Fali NEW
Leon D DoeArgentinaIvan Magalhaes 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>