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
Ashley X RutaGermanyOnyama Limba QUALIFIED
Jeanfrancois T WieserAustraliaAmy Elsner NEGOTIATION
Greenwood X DarakjyRussiaIvan Magalhaes RENEWAL
Misaki G NestleItalyAsiya Javayant QUALIFIED
Faith E BowleyItalyXuxue Feng NEW
Francesco E WhobreyAustraliaElwin Sharvill PROPOSAL
Julie H VocelkaJapanStephen Shaw NEW
Jeanfrancois J MarrierCanadaElwin Sharvill UNQUALIFIED
Deepesh Z NickaFranceAmy Elsner NEW
Leja B TollnerIndiaAnna Fali UNQUALIFIED
Misaki Y InouyeGermanyIoni Bowcher NEW
Jefferson T BologniaCanadaAmy Elsner NEGOTIATION
Cody F DoeFranceOnyama Limba UNQUALIFIED
Aika Y GauchoRussiaAsiya Javayant QUALIFIED
Silvio A PaprockiJapanOnyama Limba NEW
Faith R DoeItalyElwin Sharvill QUALIFIED
Adams K NickaJapanElwin Sharvill QUALIFIED
Costa Y RutaArgentinaElwin Sharvill NEW
Adams F RulapaughAustraliaAnna Fali UNQUALIFIED
Costa A SchemmerIndiaXuxue Feng UNQUALIFIED
Jefferson X InouyeCanadaStephen Shaw PROPOSAL
Mayumi W SergiBrazilOnyama Limba RENEWAL
Julie P FigeroaItalyXuxue Feng RENEWAL
Tony Q CampainFranceAsiya Javayant UNQUALIFIED
Tony P MaletArgentinaStephen Shaw UNQUALIFIED
Maria D RutaUnited KingdomAnna Fali UNQUALIFIED
Sinclair G StockhamRussiaXuxue Feng QUALIFIED
Alejandro L BowleyIndiaIoni Bowcher QUALIFIED
Isabel U SchemmerBrazilAsiya Javayant PROPOSAL
Mayumi E BriddickUnited KingdomAmy Elsner NEW
Stacey D SlusarskiSpainIoni Bowcher PROPOSAL
Wickens E RulapaughArgentinaOnyama Limba PROPOSAL
Aditya Y MacleadItalyIvan Magalhaes UNQUALIFIED
Murillo I FerenczUnited KingdomIoni Bowcher UNQUALIFIED
Ivar A GauchoBrazilElwin Sharvill NEGOTIATION
Alejandro G PerinJapanIoni Bowcher NEW
Wickens Z KuskoJapanBernardo Dominic RENEWAL
Johnson E DoeItalyAmy Elsner QUALIFIED
Mujtaba T KolmetzGermanyOnyama Limba NEGOTIATION
Darci W SlusarskiIndiaBernardo Dominic RENEWAL
Ricardo Z BriddickSpainBernardo Dominic UNQUALIFIED
Jefferson P PaprockiFranceXuxue Feng RENEWAL
Maria D BowleySpainAnna Fali PROPOSAL
Francesco S WhobreyGermanyIvan Magalhaes NEW
Kaitlin G DoeCanadaAnna Fali QUALIFIED
Costa P OstroskySpainAnna Fali NEW
Jeanfrancois C TollnerCanadaIvan Magalhaes NEW
Leja B WaycottUnited KingdomAsiya Javayant PROPOSAL
Greenwood M MarrierArgentinaIoni Bowcher NEW
Izzy E AlbaresUnited KingdomBernardo Dominic NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Claire E KolmetzArgentinaAnna Fali RENEWAL
Ashley J GlickAustraliaBernardo Dominic UNQUALIFIED
Nicolas O GauchoCanadaAsiya Javayant UNQUALIFIED
Emily O PaprockiFranceElwin Sharvill QUALIFIED
Isabel A RulapaughUnited KingdomOnyama Limba NEGOTIATION
Maisha F WaycottIndiaOnyama Limba UNQUALIFIED
Leon K SlusarskiJapanAnna Fali RENEWAL
Aruna Y OldroydRussiaAnna Fali RENEWAL
Greenwood L SlusarskiCanadaAsiya Javayant RENEWAL
Cody O CaldareraArgentinaAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Morrow B WhobreyCanada2024-06-02Feltz Printing Service NEGOTIATION32Ioni Bowcher
1001Jones W GlickArgentina2024-06-12Truhlar And Truhlar Attys QUALIFIED73Ivan Magalhaes
1002Jennifer H MorascaRussia2024-06-08Dorl, James J Esq RENEWAL63Ivan Magalhaes
1003Maria J SaylorsGermany2024-06-15Feltz Printing Service QUALIFIED14Ivan Magalhaes
1004Aruna V PerinIndia2024-06-03Benton, John B Jr RENEWAL70Amy Elsner
1005Wickens M FlosiSpain2024-06-18Benton, John B Jr UNQUALIFIED70Ioni Bowcher
1006Ashley U SergiFrance2024-05-29Commercial Press RENEWAL24Anna Fali
1007Adams T GillianJapan2024-06-06Morlong Associates RENEWAL71Amy Elsner
1008Sinclair O FigeroaFrance2024-05-27Commercial Press NEW74Anna Fali
1009Munro U CampainJapan2024-06-16Benton, John B Jr RENEWAL77Stephen Shaw
1010Alejandro Q KuskoArgentina2024-06-07King, Christopher A Esq UNQUALIFIED38Ioni Bowcher
1011Jennifer B WieserGermany2024-06-01Rousseaux, Michael Esq RENEWAL1Elwin Sharvill
1012Aruna N MorascaFrance2024-05-25Chapman, Ross E Esq QUALIFIED59Anna Fali
1013Aika K VocelkaRussia2024-06-06Dorl, James J Esq QUALIFIED35Stephen Shaw
1014Kaitlin C FlosiCanada2024-05-24Benton, John B Jr NEW29Stephen Shaw
1015Antonio T FollerJapan2024-06-12Benton, John B Jr QUALIFIED21Bernardo Dominic
1016Aruna E RulapaughItaly2024-06-01Dorl, James J Esq RENEWAL56Ioni Bowcher
1017Jeanfrancois F RoysterAustralia2024-05-27Chapman, Ross E Esq RENEWAL3Ivan Magalhaes
1018Salvatore V GlickCanada2024-06-04Buckley Miller Wright NEW94Elwin Sharvill
1019Francesco T OstroskyArgentina2024-05-27Benton, John B Jr NEW42Onyama Limba
1020Leon Z NestleFrance2024-06-02Rousseaux, Michael Esq PROPOSAL84Ivan Magalhaes
1021Ricardo B OstroskyBrazil2024-06-05Morlong Associates NEW48Amy Elsner
1022Francesco A RoysterCanada2024-05-29Benton, John B Jr PROPOSAL0Onyama Limba
1023Mujtaba W CaldareraFrance2024-06-16Chapman, Ross E Esq QUALIFIED75Xuxue Feng
1024Ricardo Q WhobreySpain2024-06-17Morlong Associates QUALIFIED93Anna Fali
1025Adams C FerenczIndia2024-05-28Chemel, James L Cpa RENEWAL57Ioni Bowcher
1026Tony D NickaAustralia2024-06-13Chemel, James L Cpa UNQUALIFIED70Onyama Limba
1027Kaitlin Q FigeroaRussia2024-06-07Feiner Bros RENEWAL4Onyama Limba
1028Ivar Y ButtIndia2024-06-16Buckley Miller Wright NEGOTIATION61Ivan Magalhaes
1029Nicolas S DarakjyBrazil2024-05-28Chanay, Jeffrey A Esq UNQUALIFIED67Elwin Sharvill
1030Claire Z NestleCanada2024-06-07Chanay, Jeffrey A Esq QUALIFIED73Onyama Limba
1031Silvio C RimRussia2024-06-16Printing Dimensions NEGOTIATION29Amy Elsner
1032Kaitlin X NickaItaly2024-06-03Chapman, Ross E Esq RENEWAL95Ioni Bowcher
1033Alejandro S CampainAustralia2024-06-15Feltz Printing Service NEW23Onyama Limba
1034Isabel O StensethUnited Kingdom2024-05-24Chapman, Ross E Esq QUALIFIED22Onyama Limba
1035Costa E OstroskyRussia2024-06-10Chapman, Ross E Esq NEGOTIATION98Ioni Bowcher
1036Sinclair K ButtSpain2024-06-19Dorl, James J Esq NEGOTIATION32Bernardo Dominic
1037Chavez Q SlusarskiGermany2024-06-19Truhlar And Truhlar Attys RENEWAL98Ioni Bowcher
1038Isabel P RulapaughItaly2024-06-05Chapman, Ross E Esq NEGOTIATION19Onyama Limba
1039Munro A GillianArgentina2024-05-25Chemel, James L Cpa PROPOSAL34Elwin Sharvill
1040Costa L FlosiArgentina2024-06-14Rangoni Of Florence QUALIFIED83Asiya Javayant
1041Nicolas N SchemmerBrazil2024-05-28Buckley Miller Wright UNQUALIFIED61Anna Fali
1042Jeanfrancois W SergiArgentina2024-06-15Feltz Printing Service RENEWAL86Elwin Sharvill
1043Maria R WhobreyCanada2024-06-03Truhlar And Truhlar Attys UNQUALIFIED78Elwin Sharvill
1044Leja N OstroskyBrazil2024-06-17Morlong Associates QUALIFIED21Ioni Bowcher
1045Deepesh Q FlosiItaly2024-06-03Chapman, Ross E Esq PROPOSAL18Ivan Magalhaes
1046Smith T SergiFrance2024-06-22Morlong Associates UNQUALIFIED98Ioni Bowcher
1047Ashley A VenereSpain2024-06-21Morlong Associates RENEWAL65Ivan Magalhaes
1048Ashley J NestleArgentina2024-06-08Truhlar And Truhlar Attys NEW61Onyama Limba
1049Ricardo K AmigonAustralia2024-05-26Morlong Associates NEW69Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Claire P SaylorsFranceAsiya Javayant RENEWAL
Clifford M GauchoAustraliaIoni Bowcher PROPOSAL
Mujtaba U SlusarskiFranceXuxue Feng NEGOTIATION
David H StockhamUnited KingdomAnna Fali PROPOSAL
Deepesh M ChuiJapanElwin Sharvill PROPOSAL
Costa O SlusarskiGermanyIoni Bowcher UNQUALIFIED
Alejandro M NickaRussiaIvan Magalhaes QUALIFIED
Stacey D MacleadIndiaIvan Magalhaes PROPOSAL
Clifford L GarufiRussiaXuxue Feng UNQUALIFIED
James H CampainItalyStephen Shaw NEGOTIATION
Arvin C RulapaughAustraliaOnyama Limba UNQUALIFIED
Maisha I DoeRussiaAsiya Javayant NEW
Ashley C MaletCanadaStephen Shaw UNQUALIFIED
Smith O RimIndiaAmy Elsner UNQUALIFIED
Tony P DilliardSpainAnna Fali PROPOSAL
Mujtaba Y FlosiArgentinaAsiya Javayant QUALIFIED
Leon D MarrierUnited KingdomIoni Bowcher PROPOSAL
Ivar P GarufiRussiaIoni Bowcher PROPOSAL
Arvin T SaylorsUnited KingdomIvan Magalhaes NEGOTIATION
James F SchemmerBrazilBernardo Dominic PROPOSAL
Silvio R DoeIndiaBernardo Dominic RENEWAL
Darci O WieserSpainBernardo Dominic UNQUALIFIED
Costa J SergiItalyOnyama Limba NEW
Emily K TollnerUnited KingdomXuxue Feng QUALIFIED
Chavez M FlosiGermanyAmy Elsner NEGOTIATION
Ashley C IturbideIndiaXuxue Feng QUALIFIED
Rodrigues Z GauchoJapanStephen Shaw UNQUALIFIED
Claire Y GarufiRussiaBernardo Dominic PROPOSAL
Wickens Y OstroskyRussiaElwin Sharvill QUALIFIED
Misaki Z CaldareraCanadaStephen Shaw QUALIFIED
Munro E VocelkaGermanyElwin Sharvill UNQUALIFIED
Julie O GlickGermanyElwin Sharvill QUALIFIED
Juan D ShinkoFranceBernardo Dominic QUALIFIED
Izzy C RimCanadaBernardo Dominic PROPOSAL
Kadeem T IturbideJapanAsiya Javayant UNQUALIFIED
Adams Y OstroskyCanadaIoni Bowcher PROPOSAL
Aruna V NestleFranceIoni Bowcher NEW
Juan K GlickItalyStephen Shaw RENEWAL
Jeanfrancois D BriddickFranceStephen Shaw QUALIFIED
Darci S PerinItalyElwin Sharvill NEGOTIATION
Juan M SchemmerGermanyStephen Shaw RENEWAL
Arvin S FlosiJapanXuxue Feng PROPOSAL
Aditya Q SaylorsIndiaAsiya Javayant RENEWAL
Mujtaba W BologniaAustraliaStephen Shaw PROPOSAL
Mayumi Y SchemmerCanadaElwin Sharvill NEGOTIATION
Ashley C NestleGermanyBernardo Dominic NEW
Smith E DarakjyGermanyOnyama Limba NEW
Francesco D NickaIndiaXuxue Feng UNQUALIFIED
Arvin X RulapaughUnited KingdomAnna Fali RENEWAL
Munro T GarufiFranceAmy Elsner PROPOSAL
Frozen Columns
Name
Antonio W Royster
Leja O Ferencz
Jennifer Y Ferencz
Nicolas M Ruta
Aruna V Tollner
Greenwood Z Gillian
Adams J Ferencz
Faith Z Briddick
Maisha H Inouye
Ricardo U Stenseth
David T Ruta
Aika P Rim
Isabel A Sergi
Juan G Albares
Leon B Flosi
Munro U Oldroyd
Salvatore K Saylors
Stacey K Glick
Ricardo P Stockham
Tony S Nicka
Kaitlin X Inouye
Munro H Malet
Claire W Inouye
Aditya X Kusko
Nicolas B Marrier
Nicolas Z Foller
Johnson P Amigon
Aika B Wieser
Aika B Poquette
Emily O Campain
Leon Q Wieser
Maria H Slusarski
Nicolas T Wieser
Munro E Briddick
Stacey X Albares
Ashley E Figeroa
James U Maclead
Leon W Stockham
Ricardo B Gaucho
Jones W Campain
Jefferson I Ostrosky
David S Ruta
Sinclair K Schemmer
Jennifer H Gillian
Isabel E Wieser
Munro C Foller
Cody G Darakjy
Maria U Campain
Jennifer U Marrier
Jennifer T Saylors
IdCountryDate
1000Russia2024-06-02
1001Argentina2024-06-07
1002India2024-06-01
1003India2024-06-17
1004Canada2024-06-13
1005Japan2024-06-06
1006Spain2024-06-10
1007France2024-06-09
1008Germany2024-06-19
1009Italy2024-06-11
1010Spain2024-06-05
1011Japan2024-06-12
1012Japan2024-06-21
1013France2024-06-21
1014Argentina2024-06-10
1015Russia2024-06-11
1016India2024-06-07
1017Germany2024-06-01
1018Japan2024-06-20
1019United Kingdom2024-06-22
1020Australia2024-06-12
1021France2024-06-14
1022Japan2024-06-19
1023Italy2024-06-11
1024Australia2024-06-07
1025Japan2024-06-11
1026France2024-06-15
1027France2024-06-03
1028Argentina2024-06-07
1029India2024-06-20
1030Italy2024-06-02
1031France2024-05-31
1032Argentina2024-06-22
1033United Kingdom2024-06-19
1034Germany2024-06-21
1035Spain2024-06-12
1036Australia2024-06-22
1037Germany2024-06-07
1038Brazil2024-05-24
1039Australia2024-06-15
1040Argentina2024-06-22
1041Italy2024-05-25
1042Brazil2024-06-01
1043Germany2024-06-06
1044India2024-05-28
1045Australia2024-06-22
1046France2024-06-13
1047France2024-06-12
1048India2024-06-18
1049Russia2024-06-08

