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
Jefferson G RulapaughBrazilOnyama Limba RENEWAL
Ashley R ChuiJapanAmy Elsner PROPOSAL
Nicolas D SergiRussiaElwin Sharvill NEGOTIATION
Cody Y MarrierFranceXuxue Feng QUALIFIED
Leon Z AlbaresRussiaXuxue Feng NEGOTIATION
Smith H GlickSpainIvan Magalhaes NEW
Maria X ChuiRussiaXuxue Feng QUALIFIED
Juan T GarufiCanadaBernardo Dominic NEW
Morrow Y StensethIndiaAnna Fali PROPOSAL
Smith D NestleBrazilAnna Fali PROPOSAL
Sinclair J MaletUnited KingdomBernardo Dominic QUALIFIED
Jeanfrancois R CampainArgentinaElwin Sharvill QUALIFIED
Salvatore N MaletUnited KingdomBernardo Dominic PROPOSAL
Morrow B RimItalyOnyama Limba NEGOTIATION
Aika A TollnerRussiaIvan Magalhaes NEW
Kadeem N OstroskyBrazilBernardo Dominic NEW
Isabel F RulapaughAustraliaAsiya Javayant NEW
Darci F FerenczItalyAnna Fali UNQUALIFIED
Munro R PerinRussiaOnyama Limba RENEWAL
David D KolmetzItalyXuxue Feng NEGOTIATION
Ashley B StockhamItalyBernardo Dominic QUALIFIED
Clifford V NestleJapanBernardo Dominic PROPOSAL
Tony L TollnerIndiaAnna Fali PROPOSAL
Kaitlin X NickaGermanyAnna Fali QUALIFIED
Sinclair K ButtIndiaStephen Shaw QUALIFIED
Greenwood Q PoquetteJapanAmy Elsner QUALIFIED
Wickens D ButtItalyBernardo Dominic PROPOSAL
Faith M WaycottCanadaElwin Sharvill PROPOSAL
Salvatore L FollerFranceAmy Elsner NEGOTIATION
Kadeem U DarakjyAustraliaElwin Sharvill RENEWAL
Wickens A SchemmerUnited KingdomStephen Shaw NEW
Kaitlin Y RoysterCanadaOnyama Limba RENEWAL
Maisha Z PoquetteJapanIoni Bowcher NEW
Tony G CaudyArgentinaElwin Sharvill UNQUALIFIED
Clifford X ChuiGermanyStephen Shaw UNQUALIFIED
Arvin K BowleyArgentinaIvan Magalhaes PROPOSAL
Aditya R GauchoCanadaElwin Sharvill NEGOTIATION
Morrow N IturbideCanadaBernardo Dominic QUALIFIED
Ashley C SergiRussiaIvan Magalhaes PROPOSAL
Leon W StensethFranceXuxue Feng QUALIFIED
Isabel V CaudyFranceIoni Bowcher UNQUALIFIED
Jennifer P PerinIndiaAnna Fali RENEWAL
Deepesh C MacleadCanadaIvan Magalhaes NEW
Sinclair D StockhamBrazilAnna Fali NEGOTIATION
Maisha J StockhamSpainAnna Fali UNQUALIFIED
Alejandro F FlosiJapanXuxue Feng RENEWAL
Morrow K CampainAustraliaOnyama Limba RENEWAL
Darci R WieserJapanIoni Bowcher RENEWAL
Mayumi S KolmetzJapanAnna Fali RENEWAL
Tony X GlickFranceStephen Shaw QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Munro V GauchoUnited KingdomXuxue Feng NEW
Maisha R GillianGermanyOnyama Limba QUALIFIED
Cody G SchemmerFranceBernardo Dominic QUALIFIED
Adams H SaylorsAustraliaIoni Bowcher RENEWAL
Deepesh W FigeroaIndiaAnna Fali NEGOTIATION
Aditya Z CaldareraItalyElwin Sharvill QUALIFIED
Ivar A ButtUnited KingdomStephen Shaw QUALIFIED
Misaki A PoquetteItalyIvan Magalhaes NEGOTIATION
Leja Z MarrierItalyAsiya Javayant NEGOTIATION
Julie M SchemmerItalyAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha C SergiItaly2024-05-31Chanay, Jeffrey A Esq RENEWAL4Bernardo Dominic
1001Ashley Z DarakjyIndia2024-06-01Dorl, James J Esq UNQUALIFIED3Asiya Javayant
1002Smith U WaycottSpain2024-06-13Feiner Bros QUALIFIED25Stephen Shaw
1003Francesco Y SergiIndia2024-05-26Rangoni Of Florence NEW95Amy Elsner
1004Maria X PerinIndia2024-06-02Morlong Associates NEW19Ioni Bowcher
1005Leon I StensethBrazil2024-06-07Benton, John B Jr NEW64Bernardo Dominic
1006Kadeem G WaycottCanada2024-06-18Rousseaux, Michael Esq QUALIFIED27Amy Elsner
1007Sinclair K SlusarskiGermany2024-05-23Rangoni Of Florence NEGOTIATION53Anna Fali
1008Aika F MacleadIndia2024-05-22Feiner Bros QUALIFIED9Stephen Shaw
1009Emily I InouyeJapan2024-06-05Feiner Bros UNQUALIFIED53Bernardo Dominic
1010Jones P VenereArgentina2024-05-21Printing Dimensions NEGOTIATION22Amy Elsner
1011Munro X DilliardJapan2024-06-12Chanay, Jeffrey A Esq QUALIFIED87Elwin Sharvill
1012Antonio C BriddickJapan2024-06-07Rangoni Of Florence NEW17Amy Elsner
1013Tony W GlickJapan2024-05-23Benton, John B Jr UNQUALIFIED85Bernardo Dominic
1014Chavez N OstroskyBrazil2024-05-29Truhlar And Truhlar Attys RENEWAL27Amy Elsner
1015Francesco C BriddickIndia2024-06-01Rousseaux, Michael Esq NEW49Onyama Limba
1016Maisha E GlickUnited Kingdom2024-06-08Rousseaux, Michael Esq NEW53Bernardo Dominic
1017Stacey Q MaletBrazil2024-05-21Buckley Miller Wright PROPOSAL2Xuxue Feng
1018Leja W InouyeArgentina2024-06-13Rousseaux, Michael Esq NEW99Elwin Sharvill
1019Antonio H GlickFrance2024-06-11Dorl, James J Esq NEGOTIATION39Anna Fali
1020Juan E RutaJapan2024-06-01Chemel, James L Cpa NEGOTIATION64Anna Fali
1021Julie U CaldareraSpain2024-06-05Rangoni Of Florence UNQUALIFIED67Xuxue Feng
1022Claire C GauchoGermany2024-05-22Dorl, James J Esq NEGOTIATION43Ivan Magalhaes
1023Faith L TollnerUnited Kingdom2024-05-26Dorl, James J Esq PROPOSAL40Stephen Shaw
1024Nicolas I PaprockiSpain2024-05-27Chemel, James L Cpa PROPOSAL57Amy Elsner
1025Faith E ShinkoSpain2024-06-11Chapman, Ross E Esq NEW83Bernardo Dominic
1026Kadeem L FollerIndia2024-06-15Commercial Press NEW7Ivan Magalhaes
1027Munro K RimAustralia2024-06-12Feltz Printing Service NEGOTIATION51Amy Elsner
1028Claire W DoeItaly2024-06-04Feltz Printing Service PROPOSAL94Amy Elsner
1029Mujtaba I CaudySpain2024-06-04Dorl, James J Esq QUALIFIED55Elwin Sharvill
1030David C OldroydIndia2024-05-27Morlong Associates RENEWAL25Bernardo Dominic
1031Nicolas A CaldareraFrance2024-05-22Morlong Associates NEW74Onyama Limba
1032Cody C SlusarskiCanada2024-06-17Buckley Miller Wright PROPOSAL12Onyama Limba
1033Clifford W CampainArgentina2024-06-13Feltz Printing Service NEGOTIATION39Xuxue Feng
1034Darci E KolmetzJapan2024-06-18Truhlar And Truhlar Attys NEGOTIATION46Amy Elsner
1035Isabel T MorascaItaly2024-05-21Feiner Bros UNQUALIFIED28Asiya Javayant
1036Smith Z ChuiUnited Kingdom2024-06-05Chemel, James L Cpa PROPOSAL69Stephen Shaw
1037Tony Z SaylorsItaly2024-05-30Printing Dimensions PROPOSAL29Onyama Limba
1038James J BologniaFrance2024-06-13Benton, John B Jr UNQUALIFIED91Onyama Limba
1039Salvatore N TollnerGermany2024-05-31Truhlar And Truhlar Attys RENEWAL38Bernardo Dominic
1040Emily S PaprockiRussia2024-06-16Printing Dimensions PROPOSAL62Xuxue Feng
1041Antonio B RulapaughGermany2024-06-02Chanay, Jeffrey A Esq NEW34Bernardo Dominic
1042Ivar B NickaUnited Kingdom2024-06-04Morlong Associates NEW64Ivan Magalhaes
1043Rodrigues S StensethGermany2024-06-03Feltz Printing Service UNQUALIFIED56Xuxue Feng
1044Izzy M MaletUnited Kingdom2024-06-16King, Christopher A Esq NEGOTIATION75Ioni Bowcher
1045Maria Z NestleItaly2024-05-21King, Christopher A Esq PROPOSAL98Bernardo Dominic
1046Leon C MarrierCanada2024-06-03Chemel, James L Cpa UNQUALIFIED21Xuxue Feng
1047Sinclair B AmigonUnited Kingdom2024-06-18Chapman, Ross E Esq QUALIFIED41Elwin Sharvill
1048Clifford A IturbideCanada2024-06-13Commercial Press RENEWAL29Amy Elsner
1049Chavez D SchemmerSpain2024-05-29Feltz Printing Service NEGOTIATION4Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Jefferson L MarrierArgentinaIoni Bowcher QUALIFIED
Greenwood T PerinFranceAsiya Javayant PROPOSAL
Misaki H GarufiSpainBernardo Dominic RENEWAL
Alejandro V BologniaFranceIoni Bowcher NEW
Murillo A MaletBrazilOnyama Limba NEGOTIATION
Chavez R RulapaughAustraliaElwin Sharvill NEGOTIATION
Wickens G GauchoGermanyXuxue Feng UNQUALIFIED
Maria M NestleAustraliaIvan Magalhaes QUALIFIED
Maisha V RoysterUnited KingdomAnna Fali UNQUALIFIED
Sinclair Q FollerIndiaXuxue Feng UNQUALIFIED
Maisha T RutaFranceStephen Shaw PROPOSAL
Leja I AlbaresRussiaAnna Fali RENEWAL
Misaki S RimArgentinaIoni Bowcher QUALIFIED
Leja L GillianGermanyBernardo Dominic PROPOSAL
Maisha U SergiUnited KingdomIoni Bowcher NEGOTIATION
Francesco O InouyeRussiaIoni Bowcher PROPOSAL
Arvin W FlosiJapanBernardo Dominic NEGOTIATION
Sinclair W StockhamRussiaAsiya Javayant UNQUALIFIED
Darci E InouyeAustraliaIvan Magalhaes PROPOSAL
Antonio D InouyeJapanElwin Sharvill RENEWAL
Jeanfrancois V MarrierSpainIvan Magalhaes UNQUALIFIED
Maria U RoysterBrazilIvan Magalhaes NEGOTIATION
Arvin V AlbaresJapanAmy Elsner PROPOSAL
Costa K PoquetteRussiaStephen Shaw NEW
Isabel Z VenereRussiaOnyama Limba NEW
Aika T WhobreyFranceElwin Sharvill PROPOSAL
Aditya K VenereRussiaXuxue Feng QUALIFIED
Izzy V NestleCanadaElwin Sharvill PROPOSAL
Ricardo U MaletUnited KingdomXuxue Feng NEGOTIATION
Aditya T AlbaresFranceIoni Bowcher NEGOTIATION
Cody X RoysterSpainStephen Shaw QUALIFIED
Salvatore D ShinkoBrazilXuxue Feng PROPOSAL
Rodrigues V BologniaIndiaElwin Sharvill QUALIFIED
Julie Z WieserCanadaBernardo Dominic RENEWAL
Kadeem O BriddickGermanyAsiya Javayant PROPOSAL
Murillo E SchemmerJapanOnyama Limba NEW
Salvatore H SaylorsItalyIoni Bowcher NEW
Morrow N TollnerFranceIoni Bowcher NEGOTIATION
Silvio X FigeroaArgentinaAmy Elsner RENEWAL
David G SaylorsAustraliaAsiya Javayant RENEWAL
Jones E KuskoBrazilStephen Shaw QUALIFIED
Octavia Q BowleyBrazilStephen Shaw PROPOSAL
Julie I PaprockiItalyIvan Magalhaes RENEWAL
Johnson S FigeroaJapanAsiya Javayant PROPOSAL
Maisha P DoeUnited KingdomAmy Elsner NEW
Wickens K MaletCanadaAnna Fali RENEWAL
Costa B CampainArgentinaIoni Bowcher PROPOSAL
Ashley Z GarufiBrazilXuxue Feng PROPOSAL
Sinclair V GarufiItalyOnyama Limba QUALIFIED
Claire F MorascaIndiaBernardo Dominic PROPOSAL
Frozen Columns
Name
Isabel K Stockham
Kadeem Y Campain
Kaitlin N Briddick
Kadeem J Sergi
Misaki N Ruta
Claire Z Slusarski
Tony R Tollner
Wickens B Royster
Munro P Iturbide
Leja O Shinko
Johnson M Amigon
Nicolas Z Nestle
Mujtaba T Waycott
Juan C Glick
Stacey U Vocelka
Tony H Albares
Francesco D Whobrey
James H Foller
Greenwood X Rulapaugh
Francesco N Doe
Ricardo Q Foller
Kaitlin E Inouye
Silvio T Wieser
Faith W Kusko
Leon A Iturbide
Aditya H Sergi
Maisha U Nicka
Wickens J Kusko
Adams V Poquette
Misaki H Ruta
Mujtaba K Kolmetz
Aruna Z Venere
Francesco J Rulapaugh
Chavez H Malet
Ricardo Q Bolognia
Morrow H Gillian
Nicolas H Foller
Aruna Y Briddick
Maria O Malet
Ricardo N Darakjy
Cody S Iturbide
Octavia X Amigon
Faith G Doe
Ivar F Marrier
Chavez O Ferencz
Julie D Vocelka
Maria M Ruta
Ricardo G Nestle
Mayumi H Ferencz
Emily S Amigon
IdCountryDate
1000Japan2024-05-27
1001Argentina2024-05-20
1002Russia2024-06-16
1003Brazil2024-06-13
1004Argentina2024-05-26
1005Italy2024-06-01
1006India2024-06-06
1007Russia2024-06-13
1008Russia2024-06-03
1009India2024-05-24
1010United Kingdom2024-06-12
1011Japan2024-05-23
1012Brazil2024-06-06
1013Brazil2024-06-14
1014Argentina2024-06-09
1015India2024-06-08
1016France2024-05-21
1017Argentina2024-05-24
1018Italy2024-06-04
1019Brazil2024-05-30
1020India2024-05-25
1021Argentina2024-06-07
1022Canada2024-06-07
1023Canada2024-06-03
1024Argentina2024-06-17
1025Australia2024-05-25
1026Canada2024-06-14
1027India2024-06-12
1028India2024-05-22
1029United Kingdom2024-05-20
1030United Kingdom2024-06-12
1031Italy2024-05-23
1032Russia2024-05-27
1033Italy2024-06-04
1034Argentina2024-05-23
1035Argentina2024-05-24
1036Italy2024-05-24
1037Japan2024-05-31
1038United Kingdom2024-06-14
1039Brazil2024-05-23
1040Brazil2024-05-26
1041India2024-06-11
1042Australia2024-06-07
1043Russia2024-05-30
1044Russia2024-05-26
1045Japan2024-06-07
1046Argentina2024-06-06
1047Germany2024-06-02
1048Germany2024-05-24
1049Canada2024-06-03

