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
Adams L FlosiCanadaOnyama Limba RENEWAL
Faith M BriddickAustraliaStephen Shaw UNQUALIFIED
Isabel N WhobreyJapanStephen Shaw RENEWAL
Murillo O BologniaItalyIoni Bowcher PROPOSAL
Rodrigues C ChuiUnited KingdomIvan Magalhaes NEW
Munro K PaprockiUnited KingdomStephen Shaw PROPOSAL
Wickens H BowleyCanadaIoni Bowcher NEGOTIATION
Antonio W FerenczFranceIvan Magalhaes NEW
Smith A RoysterUnited KingdomAsiya Javayant NEGOTIATION
David Z WaycottSpainStephen Shaw PROPOSAL
Aruna E IturbideAustraliaStephen Shaw PROPOSAL
Cody V ShinkoFranceBernardo Dominic RENEWAL
Cody Y RulapaughIndiaOnyama Limba NEGOTIATION
Jennifer Y BowleyUnited KingdomStephen Shaw NEGOTIATION
Costa Y SergiRussiaIoni Bowcher UNQUALIFIED
Greenwood W FerenczRussiaXuxue Feng QUALIFIED
Aika K BriddickRussiaAmy Elsner NEW
Cody P RoysterItalyIoni Bowcher PROPOSAL
Costa V DarakjyUnited KingdomAsiya Javayant PROPOSAL
James E InouyeRussiaAsiya Javayant PROPOSAL
Mujtaba B AmigonGermanyAnna Fali NEGOTIATION
Julie V MaletIndiaXuxue Feng UNQUALIFIED
Izzy O GarufiAustraliaIvan Magalhaes PROPOSAL
Antonio K MaletRussiaAnna Fali PROPOSAL
Adams H AmigonItalyElwin Sharvill UNQUALIFIED
Aditya N OldroydFranceAsiya Javayant PROPOSAL
Greenwood X FlosiArgentinaStephen Shaw UNQUALIFIED
Silvio S OstroskyGermanyAsiya Javayant NEW
Deepesh Z RoysterCanadaIoni Bowcher NEW
James I RulapaughAustraliaXuxue Feng QUALIFIED
Aruna O RutaFranceAnna Fali NEGOTIATION
Emily N VocelkaRussiaAnna Fali RENEWAL
Leja A PerinIndiaXuxue Feng NEGOTIATION
Nicolas D RimUnited KingdomStephen Shaw PROPOSAL
Darci F StockhamJapanElwin Sharvill PROPOSAL
Sinclair D WaycottFranceAmy Elsner PROPOSAL
Francesco P WhobreyJapanAnna Fali QUALIFIED
Nicolas Z BowleyItalyStephen Shaw NEGOTIATION
Rodrigues N RoysterArgentinaAnna Fali QUALIFIED
Faith B ShinkoArgentinaElwin Sharvill PROPOSAL
Tony A WhobreyFranceElwin Sharvill NEGOTIATION
Ashley Z MacleadJapanAmy Elsner QUALIFIED
Leon I PerinItalyElwin Sharvill RENEWAL
Kaitlin L OstroskyJapanElwin Sharvill NEGOTIATION
Jones K ShinkoAustraliaIvan Magalhaes NEW
Deepesh R GlickBrazilAsiya Javayant NEW
Ricardo C TollnerCanadaBernardo Dominic QUALIFIED
Aditya B DoeItalyBernardo Dominic UNQUALIFIED
Julie K BowleySpainOnyama Limba RENEWAL
Cody J MaletRussiaAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Julie G WhobreyGermanyOnyama Limba QUALIFIED
Juan M DilliardBrazilElwin Sharvill PROPOSAL
Jones H TollnerItalyAnna Fali QUALIFIED
Wickens E GauchoUnited KingdomXuxue Feng NEGOTIATION
Isabel Q StockhamCanadaAnna Fali PROPOSAL
Tony B SergiSpainElwin Sharvill UNQUALIFIED
Sinclair V DilliardBrazilIoni Bowcher PROPOSAL
Murillo X RoysterGermanyElwin Sharvill NEGOTIATION
Maisha R KuskoFranceAnna Fali RENEWAL
Deepesh U InouyeGermanyBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues G DoeGermany2025-04-25Rangoni Of Florence RENEWAL69Asiya Javayant
1001Cody E FollerItaly2025-04-01Dorl, James J Esq NEW63Bernardo Dominic
1002Smith S FlosiBrazil2025-04-20King, Christopher A Esq RENEWAL11Stephen Shaw
1003Maria O PoquetteCanada2025-04-04Printing Dimensions QUALIFIED38Stephen Shaw
1004Alejandro Y NickaItaly2025-04-26Feiner Bros NEW38Elwin Sharvill
1005Julie B FerenczRussia2025-04-02Rousseaux, Michael Esq NEGOTIATION50Anna Fali
1006Misaki F OldroydSpain2025-04-26Rousseaux, Michael Esq NEW65Onyama Limba
1007Arvin B TollnerItaly2025-04-18Commercial Press PROPOSAL18Anna Fali
1008Leja A MacleadItaly2025-04-02Buckley Miller Wright NEW91Xuxue Feng
1009Maria Z ButtBrazil2025-04-23Feltz Printing Service QUALIFIED0Asiya Javayant
1010Ricardo C FlosiItaly2025-04-14Chapman, Ross E Esq RENEWAL56Onyama Limba
1011Aika L BologniaSpain2025-04-16Chapman, Ross E Esq QUALIFIED82Stephen Shaw
1012Aika H RoysterSpain2025-04-15Truhlar And Truhlar Attys PROPOSAL20Amy Elsner
1013Costa V PaprockiGermany2025-04-12King, Christopher A Esq NEGOTIATION66Ioni Bowcher
1014Octavia V ButtAustralia2025-04-01Dorl, James J Esq RENEWAL33Ivan Magalhaes
1015Munro D MaletIndia2025-04-07Chanay, Jeffrey A Esq QUALIFIED28Bernardo Dominic
1016Jones M WhobreyItaly2025-04-21Dorl, James J Esq NEW32Amy Elsner
1017Deepesh Z WieserJapan2025-04-09Chanay, Jeffrey A Esq NEGOTIATION20Asiya Javayant
1018Jones R FlosiGermany2025-04-17Rangoni Of Florence RENEWAL47Ivan Magalhaes
1019Leja X FollerSpain2025-04-24Chanay, Jeffrey A Esq UNQUALIFIED68Asiya Javayant
1020Maisha N SlusarskiAustralia2025-04-21Buckley Miller Wright QUALIFIED17Elwin Sharvill
1021Aika E PaprockiGermany2025-04-20Chapman, Ross E Esq NEW48Bernardo Dominic
1022Leon V CaudyGermany2025-04-03Feiner Bros NEGOTIATION76Stephen Shaw
1023Jones Q BologniaRussia2025-04-15Feltz Printing Service NEW93Onyama Limba
1024Faith I ShinkoUnited Kingdom2025-04-17Rousseaux, Michael Esq QUALIFIED51Ivan Magalhaes
1025Isabel R DarakjyJapan2025-04-28Truhlar And Truhlar Attys QUALIFIED49Bernardo Dominic
1026Tony H VocelkaAustralia2025-04-08Morlong Associates QUALIFIED22Ioni Bowcher
1027Claire Q IturbideUnited Kingdom2025-04-18Rousseaux, Michael Esq UNQUALIFIED59Stephen Shaw
1028Faith Q AlbaresAustralia2025-04-19Feltz Printing Service PROPOSAL40Xuxue Feng
1029James Y DoeAustralia2025-04-08Buckley Miller Wright QUALIFIED36Onyama Limba
1030Darci Q ButtFrance2025-04-16Chemel, James L Cpa RENEWAL79Stephen Shaw
1031Morrow C CampainUnited Kingdom2025-04-22Printing Dimensions NEGOTIATION69Onyama Limba
1032Deepesh F CaudyArgentina2025-04-19Feltz Printing Service NEGOTIATION36Xuxue Feng
1033Kadeem C MorascaSpain2025-04-06Printing Dimensions PROPOSAL73Anna Fali
1034Alejandro A MacleadArgentina2025-04-18Chanay, Jeffrey A Esq NEW44Bernardo Dominic
1035Silvio L StockhamBrazil2025-04-17Benton, John B Jr NEGOTIATION93Stephen Shaw
1036Munro N StensethGermany2025-04-02Dorl, James J Esq NEGOTIATION13Ioni Bowcher
1037Greenwood R MaletArgentina2025-04-14Truhlar And Truhlar Attys NEW92Ioni Bowcher
1038Nicolas J DilliardBrazil2025-04-08Dorl, James J Esq UNQUALIFIED77Elwin Sharvill
1039Francesco I OstroskyGermany2025-04-12Chemel, James L Cpa NEGOTIATION77Amy Elsner
1040Claire B ButtJapan2025-04-24Chanay, Jeffrey A Esq NEW15Ivan Magalhaes
1041Faith J CampainJapan2025-04-22Feltz Printing Service NEW92Bernardo Dominic
1042Deepesh C FerenczItaly2025-04-17Morlong Associates NEW94Onyama Limba
1043Mayumi S StockhamSpain2025-04-04Dorl, James J Esq RENEWAL19Xuxue Feng
1044David H BriddickArgentina2025-04-27Truhlar And Truhlar Attys QUALIFIED61Elwin Sharvill
1045Darci J BologniaRussia2025-04-01Feltz Printing Service NEW50Elwin Sharvill
1046Smith P StensethRussia2025-04-08Dorl, James J Esq UNQUALIFIED57Anna Fali
1047Octavia H GillianItaly2025-04-01Chanay, Jeffrey A Esq QUALIFIED48Ivan Magalhaes
1048Costa Z DoeBrazil2025-04-03Truhlar And Truhlar Attys QUALIFIED26Ivan Magalhaes
1049Greenwood N VocelkaIndia2025-04-29Morlong Associates UNQUALIFIED65Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Misaki K RulapaughUnited KingdomOnyama Limba QUALIFIED
Deepesh Y BriddickGermanyElwin Sharvill PROPOSAL
Nicolas C MorascaAustraliaAnna Fali NEW
Smith K NickaGermanyIvan Magalhaes RENEWAL
Deepesh G PoquetteUnited KingdomAmy Elsner PROPOSAL
Maria X BriddickCanadaAnna Fali RENEWAL
Deepesh L InouyeAustraliaStephen Shaw NEGOTIATION
Claire I WhobreyRussiaIoni Bowcher NEGOTIATION
Jennifer F GauchoBrazilXuxue Feng PROPOSAL
Greenwood E NestleAustraliaElwin Sharvill NEGOTIATION
Wickens F MaletGermanyXuxue Feng NEW
Wickens L MarrierCanadaAsiya Javayant QUALIFIED
Jennifer F RimCanadaAmy Elsner NEGOTIATION
Juan I MaletUnited KingdomAmy Elsner PROPOSAL
Tony I FollerSpainBernardo Dominic QUALIFIED
Francesco N ShinkoBrazilIoni Bowcher NEW
Isabel J NickaIndiaBernardo Dominic QUALIFIED
Octavia X BriddickIndiaAmy Elsner RENEWAL
Kaitlin M OstroskyIndiaStephen Shaw NEW
Clifford B MarrierRussiaElwin Sharvill UNQUALIFIED
Isabel R KolmetzSpainStephen Shaw RENEWAL
Octavia C AmigonBrazilOnyama Limba QUALIFIED
Maria Q DoeFranceBernardo Dominic UNQUALIFIED
Sinclair K VocelkaRussiaAsiya Javayant PROPOSAL
Julie H SlusarskiSpainStephen Shaw QUALIFIED
Misaki G ChuiFranceStephen Shaw QUALIFIED
Aditya L SlusarskiJapanElwin Sharvill NEGOTIATION
Jefferson M StensethCanadaAnna Fali UNQUALIFIED
Munro U InouyeCanadaIoni Bowcher PROPOSAL
Salvatore N BologniaGermanyOnyama Limba NEW
Sinclair Y WaycottUnited KingdomStephen Shaw RENEWAL
Emily K PoquetteGermanyXuxue Feng NEGOTIATION
Ashley L RutaArgentinaBernardo Dominic QUALIFIED
Deepesh K StockhamUnited KingdomStephen Shaw RENEWAL
Mayumi C VenereSpainIvan Magalhaes PROPOSAL
Greenwood V RulapaughArgentinaBernardo Dominic QUALIFIED
Maria W StensethSpainOnyama Limba QUALIFIED
Claire U WaycottFranceAnna Fali UNQUALIFIED
Tony T NickaCanadaStephen Shaw PROPOSAL
Aditya O CaldareraIndiaElwin Sharvill UNQUALIFIED
Stacey A InouyeJapanAmy Elsner NEGOTIATION
Maria D ChuiIndiaAnna Fali RENEWAL
Octavia H IturbideRussiaXuxue Feng NEGOTIATION
Maria L AlbaresArgentinaAnna Fali NEGOTIATION
Sinclair R SchemmerRussiaXuxue Feng PROPOSAL
Francesco G DilliardGermanyBernardo Dominic RENEWAL
Mayumi W FerenczItalyOnyama Limba NEGOTIATION
Stacey N ShinkoBrazilXuxue Feng QUALIFIED
Francesco Z StockhamFranceIoni Bowcher QUALIFIED
Kadeem B NestleCanadaAmy Elsner NEGOTIATION
Frozen Columns
Name
Ricardo B Royster
Julie I Malet
Nicolas F Morasca
Clifford N Perin
Jefferson W Figeroa
Isabel B Stockham
Claire Z Whobrey
Emily B Paprocki
Juan G Kolmetz
Mujtaba F Malet
James A Marrier
Antonio T Gillian
Juan D Poquette
Munro Z Flosi
Deepesh L Kolmetz
Greenwood V Caudy
Maisha M Butt
Clifford O Royster
Aditya Z Chui
Ashley M Bolognia
Izzy O Butt
Greenwood O Paprocki
Isabel G Foller
Claire I Flosi
Jefferson D Oldroyd
Salvatore G Ruta
Juan N Kolmetz
Faith O Royster
James P Venere
Tony X Butt
Johnson L Waycott
Jefferson K Campain
Sinclair G Flosi
Faith Z Oldroyd
Mujtaba V Malet
Tony T Venere
Clifford N Ostrosky
Chavez Y Ferencz
Costa F Ferencz
Clifford P Tollner
Tony E Wieser
James R Bolognia
Costa R Glick
Arvin V Rulapaugh
Jennifer P Slusarski
Kaitlin N Ruta
Morrow J Oldroyd
Ricardo E Campain
Nicolas S Darakjy
Arvin R Ferencz
IdCountryDate
1000Australia2025-04-20
1001Brazil2025-04-24
1002Spain2025-04-03
1003Russia2025-04-09
1004France2025-04-01
1005Argentina2025-04-26
1006Spain2025-03-31
1007Russia2025-04-24
1008Italy2025-04-07
1009United Kingdom2025-04-14
1010Brazil2025-04-25
1011Canada2025-04-27
1012Germany2025-04-03
1013Brazil2025-04-27
1014Canada2025-04-14
1015Argentina2025-04-22
1016Spain2025-04-13
1017Italy2025-04-20
1018Canada2025-04-18
1019India2025-04-17
1020Australia2025-04-26
1021Italy2025-04-14
1022India2025-04-08
1023Brazil2025-04-17
1024United Kingdom2025-04-20
1025United Kingdom2025-04-22
1026Australia2025-04-29
1027Argentina2025-04-01
1028Germany2025-04-07
1029Spain2025-04-10
1030France2025-04-17
1031Australia2025-04-13
1032India2025-04-19
1033Japan2025-03-31
1034United Kingdom2025-04-28
1035Germany2025-04-06
1036Australia2025-04-25
1037France2025-04-22
1038Italy2025-04-13
1039Argentina2025-04-18
1040France2025-04-22
1041United Kingdom2025-04-27
1042Japan2025-04-16
1043Japan2025-04-24
1044Spain2025-04-16
1045France2025-04-17
1046Japan2025-04-20
1047Australia2025-04-03
1048Canada2025-04-06
1049Australia2025-04-12

