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
Darci L ShinkoFranceAsiya Javayant QUALIFIED
Murillo Z CaudyAustraliaBernardo Dominic RENEWAL
Stacey C SaylorsJapanElwin Sharvill QUALIFIED
Julie I DoeArgentinaAmy Elsner RENEWAL
Isabel J CampainUnited KingdomStephen Shaw NEGOTIATION
Maria U PerinBrazilXuxue Feng QUALIFIED
Clifford X GillianBrazilStephen Shaw RENEWAL
Arvin I FerenczArgentinaIoni Bowcher RENEWAL
Deepesh H StensethUnited KingdomElwin Sharvill PROPOSAL
Mujtaba D SaylorsAustraliaElwin Sharvill PROPOSAL
Jefferson X IturbideUnited KingdomStephen Shaw RENEWAL
Leja M RoysterFranceAmy Elsner UNQUALIFIED
Chavez L DilliardGermanyAnna Fali NEGOTIATION
Cody W InouyeSpainAsiya Javayant UNQUALIFIED
Nicolas U MaletSpainBernardo Dominic UNQUALIFIED
Octavia P AmigonAustraliaOnyama Limba NEGOTIATION
Antonio F StockhamFranceAmy Elsner NEGOTIATION
Costa U BriddickItalyBernardo Dominic QUALIFIED
Faith Y VocelkaUnited KingdomStephen Shaw NEGOTIATION
Francesco X RulapaughJapanStephen Shaw NEGOTIATION
Cody Y RimBrazilAmy Elsner NEGOTIATION
Sinclair N PoquetteAustraliaXuxue Feng QUALIFIED
Tony D RimIndiaIoni Bowcher NEGOTIATION
Mujtaba G BowleyBrazilBernardo Dominic NEGOTIATION
Wickens A KuskoAustraliaStephen Shaw RENEWAL
Chavez G PoquetteUnited KingdomIoni Bowcher QUALIFIED
Darci Q DoeJapanOnyama Limba RENEWAL
Silvio N ShinkoJapanOnyama Limba UNQUALIFIED
Izzy G VocelkaJapanIoni Bowcher NEW
Sinclair R SergiUnited KingdomAmy Elsner UNQUALIFIED
Mujtaba K FerenczArgentinaOnyama Limba QUALIFIED
Cody F BowleyJapanElwin Sharvill NEW
Arvin I FlosiBrazilOnyama Limba QUALIFIED
Aika B MarrierItalyIvan Magalhaes QUALIFIED
Jefferson W RutaCanadaXuxue Feng QUALIFIED
Nicolas R DoeBrazilAnna Fali PROPOSAL
Ashley A PoquetteJapanIoni Bowcher QUALIFIED
Costa P MarrierSpainOnyama Limba NEGOTIATION
Mayumi A FollerBrazilOnyama Limba RENEWAL
Ivar H WaycottArgentinaIoni Bowcher PROPOSAL
Murillo B PaprockiFranceAnna Fali UNQUALIFIED
Claire H BriddickBrazilElwin Sharvill UNQUALIFIED
Isabel K WhobreyUnited KingdomXuxue Feng QUALIFIED
Alejandro E RoysterFranceStephen Shaw QUALIFIED
Juan R GlickRussiaAsiya Javayant NEW
Isabel H PoquetteIndiaAsiya Javayant NEW
Ivar D MaletCanadaBernardo Dominic NEW
Kadeem N DoeCanadaIoni Bowcher QUALIFIED
Jennifer C RutaCanadaXuxue Feng NEGOTIATION
Darci H PaprockiFranceElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Cody D ChuiCanadaAnna Fali RENEWAL
Greenwood R TollnerBrazilElwin Sharvill NEGOTIATION
Sinclair E WieserAustraliaStephen Shaw QUALIFIED
James N SlusarskiIndiaIoni Bowcher UNQUALIFIED
Kaitlin Y InouyeBrazilAsiya Javayant RENEWAL
Clifford T SchemmerSpainXuxue Feng PROPOSAL
Antonio K KolmetzIndiaStephen Shaw NEW
Greenwood H ButtSpainBernardo Dominic NEW
Julie T SaylorsItalyElwin Sharvill UNQUALIFIED
Jefferson W NestleBrazilBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Octavia S RulapaughRussia2024-06-15Benton, John B Jr PROPOSAL23Anna Fali
1001Rodrigues L SlusarskiUnited Kingdom2024-06-10Morlong Associates QUALIFIED73Onyama Limba
1002Kaitlin N WieserBrazil2024-05-29Chapman, Ross E Esq NEW91Amy Elsner
1003Morrow L VenereBrazil2024-06-16Rangoni Of Florence NEW66Bernardo Dominic
1004Deepesh G OldroydCanada2024-05-24Chapman, Ross E Esq PROPOSAL33Elwin Sharvill
1005Sinclair W RimSpain2024-06-15Morlong Associates UNQUALIFIED39Ivan Magalhaes
1006Alejandro K DarakjyUnited Kingdom2024-05-27Benton, John B Jr PROPOSAL75Xuxue Feng
1007Izzy X StensethBrazil2024-05-26Rousseaux, Michael Esq RENEWAL29Amy Elsner
1008Mayumi X MarrierCanada2024-06-16Chemel, James L Cpa NEW31Elwin Sharvill
1009Jefferson Y NickaRussia2024-06-02Rousseaux, Michael Esq NEW53Amy Elsner
1010Murillo S CaudyBrazil2024-05-24Morlong Associates NEW74Asiya Javayant
1011Adams L CaudyUnited Kingdom2024-06-05Chapman, Ross E Esq UNQUALIFIED51Ivan Magalhaes
1012Aika J NickaGermany2024-06-17Benton, John B Jr QUALIFIED67Bernardo Dominic
1013Claire K OldroydGermany2024-06-17Feltz Printing Service PROPOSAL94Amy Elsner
1014Jones I FlosiGermany2024-05-30Truhlar And Truhlar Attys UNQUALIFIED43Amy Elsner
1015Aruna E WaycottFrance2024-06-08Chanay, Jeffrey A Esq NEW52Anna Fali
1016James I MacleadJapan2024-05-25Morlong Associates UNQUALIFIED27Ioni Bowcher
1017Francesco C MarrierAustralia2024-06-04Feltz Printing Service PROPOSAL56Stephen Shaw
1018Clifford Z PaprockiArgentina2024-06-11Chemel, James L Cpa NEGOTIATION60Stephen Shaw
1019Emily M KuskoIndia2024-06-08Feiner Bros QUALIFIED28Anna Fali
1020Smith Y OstroskyGermany2024-06-04Feiner Bros UNQUALIFIED18Anna Fali
1021Ivar V OstroskyItaly2024-06-07Benton, John B Jr PROPOSAL35Stephen Shaw
1022Juan P IturbideSpain2024-05-20Feltz Printing Service RENEWAL74Xuxue Feng
1023Aruna F DoeIndia2024-06-11Feltz Printing Service NEW45Ioni Bowcher
1024Ashley U FerenczIndia2024-06-16Chapman, Ross E Esq QUALIFIED26Asiya Javayant
1025Silvio G CaudyJapan2024-06-15Chapman, Ross E Esq PROPOSAL81Anna Fali
1026Izzy D MorascaCanada2024-06-02Benton, John B Jr NEW7Ivan Magalhaes
1027Smith W ShinkoCanada2024-05-24Chemel, James L Cpa NEW5Anna Fali
1028Faith V WhobreyFrance2024-05-30Morlong Associates RENEWAL9Xuxue Feng
1029Arvin H SlusarskiAustralia2024-06-08Dorl, James J Esq NEW69Bernardo Dominic
1030Jones K KolmetzItaly2024-05-28Printing Dimensions QUALIFIED70Bernardo Dominic
1031Aditya A StockhamFrance2024-05-30Rousseaux, Michael Esq RENEWAL28Anna Fali
1032Jeanfrancois F FollerFrance2024-05-23Chanay, Jeffrey A Esq UNQUALIFIED19Ioni Bowcher
1033Johnson N SlusarskiBrazil2024-06-16Printing Dimensions RENEWAL6Onyama Limba
1034Mujtaba R SergiJapan2024-06-07Feiner Bros QUALIFIED44Elwin Sharvill
1035Maisha C VenereIndia2024-06-15Feltz Printing Service NEW28Xuxue Feng
1036Antonio X SchemmerAustralia2024-06-15King, Christopher A Esq PROPOSAL2Xuxue Feng
1037Wickens A RoysterFrance2024-05-23Feltz Printing Service QUALIFIED58Bernardo Dominic
1038Deepesh D RutaJapan2024-05-26Rangoni Of Florence NEGOTIATION82Onyama Limba
1039Emily D KolmetzGermany2024-05-29Rousseaux, Michael Esq UNQUALIFIED76Ivan Magalhaes
1040Alejandro T VenereItaly2024-06-16Morlong Associates UNQUALIFIED17Amy Elsner
1041Faith P CaudyArgentina2024-06-01Chapman, Ross E Esq UNQUALIFIED74Amy Elsner
1042Darci M NestleFrance2024-05-28Feltz Printing Service RENEWAL1Asiya Javayant
1043Leja P MorascaJapan2024-06-06Morlong Associates QUALIFIED63Anna Fali
1044Wickens W SchemmerUnited Kingdom2024-05-29Chanay, Jeffrey A Esq QUALIFIED42Ivan Magalhaes
1045Munro L NickaJapan2024-05-30Rousseaux, Michael Esq UNQUALIFIED87Bernardo Dominic
1046Murillo M SergiUnited Kingdom2024-06-07Chanay, Jeffrey A Esq UNQUALIFIED69Ioni Bowcher
1047Ricardo Z StensethIndia2024-05-29Feltz Printing Service UNQUALIFIED27Asiya Javayant
1048Kadeem R MarrierArgentina2024-05-21Printing Dimensions RENEWAL34Ioni Bowcher
1049Maisha H FerenczSpain2024-05-27Chemel, James L Cpa RENEWAL54Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Greenwood Z AmigonGermanyOnyama Limba NEGOTIATION
David P BowleyRussiaBernardo Dominic NEGOTIATION
Kadeem T ButtBrazilIoni Bowcher QUALIFIED
Aika J BowleyRussiaIvan Magalhaes NEW
Johnson N OldroydAustraliaStephen Shaw PROPOSAL
Jennifer M VocelkaUnited KingdomIoni Bowcher QUALIFIED
Mujtaba E OldroydGermanyElwin Sharvill NEGOTIATION
Clifford V StensethIndiaAmy Elsner QUALIFIED
Isabel N PoquetteArgentinaIvan Magalhaes RENEWAL
Izzy L SchemmerGermanyElwin Sharvill NEW
Ivar H MaletRussiaXuxue Feng RENEWAL
Morrow H FlosiFranceAsiya Javayant PROPOSAL
Misaki W AlbaresItalyXuxue Feng UNQUALIFIED
Deepesh K CaudyJapanXuxue Feng PROPOSAL
Ashley N NestleBrazilXuxue Feng PROPOSAL
Murillo V StockhamSpainAmy Elsner UNQUALIFIED
Aditya E MaletArgentinaOnyama Limba UNQUALIFIED
Aruna L DoeUnited KingdomBernardo Dominic UNQUALIFIED
Nicolas E GauchoFranceBernardo Dominic NEW
Greenwood G RulapaughGermanyBernardo Dominic RENEWAL
Maria D MaletUnited KingdomAsiya Javayant NEW
Mayumi L PaprockiRussiaAnna Fali PROPOSAL
Johnson W VocelkaBrazilAnna Fali NEGOTIATION
Silvio C MarrierGermanyAsiya Javayant PROPOSAL
Claire P DilliardGermanyIoni Bowcher RENEWAL
Adams F FigeroaSpainAsiya Javayant NEGOTIATION
Deepesh K MaletGermanyAsiya Javayant NEGOTIATION
Costa K BriddickUnited KingdomIoni Bowcher NEW
Munro Y MaletAustraliaBernardo Dominic NEW
Munro O AlbaresAustraliaBernardo Dominic NEGOTIATION
Maisha B PoquetteFranceXuxue Feng QUALIFIED
Kadeem P StockhamSpainOnyama Limba NEW
Ivar Y TollnerGermanyAsiya Javayant NEGOTIATION
Jeanfrancois A RimFranceElwin Sharvill NEGOTIATION
Chavez O IturbideRussiaAsiya Javayant QUALIFIED
Aditya Z IturbideBrazilAmy Elsner NEW
Kadeem Y NickaIndiaStephen Shaw PROPOSAL
Deepesh S PaprockiGermanyXuxue Feng NEGOTIATION
Misaki Z MaletFranceElwin Sharvill RENEWAL
Alejandro F VenereIndiaAsiya Javayant QUALIFIED
Kaitlin W WaycottGermanyOnyama Limba QUALIFIED
Aditya W StensethRussiaIvan Magalhaes PROPOSAL
Jennifer N PoquetteBrazilOnyama Limba RENEWAL
Maisha C DarakjyGermanyBernardo Dominic PROPOSAL
Alejandro N StockhamSpainBernardo Dominic RENEWAL
Clifford L KuskoFranceBernardo Dominic PROPOSAL
Aditya W WhobreySpainXuxue Feng RENEWAL
Salvatore P InouyeIndiaXuxue Feng RENEWAL
Silvio W FigeroaIndiaXuxue Feng QUALIFIED
Rodrigues W FigeroaCanadaXuxue Feng UNQUALIFIED
Frozen Columns
Name
Greenwood O Amigon
Maria J Malet
Francesco Y Poquette
Antonio B Wieser
Smith N Flosi
Nicolas Q Iturbide
David I Gaucho
Smith G Whobrey
David A Ruta
Jones N Marrier
Antonio I Caldarera
Emily A Bolognia
Jones P Foller
David X Shinko
Tony X Wieser
Kaitlin I Darakjy
Claire U Rim
Deepesh I Ferencz
Octavia O Caldarera
Maria Z Iturbide
Johnson W Gillian
Salvatore F Foller
Jennifer D Ostrosky
Tony Q Poquette
Johnson L Stockham
Mayumi S Royster
Jennifer C Kusko
James N Ruta
Ricardo Z Schemmer
Julie O Perin
Chavez X Figeroa
Costa L Iturbide
Julie V Schemmer
Leon J Rulapaugh
Nicolas C Wieser
Smith Y Garufi
Jennifer E Rim
Greenwood Z Malet
Salvatore H Flosi
Murillo X Kusko
Mujtaba W Venere
Greenwood T Kolmetz
Claire Q Malet
Adams P Sergi
Arvin I Paprocki
Jeanfrancois E Oldroyd
Wickens A Rulapaugh
Stacey F Saylors
Aruna B Stenseth
Julie B Ferencz
IdCountryDate
1000Argentina2024-06-04
1001Italy2024-06-13
1002Japan2024-05-28
1003Italy2024-05-29
1004France2024-06-04
1005France2024-06-07
1006Russia2024-06-16
1007Brazil2024-06-09
1008United Kingdom2024-05-20
1009Germany2024-05-26
1010Japan2024-05-30
1011Australia2024-06-18
1012Germany2024-06-17
1013France2024-06-01
1014France2024-06-14
1015Germany2024-06-17
1016United Kingdom2024-06-08
1017Italy2024-06-02
1018Brazil2024-05-30
1019Canada2024-06-16
1020Italy2024-06-04
1021Brazil2024-06-04
1022Russia2024-06-14
1023India2024-05-26
1024India2024-05-23
1025Australia2024-05-27
1026Australia2024-06-05
1027Australia2024-05-20
1028United Kingdom2024-06-11
1029France2024-06-06
1030Italy2024-05-21
1031Spain2024-05-22
1032Russia2024-06-16
1033France2024-06-11
1034Germany2024-06-11
1035United Kingdom2024-06-09
1036France2024-06-09
1037Italy2024-06-02
1038Argentina2024-06-16
1039France2024-06-01
1040Brazil2024-06-04
1041Australia2024-06-17
1042Germany2024-05-20
1043Spain2024-06-09
1044Brazil2024-06-01
1045Japan2024-06-07
1046Russia2024-05-28
1047Argentina2024-05-21
1048Australia2024-06-11
1049Brazil2024-06-03

