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
Clifford D WieserItalyAnna Fali PROPOSAL
Johnson X RutaUnited KingdomIvan Magalhaes PROPOSAL
Kadeem S MaletBrazilAnna Fali PROPOSAL
Deepesh M FerenczCanadaBernardo Dominic UNQUALIFIED
Aika V MorascaGermanyElwin Sharvill PROPOSAL
James Y CaudySpainIoni Bowcher PROPOSAL
Jefferson U WaycottSpainAnna Fali PROPOSAL
Aruna U OldroydBrazilAmy Elsner NEGOTIATION
Alejandro M MarrierIndiaStephen Shaw NEW
Kaitlin R RimJapanBernardo Dominic RENEWAL
Murillo R GauchoCanadaIoni Bowcher QUALIFIED
Isabel C CaudyItalyBernardo Dominic PROPOSAL
Wickens I CaudySpainElwin Sharvill QUALIFIED
Greenwood S StensethSpainIoni Bowcher PROPOSAL
Rodrigues E DoeIndiaAsiya Javayant QUALIFIED
Smith H WaycottFranceAmy Elsner RENEWAL
Munro P CaldareraFranceIoni Bowcher NEW
Maisha X FollerJapanOnyama Limba QUALIFIED
Juan A StockhamItalyBernardo Dominic QUALIFIED
Ivar I RutaCanadaAnna Fali RENEWAL
Emily I BologniaRussiaAsiya Javayant NEGOTIATION
Greenwood A GauchoRussiaAnna Fali NEGOTIATION
Clifford B BriddickGermanyIoni Bowcher NEW
Misaki S FigeroaItalyOnyama Limba QUALIFIED
Isabel J MacleadRussiaIoni Bowcher QUALIFIED
Antonio L MarrierItalyStephen Shaw NEGOTIATION
Cody T PoquetteAustraliaIvan Magalhaes PROPOSAL
Jeanfrancois V VenereRussiaStephen Shaw NEGOTIATION
Octavia J MaletSpainIoni Bowcher UNQUALIFIED
Munro W WhobreySpainAsiya Javayant QUALIFIED
Jennifer H ButtBrazilElwin Sharvill QUALIFIED
Kadeem N RoysterArgentinaIvan Magalhaes NEGOTIATION
Aditya G PerinArgentinaElwin Sharvill UNQUALIFIED
Munro H MacleadBrazilIvan Magalhaes RENEWAL
Jeanfrancois Q NestleRussiaIoni Bowcher NEGOTIATION
Jeanfrancois D VenereCanadaOnyama Limba QUALIFIED
Ashley W MaletSpainAnna Fali PROPOSAL
Greenwood R CaudyJapanElwin Sharvill PROPOSAL
Ivar A FollerFranceOnyama Limba RENEWAL
Leon L ChuiRussiaXuxue Feng NEGOTIATION
Antonio T NickaIndiaStephen Shaw QUALIFIED
Aditya X FollerIndiaIoni Bowcher RENEWAL
Morrow N SlusarskiCanadaAsiya Javayant NEGOTIATION
Munro X GlickCanadaAnna Fali PROPOSAL
Kaitlin N FlosiRussiaBernardo Dominic QUALIFIED
Stacey I NestleItalyAnna Fali NEW
Antonio B RoysterItalyIvan Magalhaes QUALIFIED
Leon C DoeFranceIvan Magalhaes NEGOTIATION
Jefferson Q IturbideItalyIvan Magalhaes PROPOSAL
Octavia K CaldareraCanadaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois R WhobreyFranceAsiya Javayant NEGOTIATION
Stacey F FerenczItalyAnna Fali UNQUALIFIED
Mayumi T DoeFranceIoni Bowcher RENEWAL
Rodrigues A GauchoJapanAnna Fali NEW
Claire I RimIndiaAmy Elsner NEW
Francesco Y InouyeAustraliaAsiya Javayant QUALIFIED
Greenwood L BowleyBrazilAnna Fali UNQUALIFIED
Smith X InouyeAustraliaXuxue Feng QUALIFIED
Misaki A FigeroaAustraliaStephen Shaw PROPOSAL
Mayumi Y FollerAustraliaBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood G WaycottRussia2024-06-09Dorl, James J Esq NEW52Ioni Bowcher
1001Munro X RimSpain2024-06-09Chanay, Jeffrey A Esq QUALIFIED4Ioni Bowcher
1002Leon U GlickGermany2024-06-01Dorl, James J Esq PROPOSAL63Stephen Shaw
1003Francesco D VocelkaGermany2024-06-21Chanay, Jeffrey A Esq NEW82Anna Fali
1004Jennifer K TollnerRussia2024-05-31Chanay, Jeffrey A Esq NEW70Amy Elsner
1005Chavez F KuskoBrazil2024-06-16Printing Dimensions NEW67Ioni Bowcher
1006Clifford A BowleyRussia2024-06-15King, Christopher A Esq RENEWAL60Bernardo Dominic
1007Salvatore N NickaIndia2024-06-19Feltz Printing Service PROPOSAL85Stephen Shaw
1008Jefferson X SlusarskiFrance2024-06-16King, Christopher A Esq UNQUALIFIED82Ivan Magalhaes
1009Aditya Z RoysterJapan2024-06-19Feltz Printing Service RENEWAL53Ioni Bowcher
1010Emily I SchemmerFrance2024-06-17Feiner Bros RENEWAL30Onyama Limba
1011Jefferson K CampainBrazil2024-06-02Dorl, James J Esq NEGOTIATION22Stephen Shaw
1012Wickens H SchemmerRussia2024-06-05Truhlar And Truhlar Attys RENEWAL38Asiya Javayant
1013Misaki S SaylorsSpain2024-05-29Truhlar And Truhlar Attys UNQUALIFIED89Bernardo Dominic
1014Julie S KolmetzCanada2024-06-01Chapman, Ross E Esq NEW84Onyama Limba
1015Tony B MaletRussia2024-06-04Buckley Miller Wright QUALIFIED49Onyama Limba
1016Cody U OldroydRussia2024-06-03Feltz Printing Service QUALIFIED54Elwin Sharvill
1017Leja V OldroydAustralia2024-05-24Printing Dimensions RENEWAL28Onyama Limba
1018Ricardo G MaletFrance2024-06-06Feiner Bros NEGOTIATION68Ioni Bowcher
1019Jeanfrancois S TollnerAustralia2024-06-12Feiner Bros PROPOSAL15Ivan Magalhaes
1020Juan E AmigonIndia2024-06-11Chemel, James L Cpa QUALIFIED44Amy Elsner
1021James A SchemmerUnited Kingdom2024-06-20Rousseaux, Michael Esq RENEWAL89Stephen Shaw
1022Octavia N VenereGermany2024-06-16Benton, John B Jr QUALIFIED77Stephen Shaw
1023Jeanfrancois D RoysterAustralia2024-05-24Commercial Press NEW31Anna Fali
1024Mayumi L RulapaughIndia2024-06-19Benton, John B Jr NEW42Asiya Javayant
1025Mayumi D DarakjyRussia2024-06-06Commercial Press RENEWAL1Onyama Limba
1026Adams H RimSpain2024-06-02Truhlar And Truhlar Attys PROPOSAL25Xuxue Feng
1027Leja A GillianItaly2024-05-26Printing Dimensions PROPOSAL55Stephen Shaw
1028Octavia G WaycottRussia2024-05-27Chemel, James L Cpa NEGOTIATION89Elwin Sharvill
1029Adams P VenereArgentina2024-06-05Morlong Associates UNQUALIFIED38Onyama Limba
1030Isabel P GillianFrance2024-05-28Commercial Press UNQUALIFIED25Ioni Bowcher
1031David U FigeroaRussia2024-06-12Feltz Printing Service NEW31Anna Fali
1032James F BologniaSpain2024-05-24Chemel, James L Cpa NEGOTIATION15Elwin Sharvill
1033Jefferson J DilliardSpain2024-05-31Rousseaux, Michael Esq NEGOTIATION19Elwin Sharvill
1034Darci S AlbaresArgentina2024-06-22Commercial Press NEGOTIATION26Amy Elsner
1035Salvatore T DilliardItaly2024-05-25Printing Dimensions NEW11Stephen Shaw
1036Jefferson W PaprockiJapan2024-06-12Feiner Bros QUALIFIED72Ioni Bowcher
1037Sinclair Q BowleyItaly2024-05-31Chemel, James L Cpa UNQUALIFIED70Asiya Javayant
1038Ashley W GlickAustralia2024-06-05Feltz Printing Service NEW54Bernardo Dominic
1039Isabel B ButtItaly2024-05-25Chemel, James L Cpa RENEWAL80Ivan Magalhaes
1040Emily F KuskoJapan2024-06-18Buckley Miller Wright NEGOTIATION60Bernardo Dominic
1041Silvio V FollerIndia2024-06-03Morlong Associates NEGOTIATION90Ioni Bowcher
1042Stacey K StensethUnited Kingdom2024-05-31King, Christopher A Esq NEGOTIATION52Onyama Limba
1043Rodrigues J FerenczCanada2024-06-17Buckley Miller Wright QUALIFIED76Bernardo Dominic
1044Cody L MarrierUnited Kingdom2024-05-29Chapman, Ross E Esq NEW51Anna Fali
1045Nicolas J KuskoAustralia2024-06-11Chapman, Ross E Esq UNQUALIFIED53Anna Fali
1046Costa K WieserUnited Kingdom2024-05-28Rousseaux, Michael Esq RENEWAL83Ioni Bowcher
1047Mayumi T PaprockiFrance2024-06-19Rousseaux, Michael Esq PROPOSAL97Elwin Sharvill
1048Johnson D MacleadSpain2024-06-15Rousseaux, Michael Esq QUALIFIED52Bernardo Dominic
1049Adams P StensethJapan2024-05-26Benton, John B Jr NEGOTIATION59Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Adams E FollerCanadaAnna Fali PROPOSAL
Kaitlin M PoquetteArgentinaIvan Magalhaes RENEWAL
Greenwood H CaldareraArgentinaOnyama Limba UNQUALIFIED
Claire R RulapaughIndiaStephen Shaw RENEWAL
Mayumi W WhobreySpainAsiya Javayant NEW
Salvatore V MaletCanadaAsiya Javayant PROPOSAL
Antonio E MorascaJapanBernardo Dominic NEGOTIATION
Deepesh B DilliardJapanAmy Elsner RENEWAL
Emily N GillianFranceStephen Shaw RENEWAL
Leja W KolmetzUnited KingdomElwin Sharvill UNQUALIFIED
Maria D NestleUnited KingdomAnna Fali RENEWAL
Munro Y DilliardSpainOnyama Limba NEGOTIATION
Maisha B PoquetteArgentinaBernardo Dominic QUALIFIED
Mujtaba R BowleyIndiaBernardo Dominic RENEWAL
James U VocelkaRussiaBernardo Dominic NEW
Wickens P SaylorsItalyStephen Shaw NEGOTIATION
Claire C WaycottAustraliaAnna Fali PROPOSAL
Ashley G FollerGermanyOnyama Limba UNQUALIFIED
Misaki J GlickAustraliaElwin Sharvill PROPOSAL
Greenwood U OstroskyJapanAmy Elsner PROPOSAL
Cody Z SchemmerRussiaStephen Shaw QUALIFIED
Deepesh L KuskoUnited KingdomBernardo Dominic RENEWAL
Nicolas N TollnerItalyAsiya Javayant NEGOTIATION
Silvio W RimSpainOnyama Limba PROPOSAL
Juan K BowleySpainIvan Magalhaes PROPOSAL
Maria U NestleGermanyOnyama Limba RENEWAL
Arvin A AmigonSpainStephen Shaw RENEWAL
Munro T DoeAustraliaElwin Sharvill NEW
Francesco G VenereUnited KingdomElwin Sharvill NEGOTIATION
Maria R NickaCanadaBernardo Dominic UNQUALIFIED
Smith V RulapaughFranceStephen Shaw RENEWAL
Johnson E TollnerGermanyAmy Elsner QUALIFIED
Sinclair B PoquetteFranceElwin Sharvill PROPOSAL
Aika D DarakjyGermanyBernardo Dominic NEGOTIATION
David Q OldroydFranceBernardo Dominic UNQUALIFIED
Ashley S PaprockiCanadaElwin Sharvill NEGOTIATION
Juan S PaprockiSpainOnyama Limba RENEWAL
Izzy G VenereArgentinaOnyama Limba UNQUALIFIED
Morrow Y MacleadIndiaOnyama Limba NEW
David G FollerJapanStephen Shaw UNQUALIFIED
Salvatore I BowleyUnited KingdomBernardo Dominic QUALIFIED
Ricardo L VocelkaRussiaIvan Magalhaes UNQUALIFIED
Isabel J MorascaCanadaOnyama Limba UNQUALIFIED
Clifford K CaudySpainBernardo Dominic PROPOSAL
Jones E RulapaughArgentinaAnna Fali NEGOTIATION
Aditya G FerenczIndiaAmy Elsner UNQUALIFIED
Leon M ChuiSpainStephen Shaw NEGOTIATION
Izzy B SchemmerBrazilIvan Magalhaes PROPOSAL
Costa R ButtArgentinaAsiya Javayant QUALIFIED
Claire B CampainUnited KingdomAnna Fali NEGOTIATION
Frozen Columns
Name
Aruna M Oldroyd
Kaitlin V Slusarski
Arvin N Caldarera
Costa X Malet
Sinclair Y Briddick
Arvin R Venere
Chavez Q Royster
Stacey E Schemmer
Cody G Iturbide
Leon R Rulapaugh
Silvio C Rim
Leon K Darakjy
Emily G Oldroyd
Maria I Whobrey
Maisha U Stockham
Aruna Y Wieser
Stacey S Whobrey
Murillo F Slusarski
Mayumi N Rim
Kaitlin Z Glick
Leon A Dilliard
Julie Q Malet
Leja Q Figeroa
Ashley J Stockham
Maria B Garufi
Misaki X Slusarski
Darci F Flosi
Ricardo A Rulapaugh
Deepesh Q Tollner
Murillo T Ferencz
Smith A Glick
Julie B Royster
Aika W Kusko
Ivar A Maclead
Ivar R Vocelka
Maria P Kolmetz
Munro C Bolognia
Munro Q Oldroyd
Maria S Saylors
Wickens G Caldarera
Darci F Caudy
Antonio F Kusko
Claire M Iturbide
Darci I Marrier
Sinclair M Malet
Francesco I Stenseth
Rodrigues D Ruta
Smith Y Amigon
Maria D Darakjy
Salvatore H Flosi
IdCountryDate
1000United Kingdom2024-06-06
1001Japan2024-06-05
1002Spain2024-06-03
1003India2024-06-06
1004Italy2024-06-07
1005Australia2024-05-30
1006Japan2024-06-21
1007Argentina2024-05-24
1008Canada2024-06-05
1009Germany2024-05-26
1010France2024-06-16
1011Australia2024-06-18
1012Japan2024-06-05
1013Canada2024-06-16
1014Japan2024-06-15
1015Australia2024-06-12
1016Germany2024-06-16
1017Spain2024-06-13
1018Italy2024-06-07
1019United Kingdom2024-05-25
1020Italy2024-05-27
1021Australia2024-05-24
1022Japan2024-06-09
1023Russia2024-06-05
1024Argentina2024-05-31
1025United Kingdom2024-06-11
1026Spain2024-05-28
1027Germany2024-06-09
1028United Kingdom2024-06-10
1029Brazil2024-06-04
1030Russia2024-06-01
1031Germany2024-06-15
1032Italy2024-06-06
1033Italy2024-05-27
1034Spain2024-06-14
1035Canada2024-06-13
1036Russia2024-06-15
1037Canada2024-06-14
1038Argentina2024-05-31
1039India2024-06-20
1040Russia2024-05-29
1041Argentina2024-06-14
1042India2024-06-09
1043Russia2024-06-16
1044Argentina2024-05-26
1045India2024-05-27
1046Russia2024-06-16
1047Argentina2024-06-08
1048India2024-06-12
1049Russia2024-06-04

