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
Ashley C FollerFranceAnna Fali NEW
Jefferson U StockhamAustraliaElwin Sharvill UNQUALIFIED
Greenwood V IturbideSpainStephen Shaw PROPOSAL
Nicolas P WaycottBrazilAsiya Javayant QUALIFIED
Emily C PaprockiAustraliaAnna Fali PROPOSAL
Maria B AlbaresUnited KingdomIvan Magalhaes NEGOTIATION
Munro M GauchoItalyAnna Fali UNQUALIFIED
Jeanfrancois M GauchoArgentinaBernardo Dominic PROPOSAL
Emily D GauchoIndiaAsiya Javayant NEW
Julie H BowleyIndiaBernardo Dominic PROPOSAL
Maria K GauchoRussiaAsiya Javayant PROPOSAL
James G MarrierSpainStephen Shaw UNQUALIFIED
Kadeem Y DilliardFranceAnna Fali NEW
Ricardo G SaylorsRussiaStephen Shaw PROPOSAL
Silvio C VocelkaGermanyXuxue Feng PROPOSAL
Octavia J WieserBrazilBernardo Dominic NEGOTIATION
Jones G PaprockiRussiaStephen Shaw RENEWAL
Smith D TollnerRussiaAsiya Javayant NEGOTIATION
Aruna A FerenczRussiaAsiya Javayant QUALIFIED
Chavez K SergiIndiaStephen Shaw PROPOSAL
Izzy F CampainJapanIvan Magalhaes RENEWAL
Arvin E PoquetteRussiaStephen Shaw QUALIFIED
Salvatore W GarufiBrazilIoni Bowcher NEW
Murillo T BologniaIndiaAsiya Javayant PROPOSAL
Isabel N RoysterAustraliaAsiya Javayant NEW
Sinclair B RutaCanadaAnna Fali RENEWAL
Emily H RulapaughSpainXuxue Feng UNQUALIFIED
Jeanfrancois S KuskoArgentinaOnyama Limba RENEWAL
Aditya A RulapaughRussiaAnna Fali QUALIFIED
Francesco F DoeBrazilAsiya Javayant UNQUALIFIED
Smith Q VenereIndiaIvan Magalhaes RENEWAL
Isabel O IturbideItalyStephen Shaw UNQUALIFIED
Kaitlin E WhobreySpainIvan Magalhaes UNQUALIFIED
Munro W CaldareraGermanyOnyama Limba UNQUALIFIED
Johnson X FollerUnited KingdomAmy Elsner RENEWAL
Mayumi N CaudyGermanyOnyama Limba RENEWAL
Clifford G NickaJapanAsiya Javayant NEGOTIATION
Leon I WhobreyRussiaXuxue Feng NEGOTIATION
Faith Q IturbideRussiaAsiya Javayant QUALIFIED
Rodrigues N WaycottFranceStephen Shaw PROPOSAL
Costa H WaycottJapanOnyama Limba PROPOSAL
Aditya E FollerUnited KingdomBernardo Dominic PROPOSAL
Francesco C WaycottSpainAmy Elsner NEGOTIATION
Arvin I WhobreyItalyIoni Bowcher QUALIFIED
Aditya V BologniaJapanOnyama Limba RENEWAL
Faith N SergiAustraliaStephen Shaw PROPOSAL
Antonio F VocelkaUnited KingdomStephen Shaw PROPOSAL
Ivar O TollnerRussiaBernardo Dominic RENEWAL
James W PerinItalyStephen Shaw NEW
Alejandro H CaudyItalyIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
James E VenereJapanOnyama Limba NEGOTIATION
Rodrigues S VocelkaSpainStephen Shaw QUALIFIED
Mujtaba R ShinkoItalyStephen Shaw RENEWAL
Aruna L WaycottSpainAmy Elsner RENEWAL
Cody X RutaGermanyOnyama Limba PROPOSAL
Deepesh W StensethIndiaStephen Shaw UNQUALIFIED
Smith T KolmetzFranceAmy Elsner NEGOTIATION
Darci Y IturbideRussiaStephen Shaw QUALIFIED
Deepesh P CampainIndiaXuxue Feng NEW
Munro E InouyeIndiaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jeanfrancois I AlbaresRussia2024-06-04Feiner Bros NEGOTIATION59Ivan Magalhaes
1001Clifford G GarufiJapan2024-05-27Rangoni Of Florence QUALIFIED44Stephen Shaw
1002David Y TollnerItaly2024-06-11Chanay, Jeffrey A Esq PROPOSAL15Bernardo Dominic
1003Julie Q NestleJapan2024-06-09Rousseaux, Michael Esq RENEWAL25Amy Elsner
1004Adams I MarrierArgentina2024-05-26Printing Dimensions NEGOTIATION91Asiya Javayant
1005Deepesh C RimJapan2024-06-03Feiner Bros NEGOTIATION45Anna Fali
1006Ricardo L RulapaughGermany2024-06-12Feltz Printing Service QUALIFIED50Stephen Shaw
1007Misaki J NickaItaly2024-06-05Benton, John B Jr QUALIFIED80Onyama Limba
1008Greenwood A FigeroaItaly2024-06-10Morlong Associates UNQUALIFIED52Amy Elsner
1009Deepesh R MacleadArgentina2024-06-18Rousseaux, Michael Esq NEGOTIATION6Elwin Sharvill
1010Arvin Z DoeJapan2024-05-30Morlong Associates NEGOTIATION1Ioni Bowcher
1011Mujtaba M PaprockiRussia2024-06-13King, Christopher A Esq PROPOSAL80Stephen Shaw
1012Misaki R DarakjyCanada2024-06-21Morlong Associates QUALIFIED2Xuxue Feng
1013Wickens O BowleySpain2024-06-19Rousseaux, Michael Esq NEW85Ivan Magalhaes
1014Aruna M SlusarskiBrazil2024-06-02Rousseaux, Michael Esq RENEWAL32Stephen Shaw
1015Rodrigues I MaletGermany2024-06-19Commercial Press NEGOTIATION19Stephen Shaw
1016Leja F SchemmerItaly2024-05-26Feltz Printing Service QUALIFIED75Onyama Limba
1017Claire Y ShinkoIndia2024-06-02Dorl, James J Esq UNQUALIFIED99Asiya Javayant
1018Julie V DoeAustralia2024-05-26Chemel, James L Cpa PROPOSAL40Ioni Bowcher
1019Jennifer F StockhamGermany2024-05-27Rousseaux, Michael Esq UNQUALIFIED32Elwin Sharvill
1020Isabel Z SergiCanada2024-06-15Commercial Press NEW92Bernardo Dominic
1021Nicolas C GlickArgentina2024-06-07Rousseaux, Michael Esq RENEWAL15Asiya Javayant
1022Darci T KolmetzCanada2024-06-10Benton, John B Jr UNQUALIFIED36Amy Elsner
1023Leon D PerinGermany2024-06-12Buckley Miller Wright NEGOTIATION73Ivan Magalhaes
1024Kaitlin J MaletCanada2024-06-12King, Christopher A Esq RENEWAL56Onyama Limba
1025Francesco J WhobreyBrazil2024-06-12Feltz Printing Service PROPOSAL80Xuxue Feng
1026David S FerenczBrazil2024-06-07Feiner Bros PROPOSAL18Ivan Magalhaes
1027Munro L PaprockiUnited Kingdom2024-05-25Chemel, James L Cpa NEGOTIATION11Ioni Bowcher
1028Alejandro K GarufiJapan2024-06-14Benton, John B Jr PROPOSAL66Anna Fali
1029Alejandro D IturbideAustralia2024-05-23Rousseaux, Michael Esq UNQUALIFIED77Asiya Javayant
1030Smith X GillianCanada2024-06-17King, Christopher A Esq UNQUALIFIED89Onyama Limba
1031Leon J FollerAustralia2024-06-05Feiner Bros QUALIFIED86Amy Elsner
1032Mayumi X GillianUnited Kingdom2024-06-07Printing Dimensions UNQUALIFIED52Bernardo Dominic
1033Jefferson F WaycottArgentina2024-05-26Rousseaux, Michael Esq QUALIFIED88Xuxue Feng
1034Izzy P CaldareraJapan2024-05-25Truhlar And Truhlar Attys PROPOSAL21Ioni Bowcher
1035Kadeem R IturbideGermany2024-06-20Benton, John B Jr PROPOSAL8Ivan Magalhaes
1036Misaki S StockhamAustralia2024-06-02Chemel, James L Cpa NEGOTIATION53Bernardo Dominic
1037Sinclair J RimSpain2024-05-27Benton, John B Jr RENEWAL9Xuxue Feng
1038Smith X VenereItaly2024-05-24Chemel, James L Cpa QUALIFIED91Onyama Limba
1039Juan M FerenczAustralia2024-06-04Chemel, James L Cpa NEGOTIATION58Ivan Magalhaes
1040Mujtaba L AlbaresAustralia2024-05-24Chanay, Jeffrey A Esq PROPOSAL17Ivan Magalhaes
1041Leon K CaudyRussia2024-06-13Chanay, Jeffrey A Esq PROPOSAL32Asiya Javayant
1042Stacey Z FlosiGermany2024-05-23Dorl, James J Esq RENEWAL38Xuxue Feng
1043Jennifer R BowleyArgentina2024-05-24Commercial Press NEGOTIATION52Stephen Shaw
1044Maria Y PaprockiFrance2024-05-24Rangoni Of Florence NEGOTIATION58Asiya Javayant
1045Murillo X MorascaRussia2024-06-14Benton, John B Jr QUALIFIED31Anna Fali
1046Mayumi X NickaJapan2024-06-08Chanay, Jeffrey A Esq QUALIFIED7Asiya Javayant
1047Salvatore O CaldareraSpain2024-05-28Chapman, Ross E Esq QUALIFIED56Stephen Shaw
1048Kaitlin N TollnerBrazil2024-06-03King, Christopher A Esq RENEWAL17Xuxue Feng
1049Deepesh H KuskoIndia2024-06-12Chapman, Ross E Esq PROPOSAL98Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Ivar B CaldareraArgentinaBernardo Dominic PROPOSAL
Morrow W StensethFranceElwin Sharvill NEGOTIATION
Leja Y KolmetzCanadaBernardo Dominic UNQUALIFIED
Octavia V PoquetteJapanIoni Bowcher QUALIFIED
Francesco T BologniaIndiaAsiya Javayant QUALIFIED
Smith K WaycottIndiaXuxue Feng RENEWAL
Aruna F RutaUnited KingdomStephen Shaw NEGOTIATION
Cody O VenereUnited KingdomXuxue Feng NEW
Jennifer N CaudyBrazilOnyama Limba NEGOTIATION
Arvin J BologniaSpainIoni Bowcher QUALIFIED
Chavez B SergiIndiaXuxue Feng UNQUALIFIED
Alejandro L ChuiGermanyElwin Sharvill QUALIFIED
Kadeem Y RutaSpainIoni Bowcher PROPOSAL
David G AmigonArgentinaIvan Magalhaes NEGOTIATION
Kadeem X WieserArgentinaElwin Sharvill NEW
Ricardo E PoquetteCanadaIoni Bowcher PROPOSAL
Munro S SlusarskiItalyXuxue Feng QUALIFIED
Darci L MorascaAustraliaAsiya Javayant NEW
Ivar V AmigonAustraliaOnyama Limba PROPOSAL
Cody J BologniaUnited KingdomStephen Shaw QUALIFIED
Munro F BowleyGermanyElwin Sharvill RENEWAL
Deepesh A VenereGermanyBernardo Dominic NEGOTIATION
Aditya N ButtCanadaBernardo Dominic QUALIFIED
Leon E FlosiJapanAsiya Javayant RENEWAL
Johnson M StockhamBrazilAmy Elsner QUALIFIED
Smith O MaletFranceAmy Elsner PROPOSAL
Sinclair T NickaItalyIvan Magalhaes NEW
Isabel H OstroskySpainElwin Sharvill PROPOSAL
Isabel B ShinkoItalyAsiya Javayant NEGOTIATION
Mujtaba J PerinJapanXuxue Feng NEGOTIATION
Isabel W StensethBrazilAmy Elsner NEW
Ivar H CaudyRussiaIoni Bowcher NEGOTIATION
Alejandro O CaldareraSpainIvan Magalhaes NEW
Mujtaba E GarufiRussiaBernardo Dominic UNQUALIFIED
Sinclair G TollnerArgentinaOnyama Limba PROPOSAL
Arvin E CaldareraSpainElwin Sharvill RENEWAL
Isabel P StockhamCanadaXuxue Feng NEGOTIATION
Morrow J TollnerBrazilBernardo Dominic NEGOTIATION
Octavia V OldroydCanadaIoni Bowcher PROPOSAL
Jones P RulapaughUnited KingdomXuxue Feng UNQUALIFIED
David J WhobreyGermanyStephen Shaw PROPOSAL
Tony D WhobreyBrazilIvan Magalhaes NEW
Aruna U KolmetzIndiaAnna Fali QUALIFIED
Aika J RutaItalyAnna Fali NEGOTIATION
Jones P MarrierSpainStephen Shaw NEGOTIATION
Tony K SergiGermanyAsiya Javayant QUALIFIED
Jennifer Q CampainFranceStephen Shaw NEGOTIATION
Salvatore W CaldareraAustraliaElwin Sharvill QUALIFIED
Rodrigues M ButtGermanyBernardo Dominic PROPOSAL
Ashley G MorascaGermanyAsiya Javayant NEGOTIATION
Frozen Columns
Name
Jefferson R Shinko
Julie S Albares
Johnson P Kolmetz
Clifford B Bowley
Jennifer P Perin
Leon D Amigon
Adams T Bowley
Leon K Schemmer
Maria H Oldroyd
Isabel L Tollner
Darci Q Stockham
Aditya L Marrier
Sinclair R Waycott
Ashley B Briddick
Sinclair T Campain
Johnson V Bowley
Morrow S Butt
Darci Z Malet
Adams C Inouye
Aruna D Foller
Nicolas D Caudy
Maisha P Campain
Morrow G Ferencz
Greenwood I Ostrosky
Munro W Slusarski
Arvin Z Gillian
Maria V Amigon
Aditya O Kusko
David Q Darakjy
Silvio B Sergi
Wickens C Foller
Kadeem R Maclead
Smith D Kusko
Stacey Q Schemmer
Wickens E Glick
Sinclair X Ruta
Octavia G Tollner
Aika I Albares
Jennifer W Amigon
James L Dilliard
Greenwood G Morasca
Adams A Waycott
Smith T Perin
Ashley I Saylors
Isabel J Stenseth
James V Saylors
Nicolas U Royster
Greenwood K Malet
Isabel M Marrier
Rodrigues M Caldarera
IdCountryDate
1000Canada2024-06-02
1001India2024-06-13
1002Russia2024-05-31
1003Japan2024-06-08
1004Spain2024-06-14
1005Spain2024-06-02
1006Germany2024-06-02
1007India2024-06-05
1008Spain2024-06-13
1009India2024-06-06
1010Germany2024-06-21
1011Italy2024-05-27
1012Argentina2024-06-08
1013France2024-06-07
1014Italy2024-06-17
1015Spain2024-06-21
1016Brazil2024-06-13
1017Argentina2024-06-11
1018Canada2024-06-04
1019Germany2024-06-15
1020Brazil2024-06-17
1021Argentina2024-05-23
1022France2024-06-18
1023Spain2024-06-01
1024Germany2024-06-09
1025Japan2024-06-15
1026Brazil2024-06-21
1027Germany2024-06-19
1028Canada2024-06-18
1029Japan2024-05-27
1030Canada2024-06-11
1031Japan2024-06-10
1032Canada2024-05-31
1033Italy2024-06-17
1034United Kingdom2024-06-08
1035Spain2024-06-01
1036Japan2024-06-16
1037Japan2024-05-31
1038Russia2024-06-03
1039Germany2024-05-30
1040India2024-05-29
1041United Kingdom2024-06-12
1042Argentina2024-05-30
1043Argentina2024-06-13
1044United Kingdom2024-06-03
1045United Kingdom2024-06-19
1046Japan2024-06-01
1047Canada2024-06-19
1048Australia2024-06-07
1049Australia2024-06-19

