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
Leja Z PaprockiBrazilBernardo Dominic NEGOTIATION
Rodrigues D InouyeIndiaElwin Sharvill UNQUALIFIED
Jefferson R GlickSpainStephen Shaw UNQUALIFIED
Isabel F VenereItalyAsiya Javayant NEGOTIATION
Munro N BologniaItalyIoni Bowcher QUALIFIED
Stacey S BriddickItalyAmy Elsner NEW
Adams E RoysterFranceIoni Bowcher QUALIFIED
Darci Y InouyeIndiaXuxue Feng QUALIFIED
Ricardo M VocelkaAustraliaAmy Elsner PROPOSAL
Deepesh S GarufiIndiaIvan Magalhaes QUALIFIED
Smith A StensethArgentinaAmy Elsner PROPOSAL
Rodrigues R WhobreyCanadaAsiya Javayant NEW
James J MaletGermanyXuxue Feng NEW
Francesco E DilliardAustraliaStephen Shaw RENEWAL
Adams B SergiUnited KingdomXuxue Feng UNQUALIFIED
Greenwood V CaudyBrazilOnyama Limba NEW
Mujtaba K ChuiItalyOnyama Limba QUALIFIED
Ivar X PerinArgentinaAsiya Javayant PROPOSAL
Jeanfrancois D DarakjyItalyAmy Elsner NEW
Francesco X KuskoUnited KingdomStephen Shaw NEW
Greenwood Z MarrierSpainAnna Fali PROPOSAL
Chavez C ButtAustraliaElwin Sharvill PROPOSAL
Leja U BowleyIndiaBernardo Dominic QUALIFIED
Jeanfrancois T ButtFranceIvan Magalhaes RENEWAL
Adams P ButtJapanStephen Shaw QUALIFIED
Faith Q CaldareraIndiaAmy Elsner PROPOSAL
Murillo Y FollerBrazilAmy Elsner NEGOTIATION
Johnson F OldroydJapanBernardo Dominic NEGOTIATION
Rodrigues K SaylorsAustraliaOnyama Limba PROPOSAL
Jennifer Q OldroydArgentinaBernardo Dominic RENEWAL
Ricardo P CampainCanadaAnna Fali QUALIFIED
Isabel A NestleAustraliaAnna Fali NEGOTIATION
David U WhobreyFranceAsiya Javayant PROPOSAL
Greenwood T MarrierAustraliaAsiya Javayant NEW
Izzy Q AmigonFranceAsiya Javayant UNQUALIFIED
Morrow W SaylorsArgentinaAnna Fali NEW
Kaitlin M PoquetteJapanAnna Fali PROPOSAL
Jeanfrancois G RulapaughRussiaAmy Elsner UNQUALIFIED
Juan O VocelkaRussiaAsiya Javayant QUALIFIED
Nicolas E ShinkoItalyIvan Magalhaes NEGOTIATION
Izzy J GauchoRussiaAsiya Javayant NEW
Leja M DarakjyBrazilOnyama Limba QUALIFIED
Greenwood F PoquetteBrazilAnna Fali UNQUALIFIED
Smith X SaylorsAustraliaAnna Fali NEW
Maria O WaycottSpainElwin Sharvill QUALIFIED
Rodrigues A VocelkaArgentinaIoni Bowcher QUALIFIED
Octavia I NestleSpainOnyama Limba RENEWAL
Antonio D GarufiCanadaAmy Elsner UNQUALIFIED
Maria N AlbaresArgentinaIvan Magalhaes NEW
Kadeem V WieserBrazilBernardo Dominic NEW
Horizontal
NameCountryRepresentativeStatus
Silvio K CaldareraFranceIoni Bowcher NEW
Julie N FlosiCanadaStephen Shaw QUALIFIED
Rodrigues V WhobreyItalyAnna Fali NEW
Izzy L MaletCanadaBernardo Dominic RENEWAL
Tony D DilliardSpainAnna Fali QUALIFIED
Cody G DilliardItalyIvan Magalhaes RENEWAL
Maria M CampainBrazilAmy Elsner QUALIFIED
Costa P SergiGermanyBernardo Dominic QUALIFIED
Darci U DoeBrazilBernardo Dominic NEW
David F TollnerArgentinaIoni Bowcher NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio V NestleAustralia2024-06-05Rangoni Of Florence NEGOTIATION85Xuxue Feng
1001Smith D VocelkaItaly2024-06-17Buckley Miller Wright RENEWAL8Xuxue Feng
1002Ricardo T MorascaUnited Kingdom2024-06-01Buckley Miller Wright NEW85Amy Elsner
1003Misaki G VenereIndia2024-05-23Rousseaux, Michael Esq NEW21Asiya Javayant
1004Jefferson O RutaGermany2024-05-24Dorl, James J Esq RENEWAL56Ioni Bowcher
1005Costa D CaudyAustralia2024-06-14Rangoni Of Florence UNQUALIFIED54Ivan Magalhaes
1006Aditya Y FigeroaRussia2024-06-07Rangoni Of Florence PROPOSAL99Anna Fali
1007Aika E BologniaRussia2024-06-14Dorl, James J Esq UNQUALIFIED8Xuxue Feng
1008Aruna F MarrierFrance2024-05-25Buckley Miller Wright NEGOTIATION30Elwin Sharvill
1009Munro Z GauchoBrazil2024-06-18Feiner Bros NEGOTIATION82Xuxue Feng
1010Aika O GauchoJapan2024-06-05Benton, John B Jr QUALIFIED0Ivan Magalhaes
1011Octavia J BowleySpain2024-06-19Printing Dimensions NEGOTIATION0Ioni Bowcher
1012Alejandro L RutaUnited Kingdom2024-06-17Buckley Miller Wright RENEWAL56Asiya Javayant
1013Antonio J SaylorsJapan2024-05-26Feltz Printing Service RENEWAL63Ioni Bowcher
1014Aika J PerinArgentina2024-06-14Commercial Press UNQUALIFIED49Onyama Limba
1015Rodrigues R NestleJapan2024-05-29Chanay, Jeffrey A Esq RENEWAL56Onyama Limba
1016Arvin L NickaUnited Kingdom2024-06-12Feltz Printing Service PROPOSAL29Ioni Bowcher
1017Leja A SlusarskiRussia2024-05-30Dorl, James J Esq NEW35Onyama Limba
1018Antonio Q OstroskyCanada2024-05-25Chanay, Jeffrey A Esq NEGOTIATION51Stephen Shaw
1019Maria T FollerSpain2024-05-24Commercial Press NEW98Elwin Sharvill
1020Aditya H OldroydCanada2024-06-17Rangoni Of Florence QUALIFIED45Ioni Bowcher
1021Stacey A CaldareraArgentina2024-05-28Printing Dimensions QUALIFIED14Ioni Bowcher
1022Adams C ChuiGermany2024-06-07Rousseaux, Michael Esq NEGOTIATION37Onyama Limba
1023Misaki Y BowleyItaly2024-06-16Feltz Printing Service QUALIFIED25Ivan Magalhaes
1024Johnson D SchemmerUnited Kingdom2024-05-29Commercial Press NEW91Stephen Shaw
1025Greenwood E TollnerSpain2024-06-11Morlong Associates NEW56Xuxue Feng
1026Claire F AmigonBrazil2024-06-21Rousseaux, Michael Esq QUALIFIED95Onyama Limba
1027Aruna Y BriddickGermany2024-05-28Chapman, Ross E Esq NEW45Amy Elsner
1028Izzy A DarakjyUnited Kingdom2024-06-02Rousseaux, Michael Esq RENEWAL21Bernardo Dominic
1029Sinclair C GarufiRussia2024-05-27Rousseaux, Michael Esq NEW95Anna Fali
1030Jones D KuskoJapan2024-06-09Morlong Associates QUALIFIED96Onyama Limba
1031Leja Q StockhamGermany2024-05-28Truhlar And Truhlar Attys QUALIFIED40Onyama Limba
1032Juan X CaldareraAustralia2024-06-16Chanay, Jeffrey A Esq NEW70Ioni Bowcher
1033Sinclair C StockhamFrance2024-06-02Rangoni Of Florence NEGOTIATION2Anna Fali
1034Jennifer G AlbaresAustralia2024-05-27Benton, John B Jr PROPOSAL56Stephen Shaw
1035Silvio B ShinkoRussia2024-06-17Buckley Miller Wright NEGOTIATION93Ivan Magalhaes
1036Smith J WhobreyArgentina2024-06-15Rangoni Of Florence NEW27Amy Elsner
1037Salvatore T MacleadGermany2024-06-01Truhlar And Truhlar Attys UNQUALIFIED76Ioni Bowcher
1038Octavia A RoysterJapan2024-05-25Chanay, Jeffrey A Esq PROPOSAL51Anna Fali
1039Smith E KolmetzJapan2024-06-12Dorl, James J Esq NEGOTIATION1Ioni Bowcher
1040Maisha U GlickJapan2024-06-07Feltz Printing Service NEGOTIATION87Xuxue Feng
1041Francesco O RutaGermany2024-06-10Printing Dimensions NEW71Ioni Bowcher
1042Isabel N VocelkaUnited Kingdom2024-06-21Feiner Bros UNQUALIFIED63Asiya Javayant
1043Morrow Z SergiItaly2024-06-05Truhlar And Truhlar Attys NEGOTIATION11Bernardo Dominic
1044Isabel B CampainItaly2024-05-23Benton, John B Jr UNQUALIFIED4Onyama Limba
1045Clifford J SergiCanada2024-06-09Chapman, Ross E Esq NEW51Anna Fali
1046Rodrigues R BologniaIndia2024-06-06Truhlar And Truhlar Attys QUALIFIED87Xuxue Feng
1047Clifford B OldroydFrance2024-06-19Rangoni Of Florence QUALIFIED67Bernardo Dominic
1048Nicolas P BologniaIndia2024-06-16Chemel, James L Cpa NEGOTIATION94Bernardo Dominic
1049Faith F NickaGermany2024-06-01Printing Dimensions QUALIFIED90Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Arvin M DoeBrazilXuxue Feng PROPOSAL
Murillo U GauchoBrazilIvan Magalhaes NEW
Maria L BriddickCanadaIvan Magalhaes QUALIFIED
Mayumi E CaldareraCanadaBernardo Dominic RENEWAL
Kaitlin T AmigonAustraliaElwin Sharvill QUALIFIED
Murillo K DilliardUnited KingdomOnyama Limba NEW
Isabel R IturbideGermanyBernardo Dominic NEGOTIATION
Aruna T MarrierRussiaXuxue Feng UNQUALIFIED
Morrow S WieserAustraliaElwin Sharvill RENEWAL
Aditya W InouyeSpainIoni Bowcher PROPOSAL
Ivar N OldroydCanadaAsiya Javayant UNQUALIFIED
Antonio D PaprockiIndiaAsiya Javayant UNQUALIFIED
David Q MacleadArgentinaAmy Elsner QUALIFIED
Izzy K FlosiIndiaStephen Shaw QUALIFIED
Aditya J TollnerCanadaIvan Magalhaes NEW
Silvio P DarakjySpainStephen Shaw NEW
James T MaletSpainBernardo Dominic NEGOTIATION
Sinclair B RimAustraliaIvan Magalhaes QUALIFIED
Johnson M OldroydItalyStephen Shaw RENEWAL
Deepesh J PerinBrazilElwin Sharvill NEGOTIATION
Nicolas E WaycottCanadaXuxue Feng RENEWAL
Kadeem J StockhamIndiaAmy Elsner RENEWAL
Cody A ChuiUnited KingdomStephen Shaw RENEWAL
David K FerenczUnited KingdomStephen Shaw UNQUALIFIED
Chavez N AlbaresArgentinaXuxue Feng QUALIFIED
Claire Y BologniaArgentinaIoni Bowcher UNQUALIFIED
Faith G ShinkoIndiaXuxue Feng RENEWAL
Darci L CampainRussiaAmy Elsner NEW
Stacey H KuskoIndiaXuxue Feng RENEWAL
Costa Q TollnerFranceBernardo Dominic NEGOTIATION
Jones K RoysterGermanyElwin Sharvill QUALIFIED
Rodrigues V ChuiIndiaAmy Elsner NEGOTIATION
Aika J CaudyBrazilElwin Sharvill NEGOTIATION
Octavia E CaldareraRussiaElwin Sharvill UNQUALIFIED
Isabel A BowleyGermanyAnna Fali NEW
Alejandro N VocelkaFranceAsiya Javayant PROPOSAL
Kadeem W SlusarskiSpainStephen Shaw NEW
Emily X SaylorsCanadaAmy Elsner QUALIFIED
Juan N MarrierCanadaAnna Fali NEW
Tony N CaudyJapanAmy Elsner QUALIFIED
Costa G IturbideFranceBernardo Dominic QUALIFIED
Stacey Y FerenczAustraliaIoni Bowcher PROPOSAL
Rodrigues F ChuiGermanyStephen Shaw NEW
Aika Z OstroskySpainXuxue Feng RENEWAL
Misaki B FerenczFranceBernardo Dominic RENEWAL
Faith A SchemmerAustraliaStephen Shaw PROPOSAL
Kaitlin K NestleGermanyIvan Magalhaes UNQUALIFIED
Stacey X MaletUnited KingdomAmy Elsner QUALIFIED
Antonio E SergiCanadaElwin Sharvill UNQUALIFIED
Smith D FlosiRussiaAnna Fali RENEWAL
Frozen Columns
Name
Tony O Royster
David H Figeroa
Leja I Stenseth
Francesco R Saylors
Deepesh O Butt
Misaki Z Darakjy
Costa H Malet
Greenwood F Gaucho
Chavez O Nestle
Clifford G Schemmer
Stacey W Bolognia
Misaki T Ostrosky
Kaitlin T Kolmetz
Wickens Z Amigon
Izzy B Bowley
Tony S Albares
Sinclair T Butt
Morrow O Shinko
Jennifer I Iturbide
Darci U Vocelka
Mujtaba R Malet
Mujtaba P Albares
Chavez K Nestle
Greenwood B Gillian
Leja P Nicka
Leon P Saylors
Salvatore H Briddick
Aditya O Butt
Francesco E Paprocki
Ivar A Kolmetz
Maisha R Maclead
Isabel D Foller
Mayumi K Paprocki
Murillo B Wieser
Adams Z Ostrosky
Claire X Campain
Adams U Butt
Smith L Chui
Cody H Malet
Ricardo M Caldarera
Mayumi L Butt
Izzy T Darakjy
Aruna M Kolmetz
Arvin P Foller
Aika K Amigon
Ashley K Sergi
Ricardo P Bolognia
Jefferson P Paprocki
Julie Q Inouye
Misaki L Iturbide
IdCountryDate
1000Italy2024-06-20
1001Spain2024-06-12
1002Germany2024-05-25
1003Australia2024-06-08
1004Australia2024-06-12
1005Australia2024-05-24
1006Australia2024-06-18
1007France2024-06-01
1008Brazil2024-06-15
1009Canada2024-06-06
1010India2024-06-01
1011Italy2024-06-20
1012Russia2024-05-29
1013Russia2024-06-08
1014Argentina2024-06-13
1015Brazil2024-05-24
1016Japan2024-06-14
1017Argentina2024-06-01
1018Canada2024-06-21
1019Russia2024-06-02
1020Spain2024-05-25
1021Argentina2024-05-31
1022France2024-06-14
1023United Kingdom2024-06-08
1024Russia2024-06-21
1025Russia2024-06-12
1026Italy2024-06-03
1027India2024-06-03
1028Italy2024-06-21
1029Argentina2024-06-07
1030Germany2024-05-24
1031Germany2024-05-30
1032Argentina2024-06-15
1033Germany2024-06-03
1034Brazil2024-06-14
1035Brazil2024-06-04
1036France2024-05-31
1037Argentina2024-06-15
1038Japan2024-06-01
1039Argentina2024-06-07
1040Spain2024-06-17
1041United Kingdom2024-06-18
1042India2024-06-14
1043Argentina2024-06-10
1044Canada2024-06-19
1045Germany2024-05-24
1046Argentina2024-05-26
1047Russia2024-06-19
1048Italy2024-06-07
1049Argentina2024-06-10

