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
Aditya N PerinIndiaElwin Sharvill PROPOSAL
Murillo W PaprockiIndiaAmy Elsner NEGOTIATION
Leja N FigeroaItalyIvan Magalhaes RENEWAL
Francesco P WaycottIndiaIvan Magalhaes NEGOTIATION
Julie F FerenczIndiaAnna Fali QUALIFIED
Chavez L WaycottBrazilStephen Shaw RENEWAL
Izzy R PaprockiCanadaIoni Bowcher RENEWAL
Stacey P MarrierCanadaIoni Bowcher NEGOTIATION
Silvio D CaldareraArgentinaAmy Elsner QUALIFIED
Deepesh S RoysterFranceAnna Fali PROPOSAL
Smith C OstroskyGermanyIvan Magalhaes PROPOSAL
Juan Q CampainJapanIoni Bowcher UNQUALIFIED
Maisha W TollnerItalyBernardo Dominic PROPOSAL
Leja K ShinkoBrazilOnyama Limba RENEWAL
Maria U VocelkaRussiaBernardo Dominic PROPOSAL
Wickens R WieserRussiaIvan Magalhaes RENEWAL
Alejandro Y NestleCanadaIvan Magalhaes NEGOTIATION
Nicolas G DoeItalyXuxue Feng NEW
Ashley D WieserIndiaOnyama Limba NEGOTIATION
David E VenereJapanStephen Shaw NEW
Ashley W PerinIndiaOnyama Limba UNQUALIFIED
Emily A DilliardUnited KingdomAnna Fali RENEWAL
Morrow E InouyeCanadaAmy Elsner NEW
Juan C NickaIndiaStephen Shaw RENEWAL
Darci F MacleadGermanyElwin Sharvill QUALIFIED
Emily I OldroydIndiaBernardo Dominic UNQUALIFIED
Claire U PerinRussiaAnna Fali NEGOTIATION
Jennifer R NickaSpainAnna Fali QUALIFIED
Murillo D PaprockiAustraliaIoni Bowcher UNQUALIFIED
Izzy B KolmetzBrazilElwin Sharvill RENEWAL
Jones E WieserFranceAnna Fali UNQUALIFIED
Ivar Y FerenczBrazilIvan Magalhaes QUALIFIED
Jennifer Q BowleyRussiaOnyama Limba UNQUALIFIED
Kadeem F BriddickSpainStephen Shaw NEGOTIATION
Alejandro G FerenczArgentinaIvan Magalhaes UNQUALIFIED
Salvatore M DoeRussiaElwin Sharvill RENEWAL
Juan N WaycottFranceOnyama Limba NEW
Jefferson V MarrierArgentinaStephen Shaw QUALIFIED
Aditya Z DarakjyCanadaAmy Elsner RENEWAL
Aika X KolmetzItalyOnyama Limba QUALIFIED
Stacey B NickaFranceAsiya Javayant PROPOSAL
Deepesh G WieserBrazilIvan Magalhaes RENEWAL
Kadeem S VocelkaJapanAnna Fali RENEWAL
Greenwood L PaprockiItalyAmy Elsner RENEWAL
Sinclair G CampainGermanyAsiya Javayant PROPOSAL
Greenwood R AlbaresIndiaIvan Magalhaes QUALIFIED
Leon L VocelkaArgentinaAsiya Javayant PROPOSAL
Francesco N BowleySpainIvan Magalhaes NEGOTIATION
Maisha O VenereIndiaIvan Magalhaes PROPOSAL
Maria Y FerenczItalyAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Johnson R CampainFranceXuxue Feng QUALIFIED
Jones G ShinkoArgentinaAnna Fali UNQUALIFIED
Jefferson H SchemmerAustraliaIoni Bowcher RENEWAL
Mayumi A ChuiRussiaOnyama Limba PROPOSAL
Chavez J KolmetzFranceXuxue Feng RENEWAL
Antonio I DilliardItalyStephen Shaw RENEWAL
Wickens Z DarakjyIndiaIvan Magalhaes PROPOSAL
Octavia X BriddickIndiaAsiya Javayant QUALIFIED
Leon J MacleadGermanyStephen Shaw RENEWAL
Arvin V SlusarskiRussiaAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio W PerinJapan2024-11-09Feiner Bros NEGOTIATION90Asiya Javayant
1001Antonio X MarrierFrance2024-11-03Chemel, James L Cpa QUALIFIED75Onyama Limba
1002Julie C NickaBrazil2024-10-30Truhlar And Truhlar Attys QUALIFIED4Ioni Bowcher
1003Jones P GauchoBrazil2024-11-04Feltz Printing Service NEGOTIATION87Elwin Sharvill
1004Kaitlin C MacleadJapan2024-11-06Chemel, James L Cpa PROPOSAL27Stephen Shaw
1005Adams W TollnerFrance2024-11-23Commercial Press QUALIFIED81Ivan Magalhaes
1006Aruna G FigeroaArgentina2024-11-23Truhlar And Truhlar Attys NEW25Ivan Magalhaes
1007Jeanfrancois W SergiGermany2024-11-01Dorl, James J Esq QUALIFIED18Ioni Bowcher
1008Deepesh U RimItaly2024-10-30Printing Dimensions NEW42Onyama Limba
1009Leja Y RutaItaly2024-10-26Chemel, James L Cpa QUALIFIED40Anna Fali
1010Juan G OldroydIndia2024-10-26Truhlar And Truhlar Attys NEW17Ivan Magalhaes
1011Antonio S RoysterCanada2024-11-17Rangoni Of Florence NEGOTIATION73Asiya Javayant
1012Sinclair P ButtUnited Kingdom2024-11-11Dorl, James J Esq NEGOTIATION65Onyama Limba
1013Antonio G RoysterCanada2024-11-21Feiner Bros NEGOTIATION60Anna Fali
1014Aruna V GlickGermany2024-11-07Chanay, Jeffrey A Esq NEGOTIATION44Stephen Shaw
1015Antonio H FollerFrance2024-11-20Chemel, James L Cpa NEGOTIATION10Stephen Shaw
1016Kaitlin E SlusarskiGermany2024-11-20Chapman, Ross E Esq PROPOSAL42Bernardo Dominic
1017Clifford N FigeroaCanada2024-11-21Benton, John B Jr QUALIFIED63Ivan Magalhaes
1018Maria C MorascaBrazil2024-10-28Buckley Miller Wright NEGOTIATION40Xuxue Feng
1019Kadeem P WaycottRussia2024-11-20Rangoni Of Florence RENEWAL23Amy Elsner
1020Francesco P OldroydBrazil2024-11-04Chanay, Jeffrey A Esq NEW8Amy Elsner
1021Juan M TollnerItaly2024-11-01Dorl, James J Esq QUALIFIED76Bernardo Dominic
1022Maisha Z IturbideArgentina2024-11-17Rousseaux, Michael Esq PROPOSAL40Stephen Shaw
1023Silvio W StockhamIndia2024-11-19Feltz Printing Service RENEWAL84Amy Elsner
1024David O IturbideItaly2024-11-03Feltz Printing Service PROPOSAL83Ivan Magalhaes
1025Octavia C TollnerSpain2024-11-21Feltz Printing Service UNQUALIFIED36Ivan Magalhaes
1026Jeanfrancois K BologniaAustralia2024-10-28Chemel, James L Cpa NEGOTIATION12Stephen Shaw
1027Octavia J CaudySpain2024-11-08Benton, John B Jr QUALIFIED83Stephen Shaw
1028James T MacleadCanada2024-10-29Feltz Printing Service QUALIFIED39Bernardo Dominic
1029Silvio H RoysterArgentina2024-10-25Dorl, James J Esq NEW98Ioni Bowcher
1030Leon H GauchoArgentina2024-11-10Rangoni Of Florence PROPOSAL27Anna Fali
1031Ricardo S AmigonSpain2024-11-08Chemel, James L Cpa PROPOSAL85Ioni Bowcher
1032Aika T BowleyBrazil2024-11-03Benton, John B Jr NEGOTIATION97Elwin Sharvill
1033Wickens C CaldareraGermany2024-10-28Chemel, James L Cpa RENEWAL11Onyama Limba
1034Antonio B MaletAustralia2024-11-08Commercial Press QUALIFIED81Elwin Sharvill
1035Munro T MacleadItaly2024-11-06Feltz Printing Service NEGOTIATION37Bernardo Dominic
1036Emily F FollerAustralia2024-11-12Chemel, James L Cpa PROPOSAL95Asiya Javayant
1037Morrow S ButtGermany2024-11-11Truhlar And Truhlar Attys QUALIFIED37Amy Elsner
1038Francesco H CaldareraCanada2024-11-19Chapman, Ross E Esq QUALIFIED20Elwin Sharvill
1039Nicolas X SlusarskiRussia2024-11-03Chanay, Jeffrey A Esq PROPOSAL30Ioni Bowcher
1040Aditya I MaletFrance2024-11-23King, Christopher A Esq UNQUALIFIED17Amy Elsner
1041David H MaletAustralia2024-11-08King, Christopher A Esq UNQUALIFIED1Elwin Sharvill
1042Adams C WaycottAustralia2024-11-06Feltz Printing Service UNQUALIFIED82Stephen Shaw
1043Kadeem B RulapaughBrazil2024-10-29Dorl, James J Esq QUALIFIED47Onyama Limba
1044Aditya S MaletJapan2024-10-29Buckley Miller Wright QUALIFIED22Xuxue Feng
1045Johnson J BowleyFrance2024-11-04Commercial Press PROPOSAL23Anna Fali
1046Maria G BowleyRussia2024-11-13Benton, John B Jr NEW46Ivan Magalhaes
1047Johnson X KolmetzArgentina2024-11-10Chanay, Jeffrey A Esq RENEWAL24Asiya Javayant
1048Jefferson M BologniaFrance2024-11-05Buckley Miller Wright NEGOTIATION34Xuxue Feng
1049Isabel C FigeroaJapan2024-10-30Chemel, James L Cpa RENEWAL91Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Ashley A SlusarskiCanadaXuxue Feng RENEWAL
Alejandro A ShinkoFranceXuxue Feng NEW
Morrow O WieserUnited KingdomIoni Bowcher RENEWAL
James Q AlbaresUnited KingdomAsiya Javayant RENEWAL
Misaki U AlbaresBrazilXuxue Feng NEW
Wickens F SlusarskiGermanyAsiya Javayant NEGOTIATION
Jeanfrancois D FigeroaItalyXuxue Feng QUALIFIED
Tony X ButtCanadaXuxue Feng QUALIFIED
James M CaldareraFranceIoni Bowcher UNQUALIFIED
David J SergiAustraliaOnyama Limba PROPOSAL
Wickens S FollerJapanBernardo Dominic NEGOTIATION
Clifford X NestleSpainAsiya Javayant RENEWAL
James J PaprockiIndiaBernardo Dominic QUALIFIED
Murillo P TollnerCanadaIvan Magalhaes NEW
Ricardo J BriddickSpainXuxue Feng PROPOSAL
Mayumi O FollerJapanOnyama Limba NEGOTIATION
Smith W CaudyCanadaAsiya Javayant RENEWAL
Cody I ShinkoCanadaAnna Fali UNQUALIFIED
Faith Z GlickAustraliaIoni Bowcher RENEWAL
Stacey T BriddickUnited KingdomIoni Bowcher NEW
Jennifer V SergiIndiaIoni Bowcher NEW
Mayumi B RutaBrazilElwin Sharvill RENEWAL
Smith R SchemmerJapanElwin Sharvill NEW
Smith Q KuskoUnited KingdomStephen Shaw QUALIFIED
Jeanfrancois S AlbaresCanadaOnyama Limba NEGOTIATION
Salvatore B CaudyItalyIvan Magalhaes NEW
Claire O SaylorsIndiaOnyama Limba QUALIFIED
Clifford V IturbideUnited KingdomOnyama Limba QUALIFIED
Costa Z RoysterJapanAmy Elsner QUALIFIED
Faith D RoysterSpainAmy Elsner UNQUALIFIED
Johnson V GillianGermanyElwin Sharvill UNQUALIFIED
Murillo D RimCanadaAsiya Javayant NEW
Kaitlin F StockhamSpainStephen Shaw RENEWAL
Jefferson O SchemmerItalyIoni Bowcher RENEWAL
Adams F ChuiFranceBernardo Dominic RENEWAL
Leon P KuskoGermanyAnna Fali PROPOSAL
Silvio P FollerCanadaStephen Shaw RENEWAL
David B MaletBrazilStephen Shaw PROPOSAL
Leja F SergiJapanIvan Magalhaes QUALIFIED
Smith X MaletCanadaAnna Fali NEGOTIATION
Leon J SchemmerGermanyElwin Sharvill RENEWAL
Costa I SchemmerBrazilElwin Sharvill RENEWAL
Julie F CaldareraJapanOnyama Limba NEW
Maria W KuskoSpainAmy Elsner PROPOSAL
Deepesh Y IturbideUnited KingdomAnna Fali RENEWAL
Jones R RoysterAustraliaBernardo Dominic QUALIFIED
Smith H RulapaughJapanIoni Bowcher PROPOSAL
Sinclair C MorascaGermanyBernardo Dominic RENEWAL
Rodrigues Y OstroskyItalyElwin Sharvill QUALIFIED
Aika L DoeBrazilAsiya Javayant NEGOTIATION
Frozen Columns
Name
Darci M Kusko
Ivar M Vocelka
Misaki F Venere
Johnson N Waycott
Chavez D Ostrosky
Murillo R Shinko
Ashley T Iturbide
Izzy T Caudy
Emily D Caldarera
Clifford S Shinko
Rodrigues L Malet
Arvin R Sergi
Salvatore V Sergi
Murillo P Marrier
Deepesh P Gaucho
Alejandro K Ferencz
Emily Q Inouye
Murillo M Stockham
Ashley W Rim
Faith S Venere
Leon E Perin
Rodrigues P Tollner
Salvatore Q Rulapaugh
Cody I Chui
James P Flosi
Greenwood L Rim
Aika S Glick
Salvatore E Briddick
Izzy Z Oldroyd
Rodrigues W Sergi
Salvatore Q Stockham
Munro Y Whobrey
Aika Y Inouye
Kadeem G Stenseth
Juan Q Bowley
Wickens O Rulapaugh
Chavez V Vocelka
Maria H Marrier
Rodrigues H Briddick
Salvatore Q Ferencz
Adams J Poquette
Costa B Saylors
Claire M Gaucho
Munro D Royster
Aditya F Amigon
Leja F Campain
Salvatore I Ruta
Antonio M Rulapaugh
Jefferson T Nicka
Johnson O Inouye
IdCountryDate
1000Spain2024-11-04
1001France2024-11-20
1002Canada2024-10-31
1003France2024-11-23
1004Japan2024-10-30
1005Russia2024-10-28
1006Canada2024-11-04
1007Australia2024-11-21
1008India2024-11-22
1009Italy2024-11-12
1010Germany2024-11-12
1011United Kingdom2024-11-19
1012Australia2024-11-03
1013Germany2024-11-15
1014Italy2024-11-02
1015United Kingdom2024-11-08
1016Canada2024-10-25
1017Brazil2024-11-03
1018India2024-10-26
1019Australia2024-11-22
1020India2024-11-04
1021United Kingdom2024-11-05
1022Canada2024-11-23
1023Japan2024-11-07
1024India2024-11-21
1025Italy2024-11-11
1026Canada2024-11-05
1027Spain2024-11-02
1028Spain2024-11-01
1029United Kingdom2024-11-18
1030Canada2024-11-07
1031Argentina2024-11-14
1032Russia2024-10-25
1033India2024-11-18
1034Germany2024-11-03
1035Italy2024-11-09
1036Brazil2024-11-01
1037Argentina2024-11-21
1038Italy2024-11-04
1039Spain2024-11-23
1040India2024-11-08
1041Brazil2024-11-22
1042India2024-11-10
1043Argentina2024-11-22
1044Canada2024-11-10
1045India2024-11-19
1046Russia2024-11-20
1047Australia2024-11-02
1048India2024-11-22
1049Argentina2024-10-25

