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
Clifford O ChuiBrazilAnna Fali QUALIFIED
Aditya N SchemmerUnited KingdomAsiya Javayant NEW
Ashley X DilliardJapanAnna Fali NEGOTIATION
Ashley I FerenczBrazilAmy Elsner NEW
Mujtaba L DilliardItalyAnna Fali NEW
Antonio K MaletCanadaAnna Fali PROPOSAL
Faith B DarakjyRussiaXuxue Feng UNQUALIFIED
Smith U MorascaIndiaXuxue Feng PROPOSAL
Arvin E PaprockiCanadaAnna Fali RENEWAL
Claire X ButtFranceElwin Sharvill RENEWAL
Darci I VocelkaFranceStephen Shaw UNQUALIFIED
Claire V OldroydAustraliaOnyama Limba PROPOSAL
Munro Z GlickGermanyAmy Elsner NEGOTIATION
Sinclair K SchemmerIndiaAmy Elsner PROPOSAL
Ricardo B BriddickCanadaIvan Magalhaes RENEWAL
Adams N SchemmerItalyBernardo Dominic NEW
Silvio W NestleAustraliaBernardo Dominic NEGOTIATION
Faith O WhobreyArgentinaXuxue Feng UNQUALIFIED
Sinclair G NickaRussiaXuxue Feng RENEWAL
Jeanfrancois L SchemmerItalyOnyama Limba NEW
Adams U WaycottJapanElwin Sharvill QUALIFIED
Kaitlin T RoysterItalyStephen Shaw PROPOSAL
Aruna X KolmetzAustraliaAmy Elsner PROPOSAL
David P NestleJapanAmy Elsner UNQUALIFIED
Adams K MaletItalyBernardo Dominic NEW
Greenwood W RulapaughCanadaOnyama Limba RENEWAL
Alejandro W GauchoRussiaElwin Sharvill PROPOSAL
Costa O WaycottUnited KingdomAsiya Javayant NEW
Smith M RutaGermanyAsiya Javayant RENEWAL
Greenwood G PoquetteArgentinaIvan Magalhaes UNQUALIFIED
Julie Z RulapaughJapanAsiya Javayant QUALIFIED
Morrow X RutaJapanAsiya Javayant UNQUALIFIED
Jones W OldroydAustraliaXuxue Feng PROPOSAL
Ashley U VocelkaGermanyAnna Fali RENEWAL
Wickens X AlbaresArgentinaAsiya Javayant UNQUALIFIED
Kaitlin U CaudyBrazilStephen Shaw UNQUALIFIED
Faith J CampainGermanyXuxue Feng UNQUALIFIED
Maria V GillianBrazilXuxue Feng QUALIFIED
Costa A ChuiRussiaOnyama Limba PROPOSAL
David Y FlosiItalyIoni Bowcher NEGOTIATION
Kaitlin V MaletRussiaStephen Shaw QUALIFIED
Deepesh S GlickBrazilOnyama Limba PROPOSAL
James Q InouyeCanadaBernardo Dominic QUALIFIED
Isabel T GarufiItalyBernardo Dominic NEW
Octavia W SchemmerGermanyBernardo Dominic RENEWAL
Ashley I PerinBrazilAmy Elsner RENEWAL
Smith W RulapaughJapanOnyama Limba RENEWAL
Ricardo Z WaycottGermanyElwin Sharvill RENEWAL
Deepesh Y AmigonCanadaAmy Elsner UNQUALIFIED
Maria V WieserCanadaBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Silvio W PoquetteFranceOnyama Limba QUALIFIED
Sinclair J PaprockiGermanyElwin Sharvill PROPOSAL
Johnson R TollnerItalyXuxue Feng UNQUALIFIED
Faith E NestleSpainOnyama Limba NEW
Salvatore U AmigonJapanXuxue Feng NEGOTIATION
Mayumi N InouyeBrazilAnna Fali NEW
Izzy Q DilliardArgentinaElwin Sharvill RENEWAL
Costa A MaletArgentinaAmy Elsner PROPOSAL
Alejandro U WhobreyBrazilXuxue Feng RENEWAL
Aruna Z WhobreyCanadaStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie M MorascaIndia2024-05-28Benton, John B Jr QUALIFIED14Xuxue Feng
1001Octavia O GauchoSpain2024-06-04Chapman, Ross E Esq UNQUALIFIED8Bernardo Dominic
1002Jefferson R TollnerGermany2024-05-18Benton, John B Jr NEW48Ioni Bowcher
1003Faith D SaylorsSpain2024-05-16Morlong Associates NEGOTIATION89Ioni Bowcher
1004Emily F TollnerArgentina2024-05-28Truhlar And Truhlar Attys NEGOTIATION70Anna Fali
1005Murillo J PerinRussia2024-05-31Chemel, James L Cpa PROPOSAL0Anna Fali
1006Jones J RimItaly2024-05-25Chemel, James L Cpa RENEWAL34Ivan Magalhaes
1007Misaki A PerinJapan2024-06-10Chanay, Jeffrey A Esq UNQUALIFIED77Xuxue Feng
1008Jeanfrancois R RimGermany2024-05-24Benton, John B Jr QUALIFIED26Asiya Javayant
1009Silvio X MaletItaly2024-06-02Benton, John B Jr NEW13Ioni Bowcher
1010Izzy R MarrierAustralia2024-06-08Rousseaux, Michael Esq NEW64Elwin Sharvill
1011Misaki L MaletCanada2024-05-30Feltz Printing Service QUALIFIED14Bernardo Dominic
1012Smith Q RimJapan2024-05-20Chanay, Jeffrey A Esq QUALIFIED71Onyama Limba
1013Leja O FigeroaItaly2024-05-18Morlong Associates NEW7Anna Fali
1014Kadeem G DoeGermany2024-05-24Dorl, James J Esq QUALIFIED67Asiya Javayant
1015Octavia G FigeroaArgentina2024-05-17Dorl, James J Esq NEGOTIATION11Ivan Magalhaes
1016Mayumi M StockhamArgentina2024-05-15Chapman, Ross E Esq RENEWAL90Ivan Magalhaes
1017Rodrigues V StensethSpain2024-06-07Rangoni Of Florence NEW82Elwin Sharvill
1018Maria C OstroskyItaly2024-06-09Rangoni Of Florence UNQUALIFIED43Elwin Sharvill
1019Greenwood B GlickAustralia2024-05-24Morlong Associates NEGOTIATION48Ivan Magalhaes
1020Sinclair W RulapaughGermany2024-05-20Printing Dimensions NEGOTIATION99Amy Elsner
1021Jones H SchemmerUnited Kingdom2024-05-30Benton, John B Jr QUALIFIED85Amy Elsner
1022Jennifer M AmigonJapan2024-05-30Feiner Bros UNQUALIFIED18Onyama Limba
1023Nicolas M OldroydAustralia2024-06-02Chapman, Ross E Esq RENEWAL4Stephen Shaw
1024Izzy W FerenczUnited Kingdom2024-05-18Printing Dimensions NEW71Elwin Sharvill
1025Deepesh M MaletGermany2024-06-05Feltz Printing Service UNQUALIFIED53Xuxue Feng
1026Rodrigues Q SergiBrazil2024-05-31Chanay, Jeffrey A Esq QUALIFIED6Onyama Limba
1027Wickens U FigeroaFrance2024-05-17Chanay, Jeffrey A Esq QUALIFIED14Bernardo Dominic
1028Kadeem I ChuiRussia2024-06-09Chapman, Ross E Esq QUALIFIED61Bernardo Dominic
1029Aruna E KuskoBrazil2024-06-01Rangoni Of Florence QUALIFIED1Xuxue Feng
1030Isabel Y StensethJapan2024-05-25Dorl, James J Esq PROPOSAL6Ioni Bowcher
1031Greenwood Z OldroydJapan2024-05-24Commercial Press UNQUALIFIED85Anna Fali
1032Nicolas L NickaUnited Kingdom2024-05-19King, Christopher A Esq UNQUALIFIED6Anna Fali
1033Murillo X RulapaughUnited Kingdom2024-06-01Printing Dimensions NEGOTIATION95Onyama Limba
1034Misaki I PaprockiSpain2024-06-08Printing Dimensions UNQUALIFIED41Elwin Sharvill
1035Aruna O GlickCanada2024-05-17Truhlar And Truhlar Attys PROPOSAL95Ivan Magalhaes
1036Sinclair B MaletSpain2024-06-04Chapman, Ross E Esq NEGOTIATION2Anna Fali
1037Mayumi F InouyeUnited Kingdom2024-06-09Chapman, Ross E Esq PROPOSAL81Amy Elsner
1038Julie L ChuiJapan2024-05-19Benton, John B Jr NEW97Ivan Magalhaes
1039Aruna P MaletAustralia2024-05-31Benton, John B Jr NEW38Elwin Sharvill
1040James V FigeroaRussia2024-06-07Rousseaux, Michael Esq NEGOTIATION55Amy Elsner
1041Isabel T MacleadUnited Kingdom2024-06-10King, Christopher A Esq NEGOTIATION12Stephen Shaw
1042Antonio Z KuskoAustralia2024-05-31Buckley Miller Wright UNQUALIFIED97Elwin Sharvill
1043Misaki N BriddickItaly2024-05-12Chapman, Ross E Esq UNQUALIFIED31Ivan Magalhaes
1044Adams R NestleIndia2024-05-27Morlong Associates PROPOSAL12Anna Fali
1045Costa U MacleadIndia2024-05-12Buckley Miller Wright NEGOTIATION12Elwin Sharvill
1046Wickens O MarrierCanada2024-05-23Commercial Press PROPOSAL90Anna Fali
1047Juan E ShinkoJapan2024-06-04Commercial Press NEW69Ioni Bowcher
1048Leon C PoquetteRussia2024-05-27Rangoni Of Florence NEGOTIATION74Anna Fali
1049Adams D CaudyJapan2024-05-20Chanay, Jeffrey A Esq RENEWAL87Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Mujtaba Y KolmetzCanadaAsiya Javayant PROPOSAL
Aruna R GillianFranceXuxue Feng NEW
Octavia J FollerAustraliaAnna Fali NEGOTIATION
Aika P DilliardArgentinaOnyama Limba PROPOSAL
Mujtaba I GlickFranceOnyama Limba UNQUALIFIED
Izzy K OldroydJapanAmy Elsner QUALIFIED
Sinclair Y SaylorsFranceElwin Sharvill NEW
Clifford K InouyeRussiaIoni Bowcher PROPOSAL
Octavia Z MaletSpainBernardo Dominic UNQUALIFIED
Julie K FollerCanadaElwin Sharvill NEW
Jones D MacleadArgentinaAsiya Javayant NEW
Jennifer L CampainArgentinaIoni Bowcher PROPOSAL
Faith H OstroskyUnited KingdomBernardo Dominic PROPOSAL
Kaitlin N FerenczSpainIvan Magalhaes PROPOSAL
Ivar Y ChuiGermanyElwin Sharvill NEGOTIATION
Julie V OldroydGermanyAsiya Javayant UNQUALIFIED
Tony U MacleadGermanyIoni Bowcher RENEWAL
Mayumi U VenereCanadaAnna Fali RENEWAL
Jones W KuskoFranceAsiya Javayant QUALIFIED
Tony K SergiBrazilStephen Shaw NEGOTIATION
Clifford I FollerBrazilIvan Magalhaes RENEWAL
Antonio D WaycottGermanyBernardo Dominic UNQUALIFIED
Julie C MorascaBrazilIoni Bowcher QUALIFIED
Ivar T GarufiSpainIoni Bowcher NEW
Jeanfrancois Q IturbideBrazilAnna Fali PROPOSAL
Chavez C FigeroaFranceIoni Bowcher QUALIFIED
Nicolas O GlickFranceBernardo Dominic PROPOSAL
Jones B GlickJapanElwin Sharvill NEW
Juan M StockhamBrazilStephen Shaw NEW
Faith B WhobreySpainElwin Sharvill NEGOTIATION
Cody C InouyeCanadaXuxue Feng RENEWAL
Mujtaba E MacleadCanadaAnna Fali RENEWAL
Claire X MarrierRussiaAmy Elsner QUALIFIED
Kaitlin W PoquetteAustraliaOnyama Limba RENEWAL
Alejandro U DarakjyCanadaAmy Elsner PROPOSAL
Murillo W MacleadFranceIoni Bowcher RENEWAL
Faith M SchemmerItalyBernardo Dominic RENEWAL
Sinclair Y IturbideCanadaAsiya Javayant NEW
Claire R WieserFranceAsiya Javayant QUALIFIED
Jennifer K TollnerIndiaXuxue Feng RENEWAL
James T MaletArgentinaIoni Bowcher NEGOTIATION
David B GauchoFranceXuxue Feng QUALIFIED
Kaitlin Y OstroskyArgentinaIvan Magalhaes QUALIFIED
Wickens W RutaFranceIoni Bowcher NEW
Tony S NickaSpainOnyama Limba UNQUALIFIED
Kadeem N MorascaArgentinaStephen Shaw RENEWAL
Greenwood A BowleyCanadaOnyama Limba NEGOTIATION
Adams Q PaprockiBrazilIoni Bowcher RENEWAL
Costa L GauchoRussiaIoni Bowcher PROPOSAL
Francesco Z SlusarskiGermanyElwin Sharvill NEW
Frozen Columns
Name
Jefferson J Perin
Salvatore O Campain
Misaki A Slusarski
Chavez S Chui
Johnson J Iturbide
Aruna E Waycott
Adams M Paprocki
Antonio I Rulapaugh
Aruna L Doe
Antonio W Rulapaugh
Rodrigues X Maclead
Alejandro E Nicka
Kaitlin T Dilliard
Faith V Sergi
Julie S Bowley
Claire B Caudy
Kaitlin E Caldarera
Greenwood L Gaucho
Izzy Q Vocelka
Clifford Q Figeroa
Antonio T Kolmetz
Cody Q Tollner
Morrow D Dilliard
Claire R Venere
Munro C Tollner
Julie B Paprocki
Kadeem O Oldroyd
Juan X Kolmetz
Leja E Caudy
Ricardo X Flosi
Faith X Sergi
Smith U Rim
Greenwood N Rim
Isabel Z Whobrey
Costa V Oldroyd
Ivar H Darakjy
Jones P Stenseth
Salvatore D Whobrey
Chavez S Doe
Aditya D Sergi
Wickens F Campain
Isabel L Nestle
Wickens Y Rulapaugh
Misaki W Caldarera
Murillo N Paprocki
Maisha K Saylors
Izzy O Stockham
Ricardo E Saylors
Johnson Z Caudy
Smith L Royster
IdCountryDate
1000Canada2024-05-28
1001Argentina2024-05-18
1002Spain2024-06-07
1003Argentina2024-05-13
1004United Kingdom2024-05-29
1005Argentina2024-05-24
1006United Kingdom2024-05-21
1007Argentina2024-05-30
1008Australia2024-05-13
1009Australia2024-05-17
1010Italy2024-05-17
1011United Kingdom2024-06-10
1012France2024-05-28
1013France2024-05-18
1014Japan2024-05-19
1015United Kingdom2024-06-03
1016Argentina2024-06-05
1017Germany2024-05-25
1018Russia2024-05-13
1019Spain2024-06-02
1020Brazil2024-05-29
1021Argentina2024-05-31
1022United Kingdom2024-06-07
1023Spain2024-05-18
1024Italy2024-05-12
1025Germany2024-05-27
1026Brazil2024-05-25
1027Brazil2024-05-16
1028Italy2024-05-31
1029Japan2024-05-18
1030France2024-06-05
1031Canada2024-06-05
1032France2024-06-02
1033Brazil2024-05-22
1034Canada2024-06-03
1035Japan2024-05-31
1036Spain2024-05-20
1037Spain2024-05-30
1038India2024-05-19
1039Russia2024-05-30
1040Italy2024-06-07
1041Spain2024-05-14
1042Japan2024-05-14
1043India2024-05-15
1044Australia2024-05-16
1045Canada2024-06-10
1046Argentina2024-06-09
1047France2024-05-20
1048Russia2024-06-10
1049Canada2024-06-02

