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
Ricardo P RoysterIndiaElwin Sharvill RENEWAL
Stacey Q SaylorsSpainOnyama Limba PROPOSAL
Octavia J VocelkaUnited KingdomAnna Fali UNQUALIFIED
Murillo L PerinSpainIoni Bowcher UNQUALIFIED
Jennifer X GarufiAustraliaStephen Shaw NEW
Francesco B OldroydRussiaIoni Bowcher NEGOTIATION
Nicolas M AmigonCanadaBernardo Dominic PROPOSAL
Aruna L FerenczArgentinaStephen Shaw NEGOTIATION
Smith G GauchoAustraliaElwin Sharvill NEW
Darci F StockhamJapanAnna Fali RENEWAL
Faith X WieserGermanyStephen Shaw NEW
Isabel I GillianIndiaOnyama Limba PROPOSAL
Salvatore Q ChuiIndiaBernardo Dominic RENEWAL
Antonio K CaudyGermanyAmy Elsner PROPOSAL
Francesco P ButtJapanXuxue Feng NEW
Salvatore K BologniaAustraliaXuxue Feng PROPOSAL
Munro N FlosiIndiaXuxue Feng UNQUALIFIED
Jennifer H AmigonGermanyAmy Elsner RENEWAL
Maisha W IturbideBrazilAnna Fali PROPOSAL
Nicolas R ChuiAustraliaAnna Fali QUALIFIED
Cody O MorascaCanadaBernardo Dominic UNQUALIFIED
Maria X WieserCanadaElwin Sharvill QUALIFIED
Kaitlin V ButtItalyAmy Elsner NEW
Nicolas D KuskoCanadaIvan Magalhaes NEW
Silvio Q GlickIndiaElwin Sharvill NEGOTIATION
Juan J DilliardJapanAnna Fali UNQUALIFIED
Darci L MarrierBrazilAsiya Javayant PROPOSAL
Morrow S MarrierRussiaStephen Shaw NEGOTIATION
Kaitlin M ChuiGermanyBernardo Dominic QUALIFIED
Aruna P ChuiIndiaOnyama Limba UNQUALIFIED
Mayumi R WaycottBrazilAmy Elsner RENEWAL
Mujtaba W GauchoUnited KingdomBernardo Dominic RENEWAL
Juan O ChuiItalyAnna Fali QUALIFIED
Izzy P AmigonGermanyXuxue Feng PROPOSAL
Emily B OldroydJapanOnyama Limba NEW
Aruna T NickaArgentinaIvan Magalhaes RENEWAL
Leja O DoeCanadaElwin Sharvill NEGOTIATION
Aruna X SlusarskiArgentinaOnyama Limba PROPOSAL
Maria V MorascaIndiaStephen Shaw NEW
Aruna W SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Smith N FlosiAustraliaAsiya Javayant NEW
Alejandro K KuskoRussiaAsiya Javayant QUALIFIED
Francesco X CampainBrazilOnyama Limba RENEWAL
Nicolas R IturbideFranceAnna Fali RENEWAL
Juan Z NestleArgentinaIoni Bowcher QUALIFIED
Octavia T GillianRussiaOnyama Limba RENEWAL
Morrow J DilliardUnited KingdomAnna Fali NEGOTIATION
Juan X FigeroaAustraliaBernardo Dominic UNQUALIFIED
Rodrigues C AlbaresGermanyBernardo Dominic PROPOSAL
Mayumi Q MaletJapanAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Aika V InouyeIndiaElwin Sharvill RENEWAL
Deepesh U VenereIndiaIvan Magalhaes PROPOSAL
Mujtaba V GlickUnited KingdomBernardo Dominic NEW
Octavia A GlickJapanOnyama Limba NEW
James S BriddickGermanyOnyama Limba PROPOSAL
Ivar R StockhamCanadaIoni Bowcher PROPOSAL
Aruna O MaletItalyIoni Bowcher PROPOSAL
Aditya Z BriddickSpainOnyama Limba NEW
Maisha G VocelkaRussiaIvan Magalhaes NEW
Silvio B FlosiAustraliaIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones O GillianItaly2024-05-22Buckley Miller Wright RENEWAL61Xuxue Feng
1001Adams Z SergiRussia2024-06-05Feiner Bros RENEWAL54Anna Fali
1002Murillo Y OstroskyGermany2024-05-30Printing Dimensions NEGOTIATION54Ioni Bowcher
1003Jones L MarrierIndia2024-05-31Morlong Associates PROPOSAL72Elwin Sharvill
1004Claire W MaletUnited Kingdom2024-05-29King, Christopher A Esq RENEWAL29Stephen Shaw
1005Silvio Y MarrierBrazil2024-06-04Truhlar And Truhlar Attys UNQUALIFIED7Stephen Shaw
1006Jones S MarrierIndia2024-06-07Printing Dimensions NEGOTIATION52Anna Fali
1007Jeanfrancois R NestleArgentina2024-05-20Feltz Printing Service NEGOTIATION54Ioni Bowcher
1008Greenwood Q ShinkoItaly2024-06-18Dorl, James J Esq UNQUALIFIED95Amy Elsner
1009Mayumi R FigeroaBrazil2024-06-16Feltz Printing Service NEW90Anna Fali
1010Clifford W KuskoIndia2024-05-24Chapman, Ross E Esq NEGOTIATION12Ivan Magalhaes
1011Ashley E GillianAustralia2024-06-06Commercial Press NEW83Elwin Sharvill
1012Jefferson X StensethArgentina2024-06-09Truhlar And Truhlar Attys QUALIFIED71Bernardo Dominic
1013James I MacleadIndia2024-05-22King, Christopher A Esq NEGOTIATION40Ivan Magalhaes
1014Morrow A SlusarskiRussia2024-05-22Rangoni Of Florence PROPOSAL96Ioni Bowcher
1015Maria C CaudyAustralia2024-06-15Morlong Associates QUALIFIED70Ivan Magalhaes
1016Aika V SergiCanada2024-06-11Chemel, James L Cpa PROPOSAL54Elwin Sharvill
1017Rodrigues D RoysterRussia2024-05-29Rangoni Of Florence QUALIFIED80Bernardo Dominic
1018Morrow P RimSpain2024-06-13Dorl, James J Esq QUALIFIED54Elwin Sharvill
1019Izzy N FlosiJapan2024-05-29Chemel, James L Cpa PROPOSAL45Onyama Limba
1020Cody K VocelkaJapan2024-06-15Feiner Bros NEGOTIATION62Ivan Magalhaes
1021Morrow M VenereBrazil2024-06-04Chemel, James L Cpa NEW74Anna Fali
1022Mujtaba L InouyeFrance2024-05-26Commercial Press NEW78Bernardo Dominic
1023David V SlusarskiFrance2024-05-27Chapman, Ross E Esq PROPOSAL33Elwin Sharvill
1024Rodrigues R FigeroaFrance2024-05-22Chapman, Ross E Esq PROPOSAL70Stephen Shaw
1025David J RimFrance2024-06-09Chanay, Jeffrey A Esq PROPOSAL59Elwin Sharvill
1026Smith Y CaldareraJapan2024-05-31Rousseaux, Michael Esq NEGOTIATION15Amy Elsner
1027Tony I WieserIndia2024-05-27Benton, John B Jr PROPOSAL39Anna Fali
1028Chavez B GauchoIndia2024-06-12Dorl, James J Esq PROPOSAL87Xuxue Feng
1029Kadeem L PoquetteIndia2024-06-03Dorl, James J Esq PROPOSAL42Onyama Limba
1030Mujtaba C MarrierGermany2024-06-16Buckley Miller Wright RENEWAL68Amy Elsner
1031Kadeem U DarakjyItaly2024-06-17Rousseaux, Michael Esq UNQUALIFIED70Bernardo Dominic
1032Wickens P KuskoIndia2024-06-02Printing Dimensions NEGOTIATION39Amy Elsner
1033Izzy D DilliardFrance2024-05-30Feltz Printing Service QUALIFIED13Amy Elsner
1034Ivar T MarrierRussia2024-05-30Rangoni Of Florence PROPOSAL66Onyama Limba
1035Alejandro D SchemmerGermany2024-05-20Truhlar And Truhlar Attys UNQUALIFIED15Stephen Shaw
1036Adams D WhobreyJapan2024-06-06Commercial Press PROPOSAL91Stephen Shaw
1037James H OstroskyCanada2024-06-16Chanay, Jeffrey A Esq UNQUALIFIED69Amy Elsner
1038Darci U RulapaughUnited Kingdom2024-06-01Commercial Press QUALIFIED26Amy Elsner
1039Ricardo T SchemmerCanada2024-06-18Morlong Associates NEW1Bernardo Dominic
1040Stacey D FlosiCanada2024-06-01Feltz Printing Service NEW19Stephen Shaw
1041Faith T IturbideCanada2024-05-26Printing Dimensions NEW55Ivan Magalhaes
1042Juan Z VenereSpain2024-06-14Dorl, James J Esq NEGOTIATION48Bernardo Dominic
1043Ricardo J CampainCanada2024-05-22Printing Dimensions QUALIFIED20Asiya Javayant
1044Jennifer Z OldroydAustralia2024-05-28Morlong Associates UNQUALIFIED75Asiya Javayant
1045Claire M MacleadFrance2024-06-14Commercial Press NEW61Ioni Bowcher
1046Rodrigues Z ChuiFrance2024-06-08Chemel, James L Cpa UNQUALIFIED5Anna Fali
1047Munro F SergiSpain2024-05-20Printing Dimensions RENEWAL8Anna Fali
1048David F ButtBrazil2024-05-26Feltz Printing Service QUALIFIED28Ivan Magalhaes
1049Adams X OldroydGermany2024-06-12Commercial Press RENEWAL65Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Octavia O PerinIndiaIoni Bowcher RENEWAL
Darci E NickaBrazilStephen Shaw NEW
Chavez K PaprockiJapanStephen Shaw NEW
Chavez N RimGermanyAmy Elsner QUALIFIED
Izzy H NestleAustraliaIvan Magalhaes NEGOTIATION
Stacey L WhobreyJapanAsiya Javayant QUALIFIED
Adams Q ButtIndiaAsiya Javayant NEW
Clifford C KolmetzBrazilAsiya Javayant NEGOTIATION
Maria Z FigeroaIndiaIvan Magalhaes NEW
Octavia T SlusarskiCanadaStephen Shaw PROPOSAL
Clifford Y PoquetteJapanAmy Elsner NEGOTIATION
Emily Z OstroskyArgentinaOnyama Limba QUALIFIED
Silvio A MarrierCanadaAmy Elsner RENEWAL
Adams S NestleRussiaOnyama Limba PROPOSAL
James F AmigonIndiaElwin Sharvill RENEWAL
Mayumi A ButtItalyBernardo Dominic NEGOTIATION
Darci U DoeItalyAsiya Javayant QUALIFIED
Murillo H MacleadItalyAmy Elsner UNQUALIFIED
David A AmigonAustraliaOnyama Limba NEW
Octavia G FollerSpainAnna Fali PROPOSAL
Faith A BologniaFranceAnna Fali PROPOSAL
Ivar N KolmetzAustraliaAnna Fali NEW
Ashley F IturbideJapanBernardo Dominic PROPOSAL
Morrow X ChuiArgentinaAmy Elsner PROPOSAL
Julie O RimUnited KingdomAnna Fali UNQUALIFIED
Rodrigues F WhobreyAustraliaAsiya Javayant NEGOTIATION
Julie E MarrierJapanAnna Fali QUALIFIED
Smith L NestleItalyIvan Magalhaes PROPOSAL
Emily W InouyeRussiaElwin Sharvill QUALIFIED
Octavia B NickaIndiaAsiya Javayant NEGOTIATION
Wickens W AlbaresArgentinaBernardo Dominic NEGOTIATION
Kadeem I OstroskyItalyAnna Fali PROPOSAL
Maria J BowleyGermanyAsiya Javayant NEGOTIATION
Murillo N DoeCanadaBernardo Dominic PROPOSAL
Smith T AlbaresArgentinaBernardo Dominic NEGOTIATION
Cody N WhobreyFranceAsiya Javayant RENEWAL
Stacey U DoeUnited KingdomAmy Elsner PROPOSAL
Clifford B DoeGermanyBernardo Dominic UNQUALIFIED
Salvatore R VocelkaArgentinaAmy Elsner PROPOSAL
Adams B InouyeSpainAsiya Javayant QUALIFIED
Costa L SchemmerUnited KingdomElwin Sharvill UNQUALIFIED
James M NickaJapanOnyama Limba RENEWAL
Smith M DarakjyBrazilBernardo Dominic UNQUALIFIED
Mayumi S StockhamSpainXuxue Feng QUALIFIED
Julie X VenereUnited KingdomAsiya Javayant UNQUALIFIED
Leja C VocelkaGermanyBernardo Dominic UNQUALIFIED
Jones E WieserFranceElwin Sharvill NEW
Jefferson J IturbideRussiaIvan Magalhaes RENEWAL
Munro N NestleJapanAmy Elsner QUALIFIED
Smith I VenereJapanElwin Sharvill RENEWAL
Frozen Columns
Name
Antonio E Ostrosky
Juan B Briddick
Ashley T Tollner
Isabel D Venere
Deepesh P Briddick
Ricardo S Kolmetz
Isabel N Caldarera
Francesco H Poquette
Octavia D Morasca
Kadeem D Waycott
Antonio M Chui
Maria V Ruta
Rodrigues N Caudy
Nicolas N Whobrey
Chavez P Venere
Juan B Stenseth
Maria K Rulapaugh
Misaki M Gaucho
Tony R Darakjy
Jennifer S Flosi
Claire D Malet
Jeanfrancois T Gaucho
Nicolas Y Inouye
Johnson H Vocelka
Costa Y Slusarski
Morrow Q Foller
David O Wieser
Francesco M Darakjy
Kaitlin S Butt
Munro K Butt
Rodrigues F Campain
James R Saylors
Mayumi Z Paprocki
Ashley M Royster
Stacey M Kusko
Darci Q Iturbide
Ashley O Figeroa
Sinclair E Perin
Isabel K Inouye
Leja Q Wieser
Kaitlin D Ruta
Adams I Chui
Claire B Bolognia
Morrow P Malet
Jefferson N Stenseth
Clifford V Amigon
Johnson M Dilliard
Mujtaba O Royster
Costa I Bolognia
Mujtaba C Poquette
IdCountryDate
1000Australia2024-06-03
1001United Kingdom2024-05-24
1002Spain2024-06-01
1003Argentina2024-06-09
1004France2024-05-21
1005France2024-06-18
1006France2024-05-27
1007Spain2024-06-09
1008Australia2024-06-05
1009India2024-06-01
1010Canada2024-05-31
1011Australia2024-05-23
1012United Kingdom2024-05-24
1013Japan2024-06-12
1014Argentina2024-06-02
1015Brazil2024-06-06
1016France2024-06-14
1017Australia2024-05-23
1018Australia2024-06-07
1019Germany2024-05-27
1020India2024-05-29
1021United Kingdom2024-06-13
1022Russia2024-06-01
1023Argentina2024-06-14
1024Italy2024-05-22
1025Argentina2024-05-31
1026Australia2024-06-07
1027India2024-05-26
1028Russia2024-06-15
1029United Kingdom2024-06-05
1030Argentina2024-05-20
1031Germany2024-05-30
1032Argentina2024-05-25
1033Australia2024-06-07
1034India2024-05-22
1035France2024-05-25
1036Spain2024-06-07
1037Brazil2024-06-13
1038Spain2024-06-16
1039Brazil2024-06-04
1040France2024-06-03
1041Canada2024-06-09
1042India2024-06-15
1043United Kingdom2024-06-12
1044Germany2024-06-07
1045Italy2024-05-24
1046Argentina2024-05-26
1047Argentina2024-06-17
1048Japan2024-06-02
1049Argentina2024-06-17