On-Demand Data

NameIdCountryDate
Arvin A Nicka1000United Kingdom2024-06-18
Ashley B Campain1001Canada2024-06-11
Ivar X Venere1002Brazil2024-05-30
Johnson R Perin1003United Kingdom2024-05-30
Salvatore O Albares1004Germany2024-05-25
Ivar Z Glick1005Italy2024-05-31
Misaki M Amigon1006Russia2024-06-19
Kadeem D Stockham1007India2024-06-11
Francesco G Flosi1008Italy2024-06-02
Izzy U Perin1009Canada2024-05-27
Isabel U Saylors1010France2024-05-24
Aika D Poquette1011Japan2024-06-02
Aika O Caudy1012Japan2024-06-18
Ricardo M Butt1013Italy2024-06-16
Rodrigues I Sergi1014Canada2024-05-29
Adams W Rulapaugh1015Japan2024-05-24
Alejandro M Caldarera1016Australia2024-05-31
Mujtaba G Figeroa1017Australia2024-06-07
Aika N Albares1018Germany2024-05-29
Ivar E Gillian1019Italy2024-06-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson D MorascaGermanyXuxue Feng PROPOSAL
Arvin Z PerinBrazilIoni Bowcher UNQUALIFIED
Wickens I CampainAustraliaIoni Bowcher UNQUALIFIED
Julie W CampainFranceElwin Sharvill NEW
Francesco K SchemmerFranceStephen Shaw PROPOSAL
David Z BriddickUnited KingdomXuxue Feng RENEWAL
Salvatore F InouyeIndiaIoni Bowcher QUALIFIED
Salvatore O BowleySpainIvan Magalhaes PROPOSAL
Deepesh X GlickUnited KingdomIoni Bowcher NEGOTIATION
Cody M DilliardCanadaIoni Bowcher NEGOTIATION
Stacey U CaudyBrazilStephen Shaw RENEWAL
Clifford H VenereGermanyElwin Sharvill UNQUALIFIED
Maria R CaudyGermanyAsiya Javayant NEW
James W FerenczIndiaXuxue Feng RENEWAL
Murillo S ShinkoIndiaElwin Sharvill NEW
Silvio M RoysterArgentinaAsiya Javayant QUALIFIED
Jones J MorascaCanadaElwin Sharvill RENEWAL
Arvin Q MarrierArgentinaAmy Elsner RENEWAL
Deepesh R AlbaresRussiaAsiya Javayant RENEWAL
Leja L RimJapanAsiya Javayant UNQUALIFIED
Kaitlin X KuskoSpainXuxue Feng QUALIFIED
Francesco P IturbideBrazilAsiya Javayant RENEWAL
Leja O FigeroaUnited KingdomStephen Shaw PROPOSAL
Jefferson T CaldareraSpainIvan Magalhaes RENEWAL
Silvio R AlbaresAustraliaBernardo Dominic PROPOSAL
Chavez T StockhamCanadaElwin Sharvill QUALIFIED
Ashley Q StockhamJapanAnna Fali PROPOSAL
Darci O DoeGermanyBernardo Dominic PROPOSAL
Kadeem B MaletBrazilIoni Bowcher NEGOTIATION
Munro A RulapaughAustraliaIvan Magalhaes RENEWAL
Murillo L AmigonItalyElwin Sharvill NEW
Jefferson V PoquetteBrazilOnyama Limba NEGOTIATION
Silvio Y ShinkoIndiaXuxue Feng NEGOTIATION
Adams C CaudyUnited KingdomIoni Bowcher QUALIFIED
Silvio U FlosiBrazilAnna Fali RENEWAL
Izzy P DilliardArgentinaXuxue Feng RENEWAL
Deepesh I WaycottRussiaXuxue Feng UNQUALIFIED
Octavia C FollerIndiaAmy Elsner NEGOTIATION
Faith U SchemmerBrazilXuxue Feng PROPOSAL
Claire D GillianFranceIvan Magalhaes 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>