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
Mujtaba I GlickFranceBernardo Dominic NEW
Stacey Y BriddickSpainIoni Bowcher NEGOTIATION
Rodrigues C SlusarskiAustraliaStephen Shaw QUALIFIED
Faith G ButtJapanIoni Bowcher NEW
Greenwood L BologniaItalyXuxue Feng UNQUALIFIED
Jones F OstroskyIndiaXuxue Feng NEGOTIATION
Wickens X RoysterSpainAmy Elsner RENEWAL
Jones V MorascaRussiaAnna Fali NEGOTIATION
Costa T SchemmerJapanOnyama Limba RENEWAL
Aika E ShinkoJapanBernardo Dominic UNQUALIFIED
Johnson C SlusarskiRussiaAnna Fali UNQUALIFIED
Adams O DarakjyAustraliaStephen Shaw NEGOTIATION
Mujtaba T OldroydJapanAmy Elsner QUALIFIED
Wickens J MaletCanadaElwin Sharvill RENEWAL
Sinclair V StockhamCanadaStephen Shaw NEW
Octavia C RoysterIndiaAsiya Javayant PROPOSAL
Ricardo A PoquetteJapanAmy Elsner NEGOTIATION
Leon E SlusarskiItalyIvan Magalhaes QUALIFIED
Aika P AmigonCanadaIvan Magalhaes QUALIFIED
Rodrigues Y NestleAustraliaAmy Elsner QUALIFIED
Mayumi Z BologniaArgentinaAmy Elsner QUALIFIED
Maria Y GillianBrazilOnyama Limba UNQUALIFIED
Emily V CaldareraBrazilElwin Sharvill RENEWAL
Aika M WaycottItalyElwin Sharvill RENEWAL
Nicolas B GlickJapanIvan Magalhaes NEW
Antonio N ShinkoIndiaXuxue Feng PROPOSAL
Morrow X PaprockiArgentinaElwin Sharvill UNQUALIFIED
Mayumi T PoquetteUnited KingdomAmy Elsner RENEWAL
David B BologniaItalyAsiya Javayant NEW
Faith G CampainArgentinaOnyama Limba UNQUALIFIED
Murillo N VocelkaCanadaAmy Elsner UNQUALIFIED
Morrow N NickaIndiaStephen Shaw PROPOSAL
Stacey O StensethAustraliaOnyama Limba NEGOTIATION
Greenwood I VenereCanadaStephen Shaw UNQUALIFIED
Jones J SlusarskiAustraliaStephen Shaw RENEWAL
Juan M RutaBrazilIvan Magalhaes RENEWAL
Antonio K GauchoItalyOnyama Limba PROPOSAL
Jones H StensethGermanyIoni Bowcher PROPOSAL
Salvatore X WaycottUnited KingdomXuxue Feng UNQUALIFIED
Maisha H FlosiItalyAsiya Javayant RENEWAL
Darci B DilliardCanadaBernardo Dominic NEW
Emily L BowleyFranceXuxue Feng NEGOTIATION
Silvio Z MaletIndiaAmy Elsner QUALIFIED
Ricardo O PaprockiUnited KingdomElwin Sharvill PROPOSAL
Munro R SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Jennifer X FlosiUnited KingdomElwin Sharvill QUALIFIED
Maria O VocelkaArgentinaElwin Sharvill PROPOSAL
Claire U IturbideArgentinaIoni Bowcher NEW
Leja H PaprockiUnited KingdomStephen Shaw NEW
Ricardo W RoysterItalyElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Johnson S BowleyItalyOnyama Limba QUALIFIED
Murillo B PerinJapanElwin Sharvill NEGOTIATION
Jefferson Q StockhamItalyAsiya Javayant QUALIFIED
Stacey M CaldareraRussiaAmy Elsner NEW
Ricardo E OstroskyAustraliaElwin Sharvill QUALIFIED
Jennifer V StensethArgentinaBernardo Dominic QUALIFIED
Maria X MaletAustraliaStephen Shaw NEGOTIATION
Emily C BologniaUnited KingdomAmy Elsner QUALIFIED
Ashley A GillianCanadaStephen Shaw QUALIFIED
Costa A PaprockiAustraliaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith C ShinkoUnited Kingdom2024-06-12Printing Dimensions QUALIFIED97Onyama Limba
1001Ashley Y RoysterIndia2024-06-06Commercial Press RENEWAL0Anna Fali
1002Stacey U GarufiRussia2024-06-03Feltz Printing Service UNQUALIFIED19Ioni Bowcher
1003Aditya S OldroydIndia2024-05-23Feiner Bros NEW79Amy Elsner
1004Smith R StensethItaly2024-05-28Commercial Press RENEWAL1Amy Elsner
1005Morrow Q OldroydGermany2024-06-11Rousseaux, Michael Esq RENEWAL23Xuxue Feng
1006Isabel P VocelkaCanada2024-05-31Feiner Bros RENEWAL13Onyama Limba
1007Aditya S RulapaughItaly2024-06-03Feiner Bros NEGOTIATION74Xuxue Feng
1008Maisha P FigeroaAustralia2024-06-15Dorl, James J Esq PROPOSAL21Elwin Sharvill
1009James Q GarufiGermany2024-05-28Rousseaux, Michael Esq QUALIFIED99Xuxue Feng
1010Claire L OstroskyFrance2024-05-25Chemel, James L Cpa QUALIFIED67Amy Elsner
1011Aika E MorascaUnited Kingdom2024-06-10Feiner Bros NEGOTIATION61Bernardo Dominic
1012Darci O WhobreyRussia2024-06-10Morlong Associates RENEWAL98Ioni Bowcher
1013Jeanfrancois L GillianRussia2024-05-23Chanay, Jeffrey A Esq QUALIFIED9Bernardo Dominic
1014Jeanfrancois S DilliardJapan2024-06-06Rangoni Of Florence NEGOTIATION85Ioni Bowcher
1015Faith X KolmetzGermany2024-05-22Rousseaux, Michael Esq UNQUALIFIED86Onyama Limba
1016Costa I WhobreyGermany2024-05-27Feiner Bros RENEWAL98Bernardo Dominic
1017Chavez T ShinkoBrazil2024-06-09King, Christopher A Esq QUALIFIED60Bernardo Dominic
1018Wickens Y WhobreySpain2024-06-11Dorl, James J Esq UNQUALIFIED48Elwin Sharvill
1019Chavez W OstroskySpain2024-05-24King, Christopher A Esq NEGOTIATION46Ioni Bowcher
1020Johnson I KolmetzIndia2024-05-25Printing Dimensions NEW9Elwin Sharvill
1021Tony P ShinkoRussia2024-06-05Truhlar And Truhlar Attys PROPOSAL34Amy Elsner
1022Munro V SchemmerSpain2024-06-16Rousseaux, Michael Esq PROPOSAL39Asiya Javayant
1023Nicolas U MacleadGermany2024-06-12Truhlar And Truhlar Attys NEW35Stephen Shaw
1024David A RulapaughGermany2024-05-30Buckley Miller Wright NEW1Elwin Sharvill
1025Tony M PerinBrazil2024-06-11Buckley Miller Wright RENEWAL95Stephen Shaw
1026Maria R VenereAustralia2024-06-03Truhlar And Truhlar Attys PROPOSAL70Ivan Magalhaes
1027Arvin Q RulapaughCanada2024-05-21Benton, John B Jr NEW2Asiya Javayant
1028Izzy S SlusarskiRussia2024-06-02Feiner Bros QUALIFIED7Elwin Sharvill
1029Leja U MorascaGermany2024-06-07Commercial Press QUALIFIED7Onyama Limba
1030Maisha S FigeroaSpain2024-06-06Dorl, James J Esq NEGOTIATION42Stephen Shaw
1031Leon N StensethBrazil2024-06-05King, Christopher A Esq NEW75Asiya Javayant
1032Jennifer M CampainJapan2024-05-20Rangoni Of Florence QUALIFIED8Ivan Magalhaes
1033Jennifer C FerenczBrazil2024-05-19Chapman, Ross E Esq NEGOTIATION58Ioni Bowcher
1034Jeanfrancois M VenereGermany2024-06-06Commercial Press NEGOTIATION45Xuxue Feng
1035Adams W MaletCanada2024-06-01Dorl, James J Esq RENEWAL87Ioni Bowcher
1036Rodrigues K RimRussia2024-06-01Rangoni Of Florence QUALIFIED91Amy Elsner
1037Aruna A OstroskyFrance2024-06-13Commercial Press QUALIFIED98Asiya Javayant
1038Munro Z WhobreySpain2024-05-28Rousseaux, Michael Esq QUALIFIED21Ivan Magalhaes
1039Tony Z KolmetzRussia2024-05-22Dorl, James J Esq NEGOTIATION41Anna Fali
1040Ivar Z KolmetzGermany2024-06-16Morlong Associates QUALIFIED74Onyama Limba
1041Smith H CaldareraFrance2024-06-01Dorl, James J Esq PROPOSAL66Anna Fali
1042Johnson X FlosiFrance2024-06-15Rousseaux, Michael Esq NEW34Ioni Bowcher
1043Silvio A RutaBrazil2024-06-06Chanay, Jeffrey A Esq UNQUALIFIED83Ivan Magalhaes
1044Tony U SergiJapan2024-06-01Truhlar And Truhlar Attys NEGOTIATION1Asiya Javayant
1045Munro L PerinFrance2024-05-30Buckley Miller Wright NEW5Xuxue Feng
1046David J OstroskyIndia2024-05-23King, Christopher A Esq NEW73Ioni Bowcher
1047Julie Y AlbaresGermany2024-06-02Feiner Bros NEGOTIATION45Asiya Javayant
1048Johnson R RutaSpain2024-06-04Chanay, Jeffrey A Esq QUALIFIED45Onyama Limba
1049Antonio E BriddickGermany2024-05-30King, Christopher A Esq NEW1Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Francesco L NestleJapanBernardo Dominic QUALIFIED
Jefferson J VenereCanadaStephen Shaw QUALIFIED
Jefferson S CaudyCanadaBernardo Dominic RENEWAL
Costa Z CaudyUnited KingdomIoni Bowcher RENEWAL
Kaitlin L PaprockiUnited KingdomIvan Magalhaes PROPOSAL
Costa Q ButtFranceBernardo Dominic RENEWAL
Izzy V PerinSpainAmy Elsner NEW
Greenwood V RoysterItalyIvan Magalhaes PROPOSAL
Leon Z KuskoBrazilOnyama Limba UNQUALIFIED
Aditya D SaylorsItalyOnyama Limba RENEWAL
Arvin H AlbaresUnited KingdomElwin Sharvill RENEWAL
Antonio J NestleItalyIoni Bowcher QUALIFIED
Aditya W DarakjyRussiaBernardo Dominic PROPOSAL
Stacey Q DarakjyBrazilIoni Bowcher NEGOTIATION
Clifford X BriddickBrazilXuxue Feng UNQUALIFIED
Chavez C FerenczFranceOnyama Limba RENEWAL
Darci S GillianBrazilBernardo Dominic UNQUALIFIED
Chavez G CampainArgentinaElwin Sharvill QUALIFIED
Emily I RulapaughJapanXuxue Feng QUALIFIED
Jefferson U RimFranceIoni Bowcher QUALIFIED
Chavez N CampainCanadaOnyama Limba NEW
Julie D ShinkoGermanyStephen Shaw NEW
Mayumi I StockhamSpainIvan Magalhaes NEGOTIATION
Deepesh P NickaIndiaIvan Magalhaes PROPOSAL
Misaki H PoquetteUnited KingdomAnna Fali NEW
Ashley C ShinkoAustraliaAsiya Javayant NEGOTIATION
Isabel B FigeroaArgentinaXuxue Feng QUALIFIED
Salvatore I RimJapanOnyama Limba NEGOTIATION
Clifford Y RulapaughAustraliaOnyama Limba NEW
Aruna A FlosiJapanOnyama Limba RENEWAL
Johnson Q WieserSpainIvan Magalhaes RENEWAL
Faith O GillianCanadaAnna Fali PROPOSAL
Juan A CaldareraAustraliaStephen Shaw NEGOTIATION
Jefferson D SaylorsCanadaOnyama Limba NEW
Maria W SlusarskiSpainIvan Magalhaes UNQUALIFIED
Jeanfrancois M KuskoItalyBernardo Dominic NEW
Costa X TollnerItalyXuxue Feng UNQUALIFIED
Maisha V NestleItalyOnyama Limba NEW
Leja S FigeroaUnited KingdomBernardo Dominic RENEWAL
Jennifer W RulapaughJapanOnyama Limba NEW
Morrow T FerenczJapanIvan Magalhaes NEGOTIATION
Juan A RutaArgentinaOnyama Limba NEW
Salvatore U RimIndiaXuxue Feng NEGOTIATION
Aditya O GarufiIndiaAsiya Javayant NEGOTIATION
Kadeem L IturbideCanadaXuxue Feng PROPOSAL
Costa R BowleyIndiaOnyama Limba PROPOSAL
Jeanfrancois P DarakjyFranceAnna Fali PROPOSAL
Ashley U ChuiAustraliaAmy Elsner QUALIFIED
Darci F AmigonCanadaIoni Bowcher UNQUALIFIED
Aruna M CaudyCanadaElwin Sharvill QUALIFIED
Frozen Columns
Name
Wickens H Shinko
Antonio Y Royster
Jones C Gaucho
Stacey X Glick
Stacey P Gillian
Rodrigues C Perin
Darci A Garufi
Morrow T Sergi
Wickens F Briddick
Juan J Malet
Juan T Saylors
Maisha Q Ruta
Emily Q Kolmetz
Mayumi D Gaucho
Silvio I Paprocki
Maria N Royster
Juan G Butt
Ricardo N Iturbide
Salvatore A Shinko
Aika I Figeroa
Izzy O Venere
Aditya Q Tollner
Izzy K Rulapaugh
Aruna W Bolognia
Jennifer R Campain
Morrow B Doe
Kadeem A Marrier
Francesco K Nestle
Mujtaba K Bolognia
Claire O Doe
Darci M Gillian
Alejandro D Malet
Cody V Amigon
Maisha B Malet
Misaki V Royster
Isabel U Saylors
Munro Y Ruta
Nicolas G Garufi
Misaki D Malet
James E Royster
Costa X Slusarski
Isabel R Rulapaugh
Leon E Maclead
Juan D Caudy
Murillo H Caudy
Wickens N Stenseth
Kadeem N Vocelka
Jeanfrancois E Marrier
Nicolas B Kolmetz
Smith T Maclead
IdCountryDate
1000Spain2024-05-28
1001Japan2024-05-22
1002Japan2024-05-21
1003Italy2024-05-24
1004Canada2024-06-03
1005Russia2024-06-08
1006France2024-05-19
1007Spain2024-05-31
1008Italy2024-05-26
1009Japan2024-05-30
1010France2024-05-23
1011India2024-05-31
1012Japan2024-06-12
1013Brazil2024-06-17
1014Brazil2024-06-11
1015France2024-05-22
1016Russia2024-06-13
1017France2024-06-10
1018Canada2024-06-07
1019France2024-06-07
1020Russia2024-05-29
1021Argentina2024-05-24
1022Spain2024-06-17
1023Brazil2024-05-21
1024Brazil2024-05-19
1025Japan2024-05-22
1026Australia2024-05-31
1027Japan2024-05-28
1028Germany2024-05-22
1029Japan2024-06-13
1030Brazil2024-06-12
1031France2024-06-11
1032Australia2024-06-11
1033Argentina2024-05-31
1034France2024-06-13
1035Germany2024-05-20
1036Argentina2024-06-06
1037India2024-06-01
1038France2024-05-27
1039India2024-05-27
1040Italy2024-05-30
1041Italy2024-05-25
1042Italy2024-06-04
1043Australia2024-06-09
1044Russia2024-06-08
1045Russia2024-06-16
1046Italy2024-06-03
1047Spain2024-05-24
1048Spain2024-05-30
1049Germany2024-06-17

