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
Ivar V GillianItalyAnna Fali UNQUALIFIED
Alejandro O PoquetteFranceIvan Magalhaes RENEWAL
Julie W DilliardIndiaAmy Elsner RENEWAL
Antonio H FlosiIndiaAnna Fali NEGOTIATION
Julie Z RoysterBrazilAsiya Javayant UNQUALIFIED
Jones A DarakjyItalyIvan Magalhaes RENEWAL
Maisha H ChuiGermanyStephen Shaw UNQUALIFIED
Julie U WaycottFranceElwin Sharvill NEGOTIATION
Stacey W ShinkoUnited KingdomAnna Fali QUALIFIED
Johnson Y MaletBrazilBernardo Dominic PROPOSAL
Kadeem B DilliardAustraliaBernardo Dominic RENEWAL
Julie J AlbaresJapanAsiya Javayant PROPOSAL
Arvin W DarakjyIndiaAsiya Javayant RENEWAL
Octavia L CampainIndiaIvan Magalhaes RENEWAL
Adams J SchemmerIndiaOnyama Limba NEGOTIATION
Greenwood F NickaBrazilIoni Bowcher QUALIFIED
Aruna S OldroydCanadaAmy Elsner RENEWAL
Mayumi G FigeroaUnited KingdomIoni Bowcher QUALIFIED
Rodrigues I RimJapanIvan Magalhaes UNQUALIFIED
Deepesh G TollnerJapanAnna Fali QUALIFIED
Kaitlin H RutaUnited KingdomBernardo Dominic NEW
Claire I StensethCanadaStephen Shaw UNQUALIFIED
Jeanfrancois Y OstroskyIndiaXuxue Feng UNQUALIFIED
David D GillianCanadaAsiya Javayant QUALIFIED
Ashley E NestleCanadaIvan Magalhaes QUALIFIED
Wickens K NestleCanadaOnyama Limba PROPOSAL
Arvin U DoeJapanAmy Elsner PROPOSAL
Deepesh S PerinIndiaAnna Fali NEW
Ashley M KolmetzRussiaStephen Shaw RENEWAL
Tony Q SaylorsCanadaBernardo Dominic QUALIFIED
James A BriddickBrazilIvan Magalhaes NEW
Cody L PoquetteSpainAnna Fali UNQUALIFIED
Jefferson L SaylorsArgentinaAnna Fali UNQUALIFIED
Julie W MacleadGermanyAsiya Javayant NEW
Stacey P TollnerGermanyIoni Bowcher PROPOSAL
Leja Q BowleyArgentinaAsiya Javayant UNQUALIFIED
Ivar B AmigonAustraliaElwin Sharvill RENEWAL
Octavia N FigeroaRussiaXuxue Feng RENEWAL
Julie P SergiIndiaOnyama Limba NEGOTIATION
Darci I MaletIndiaStephen Shaw UNQUALIFIED
Misaki U TollnerUnited KingdomAsiya Javayant QUALIFIED
Arvin M KuskoBrazilXuxue Feng UNQUALIFIED
Munro N BologniaAustraliaAnna Fali NEGOTIATION
Emily B VenereArgentinaAnna Fali NEGOTIATION
Leja Y FlosiFranceAsiya Javayant QUALIFIED
Juan W GillianIndiaBernardo Dominic UNQUALIFIED
Sinclair Z KolmetzCanadaElwin Sharvill PROPOSAL
Clifford Y NestleGermanyAsiya Javayant RENEWAL
Jeanfrancois D FerenczAustraliaAsiya Javayant RENEWAL
Ivar T NickaRussiaAmy Elsner UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria M ShinkoCanadaBernardo Dominic QUALIFIED
Ashley S TollnerJapanXuxue Feng NEW
Leon R BologniaIndiaElwin Sharvill QUALIFIED
Wickens C RulapaughBrazilBernardo Dominic NEW
Mayumi Y SergiUnited KingdomElwin Sharvill NEW
Aika B IturbideRussiaOnyama Limba RENEWAL
Nicolas L SaylorsGermanyAnna Fali RENEWAL
Morrow F RutaFranceIoni Bowcher RENEWAL
Salvatore S MarrierUnited KingdomXuxue Feng RENEWAL
Salvatore I StockhamAustraliaStephen Shaw NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Costa T CaldareraItaly2024-06-14Feiner Bros PROPOSAL78Stephen Shaw
1001Clifford T ShinkoUnited Kingdom2024-05-25Feiner Bros QUALIFIED71Asiya Javayant
1002Jones B BowleyUnited Kingdom2024-06-07Buckley Miller Wright UNQUALIFIED94Ioni Bowcher
1003Jones X DilliardItaly2024-05-29Morlong Associates PROPOSAL78Ioni Bowcher
1004Clifford Q ButtSpain2024-05-24Benton, John B Jr RENEWAL99Asiya Javayant
1005Leja M VenereRussia2024-06-14Printing Dimensions PROPOSAL47Asiya Javayant
1006Jennifer Y RulapaughCanada2024-05-30Feltz Printing Service UNQUALIFIED86Ioni Bowcher
1007Morrow O VocelkaIndia2024-05-25Feltz Printing Service PROPOSAL32Xuxue Feng
1008Nicolas E CaldareraCanada2024-06-12King, Christopher A Esq NEGOTIATION75Stephen Shaw
1009Aika C DarakjyCanada2024-06-10Dorl, James J Esq RENEWAL87Ivan Magalhaes
1010Isabel Q VenereIndia2024-05-26Morlong Associates QUALIFIED84Anna Fali
1011Silvio J SaylorsArgentina2024-06-03Rangoni Of Florence QUALIFIED67Stephen Shaw
1012Kaitlin N ChuiAustralia2024-06-18King, Christopher A Esq PROPOSAL30Stephen Shaw
1013Adams W NestleFrance2024-06-01Chanay, Jeffrey A Esq RENEWAL30Elwin Sharvill
1014Faith H FigeroaJapan2024-06-17King, Christopher A Esq NEGOTIATION49Ioni Bowcher
1015Aika R WhobreyCanada2024-06-12Benton, John B Jr QUALIFIED93Ioni Bowcher
1016Faith C CaldareraArgentina2024-06-16Feltz Printing Service PROPOSAL17Ivan Magalhaes
1017Isabel P KuskoAustralia2024-05-31Buckley Miller Wright UNQUALIFIED74Amy Elsner
1018Jefferson E ButtUnited Kingdom2024-06-10Benton, John B Jr PROPOSAL38Anna Fali
1019Silvio K ButtArgentina2024-05-27Benton, John B Jr NEGOTIATION53Ivan Magalhaes
1020Greenwood I KuskoJapan2024-06-12Morlong Associates PROPOSAL63Xuxue Feng
1021Adams V WhobreyRussia2024-05-23Commercial Press NEGOTIATION79Stephen Shaw
1022Aika K SchemmerJapan2024-05-25Feiner Bros QUALIFIED70Ivan Magalhaes
1023Faith C OldroydJapan2024-06-02Morlong Associates QUALIFIED18Onyama Limba
1024Maria Q VocelkaSpain2024-06-11Benton, John B Jr QUALIFIED79Bernardo Dominic
1025Claire Q GarufiGermany2024-06-20Feltz Printing Service NEW28Stephen Shaw
1026Costa M CaudyItaly2024-05-31Feltz Printing Service RENEWAL97Ivan Magalhaes
1027Greenwood H RulapaughSpain2024-06-06Rangoni Of Florence QUALIFIED51Asiya Javayant
1028Jeanfrancois U NestleSpain2024-05-30Feltz Printing Service NEW55Stephen Shaw
1029Johnson S PaprockiBrazil2024-06-04Benton, John B Jr PROPOSAL97Onyama Limba
1030Aika D FollerUnited Kingdom2024-06-21Feiner Bros NEGOTIATION9Onyama Limba
1031Juan S AmigonBrazil2024-05-26Truhlar And Truhlar Attys UNQUALIFIED67Ivan Magalhaes
1032Ricardo S PerinSpain2024-06-11Feiner Bros QUALIFIED5Ioni Bowcher
1033Stacey R SchemmerIndia2024-05-29Rousseaux, Michael Esq NEGOTIATION63Bernardo Dominic
1034Aditya Z GauchoCanada2024-06-11Feltz Printing Service UNQUALIFIED30Anna Fali
1035Silvio Z RoysterItaly2024-06-07Rangoni Of Florence RENEWAL33Elwin Sharvill
1036Clifford B GlickJapan2024-06-04Dorl, James J Esq UNQUALIFIED65Anna Fali
1037Leja W CampainUnited Kingdom2024-06-21Chemel, James L Cpa NEGOTIATION2Stephen Shaw
1038Munro K RulapaughIndia2024-06-17Morlong Associates UNQUALIFIED44Xuxue Feng
1039Izzy R RimJapan2024-06-17Printing Dimensions UNQUALIFIED94Asiya Javayant
1040Mayumi K ShinkoJapan2024-06-01Dorl, James J Esq NEW56Bernardo Dominic
1041Isabel X BologniaItaly2024-05-28Feiner Bros NEW32Anna Fali
1042Arvin B FollerFrance2024-05-27Rousseaux, Michael Esq NEGOTIATION71Ivan Magalhaes
1043Maria W DarakjyCanada2024-05-26Feiner Bros NEW42Ivan Magalhaes
1044Ricardo E StockhamItaly2024-06-04Rousseaux, Michael Esq PROPOSAL51Ioni Bowcher
1045Mayumi K ButtGermany2024-05-30Morlong Associates PROPOSAL33Ioni Bowcher
1046Mujtaba K MarrierGermany2024-06-03Feltz Printing Service PROPOSAL4Ioni Bowcher
1047Stacey N MaletJapan2024-06-20King, Christopher A Esq PROPOSAL35Asiya Javayant
1048Wickens U DarakjyAustralia2024-06-17Printing Dimensions PROPOSAL7Xuxue Feng
1049Silvio N AmigonCanada2024-05-24Feltz Printing Service NEGOTIATION92Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Deepesh R NickaRussiaBernardo Dominic UNQUALIFIED
Ricardo F BologniaBrazilBernardo Dominic PROPOSAL
Adams T StensethItalyIoni Bowcher RENEWAL
Maisha D ButtIndiaXuxue Feng RENEWAL
Adams P NestleUnited KingdomIvan Magalhaes NEGOTIATION
Emily S TollnerFranceAnna Fali NEW
James J RimRussiaAmy Elsner NEW
James F MorascaIndiaIvan Magalhaes PROPOSAL
Kaitlin I DilliardIndiaIoni Bowcher RENEWAL
Faith U KolmetzUnited KingdomBernardo Dominic QUALIFIED
Aika W AmigonJapanXuxue Feng QUALIFIED
Greenwood P InouyeUnited KingdomIoni Bowcher RENEWAL
Ricardo P AlbaresJapanElwin Sharvill NEW
Octavia U MorascaAustraliaAsiya Javayant QUALIFIED
Kadeem Z CampainAustraliaElwin Sharvill QUALIFIED
Maria R OldroydArgentinaIoni Bowcher NEGOTIATION
Ricardo Z DoeIndiaBernardo Dominic NEW
Chavez C KuskoFranceAsiya Javayant PROPOSAL
Wickens I GarufiUnited KingdomOnyama Limba PROPOSAL
Silvio M MarrierCanadaAmy Elsner NEW
Murillo P RutaJapanAsiya Javayant NEW
Munro T PaprockiAustraliaIvan Magalhaes NEGOTIATION
Aruna I SergiJapanStephen Shaw PROPOSAL
Johnson D PoquetteJapanBernardo Dominic RENEWAL
Julie I GlickJapanAmy Elsner NEW
Francesco W VocelkaJapanXuxue Feng RENEWAL
Claire T CampainAustraliaAsiya Javayant NEW
Isabel H RimFranceOnyama Limba NEW
Mayumi K WhobreyBrazilIvan Magalhaes QUALIFIED
Johnson H ChuiIndiaXuxue Feng QUALIFIED
Deepesh Z FlosiItalyOnyama Limba NEW
Nicolas J KuskoFranceAnna Fali RENEWAL
Nicolas B NickaUnited KingdomAsiya Javayant RENEWAL
James W WaycottIndiaElwin Sharvill PROPOSAL
Antonio G KolmetzAustraliaAnna Fali UNQUALIFIED
Isabel C MaletUnited KingdomBernardo Dominic NEGOTIATION
Ricardo L GarufiGermanyAsiya Javayant UNQUALIFIED
Cody Z MorascaArgentinaAnna Fali NEGOTIATION
Aruna B TollnerGermanyXuxue Feng NEW
Maria G DarakjyRussiaOnyama Limba NEGOTIATION
David K MaletJapanIvan Magalhaes UNQUALIFIED
Aika K SergiCanadaIvan Magalhaes RENEWAL
Kadeem V GauchoJapanOnyama Limba PROPOSAL
Morrow I GlickArgentinaElwin Sharvill QUALIFIED
Octavia Z RulapaughCanadaAmy Elsner PROPOSAL
Izzy S VenereItalyAsiya Javayant NEGOTIATION
Ricardo J SchemmerItalyBernardo Dominic RENEWAL
Rodrigues K StensethRussiaIoni Bowcher RENEWAL
Aruna N PerinSpainAnna Fali PROPOSAL
Tony H OstroskyCanadaIoni Bowcher NEGOTIATION
Frozen Columns
Name
Leon L Glick
Jones L Whobrey
Leon V Stockham
Rodrigues J Paprocki
Cody W Darakjy
Jefferson G Inouye
Misaki P Shinko
Kadeem X Flosi
Juan R Nestle
Ashley R Caldarera
Alejandro T Foller
Claire H Vocelka
Ricardo T Garufi
James F Ferencz
Leja I Iturbide
Aruna W Whobrey
Ashley U Wieser
Misaki A Malet
Tony V Venere
Stacey H Albares
Aruna U Schemmer
Kadeem M Kusko
Rodrigues C Inouye
Jeanfrancois V Bowley
Julie X Dilliard
Darci H Nestle
Maria O Bowley
Nicolas U Kolmetz
Rodrigues Y Stenseth
Mujtaba E Foller
Julie Z Albares
Mayumi G Kusko
Emily O Chui
Misaki F Kusko
Deepesh I Albares
Costa P Figeroa
Arvin F Gaucho
Costa D Saylors
Jeanfrancois H Rulapaugh
Mayumi S Figeroa
Chavez D Gaucho
Cody Q Ostrosky
Clifford O Glick
Wickens W Albares
Emily S Morasca
Rodrigues F Shinko
Chavez U Wieser
Isabel Z Malet
Deepesh G Nicka
Nicolas S Iturbide
IdCountryDate
1000Canada2024-06-08
1001Japan2024-06-11
1002Japan2024-06-15
1003Italy2024-06-20
1004Spain2024-06-01
1005Argentina2024-05-31
1006Japan2024-06-10
1007Germany2024-06-05
1008Canada2024-06-10
1009France2024-06-10
1010United Kingdom2024-06-14
1011Japan2024-06-06
1012Japan2024-05-30
1013Italy2024-05-26
1014India2024-06-12
1015United Kingdom2024-06-05
1016Canada2024-06-04
1017Italy2024-06-18
1018Australia2024-06-09
1019Canada2024-06-11
1020United Kingdom2024-06-17
1021India2024-06-06
1022Argentina2024-06-18
1023Canada2024-06-01
1024United Kingdom2024-06-03
1025Canada2024-05-29
1026Italy2024-06-08
1027India2024-05-27
1028India2024-06-02
1029Australia2024-05-27
1030Brazil2024-06-03
1031Japan2024-05-24
1032Argentina2024-06-03
1033Canada2024-06-09
1034India2024-06-02
1035Canada2024-06-17
1036France2024-06-01
1037Canada2024-06-13
1038Japan2024-06-12
1039Russia2024-06-01
1040Australia2024-06-04
1041Argentina2024-06-18
1042Germany2024-06-05
1043Germany2024-05-27
1044Italy2024-06-12
1045India2024-06-20
1046Spain2024-05-30
1047Italy2024-05-26
1048Brazil2024-05-24
1049United Kingdom2024-05-30