On-Demand Data

NameIdCountryDate
Ashley J Glick1000France2024-06-04
Misaki L Albares1001France2024-05-17
James D Stenseth1002India2024-05-13
Jennifer P Butt1003Italy2024-05-20
Stacey B Garufi1004France2024-06-08
Kadeem I Caldarera1005France2024-05-15
Jennifer G Whobrey1006Spain2024-05-18
Maria S Poquette1007Spain2024-05-26
Nicolas S Bowley1008India2024-05-26
Antonio X Gillian1009Canada2024-05-31
Kadeem R Amigon1010India2024-05-12
Maisha V Chui1011France2024-05-21
Aika Q Darakjy1012France2024-05-16
Munro H Amigon1013Russia2024-06-09
Darci U Foller1014Italy2024-05-27
Kadeem L Dilliard1015Italy2024-05-31
Izzy K Stenseth1016Germany2024-06-01
Faith D Bowley1017Japan2024-06-05
Wickens U Rulapaugh1018Italy2024-05-18
Ivar T Rulapaugh1019Canada2024-05-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody K InouyeAustraliaXuxue Feng PROPOSAL
Kaitlin D GlickItalyElwin Sharvill NEW
Silvio G MacleadAustraliaStephen Shaw RENEWAL
Leon H PerinBrazilIvan Magalhaes RENEWAL
Ivar O RimItalyAnna Fali NEW
Murillo Y MacleadJapanElwin Sharvill NEGOTIATION
Sinclair V SergiCanadaBernardo Dominic UNQUALIFIED
Aika V DoeArgentinaOnyama Limba UNQUALIFIED
Arvin M RulapaughGermanyXuxue Feng NEGOTIATION
Aruna B RimRussiaIoni Bowcher QUALIFIED
Murillo G InouyeRussiaBernardo Dominic NEGOTIATION
Emily F BologniaJapanIoni Bowcher RENEWAL
Chavez Q FollerItalyAmy Elsner UNQUALIFIED
David U SaylorsUnited KingdomBernardo Dominic PROPOSAL
Jefferson G SchemmerAustraliaBernardo Dominic RENEWAL
Darci G WhobreySpainAnna Fali PROPOSAL
Alejandro A RimFranceXuxue Feng UNQUALIFIED
Izzy P SergiCanadaXuxue Feng QUALIFIED
Chavez C VenereJapanAmy Elsner RENEWAL
Tony D WieserUnited KingdomAmy Elsner RENEWAL
Leja E GarufiBrazilXuxue Feng QUALIFIED
Faith H BologniaArgentinaBernardo Dominic UNQUALIFIED
Alejandro E BowleyBrazilStephen Shaw PROPOSAL
Mayumi M WieserUnited KingdomStephen Shaw UNQUALIFIED
Costa R KuskoItalyOnyama Limba NEGOTIATION
Emily L MarrierUnited KingdomIoni Bowcher UNQUALIFIED
Faith Y DilliardBrazilXuxue Feng QUALIFIED
Greenwood A PoquetteUnited KingdomStephen Shaw NEGOTIATION
Nicolas B NestleGermanyBernardo Dominic PROPOSAL
James U SergiAustraliaIvan Magalhaes RENEWAL
Sinclair D ShinkoRussiaElwin Sharvill PROPOSAL
Ricardo Z GillianGermanyStephen Shaw NEW
Ivar S SlusarskiRussiaXuxue Feng PROPOSAL
Kaitlin S CaldareraItalyIvan Magalhaes RENEWAL
Leja G NestleItalyAnna Fali NEGOTIATION
Sinclair L GlickGermanyIvan Magalhaes NEW
Costa E OldroydUnited KingdomBernardo Dominic NEGOTIATION
Tony U RulapaughBrazilElwin Sharvill UNQUALIFIED
Aika A ChuiUnited KingdomStephen Shaw NEW
Francesco I ButtFranceAsiya Javayant 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>