On-Demand Data

NameIdCountryDate
Alejandro Y Bowley1000Italy2024-06-07
Costa Q Saylors1001Australia2024-05-31
Wickens H Bowley1002India2024-05-26
Greenwood V Butt1003Canada2024-06-03
Octavia C Morasca1004Canada2024-06-11
Ashley L Rulapaugh1005Russia2024-05-23
Salvatore J Glick1006Spain2024-05-29
Leja B Dilliard1007Canada2024-05-26
Isabel H Wieser1008Japan2024-06-07
Jones C Stenseth1009Canada2024-05-31
Silvio I Malet1010Argentina2024-05-26
Isabel G Stenseth1011Germany2024-05-22
Francesco E Maclead1012Germany2024-06-10
Ashley W Malet1013India2024-06-08
Emily X Venere1014Japan2024-05-21
Chavez F Doe1015United Kingdom2024-05-20
Jones J Caudy1016Russia2024-06-13
Munro E Nicka1017Japan2024-06-15
Isabel B Maclead1018Russia2024-05-25
Arvin M Foller1019Brazil2024-06-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo L PerinCanadaAmy Elsner QUALIFIED
James G GarufiItalyBernardo Dominic UNQUALIFIED
Aruna N DarakjyCanadaOnyama Limba QUALIFIED
Jeanfrancois R PerinGermanyIoni Bowcher NEW
Francesco M WaycottJapanIoni Bowcher NEW
Mujtaba Y FigeroaFranceIvan Magalhaes PROPOSAL
Chavez Q WieserFranceElwin Sharvill NEW
Deepesh H PoquetteJapanAnna Fali NEGOTIATION
Antonio Q DarakjyFranceAsiya Javayant NEGOTIATION
Ashley W FlosiFranceElwin Sharvill PROPOSAL
Cody A DoeAustraliaAnna Fali NEGOTIATION
Izzy I SergiGermanyIoni Bowcher RENEWAL
Kadeem T PaprockiAustraliaBernardo Dominic RENEWAL
James U DilliardCanadaElwin Sharvill RENEWAL
Darci Y RoysterGermanyStephen Shaw NEW
Antonio E VocelkaFranceAsiya Javayant PROPOSAL
Jeanfrancois D PaprockiIndiaIvan Magalhaes UNQUALIFIED
Jones H GarufiArgentinaXuxue Feng NEGOTIATION
Murillo Y BologniaArgentinaAmy Elsner RENEWAL
Francesco K GarufiAustraliaXuxue Feng NEW
Ashley F ChuiRussiaIvan Magalhaes RENEWAL
Stacey R StensethIndiaAnna Fali UNQUALIFIED
Clifford O BriddickGermanyIoni Bowcher QUALIFIED
Isabel Z WaycottSpainOnyama Limba QUALIFIED
Greenwood R GlickGermanyAnna Fali RENEWAL
David L WieserCanadaXuxue Feng QUALIFIED
Jeanfrancois G StockhamJapanOnyama Limba QUALIFIED
Murillo J MaletSpainAnna Fali PROPOSAL
Wickens B NestleJapanAmy Elsner QUALIFIED
Jeanfrancois Z RimCanadaBernardo Dominic PROPOSAL
Chavez I SaylorsCanadaElwin Sharvill UNQUALIFIED
Cody Z DilliardArgentinaXuxue Feng RENEWAL
Darci B NestleCanadaIoni Bowcher RENEWAL
Kaitlin A KolmetzBrazilIvan Magalhaes PROPOSAL
Murillo L RoysterRussiaStephen Shaw NEGOTIATION
Isabel P ButtAustraliaAsiya Javayant NEW
Aruna Z BriddickIndiaElwin Sharvill UNQUALIFIED
Aika S MorascaBrazilStephen Shaw PROPOSAL
Juan Z PaprockiSpainAmy Elsner UNQUALIFIED
David Z MarrierUnited KingdomStephen Shaw 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>