On-Demand Data

NameIdCountryDate
Emily C Waycott1000Canada2024-05-26
Clifford F Glick1001Spain2024-06-12
Salvatore C Schemmer1002United Kingdom2024-06-03
Aika C Kolmetz1003India2024-06-18
Smith G Gillian1004Spain2024-06-10
David C Wieser1005Germany2024-05-27
Octavia P Gillian1006Argentina2024-05-24
Ivar U Iturbide1007Italy2024-06-14
Clifford F Inouye1008Germany2024-06-09
Munro A Schemmer1009Spain2024-05-31
Stacey L Waycott1010India2024-05-21
Kaitlin N Stenseth1011Brazil2024-05-27
Darci T Kusko1012Italy2024-06-08
Stacey S Chui1013India2024-06-01
Greenwood U Foller1014France2024-05-24
Francesco O Marrier1015United Kingdom2024-06-05
Octavia Y Nestle1016Argentina2024-06-08
Alejandro S Flosi1017France2024-05-23
Kadeem K Malet1018India2024-06-09
Claire R Figeroa1019Australia2024-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams G IturbideAustraliaAmy Elsner RENEWAL
Maria B ButtJapanIoni Bowcher PROPOSAL
Ivar T SaylorsArgentinaAmy Elsner PROPOSAL
Antonio T TollnerItalyOnyama Limba NEW
Silvio X BologniaIndiaAnna Fali RENEWAL
Mujtaba Q CampainAustraliaAmy Elsner PROPOSAL
Silvio F MarrierFranceIoni Bowcher QUALIFIED
Jones S BowleyCanadaIvan Magalhaes NEW
Deepesh F ChuiGermanyElwin Sharvill UNQUALIFIED
Costa Y DarakjyCanadaOnyama Limba NEGOTIATION
Ricardo T MacleadGermanyIvan Magalhaes NEW
Octavia M SchemmerJapanStephen Shaw NEGOTIATION
Sinclair T OldroydCanadaStephen Shaw PROPOSAL
Jefferson D StockhamItalyIoni Bowcher PROPOSAL
Chavez B VocelkaIndiaXuxue Feng NEGOTIATION
Juan G FigeroaUnited KingdomIoni Bowcher NEW
Juan U PerinBrazilAsiya Javayant RENEWAL
Murillo Y MaletIndiaAmy Elsner NEGOTIATION
Jefferson Q RimSpainXuxue Feng UNQUALIFIED
Munro S RoysterAustraliaAsiya Javayant NEW
Chavez P WieserJapanBernardo Dominic RENEWAL
Darci X KolmetzItalyXuxue Feng NEW
Cody Y GillianAustraliaBernardo Dominic NEGOTIATION
Mayumi L StockhamJapanAnna Fali NEGOTIATION
Octavia O BriddickCanadaStephen Shaw NEGOTIATION
Rodrigues N CaldareraBrazilAnna Fali NEW
Mujtaba R PoquetteArgentinaIvan Magalhaes QUALIFIED
David Y SergiGermanyXuxue Feng QUALIFIED
Costa Q StockhamJapanAnna Fali PROPOSAL
Tony X MaletGermanyIoni Bowcher NEGOTIATION
Maria K SergiArgentinaIvan Magalhaes PROPOSAL
Aruna E WaycottCanadaIvan Magalhaes PROPOSAL
Misaki T BologniaSpainIvan Magalhaes PROPOSAL
Morrow J KuskoJapanStephen Shaw QUALIFIED
Maisha R RutaAustraliaIvan Magalhaes RENEWAL
Arvin Q BologniaIndiaElwin Sharvill QUALIFIED
Cody E PoquetteFranceBernardo Dominic NEGOTIATION
Darci G WhobreyCanadaIvan Magalhaes RENEWAL
Julie B MorascaBrazilOnyama Limba PROPOSAL
Darci K NickaIndiaAnna Fali 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>