On-Demand Data

NameIdCountryDate
Faith R Doe1000Japan2024-06-17
Leon M Royster1001Italy2024-06-08
Faith J Nestle1002Japan2024-05-31
Murillo P Albares1003Japan2024-05-31
Izzy T Glick1004Australia2024-06-22
Aditya O Stenseth1005Japan2024-06-12
Rodrigues E Maclead1006Spain2024-06-09
Maisha G Shinko1007Russia2024-06-10
Francesco E Kusko1008United Kingdom2024-06-22
Arvin B Chui1009Italy2024-06-05
David P Rim1010Brazil2024-06-10
Arvin L Stockham1011Brazil2024-06-16
Octavia I Inouye1012Australia2024-06-12
Munro S Iturbide1013Australia2024-06-17
Octavia M Flosi1014Spain2024-05-30
Kaitlin M Paprocki1015Italy2024-06-04
Darci S Albares1016United Kingdom2024-05-27
Johnson W Oldroyd1017France2024-06-21
Julie X Paprocki1018Germany2024-05-26
Aika M Gillian1019Australia2024-05-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore E IturbideJapanStephen Shaw PROPOSAL
Julie G ChuiAustraliaElwin Sharvill RENEWAL
Salvatore P MaletUnited KingdomOnyama Limba NEGOTIATION
Juan V DilliardSpainAsiya Javayant PROPOSAL
Cody M CaudyAustraliaStephen Shaw PROPOSAL
Mayumi M SaylorsSpainAsiya Javayant UNQUALIFIED
Morrow P GillianRussiaStephen Shaw QUALIFIED
Julie K BowleyJapanElwin Sharvill UNQUALIFIED
Wickens Y AmigonGermanyStephen Shaw QUALIFIED
Claire M BriddickJapanIvan Magalhaes QUALIFIED
Mujtaba D PaprockiItalyElwin Sharvill UNQUALIFIED
Maisha U WieserRussiaStephen Shaw RENEWAL
Maisha F NickaBrazilAnna Fali QUALIFIED
Ricardo I OstroskyItalyBernardo Dominic RENEWAL
Stacey Z PerinArgentinaBernardo Dominic RENEWAL
Ricardo K GlickCanadaXuxue Feng NEW
Clifford I NickaAustraliaElwin Sharvill RENEWAL
Alejandro W AlbaresGermanyBernardo Dominic RENEWAL
Tony E OstroskyAustraliaXuxue Feng UNQUALIFIED
Tony X FlosiAustraliaAsiya Javayant UNQUALIFIED
Kadeem V WhobreyBrazilAsiya Javayant NEGOTIATION
Morrow N StensethBrazilIvan Magalhaes NEW
Julie O BologniaUnited KingdomStephen Shaw QUALIFIED
Cody J SchemmerArgentinaAmy Elsner RENEWAL
Rodrigues R GarufiIndiaOnyama Limba RENEWAL
Ashley Q CaldareraItalyIvan Magalhaes QUALIFIED
Costa F PoquetteSpainBernardo Dominic PROPOSAL
Aruna U MarrierAustraliaAmy Elsner RENEWAL
Jennifer O GlickBrazilOnyama Limba NEW
Morrow J RutaSpainBernardo Dominic NEW
Julie V OstroskyItalyAsiya Javayant UNQUALIFIED
Clifford W VenereFranceXuxue Feng NEW
Adams N VocelkaAustraliaAmy Elsner RENEWAL
Murillo U MacleadFranceIvan Magalhaes QUALIFIED
Aruna G CaudyUnited KingdomIoni Bowcher RENEWAL
Jefferson U CaudySpainBernardo Dominic UNQUALIFIED
Antonio B AlbaresSpainIoni Bowcher UNQUALIFIED
Claire H SchemmerJapanIoni Bowcher RENEWAL
Alejandro Q SergiGermanyAmy Elsner NEW
Octavia S VenereItalyAnna Fali NEGOTIATION

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