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
Chavez F OldroydAustraliaXuxue Feng NEGOTIATION
Smith N SergiJapanAsiya Javayant RENEWAL
Johnson V CampainRussiaElwin Sharvill UNQUALIFIED
Kaitlin G VenereArgentinaIoni Bowcher QUALIFIED
Leon U DarakjyAustraliaXuxue Feng RENEWAL
Salvatore X NestleRussiaIoni Bowcher NEW
Kaitlin Y RutaUnited KingdomOnyama Limba NEW
Faith H DoeFranceStephen Shaw UNQUALIFIED
Costa I VenereIndiaOnyama Limba UNQUALIFIED
Jeanfrancois S BowleyGermanyElwin Sharvill RENEWAL
Cody O AmigonUnited KingdomOnyama Limba PROPOSAL
Johnson E SergiRussiaIoni Bowcher PROPOSAL
Misaki K CampainGermanyAsiya Javayant UNQUALIFIED
Deepesh N IturbideIndiaIoni Bowcher NEW
Octavia O SaylorsAustraliaOnyama Limba UNQUALIFIED
Johnson Z NickaGermanyBernardo Dominic UNQUALIFIED
Munro T OstroskyItalyXuxue Feng NEGOTIATION
Kadeem Q InouyeGermanyAnna Fali NEW
Emily Q SaylorsBrazilOnyama Limba QUALIFIED
James G PaprockiJapanAsiya Javayant NEW
Ashley W DoeJapanAmy Elsner UNQUALIFIED
Jennifer S MaletRussiaElwin Sharvill PROPOSAL
Izzy W PaprockiFranceElwin Sharvill NEGOTIATION
Jeanfrancois E WieserUnited KingdomAsiya Javayant PROPOSAL
Cody N KuskoFranceIoni Bowcher NEW
Darci H InouyeJapanIvan Magalhaes NEW
Kaitlin Q PoquetteArgentinaBernardo Dominic UNQUALIFIED
Kaitlin M DoeArgentinaBernardo Dominic UNQUALIFIED
Leon R CampainCanadaStephen Shaw NEGOTIATION
Jones B WhobreyArgentinaBernardo Dominic RENEWAL
Wickens S DoeUnited KingdomAmy Elsner PROPOSAL
David N VocelkaIndiaXuxue Feng RENEWAL
Juan Z SchemmerJapanAnna Fali PROPOSAL
Maisha N ShinkoCanadaAmy Elsner PROPOSAL
Alejandro C TollnerUnited KingdomBernardo Dominic RENEWAL
Greenwood T IturbideCanadaAnna Fali PROPOSAL
Claire H MorascaArgentinaStephen Shaw PROPOSAL
James S PoquetteSpainOnyama Limba NEGOTIATION
Izzy F SaylorsFranceElwin Sharvill QUALIFIED
Misaki H GarufiFranceIvan Magalhaes RENEWAL
Faith W PerinBrazilIvan Magalhaes NEGOTIATION
Aditya P SergiIndiaBernardo Dominic NEGOTIATION
Mujtaba B NestleIndiaIvan Magalhaes PROPOSAL
Aditya E KolmetzJapanElwin Sharvill UNQUALIFIED
Silvio K NestleAustraliaXuxue Feng PROPOSAL
Leja X StockhamRussiaIoni Bowcher UNQUALIFIED
Stacey Z RutaIndiaElwin Sharvill NEGOTIATION
Nicolas S FerenczGermanyAnna Fali UNQUALIFIED
Juan B PerinRussiaOnyama Limba QUALIFIED
Deepesh S TollnerAustraliaIvan Magalhaes NEW
Horizontal
NameCountryRepresentativeStatus
Tony S AmigonBrazilIvan Magalhaes RENEWAL
Leja V SaylorsSpainXuxue Feng QUALIFIED
Juan X SchemmerItalyStephen Shaw QUALIFIED
Arvin O BologniaArgentinaIvan Magalhaes QUALIFIED
Aditya L CaudySpainElwin Sharvill QUALIFIED
Johnson M RoysterArgentinaAmy Elsner NEW
Julie Y FlosiRussiaIvan Magalhaes RENEWAL
Isabel S CaudyGermanyIoni Bowcher QUALIFIED
Salvatore A FollerJapanIoni Bowcher RENEWAL
Clifford K StensethRussiaBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa F OstroskyRussia2024-06-19Rangoni Of Florence UNQUALIFIED12Elwin Sharvill
1001Alejandro Z SchemmerFrance2024-06-17Feiner Bros RENEWAL85Anna Fali
1002Jeanfrancois U SaylorsSpain2024-06-19Chanay, Jeffrey A Esq NEW64Amy Elsner
1003Claire K ButtSpain2024-06-16King, Christopher A Esq UNQUALIFIED56Asiya Javayant
1004Rodrigues I CaudyItaly2024-06-04King, Christopher A Esq PROPOSAL86Stephen Shaw
1005Mayumi Y KolmetzRussia2024-06-05Commercial Press RENEWAL42Amy Elsner
1006Alejandro P VenereItaly2024-06-07Dorl, James J Esq NEW40Asiya Javayant
1007Aika U KuskoFrance2024-06-01Rousseaux, Michael Esq NEGOTIATION89Asiya Javayant
1008Octavia I NestleGermany2024-06-20Feltz Printing Service NEW78Amy Elsner
1009James A MaletArgentina2024-06-11Chemel, James L Cpa RENEWAL52Ivan Magalhaes
1010Leon Z KolmetzArgentina2024-05-30Commercial Press RENEWAL88Ioni Bowcher
1011Jones Z VocelkaSpain2024-06-15Morlong Associates PROPOSAL74Bernardo Dominic
1012Antonio E BowleyAustralia2024-05-29Chemel, James L Cpa UNQUALIFIED40Asiya Javayant
1013Silvio J MacleadSpain2024-06-21Commercial Press UNQUALIFIED15Stephen Shaw
1014Mujtaba J RutaArgentina2024-05-30Chanay, Jeffrey A Esq NEW76Stephen Shaw
1015Murillo R MarrierBrazil2024-06-17Feltz Printing Service UNQUALIFIED95Stephen Shaw
1016Jennifer A AlbaresItaly2024-05-26Truhlar And Truhlar Attys PROPOSAL4Ioni Bowcher
1017Salvatore Q SaylorsAustralia2024-06-07Dorl, James J Esq UNQUALIFIED16Anna Fali
1018Antonio W StockhamFrance2024-06-11Morlong Associates PROPOSAL15Bernardo Dominic
1019Mujtaba H GauchoBrazil2024-06-21Rousseaux, Michael Esq PROPOSAL86Ivan Magalhaes
1020Aruna Q GauchoCanada2024-05-30Commercial Press NEGOTIATION68Ivan Magalhaes
1021Rodrigues Y BriddickArgentina2024-06-08Rangoni Of Florence NEW68Amy Elsner
1022Cody W SergiUnited Kingdom2024-05-25Buckley Miller Wright PROPOSAL81Elwin Sharvill
1023Johnson Q StockhamFrance2024-06-11Chanay, Jeffrey A Esq NEGOTIATION7Amy Elsner
1024Clifford I AmigonAustralia2024-05-24Printing Dimensions QUALIFIED33Asiya Javayant
1025Leon J DoeFrance2024-06-15Feiner Bros PROPOSAL74Anna Fali
1026Alejandro S MaletFrance2024-06-15Truhlar And Truhlar Attys NEW47Anna Fali
1027Stacey X DarakjyItaly2024-06-03Rangoni Of Florence RENEWAL32Stephen Shaw
1028Murillo Z IturbideItaly2024-06-18Chemel, James L Cpa NEGOTIATION14Xuxue Feng
1029James S CaudyItaly2024-06-11Rousseaux, Michael Esq RENEWAL12Ivan Magalhaes
1030Sinclair V FigeroaBrazil2024-06-14Printing Dimensions UNQUALIFIED88Stephen Shaw
1031Kaitlin I MaletArgentina2024-06-15Dorl, James J Esq PROPOSAL47Bernardo Dominic
1032Jones R TollnerGermany2024-05-30Dorl, James J Esq UNQUALIFIED75Xuxue Feng
1033Maria T ShinkoUnited Kingdom2024-06-04Feltz Printing Service NEW64Ivan Magalhaes
1034Salvatore K NestleBrazil2024-05-26Rangoni Of Florence UNQUALIFIED71Asiya Javayant
1035Tony X RulapaughFrance2024-06-12Chapman, Ross E Esq UNQUALIFIED9Xuxue Feng
1036Ivar V PerinBrazil2024-05-30Rousseaux, Michael Esq RENEWAL53Stephen Shaw
1037Mujtaba F FlosiIndia2024-06-17Chapman, Ross E Esq NEGOTIATION78Amy Elsner
1038Alejandro X BowleyBrazil2024-06-09Chemel, James L Cpa QUALIFIED66Ioni Bowcher
1039Mayumi J FlosiIndia2024-06-01Chanay, Jeffrey A Esq RENEWAL97Asiya Javayant
1040Rodrigues T ButtUnited Kingdom2024-05-27Rangoni Of Florence PROPOSAL12Anna Fali
1041Leja Q SergiIndia2024-06-06Feltz Printing Service UNQUALIFIED28Ioni Bowcher
1042Izzy S NestleCanada2024-05-30Feiner Bros UNQUALIFIED1Ioni Bowcher
1043Maria T OstroskyItaly2024-05-31Feltz Printing Service UNQUALIFIED79Elwin Sharvill
1044Jeanfrancois I PaprockiItaly2024-06-12Commercial Press PROPOSAL20Elwin Sharvill
1045Jones W SaylorsRussia2024-06-18Truhlar And Truhlar Attys QUALIFIED56Bernardo Dominic
1046Wickens F RoysterBrazil2024-06-04King, Christopher A Esq PROPOSAL95Ioni Bowcher
1047Kaitlin F KuskoFrance2024-06-11Feltz Printing Service UNQUALIFIED9Onyama Limba
1048Murillo W PoquetteJapan2024-06-21King, Christopher A Esq UNQUALIFIED28Stephen Shaw
1049Claire C NickaItaly2024-06-16Truhlar And Truhlar Attys NEW82Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Morrow O GarufiIndiaAmy Elsner UNQUALIFIED
Jefferson D IturbideAustraliaAmy Elsner PROPOSAL
Juan U RimArgentinaElwin Sharvill PROPOSAL
Morrow A WieserArgentinaAsiya Javayant QUALIFIED
Faith T StockhamRussiaIoni Bowcher NEGOTIATION
Antonio A SergiJapanAmy Elsner PROPOSAL
James N CaldareraJapanIvan Magalhaes NEGOTIATION
Mayumi C CaudyGermanyIvan Magalhaes UNQUALIFIED
Chavez Q FollerUnited KingdomXuxue Feng UNQUALIFIED
Aika C IturbideIndiaIvan Magalhaes QUALIFIED
Ashley T DarakjyFranceIoni Bowcher NEW
Clifford N NickaRussiaAnna Fali RENEWAL
Cody B RimGermanyXuxue Feng NEGOTIATION
Izzy Q FlosiItalyOnyama Limba UNQUALIFIED
Tony J RimIndiaIoni Bowcher NEW
Jeanfrancois J StockhamCanadaIoni Bowcher NEGOTIATION
Aika S AlbaresItalyAnna Fali NEW
Julie M MarrierJapanIoni Bowcher UNQUALIFIED
Aika A BowleyGermanyAsiya Javayant QUALIFIED
Alejandro H BologniaAustraliaStephen Shaw UNQUALIFIED
Leon B DoeSpainAsiya Javayant QUALIFIED
Jones E MaletFranceAsiya Javayant PROPOSAL
Morrow G GillianRussiaStephen Shaw NEW
Chavez U BriddickRussiaBernardo Dominic QUALIFIED
Jennifer B CaldareraCanadaAmy Elsner PROPOSAL
David E KuskoCanadaStephen Shaw RENEWAL
Mujtaba C MorascaBrazilAmy Elsner NEGOTIATION
Nicolas M PaprockiUnited KingdomBernardo Dominic RENEWAL
Isabel A CaldareraRussiaIoni Bowcher NEW
Ivar N WaycottRussiaOnyama Limba PROPOSAL
Emily S MarrierArgentinaOnyama Limba RENEWAL
Mujtaba N GarufiArgentinaIoni Bowcher UNQUALIFIED
Deepesh A DoeGermanyOnyama Limba RENEWAL
Stacey K FollerFranceAnna Fali UNQUALIFIED
Wickens D BriddickIndiaElwin Sharvill NEW
Stacey P OldroydIndiaAsiya Javayant QUALIFIED
Salvatore V MacleadSpainElwin Sharvill NEGOTIATION
Leja R MarrierGermanyBernardo Dominic UNQUALIFIED
Maria W IturbideGermanyIoni Bowcher RENEWAL
Juan C DarakjyItalyAnna Fali NEW
Sinclair V VenereJapanXuxue Feng UNQUALIFIED
Isabel N MacleadArgentinaAnna Fali NEW
Mayumi L AmigonJapanIvan Magalhaes UNQUALIFIED
Costa F FigeroaUnited KingdomIoni Bowcher RENEWAL
Salvatore X GarufiCanadaAsiya Javayant NEW
Ivar T OstroskyFranceIoni Bowcher NEW
Deepesh Z ButtGermanyStephen Shaw PROPOSAL
Francesco W TollnerRussiaOnyama Limba RENEWAL
Kaitlin E TollnerCanadaIoni Bowcher PROPOSAL
Nicolas D AlbaresItalyXuxue Feng PROPOSAL
Frozen Columns
Name
Jefferson G Paprocki
Leja R Gillian
Leja U Venere
Julie M Stenseth
Wickens U Chui
Chavez Q Sergi
Antonio L Shinko
Jefferson W Campain
Kadeem R Morasca
Octavia G Flosi
Emily Y Caldarera
Francesco F Foller
Aika X Ostrosky
Kadeem J Poquette
Jefferson Z Ferencz
Salvatore U Albares
Emily V Briddick
Adams R Stockham
Chavez J Schemmer
Tony V Malet
Emily P Nicka
Jefferson V Dilliard
Darci G Doe
Tony X Schemmer
Emily A Perin
Kadeem W Albares
Kaitlin N Gaucho
Ricardo H Tollner
Octavia U Whobrey
Aditya H Ferencz
Leja V Flosi
Jones S Ferencz
Emily N Gaucho
Francesco N Ruta
Deepesh A Ferencz
Maria W Amigon
Cody K Campain
Munro M Nestle
Murillo M Venere
David B Malet
Wickens W Marrier
Adams P Gillian
Maria G Maclead
Emily Q Whobrey
Aika U Slusarski
David E Whobrey
Octavia N Ostrosky
Deepesh B Flosi
Misaki Z Bowley
Ivar Q Malet
IdCountryDate
1000Russia2024-06-21
1001Australia2024-06-07
1002Italy2024-05-27
1003India2024-06-17
1004Spain2024-06-12
1005Japan2024-06-19
1006France2024-06-10
1007France2024-06-18
1008Spain2024-06-01
1009Brazil2024-05-31
1010Russia2024-06-08
1011Japan2024-06-02
1012Australia2024-06-06
1013Argentina2024-06-09
1014Canada2024-06-09
1015Japan2024-06-14
1016United Kingdom2024-06-11
1017France2024-05-25
1018Argentina2024-06-12
1019Argentina2024-05-28
1020Russia2024-06-10
1021Italy2024-06-03
1022India2024-06-22
1023United Kingdom2024-06-18
1024Russia2024-06-18
1025India2024-06-09
1026Japan2024-05-31
1027Canada2024-05-31
1028Argentina2024-06-22
1029Spain2024-06-07
1030Russia2024-06-03
1031Australia2024-06-15
1032Canada2024-05-24
1033Japan2024-06-02
1034India2024-05-30
1035India2024-05-25
1036United Kingdom2024-06-10
1037Argentina2024-05-27
1038Australia2024-06-03
1039India2024-06-21
1040Canada2024-05-29
1041France2024-06-09
1042Germany2024-06-01
1043Japan2024-06-21
1044India2024-06-13
1045India2024-06-07
1046Australia2024-06-13
1047Canada2024-05-30
1048Brazil2024-06-22
1049France2024-06-07

