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
Johnson B StensethArgentinaIoni Bowcher RENEWAL
Ivar F RulapaughArgentinaStephen Shaw RENEWAL
Tony H AmigonRussiaAsiya Javayant QUALIFIED
Maisha Y ChuiAustraliaBernardo Dominic QUALIFIED
Izzy V BowleySpainAmy Elsner NEW
Claire X NestleRussiaBernardo Dominic NEGOTIATION
Morrow I FlosiAustraliaIvan Magalhaes RENEWAL
Izzy I BologniaRussiaAsiya Javayant UNQUALIFIED
Izzy P GarufiIndiaAnna Fali NEGOTIATION
Deepesh P CaldareraSpainBernardo Dominic UNQUALIFIED
Claire R FlosiSpainAsiya Javayant RENEWAL
Leon M MaletItalyAnna Fali RENEWAL
Smith Y VenereUnited KingdomIvan Magalhaes UNQUALIFIED
Cody U GillianItalyAmy Elsner UNQUALIFIED
Jones Y StockhamGermanyStephen Shaw UNQUALIFIED
Darci Q KuskoFranceStephen Shaw QUALIFIED
Wickens E FerenczItalyXuxue Feng NEGOTIATION
Tony X MaletItalyIvan Magalhaes NEW
Chavez I VenereCanadaElwin Sharvill UNQUALIFIED
Deepesh Y AmigonItalyAnna Fali UNQUALIFIED
David Z NickaItalyXuxue Feng RENEWAL
James O PerinRussiaAnna Fali PROPOSAL
Jefferson R FerenczCanadaAnna Fali NEW
Ashley P ShinkoSpainStephen Shaw NEW
Cody A MacleadCanadaAnna Fali UNQUALIFIED
Tony A OldroydSpainXuxue Feng NEW
Deepesh J KolmetzFranceStephen Shaw NEGOTIATION
Silvio V DilliardFranceAnna Fali NEGOTIATION
Jennifer T RoysterCanadaOnyama Limba QUALIFIED
Chavez V KuskoGermanyAsiya Javayant NEW
James Y RutaArgentinaOnyama Limba NEW
Chavez U GarufiIndiaIoni Bowcher NEGOTIATION
Aika F CaudyJapanAsiya Javayant QUALIFIED
Salvatore W MaletRussiaAmy Elsner NEGOTIATION
Jefferson M BowleyFranceElwin Sharvill NEW
Munro Y PerinItalyAmy Elsner NEGOTIATION
Misaki L InouyeSpainStephen Shaw NEGOTIATION
Antonio T MaletSpainIoni Bowcher NEW
Jeanfrancois Y AmigonUnited KingdomAmy Elsner QUALIFIED
Deepesh R MacleadItalyElwin Sharvill UNQUALIFIED
Clifford X FlosiCanadaBernardo Dominic NEGOTIATION
Leon T ShinkoItalyIoni Bowcher UNQUALIFIED
Chavez S PerinGermanyIoni Bowcher PROPOSAL
Antonio C ShinkoSpainAmy Elsner QUALIFIED
Darci P SaylorsBrazilElwin Sharvill QUALIFIED
Aika R RimSpainIoni Bowcher UNQUALIFIED
Jennifer E SchemmerSpainElwin Sharvill RENEWAL
Alejandro K ButtJapanAsiya Javayant NEGOTIATION
Salvatore P VenereIndiaAmy Elsner NEGOTIATION
Antonio J TollnerRussiaElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mayumi K WaycottUnited KingdomAsiya Javayant UNQUALIFIED
Silvio S KuskoRussiaIvan Magalhaes UNQUALIFIED
Misaki Y BriddickIndiaAmy Elsner NEGOTIATION
Octavia K BologniaJapanBernardo Dominic QUALIFIED
Darci J KuskoArgentinaXuxue Feng NEGOTIATION
Ivar P SlusarskiItalyIvan Magalhaes UNQUALIFIED
Antonio P InouyeCanadaIvan Magalhaes QUALIFIED
Claire L SchemmerCanadaAnna Fali QUALIFIED
Murillo I ButtIndiaStephen Shaw UNQUALIFIED
Chavez D RutaUnited KingdomXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams U MaletFrance2024-09-08Feiner Bros UNQUALIFIED99Elwin Sharvill
1001Murillo N MaletSpain2024-09-14Printing Dimensions PROPOSAL66Bernardo Dominic
1002Nicolas F ShinkoFrance2024-08-26Rousseaux, Michael Esq PROPOSAL14Ivan Magalhaes
1003Leja P FlosiSpain2024-09-09Buckley Miller Wright QUALIFIED95Onyama Limba
1004Kadeem D OstroskyArgentina2024-09-13Chemel, James L Cpa RENEWAL7Amy Elsner
1005Mujtaba I AmigonRussia2024-09-13Morlong Associates NEW6Onyama Limba
1006Mayumi U SchemmerItaly2024-09-15Chemel, James L Cpa NEW77Onyama Limba
1007Rodrigues P MaletIndia2024-09-02Morlong Associates NEGOTIATION71Bernardo Dominic
1008James X NickaBrazil2024-08-26Feltz Printing Service NEGOTIATION76Bernardo Dominic
1009Alejandro Z StensethRussia2024-09-05King, Christopher A Esq NEW4Asiya Javayant
1010Sinclair M WaycottFrance2024-09-14Rangoni Of Florence RENEWAL66Bernardo Dominic
1011Mujtaba H FerenczBrazil2024-09-04Buckley Miller Wright NEGOTIATION75Ioni Bowcher
1012Sinclair R ChuiJapan2024-08-29Dorl, James J Esq UNQUALIFIED21Anna Fali
1013Juan K SergiArgentina2024-09-16Feltz Printing Service QUALIFIED45Stephen Shaw
1014Jennifer O DoeBrazil2024-08-25Chanay, Jeffrey A Esq PROPOSAL52Elwin Sharvill
1015Wickens P PerinFrance2024-09-16Chemel, James L Cpa RENEWAL35Ioni Bowcher
1016Jeanfrancois B CaldareraRussia2024-08-28Feltz Printing Service NEGOTIATION33Asiya Javayant
1017Izzy V GarufiAustralia2024-08-27Chanay, Jeffrey A Esq UNQUALIFIED87Anna Fali
1018Maria D ShinkoCanada2024-09-10Feiner Bros NEGOTIATION80Ioni Bowcher
1019Jennifer X StockhamGermany2024-09-13Rangoni Of Florence QUALIFIED57Elwin Sharvill
1020David L ChuiIndia2024-08-27Feltz Printing Service NEW28Xuxue Feng
1021Isabel I RimItaly2024-08-30King, Christopher A Esq PROPOSAL97Bernardo Dominic
1022Maria H GillianAustralia2024-08-31Buckley Miller Wright RENEWAL70Xuxue Feng
1023Ricardo O SchemmerSpain2024-09-11Truhlar And Truhlar Attys UNQUALIFIED28Asiya Javayant
1024Costa J RutaCanada2024-09-04Chanay, Jeffrey A Esq NEW20Anna Fali
1025Ricardo T NickaBrazil2024-08-27Commercial Press PROPOSAL71Anna Fali
1026Ricardo D BriddickIndia2024-09-15Commercial Press PROPOSAL30Asiya Javayant
1027Stacey R FollerJapan2024-09-18King, Christopher A Esq UNQUALIFIED63Elwin Sharvill
1028Cody H CaudyBrazil2024-09-15Feiner Bros RENEWAL58Elwin Sharvill
1029Maria C RulapaughCanada2024-08-31Chemel, James L Cpa NEGOTIATION51Stephen Shaw
1030Maisha Z BriddickUnited Kingdom2024-09-02Chapman, Ross E Esq NEW51Xuxue Feng
1031Claire G OldroydFrance2024-09-18Feltz Printing Service PROPOSAL71Bernardo Dominic
1032Kaitlin E OstroskyJapan2024-09-06Benton, John B Jr QUALIFIED27Ioni Bowcher
1033Leon N StockhamCanada2024-09-09Truhlar And Truhlar Attys UNQUALIFIED52Bernardo Dominic
1034Clifford D OldroydCanada2024-09-17Dorl, James J Esq UNQUALIFIED67Stephen Shaw
1035Aditya W SergiItaly2024-09-16Dorl, James J Esq UNQUALIFIED35Stephen Shaw
1036Emily Y PaprockiFrance2024-09-03Truhlar And Truhlar Attys QUALIFIED67Bernardo Dominic
1037Nicolas Y KuskoIndia2024-09-14Dorl, James J Esq NEGOTIATION45Stephen Shaw
1038Claire T PerinArgentina2024-09-12Commercial Press PROPOSAL27Asiya Javayant
1039Greenwood C OstroskyRussia2024-08-28Chapman, Ross E Esq QUALIFIED96Amy Elsner
1040Emily S SaylorsBrazil2024-09-16Rangoni Of Florence NEW97Anna Fali
1041Aika V FigeroaBrazil2024-08-29Chapman, Ross E Esq PROPOSAL47Bernardo Dominic
1042Jones A FollerJapan2024-09-07Commercial Press PROPOSAL32Xuxue Feng
1043Mayumi R OstroskyArgentina2024-09-22Morlong Associates RENEWAL1Asiya Javayant
1044Kaitlin N FerenczAustralia2024-09-17Chanay, Jeffrey A Esq NEGOTIATION68Elwin Sharvill
1045Julie N CaudyArgentina2024-08-26Dorl, James J Esq NEW95Amy Elsner
1046Costa J FlosiRussia2024-08-31Commercial Press NEW8Asiya Javayant
1047Emily C DilliardRussia2024-08-30Rangoni Of Florence QUALIFIED54Xuxue Feng
1048Ivar E CaudyGermany2024-09-16Printing Dimensions NEGOTIATION5Ioni Bowcher
1049Jones H IturbideJapan2024-09-19Feiner Bros RENEWAL33Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Faith B OstroskyGermanyIvan Magalhaes NEGOTIATION
Misaki E OldroydBrazilOnyama Limba QUALIFIED
Juan W WaycottArgentinaAmy Elsner UNQUALIFIED
Costa B VocelkaItalyIoni Bowcher RENEWAL
Aditya B ShinkoCanadaAmy Elsner NEW
Maisha Y RoysterUnited KingdomAsiya Javayant QUALIFIED
David F ShinkoAustraliaOnyama Limba UNQUALIFIED
Claire B AlbaresFranceIvan Magalhaes NEW
Nicolas E DoeArgentinaXuxue Feng NEW
Claire Z BologniaArgentinaAsiya Javayant UNQUALIFIED
Leja I GarufiRussiaOnyama Limba UNQUALIFIED
Francesco G CaldareraUnited KingdomAsiya Javayant NEGOTIATION
Cody Y AmigonArgentinaXuxue Feng NEW
Faith K GlickUnited KingdomElwin Sharvill UNQUALIFIED
Alejandro I BologniaArgentinaIoni Bowcher NEW
Jeanfrancois D VenereJapanIoni Bowcher QUALIFIED
Darci S BowleyItalyIvan Magalhaes NEW
Jones C AlbaresItalyOnyama Limba NEGOTIATION
Aruna I FollerGermanyXuxue Feng NEW
Ricardo A GillianUnited KingdomIoni Bowcher NEGOTIATION
Aika M MacleadGermanyAmy Elsner RENEWAL
Ashley N DoeSpainIoni Bowcher NEW
Sinclair H FigeroaJapanIvan Magalhaes NEW
Chavez C DarakjyGermanyIoni Bowcher NEGOTIATION
Aika H PoquetteJapanXuxue Feng NEW
Johnson M ButtAustraliaIoni Bowcher NEGOTIATION
James P SaylorsIndiaAnna Fali UNQUALIFIED
Misaki O FollerArgentinaIvan Magalhaes UNQUALIFIED
Maria W OstroskyGermanyBernardo Dominic PROPOSAL
Alejandro F ChuiBrazilIvan Magalhaes RENEWAL
Mayumi L NickaUnited KingdomBernardo Dominic NEGOTIATION
Leja A MarrierSpainXuxue Feng PROPOSAL
Faith F WaycottSpainElwin Sharvill NEGOTIATION
Juan U RutaIndiaXuxue Feng RENEWAL
Deepesh N OldroydJapanBernardo Dominic NEGOTIATION
Stacey U BriddickAustraliaStephen Shaw NEGOTIATION
Juan G SlusarskiGermanyAsiya Javayant RENEWAL
Alejandro M FigeroaAustraliaOnyama Limba NEGOTIATION
Nicolas D SergiAustraliaElwin Sharvill NEGOTIATION
Mayumi V OstroskyBrazilIoni Bowcher QUALIFIED
Morrow Q KolmetzGermanyAsiya Javayant NEW
Jefferson V PoquetteFranceIvan Magalhaes NEW
Munro N KuskoJapanStephen Shaw NEW
Murillo U VocelkaUnited KingdomIoni Bowcher NEGOTIATION
Greenwood L OldroydArgentinaIvan Magalhaes NEGOTIATION
Kaitlin F DoeCanadaAsiya Javayant UNQUALIFIED
James C VenereCanadaOnyama Limba NEW
Ashley L SchemmerAustraliaXuxue Feng NEW
Silvio D RulapaughSpainIoni Bowcher NEGOTIATION
Juan K NickaBrazilElwin Sharvill PROPOSAL
Frozen Columns
Name
Morrow M Foller
Aruna D Chui
Arvin Z Bowley
Claire T Sergi
Kaitlin L Tollner
Mayumi E Royster
Juan K Ostrosky
Smith G Stockham
Wickens X Royster
Johnson A Saylors
Wickens H Inouye
Octavia J Maclead
Nicolas N Tollner
Misaki H Morasca
Chavez H Vocelka
Maisha U Paprocki
Johnson Z Garufi
Wickens G Tollner
Kaitlin S Albares
Tony O Caldarera
Johnson A Morasca
Izzy L Dilliard
Mayumi Y Sergi
Faith Y Garufi
Arvin Q Figeroa
Salvatore E Malet
Silvio J Malet
Maria Q Waycott
Chavez K Gillian
Adams C Ferencz
Faith N Bowley
Juan D Morasca
Sinclair H Venere
Jennifer S Rulapaugh
Faith X Waycott
Jeanfrancois Q Wieser
Cody B Rim
Isabel Y Ruta
Rodrigues D Nestle
David Z Caldarera
Juan E Wieser
Antonio A Wieser
Deepesh I Tollner
Ivar G Butt
Izzy S Iturbide
Claire C Dilliard
Sinclair P Saylors
Kadeem W Butt
Munro L Albares
Arvin A Whobrey
IdCountryDate
1000Russia2024-09-01
1001France2024-09-17
1002Spain2024-09-07
1003Spain2024-09-02
1004United Kingdom2024-09-16
1005Germany2024-08-28
1006Japan2024-08-31
1007Italy2024-09-06
1008Canada2024-09-03
1009Argentina2024-09-11
1010United Kingdom2024-08-29
1011Brazil2024-09-22
1012Italy2024-08-24
1013Germany2024-08-27
1014Brazil2024-08-30
1015India2024-08-31
1016France2024-09-19
1017Italy2024-09-02
1018Germany2024-09-10
1019Japan2024-09-21
1020Italy2024-09-21
1021Russia2024-09-08
1022United Kingdom2024-08-27
1023Russia2024-09-17
1024Canada2024-09-07
1025United Kingdom2024-09-10
1026Canada2024-09-14
1027Italy2024-09-16
1028Spain2024-08-25
1029India2024-09-17
1030United Kingdom2024-08-25
1031Russia2024-09-10
1032United Kingdom2024-09-12
1033Russia2024-09-15
1034Germany2024-09-04
1035Japan2024-08-25
1036Russia2024-09-01
1037Australia2024-09-17
1038France2024-09-15
1039United Kingdom2024-09-02
1040France2024-09-03
1041Spain2024-09-08
1042Australia2024-09-19
1043India2024-09-19
1044Germany2024-09-10
1045Australia2024-08-31
1046Italy2024-09-11
1047India2024-08-27
1048Australia2024-09-10
1049Japan2024-09-22

