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
Morrow A VenereFranceAmy Elsner QUALIFIED
Murillo X BriddickSpainXuxue Feng NEGOTIATION
Aika O PaprockiRussiaBernardo Dominic UNQUALIFIED
Kadeem D AmigonFranceBernardo Dominic PROPOSAL
Jennifer Q IturbideSpainBernardo Dominic NEGOTIATION
Izzy Z MarrierBrazilAnna Fali QUALIFIED
Salvatore V MarrierUnited KingdomElwin Sharvill QUALIFIED
Morrow E ChuiJapanOnyama Limba RENEWAL
Greenwood Y KuskoJapanIoni Bowcher QUALIFIED
Alejandro X CaudyRussiaAmy Elsner NEW
Jones K SaylorsIndiaElwin Sharvill UNQUALIFIED
Jefferson I FerenczAustraliaOnyama Limba NEGOTIATION
Ricardo Y ChuiJapanAsiya Javayant NEW
Deepesh A BologniaRussiaBernardo Dominic RENEWAL
Smith V ChuiBrazilIvan Magalhaes UNQUALIFIED
Johnson S FigeroaAustraliaAnna Fali NEW
Adams P GarufiIndiaOnyama Limba RENEWAL
Julie W MorascaItalyIoni Bowcher RENEWAL
Cody M BologniaJapanIoni Bowcher QUALIFIED
Aika W KuskoGermanyOnyama Limba NEW
Aika G StockhamArgentinaStephen Shaw QUALIFIED
Cody Q SlusarskiSpainIvan Magalhaes UNQUALIFIED
Emily P MaletItalyAsiya Javayant RENEWAL
Kaitlin A KuskoFranceOnyama Limba NEGOTIATION
Salvatore Q OstroskyRussiaOnyama Limba UNQUALIFIED
Stacey R MaletIndiaIoni Bowcher UNQUALIFIED
Antonio L FigeroaUnited KingdomAnna Fali RENEWAL
Ivar A FollerGermanyBernardo Dominic NEGOTIATION
Murillo B MorascaAustraliaIoni Bowcher NEW
Silvio E PoquetteRussiaIvan Magalhaes QUALIFIED
Tony S BologniaItalyIoni Bowcher QUALIFIED
Jeanfrancois G StensethRussiaElwin Sharvill UNQUALIFIED
Francesco R MaletIndiaElwin Sharvill PROPOSAL
Adams K RulapaughRussiaStephen Shaw UNQUALIFIED
Mayumi P InouyeAustraliaBernardo Dominic NEW
Aditya N SlusarskiFranceAnna Fali RENEWAL
Jeanfrancois G SaylorsSpainAnna Fali NEGOTIATION
Kaitlin A NickaUnited KingdomAmy Elsner QUALIFIED
Morrow L SergiArgentinaElwin Sharvill NEW
Tony M WaycottBrazilBernardo Dominic QUALIFIED
Darci G PoquetteFranceXuxue Feng NEW
Silvio H MaletRussiaAsiya Javayant UNQUALIFIED
David K CampainJapanXuxue Feng UNQUALIFIED
Jennifer V PerinCanadaStephen Shaw QUALIFIED
Aika P VenereUnited KingdomXuxue Feng UNQUALIFIED
Mujtaba N AlbaresRussiaBernardo Dominic NEGOTIATION
Smith E CaldareraArgentinaAnna Fali NEW
Greenwood K CampainFranceBernardo Dominic PROPOSAL
Izzy W DarakjyJapanElwin Sharvill UNQUALIFIED
Munro H MarrierFranceXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Smith A RutaSpainAmy Elsner QUALIFIED
Juan F MaletSpainIoni Bowcher UNQUALIFIED
Aika Y PaprockiAustraliaStephen Shaw PROPOSAL
Tony J InouyeIndiaElwin Sharvill NEW
Rodrigues A SaylorsFranceStephen Shaw NEGOTIATION
Aika Q SergiItalyXuxue Feng NEW
Smith I CaldareraSpainIoni Bowcher RENEWAL
Darci C ButtItalyIoni Bowcher UNQUALIFIED
Misaki A NestleRussiaAsiya Javayant NEW
Greenwood W FigeroaFranceIvan Magalhaes QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony T AmigonBrazil2025-06-10Chapman, Ross E Esq PROPOSAL99Bernardo Dominic
1001Costa B TollnerJapan2025-06-05Chapman, Ross E Esq PROPOSAL24Elwin Sharvill
1002Salvatore D BologniaRussia2025-06-13Feltz Printing Service NEGOTIATION95Asiya Javayant
1003Tony E WieserArgentina2025-06-10Buckley Miller Wright UNQUALIFIED55Asiya Javayant
1004Maria F MacleadCanada2025-05-27Morlong Associates NEW32Onyama Limba
1005Murillo J SchemmerBrazil2025-05-20Printing Dimensions RENEWAL12Onyama Limba
1006Julie U MarrierSpain2025-06-08Feiner Bros QUALIFIED81Anna Fali
1007Jennifer X AlbaresItaly2025-06-03Chanay, Jeffrey A Esq PROPOSAL89Asiya Javayant
1008Maisha K FigeroaGermany2025-06-14Rousseaux, Michael Esq NEW76Amy Elsner
1009Stacey M StockhamSpain2025-05-18Buckley Miller Wright QUALIFIED98Bernardo Dominic
1010Emily J PerinGermany2025-06-12Feiner Bros UNQUALIFIED10Bernardo Dominic
1011Adams C DoeIndia2025-05-31Feltz Printing Service PROPOSAL64Ioni Bowcher
1012Aditya H GarufiGermany2025-06-05Feiner Bros QUALIFIED15Amy Elsner
1013Wickens X DilliardItaly2025-05-24Chanay, Jeffrey A Esq NEGOTIATION70Anna Fali
1014Silvio J CampainAustralia2025-06-14Morlong Associates PROPOSAL13Bernardo Dominic
1015Johnson L RimBrazil2025-06-16Chanay, Jeffrey A Esq QUALIFIED89Anna Fali
1016Mayumi B VenereJapan2025-05-19Commercial Press PROPOSAL14Ivan Magalhaes
1017Ivar D VenereBrazil2025-05-18Dorl, James J Esq NEW50Onyama Limba
1018Izzy E GarufiGermany2025-05-24Rousseaux, Michael Esq UNQUALIFIED3Xuxue Feng
1019Julie Q BriddickAustralia2025-05-21Feltz Printing Service NEGOTIATION37Asiya Javayant
1020Antonio J TollnerBrazil2025-05-22Chanay, Jeffrey A Esq NEW40Amy Elsner
1021Jeanfrancois W CampainFrance2025-06-03Printing Dimensions NEW91Ivan Magalhaes
1022Mujtaba S OldroydJapan2025-06-14Benton, John B Jr PROPOSAL76Xuxue Feng
1023Arvin A SaylorsSpain2025-06-01King, Christopher A Esq UNQUALIFIED3Anna Fali
1024Greenwood D DarakjyBrazil2025-05-30Feltz Printing Service NEGOTIATION33Amy Elsner
1025Emily V GarufiJapan2025-06-16Chemel, James L Cpa QUALIFIED80Amy Elsner
1026Juan U VocelkaRussia2025-06-01Dorl, James J Esq NEW17Asiya Javayant
1027Costa Q SergiIndia2025-06-11Rousseaux, Michael Esq UNQUALIFIED59Stephen Shaw
1028Emily T GarufiItaly2025-05-18Printing Dimensions UNQUALIFIED0Elwin Sharvill
1029Kaitlin K BriddickCanada2025-05-23Feltz Printing Service RENEWAL17Amy Elsner
1030Juan O RimIndia2025-05-30Benton, John B Jr RENEWAL22Asiya Javayant
1031Stacey P SergiUnited Kingdom2025-05-21Printing Dimensions PROPOSAL41Bernardo Dominic
1032Kadeem F MarrierJapan2025-05-23Chapman, Ross E Esq NEW66Stephen Shaw
1033Maisha F SergiJapan2025-05-19Rousseaux, Michael Esq RENEWAL50Onyama Limba
1034Sinclair A TollnerAustralia2025-05-25Rangoni Of Florence PROPOSAL34Xuxue Feng
1035Julie V NickaSpain2025-05-26Chapman, Ross E Esq NEW53Ioni Bowcher
1036Emily P SaylorsBrazil2025-06-02Chapman, Ross E Esq NEW55Elwin Sharvill
1037Aruna F IturbideUnited Kingdom2025-05-26Printing Dimensions RENEWAL72Anna Fali
1038Ivar B DoeRussia2025-06-05Chanay, Jeffrey A Esq QUALIFIED92Anna Fali
1039Greenwood C CampainJapan2025-06-13Feltz Printing Service PROPOSAL54Xuxue Feng
1040Jeanfrancois D VocelkaUnited Kingdom2025-06-01Commercial Press RENEWAL64Stephen Shaw
1041Adams H NestleGermany2025-06-03Chapman, Ross E Esq PROPOSAL88Ioni Bowcher
1042Octavia P RimItaly2025-05-26Chanay, Jeffrey A Esq NEGOTIATION69Xuxue Feng
1043Misaki W RulapaughGermany2025-05-31Chanay, Jeffrey A Esq NEGOTIATION10Bernardo Dominic
1044Francesco T WhobreyAustralia2025-06-01Feiner Bros NEGOTIATION38Stephen Shaw
1045Deepesh Z ChuiSpain2025-05-27Dorl, James J Esq NEGOTIATION31Asiya Javayant
1046Jefferson E MaletIndia2025-06-13Feltz Printing Service UNQUALIFIED20Anna Fali
1047Juan H WaycottFrance2025-05-24King, Christopher A Esq PROPOSAL40Amy Elsner
1048Francesco F SaylorsUnited Kingdom2025-06-10Truhlar And Truhlar Attys NEW83Ioni Bowcher
1049Sinclair Y BowleyItaly2025-05-25Chemel, James L Cpa PROPOSAL91Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Nicolas U RoysterJapanOnyama Limba NEGOTIATION
David D CaldareraJapanAnna Fali RENEWAL
Ricardo K MaletGermanyOnyama Limba RENEWAL
Jones A AmigonIndiaElwin Sharvill NEGOTIATION
Ricardo M PerinSpainXuxue Feng UNQUALIFIED
Chavez P KolmetzGermanyIvan Magalhaes QUALIFIED
Munro W PerinItalyElwin Sharvill QUALIFIED
Jeanfrancois K FlosiRussiaAsiya Javayant NEW
Aruna X FigeroaRussiaAmy Elsner PROPOSAL
Izzy C AmigonBrazilXuxue Feng RENEWAL
Maisha A CampainCanadaAsiya Javayant NEW
Leja M ShinkoUnited KingdomAnna Fali NEW
Ivar R GarufiCanadaBernardo Dominic UNQUALIFIED
Julie D SergiJapanIvan Magalhaes NEW
Johnson V PoquetteCanadaXuxue Feng QUALIFIED
Salvatore Z FlosiAustraliaXuxue Feng RENEWAL
Arvin U WieserSpainStephen Shaw NEGOTIATION
Sinclair C KuskoSpainXuxue Feng RENEWAL
Juan J KolmetzBrazilAmy Elsner PROPOSAL
Costa R OldroydIndiaAsiya Javayant NEW
James O FerenczJapanOnyama Limba NEGOTIATION
Juan B MaletIndiaAmy Elsner NEW
Munro A PerinSpainElwin Sharvill QUALIFIED
Octavia T NickaItalyAmy Elsner PROPOSAL
Claire U BowleyBrazilAmy Elsner RENEWAL
Arvin Q FollerArgentinaAnna Fali UNQUALIFIED
Darci A StockhamArgentinaOnyama Limba NEGOTIATION
Leja B AlbaresUnited KingdomIoni Bowcher PROPOSAL
Julie J MacleadGermanyIvan Magalhaes NEW
Leja B DarakjyIndiaOnyama Limba UNQUALIFIED
Mujtaba S RulapaughUnited KingdomElwin Sharvill NEW
Wickens Z MaletCanadaAnna Fali QUALIFIED
Francesco K BologniaAustraliaOnyama Limba PROPOSAL
Antonio W FlosiArgentinaXuxue Feng QUALIFIED
Deepesh O KolmetzCanadaAmy Elsner QUALIFIED
Morrow X FlosiRussiaElwin Sharvill RENEWAL
Ashley M ShinkoIndiaStephen Shaw QUALIFIED
Jefferson M VenereUnited KingdomIvan Magalhaes RENEWAL
Adams A GillianItalyStephen Shaw NEW
Ivar Q CaudyJapanIoni Bowcher NEW
Jones K FerenczAustraliaOnyama Limba UNQUALIFIED
Leon P MaletFranceAnna Fali UNQUALIFIED
Adams D DilliardBrazilAnna Fali RENEWAL
James F PaprockiRussiaOnyama Limba NEW
Claire Q BriddickSpainAmy Elsner NEGOTIATION
Alejandro E MarrierArgentinaElwin Sharvill NEW
Claire B MarrierBrazilElwin Sharvill PROPOSAL
Nicolas P DoeArgentinaElwin Sharvill NEGOTIATION
Aruna V RulapaughIndiaElwin Sharvill QUALIFIED
Costa K NickaCanadaIoni Bowcher QUALIFIED
Frozen Columns
Name
Octavia A Chui
Morrow I Glick
Arvin H Figeroa
James C Bowley
Aika H Doe
Ricardo N Wieser
Arvin I Slusarski
Nicolas V Royster
Costa N Wieser
Cody L Slusarski
Arvin Z Caldarera
Julie H Ostrosky
Mayumi C Schemmer
Aditya X Rim
Octavia Y Butt
Costa Y Inouye
Morrow X Marrier
Salvatore N Maclead
Mayumi Z Rim
Leja E Darakjy
Jennifer C Kolmetz
Maisha N Campain
Alejandro O Butt
Ashley W Oldroyd
Clifford M Schemmer
Wickens G Sergi
Stacey K Vocelka
Salvatore C Doe
Greenwood P Morasca
Stacey C Shinko
Costa Q Gillian
Misaki Z Stockham
Silvio O Figeroa
Murillo W Gillian
Clifford X Vocelka
Jeanfrancois Q Marrier
Aditya M Bowley
Aditya L Malet
Emily M Malet
Mayumi N Venere
Kaitlin V Rim
Wickens T Figeroa
Rodrigues T Gaucho
Emily U Chui
Jefferson R Waycott
Aruna R Marrier
James Y Morasca
Clifford M Nestle
Darci B Bolognia
Johnson Q Briddick
IdCountryDate
1000United Kingdom2025-05-29
1001Brazil2025-06-11
1002Australia2025-05-26
1003Italy2025-06-12
1004Japan2025-06-03
1005Spain2025-05-23
1006Australia2025-05-24
1007Australia2025-06-03
1008Argentina2025-05-30
1009Australia2025-06-07
1010Australia2025-05-27
1011France2025-05-18
1012Spain2025-05-27
1013Japan2025-05-29
1014Japan2025-06-16
1015Germany2025-06-05
1016Germany2025-06-15
1017Germany2025-06-01
1018Australia2025-06-07
1019Australia2025-06-03
1020Canada2025-06-07
1021Japan2025-05-27
1022Germany2025-05-20
1023France2025-06-06
1024France2025-06-04
1025India2025-06-04
1026Spain2025-06-09
1027Japan2025-05-27
1028Japan2025-06-16
1029Canada2025-05-25
1030Russia2025-06-05
1031Germany2025-05-27
1032Brazil2025-06-13
1033Canada2025-06-01
1034Russia2025-05-31
1035Spain2025-05-21
1036United Kingdom2025-05-24
1037France2025-05-29
1038Russia2025-06-05
1039India2025-06-01
1040Australia2025-05-22
1041Italy2025-06-05
1042Argentina2025-06-16
1043Italy2025-05-24
1044Brazil2025-05-20
1045Spain2025-05-22
1046United Kingdom2025-05-26
1047Germany2025-06-16
1048Italy2025-06-11
1049Canada2025-06-05

