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
Nicolas V NestleFranceElwin Sharvill QUALIFIED
Octavia Q SchemmerItalyIvan Magalhaes NEW
Mayumi T SaylorsBrazilXuxue Feng NEW
Adams D GarufiItalyStephen Shaw RENEWAL
Julie K TollnerSpainAsiya Javayant UNQUALIFIED
Octavia T DarakjyRussiaOnyama Limba QUALIFIED
Smith B ButtCanadaStephen Shaw PROPOSAL
Leon A CampainGermanyIoni Bowcher UNQUALIFIED
Silvio J RoysterItalyAsiya Javayant RENEWAL
Kaitlin U ShinkoItalyOnyama Limba NEGOTIATION
Morrow S PoquetteIndiaBernardo Dominic PROPOSAL
Claire I FigeroaBrazilBernardo Dominic UNQUALIFIED
Leja E SlusarskiGermanyXuxue Feng NEW
Rodrigues G AmigonUnited KingdomIvan Magalhaes RENEWAL
Sinclair C PoquetteUnited KingdomIvan Magalhaes RENEWAL
Cody G VenereRussiaIvan Magalhaes NEGOTIATION
Francesco N PerinArgentinaAmy Elsner RENEWAL
Antonio X GillianSpainOnyama Limba QUALIFIED
Silvio N StensethBrazilIvan Magalhaes QUALIFIED
Maisha N MaletCanadaIoni Bowcher RENEWAL
Jones F StockhamSpainElwin Sharvill PROPOSAL
Aika J PaprockiGermanyAsiya Javayant NEGOTIATION
Johnson G StensethIndiaAsiya Javayant QUALIFIED
Maria Q RoysterUnited KingdomAnna Fali RENEWAL
Jeanfrancois U MacleadBrazilAmy Elsner PROPOSAL
Salvatore S InouyeSpainAsiya Javayant NEGOTIATION
Cody M GlickUnited KingdomAnna Fali NEW
Sinclair J GauchoCanadaAmy Elsner RENEWAL
Francesco Z ChuiFranceIoni Bowcher NEW
Johnson I RimFranceIvan Magalhaes UNQUALIFIED
Murillo P DoeSpainXuxue Feng UNQUALIFIED
Nicolas M RoysterRussiaStephen Shaw QUALIFIED
Clifford L ChuiRussiaXuxue Feng NEW
Antonio K FerenczItalyStephen Shaw NEGOTIATION
Johnson P KuskoGermanyStephen Shaw NEW
Kaitlin O DoeBrazilAnna Fali UNQUALIFIED
Salvatore H DilliardArgentinaAsiya Javayant PROPOSAL
Aditya T RoysterIndiaXuxue Feng RENEWAL
Isabel D SergiJapanIoni Bowcher QUALIFIED
Cody D BriddickArgentinaBernardo Dominic QUALIFIED
Mujtaba X NickaUnited KingdomStephen Shaw PROPOSAL
David J DilliardRussiaStephen Shaw NEW
Leja Z SlusarskiArgentinaIvan Magalhaes NEW
Julie U FerenczArgentinaBernardo Dominic PROPOSAL
Maria H WhobreyGermanyBernardo Dominic QUALIFIED
Mujtaba Z GlickItalyElwin Sharvill PROPOSAL
Murillo P SergiAustraliaElwin Sharvill PROPOSAL
Octavia K FollerAustraliaAnna Fali RENEWAL
Darci N MacleadGermanyElwin Sharvill NEGOTIATION
Ivar G CaldareraCanadaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Munro A ChuiRussiaXuxue Feng UNQUALIFIED
Greenwood M VocelkaArgentinaElwin Sharvill NEW
Jones G CaudyAustraliaOnyama Limba QUALIFIED
Mujtaba Y GarufiCanadaElwin Sharvill PROPOSAL
Arvin D PaprockiItalyAnna Fali NEGOTIATION
Greenwood Z WieserRussiaStephen Shaw RENEWAL
Aika Z NickaRussiaStephen Shaw UNQUALIFIED
Greenwood N GarufiIndiaIoni Bowcher QUALIFIED
Greenwood K ButtSpainAnna Fali NEGOTIATION
Salvatore Q SchemmerArgentinaIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas D KuskoFrance2024-06-21Feiner Bros NEGOTIATION21Onyama Limba
1001Johnson H FollerIndia2024-06-16Rousseaux, Michael Esq QUALIFIED87Amy Elsner
1002Costa Y VocelkaRussia2024-06-13Chapman, Ross E Esq QUALIFIED26Ioni Bowcher
1003Stacey Z CampainGermany2024-06-11Benton, John B Jr NEGOTIATION81Bernardo Dominic
1004Greenwood M DilliardRussia2024-05-29Rousseaux, Michael Esq UNQUALIFIED53Anna Fali
1005Nicolas Y SaylorsSpain2024-05-26Dorl, James J Esq QUALIFIED62Bernardo Dominic
1006Jones P FigeroaRussia2024-05-30Rangoni Of Florence RENEWAL92Ioni Bowcher
1007Arvin L GauchoCanada2024-05-26Commercial Press PROPOSAL58Asiya Javayant
1008Leon R InouyeRussia2024-06-18Chapman, Ross E Esq QUALIFIED82Ioni Bowcher
1009Ricardo K GillianGermany2024-06-17King, Christopher A Esq QUALIFIED76Anna Fali
1010Costa C DoeIndia2024-06-09Feiner Bros NEGOTIATION38Asiya Javayant
1011Adams M RoysterRussia2024-06-06King, Christopher A Esq UNQUALIFIED51Bernardo Dominic
1012Isabel L StensethIndia2024-06-10Commercial Press NEW67Ioni Bowcher
1013Izzy I PaprockiIndia2024-06-17Feltz Printing Service NEW36Ioni Bowcher
1014Claire C SlusarskiAustralia2024-06-08Chapman, Ross E Esq QUALIFIED84Xuxue Feng
1015Ricardo V MacleadCanada2024-06-17Chapman, Ross E Esq NEGOTIATION99Ioni Bowcher
1016Maria D RulapaughJapan2024-06-15Feltz Printing Service QUALIFIED22Xuxue Feng
1017Sinclair U PaprockiBrazil2024-06-22Feltz Printing Service UNQUALIFIED93Bernardo Dominic
1018Ricardo F AmigonItaly2024-06-01Benton, John B Jr UNQUALIFIED31Onyama Limba
1019Emily J RulapaughUnited Kingdom2024-06-04Morlong Associates NEGOTIATION37Bernardo Dominic
1020Maria E MaletSpain2024-06-01Chapman, Ross E Esq QUALIFIED97Stephen Shaw
1021Ashley R KuskoGermany2024-06-22King, Christopher A Esq NEW94Asiya Javayant
1022Isabel Z SlusarskiBrazil2024-06-08Feltz Printing Service QUALIFIED19Asiya Javayant
1023Adams Q WhobreyArgentina2024-05-27Truhlar And Truhlar Attys QUALIFIED11Stephen Shaw
1024Wickens F OstroskyRussia2024-06-15Chemel, James L Cpa NEW45Asiya Javayant
1025Aika H SaylorsFrance2024-06-04Dorl, James J Esq QUALIFIED97Ivan Magalhaes
1026Jefferson F KuskoGermany2024-06-14King, Christopher A Esq PROPOSAL4Onyama Limba
1027Jennifer S VenereCanada2024-06-01King, Christopher A Esq NEW25Bernardo Dominic
1028Aditya G DarakjyIndia2024-06-19Benton, John B Jr UNQUALIFIED66Ivan Magalhaes
1029Misaki V MacleadUnited Kingdom2024-06-16Rousseaux, Michael Esq PROPOSAL80Anna Fali
1030Costa G RutaJapan2024-06-04Morlong Associates UNQUALIFIED1Elwin Sharvill
1031Stacey S GillianItaly2024-06-01Chanay, Jeffrey A Esq RENEWAL90Ivan Magalhaes
1032Emily J MaletJapan2024-06-15Feiner Bros PROPOSAL72Ioni Bowcher
1033Julie Q AlbaresFrance2024-05-31Rousseaux, Michael Esq QUALIFIED16Ioni Bowcher
1034Cody W FlosiSpain2024-06-12Feltz Printing Service QUALIFIED90Stephen Shaw
1035Adams E AlbaresUnited Kingdom2024-06-22Buckley Miller Wright PROPOSAL4Asiya Javayant
1036Clifford K SchemmerItaly2024-06-13Printing Dimensions PROPOSAL2Elwin Sharvill
1037David K FigeroaItaly2024-06-04Dorl, James J Esq NEGOTIATION9Bernardo Dominic
1038Costa C NestleIndia2024-06-14Rangoni Of Florence RENEWAL22Xuxue Feng
1039Johnson C OstroskySpain2024-06-12Printing Dimensions NEW89Onyama Limba
1040Adams Q KolmetzArgentina2024-06-23Feltz Printing Service NEW44Elwin Sharvill
1041Nicolas H RoysterBrazil2024-06-04Feltz Printing Service PROPOSAL3Elwin Sharvill
1042James G RimIndia2024-06-01Printing Dimensions RENEWAL40Amy Elsner
1043Arvin W VocelkaArgentina2024-06-05Feiner Bros NEGOTIATION12Ivan Magalhaes
1044Murillo Q NickaUnited Kingdom2024-05-28Printing Dimensions QUALIFIED32Bernardo Dominic
1045Tony J GillianItaly2024-06-01Commercial Press QUALIFIED71Anna Fali
1046Leja N InouyeItaly2024-06-06Dorl, James J Esq NEGOTIATION15Ioni Bowcher
1047Jones B NestleIndia2024-06-14Feiner Bros NEW71Amy Elsner
1048Leja Z GlickRussia2024-06-20Chapman, Ross E Esq RENEWAL19Asiya Javayant
1049Leja Y RimSpain2024-06-24Printing Dimensions PROPOSAL37Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Ricardo V SlusarskiBrazilAnna Fali UNQUALIFIED
Mayumi Y SlusarskiIndiaStephen Shaw QUALIFIED
Antonio L StockhamIndiaOnyama Limba PROPOSAL
Munro P NickaAustraliaAsiya Javayant RENEWAL
Kaitlin B FerenczItalyIoni Bowcher PROPOSAL
Mayumi D DilliardIndiaBernardo Dominic NEW
Octavia V DarakjyArgentinaAnna Fali RENEWAL
Antonio O SlusarskiArgentinaXuxue Feng NEGOTIATION
Ashley U GillianCanadaBernardo Dominic UNQUALIFIED
Darci J PerinUnited KingdomStephen Shaw PROPOSAL
Murillo B WieserFranceAnna Fali NEW
Jennifer S GillianFranceIoni Bowcher NEW
Aika Z AmigonFranceBernardo Dominic NEGOTIATION
Chavez B MorascaJapanStephen Shaw UNQUALIFIED
Misaki L DilliardAustraliaAnna Fali NEW
Jennifer L FollerBrazilOnyama Limba UNQUALIFIED
Misaki H GarufiJapanAsiya Javayant RENEWAL
Rodrigues Y PaprockiSpainElwin Sharvill NEW
Leon D RimBrazilStephen Shaw UNQUALIFIED
Murillo Q AmigonCanadaBernardo Dominic NEGOTIATION
Izzy Y FollerItalyStephen Shaw PROPOSAL
Deepesh N ShinkoGermanyAnna Fali RENEWAL
Ivar R FlosiIndiaAsiya Javayant PROPOSAL
Jones W GillianCanadaIoni Bowcher RENEWAL
Maria K GauchoJapanElwin Sharvill QUALIFIED
Mayumi Z BriddickIndiaStephen Shaw UNQUALIFIED
Francesco O ChuiGermanyAmy Elsner RENEWAL
Greenwood X OstroskySpainXuxue Feng NEW
Jefferson D ChuiSpainStephen Shaw RENEWAL
Wickens V MarrierUnited KingdomAnna Fali PROPOSAL
Mayumi G DoeUnited KingdomBernardo Dominic QUALIFIED
Kadeem V CampainBrazilElwin Sharvill NEW
Francesco P PaprockiAustraliaStephen Shaw NEGOTIATION
Deepesh D WaycottFranceAsiya Javayant NEGOTIATION
Julie G NickaArgentinaElwin Sharvill QUALIFIED
Salvatore I ChuiIndiaXuxue Feng QUALIFIED
Murillo T MacleadRussiaElwin Sharvill NEGOTIATION
Isabel Q ButtItalyAsiya Javayant RENEWAL
Ricardo S GarufiArgentinaOnyama Limba PROPOSAL
Misaki G RulapaughItalyXuxue Feng UNQUALIFIED
Aika X DilliardCanadaAsiya Javayant PROPOSAL
Costa E MaletBrazilOnyama Limba NEGOTIATION
Ricardo E RulapaughUnited KingdomAmy Elsner UNQUALIFIED
Jennifer J StensethArgentinaStephen Shaw RENEWAL
Leon V PerinArgentinaAmy Elsner NEGOTIATION
Jones R MacleadJapanOnyama Limba RENEWAL
David K StockhamAustraliaIvan Magalhaes PROPOSAL
Kadeem S MacleadItalyIoni Bowcher NEW
Izzy G MorascaJapanIvan Magalhaes NEGOTIATION
Costa D BriddickIndiaAnna Fali UNQUALIFIED
Frozen Columns
Name
Johnson J Kolmetz
Aika U Glick
Arvin H Paprocki
Chavez E Tollner
Aika E Gaucho
Izzy Y Bowley
Adams A Ferencz
Isabel M Stockham
Alejandro F Kolmetz
Ashley K Glick
Octavia K Morasca
Misaki L Morasca
Kadeem Y Inouye
Rodrigues A Stockham
Ricardo U Waycott
Munro G Caudy
Clifford D Ferencz
Antonio X Doe
Faith G Royster
Maisha S Albares
David F Sergi
Murillo U Doe
Ricardo C Malet
Maria R Waycott
Aruna N Iturbide
Smith X Kusko
Tony F Bolognia
Nicolas J Tollner
James H Royster
Tony E Malet
Cody S Wieser
Rodrigues O Tollner
Costa J Saylors
Munro T Caldarera
Claire G Iturbide
Faith U Waycott
Cody B Paprocki
Maisha L Iturbide
Nicolas Z Rulapaugh
Faith D Marrier
Costa P Kolmetz
Leja X Dilliard
Leon U Glick
Francesco P Stockham
Aditya W Doe
Tony Z Saylors
Faith G Kolmetz
Darci M Malet
Leja V Kusko
Antonio U Flosi
IdCountryDate
1000Germany2024-06-19
1001India2024-06-07
1002France2024-06-01
1003Brazil2024-05-29
1004Spain2024-06-05
1005Canada2024-06-17
1006France2024-05-26
1007Russia2024-05-29
1008United Kingdom2024-05-30
1009United Kingdom2024-06-02
1010Italy2024-05-27
1011Spain2024-06-05
1012Russia2024-06-16
1013France2024-06-07
1014Canada2024-06-12
1015Brazil2024-06-14
1016Australia2024-06-13
1017United Kingdom2024-06-15
1018Argentina2024-05-31
1019Japan2024-06-15
1020Russia2024-05-26
1021France2024-06-06
1022United Kingdom2024-06-18
1023Germany2024-06-01
1024Russia2024-06-12
1025Canada2024-06-10
1026Brazil2024-06-01
1027Japan2024-06-20
1028Russia2024-06-05
1029Spain2024-06-19
1030Australia2024-06-06
1031Brazil2024-06-05
1032United Kingdom2024-06-06
1033France2024-06-15
1034Spain2024-06-04
1035Japan2024-05-29
1036Italy2024-06-02
1037Spain2024-06-14
1038Japan2024-06-22
1039Italy2024-06-21
1040Spain2024-06-13
1041Germany2024-05-31
1042France2024-06-14
1043Spain2024-06-19
1044Russia2024-06-21
1045India2024-05-30
1046Russia2024-05-28
1047Argentina2024-06-16
1048Japan2024-06-22
1049Japan2024-06-23