On-Demand Data

NameIdCountryDate
Francesco K Perin1000Italy2024-11-11
Claire P Malet1001Japan2024-11-07
Mujtaba S Caldarera1002Argentina2024-10-29
Wickens A Chui1003France2024-11-18
Leon O Chui1004United Kingdom2024-11-06
Nicolas L Marrier1005Spain2024-11-14
Nicolas X Poquette1006Brazil2024-11-19
Clifford I Butt1007France2024-11-18
Nicolas C Shinko1008Spain2024-11-01
Darci P Slusarski1009Italy2024-11-23
Ashley F Campain1010Australia2024-11-23
Aika C Gillian1011Japan2024-11-18
Munro Z Perin1012Germany2024-11-12
Mayumi T Gillian1013Russia2024-10-26
Alejandro E Dilliard1014Brazil2024-11-09
Emily V Caudy1015India2024-11-12
Tony G Shinko1016Brazil2024-11-06
Claire F Tollner1017Japan2024-11-15
Izzy G Morasca1018Argentina2024-11-01
Mayumi X Campain1019Russia2024-10-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas D MaletArgentinaAmy Elsner RENEWAL
Ricardo W BriddickArgentinaAsiya Javayant NEGOTIATION
Costa T AmigonRussiaBernardo Dominic NEGOTIATION
Maria R DilliardIndiaOnyama Limba QUALIFIED
Octavia O SergiArgentinaIoni Bowcher PROPOSAL
Izzy Q InouyeAustraliaOnyama Limba UNQUALIFIED
Ricardo I ChuiBrazilStephen Shaw NEGOTIATION
Antonio V GarufiArgentinaAmy Elsner QUALIFIED
Adams M MaletSpainXuxue Feng NEW
Emily E RimCanadaAnna Fali NEW
Leja I MaletGermanyStephen Shaw PROPOSAL
Morrow P RoysterIndiaXuxue Feng NEW
Darci R StockhamRussiaStephen Shaw QUALIFIED
Smith I MaletArgentinaXuxue Feng RENEWAL
Wickens I VocelkaBrazilIvan Magalhaes PROPOSAL
Jones Z IturbideRussiaXuxue Feng NEGOTIATION
Aditya T VenereItalyAnna Fali PROPOSAL
Salvatore X GarufiJapanStephen Shaw RENEWAL
Aditya F PoquetteCanadaStephen Shaw UNQUALIFIED
Faith A ChuiCanadaAnna Fali NEGOTIATION
Munro Z StensethCanadaIoni Bowcher PROPOSAL
Octavia O RulapaughFranceAmy Elsner PROPOSAL
Mayumi J ChuiCanadaBernardo Dominic NEW
Silvio G PaprockiCanadaElwin Sharvill NEW
Silvio Q MarrierRussiaOnyama Limba PROPOSAL
Emily O NickaGermanyIvan Magalhaes NEGOTIATION
Maisha Z RoysterCanadaStephen Shaw RENEWAL
Julie W NestleBrazilStephen Shaw QUALIFIED
Jefferson C TollnerUnited KingdomXuxue Feng PROPOSAL
Misaki Y BowleyUnited KingdomBernardo Dominic QUALIFIED
Greenwood B PaprockiGermanyAnna Fali NEGOTIATION
Julie I StensethIndiaIoni Bowcher PROPOSAL
Jefferson K ShinkoUnited KingdomStephen Shaw UNQUALIFIED
Darci P MorascaRussiaStephen Shaw PROPOSAL
Murillo D AlbaresArgentinaOnyama Limba NEW
Deepesh L SlusarskiGermanyAnna Fali RENEWAL
Antonio Z InouyeFranceOnyama Limba UNQUALIFIED
Ricardo J GarufiAustraliaElwin Sharvill NEGOTIATION
Kadeem U DarakjyAustraliaAnna Fali PROPOSAL
Kadeem H BriddickGermanyXuxue Feng UNQUALIFIED

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