On-Demand Data

NameIdCountryDate
Silvio M Butt1000Spain2024-09-18
Jeanfrancois W Iturbide1001Canada2024-09-16
Aruna L Stockham1002France2024-09-09
Maria M Gillian1003Brazil2024-09-14
Aditya H Ruta1004Japan2024-09-19
Maisha R Slusarski1005Argentina2024-09-20
Ricardo X Venere1006India2024-09-11
Aruna T Ostrosky1007Japan2024-09-18
Julie M Kolmetz1008Italy2024-08-26
Ashley O Malet1009Argentina2024-08-28
Aika K Vocelka1010Spain2024-09-03
Salvatore U Gaucho1011Spain2024-09-13
Silvio I Tollner1012United Kingdom2024-09-17
Smith R Malet1013France2024-08-29
Octavia J Perin1014Spain2024-09-20
Cody J Royster1015Germany2024-09-09
Kaitlin E Darakjy1016Argentina2024-09-01
Juan M Flosi1017United Kingdom2024-09-05
Julie X Perin1018Italy2024-08-29
Wickens M Gillian1019Canada2024-09-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily K ChuiRussiaElwin Sharvill NEGOTIATION
Maisha L DilliardJapanIoni Bowcher UNQUALIFIED
Stacey P AlbaresIndiaOnyama Limba RENEWAL
Ricardo L BowleyJapanAnna Fali NEW
Sinclair V GarufiCanadaXuxue Feng UNQUALIFIED
Silvio G MaletItalyIoni Bowcher RENEWAL
Alejandro W MaletCanadaAmy Elsner PROPOSAL
Costa Y MaletIndiaBernardo Dominic NEW
Isabel L SaylorsBrazilBernardo Dominic PROPOSAL
Julie K InouyeSpainAnna Fali PROPOSAL
Silvio Z WieserIndiaBernardo Dominic NEW
James X IturbideAustraliaAsiya Javayant PROPOSAL
Kadeem C FerenczItalyXuxue Feng NEGOTIATION
Maisha P SaylorsFranceStephen Shaw NEGOTIATION
Mujtaba T RulapaughItalyIvan Magalhaes NEGOTIATION
Ashley V RulapaughRussiaIoni Bowcher RENEWAL
Juan O BologniaArgentinaIoni Bowcher RENEWAL
Morrow V StockhamItalyStephen Shaw NEW
Juan C ShinkoBrazilAmy Elsner UNQUALIFIED
Mujtaba W GauchoItalyOnyama Limba NEGOTIATION
Chavez H FerenczGermanyXuxue Feng NEGOTIATION
Smith A WhobreyUnited KingdomAsiya Javayant RENEWAL
Aika R SaylorsBrazilAmy Elsner UNQUALIFIED
David N SaylorsJapanAmy Elsner PROPOSAL
Greenwood E MacleadSpainIvan Magalhaes PROPOSAL
Jeanfrancois F BologniaJapanAsiya Javayant RENEWAL
Jefferson D BologniaBrazilIoni Bowcher UNQUALIFIED
Faith U VenereRussiaAmy Elsner NEW
Leja W AlbaresArgentinaIvan Magalhaes NEGOTIATION
Alejandro O CaldareraBrazilStephen Shaw RENEWAL
Emily U FigeroaJapanElwin Sharvill RENEWAL
Julie U StockhamFranceAmy Elsner RENEWAL
Adams S WaycottItalyStephen Shaw PROPOSAL
Kaitlin O ChuiArgentinaAsiya Javayant QUALIFIED
Jefferson F PoquetteUnited KingdomElwin Sharvill UNQUALIFIED
Nicolas A DarakjyGermanyBernardo Dominic NEW
Leon J GauchoItalyAmy Elsner RENEWAL
Misaki E IturbideGermanyAmy Elsner RENEWAL
Claire Z PoquetteRussiaAnna Fali UNQUALIFIED
Aika U GillianRussiaAsiya Javayant 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>