On-Demand Data

NameIdCountryDate
Octavia P Ostrosky1000Brazil2024-06-05
Ricardo U Gaucho1001United Kingdom2024-06-07
Jefferson K Saylors1002France2024-06-17
Arvin G Campain1003Japan2024-06-04
Ivar L Whobrey1004Russia2024-06-09
Sinclair Y Marrier1005India2024-06-09
Arvin O Waycott1006United Kingdom2024-06-09
Claire G Saylors1007Australia2024-06-17
Maisha Z Kolmetz1008Argentina2024-06-21
Ricardo Z Slusarski1009Germany2024-06-17
Ivar J Shinko1010Brazil2024-05-27
Adams T Marrier1011Canada2024-05-29
Mayumi W Stockham1012India2024-05-27
Rodrigues X Briddick1013United Kingdom2024-05-27
Chavez Q Ostrosky1014Spain2024-06-13
Smith U Maclead1015Argentina2024-06-04
Claire E Stenseth1016Brazil2024-06-24
Ashley Q Doe1017Russia2024-05-31
Izzy F Malet1018Australia2024-06-06
Arvin Z Tollner1019Argentina2024-06-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford G AlbaresFranceElwin Sharvill PROPOSAL
James B NickaAustraliaBernardo Dominic PROPOSAL
Maisha G SaylorsArgentinaXuxue Feng RENEWAL
Costa S WieserJapanElwin Sharvill PROPOSAL
Ashley I KolmetzCanadaAsiya Javayant QUALIFIED
Johnson Z GlickFranceAsiya Javayant PROPOSAL
Clifford Y ChuiArgentinaAnna Fali QUALIFIED
Isabel V AlbaresAustraliaAsiya Javayant PROPOSAL
Jefferson Z MacleadItalyAmy Elsner NEGOTIATION
Jones W DoeGermanyStephen Shaw UNQUALIFIED
Morrow X MaletJapanIoni Bowcher QUALIFIED
Salvatore R MarrierArgentinaAnna Fali NEGOTIATION
James L VocelkaSpainIvan Magalhaes QUALIFIED
David C VenereAustraliaElwin Sharvill NEGOTIATION
Jefferson Z ChuiFranceElwin Sharvill UNQUALIFIED
Nicolas Q PoquetteRussiaBernardo Dominic NEGOTIATION
Clifford Q OldroydUnited KingdomIoni Bowcher UNQUALIFIED
Aditya P InouyeItalyIvan Magalhaes UNQUALIFIED
Costa T OstroskyItalyAmy Elsner NEW
Aditya W RimIndiaAmy Elsner RENEWAL
Mayumi C KuskoJapanStephen Shaw PROPOSAL
Smith D GarufiItalyBernardo Dominic NEW
Ivar F GauchoArgentinaAnna Fali NEGOTIATION
Morrow F SergiItalyBernardo Dominic PROPOSAL
Jeanfrancois C FollerUnited KingdomAsiya Javayant RENEWAL
Munro P SergiBrazilAmy Elsner PROPOSAL
Nicolas H ShinkoCanadaAmy Elsner NEW
Octavia E VocelkaBrazilIoni Bowcher NEGOTIATION
Mayumi X RutaRussiaIoni Bowcher NEGOTIATION
Jennifer K SergiUnited KingdomIvan Magalhaes RENEWAL
Jefferson O CaudySpainElwin Sharvill UNQUALIFIED
Costa F WieserJapanIvan Magalhaes QUALIFIED
Claire S GarufiAustraliaOnyama Limba QUALIFIED
Kaitlin H SergiCanadaAnna Fali NEGOTIATION
Ricardo N CaldareraCanadaStephen Shaw NEW
Johnson V CaudyGermanyElwin Sharvill NEW
Aditya O GarufiSpainElwin Sharvill UNQUALIFIED
Claire B NestleJapanXuxue Feng PROPOSAL
Leon H CaldareraJapanStephen Shaw NEW
Julie X StockhamFranceAnna Fali 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>