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
Kadeem S SaylorsGermanyAsiya Javayant NEGOTIATION
Greenwood S DilliardJapanIoni Bowcher PROPOSAL
Cody M KuskoArgentinaStephen Shaw UNQUALIFIED
Nicolas A GlickBrazilAnna Fali PROPOSAL
Antonio Y GillianJapanAnna Fali NEW
Wickens U MaletArgentinaAsiya Javayant NEW
Clifford P MaletGermanyIvan Magalhaes QUALIFIED
Mujtaba N PaprockiItalyStephen Shaw NEW
Silvio L FollerRussiaAnna Fali NEW
Chavez P FerenczCanadaXuxue Feng QUALIFIED
Maria E MacleadGermanyAmy Elsner NEGOTIATION
Maisha H IturbideFranceOnyama Limba RENEWAL
Johnson P GlickGermanyXuxue Feng RENEWAL
Antonio V GillianRussiaXuxue Feng NEW
Ivar L FigeroaJapanAnna Fali PROPOSAL
Maria V SergiArgentinaIoni Bowcher NEGOTIATION
Aditya V RoysterItalyIoni Bowcher NEGOTIATION
Adams H NestleUnited KingdomIoni Bowcher QUALIFIED
Adams N RimJapanIvan Magalhaes NEW
Aika P OstroskyIndiaIvan Magalhaes QUALIFIED
Ashley Y WieserUnited KingdomElwin Sharvill UNQUALIFIED
Arvin O AmigonIndiaIoni Bowcher NEW
Jennifer Z ChuiItalyIvan Magalhaes RENEWAL
Greenwood R DoeIndiaXuxue Feng QUALIFIED
Jefferson J IturbideFranceOnyama Limba NEW
Maisha P GarufiUnited KingdomIoni Bowcher NEW
Silvio I DarakjyIndiaIoni Bowcher UNQUALIFIED
Rodrigues D OstroskyGermanyIoni Bowcher NEGOTIATION
Sinclair B BriddickItalyAmy Elsner PROPOSAL
Darci F InouyeJapanIvan Magalhaes QUALIFIED
Greenwood I DarakjyItalyElwin Sharvill NEGOTIATION
Kaitlin N GlickJapanElwin Sharvill QUALIFIED
Jeanfrancois R NestleRussiaOnyama Limba RENEWAL
Maria H NickaUnited KingdomOnyama Limba QUALIFIED
Kadeem M FollerAustraliaElwin Sharvill UNQUALIFIED
Jennifer R VocelkaCanadaElwin Sharvill PROPOSAL
Silvio Q KolmetzIndiaOnyama Limba NEW
Antonio T FollerFranceIoni Bowcher NEGOTIATION
Claire M DilliardGermanyAsiya Javayant PROPOSAL
Rodrigues C CampainRussiaAmy Elsner RENEWAL
Jeanfrancois D KuskoSpainStephen Shaw PROPOSAL
Darci H SlusarskiAustraliaOnyama Limba RENEWAL
Kaitlin W MaletGermanyAsiya Javayant NEGOTIATION
Leon P StockhamGermanyAmy Elsner NEGOTIATION
Francesco V PoquetteCanadaAnna Fali QUALIFIED
Cody R BriddickAustraliaIoni Bowcher NEGOTIATION
Tony S ButtBrazilBernardo Dominic RENEWAL
Johnson F GlickJapanOnyama Limba RENEWAL
Greenwood Y RimIndiaIvan Magalhaes PROPOSAL
Cody B RulapaughFranceStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Arvin B RoysterAustraliaXuxue Feng RENEWAL
Stacey Z CaudyFranceAsiya Javayant RENEWAL
Murillo C AmigonUnited KingdomBernardo Dominic QUALIFIED
Adams C SlusarskiFranceAmy Elsner NEGOTIATION
Kaitlin J IturbideBrazilElwin Sharvill NEW
Smith L PoquetteUnited KingdomXuxue Feng NEW
Leja B BowleyAustraliaIoni Bowcher NEGOTIATION
Jones N KolmetzRussiaStephen Shaw PROPOSAL
James U WaycottUnited KingdomStephen Shaw QUALIFIED
Wickens L MorascaArgentinaAsiya Javayant QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood S ButtFrance2024-05-31Feltz Printing Service PROPOSAL36Amy Elsner
1001Jefferson K ChuiCanada2024-06-07Morlong Associates QUALIFIED17Amy Elsner
1002Costa I WaycottFrance2024-06-19Benton, John B Jr UNQUALIFIED4Amy Elsner
1003Mayumi J PerinUnited Kingdom2024-06-16Printing Dimensions NEGOTIATION27Stephen Shaw
1004Ashley C ButtBrazil2024-06-12King, Christopher A Esq NEGOTIATION14Anna Fali
1005Rodrigues P MarrierAustralia2024-06-11Commercial Press NEW90Onyama Limba
1006Silvio Y GillianSpain2024-06-07Chanay, Jeffrey A Esq NEW2Stephen Shaw
1007Maria W CaldareraCanada2024-05-25Chanay, Jeffrey A Esq PROPOSAL49Asiya Javayant
1008Munro N BologniaIndia2024-05-26Dorl, James J Esq QUALIFIED9Ivan Magalhaes
1009Leja E KuskoCanada2024-05-26Printing Dimensions PROPOSAL67Ivan Magalhaes
1010Julie W MacleadBrazil2024-06-05Printing Dimensions NEW65Xuxue Feng
1011Aditya G InouyeItaly2024-06-13Chanay, Jeffrey A Esq NEW33Asiya Javayant
1012Antonio O SaylorsGermany2024-06-13Dorl, James J Esq NEW57Asiya Javayant
1013Antonio A DoeBrazil2024-05-30Benton, John B Jr QUALIFIED19Stephen Shaw
1014Leja N MorascaJapan2024-05-31Chemel, James L Cpa NEGOTIATION82Stephen Shaw
1015Mujtaba F NestleUnited Kingdom2024-06-19Chemel, James L Cpa QUALIFIED19Bernardo Dominic
1016Julie H FigeroaArgentina2024-06-18Buckley Miller Wright NEW83Stephen Shaw
1017Leon J MaletUnited Kingdom2024-06-17Commercial Press NEGOTIATION18Stephen Shaw
1018Leja U RimSpain2024-05-31King, Christopher A Esq NEGOTIATION52Anna Fali
1019Leon U PaprockiIndia2024-06-16Rangoni Of Florence UNQUALIFIED40Amy Elsner
1020Ivar Y DoeGermany2024-06-09Feiner Bros PROPOSAL86Onyama Limba
1021Cody Y OldroydIndia2024-06-06Chapman, Ross E Esq PROPOSAL58Xuxue Feng
1022Mujtaba O MorascaUnited Kingdom2024-05-30Rangoni Of Florence NEGOTIATION29Stephen Shaw
1023Alejandro H SergiSpain2024-05-25Chanay, Jeffrey A Esq UNQUALIFIED20Ioni Bowcher
1024Ivar B MaletAustralia2024-06-16Benton, John B Jr QUALIFIED85Bernardo Dominic
1025Wickens U RulapaughArgentina2024-05-26Chanay, Jeffrey A Esq RENEWAL73Stephen Shaw
1026Smith Q InouyeItaly2024-06-11Morlong Associates NEW93Asiya Javayant
1027Misaki W MorascaSpain2024-06-07Truhlar And Truhlar Attys UNQUALIFIED23Amy Elsner
1028Greenwood B RimSpain2024-05-26Commercial Press RENEWAL64Stephen Shaw
1029Maria L CampainCanada2024-05-24Feltz Printing Service RENEWAL85Anna Fali
1030Arvin J GauchoItaly2024-06-01Printing Dimensions RENEWAL22Xuxue Feng
1031David P StockhamJapan2024-05-25Chanay, Jeffrey A Esq PROPOSAL43Stephen Shaw
1032Julie T AlbaresFrance2024-06-21Dorl, James J Esq RENEWAL63Ioni Bowcher
1033Maria K BowleyFrance2024-06-16King, Christopher A Esq UNQUALIFIED70Anna Fali
1034James W IturbideArgentina2024-05-26Dorl, James J Esq RENEWAL94Bernardo Dominic
1035Misaki F KolmetzCanada2024-05-25Chapman, Ross E Esq UNQUALIFIED2Elwin Sharvill
1036Maria H NickaRussia2024-06-13Truhlar And Truhlar Attys QUALIFIED66Ioni Bowcher
1037Jeanfrancois W OstroskyGermany2024-06-04King, Christopher A Esq PROPOSAL3Elwin Sharvill
1038Adams T GarufiGermany2024-06-06Printing Dimensions QUALIFIED44Amy Elsner
1039Morrow L GlickJapan2024-06-16Feiner Bros UNQUALIFIED50Onyama Limba
1040Greenwood F OstroskyGermany2024-06-04Feltz Printing Service PROPOSAL40Anna Fali
1041Kaitlin V IturbideJapan2024-05-25Feltz Printing Service RENEWAL98Bernardo Dominic
1042Leon L OstroskyRussia2024-06-21Benton, John B Jr RENEWAL38Amy Elsner
1043Alejandro I CampainArgentina2024-06-20Chanay, Jeffrey A Esq RENEWAL98Stephen Shaw
1044Darci S BriddickFrance2024-06-06King, Christopher A Esq UNQUALIFIED25Xuxue Feng
1045Costa B ChuiBrazil2024-06-18Buckley Miller Wright UNQUALIFIED46Stephen Shaw
1046Smith Q PerinBrazil2024-06-14Printing Dimensions UNQUALIFIED86Ioni Bowcher
1047Faith C GauchoSpain2024-06-07Rangoni Of Florence NEGOTIATION9Elwin Sharvill
1048David C RimJapan2024-06-21Rangoni Of Florence QUALIFIED50Bernardo Dominic
1049Antonio V SlusarskiJapan2024-06-08Chanay, Jeffrey A Esq RENEWAL36Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
David O KuskoSpainAsiya Javayant RENEWAL
Greenwood A PoquetteGermanyXuxue Feng RENEWAL
Aika O WaycottJapanBernardo Dominic UNQUALIFIED
Greenwood H PoquetteAustraliaIoni Bowcher RENEWAL
Morrow U VenereAustraliaIvan Magalhaes RENEWAL
Adams S WhobreyFranceBernardo Dominic NEW
Costa Y SchemmerBrazilStephen Shaw NEGOTIATION
Francesco D CaudyIndiaAsiya Javayant UNQUALIFIED
Greenwood P PaprockiSpainIvan Magalhaes NEW
Cody E RulapaughCanadaXuxue Feng QUALIFIED
Chavez N GarufiAustraliaIvan Magalhaes NEW
Alejandro X VocelkaIndiaAmy Elsner RENEWAL
Leon H ShinkoCanadaAsiya Javayant NEGOTIATION
Maisha M NestleCanadaElwin Sharvill UNQUALIFIED
Morrow A StensethJapanAsiya Javayant QUALIFIED
David Z RoysterJapanElwin Sharvill QUALIFIED
Johnson J DoeRussiaBernardo Dominic UNQUALIFIED
Isabel I BowleyArgentinaAnna Fali NEW
Ashley W CaudyItalyIvan Magalhaes NEGOTIATION
James L FigeroaItalyAmy Elsner UNQUALIFIED
Octavia B MarrierRussiaElwin Sharvill NEW
Jennifer F OldroydBrazilIoni Bowcher PROPOSAL
James O RimSpainBernardo Dominic NEGOTIATION
Jennifer Z GlickJapanAsiya Javayant NEW
Murillo L MorascaBrazilBernardo Dominic NEW
Kaitlin L StockhamFranceIvan Magalhaes UNQUALIFIED
Jefferson H BowleyRussiaAnna Fali NEGOTIATION
Tony Y GillianUnited KingdomAsiya Javayant PROPOSAL
Misaki N TollnerFranceOnyama Limba RENEWAL
Silvio C WaycottSpainBernardo Dominic QUALIFIED
Nicolas R ShinkoAustraliaIoni Bowcher NEW
Juan Z StockhamBrazilIvan Magalhaes QUALIFIED
Aditya U WieserBrazilAsiya Javayant NEW
Aditya D GillianGermanyIvan Magalhaes RENEWAL
Silvio G RimUnited KingdomIoni Bowcher NEGOTIATION
Deepesh F RulapaughRussiaBernardo Dominic NEW
Ashley E SergiFranceBernardo Dominic NEW
Mayumi Z ButtItalyXuxue Feng UNQUALIFIED
Salvatore L SaylorsBrazilElwin Sharvill PROPOSAL
Greenwood T ShinkoRussiaAmy Elsner NEGOTIATION
Deepesh X VocelkaRussiaIoni Bowcher NEW
Munro L RoysterIndiaAmy Elsner NEGOTIATION
Jeanfrancois T AlbaresBrazilBernardo Dominic NEGOTIATION
Leon F DoeGermanyXuxue Feng NEW
Stacey H DilliardCanadaXuxue Feng NEGOTIATION
Jennifer B SlusarskiBrazilAnna Fali UNQUALIFIED
Sinclair D RoysterBrazilAsiya Javayant RENEWAL
Maisha F CaudyGermanyOnyama Limba UNQUALIFIED
Chavez Y FollerArgentinaElwin Sharvill PROPOSAL
Aika M AlbaresItalyAmy Elsner QUALIFIED
Frozen Columns
Name
Leja G Albares
Mayumi U Ostrosky
Costa U Saylors
Chavez H Bowley
Jennifer G Darakjy
Ashley Q Oldroyd
Isabel V Oldroyd
Mayumi M Morasca
Jeanfrancois F Royster
Darci X Iturbide
Rodrigues T Chui
Emily Z Schemmer
Isabel E Stockham
Antonio B Kolmetz
David V Poquette
David Z Ferencz
Clifford N Venere
Juan R Vocelka
Darci A Malet
Clifford J Schemmer
Aruna Q Iturbide
Isabel A Briddick
Claire A Rim
Misaki O Tollner
Wickens N Ferencz
Izzy N Perin
James X Caudy
Rodrigues Q Butt
Adams C Kusko
Greenwood L Poquette
Arvin U Venere
Johnson M Kolmetz
Sinclair Y Sergi
Morrow R Gillian
Jennifer Y Wieser
Jennifer K Butt
Wickens H Inouye
Greenwood R Kolmetz
Morrow R Gaucho
Leon U Venere
Cody B Nicka
Isabel V Whobrey
Octavia R Figeroa
Costa Q Ruta
Jeanfrancois N Darakjy
Octavia K Nicka
Mujtaba Q Darakjy
Silvio N Ruta
Emily E Malet
Munro N Royster
IdCountryDate
1000France2024-06-04
1001France2024-06-08
1002India2024-05-24
1003Argentina2024-06-21
1004Australia2024-05-23
1005France2024-06-12
1006United Kingdom2024-05-23
1007Spain2024-06-17
1008Argentina2024-05-26
1009Japan2024-06-05
1010Australia2024-05-23
1011Brazil2024-06-04
1012India2024-05-31
1013Argentina2024-05-25
1014Canada2024-06-05
1015Canada2024-06-07
1016Germany2024-06-09
1017Russia2024-05-26
1018Brazil2024-05-25
1019India2024-06-05
1020Australia2024-06-05
1021Germany2024-05-23
1022Russia2024-06-20
1023Germany2024-06-13
1024India2024-05-27
1025Russia2024-06-12
1026Russia2024-06-09
1027Japan2024-05-26
1028India2024-06-20
1029United Kingdom2024-05-28
1030Canada2024-06-10
1031Canada2024-05-29
1032Brazil2024-06-02
1033Russia2024-06-09
1034Japan2024-06-05
1035India2024-05-23
1036Italy2024-06-19
1037Argentina2024-06-20
1038Russia2024-06-03
1039Spain2024-06-16
1040France2024-06-16
1041Australia2024-05-28
1042France2024-06-20
1043Germany2024-05-30
1044Canada2024-06-14
1045France2024-05-29
1046Argentina2024-06-19
1047Italy2024-06-02
1048Japan2024-05-27
1049Japan2024-06-09