On-Demand Data

NameIdCountryDate
Leja C Foller1000Spain2024-06-04
Leja K Marrier1001France2024-05-20
Salvatore N Kusko1002Japan2024-05-24
Greenwood W Ruta1003France2024-05-31
Octavia R Campain1004United Kingdom2024-06-18
James Z Vocelka1005Russia2024-05-20
Misaki C Perin1006France2024-05-28
Clifford T Oldroyd1007France2024-06-03
Tony J Malet1008India2024-06-11
Maria I Nestle1009France2024-06-10
Leon K Tollner1010Germany2024-05-26
David H Gaucho1011India2024-06-18
Faith S Schemmer1012Germany2024-06-05
Francesco T Nicka1013Canada2024-06-13
Misaki K Glick1014Italy2024-05-31
Alejandro E Doe1015India2024-06-04
Johnson T Glick1016Canada2024-06-11
James V Wieser1017Russia2024-05-25
Murillo S Chui1018Argentina2024-06-18
Adams W Malet1019Spain2024-05-31
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams O TollnerIndiaXuxue Feng QUALIFIED
Ricardo K FlosiUnited KingdomAmy Elsner PROPOSAL
Jefferson N PerinRussiaAnna Fali UNQUALIFIED
Juan L CaldareraAustraliaStephen Shaw RENEWAL
Juan U CaudySpainIvan Magalhaes NEGOTIATION
Stacey J SchemmerCanadaOnyama Limba PROPOSAL
Clifford H NickaRussiaBernardo Dominic RENEWAL
Morrow B SaylorsAustraliaStephen Shaw NEW
Misaki Q GillianGermanyStephen Shaw NEGOTIATION
Octavia Q SergiAustraliaXuxue Feng NEW
Johnson B DoeGermanyAsiya Javayant NEGOTIATION
Isabel M MaletJapanIoni Bowcher RENEWAL
Isabel R KolmetzGermanyAsiya Javayant PROPOSAL
Smith X OstroskyIndiaIvan Magalhaes NEGOTIATION
Tony U CaudyBrazilAmy Elsner RENEWAL
Greenwood H FlosiSpainOnyama Limba QUALIFIED
Kaitlin T MarrierCanadaOnyama Limba NEW
Mujtaba K MorascaCanadaOnyama Limba PROPOSAL
Kadeem B FollerAustraliaAmy Elsner QUALIFIED
Aditya O DilliardJapanXuxue Feng RENEWAL
Murillo X FollerJapanBernardo Dominic RENEWAL
Salvatore J GillianItalyAsiya Javayant PROPOSAL
Clifford X NestleJapanXuxue Feng PROPOSAL
Silvio N FlosiArgentinaOnyama Limba PROPOSAL
Leon R FigeroaArgentinaIoni Bowcher PROPOSAL
Rodrigues O VocelkaJapanAmy Elsner QUALIFIED
Kaitlin U RoysterSpainAnna Fali PROPOSAL
Leon S VocelkaUnited KingdomAsiya Javayant QUALIFIED
Greenwood J MaletGermanyIoni Bowcher QUALIFIED
Izzy M DoeRussiaStephen Shaw RENEWAL
Francesco Q CaudyUnited KingdomIoni Bowcher RENEWAL
Emily X MacleadArgentinaAnna Fali NEW
Jeanfrancois J GlickJapanAmy Elsner RENEWAL
Rodrigues L WaycottUnited KingdomAnna Fali NEW
Munro B GlickIndiaBernardo Dominic PROPOSAL
Mayumi U PerinFranceStephen Shaw NEGOTIATION
Francesco W IturbideRussiaBernardo Dominic QUALIFIED
Greenwood G KolmetzArgentinaIoni Bowcher NEGOTIATION
Mayumi Z SergiRussiaAmy Elsner UNQUALIFIED
Salvatore F CaldareraUnited KingdomXuxue Feng 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>