On-Demand Data

NameIdCountryDate
Munro P Campain1000Argentina2024-06-15
Ashley Z Malet1001France2024-06-18
Julie X Rim1002Canada2024-06-17
Alejandro U Doe1003France2024-06-01
Mayumi A Stockham1004Russia2024-06-06
Mayumi R Glick1005Argentina2024-06-10
Jennifer Q Gaucho1006Japan2024-06-08
Misaki W Amigon1007Italy2024-06-16
Faith B Amigon1008Germany2024-06-21
Francesco T Campain1009United Kingdom2024-06-20
Silvio D Rulapaugh1010Brazil2024-06-18
Jennifer S Darakjy1011Canada2024-05-29
Ricardo S Royster1012Japan2024-06-19
James I Caldarera1013Spain2024-06-20
Stacey U Rulapaugh1014Germany2024-06-20
Kadeem J Royster1015Japan2024-06-12
Izzy Z Waycott1016Canada2024-06-21
Mayumi P Wieser1017Germany2024-06-13
Wickens X Caldarera1018Germany2024-06-11
Alejandro E Foller1019Germany2024-05-30
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez S FlosiFranceIoni Bowcher NEW
Arvin M SlusarskiFranceAnna Fali UNQUALIFIED
Deepesh T ButtItalyElwin Sharvill QUALIFIED
Deepesh Z VocelkaIndiaStephen Shaw NEW
Chavez R RutaFranceAmy Elsner RENEWAL
Stacey K KuskoIndiaOnyama Limba RENEWAL
Costa A RutaBrazilElwin Sharvill QUALIFIED
David Y KolmetzJapanBernardo Dominic PROPOSAL
James U VocelkaIndiaIvan Magalhaes NEW
Wickens J StockhamJapanStephen Shaw PROPOSAL
Cody Y TollnerRussiaElwin Sharvill QUALIFIED
Morrow P RutaCanadaOnyama Limba NEGOTIATION
David J MarrierAustraliaOnyama Limba PROPOSAL
Rodrigues O DoeBrazilIvan Magalhaes NEGOTIATION
David N OstroskyAustraliaElwin Sharvill NEW
Jefferson P FlosiUnited KingdomXuxue Feng PROPOSAL
Jennifer F BriddickIndiaElwin Sharvill PROPOSAL
Francesco G DilliardAustraliaElwin Sharvill PROPOSAL
Sinclair C VenereRussiaIoni Bowcher UNQUALIFIED
Johnson U DarakjyJapanXuxue Feng PROPOSAL
Mayumi L WieserIndiaBernardo Dominic QUALIFIED
Alejandro K SlusarskiBrazilIoni Bowcher RENEWAL
Octavia H WhobreyBrazilElwin Sharvill QUALIFIED
Antonio D KuskoGermanyIvan Magalhaes NEGOTIATION
Jeanfrancois V MaletIndiaStephen Shaw UNQUALIFIED
Murillo I StensethGermanyElwin Sharvill NEGOTIATION
Octavia S RoysterIndiaXuxue Feng UNQUALIFIED
Morrow E MacleadBrazilElwin Sharvill NEW
Octavia M AlbaresUnited KingdomAsiya Javayant RENEWAL
Izzy Z VocelkaBrazilAnna Fali NEGOTIATION
Arvin E AmigonItalyIvan Magalhaes RENEWAL
Izzy G AlbaresItalyBernardo Dominic RENEWAL
Wickens L DilliardIndiaAnna Fali UNQUALIFIED
Johnson H DoeIndiaStephen Shaw PROPOSAL
Kadeem S KuskoUnited KingdomStephen Shaw PROPOSAL
Jones H SchemmerItalyBernardo Dominic RENEWAL
Greenwood P RimAustraliaAmy Elsner NEW
Izzy K VocelkaRussiaAsiya Javayant NEGOTIATION
Arvin N WaycottIndiaAsiya Javayant NEGOTIATION
Francesco D KolmetzJapanIvan Magalhaes PROPOSAL

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