On-Demand Data

NameIdCountryDate
Mujtaba L Wieser1000Australia2025-05-30
Sinclair K Foller1001Russia2025-06-04
Arvin E Saylors1002Australia2025-06-04
Ashley B Sergi1003France2025-06-15
Ivar Z Sergi1004Brazil2025-05-24
Misaki A Caldarera1005Italy2025-05-28
Silvio Q Sergi1006India2025-05-25
Arvin O Ruta1007Russia2025-06-09
Chavez P Nicka1008Russia2025-06-07
Nicolas K Poquette1009India2025-05-22
Isabel E Flosi1010Russia2025-05-23
Costa J Bowley1011Russia2025-05-22
James A Darakjy1012Argentina2025-06-16
Kaitlin W Figeroa1013United Kingdom2025-06-09
James H Butt1014Germany2025-05-25
Jones X Gaucho1015France2025-06-01
Adams D Ostrosky1016Spain2025-05-26
Maria I Gillian1017Argentina2025-06-09
Sinclair L Slusarski1018Japan2025-05-23
James A Paprocki1019Spain2025-06-06
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones O GarufiItalyIoni Bowcher RENEWAL
Wickens M BologniaFranceIvan Magalhaes PROPOSAL
Adams G WieserArgentinaIvan Magalhaes PROPOSAL
Faith F FerenczSpainAmy Elsner RENEWAL
Rodrigues Q WieserFranceIvan Magalhaes PROPOSAL
Morrow F WaycottRussiaAnna Fali QUALIFIED
Jennifer Q IturbideBrazilStephen Shaw UNQUALIFIED
Costa F CaldareraGermanyIoni Bowcher NEGOTIATION
Mayumi E CampainCanadaIoni Bowcher PROPOSAL
Costa S StockhamUnited KingdomXuxue Feng UNQUALIFIED
Izzy Y VenereGermanyOnyama Limba QUALIFIED
Wickens O SaylorsSpainBernardo Dominic UNQUALIFIED
Juan Y ChuiJapanElwin Sharvill PROPOSAL
Greenwood D RutaJapanXuxue Feng UNQUALIFIED
Jennifer I MacleadFranceOnyama Limba UNQUALIFIED
Morrow C PoquetteArgentinaStephen Shaw UNQUALIFIED
Leon I WhobreyFranceStephen Shaw NEGOTIATION
Sinclair B StockhamBrazilXuxue Feng UNQUALIFIED
Adams R InouyeSpainAnna Fali NEW
Darci K GlickCanadaAsiya Javayant UNQUALIFIED
Jennifer J AlbaresFranceAsiya Javayant NEW
Nicolas K MaletRussiaBernardo Dominic RENEWAL
Isabel L SergiSpainIoni Bowcher QUALIFIED
Sinclair T MaletBrazilAnna Fali RENEWAL
Salvatore Y GauchoArgentinaAnna Fali RENEWAL
Jones J RutaItalyIoni Bowcher UNQUALIFIED
Nicolas W AlbaresAustraliaElwin Sharvill RENEWAL
Ricardo B WhobreySpainAnna Fali UNQUALIFIED
Costa S IturbideUnited KingdomXuxue Feng RENEWAL
Julie N SlusarskiRussiaElwin Sharvill UNQUALIFIED
Maria A RulapaughGermanyAnna Fali RENEWAL
Izzy X OstroskyFranceBernardo Dominic UNQUALIFIED
Jefferson F KolmetzFranceIvan Magalhaes NEW
Arvin Z SchemmerArgentinaAnna Fali UNQUALIFIED
Francesco N WieserGermanyXuxue Feng NEGOTIATION
Cody C CampainFranceElwin Sharvill PROPOSAL
Misaki O MaletArgentinaStephen Shaw QUALIFIED
Greenwood Z SlusarskiAustraliaAmy Elsner UNQUALIFIED
Jeanfrancois D BriddickRussiaAsiya Javayant NEW
Kadeem U CampainCanadaElwin Sharvill 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>