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
Jones C SlusarskiSpainIoni Bowcher RENEWAL
Aruna S NestleAustraliaStephen Shaw NEW
Johnson V DilliardBrazilOnyama Limba RENEWAL
Murillo P RimUnited KingdomAnna Fali UNQUALIFIED
Nicolas V NickaArgentinaBernardo Dominic NEW
Stacey Z CampainBrazilXuxue Feng PROPOSAL
Cody Q MaletSpainOnyama Limba RENEWAL
Munro N IturbideIndiaAsiya Javayant QUALIFIED
Tony N CaudyRussiaBernardo Dominic RENEWAL
Misaki R GauchoItalyAsiya Javayant QUALIFIED
David H MaletJapanAsiya Javayant UNQUALIFIED
Aditya E GlickJapanXuxue Feng PROPOSAL
Smith H ButtBrazilOnyama Limba NEW
Deepesh A WhobreySpainAsiya Javayant NEW
Rodrigues D OldroydSpainAmy Elsner QUALIFIED
Ricardo S PerinItalyAsiya Javayant NEW
Aruna A VocelkaArgentinaXuxue Feng PROPOSAL
Silvio T SaylorsAustraliaIoni Bowcher NEGOTIATION
Ivar C DarakjyJapanElwin Sharvill PROPOSAL
Nicolas G PaprockiItalyOnyama Limba PROPOSAL
Julie D GillianSpainAmy Elsner QUALIFIED
Leja Q NickaFranceIoni Bowcher UNQUALIFIED
Cody M CampainGermanyElwin Sharvill UNQUALIFIED
Julie J SlusarskiItalyAsiya Javayant QUALIFIED
Leon H OldroydUnited KingdomStephen Shaw RENEWAL
Arvin C FollerFranceElwin Sharvill RENEWAL
Ivar J SaylorsAustraliaXuxue Feng PROPOSAL
Silvio O WieserAustraliaAmy Elsner QUALIFIED
Wickens W RoysterFranceAnna Fali PROPOSAL
Cody E WhobreyAustraliaXuxue Feng NEW
Francesco Z FigeroaJapanStephen Shaw RENEWAL
Clifford M RimSpainOnyama Limba UNQUALIFIED
Clifford Z DilliardItalyAmy Elsner PROPOSAL
Julie Z BowleyUnited KingdomAnna Fali PROPOSAL
Salvatore B GarufiFranceXuxue Feng NEW
Jeanfrancois G AlbaresItalyXuxue Feng RENEWAL
Francesco B ChuiFranceIvan Magalhaes NEW
Arvin V MaletCanadaAnna Fali QUALIFIED
Stacey P OldroydItalyElwin Sharvill NEW
Nicolas M GauchoItalyIvan Magalhaes PROPOSAL
Mayumi X RimSpainIoni Bowcher UNQUALIFIED
Alejandro J StensethJapanAnna Fali NEGOTIATION
Johnson C StensethArgentinaAsiya Javayant NEGOTIATION
Tony A CampainIndiaAmy Elsner UNQUALIFIED
Octavia A NickaSpainStephen Shaw QUALIFIED
Aika W OstroskySpainAnna Fali PROPOSAL
Antonio A DarakjySpainAnna Fali UNQUALIFIED
Alejandro Q MorascaAustraliaAmy Elsner NEW
Nicolas J BriddickArgentinaAnna Fali QUALIFIED
Aika V WieserCanadaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Greenwood D WieserIndiaXuxue Feng NEW
Clifford K AmigonAustraliaAmy Elsner UNQUALIFIED
Julie B MaletJapanXuxue Feng UNQUALIFIED
Greenwood D GlickBrazilElwin Sharvill PROPOSAL
Morrow K MorascaCanadaAmy Elsner UNQUALIFIED
Smith X PerinUnited KingdomOnyama Limba QUALIFIED
Jones D KolmetzRussiaAmy Elsner NEGOTIATION
Salvatore S OldroydSpainAsiya Javayant UNQUALIFIED
Leja T VenereItalyIoni Bowcher PROPOSAL
Sinclair M SaylorsItalyXuxue Feng NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore Q RulapaughRussia2024-06-02Feltz Printing Service UNQUALIFIED79Stephen Shaw
1001Munro I MaletArgentina2024-05-08Dorl, James J Esq UNQUALIFIED28Ioni Bowcher
1002Munro A MacleadRussia2024-06-06Chemel, James L Cpa RENEWAL2Amy Elsner
1003Julie K StockhamArgentina2024-05-28Feltz Printing Service NEGOTIATION19Elwin Sharvill
1004Tony K RulapaughRussia2024-05-12Chanay, Jeffrey A Esq NEGOTIATION8Stephen Shaw
1005Leon F IturbideGermany2024-05-09Chapman, Ross E Esq QUALIFIED1Ivan Magalhaes
1006Faith B MaletJapan2024-05-20Rangoni Of Florence UNQUALIFIED24Xuxue Feng
1007Tony X SchemmerRussia2024-05-23Commercial Press NEGOTIATION31Stephen Shaw
1008Claire Z RimItaly2024-05-09Rangoni Of Florence NEGOTIATION91Amy Elsner
1009Adams D DoeRussia2024-05-08King, Christopher A Esq QUALIFIED52Stephen Shaw
1010Wickens Z DilliardJapan2024-05-28Commercial Press QUALIFIED1Bernardo Dominic
1011Misaki C MorascaIndia2024-06-03Rousseaux, Michael Esq QUALIFIED45Anna Fali
1012Ivar Z GlickCanada2024-05-25Chapman, Ross E Esq QUALIFIED82Bernardo Dominic
1013Murillo W MarrierJapan2024-05-27Rousseaux, Michael Esq UNQUALIFIED86Anna Fali
1014Ivar X MarrierUnited Kingdom2024-06-02Benton, John B Jr NEW36Onyama Limba
1015Stacey Y SergiBrazil2024-05-14King, Christopher A Esq PROPOSAL66Onyama Limba
1016Maisha N VocelkaBrazil2024-05-19Morlong Associates NEW62Ioni Bowcher
1017Ivar L PerinJapan2024-05-12Rangoni Of Florence RENEWAL73Xuxue Feng
1018Maisha W RutaCanada2024-05-22Chemel, James L Cpa QUALIFIED93Elwin Sharvill
1019Claire T DoeCanada2024-05-17Dorl, James J Esq QUALIFIED99Ioni Bowcher
1020Jefferson C WieserSpain2024-05-09Chapman, Ross E Esq QUALIFIED53Anna Fali
1021Chavez U MaletRussia2024-06-04King, Christopher A Esq NEW93Asiya Javayant
1022Rodrigues C PaprockiSpain2024-05-14Morlong Associates QUALIFIED49Bernardo Dominic
1023Adams O BriddickIndia2024-06-02Feiner Bros PROPOSAL32Asiya Javayant
1024Aditya E SlusarskiCanada2024-05-22Chanay, Jeffrey A Esq NEW96Elwin Sharvill
1025Francesco R SlusarskiUnited Kingdom2024-06-03Truhlar And Truhlar Attys RENEWAL70Anna Fali
1026Mayumi J BriddickFrance2024-05-31King, Christopher A Esq UNQUALIFIED2Elwin Sharvill
1027Morrow I FlosiFrance2024-05-25Truhlar And Truhlar Attys QUALIFIED49Ioni Bowcher
1028Silvio C SaylorsGermany2024-05-30Printing Dimensions NEGOTIATION62Bernardo Dominic
1029Chavez B ButtRussia2024-06-04Commercial Press RENEWAL8Asiya Javayant
1030Claire J StockhamGermany2024-05-16Feltz Printing Service UNQUALIFIED36Bernardo Dominic
1031Tony C SaylorsFrance2024-05-24Benton, John B Jr RENEWAL91Ioni Bowcher
1032Antonio T MorascaItaly2024-05-26Chanay, Jeffrey A Esq QUALIFIED8Xuxue Feng
1033Nicolas H RoysterAustralia2024-05-28Feiner Bros PROPOSAL18Elwin Sharvill
1034Octavia O VenereBrazil2024-05-11Printing Dimensions NEW52Stephen Shaw
1035Darci J BriddickBrazil2024-06-03Buckley Miller Wright NEGOTIATION97Ivan Magalhaes
1036Alejandro U SergiAustralia2024-05-18Rangoni Of Florence QUALIFIED82Amy Elsner
1037Sinclair H ButtSpain2024-05-31Chapman, Ross E Esq RENEWAL66Elwin Sharvill
1038Stacey L TollnerBrazil2024-05-21Chapman, Ross E Esq QUALIFIED78Anna Fali
1039Jennifer N OldroydRussia2024-05-24Benton, John B Jr UNQUALIFIED70Ioni Bowcher
1040Johnson M SergiCanada2024-05-31Buckley Miller Wright QUALIFIED76Anna Fali
1041Deepesh Y OldroydIndia2024-05-29Feiner Bros QUALIFIED53Stephen Shaw
1042Ivar O ButtArgentina2024-05-21Printing Dimensions NEGOTIATION27Onyama Limba
1043Greenwood P DoeBrazil2024-06-02Printing Dimensions PROPOSAL93Asiya Javayant
1044Sinclair M BowleyItaly2024-05-25Buckley Miller Wright UNQUALIFIED63Stephen Shaw
1045Smith Y MaletJapan2024-05-16Buckley Miller Wright PROPOSAL63Stephen Shaw
1046Jefferson H OldroydJapan2024-06-02Rousseaux, Michael Esq NEW26Stephen Shaw
1047Maisha P SergiGermany2024-05-13Rousseaux, Michael Esq NEGOTIATION10Ioni Bowcher
1048Aditya J FollerFrance2024-05-09Feltz Printing Service RENEWAL9Anna Fali
1049Mujtaba E SaylorsRussia2024-05-14Commercial Press QUALIFIED87Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Chavez Q IturbideItalyIoni Bowcher UNQUALIFIED
Misaki R StockhamUnited KingdomOnyama Limba NEGOTIATION
Ashley D GauchoCanadaBernardo Dominic NEW
Mujtaba I RoysterBrazilBernardo Dominic RENEWAL
Jones H AmigonArgentinaAmy Elsner RENEWAL
Octavia Z RoysterUnited KingdomAnna Fali QUALIFIED
Sinclair V DoeCanadaAmy Elsner NEGOTIATION
Munro E PoquetteCanadaXuxue Feng QUALIFIED
Emily A ShinkoSpainXuxue Feng QUALIFIED
Maria F RoysterJapanBernardo Dominic PROPOSAL
Jennifer V StockhamAustraliaBernardo Dominic QUALIFIED
Arvin B RulapaughSpainAnna Fali PROPOSAL
Jeanfrancois H FlosiRussiaOnyama Limba RENEWAL
Ivar M StockhamSpainStephen Shaw UNQUALIFIED
Costa K GarufiUnited KingdomAnna Fali QUALIFIED
Jennifer X SchemmerItalyXuxue Feng PROPOSAL
Jefferson Q DarakjyGermanyAsiya Javayant NEW
Maisha F FlosiCanadaIoni Bowcher PROPOSAL
Alejandro G DoeFranceAsiya Javayant NEW
Faith D SlusarskiBrazilStephen Shaw NEGOTIATION
Chavez T DilliardArgentinaIoni Bowcher QUALIFIED
Salvatore Y CaldareraGermanyOnyama Limba NEGOTIATION
Aruna N SergiBrazilAmy Elsner NEGOTIATION
Jennifer C KuskoArgentinaAsiya Javayant RENEWAL
Emily V ShinkoFranceIvan Magalhaes NEGOTIATION
Murillo J KolmetzAustraliaXuxue Feng UNQUALIFIED
Mayumi M VocelkaSpainAmy Elsner NEW
Silvio E GlickGermanyIvan Magalhaes RENEWAL
Silvio P RutaAustraliaIoni Bowcher QUALIFIED
Leja J AmigonRussiaIoni Bowcher NEW
Claire R SaylorsRussiaOnyama Limba PROPOSAL
Octavia J IturbideItalyOnyama Limba PROPOSAL
Chavez D NickaAustraliaAnna Fali RENEWAL
Silvio B BriddickIndiaElwin Sharvill NEGOTIATION
Deepesh P CaldareraSpainAmy Elsner RENEWAL
Kadeem E ChuiArgentinaAmy Elsner NEW
Aruna X OstroskyUnited KingdomAsiya Javayant RENEWAL
Arvin M InouyeIndiaOnyama Limba QUALIFIED
Jones K StensethItalyAmy Elsner NEW
Greenwood J GarufiArgentinaBernardo Dominic QUALIFIED
Isabel O PerinItalyElwin Sharvill QUALIFIED
Chavez W CampainArgentinaAmy Elsner RENEWAL
Clifford R FigeroaUnited KingdomStephen Shaw UNQUALIFIED
Johnson X NestleRussiaElwin Sharvill RENEWAL
Clifford S StensethArgentinaOnyama Limba UNQUALIFIED
Ashley I RoysterBrazilIvan Magalhaes QUALIFIED
Ashley H ShinkoItalyAsiya Javayant NEGOTIATION
Jeanfrancois A AlbaresFranceElwin Sharvill RENEWAL
Stacey R OldroydAustraliaIvan Magalhaes QUALIFIED
Jones X InouyeUnited KingdomIoni Bowcher NEW
Frozen Columns
Name
David Z Figeroa
Emily U Caldarera
Greenwood X Ruta
Leon J Bowley
Isabel K Saylors
Darci J Venere
Octavia T Sergi
Wickens R Vocelka
Chavez O Vocelka
Emily W Vocelka
Antonio V Gaucho
Maisha H Stenseth
Maria Z Schemmer
Tony X Oldroyd
Ashley K Paprocki
James W Ostrosky
Tony L Campain
Arvin T Figeroa
Jennifer I Vocelka
Ricardo M Amigon
Munro W Foller
Cody C Malet
Sinclair T Doe
Aditya O Saylors
Octavia T Stockham
Misaki Y Caudy
Adams B Paprocki
Ricardo A Nicka
Cody H Whobrey
Aruna H Shinko
Faith D Kolmetz
Juan W Saylors
Johnson S Chui
Deepesh P Kolmetz
Maisha S Inouye
Arvin B Marrier
Aditya N Malet
Ashley M Briddick
Ricardo G Amigon
Aika U Flosi
Julie W Bolognia
Kadeem U Royster
James P Venere
Jones X Doe
Arvin D Schemmer
Salvatore E Kusko
Aruna X Rim
Nicolas C Darakjy
Costa R Figeroa
Jones A Stockham
IdCountryDate
1000Russia2024-05-30
1001Argentina2024-06-06
1002India2024-05-10
1003Spain2024-05-23
1004Canada2024-06-04
1005Brazil2024-05-12
1006France2024-05-11
1007Spain2024-05-11
1008Japan2024-05-11
1009Italy2024-05-09
1010Spain2024-06-06
1011Japan2024-05-19
1012France2024-06-02
1013France2024-05-22
1014Germany2024-05-21
1015United Kingdom2024-06-06
1016Brazil2024-06-01
1017Argentina2024-06-02
1018Canada2024-05-10
1019United Kingdom2024-05-19
1020Canada2024-06-04
1021United Kingdom2024-05-20
1022India2024-05-11
1023India2024-06-04
1024Canada2024-06-02
1025Italy2024-05-20
1026Brazil2024-06-05
1027Russia2024-06-06
1028Spain2024-05-18
1029Japan2024-05-17
1030Argentina2024-05-11
1031Germany2024-06-04
1032Japan2024-06-06
1033Germany2024-05-31
1034Italy2024-05-29
1035Brazil2024-05-10
1036Japan2024-06-02
1037United Kingdom2024-05-22
1038Argentina2024-05-27
1039Russia2024-05-20
1040Brazil2024-05-11
1041India2024-05-12
1042Japan2024-06-05
1043United Kingdom2024-05-20
1044Spain2024-06-02
1045Brazil2024-05-22
1046Japan2024-06-02
1047Russia2024-05-29
1048United Kingdom2024-05-22
1049India2024-05-29