On-Demand Data

NameIdCountryDate
Leja G Dilliard1000France2024-06-05
Leja C Chui1001Brazil2024-06-11
Francesco V Amigon1002Brazil2024-06-14
Stacey J Stenseth1003Germany2024-05-27
Deepesh W Campain1004United Kingdom2024-06-11
Ivar H Figeroa1005Italy2024-06-08
Nicolas O Shinko1006Argentina2024-06-11
Claire U Saylors1007United Kingdom2024-06-15
Leja O Maclead1008Russia2024-06-13
Aruna C Stenseth1009Germany2024-06-07
Leon U Iturbide1010India2024-06-13
Francesco N Stenseth1011Australia2024-06-03
Ivar K Albares1012Canada2024-06-10
Jones G Darakjy1013Japan2024-06-13
Jefferson K Campain1014Spain2024-06-17
Mayumi X Iturbide1015United Kingdom2024-06-10
Stacey O Bowley1016Argentina2024-05-26
Ashley S Waycott1017Spain2024-05-25
Tony F Caldarera1018Germany2024-06-13
Kadeem L Ferencz1019Spain2024-06-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily H GlickIndiaStephen Shaw QUALIFIED
Arvin H WaycottFranceXuxue Feng RENEWAL
Deepesh E InouyeArgentinaAmy Elsner UNQUALIFIED
Kaitlin C TollnerIndiaIvan Magalhaes NEW
Stacey T StockhamBrazilAsiya Javayant PROPOSAL
Arvin R OldroydRussiaAmy Elsner RENEWAL
Isabel R CaldareraAustraliaIoni Bowcher QUALIFIED
Costa T MacleadIndiaAsiya Javayant PROPOSAL
Jennifer L StockhamFranceElwin Sharvill PROPOSAL
Darci L FlosiUnited KingdomAnna Fali NEW
Leja H TollnerFranceOnyama Limba UNQUALIFIED
Aditya R SergiCanadaXuxue Feng QUALIFIED
Claire S TollnerItalyAmy Elsner RENEWAL
Clifford G InouyeItalyAnna Fali RENEWAL
Juan G CampainRussiaStephen Shaw RENEWAL
Greenwood S GillianAustraliaStephen Shaw RENEWAL
Maria B ShinkoBrazilElwin Sharvill PROPOSAL
Costa M ShinkoFranceStephen Shaw NEGOTIATION
Aika I GauchoItalyXuxue Feng UNQUALIFIED
Antonio G RimGermanyAsiya Javayant UNQUALIFIED
Octavia H PoquetteJapanOnyama Limba QUALIFIED
Jefferson J StensethCanadaIvan Magalhaes NEGOTIATION
Kaitlin E SchemmerRussiaAsiya Javayant NEGOTIATION
Deepesh O TollnerAustraliaOnyama Limba PROPOSAL
Mayumi R MorascaArgentinaOnyama Limba NEGOTIATION
Chavez Z MorascaGermanyElwin Sharvill NEW
Wickens R AmigonUnited KingdomIvan Magalhaes PROPOSAL
Greenwood H FigeroaSpainAnna Fali UNQUALIFIED
Alejandro O RoysterGermanyOnyama Limba PROPOSAL
Misaki F VenereSpainIoni Bowcher QUALIFIED
Leon M MaletIndiaAmy Elsner QUALIFIED
Emily Q MorascaFranceAsiya Javayant UNQUALIFIED
Morrow E PaprockiGermanyIoni Bowcher QUALIFIED
Maisha Q MaletAustraliaAmy Elsner NEGOTIATION
Chavez B OldroydFranceXuxue Feng NEGOTIATION
Cody Y PoquetteBrazilIoni Bowcher RENEWAL
Juan D MacleadArgentinaOnyama Limba PROPOSAL
Aruna S MaletUnited KingdomBernardo Dominic PROPOSAL
Greenwood H StockhamFranceAsiya Javayant UNQUALIFIED
Juan N GauchoItalyStephen Shaw QUALIFIED

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