On-Demand Data

NameIdCountryDate
Greenwood O Stockham1000India2024-06-15
Stacey O Dilliard1001Germany2024-05-31
Deepesh V Nicka1002India2024-06-18
Aika Y Bolognia1003Italy2024-06-01
Ivar O Ruta1004France2024-06-12
Costa L Darakjy1005Australia2024-06-04
James U Gaucho1006Australia2024-05-29
Aika G Slusarski1007Spain2024-06-14
Tony P Maclead1008Argentina2024-06-09
Clifford Q Vocelka1009Australia2024-06-09
Francesco Z Albares1010India2024-06-17
Faith A Chui1011Italy2024-06-06
Cody J Campain1012Japan2024-06-16
Faith J Iturbide1013Canada2024-06-17
Kaitlin F Kusko1014Spain2024-06-08
Alejandro H Shinko1015Canada2024-06-13
Jones Y Schemmer1016France2024-06-06
Jones N Briddick1017Australia2024-06-05
Chavez K Vocelka1018Spain2024-06-10
Leja V Kolmetz1019Brazil2024-05-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Julie W FollerSpainOnyama Limba RENEWAL
David Q GillianBrazilBernardo Dominic PROPOSAL
Francesco J DilliardRussiaOnyama Limba NEW
Rodrigues P StockhamItalyStephen Shaw NEGOTIATION
Mayumi K OldroydArgentinaAsiya Javayant NEGOTIATION
Aika Z MaletSpainXuxue Feng NEW
Smith O StensethBrazilIoni Bowcher PROPOSAL
Adams F GauchoRussiaAnna Fali NEGOTIATION
Nicolas F CampainCanadaBernardo Dominic RENEWAL
Misaki O VocelkaUnited KingdomOnyama Limba PROPOSAL
Stacey J PerinBrazilElwin Sharvill RENEWAL
Jeanfrancois E MorascaUnited KingdomIoni Bowcher NEW
Ivar Y StockhamCanadaBernardo Dominic UNQUALIFIED
David V ButtBrazilAmy Elsner NEGOTIATION
Antonio E VenereGermanyIvan Magalhaes UNQUALIFIED
Clifford X ShinkoBrazilIoni Bowcher NEW
Johnson S IturbideCanadaStephen Shaw QUALIFIED
Johnson S RutaRussiaIoni Bowcher RENEWAL
Chavez C FollerBrazilStephen Shaw RENEWAL
Kaitlin S PerinIndiaIoni Bowcher RENEWAL
Juan N KuskoSpainStephen Shaw UNQUALIFIED
Aruna J VenereFranceXuxue Feng PROPOSAL
Salvatore F FlosiCanadaElwin Sharvill UNQUALIFIED
Jeanfrancois G AlbaresCanadaAnna Fali QUALIFIED
Ivar T StockhamUnited KingdomAsiya Javayant NEGOTIATION
Jefferson J RutaFranceStephen Shaw QUALIFIED
David I FlosiUnited KingdomAsiya Javayant PROPOSAL
Maisha B WieserIndiaBernardo Dominic UNQUALIFIED
Silvio D RutaSpainIvan Magalhaes NEGOTIATION
Deepesh E GillianFranceBernardo Dominic PROPOSAL
Francesco Z AlbaresJapanOnyama Limba RENEWAL
Misaki Z SlusarskiArgentinaAmy Elsner UNQUALIFIED
Aika G MaletGermanyOnyama Limba QUALIFIED
Ivar L ChuiUnited KingdomStephen Shaw UNQUALIFIED
Ricardo W BologniaCanadaStephen Shaw UNQUALIFIED
Jeanfrancois R MorascaCanadaStephen Shaw PROPOSAL
Smith X PoquetteAustraliaAsiya Javayant PROPOSAL
Greenwood X PaprockiCanadaOnyama Limba NEGOTIATION
Wickens O CaudyFranceIoni Bowcher NEGOTIATION
Salvatore N AmigonRussiaIoni Bowcher UNQUALIFIED

<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>