On-Demand Data

NameIdCountryDate
Chavez J Flosi1000Argentina2024-06-06
Jefferson K Ruta1001United Kingdom2024-05-19
Misaki E Iturbide1002France2024-06-05
Johnson E Garufi1003Argentina2024-06-02
Aditya U Briddick1004Canada2024-06-02
James O Darakjy1005Brazil2024-05-23
Jones D Slusarski1006Argentina2024-05-08
Clifford S Poquette1007India2024-05-26
Arvin H Maclead1008Italy2024-05-09
Jones Q Iturbide1009Japan2024-05-26
Aditya Z Paprocki1010Russia2024-05-28
Isabel P Marrier1011Australia2024-05-15
Antonio Q Gaucho1012Japan2024-05-16
Wickens T Amigon1013Brazil2024-06-01
Mujtaba K Paprocki1014Brazil2024-05-25
Mujtaba I Chui1015Russia2024-05-08
Costa B Nicka1016Argentina2024-05-19
Cody D Garufi1017Germany2024-06-04
Octavia E Kolmetz1018Australia2024-06-04
Maisha W Maclead1019United Kingdom2024-05-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Emily R SlusarskiIndiaStephen Shaw RENEWAL
Ashley L WieserFranceAnna Fali UNQUALIFIED
Darci S RoysterJapanAsiya Javayant QUALIFIED
Leon T FlosiItalyIoni Bowcher QUALIFIED
Leon F RulapaughUnited KingdomStephen Shaw NEW
Mujtaba L TollnerGermanyOnyama Limba RENEWAL
Francesco D RoysterArgentinaIvan Magalhaes QUALIFIED
Morrow V OldroydJapanOnyama Limba UNQUALIFIED
Murillo D BriddickUnited KingdomStephen Shaw PROPOSAL
Jefferson Z FollerAustraliaAmy Elsner UNQUALIFIED
Silvio Y WieserGermanyIvan Magalhaes NEW
Greenwood G GauchoCanadaXuxue Feng PROPOSAL
Tony O SlusarskiCanadaAmy Elsner QUALIFIED
Darci I GlickAustraliaAnna Fali NEGOTIATION
Antonio I FerenczArgentinaAmy Elsner QUALIFIED
Faith K SaylorsArgentinaAsiya Javayant UNQUALIFIED
Cody D BologniaBrazilIoni Bowcher RENEWAL
Munro Q RulapaughCanadaOnyama Limba UNQUALIFIED
James O FigeroaIndiaIvan Magalhaes QUALIFIED
Emily T MarrierFranceBernardo Dominic QUALIFIED
James C MarrierFranceXuxue Feng RENEWAL
Antonio E RimIndiaIvan Magalhaes QUALIFIED
Jefferson T ButtUnited KingdomBernardo Dominic PROPOSAL
Rodrigues W NickaArgentinaIvan Magalhaes NEW
Arvin Z CampainGermanyElwin Sharvill RENEWAL
Octavia D AmigonRussiaElwin Sharvill RENEWAL
Morrow T PaprockiBrazilXuxue Feng QUALIFIED
James I InouyeJapanIvan Magalhaes UNQUALIFIED
Ivar T CampainIndiaAnna Fali PROPOSAL
Francesco P DilliardGermanyStephen Shaw UNQUALIFIED
Johnson W FollerRussiaIoni Bowcher NEGOTIATION
Clifford T DilliardCanadaAsiya Javayant NEGOTIATION
Leon E VocelkaJapanAmy Elsner NEGOTIATION
Leon X NickaGermanyAsiya Javayant NEW
Greenwood T BologniaRussiaXuxue Feng PROPOSAL
Ivar Q TollnerAustraliaAmy Elsner NEW
Juan X SergiGermanyIvan Magalhaes NEGOTIATION
Aika O MarrierUnited KingdomStephen Shaw QUALIFIED
Jeanfrancois J BowleyIndiaElwin Sharvill UNQUALIFIED
Silvio E BologniaJapanAsiya Javayant 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>