On-Demand Data

NameIdCountryDate
Mujtaba C Bowley1000Australia2024-05-26
Leon R Butt1001France2024-05-30
Rodrigues J Paprocki1002France2024-06-04
Kadeem R Stockham1003Italy2024-05-23
Rodrigues F Saylors1004Australia2024-06-18
Kaitlin R Inouye1005Italy2024-05-24
Misaki N Royster1006Canada2024-06-21
Wickens Q Ferencz1007Australia2024-05-27
Jennifer B Caldarera1008Brazil2024-05-30
Izzy X Glick1009Japan2024-06-09
Mayumi A Campain1010Japan2024-05-23
Clifford P Briddick1011Japan2024-06-04
Adams I Albares1012Germany2024-05-24
Greenwood I Venere1013Argentina2024-06-03
Mujtaba A Iturbide1014Spain2024-06-03
Faith Q Saylors1015Brazil2024-06-15
Clifford U Malet1016France2024-06-02
Maria P Doe1017France2024-06-16
Claire D Flosi1018United Kingdom2024-05-26
Leon G Garufi1019Italy2024-05-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja R IturbideUnited KingdomAmy Elsner RENEWAL
Aika A ButtBrazilElwin Sharvill NEW
Kaitlin Z CaudyIndiaXuxue Feng PROPOSAL
Smith B DoeCanadaAsiya Javayant QUALIFIED
Aditya S NickaAustraliaAsiya Javayant NEGOTIATION
Costa V DoeUnited KingdomElwin Sharvill RENEWAL
Nicolas F OldroydRussiaAnna Fali UNQUALIFIED
Kadeem Z ShinkoArgentinaAnna Fali NEGOTIATION
James T VocelkaGermanyIvan Magalhaes PROPOSAL
Julie J RulapaughBrazilXuxue Feng UNQUALIFIED
Julie Z ButtFranceElwin Sharvill UNQUALIFIED
Sinclair I PaprockiGermanyAsiya Javayant NEW
Johnson H TollnerAustraliaAnna Fali PROPOSAL
Munro U AlbaresSpainElwin Sharvill NEGOTIATION
Isabel K SlusarskiSpainAmy Elsner RENEWAL
Morrow M RoysterBrazilElwin Sharvill NEGOTIATION
Alejandro S SaylorsItalyOnyama Limba PROPOSAL
Morrow J InouyeCanadaAmy Elsner NEW
Ivar G StockhamAustraliaElwin Sharvill QUALIFIED
Kaitlin D RoysterJapanStephen Shaw NEW
Murillo U PoquetteGermanyBernardo Dominic PROPOSAL
Cody O CampainRussiaOnyama Limba UNQUALIFIED
Juan M KuskoRussiaAmy Elsner NEW
Nicolas M MaletJapanBernardo Dominic NEW
Leja U GauchoBrazilXuxue Feng PROPOSAL
Francesco F GillianIndiaXuxue Feng NEW
Wickens X MarrierItalyAmy Elsner QUALIFIED
David X SergiCanadaBernardo Dominic UNQUALIFIED
Jones B PerinIndiaAnna Fali QUALIFIED
Tony P CaldareraArgentinaAsiya Javayant QUALIFIED
Darci Q OstroskyCanadaAnna Fali UNQUALIFIED
Wickens E MaletUnited KingdomXuxue Feng QUALIFIED
Smith K FerenczFranceIvan Magalhaes PROPOSAL
Aika T BologniaCanadaBernardo Dominic NEGOTIATION
Antonio V PaprockiJapanIvan Magalhaes NEW
Juan R CaldareraArgentinaAmy Elsner QUALIFIED
Izzy R StockhamBrazilIoni Bowcher RENEWAL
Murillo C MaletUnited KingdomAnna Fali PROPOSAL
Cody X VocelkaUnited KingdomElwin Sharvill QUALIFIED
Maisha X DoeArgentinaAmy Elsner QUALIFIED

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