On-Demand Data

NameIdCountryDate
Misaki M Rulapaugh1000India2024-05-29
Jeanfrancois E Dilliard1001Italy2024-05-25
Antonio N Wieser1002Brazil2024-05-26
Silvio E Rim1003Germany2024-06-18
Kadeem U Ferencz1004Brazil2024-06-02
Maisha R Inouye1005India2024-06-01
Jefferson T Maclead1006France2024-06-11
Adams T Schemmer1007Australia2024-05-30
Rodrigues G Schemmer1008Australia2024-05-31
Aditya A Nicka1009Japan2024-06-09
Nicolas Q Malet1010Russia2024-05-31
Mujtaba W Foller1011Spain2024-06-06
Alejandro X Royster1012Russia2024-06-09
Ricardo W Oldroyd1013Spain2024-05-24
Misaki F Nestle1014India2024-05-29
Aika H Foller1015Germany2024-06-21
Maisha C Sergi1016Japan2024-06-18
Mujtaba V Paprocki1017Italy2024-06-20
Aditya A Campain1018Australia2024-06-17
Leja O Schemmer1019Germany2024-06-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey V DilliardRussiaIvan Magalhaes QUALIFIED
Silvio O DarakjyFranceStephen Shaw PROPOSAL
Juan L CaldareraCanadaXuxue Feng PROPOSAL
Ashley V VenereFranceBernardo Dominic RENEWAL
Aruna U MacleadRussiaIvan Magalhaes PROPOSAL
James N ShinkoUnited KingdomElwin Sharvill RENEWAL
Faith U VenereArgentinaAsiya Javayant NEW
Aruna U ShinkoGermanyAmy Elsner NEGOTIATION
Kadeem Q PaprockiArgentinaAnna Fali RENEWAL
Silvio U PaprockiFranceStephen Shaw RENEWAL
Kadeem T MacleadCanadaElwin Sharvill RENEWAL
Misaki K NickaCanadaIvan Magalhaes NEGOTIATION
Ashley T VenereUnited KingdomBernardo Dominic UNQUALIFIED
Smith Q ShinkoRussiaOnyama Limba NEGOTIATION
Sinclair L DarakjyRussiaBernardo Dominic QUALIFIED
Jefferson E FollerUnited KingdomBernardo Dominic QUALIFIED
Ashley T FollerAustraliaStephen Shaw QUALIFIED
David G TollnerGermanyAnna Fali UNQUALIFIED
Kadeem Y PerinGermanyIvan Magalhaes RENEWAL
Silvio V WaycottRussiaIoni Bowcher NEGOTIATION
Stacey N DilliardBrazilAsiya Javayant UNQUALIFIED
Greenwood L DarakjyRussiaAsiya Javayant UNQUALIFIED
Leon R CaldareraCanadaXuxue Feng QUALIFIED
Aika W DarakjySpainOnyama Limba RENEWAL
Adams G RutaSpainOnyama Limba NEGOTIATION
Juan U WhobreyAustraliaStephen Shaw NEW
Silvio T IturbideSpainIvan Magalhaes PROPOSAL
Jones O ButtAustraliaAnna Fali NEW
Mujtaba Z WieserFranceOnyama Limba PROPOSAL
Francesco W DarakjySpainAnna Fali NEGOTIATION
Darci P NickaBrazilAsiya Javayant QUALIFIED
Misaki F CaudyItalyAmy Elsner QUALIFIED
Aditya H CampainRussiaAnna Fali UNQUALIFIED
Jefferson G NickaBrazilElwin Sharvill UNQUALIFIED
Morrow P WhobreySpainIoni Bowcher NEGOTIATION
Munro I SergiRussiaAnna Fali UNQUALIFIED
Salvatore K FigeroaJapanElwin Sharvill NEGOTIATION
Smith I FerenczSpainAnna Fali PROPOSAL
Mujtaba X RutaRussiaXuxue Feng QUALIFIED
Silvio U KuskoCanadaStephen Shaw 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>