On-Demand Data

NameIdCountryDate
Misaki P Malet1000Australia2025-04-08
Isabel R Glick1001Australia2025-04-01
Antonio C Maclead1002Australia2025-04-27
Isabel V Stockham1003Germany2025-04-09
Mayumi G Bolognia1004India2025-04-24
Alejandro X Morasca1005Russia2025-04-01
Ivar B Doe1006Japan2025-04-25
Costa H Slusarski1007Argentina2025-04-28
Silvio U Morasca1008Australia2025-04-23
Johnson G Paprocki1009India2025-04-25
Aika K Nestle1010Canada2025-04-19
Aika D Wieser1011Canada2025-04-02
Smith C Albares1012Argentina2025-04-15
Smith Y Flosi1013Argentina2025-04-08
Ricardo V Flosi1014Japan2025-04-17
Arvin O Rim1015Brazil2025-04-10
Jeanfrancois Q Saylors1016Russia2025-04-06
Mayumi Y Oldroyd1017Germany2025-04-11
Maria N Slusarski1018Brazil2025-04-03
Nicolas I Ostrosky1019Japan2025-04-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Chavez R PaprockiJapanIoni Bowcher NEW
Greenwood V GauchoSpainAmy Elsner PROPOSAL
James B WhobreyGermanyXuxue Feng QUALIFIED
Ricardo B StockhamItalyIvan Magalhaes PROPOSAL
James X RulapaughGermanyIvan Magalhaes RENEWAL
Rodrigues B PoquetteArgentinaIoni Bowcher NEW
Rodrigues S WhobreyBrazilElwin Sharvill RENEWAL
Munro I NestleSpainBernardo Dominic NEW
Mayumi R DoeJapanXuxue Feng NEGOTIATION
Octavia F InouyeGermanyAmy Elsner RENEWAL
Emily K SchemmerFranceOnyama Limba NEW
Costa H FollerIndiaBernardo Dominic UNQUALIFIED
Maria M FerenczGermanyOnyama Limba PROPOSAL
Munro R WaycottGermanyBernardo Dominic NEGOTIATION
Octavia S PoquetteBrazilStephen Shaw QUALIFIED
Misaki K OstroskyArgentinaAmy Elsner PROPOSAL
Darci L RoysterArgentinaOnyama Limba UNQUALIFIED
Jennifer P SergiFranceIvan Magalhaes QUALIFIED
Aruna Z ButtGermanyStephen Shaw NEGOTIATION
Julie U FlosiIndiaAnna Fali NEGOTIATION
Munro A MacleadJapanXuxue Feng UNQUALIFIED
Maisha X ShinkoBrazilAsiya Javayant RENEWAL
Misaki K CaldareraArgentinaXuxue Feng QUALIFIED
Aruna C GlickItalyAnna Fali QUALIFIED
Maria G MaletSpainBernardo Dominic UNQUALIFIED
Ashley W CaldareraJapanAnna Fali RENEWAL
Ricardo J PaprockiCanadaAmy Elsner RENEWAL
David Z OldroydJapanAnna Fali NEW
Emily F TollnerSpainElwin Sharvill NEW
Leja J IturbideBrazilXuxue Feng PROPOSAL
Adams Z VocelkaGermanyOnyama Limba NEGOTIATION
Johnson N NickaFranceAsiya Javayant RENEWAL
Darci Z StockhamFranceOnyama Limba NEGOTIATION
Jeanfrancois H GarufiGermanyBernardo Dominic RENEWAL
Silvio U IturbideFranceBernardo Dominic RENEWAL
Rodrigues L MaletArgentinaElwin Sharvill UNQUALIFIED
Ivar F BriddickUnited KingdomStephen Shaw RENEWAL
Aruna S IturbideBrazilAsiya Javayant NEGOTIATION
Adams P ButtItalyXuxue Feng UNQUALIFIED
Tony P NickaRussiaXuxue Feng 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>