On-Demand Data

NameIdCountryDate
David Q Oldroyd1000United Kingdom2024-05-23
Cody V Iturbide1001United Kingdom2024-05-25
Deepesh S Kolmetz1002Italy2024-06-18
Mayumi D Nestle1003India2024-05-29
Alejandro C Briddick1004India2024-05-24
Adams X Shinko1005Japan2024-06-18
Murillo S Butt1006India2024-06-18
Kaitlin X Poquette1007Brazil2024-05-24
Octavia K Gaucho1008India2024-06-02
Juan C Poquette1009Japan2024-06-06
Clifford N Sergi1010Brazil2024-05-29
Johnson Q Sergi1011United Kingdom2024-06-10
Mayumi J Perin1012Canada2024-06-13
Arvin H Slusarski1013Argentina2024-06-20
Mujtaba H Rim1014Russia2024-05-26
Clifford G Morasca1015Italy2024-06-05
Isabel X Gaucho1016Germany2024-06-08
Mayumi I Flosi1017Australia2024-06-15
Kadeem J Whobrey1018Brazil2024-06-01
Tony J Schemmer1019Japan2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki E IturbideJapanElwin Sharvill QUALIFIED
Aika R NickaArgentinaAmy Elsner NEW
David G FollerRussiaAsiya Javayant NEGOTIATION
Kaitlin B NestleIndiaStephen Shaw NEW
Maria I RulapaughAustraliaElwin Sharvill PROPOSAL
Antonio E NestleRussiaElwin Sharvill NEW
Claire G IturbideArgentinaIvan Magalhaes UNQUALIFIED
Ivar C MacleadIndiaBernardo Dominic NEGOTIATION
Claire Z MorascaRussiaIoni Bowcher NEW
Darci M CaldareraUnited KingdomOnyama Limba PROPOSAL
Greenwood T MacleadCanadaAmy Elsner PROPOSAL
Misaki W OstroskyUnited KingdomElwin Sharvill NEW
Jones I FollerGermanyIoni Bowcher NEGOTIATION
Arvin V GarufiJapanAnna Fali RENEWAL
Costa Y NestleJapanStephen Shaw UNQUALIFIED
Greenwood B BriddickIndiaAnna Fali NEW
Juan H SergiArgentinaAnna Fali PROPOSAL
Ricardo F TollnerRussiaAmy Elsner NEW
Antonio A NickaArgentinaBernardo Dominic PROPOSAL
Arvin D WhobreyAustraliaIvan Magalhaes NEW
Aruna B RimCanadaIvan Magalhaes NEW
Salvatore O RoysterSpainOnyama Limba NEW
Kadeem M MarrierSpainXuxue Feng NEW
Leja Y TollnerIndiaBernardo Dominic NEGOTIATION
Adams E FlosiAustraliaXuxue Feng UNQUALIFIED
Johnson R PaprockiBrazilIvan Magalhaes NEW
Leja W OldroydItalyElwin Sharvill NEW
Nicolas G FerenczIndiaIvan Magalhaes UNQUALIFIED
Jones I GlickFranceIvan Magalhaes PROPOSAL
Stacey D VocelkaArgentinaXuxue Feng UNQUALIFIED
Faith U GarufiJapanIoni Bowcher NEGOTIATION
Antonio F GlickIndiaAmy Elsner NEW
Nicolas A SchemmerArgentinaOnyama Limba RENEWAL
Arvin X MorascaGermanyIvan Magalhaes RENEWAL
Maria S CaldareraCanadaAmy Elsner RENEWAL
Juan W RutaCanadaIvan Magalhaes NEW
Kadeem Z RulapaughCanadaIvan Magalhaes NEGOTIATION
Ashley A RulapaughGermanyAnna Fali PROPOSAL
Alejandro Z MaletRussiaBernardo Dominic PROPOSAL
Cody O InouyeUnited KingdomIvan Magalhaes 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>